diff --git a/examples/sui/package.json b/examples/sui/package.json index 4bd7bd2d..15910aae 100644 --- a/examples/sui/package.json +++ b/examples/sui/package.json @@ -16,7 +16,7 @@ "gen": "typemove-sui -t ./src/types ./src/abis" }, "dependencies": { - "@mysten/sui": "~1.17.0", + "@mysten/sui": "~1.20.0", "@typemove/move": "workspace:*", "@typemove/sui": "workspace:*" }, diff --git a/package.json b/package.json index 4925d862..00aa0808 100644 --- a/package.json +++ b/package.json @@ -17,8 +17,8 @@ "@ls-lint/ls-lint": "^2.2.3", "@types/chai": "^5.0.1", "@types/node": "^22.0.0", - "@typescript-eslint/eslint-plugin": "^8.0.0", - "@typescript-eslint/parser": "^8.0.0", + "@typescript-eslint/eslint-plugin": "^8.21.0", + "@typescript-eslint/parser": "^8.21.0", "chai": "^5.1.2", "conventional-changelog-conventionalcommits": "^8.0.0", "eslint": "^9.6.0", @@ -37,7 +37,7 @@ "tslib": "^2.6.2", "tsx": "^4.10.0", "typedoc": "^0.27.0", - "typescript": "^5.4.5" + "typescript": "^5.7.3" }, "engines": { "node": ">=20" diff --git a/packages/aptos/src/move-coder.ts b/packages/aptos/src/move-coder.ts index 0a5f3dca..a08d6b5e 100644 --- a/packages/aptos/src/move-coder.ts +++ b/packages/aptos/src/move-coder.ts @@ -27,6 +27,7 @@ export class MoveCoder extends AbstractMoveCoder { protected moduleMapping = new Map() + protected accounts = new Set() private typeMapping = new Map() + private enumMapping = new Map() + private funcMapping = new Map() // network: string adapter: ChainAdapter @@ -36,6 +39,11 @@ export abstract class AbstractMoveCoder { return } this.moduleMapping.set(moduleQname({ address: account, name: module.name }), module) + for (const enumType of module.enums) { + const key = [account, module.name, enumType.name].join(SPLITTER) + this.enumMapping.set(key, enumType) + } + for (const struct of module.structs) { // TODO move to util const key = [account, module.name, struct.name].join(SPLITTER) @@ -73,6 +81,9 @@ export abstract class AbstractMoveCoder { if (struct) { return struct } + if (this.accounts.has(account)) { + throw new Error('Failed to load struct ' + type + ' for imported account') + } let resp = this.requestMap.get(account) if (!resp) { resp = this.adapter.fetchModules(account).then((modules) => { @@ -90,6 +101,35 @@ export abstract class AbstractMoveCoder { throw new Error('Failed to load function ' + type + ' type are not imported anywhere') } + async maybeGetMoveEnum(type: string): Promise { + const [account_, module, typeName] = type.split(SPLITTER) + const account = accountAddressString(account_) + type = [account, module, typeName].join(SPLITTER) + + let enumType = this.enumMapping.get(type) + if (enumType) { + return enumType + } + if (this.accounts.has(account)) { + return undefined + } + let resp = this.requestMap.get(account) + if (!resp) { + resp = this.adapter.fetchModules(account).then((modules) => { + for (const m of modules) { + this.load(m, account) + } + }) + this.requestMap.set(account, resp) + } + await resp + enumType = this.enumMapping.get(type) + if (enumType) { + return enumType + } + return undefined + } + async getMoveFunction(type: string): Promise { const [account_, module, typeName] = type.split(SPLITTER) const account = accountAddressString(account_) @@ -99,6 +139,9 @@ export abstract class AbstractMoveCoder { if (func) { return func } + if (this.accounts.has(account)) { + throw new Error('Failed to load function ' + type + ' for imported account') + } let resp = this.requestMap.get(account) if (!resp) { resp = this.adapter @@ -163,6 +206,12 @@ export abstract class AbstractMoveCoder { return res as any } + // try enum type first + const enumType = await this.maybeGetMoveEnum(type.qname) + if (enumType) { + return data + } + // Process complex type const struct = await this.getMoveStruct(type.qname) diff --git a/packages/move/src/codegen/abstract-codegen.ts b/packages/move/src/codegen/abstract-codegen.ts index 340d8e20..20b2729a 100644 --- a/packages/move/src/codegen/abstract-codegen.ts +++ b/packages/move/src/codegen/abstract-codegen.ts @@ -1,4 +1,4 @@ -import { InternalMoveFunction, InternalMoveModule, InternalMoveStruct } from '../internal-models.js' +import { InternalMoveEnum, InternalMoveFunction, InternalMoveModule, InternalMoveStruct } from '../internal-models.js' import path from 'path' import fs from 'fs' import { AccountModulesImportInfo, AccountRegister } from '../account.js' @@ -190,6 +190,7 @@ export abstract class AbstractCodegen { const events = Array.from(eventStructs.values()) .map((e) => this.generateForEvents(module, e)) .filter((s) => s !== '') + const enums = module.enums.map((e) => this.generateEnum(module, e)) const structs = module.structs.map((s) => this.generateStructs(module, s, eventTypes)) const callArgs = module.exposedFunctions.map((f) => this.generateCallArgsStructs(module, f)) @@ -197,6 +198,8 @@ export abstract class AbstractCodegen { return ` export namespace ${moduleName} { + ${enums.join('\n')} + ${structs.join('\n')} ${this.generateExtra(addressOverride, module)} @@ -208,6 +211,49 @@ export abstract class AbstractCodegen { ` } + generateEnum(module: InternalMoveModule, enumType: InternalMoveEnum): string { + const enumName = normalizeToJSName(enumType.name) + const enumValues = Object.keys(enumType.variants) + .map((v) => `'${v}'`) + .join(' | ') + + const typeParams = enumType.typeParams || [] + const genericString = this.generateStructTypeParameters(enumType) + const genericStringAny = this.generateStructTypeParameters(enumType, true) + + const typeParamApplyArg = typeParams + .map((v, idx) => { + return `arg${idx}: TypeDescriptor = ANY_TYPE` + }) + .join(',') + const typeParamApply = typeParams + .map((v, idx) => { + return `arg${idx}` + }) + .join(',') + + const typeDescriptor = ` + export namespace ${enumName}{ + export const TYPE_QNAME = '${module.address}::${module.name}::${enumType.name}' + + const TYPE = new TypeDescriptor<${enumName}${genericStringAny}>(${enumName}.TYPE_QNAME) + + export function type${genericString}(${typeParamApplyArg}): TypeDescriptor<${enumName}${genericString}> { + return TYPE.apply(${typeParamApply}) + } + } +` + // TODO support fields + return ` + export interface ${enumName} { + fields: {} + variant: ${enumValues} + } + + ${typeDescriptor} + ` + } + generateStructs(module: InternalMoveModule, struct: InternalMoveStruct, events: Set, typeOnly = false) { const typeParams = struct.typeParams || [] const genericString = this.generateStructTypeParameters(struct) @@ -249,8 +295,7 @@ export abstract class AbstractCodegen { let eventPayload = '' if (events.has(moduleQname(module) + SPLITTER + struct.name)) { eventPayload = ` - export interface ${structName}Instance extends - TypedEventInstance<${structName}${genericStringAny}> { + export type ${structName}Instance = TypedEventInstance<${structName}${genericStringAny}> & { ${this.STRUCT_FIELD_NAME}_decoded: ${structName}${genericStringAny} type_arguments: [${struct.typeParams.map((_) => 'string').join(', ')}] } @@ -293,7 +338,7 @@ export abstract class AbstractCodegen { return '[' + returnType + ']' } - generateStructTypeParameters(struct: InternalMoveStruct, useAny = false) { + generateStructTypeParameters(struct: InternalMoveStruct | InternalMoveEnum, useAny = false) { let genericString = '' if (struct.typeParams && struct.typeParams.length > 0) { diff --git a/packages/move/src/internal-models.ts b/packages/move/src/internal-models.ts index 8a4e94d7..85f520ef 100644 --- a/packages/move/src/internal-models.ts +++ b/packages/move/src/internal-models.ts @@ -5,6 +5,7 @@ export interface InternalMoveModule { name: string exposedFunctions: InternalMoveFunction[] structs: InternalMoveStruct[] + enums: InternalMoveEnum[] } export interface InternalMoveFunction { @@ -26,6 +27,15 @@ export interface InternalMoveStruct { fields: InternalMoveStructField[] } +export interface InternalMoveEnum { + name: string + abilities: string[] + typeParams: InternalMoveTypeParam[] + variants: { + [key: string]: InternalMoveStructField[] + } +} + export interface InternalMoveStructField { name: string type: TypeDescriptor diff --git a/packages/sui/package.json b/packages/sui/package.json index 1a85af76..da6f6e01 100644 --- a/packages/sui/package.json +++ b/packages/sui/package.json @@ -51,7 +51,7 @@ }, "types": "./dist/cjs/index.d.ts", "dependencies": { - "@mysten/sui": "~1.17.0", + "@mysten/sui": "~1.20.0", "@typemove/move": "workspace:*", "chalk": "^5.3.0", "commander": "^12.0.0", diff --git a/packages/sui/src/move-coder.test.ts b/packages/sui/src/move-coder.test.ts index 8a5b4753..0028fc4e 100644 --- a/packages/sui/src/move-coder.test.ts +++ b/packages/sui/src/move-coder.test.ts @@ -4,6 +4,7 @@ import { BUILTIN_TYPES, parseMoveType } from '@typemove/move' import { defaultMoveCoder } from '@typemove/sui' import { dynamic_field } from './builtin/0x2' import { sui_system_state_inner } from './builtin/0x3' +import { SuiEvent } from '@mysten/sui/client' describe('Test move coder', () => { test('decode upgraded struct', async () => { @@ -45,6 +46,7 @@ describe('Test move coder', () => { test('decode upgraded', async () => { const coder = defaultMoveCoder() const upgradedEvent = { + bcsEncoding: 'base58', bcs: '2EEdtVSdQuBDwz8GqTfB83ac62AAy2maSVE9SqwUFpXdqSPGhRvrZz3WEyJavAhSmVtU86Y2AkkK5pSw6MYzcKsdowaso8N8B7Ur8XiZ9xienTkNzNTf7mmfgWJWMqpYVKkdbJTj76WNzJs5Sd6U3FzCzmg4y5EgW85knAoBZjzBwPUsQ3tMHDcihpX7wVtnEVttdzLnq3ZK97u1hAJSyDUrRVThpScej1kjjRLe2Up3mYYo7JsH8uhrq7bACkQKPCbK88d8arAUuYaMNw7zPSyn6yzyHoSnNUscbAVdfmn4ePb8DZTCw6dbAcUDPR82y5kWwzQC3NcYK5N4BX3w7UUhhrvPtdKM1e1isMnbWuMxXPhydQQD9RnJKfZTU54jdcWzwtQrDaGkuaVPUQvZ2ywVVav57ooS6Uf', id: { txDigest: 'C9LuM3bJhAXg4whUa9DrszA8zTGEoptFGAmFvFs7H1mk', eventSeq: '1' }, packageId: '0xceab84acf6bf70f503c3b0627acaff6b3f84cee0f2d7ed53d00fa6c2a168d14f', @@ -71,7 +73,7 @@ describe('Test move coder', () => { } } } - } + } as SuiEvent const res = await coder.decodeEvent(upgradedEvent) }) diff --git a/packages/sui/src/move-coder.ts b/packages/sui/src/move-coder.ts index 6aa6b9cc..f0954a94 100644 --- a/packages/sui/src/move-coder.ts +++ b/packages/sui/src/move-coder.ts @@ -42,6 +42,7 @@ export class MoveCoder extends AbstractMoveCoder< if (m && mDeclared) { return m } + this.accounts.add(module.address) m = toInternalModule(module) this.loadInternal(m, address) return m diff --git a/packages/sui/src/tests/abis/testnet/enum.json b/packages/sui/src/tests/abis/testnet/enum.json new file mode 100644 index 00000000..72a196c0 --- /dev/null +++ b/packages/sui/src/tests/abis/testnet/enum.json @@ -0,0 +1,5941 @@ +{ + "action": { + "fileFormatVersion": 7, + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "name": "action", + "friends": [ + { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "name": "de_center" + } + ], + "structs": {}, + "enums": { + "Action": { + "abilities": { + "abilities": ["Copy", "Drop"] + }, + "typeParameters": [], + "variants": { + "EXTEND_BALANCE": [], + "EXTEND_TIME": [], + "LOCK": [], + "PRIMARY": [], + "TO_MERGE": [], + "UNLOCK": [], + "WITHDRAW": [] + } + } + }, + "exposedFunctions": { + "extend_balance_action": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + } + ] + }, + "extend_time_action": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + } + ] + }, + "lock_action": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + } + ] + }, + "primary": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + } + ] + }, + "to_merge": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + } + ] + }, + "unlock_action": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + } + ] + }, + "withdraw": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + } + ] + } + } + }, + "de_center": { + "fileFormatVersion": 6, + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "name": "de_center", + "friends": [], + "structs": { + "AdminCap": { + "abilities": { + "abilities": ["Store", "Key"] + }, + "typeParameters": [ + { + "constraints": { + "abilities": [] + }, + "isPhantom": true + } + ], + "fields": [ + { + "name": "id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "UID", + "typeArguments": [] + } + } + } + ] + }, + "CreatePoolEvent": { + "abilities": { + "abilities": ["Copy", "Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "protocol", + "type": { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + }, + { + "name": "coin_type", + "type": { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + }, + { + "name": "id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "max_time", + "type": "U64" + }, + { + "name": "offset", + "type": "U64" + } + ] + }, + "DE_CENTER": { + "abilities": { + "abilities": ["Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "dummy_field", + "type": "Bool" + } + ] + }, + "DeCenter": { + "abilities": { + "abilities": ["Store", "Key"] + }, + "typeParameters": [ + { + "constraints": { + "abilities": [] + }, + "isPhantom": true + }, + { + "constraints": { + "abilities": [] + }, + "isPhantom": true + } + ], + "fields": [ + { + "name": "id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "UID", + "typeArguments": [] + } + } + }, + { + "name": "versions", + "type": { + "Struct": { + "address": "0x2", + "module": "vec_set", + "name": "VecSet", + "typeArguments": ["U64"] + } + } + }, + { + "name": "max_time", + "type": "U64" + }, + { + "name": "offset", + "type": "U64" + }, + { + "name": "minted_escrow", + "type": "U64" + }, + { + "name": "locked_total", + "type": "U64" + }, + { + "name": "penalty", + "type": { + "Vector": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "PenaltyInfo", + "typeArguments": [] + } + } + } + }, + { + "name": "penalty_fee_bps", + "type": "U64" + }, + { + "name": "penalty_fee_balance", + "type": { + "Struct": { + "address": "0x2", + "module": "balance", + "name": "Balance", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + }, + { + "name": "penalty_fee_admin", + "type": { + "Struct": { + "address": "0x1", + "module": "option", + "name": "Option", + "typeArguments": [ + { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + ] + } + } + }, + { + "name": "penalty_reserve", + "type": { + "Struct": { + "address": "0x2", + "module": "balance", + "name": "Balance", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + }, + { + "name": "whitelist", + "type": { + "Struct": { + "address": "0x2", + "module": "vec_set", + "name": "VecSet", + "typeArguments": [ + { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + ] + } + } + }, + { + "name": "point", + "type": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "point", + "name": "Point", + "typeArguments": [] + } + } + }, + { + "name": "slope_changes", + "type": { + "Struct": { + "address": "0x2", + "module": "table", + "name": "Table", + "typeArguments": [ + "U64", + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + } + } + }, + { + "name": "response_checklists", + "type": { + "Struct": { + "address": "0x2", + "module": "vec_set", + "name": "VecSet", + "typeArguments": [ + { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + ] + } + } + } + ] + }, + "DeTokenUpdateResponse": { + "abilities": { + "abilities": [] + }, + "typeParameters": [ + { + "constraints": { + "abilities": [] + }, + "isPhantom": true + }, + { + "constraints": { + "abilities": [] + }, + "isPhantom": true + } + ], + "fields": [ + { + "name": "id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "pool_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "action", + "type": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + } + }, + { + "name": "checklists", + "type": { + "Struct": { + "address": "0x2", + "module": "vec_set", + "name": "VecSet", + "typeArguments": [ + { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + ] + } + } + }, + { + "name": "max_time", + "type": "U64" + }, + { + "name": "balance", + "type": "U64" + }, + { + "name": "end", + "type": "U64" + }, + { + "name": "early_unlock", + "type": "Bool" + }, + { + "name": "raw_voting_weight", + "type": "U64" + }, + { + "name": "voting_weight", + "type": "U64" + } + ] + }, + "IncreaseUnlockAmountEvent": { + "abilities": { + "abilities": ["Copy", "Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "escrow_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "pool_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "coin_type", + "type": { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + }, + { + "name": "locked_amount", + "type": "U64" + }, + { + "name": "timestamp", + "type": "U64" + } + ] + }, + "IncreaseUnlockTimeEvent": { + "abilities": { + "abilities": ["Copy", "Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "escrow_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "pool_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "coin_type", + "type": { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + }, + { + "name": "timestamp", + "type": "U64" + }, + { + "name": "extended_duration", + "type": "U64" + } + ] + }, + "LockEvent": { + "abilities": { + "abilities": ["Copy", "Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "escrow_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "pool_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "coin_type", + "type": { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + }, + { + "name": "locked_value", + "type": "U64" + }, + { + "name": "unlock_time", + "type": "U64" + }, + { + "name": "timestamp", + "type": "U64" + } + ] + }, + "MergeEvent": { + "abilities": { + "abilities": ["Copy", "Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "escrow_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "merged_escrow_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "pool_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "coin_type", + "type": { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + }, + { + "name": "locked_value", + "type": "U64" + }, + { + "name": "new_unlock_time", + "type": "U64" + }, + { + "name": "merged_value", + "type": "U64" + }, + { + "name": "merged_unlock_time", + "type": "U64" + }, + { + "name": "timestamp", + "type": "U64" + } + ] + }, + "PenaltyEvent": { + "abilities": { + "abilities": ["Copy", "Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "escrow_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "pool_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "penalty_amount", + "type": "U64" + }, + { + "name": "penalty_fee", + "type": "U64" + }, + { + "name": "penalty_reserve", + "type": "U64" + } + ] + }, + "PenaltyInfo": { + "abilities": { + "abilities": ["Drop", "Store"] + }, + "typeParameters": [], + "fields": [ + { + "name": "elapsed_percentage", + "type": "U32" + }, + { + "name": "penalty_percentage", + "type": "U32" + } + ] + }, + "UnlockEvent": { + "abilities": { + "abilities": ["Copy", "Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "escrow_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "pool_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "coin_type", + "type": { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + }, + { + "name": "unlocked_value", + "type": "U64" + }, + { + "name": "locked_end", + "type": "U64" + }, + { + "name": "timestamp", + "type": "U64" + } + ] + }, + "WithdrawEvent": { + "abilities": { + "abilities": ["Copy", "Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "escrow_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "pool_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "coin_type", + "type": { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + }, + { + "name": "withdrawl", + "type": "U64" + }, + { + "name": "locked_end", + "type": "U64" + }, + { + "name": "timestamp", + "type": "U64" + }, + { + "name": "whitelist", + "type": { + "Struct": { + "address": "0x1", + "module": "option", + "name": "Option", + "typeArguments": [ + { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + ] + } + } + } + ] + } + }, + "exposedFunctions": { + "add_penalty": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + }, + "U32", + "U32" + ], + "return": [] + }, + "add_penalty_fee_admin": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + }, + { + "abilities": ["Drop"] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [] + }, + "add_penalty_fee_balance": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x2", + "module": "balance", + "name": "Balance", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + ], + "return": [] + }, + "add_penalty_reserve": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x2", + "module": "balance", + "name": "Balance", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + ], + "return": [] + }, + "add_response_checklists": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + }, + { + "abilities": ["Drop"] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [] + }, + "add_version": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64" + ], + "return": [] + }, + "add_whitelist": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + }, + { + "abilities": ["Drop"] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [] + }, + "checkpoint": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": [] + }, + "current_penalty": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64" + ], + "return": [ + { + "Struct": { + "address": "0x1", + "module": "option", + "name": "Option", + "typeArguments": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "PenaltyInfo", + "typeArguments": [] + } + } + ] + } + } + ] + }, + "default": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64", + "U64", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [] + }, + "escrow_current_penalty": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x1", + "module": "option", + "name": "Option", + "typeArguments": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "PenaltyInfo", + "typeArguments": [] + } + } + ] + } + } + ] + }, + "escrow_penalty": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x1", + "module": "option", + "name": "Option", + "typeArguments": ["U64"] + } + } + ] + }, + "force_unlock_with_penalty": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "force_unlock_with_whitelist": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + }, + { + "abilities": ["Drop"] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + }, + { + "TypeParameter": 2 + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "force_withdraw_with_penalty": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "force_withdraw_with_whitelist": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + }, + { + "abilities": ["Drop"] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "TypeParameter": 2 + }, + "U64", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "fulfill_response": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [] + }, + "get_locked_end": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": ["U64"] + }, + "increase_unlock_amount": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "increase_unlock_time": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "lock": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + }, + "U64", + "Bool", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "locked_total": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "max_locked_end": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": ["U64"] + }, + "max_time": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "merge": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "minted_escrow": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "new": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64", + "U64", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "new_admin": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": ["Drop"] + } + ], + "parameters": [ + { + "TypeParameter": 0 + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + ] + }, + "offset": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "package_version": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": ["U64"] + }, + "penalty_fee_admin": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x1", + "module": "option", + "name": "Option", + "typeArguments": [ + { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + ] + } + } + ] + }, + "penalty_fee_balance": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "balance", + "name": "Balance", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + } + ] + }, + "penalty_fee_bps": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "penalty_info": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Vector": "U32" + }, + { + "Vector": "U32" + } + ] + }, + "penalty_info_elapsed_percentage": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "PenaltyInfo", + "typeArguments": [] + } + } + } + ], + "return": ["U32"] + }, + "penalty_info_penalty_percentage": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "PenaltyInfo", + "typeArguments": [] + } + } + } + ], + "return": ["U32"] + }, + "penalty_reserve": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "balance", + "name": "Balance", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + } + ] + }, + "point": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "point", + "name": "Point", + "typeArguments": [] + } + } + } + ] + }, + "remove_penalty": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + }, + "U32" + ], + "return": [] + }, + "remove_penalty_fee_admin": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [] + }, + "remove_response_checklists": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + }, + { + "abilities": ["Drop"] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [] + }, + "remove_version": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64" + ], + "return": [] + }, + "remove_whitelist": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + }, + { + "abilities": ["Drop"] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [] + }, + "response_check_rule": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + }, + { + "abilities": ["Drop"] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "TypeParameter": 2 + } + ], + "return": [] + }, + "response_checklists": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "vec_set", + "name": "VecSet", + "typeArguments": [ + { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + ] + } + } + } + ] + }, + "round_down_week": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": ["U64"], + "return": ["U64"] + }, + "scaling": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": ["U64"] + }, + "to_vesting_token_update_response": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "total_voting_weight": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": ["U64"] + }, + "total_voting_weight_at": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64" + ], + "return": ["U64"] + }, + "unlock": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "vesting_token_update_response_balance": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "vesting_token_update_response_checklists": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "vec_set", + "name": "VecSet", + "typeArguments": [ + { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + ] + } + } + ] + }, + "vesting_token_update_response_early_unlock": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["Bool"] + }, + "vesting_token_update_response_end": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "vesting_token_update_response_id": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + ] + }, + "vesting_token_update_response_max_time": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "vesting_token_update_response_pool_id": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + ] + }, + "vesting_token_update_response_raw_voting_weight": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "vesting_token_update_response_voting_weight": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "vesting_tokenupdate_response_balance": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "vesting_tokenupdate_response_checklists": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "vec_set", + "name": "VecSet", + "typeArguments": [ + { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + ] + } + } + ] + }, + "vesting_tokenupdate_response_early_unlock": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["Bool"] + }, + "vesting_tokenupdate_response_end": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "vesting_tokenupdate_response_id": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + ] + }, + "vesting_tokenupdate_response_max_time": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "vesting_tokenupdate_response_pool_id": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + ] + }, + "vesting_tokenupdate_response_raw_voting_weight": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "vesting_tokenupdate_response_voting_weight": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeTokenUpdateResponse", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "week": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": ["U64"] + }, + "whitelist": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "vec_set", + "name": "VecSet", + "typeArguments": [ + { + "Struct": { + "address": "0x1", + "module": "type_name", + "name": "TypeName", + "typeArguments": [] + } + } + ] + } + } + } + ] + }, + "withdraw_penalty_fee": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "AdminCap", + "typeArguments": [ + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64" + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "balance", + "name": "Balance", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + ] + }, + "withdraw_penalty_reserve": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + }, + { + "abilities": ["Drop"] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_center", + "name": "DeCenter", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "TypeParameter": 2 + }, + "U64" + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "balance", + "name": "Balance", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + ] + } + } + }, + "de_token": { + "fileFormatVersion": 6, + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "name": "de_token", + "friends": [ + { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "name": "de_center" + } + ], + "structs": { + "DE_TOKEN": { + "abilities": { + "abilities": ["Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "dummy_field", + "type": "Bool" + } + ] + }, + "DeToken": { + "abilities": { + "abilities": ["Store", "Key"] + }, + "typeParameters": [ + { + "constraints": { + "abilities": [] + }, + "isPhantom": true + }, + { + "constraints": { + "abilities": [] + }, + "isPhantom": true + } + ], + "fields": [ + { + "name": "id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "UID", + "typeArguments": [] + } + } + }, + { + "name": "pool", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "max_time", + "type": "U64" + }, + { + "name": "img_url", + "type": { + "Struct": { + "address": "0x1", + "module": "ascii", + "name": "String", + "typeArguments": [] + } + } + }, + { + "name": "name", + "type": { + "Struct": { + "address": "0x1", + "module": "ascii", + "name": "String", + "typeArguments": [] + } + } + }, + { + "name": "balance", + "type": { + "Struct": { + "address": "0x2", + "module": "balance", + "name": "Balance", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + }, + { + "name": "end", + "type": "U64" + }, + { + "name": "escrow_epoch", + "type": "U64" + }, + { + "name": "point", + "type": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "point", + "name": "Point", + "typeArguments": [] + } + } + }, + { + "name": "early_unlock", + "type": "Bool" + } + ] + }, + "DeTokenUpdateEvent": { + "abilities": { + "abilities": ["Copy", "Drop"] + }, + "typeParameters": [], + "fields": [ + { + "name": "escrow_id", + "type": { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + }, + { + "name": "action", + "type": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + } + }, + { + "name": "prev_bal", + "type": "U64" + }, + { + "name": "current_bal", + "type": "U64" + }, + { + "name": "prev_duration", + "type": "U64" + }, + { + "name": "current_duration", + "type": "U64" + }, + { + "name": "prev_end", + "type": "U64" + }, + { + "name": "current_end", + "type": "U64" + }, + { + "name": "current_voting_weight", + "type": "U64" + }, + { + "name": "prev_raw_voting_weight", + "type": "U64" + }, + { + "name": "current_raw_voting_weight", + "type": "U64" + }, + { + "name": "timestamp", + "type": "U64" + } + ] + } + }, + "exposedFunctions": { + "balance": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "calculate_bias": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": ["U64", "U64", "U64", "U64"], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "calculate_bias_by_slope": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + }, + "U64", + "U64" + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "calculate_slope": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": ["U64", "U64"], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "destroy": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ], + "return": [] + }, + "early_unlock": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["Bool"] + }, + "end": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "escrow_epoch": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "extend": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + }, + { + "Struct": { + "address": "0x1", + "module": "option", + "name": "Option", + "typeArguments": [ + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + ] + } + }, + "U64", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": [] + }, + "is_expired": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": ["Bool"] + }, + "max_time": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "multiplier_i128": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "new": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + }, + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + }, + { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + }, + "U64", + "U64", + "Bool", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + ] + }, + "point": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "point", + "name": "Point", + "typeArguments": [] + } + } + } + ] + }, + "pool_id": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "object", + "name": "ID", + "typeArguments": [] + } + } + ] + }, + "raw_voting_weight": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + } + ], + "return": ["U64"] + }, + "update_early_unlock": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + "Bool" + ], + "return": [] + }, + "voting_weight": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + } + ], + "return": ["U64"] + }, + "voting_weight_at": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + "U64" + ], + "return": ["U64"] + }, + "withdraw": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + }, + "U64", + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + ] + }, + "withdraw_all": { + "visibility": "Friend", + "isEntry": false, + "typeParameters": [ + { + "abilities": [] + }, + { + "abilities": [] + } + ], + "parameters": [ + { + "MutableReference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "de_token", + "name": "DeToken", + "typeArguments": [ + { + "TypeParameter": 0 + }, + { + "TypeParameter": 1 + } + ] + } + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "action", + "name": "Action", + "typeArguments": [] + } + }, + { + "Reference": { + "Struct": { + "address": "0x2", + "module": "clock", + "name": "Clock", + "typeArguments": [] + } + } + }, + { + "MutableReference": { + "Struct": { + "address": "0x2", + "module": "tx_context", + "name": "TxContext", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x2", + "module": "coin", + "name": "Coin", + "typeArguments": [ + { + "TypeParameter": 0 + } + ] + } + } + ] + } + } + }, + "i128": { + "fileFormatVersion": 6, + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "name": "i128", + "friends": [], + "structs": { + "I128": { + "abilities": { + "abilities": ["Copy", "Drop", "Store"] + }, + "typeParameters": [], + "fields": [ + { + "name": "bits", + "type": "U128" + } + ] + } + }, + "exposedFunctions": { + "abs": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "add": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "as_u128": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + } + ], + "return": ["U128"] + }, + "compare": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + } + ], + "return": ["U8"] + }, + "div": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "from": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": ["U128"], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "is_neg": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + } + ], + "return": ["Bool"] + }, + "is_zero": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + } + ], + "return": ["Bool"] + }, + "mul": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "neg": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "neg_from": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": ["U128"], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "sub": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + }, + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "zero": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + } + } + }, + "point": { + "fileFormatVersion": 6, + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "name": "point", + "friends": [], + "structs": { + "Point": { + "abilities": { + "abilities": ["Copy", "Drop", "Store"] + }, + "typeParameters": [], + "fields": [ + { + "name": "slope", + "type": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + }, + { + "name": "bias", + "type": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + }, + { + "name": "timestamp", + "type": "U64" + } + ] + } + }, + "exposedFunctions": { + "bias": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "point", + "name": "Point", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "new": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + }, + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + }, + "U64" + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "point", + "name": "Point", + "typeArguments": [] + } + } + ] + }, + "slope": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "point", + "name": "Point", + "typeArguments": [] + } + } + } + ], + "return": [ + { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "i128", + "name": "I128", + "typeArguments": [] + } + } + ] + }, + "timestamp": { + "visibility": "Public", + "isEntry": false, + "typeParameters": [], + "parameters": [ + { + "Reference": { + "Struct": { + "address": "0x6104e610f707fe5f1b3f34aa274c113a6b0523e63d5fb2069710e1c2d1f1fd1c", + "module": "point", + "name": "Point", + "typeArguments": [] + } + } + } + ], + "return": ["U64"] + } + } + } +} diff --git a/packages/sui/src/tests/move-coder.test.ts b/packages/sui/src/tests/move-coder.test.ts index 53d927de..527acb7c 100644 --- a/packages/sui/src/tests/move-coder.test.ts +++ b/packages/sui/src/tests/move-coder.test.ts @@ -6,6 +6,7 @@ import { TypedSuiMoveObject } from '../models.js' import { BUILTIN_TYPES, parseMoveType } from '@typemove/move' import { single_collateral } from './types/testnet/0xebaa2ad3eacc230f309cd933958cc52684df0a41ae7ac214d186b80f830867d2.js' import { ascii } from '../builtin/0x1.js' +import { de_token } from './types/testnet/enum' describe('Test Sui coder', () => { const coder = defaultMoveCoder() @@ -106,6 +107,29 @@ describe('Test Sui coder', () => { // console.log(res) }) + test('decode enum', async () => { + const data = { + action: { + variant: 'LOCK', + fields: {} + }, + current_bal: '2000000000000000', + current_duration: '30914396059', + current_end: '1767614400000', + current_raw_voting_weight: '1965964340341353', + current_voting_weight: '1965964340341353', + escrow_id: '0x376cbdd42d3075519ec3523e1a78bbca1f07a3011f96ea10ebd60e9f65c1075e', + prev_bal: '0', + prev_duration: '0', + prev_end: '0', + prev_raw_voting_weight: '0', + timestamp: '1736700003941' + } + + const res = await coder.decodeType(data, de_token.DeTokenUpdateEvent.type()) + expect(res?.action.variant).equals('LOCK') + }) + test('decode dynamic fields', async () => { const objects = data.map((d) => d.data.content) const res = (await coder.filterAndDecodeObjects( diff --git a/packages/sui/src/to-internal.ts b/packages/sui/src/to-internal.ts index 433d32b1..dbe35e3c 100644 --- a/packages/sui/src/to-internal.ts +++ b/packages/sui/src/to-internal.ts @@ -1,4 +1,5 @@ import type { + SuiMoveNormalizedEnum, SuiMoveNormalizedField, SuiMoveNormalizedFunction, SuiMoveNormalizedModule, @@ -6,6 +7,7 @@ import type { SuiMoveNormalizedType } from '@mysten/sui/client' import { + InternalMoveEnum, InternalMoveFunction, InternalMoveFunctionVisibility, InternalMoveModule, @@ -20,7 +22,8 @@ export function toInternalModule(module: SuiMoveNormalizedModule): InternalMoveM address: module.address, exposedFunctions: Object.entries(module.exposedFunctions).map(([n, f]) => toInternalFunction(n, f)), name: module.name, - structs: Object.entries(module.structs).map(([n, s]) => toInternalStruct(n, s)) + structs: Object.entries(module.structs).map(([n, s]) => toInternalStruct(n, s)), + enums: Object.entries(module.enums || {}).map(([n, e]) => toInternalEnum(n, e)) } } @@ -64,6 +67,20 @@ function toInternalStruct(name: string, struct: SuiMoveNormalizedStruct): Intern } } +function toInternalEnum(name: string, enumType: SuiMoveNormalizedEnum): InternalMoveEnum { + return { + name: name, + abilities: enumType.abilities.abilities, + typeParams: enumType.typeParameters.map((p: any) => { + return { constraints: p.constraints.abilities } + }), + variants: Object.entries(enumType.variants).reduce((acc: { [key: string]: InternalMoveStructField[] }, [k, v]) => { + acc[k] = v.map(toInternalField) + return acc + }, {}) + } +} + function toInternalField(module: SuiMoveNormalizedField): InternalMoveStructField { return { name: module.name, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 32d4c1ed..ce4982d2 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -27,11 +27,11 @@ importers: specifier: ^22.0.0 version: 22.8.6 '@typescript-eslint/eslint-plugin': - specifier: ^8.0.0 - version: 8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint@9.6.0)(typescript@5.4.5) + specifier: ^8.21.0 + version: 8.21.0(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint@9.6.0)(typescript@5.7.3) '@typescript-eslint/parser': - specifier: ^8.0.0 - version: 8.12.2(eslint@9.6.0)(typescript@5.4.5) + specifier: ^8.21.0 + version: 8.21.0(eslint@9.6.0)(typescript@5.7.3) chai: specifier: ^5.1.2 version: 5.1.2 @@ -46,16 +46,16 @@ importers: version: 9.1.0(eslint@9.6.0) eslint-import-resolver-typescript: specifier: ^3.6.1 - version: 3.6.1(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint-plugin-import@2.29.1)(eslint@9.6.0) + version: 3.6.1(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint-plugin-import@2.29.1)(eslint@9.6.0) eslint-plugin-deprecation: specifier: ^3.0.0 - version: 3.0.0(eslint@9.6.0)(typescript@5.4.5) + version: 3.0.0(eslint@9.6.0)(typescript@5.7.3) eslint-plugin-import-x: specifier: ^4.0.0 - version: 4.4.0(eslint@9.6.0)(typescript@5.4.5) + version: 4.4.0(eslint@9.6.0)(typescript@5.7.3) eslint-plugin-unused-imports: specifier: ^4.0.0 - version: 4.0.1(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint@9.6.0)(typescript@5.4.5))(eslint@9.6.0) + version: 4.0.1(@typescript-eslint/eslint-plugin@8.21.0(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint@9.6.0)(typescript@5.7.3))(eslint@9.6.0) glob: specifier: ^11.0.0 version: 11.0.0 @@ -76,7 +76,7 @@ importers: version: 0.14.0(prettier@3.2.5) semantic-release: specifier: ^24.0.0 - version: 24.0.0(typescript@5.4.5) + version: 24.0.0(typescript@5.7.3) tslib: specifier: ^2.6.2 version: 2.6.2 @@ -85,10 +85,10 @@ importers: version: 4.10.0 typedoc: specifier: ^0.27.0 - version: 0.27.2(typescript@5.4.5) + version: 0.27.2(typescript@5.7.3) typescript: - specifier: ^5.4.5 - version: 5.4.5 + specifier: ^5.7.3 + version: 5.7.3 examples/aptos: dependencies: @@ -105,8 +105,8 @@ importers: examples/sui: dependencies: '@mysten/sui': - specifier: ~1.17.0 - version: 1.17.0(typescript@5.5.3) + specifier: ~1.20.0 + version: 1.20.0(typescript@5.7.3) '@typemove/move': specifier: workspace:* version: link:../../packages/move @@ -144,8 +144,8 @@ importers: packages/sui: dependencies: '@mysten/sui': - specifier: ~1.17.0 - version: 1.17.0(typescript@5.5.3) + specifier: ~1.20.0 + version: 1.20.0(typescript@5.7.3) '@typemove/move': specifier: workspace:* version: link:../move @@ -431,11 +431,11 @@ packages: os: [darwin, linux, win32] hasBin: true - '@mysten/bcs@1.2.0': - resolution: {integrity: sha512-LuKonrGdGW7dq/EM6U2L9/as7dFwnhZnsnINzB/vu08Xfrj0qzWwpLOiXagAa5yZOPLK7anRZydMonczFkUPzA==} + '@mysten/bcs@1.2.1': + resolution: {integrity: sha512-RMSaUsNb8oR0rTRVIOOcyoEVJqQi6DLvMXN+7mvDcki12FJFQ0lF89zQa7AV7cIurWlDQfJ8VIbCuRDyK+955A==} - '@mysten/sui@1.17.0': - resolution: {integrity: sha512-vL6QrH3l10dTatimPmz/feqMbYfEjvh8MPf3Xwn5tjuwDwBCS0ha1kdN+4vUpu6t0aCFviK+Df/vanORS8cbGQ==} + '@mysten/sui@1.20.0': + resolution: {integrity: sha512-/XLogwOYaSP31lPt377fj5b+8sRIyt2Opi/Ssos5dssPqol9vgvN/ZzV5Y5qVl4VquhATJHRpwV33B5rIVi7Ow==} engines: {node: '>=18'} '@noble/curves@1.4.0': @@ -646,26 +646,20 @@ packages: '@types/unist@3.0.2': resolution: {integrity: sha512-dqId9J8K/vGi5Zr7oo212BGii5m3q5Hxlkwy3WpYuKPklmBEvsbMYYyLxAQpSffdLl/gdW0XUpKWFvYmyoWCoQ==} - '@typescript-eslint/eslint-plugin@8.12.2': - resolution: {integrity: sha512-gQxbxM8mcxBwaEmWdtLCIGLfixBMHhQjBqR8sVWNTPpcj45WlYL2IObS/DNMLH1DBP0n8qz+aiiLTGfopPEebw==} + '@typescript-eslint/eslint-plugin@8.21.0': + resolution: {integrity: sha512-eTH+UOR4I7WbdQnG4Z48ebIA6Bgi7WO8HvFEneeYBxG8qCOYgTOFPSg6ek9ITIDvGjDQzWHcoWHCDO2biByNzA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/parser@8.12.2': - resolution: {integrity: sha512-MrvlXNfGPLH3Z+r7Tk+Z5moZAc0dzdVjTgUgwsdGweH7lydysQsnSww3nAmsq8blFuRD5VRlAr9YdEFw3e6PBw==} + '@typescript-eslint/parser@8.21.0': + resolution: {integrity: sha512-Wy+/sdEH9kI3w9civgACwabHbKl+qIOu0uFZ9IMKzX3Jpv9og0ZBJrZExGrPpFAY7rWsXuxs5e7CPPP17A4eYA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/scope-manager@7.8.0': resolution: {integrity: sha512-viEmZ1LmwsGcnr85gIq+FCYI7nO90DVbE37/ll51hjv9aG+YZMb4WDE2fyWpUR4O/UrhGRpYXK/XajcGTk2B8g==} @@ -675,14 +669,16 @@ packages: resolution: {integrity: sha512-gPLpLtrj9aMHOvxJkSbDBmbRuYdtiEbnvO25bCMza3DhMjTQw0u7Y1M+YR5JPbMsXXnSPuCf5hfq0nEkQDL/JQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/type-utils@8.12.2': - resolution: {integrity: sha512-bwuU4TAogPI+1q/IJSKuD4shBLc/d2vGcRT588q+jzayQyjVK2X6v/fbR4InY2U2sgf8MEvVCqEWUzYzgBNcGQ==} + '@typescript-eslint/scope-manager@8.21.0': + resolution: {integrity: sha512-G3IBKz0/0IPfdeGRMbp+4rbjfSSdnGkXsM/pFZA8zM9t9klXDnB/YnKOBQ0GoPmoROa4bCq2NeHgJa5ydsQ4mA==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + + '@typescript-eslint/type-utils@8.21.0': + resolution: {integrity: sha512-95OsL6J2BtzoBxHicoXHxgk3z+9P3BEcQTpBKriqiYzLKnM2DeSqs+sndMKdamU8FosiadQFT3D+BSL9EKnAJQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/types@7.8.0': resolution: {integrity: sha512-wf0peJ+ZGlcH+2ZS23aJbOv+ztjeeP8uQ9GgwMJGVLx/Nj9CJt17GWgWWoSmoRVKAX2X+7fzEnAjxdvK2gqCLw==} @@ -692,6 +688,10 @@ packages: resolution: {integrity: sha512-VwDwMF1SZ7wPBUZwmMdnDJ6sIFk4K4s+ALKLP6aIQsISkPv8jhiw65sAK6SuWODN/ix+m+HgbYDkH+zLjrzvOA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/types@8.21.0': + resolution: {integrity: sha512-PAL6LUuQwotLW2a8VsySDBwYMm129vFm4tMVlylzdoTybTHaAi0oBp7Ac6LhSrHHOdLM3efH+nAR6hAWoMF89A==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/typescript-estree@7.8.0': resolution: {integrity: sha512-5pfUCOwK5yjPaJQNy44prjCwtr981dO8Qo9J9PwYXZ0MosgAbfEMB008dJ5sNo3+/BN6ytBPuSvXUg9SAqB0dg==} engines: {node: ^18.18.0 || >=20.0.0} @@ -710,6 +710,12 @@ packages: typescript: optional: true + '@typescript-eslint/typescript-estree@8.21.0': + resolution: {integrity: sha512-x+aeKh/AjAArSauz0GiQZsjT8ciadNMHdkUSwBB9Z6PrKc/4knM4g3UfHml6oDJmKC88a6//cdxnO/+P2LkMcg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + typescript: '>=4.8.4 <5.8.0' + '@typescript-eslint/utils@7.8.0': resolution: {integrity: sha512-L0yFqOCflVqXxiZyXrDr80lnahQfSOfc9ELAAZ75sqicqp2i36kEZZGuUymHNFoYOqxRT05up760b4iGsl02nQ==} engines: {node: ^18.18.0 || >=20.0.0} @@ -722,6 +728,13 @@ packages: peerDependencies: eslint: ^8.57.0 || ^9.0.0 + '@typescript-eslint/utils@8.21.0': + resolution: {integrity: sha512-xcXBfcq0Kaxgj7dwejMbFyq7IOHgpNMtVuDveK7w3ZGwG9owKzhALVwKpTF2yrZmEwl9SWdetf3fxNzJQaVuxw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' + '@typescript-eslint/visitor-keys@7.8.0': resolution: {integrity: sha512-q4/gibTNBQNA0lGyYQCmWRS5D15n8rXh4QjK3KV+MBPlTYHpfBUT3D3PaPR/HeNiI9W6R7FvlkcGhNyAoP+caA==} engines: {node: ^18.18.0 || >=20.0.0} @@ -730,6 +743,10 @@ packages: resolution: {integrity: sha512-PChz8UaKQAVNHghsHcPyx1OMHoFRUEA7rJSK/mDhdq85bk+PLsUHUBqTQTFt18VJZbmxBovM65fezlheQRsSDA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@typescript-eslint/visitor-keys@8.21.0': + resolution: {integrity: sha512-BkLMNpdV6prozk8LlyK/SOoWLmUFi+ZD+pcqti9ILCbVvHGk1ui1g4jJOc2WDLaeExz2qWwojxlPce5PljcT3w==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + acorn-jsx@5.3.2: resolution: {integrity: sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==} peerDependencies: @@ -1288,6 +1305,10 @@ packages: resolution: {integrity: sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint-visitor-keys@4.2.0: + resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + eslint@9.6.0: resolution: {integrity: sha512-ElQkdLMEEqQNM9Njff+2Y4q2afHk7JpkPvrd7Xh7xefwgQynqPxwf55J7di9+MEibWUGdNjFF9ITG9Pck5M84w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} @@ -2648,6 +2669,12 @@ packages: peerDependencies: typescript: '>=4.2.0' + ts-api-utils@2.0.0: + resolution: {integrity: sha512-xCt/TOAc+EOHS1XPnijD3/yzpH6qg2xppZO1YDqGoVsNXfQfzHpOdNuXwrwOU8u4ITXJyDCTyt8w5g1sZv9ynQ==} + engines: {node: '>=18.12'} + peerDependencies: + typescript: '>=4.8.4' + tsconfig-paths@3.15.0: resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} @@ -2662,9 +2689,6 @@ packages: engines: {node: '>=18.0.0'} hasBin: true - tweetnacl@1.0.3: - resolution: {integrity: sha512-6rt+RN7aOi1nGMyC4Xa5DdYiukl2UWCbcJft7YhxReBGQD7OAM8Pbxw6YMo4r2diNEA8FEmu32YOn9rhaiE5yw==} - type-check@0.4.0: resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} engines: {node: '>= 0.8.0'} @@ -2708,13 +2732,8 @@ packages: peerDependencies: typescript: 5.0.x || 5.1.x || 5.2.x || 5.3.x || 5.4.x || 5.5.x || 5.6.x || 5.7.x - typescript@5.4.5: - resolution: {integrity: sha512-vcI4UpRgg81oIRUFwR0WSIHKt11nJ7SAVlYNIu+QpqeyXP+gpQJy/Z4+F0aGxSE4MqwjyXvW/TzgkLAx2AGHwQ==} - engines: {node: '>=14.17'} - hasBin: true - - typescript@5.5.3: - resolution: {integrity: sha512-/hreyEujaB0w76zKo6717l3L0o/qEUtRgdvUBvlkhoWeOVMjMuHNHk0BRBzikzuGDqNmPQbg5ifMEqsHLiIUcQ==} + typescript@5.7.3: + resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==} engines: {node: '>=14.17'} hasBin: true @@ -2852,11 +2871,11 @@ snapshots: optionalDependencies: graphql: 16.9.0 - '@0no-co/graphqlsp@1.12.16(graphql@16.9.0)(typescript@5.5.3)': + '@0no-co/graphqlsp@1.12.16(graphql@16.9.0)(typescript@5.7.3)': dependencies: - '@gql.tada/internal': 1.0.8(graphql@16.9.0)(typescript@5.5.3) + '@gql.tada/internal': 1.0.8(graphql@16.9.0)(typescript@5.7.3) graphql: 16.9.0 - typescript: 5.5.3 + typescript: 5.7.3 '@aptos-labs/aptos-cli@0.1.9': {} @@ -3037,18 +3056,18 @@ snapshots: '@shikijs/types': 1.24.0 '@shikijs/vscode-textmate': 9.3.0 - '@gql.tada/cli-utils@1.6.3(@0no-co/graphqlsp@1.12.16(graphql@16.9.0)(typescript@5.5.3))(graphql@16.9.0)(typescript@5.5.3)': + '@gql.tada/cli-utils@1.6.3(@0no-co/graphqlsp@1.12.16(graphql@16.9.0)(typescript@5.7.3))(graphql@16.9.0)(typescript@5.7.3)': dependencies: - '@0no-co/graphqlsp': 1.12.16(graphql@16.9.0)(typescript@5.5.3) - '@gql.tada/internal': 1.0.8(graphql@16.9.0)(typescript@5.5.3) + '@0no-co/graphqlsp': 1.12.16(graphql@16.9.0)(typescript@5.7.3) + '@gql.tada/internal': 1.0.8(graphql@16.9.0)(typescript@5.7.3) graphql: 16.9.0 - typescript: 5.5.3 + typescript: 5.7.3 - '@gql.tada/internal@1.0.8(graphql@16.9.0)(typescript@5.5.3)': + '@gql.tada/internal@1.0.8(graphql@16.9.0)(typescript@5.7.3)': dependencies: '@0no-co/graphql.web': 1.0.7(graphql@16.9.0) graphql: 16.9.0 - typescript: 5.5.3 + typescript: 5.7.3 '@graphql-typed-document-node/core@3.2.0(graphql@16.9.0)': dependencies: @@ -3069,14 +3088,14 @@ snapshots: '@ls-lint/ls-lint@2.2.3': {} - '@mysten/bcs@1.2.0': + '@mysten/bcs@1.2.1': dependencies: bs58: 6.0.0 - '@mysten/sui@1.17.0(typescript@5.5.3)': + '@mysten/sui@1.20.0(typescript@5.7.3)': dependencies: '@graphql-typed-document-node/core': 3.2.0(graphql@16.9.0) - '@mysten/bcs': 1.2.0 + '@mysten/bcs': 1.2.1 '@noble/curves': 1.6.0 '@noble/hashes': 1.5.0 '@scure/bip32': 1.4.0 @@ -3084,11 +3103,10 @@ snapshots: '@simplewebauthn/typescript-types': 7.4.0 '@suchipi/femver': 1.0.0 bech32: 2.0.0 - gql.tada: 1.8.10(graphql@16.9.0)(typescript@5.5.3) + gql.tada: 1.8.10(graphql@16.9.0)(typescript@5.7.3) graphql: 16.9.0 jose: 5.9.6 poseidon-lite: 0.2.0 - tweetnacl: 1.0.3 valibot: 0.36.0 transitivePeerDependencies: - '@gql.tada/svelte-support' @@ -3207,7 +3225,7 @@ snapshots: '@sec-ant/readable-stream@0.4.1': {} - '@semantic-release/commit-analyzer@13.0.0(semantic-release@24.0.0(typescript@5.4.5))': + '@semantic-release/commit-analyzer@13.0.0(semantic-release@24.0.0(typescript@5.7.3))': dependencies: conventional-changelog-angular: 8.0.0 conventional-changelog-writer: 8.0.0 @@ -3217,13 +3235,13 @@ snapshots: import-from-esm: 1.3.4 lodash-es: 4.17.21 micromatch: 4.0.5 - semantic-release: 24.0.0(typescript@5.4.5) + semantic-release: 24.0.0(typescript@5.7.3) transitivePeerDependencies: - supports-color '@semantic-release/error@4.0.0': {} - '@semantic-release/github@10.0.3(semantic-release@24.0.0(typescript@5.4.5))': + '@semantic-release/github@10.0.3(semantic-release@24.0.0(typescript@5.7.3))': dependencies: '@octokit/core': 6.1.2 '@octokit/plugin-paginate-rest': 11.3.0(@octokit/core@6.1.2) @@ -3240,12 +3258,12 @@ snapshots: lodash-es: 4.17.21 mime: 4.0.3 p-filter: 4.1.0 - semantic-release: 24.0.0(typescript@5.4.5) + semantic-release: 24.0.0(typescript@5.7.3) url-join: 5.0.0 transitivePeerDependencies: - supports-color - '@semantic-release/npm@12.0.1(semantic-release@24.0.0(typescript@5.4.5))': + '@semantic-release/npm@12.0.1(semantic-release@24.0.0(typescript@5.7.3))': dependencies: '@semantic-release/error': 4.0.0 aggregate-error: 5.0.0 @@ -3258,11 +3276,11 @@ snapshots: rc: 1.2.8 read-pkg: 9.0.1 registry-auth-token: 5.0.2 - semantic-release: 24.0.0(typescript@5.4.5) + semantic-release: 24.0.0(typescript@5.7.3) semver: 7.6.2 tempy: 3.1.0 - '@semantic-release/release-notes-generator@14.0.1(semantic-release@24.0.0(typescript@5.4.5))': + '@semantic-release/release-notes-generator@14.0.1(semantic-release@24.0.0(typescript@5.7.3))': dependencies: conventional-changelog-angular: 8.0.0 conventional-changelog-writer: 8.0.0 @@ -3274,7 +3292,7 @@ snapshots: into-stream: 7.0.0 lodash-es: 4.17.21 read-package-up: 11.0.0 - semantic-release: 24.0.0(typescript@5.4.5) + semantic-release: 24.0.0(typescript@5.7.3) transitivePeerDependencies: - supports-color @@ -3349,34 +3367,32 @@ snapshots: '@types/unist@3.0.2': {} - '@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint@9.6.0)(typescript@5.4.5)': + '@typescript-eslint/eslint-plugin@8.21.0(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint@9.6.0)(typescript@5.7.3)': dependencies: '@eslint-community/regexpp': 4.11.0 - '@typescript-eslint/parser': 8.12.2(eslint@9.6.0)(typescript@5.4.5) - '@typescript-eslint/scope-manager': 8.12.2 - '@typescript-eslint/type-utils': 8.12.2(eslint@9.6.0)(typescript@5.4.5) - '@typescript-eslint/utils': 8.12.2(eslint@9.6.0)(typescript@5.4.5) - '@typescript-eslint/visitor-keys': 8.12.2 + '@typescript-eslint/parser': 8.21.0(eslint@9.6.0)(typescript@5.7.3) + '@typescript-eslint/scope-manager': 8.21.0 + '@typescript-eslint/type-utils': 8.21.0(eslint@9.6.0)(typescript@5.7.3) + '@typescript-eslint/utils': 8.21.0(eslint@9.6.0)(typescript@5.7.3) + '@typescript-eslint/visitor-keys': 8.21.0 eslint: 9.6.0 graphemer: 1.4.0 ignore: 5.3.1 natural-compare: 1.4.0 - ts-api-utils: 1.3.0(typescript@5.4.5) - optionalDependencies: - typescript: 5.4.5 + ts-api-utils: 2.0.0(typescript@5.7.3) + typescript: 5.7.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5)': + '@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3)': dependencies: - '@typescript-eslint/scope-manager': 8.12.2 - '@typescript-eslint/types': 8.12.2 - '@typescript-eslint/typescript-estree': 8.12.2(typescript@5.4.5) - '@typescript-eslint/visitor-keys': 8.12.2 + '@typescript-eslint/scope-manager': 8.21.0 + '@typescript-eslint/types': 8.21.0 + '@typescript-eslint/typescript-estree': 8.21.0(typescript@5.7.3) + '@typescript-eslint/visitor-keys': 8.21.0 debug: 4.3.5 eslint: 9.6.0 - optionalDependencies: - typescript: 5.4.5 + typescript: 5.7.3 transitivePeerDependencies: - supports-color @@ -3390,23 +3406,29 @@ snapshots: '@typescript-eslint/types': 8.12.2 '@typescript-eslint/visitor-keys': 8.12.2 - '@typescript-eslint/type-utils@8.12.2(eslint@9.6.0)(typescript@5.4.5)': + '@typescript-eslint/scope-manager@8.21.0': + dependencies: + '@typescript-eslint/types': 8.21.0 + '@typescript-eslint/visitor-keys': 8.21.0 + + '@typescript-eslint/type-utils@8.21.0(eslint@9.6.0)(typescript@5.7.3)': dependencies: - '@typescript-eslint/typescript-estree': 8.12.2(typescript@5.4.5) - '@typescript-eslint/utils': 8.12.2(eslint@9.6.0)(typescript@5.4.5) + '@typescript-eslint/typescript-estree': 8.21.0(typescript@5.7.3) + '@typescript-eslint/utils': 8.21.0(eslint@9.6.0)(typescript@5.7.3) debug: 4.3.5 - ts-api-utils: 1.3.0(typescript@5.4.5) - optionalDependencies: - typescript: 5.4.5 + eslint: 9.6.0 + ts-api-utils: 2.0.0(typescript@5.7.3) + typescript: 5.7.3 transitivePeerDependencies: - - eslint - supports-color '@typescript-eslint/types@7.8.0': {} '@typescript-eslint/types@8.12.2': {} - '@typescript-eslint/typescript-estree@7.8.0(typescript@5.4.5)': + '@typescript-eslint/types@8.21.0': {} + + '@typescript-eslint/typescript-estree@7.8.0(typescript@5.7.3)': dependencies: '@typescript-eslint/types': 7.8.0 '@typescript-eslint/visitor-keys': 7.8.0 @@ -3415,13 +3437,13 @@ snapshots: is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.2 - ts-api-utils: 1.3.0(typescript@5.4.5) + ts-api-utils: 1.3.0(typescript@5.7.3) optionalDependencies: - typescript: 5.4.5 + typescript: 5.7.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.12.2(typescript@5.4.5)': + '@typescript-eslint/typescript-estree@8.12.2(typescript@5.7.3)': dependencies: '@typescript-eslint/types': 8.12.2 '@typescript-eslint/visitor-keys': 8.12.2 @@ -3430,37 +3452,62 @@ snapshots: is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 - ts-api-utils: 1.3.0(typescript@5.4.5) + ts-api-utils: 1.3.0(typescript@5.7.3) optionalDependencies: - typescript: 5.4.5 + typescript: 5.7.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@7.8.0(eslint@9.6.0)(typescript@5.4.5)': + '@typescript-eslint/typescript-estree@8.21.0(typescript@5.7.3)': + dependencies: + '@typescript-eslint/types': 8.21.0 + '@typescript-eslint/visitor-keys': 8.21.0 + debug: 4.3.5 + fast-glob: 3.3.2 + is-glob: 4.0.3 + minimatch: 9.0.5 + semver: 7.6.3 + ts-api-utils: 2.0.0(typescript@5.7.3) + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + + '@typescript-eslint/utils@7.8.0(eslint@9.6.0)(typescript@5.7.3)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0) '@types/json-schema': 7.0.15 '@types/semver': 7.5.8 '@typescript-eslint/scope-manager': 7.8.0 '@typescript-eslint/types': 7.8.0 - '@typescript-eslint/typescript-estree': 7.8.0(typescript@5.4.5) + '@typescript-eslint/typescript-estree': 7.8.0(typescript@5.7.3) eslint: 9.6.0 semver: 7.6.2 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/utils@8.12.2(eslint@9.6.0)(typescript@5.4.5)': + '@typescript-eslint/utils@8.12.2(eslint@9.6.0)(typescript@5.7.3)': dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0) '@typescript-eslint/scope-manager': 8.12.2 '@typescript-eslint/types': 8.12.2 - '@typescript-eslint/typescript-estree': 8.12.2(typescript@5.4.5) + '@typescript-eslint/typescript-estree': 8.12.2(typescript@5.7.3) eslint: 9.6.0 transitivePeerDependencies: - supports-color - typescript + '@typescript-eslint/utils@8.21.0(eslint@9.6.0)(typescript@5.7.3)': + dependencies: + '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0) + '@typescript-eslint/scope-manager': 8.21.0 + '@typescript-eslint/types': 8.21.0 + '@typescript-eslint/typescript-estree': 8.21.0(typescript@5.7.3) + eslint: 9.6.0 + typescript: 5.7.3 + transitivePeerDependencies: + - supports-color + '@typescript-eslint/visitor-keys@7.8.0': dependencies: '@typescript-eslint/types': 7.8.0 @@ -3471,6 +3518,11 @@ snapshots: '@typescript-eslint/types': 8.12.2 eslint-visitor-keys: 3.4.3 + '@typescript-eslint/visitor-keys@8.21.0': + dependencies: + '@typescript-eslint/types': 8.21.0 + eslint-visitor-keys: 4.2.0 + acorn-jsx@5.3.2(acorn@8.12.0): dependencies: acorn: 8.12.0 @@ -3785,14 +3837,14 @@ snapshots: path-type: 4.0.0 yaml: 1.10.2 - cosmiconfig@9.0.0(typescript@5.4.5): + cosmiconfig@9.0.0(typescript@5.7.3): dependencies: env-paths: 2.2.1 import-fresh: 3.3.0 js-yaml: 4.1.0 parse-json: 5.2.0 optionalDependencies: - typescript: 5.4.5 + typescript: 5.7.3 cross-spawn@7.0.3: dependencies: @@ -4033,13 +4085,13 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint-plugin-import@2.29.1)(eslint@9.6.0): + eslint-import-resolver-typescript@3.6.1(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint-plugin-import@2.29.1)(eslint@9.6.0): dependencies: debug: 4.3.4 enhanced-resolve: 5.16.1 eslint: 9.6.0 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0) - eslint-plugin-import: 2.29.1(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0) + eslint-plugin-import: 2.29.1(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0) fast-glob: 3.3.2 get-tsconfig: 4.7.5 is-core-module: 2.13.1 @@ -4050,30 +4102,30 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-module-utils@2.8.1(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0): + eslint-module-utils@2.8.1(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.12.2(eslint@9.6.0)(typescript@5.4.5) + '@typescript-eslint/parser': 8.21.0(eslint@9.6.0)(typescript@5.7.3) eslint: 9.6.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint-plugin-import@2.29.1)(eslint@9.6.0) + eslint-import-resolver-typescript: 3.6.1(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint-plugin-import@2.29.1)(eslint@9.6.0) transitivePeerDependencies: - supports-color - eslint-plugin-deprecation@3.0.0(eslint@9.6.0)(typescript@5.4.5): + eslint-plugin-deprecation@3.0.0(eslint@9.6.0)(typescript@5.7.3): dependencies: - '@typescript-eslint/utils': 7.8.0(eslint@9.6.0)(typescript@5.4.5) + '@typescript-eslint/utils': 7.8.0(eslint@9.6.0)(typescript@5.7.3) eslint: 9.6.0 - ts-api-utils: 1.3.0(typescript@5.4.5) + ts-api-utils: 1.3.0(typescript@5.7.3) tslib: 2.6.2 - typescript: 5.4.5 + typescript: 5.7.3 transitivePeerDependencies: - supports-color - eslint-plugin-import-x@4.4.0(eslint@9.6.0)(typescript@5.4.5): + eslint-plugin-import-x@4.4.0(eslint@9.6.0)(typescript@5.7.3): dependencies: - '@typescript-eslint/utils': 8.12.2(eslint@9.6.0)(typescript@5.4.5) + '@typescript-eslint/utils': 8.12.2(eslint@9.6.0)(typescript@5.7.3) debug: 4.3.5 doctrine: 3.0.0 eslint: 9.6.0 @@ -4088,7 +4140,7 @@ snapshots: - supports-color - typescript - eslint-plugin-import@2.29.1(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0): + eslint-plugin-import@2.29.1(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0): dependencies: array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 @@ -4098,7 +4150,7 @@ snapshots: doctrine: 2.1.0 eslint: 9.6.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0) + eslint-module-utils: 2.8.1(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.6.1)(eslint@9.6.0) hasown: 2.0.2 is-core-module: 2.13.1 is-glob: 4.0.3 @@ -4109,18 +4161,18 @@ snapshots: semver: 6.3.1 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 8.12.2(eslint@9.6.0)(typescript@5.4.5) + '@typescript-eslint/parser': 8.21.0(eslint@9.6.0)(typescript@5.7.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-unused-imports@4.0.1(@typescript-eslint/eslint-plugin@8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint@9.6.0)(typescript@5.4.5))(eslint@9.6.0): + eslint-plugin-unused-imports@4.0.1(@typescript-eslint/eslint-plugin@8.21.0(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint@9.6.0)(typescript@5.7.3))(eslint@9.6.0): dependencies: eslint: 9.6.0 eslint-rule-composer: 0.3.0 optionalDependencies: - '@typescript-eslint/eslint-plugin': 8.12.2(@typescript-eslint/parser@8.12.2(eslint@9.6.0)(typescript@5.4.5))(eslint@9.6.0)(typescript@5.4.5) + '@typescript-eslint/eslint-plugin': 8.21.0(@typescript-eslint/parser@8.21.0(eslint@9.6.0)(typescript@5.7.3))(eslint@9.6.0)(typescript@5.7.3) eslint-rule-composer@0.3.0: {} @@ -4133,6 +4185,8 @@ snapshots: eslint-visitor-keys@4.0.0: {} + eslint-visitor-keys@4.2.0: {} + eslint@9.6.0: dependencies: '@eslint-community/eslint-utils': 4.4.0(eslint@9.6.0) @@ -4443,13 +4497,13 @@ snapshots: p-cancelable: 2.1.1 responselike: 2.0.1 - gql.tada@1.8.10(graphql@16.9.0)(typescript@5.5.3): + gql.tada@1.8.10(graphql@16.9.0)(typescript@5.7.3): dependencies: '@0no-co/graphql.web': 1.0.7(graphql@16.9.0) - '@0no-co/graphqlsp': 1.12.16(graphql@16.9.0)(typescript@5.5.3) - '@gql.tada/cli-utils': 1.6.3(@0no-co/graphqlsp@1.12.16(graphql@16.9.0)(typescript@5.5.3))(graphql@16.9.0)(typescript@5.5.3) - '@gql.tada/internal': 1.0.8(graphql@16.9.0)(typescript@5.5.3) - typescript: 5.5.3 + '@0no-co/graphqlsp': 1.12.16(graphql@16.9.0)(typescript@5.7.3) + '@gql.tada/cli-utils': 1.6.3(@0no-co/graphqlsp@1.12.16(graphql@16.9.0)(typescript@5.7.3))(graphql@16.9.0)(typescript@5.7.3) + '@gql.tada/internal': 1.0.8(graphql@16.9.0)(typescript@5.7.3) + typescript: 5.7.3 transitivePeerDependencies: - '@gql.tada/svelte-support' - '@gql.tada/vue-support' @@ -5211,15 +5265,15 @@ snapshots: es-errors: 1.3.0 is-regex: 1.1.4 - semantic-release@24.0.0(typescript@5.4.5): + semantic-release@24.0.0(typescript@5.7.3): dependencies: - '@semantic-release/commit-analyzer': 13.0.0(semantic-release@24.0.0(typescript@5.4.5)) + '@semantic-release/commit-analyzer': 13.0.0(semantic-release@24.0.0(typescript@5.7.3)) '@semantic-release/error': 4.0.0 - '@semantic-release/github': 10.0.3(semantic-release@24.0.0(typescript@5.4.5)) - '@semantic-release/npm': 12.0.1(semantic-release@24.0.0(typescript@5.4.5)) - '@semantic-release/release-notes-generator': 14.0.1(semantic-release@24.0.0(typescript@5.4.5)) + '@semantic-release/github': 10.0.3(semantic-release@24.0.0(typescript@5.7.3)) + '@semantic-release/npm': 12.0.1(semantic-release@24.0.0(typescript@5.7.3)) + '@semantic-release/release-notes-generator': 14.0.1(semantic-release@24.0.0(typescript@5.7.3)) aggregate-error: 5.0.0 - cosmiconfig: 9.0.0(typescript@5.4.5) + cosmiconfig: 9.0.0(typescript@5.7.3) debug: 4.3.5 env-ci: 11.0.0 execa: 9.0.2 @@ -5473,9 +5527,13 @@ snapshots: typedarray.prototype.slice: 1.0.3 which-typed-array: 1.1.15 - ts-api-utils@1.3.0(typescript@5.4.5): + ts-api-utils@1.3.0(typescript@5.7.3): dependencies: - typescript: 5.4.5 + typescript: 5.7.3 + + ts-api-utils@2.0.0(typescript@5.7.3): + dependencies: + typescript: 5.7.3 tsconfig-paths@3.15.0: dependencies: @@ -5495,8 +5553,6 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - tweetnacl@1.0.3: {} - type-check@0.4.0: dependencies: prelude-ls: 1.2.1 @@ -5548,18 +5604,16 @@ snapshots: typed-array-buffer: 1.0.2 typed-array-byte-offset: 1.0.2 - typedoc@0.27.2(typescript@5.4.5): + typedoc@0.27.2(typescript@5.7.3): dependencies: '@gerrit0/mini-shiki': 1.24.1 lunr: 2.3.9 markdown-it: 14.1.0 minimatch: 9.0.5 - typescript: 5.4.5 + typescript: 5.7.3 yaml: 2.6.1 - typescript@5.4.5: {} - - typescript@5.5.3: {} + typescript@5.7.3: {} uc.micro@2.1.0: {}