@mysten/pas 0.0.3 → 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +9 -0
- package/dist/contracts/pas/versioning.mjs.map +1 -1
- package/dist/contracts/ptb/ptb.mjs.map +1 -1
- package/dist/contracts/utils/index.mjs.map +1 -1
- package/package.json +4 -4
- package/src/contracts/pas/account.ts +9 -9
- package/src/contracts/pas/clawback_funds.ts +9 -9
- package/src/contracts/pas/request.ts +7 -7
- package/src/contracts/pas/send_funds.ts +13 -13
- package/src/contracts/pas/templates.ts +7 -7
- package/src/contracts/pas/unlock_funds.ts +11 -11
- package/src/contracts/pas/versioning.ts +5 -8
- package/src/contracts/ptb/ptb.ts +36 -46
- package/src/contracts/utils/index.ts +9 -12
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,14 @@
|
|
|
1
1
|
# @mysten/pas
|
|
2
2
|
|
|
3
|
+
## 0.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- c96956e: Regenerate generated Move types against the latest contract sources. The generated
|
|
8
|
+
`utils/index.ts` `GetOptions` / `GetManyOptions` are now exported as type aliases (intersection)
|
|
9
|
+
instead of interfaces. SuiNS gains `SubnamePrunedEvent`, `pruneExpiredSubname`, and
|
|
10
|
+
`pruneExpiredSubnames`.
|
|
11
|
+
|
|
3
12
|
## 0.0.3
|
|
4
13
|
|
|
5
14
|
### Patch Changes
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"versioning.mjs","names":["vec_set.VecSet"],"sources":["../../../src/contracts/pas/versioning.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\n\n/**\n * Versioning module.\n *\n * This module is responsible for managing the versioning of the package.\n *\n * It allows for blocking specific versions of the package in case of emergency, or\n * to slowly deprecate an earlier feature.\n */\n\nimport { MoveStruct, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.js';\nimport { bcs } from '@mysten/sui/bcs';\nimport { type Transaction } from '@mysten/sui/transactions';\nimport * as vec_set from './deps/sui/vec_set.js';\nconst $moduleName = '@mysten/pas::versioning';\nexport const Versioning = new MoveStruct({\n\tname: `${$moduleName}::Versioning`,\n\tfields: {\n\t\tblocked_versions: vec_set.VecSet(bcs.u64()),\n\t},\n});\nexport interface IsValidVersionArguments {\n\tversioning:
|
|
1
|
+
{"version":3,"file":"versioning.mjs","names":["vec_set.VecSet"],"sources":["../../../src/contracts/pas/versioning.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\n\n/**\n * Versioning module.\n *\n * This module is responsible for managing the versioning of the package.\n *\n * It allows for blocking specific versions of the package in case of emergency, or\n * to slowly deprecate an earlier feature.\n */\n\nimport { MoveStruct, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.js';\nimport { bcs } from '@mysten/sui/bcs';\nimport { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';\nimport * as vec_set from './deps/sui/vec_set.js';\nconst $moduleName = '@mysten/pas::versioning';\nexport const Versioning = new MoveStruct({\n\tname: `${$moduleName}::Versioning`,\n\tfields: {\n\t\tblocked_versions: vec_set.VecSet(bcs.u64()),\n\t},\n});\nexport interface IsValidVersionArguments {\n\tversioning: TransactionArgument;\n\tversion: RawTransactionArgument<number | bigint>;\n}\nexport interface IsValidVersionOptions {\n\tpackage?: string;\n\targuments:\n\t\t| IsValidVersionArguments\n\t\t| [versioning: TransactionArgument, version: RawTransactionArgument<number | bigint>];\n}\n/** Verify that a version is not part of the blocked version list. */\nexport function isValidVersion(options: IsValidVersionOptions) {\n\tconst packageAddress = options.package ?? '@mysten/pas';\n\tconst argumentsTypes = [null, 'u64'] satisfies (string | null)[];\n\tconst parameterNames = ['versioning', 'version'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'versioning',\n\t\t\tfunction: 'is_valid_version',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface AssertIsValidVersionArguments {\n\tversioning: TransactionArgument;\n}\nexport interface AssertIsValidVersionOptions {\n\tpackage?: string;\n\targuments: AssertIsValidVersionArguments | [versioning: TransactionArgument];\n}\nexport function assertIsValidVersion(options: AssertIsValidVersionOptions) {\n\tconst packageAddress = options.package ?? '@mysten/pas';\n\tconst argumentsTypes = [null] satisfies (string | null)[];\n\tconst parameterNames = ['versioning'];\n\treturn (tx: Transaction) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'versioning',\n\t\t\tfunction: 'assert_is_valid_version',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\n"],"mappings":";;;;;;;;;;;;;;;;AAiBA,MAAM,cAAc;AACpB,MAAa,aAAa,IAAI,WAAW;CACxC,MAAM,GAAG,YAAY;CACrB,QAAQ,EACP,kBAAkBA,OAAe,IAAI,KAAK,CAAC,EAC3C;CACD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ptb.mjs","names":[],"sources":["../../../src/contracts/ptb/ptb.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\n\n/** Module: ptb */\n\nimport {\n\tMoveTuple,\n\tMoveStruct,\n\tMoveEnum,\n\tnormalizeMoveArguments,\n\ttype RawTransactionArgument,\n} from '../utils/index.js';\nimport { bcs, type BcsType } from '@mysten/sui/bcs';\nimport { type Transaction as Transaction_1 } from '@mysten/sui/transactions';\nconst $moduleName = '@mysten/ptb::ptb';\nexport const Command = new MoveTuple({\n\tname: `${$moduleName}::Command`,\n\tfields: [bcs.u8(), bcs.vector(bcs.u8())],\n});\nexport const Transaction = new MoveStruct({\n\tname: `${$moduleName}::Transaction`,\n\tfields: {\n\t\tcommands: bcs.vector(Command),\n\t},\n});\n/**\n * Defines a simplified `ObjectArg` type for the `Transaction`.\n *\n * Differences with canonical Sui `ObjectArg` type:\n *\n * - Uses `address` type as a fixed-length sequence of bytes without length prefix.\n * - Extends the number of variants to support off-chain resolution.\n */\nexport const ObjectArg = new MoveEnum({\n\tname: `${$moduleName}::ObjectArg`,\n\tfields: {\n\t\tImmOrOwnedObject: new MoveStruct({\n\t\t\tname: `ObjectArg.ImmOrOwnedObject`,\n\t\t\tfields: {\n\t\t\t\tobject_id: bcs.Address,\n\t\t\t\tsequence_number: bcs.u64(),\n\t\t\t\tdigest: bcs.Address,\n\t\t\t},\n\t\t}),\n\t\tSharedObject: new MoveStruct({\n\t\t\tname: `ObjectArg.SharedObject`,\n\t\t\tfields: {\n\t\t\t\tobject_id: bcs.Address,\n\t\t\t\tinitial_shared_version: bcs.u64(),\n\t\t\t\tis_mutable: bcs.bool(),\n\t\t\t},\n\t\t}),\n\t\tReceiving: new MoveStruct({\n\t\t\tname: `ObjectArg.Receiving`,\n\t\t\tfields: {\n\t\t\t\tobject_id: bcs.Address,\n\t\t\t\tsequence_number: bcs.u64(),\n\t\t\t\tdigest: bcs.Address,\n\t\t\t},\n\t\t}),\n\t\tExt: bcs.string(),\n\t},\n});\nexport const WithdrawFrom = new MoveEnum({\n\tname: `${$moduleName}::WithdrawFrom`,\n\tfields: {\n\t\tSender: null,\n\t\tSponsor: null,\n\t},\n});\n/**\n * Defines a simplified `CallArg` type for `Transaction`.\n *\n * Differences with canonical Sui `CallArg` type:\n *\n * - ObjectArg is a simplified, unresolved representation of Object arguments;\n * - Ext(...) is a custom extension for the `CallArg` which allows off-chain\n * resolvers to convert them into the appropriate values for context.\n */\nexport const CallArg = new MoveEnum({\n\tname: `${$moduleName}::CallArg`,\n\tfields: {\n\t\tPure: bcs.vector(bcs.u8()),\n\t\tObject: ObjectArg,\n\t\tFundsWithdrawal: new MoveStruct({\n\t\t\tname: `CallArg.FundsWithdrawal`,\n\t\t\tfields: {\n\t\t\t\tamount: bcs.u64(),\n\t\t\t\ttype_name: bcs.string(),\n\t\t\t\twithdraw_from: WithdrawFrom,\n\t\t\t},\n\t\t}),\n\t\t/**\n\t\t * Extended arguments for off-chain resolution. Can be created and registered in a\n\t\t * transaction through `ext_input`.\n\t\t *\n\t\t * Extended arguments are namespaced by Type associated with them. In an\n\t\t * application, this can be the root object, or a special type used for off chain\n\t\t * resolution.\n\t\t */\n\t\tExt: new MoveTuple({ name: `CallArg.Ext`, fields: [bcs.string(), bcs.string()] }),\n\t},\n});\n/** Defines a simplified `Argument` type for the `Transaction`. */\nexport const Argument = new MoveEnum({\n\tname: `${$moduleName}::Argument`,\n\tfields: {\n\t\tGasCoin: null,\n\t\tInput: CallArg,\n\t\tResult: bcs.u16(),\n\t\tNestedResult: new MoveTuple({ name: `Argument.NestedResult`, fields: [bcs.u16(), bcs.u16()] }),\n\t\t/**\n\t\t * Extended arguments for off-chain resolution. Cannot be constructed directly,\n\t\t * only through future extensions.\n\t\t */\n\t\tExt: bcs.vector(bcs.u8()),\n\t},\n});\nexport const MoveCall = new MoveStruct({\n\tname: `${$moduleName}::MoveCall`,\n\tfields: {\n\t\tpackage_id: bcs.string(),\n\t\tmodule_name: bcs.string(),\n\t\tfunction: bcs.string(),\n\t\targuments: bcs.vector(Argument),\n\t\ttype_arguments: bcs.vector(bcs.string()),\n\t},\n});\nexport const TransferObjects = new MoveStruct({\n\tname: `${$moduleName}::TransferObjects`,\n\tfields: {\n\t\tobjects: bcs.vector(Argument),\n\t\tto: Argument,\n\t},\n});\nexport const SplitCoins = new MoveStruct({\n\tname: `${$moduleName}::SplitCoins`,\n\tfields: {\n\t\tcoin: Argument,\n\t\tamounts: bcs.vector(Argument),\n\t},\n});\nexport const MergeCoins = new MoveStruct({\n\tname: `${$moduleName}::MergeCoins`,\n\tfields: {\n\t\tcoin: Argument,\n\t\tcoins: bcs.vector(Argument),\n\t},\n});\nexport const Publish = new MoveStruct({\n\tname: `${$moduleName}::Publish`,\n\tfields: {\n\t\tmodules_bytes: bcs.vector(bcs.vector(bcs.u8())),\n\t\tdependencies: bcs.vector(bcs.Address),\n\t},\n});\nexport const MakeMoveVec = new MoveStruct({\n\tname: `${$moduleName}::MakeMoveVec`,\n\tfields: {\n\t\telement_type: bcs.option(bcs.string()),\n\t\telements: bcs.vector(Argument),\n\t},\n});\nexport const Upgrade = new MoveStruct({\n\tname: `${$moduleName}::Upgrade`,\n\tfields: {\n\t\tmodules_bytes: bcs.vector(bcs.vector(bcs.u8())),\n\t\tdependencies: bcs.vector(bcs.Address),\n\t\tobject_id: bcs.Address,\n\t\tupgrade_ticket: Argument,\n\t},\n});\nexport interface NewOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Create a new Transaction builder. */\nexport function _new(options: NewOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'new',\n\t\t});\n}\nexport interface ClockOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0x6` (Clock). */\nexport function clock(options: ClockOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'clock',\n\t\t});\n}\nexport interface RandomOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0x8` (Random). */\nexport function random(options: RandomOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'random',\n\t\t});\n}\nexport interface DisplayOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0xD` (DisplayRegistry). */\nexport function display(options: DisplayOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'display',\n\t\t});\n}\nexport interface DenyListOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0x403` (DenyList). */\nexport function denyList(options: DenyListOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'deny_list',\n\t\t});\n}\nexport interface CoinRegistryOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0xC` (CoinRegistry). */\nexport function coinRegistry(options: CoinRegistryOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'coin_registry',\n\t\t});\n}\nexport interface AccumulatorRootOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0xACC` (AccumulatorRoot). */\nexport function accumulatorRoot(options: AccumulatorRootOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'accumulator_root',\n\t\t});\n}\nexport interface GasOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Create a gas coin input. */\nexport function gas(options: GasOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'gas',\n\t\t});\n}\nexport interface PureArguments<T extends BcsType<any>> {\n\tvalue: RawTransactionArgument<T>;\n}\nexport interface PureOptions<T extends BcsType<any>> {\n\tpackage?: string;\n\targuments: PureArguments<T> | [value: RawTransactionArgument<T>];\n\ttypeArguments: [string];\n}\n/** Create a pure input. */\nexport function pure<T extends BcsType<any>>(options: PureOptions<T>) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [`${options.typeArguments[0]}`] satisfies (string | null)[];\n\tconst parameterNames = ['value'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'pure',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ObjectRefArguments {\n\tobjectId: RawTransactionArgument<string>;\n\tsequenceNumber: RawTransactionArgument<number | bigint>;\n\tdigest: RawTransactionArgument<string>;\n}\nexport interface ObjectRefOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ObjectRefArguments\n\t\t| [\n\t\t\t\tobjectId: RawTransactionArgument<string>,\n\t\t\t\tsequenceNumber: RawTransactionArgument<number | bigint>,\n\t\t\t\tdigest: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Create a fully-resolved immutable or owned object argument. Should be used with\n * caution, yet for immutable or owned objects refs can be stored. For automatic\n * version resolution, use `object_by_id`.\n */\nexport function objectRef(options: ObjectRefOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x2::object::ID', 'u64', 'address'] satisfies (string | null)[];\n\tconst parameterNames = ['objectId', 'sequenceNumber', 'digest'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'object_ref',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface SharedObjectRefArguments {\n\tobjectId: RawTransactionArgument<string>;\n\tinitialSharedVersion: RawTransactionArgument<number | bigint>;\n\tisMutable: RawTransactionArgument<boolean>;\n}\nexport interface SharedObjectRefOptions {\n\tpackage?: string;\n\targuments:\n\t\t| SharedObjectRefArguments\n\t\t| [\n\t\t\t\tobjectId: RawTransactionArgument<string>,\n\t\t\t\tinitialSharedVersion: RawTransactionArgument<number | bigint>,\n\t\t\t\tisMutable: RawTransactionArgument<boolean>,\n\t\t ];\n}\n/**\n * Create a fully-resolved shared object argument. Should be used with caution, yet\n * for shared objects refs can be stored. For automatic version resolution, use\n * `shared_object_by_id`.\n *\n * TODO: should it be named `consensus_managed_object_ref`? NOTE: the naming is\n * changing elsewhere\n */\nexport function sharedObjectRef(options: SharedObjectRefOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x2::object::ID', 'u64', 'bool'] satisfies (string | null)[];\n\tconst parameterNames = ['objectId', 'initialSharedVersion', 'isMutable'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'shared_object_ref',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ReceivingObjectRefArguments {\n\tobjectId: RawTransactionArgument<string>;\n\tsequenceNumber: RawTransactionArgument<number | bigint>;\n\tdigest: RawTransactionArgument<string>;\n}\nexport interface ReceivingObjectRefOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ReceivingObjectRefArguments\n\t\t| [\n\t\t\t\tobjectId: RawTransactionArgument<string>,\n\t\t\t\tsequenceNumber: RawTransactionArgument<number | bigint>,\n\t\t\t\tdigest: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Create a fully-resolved receiving object argument. Should be used with caution,\n * since the version of the object is dynamic. For automatic version resolution,\n * use `object_by_id`.\n */\nexport function receivingObjectRef(options: ReceivingObjectRefOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x2::object::ID', 'u64', 'address'] satisfies (string | null)[];\n\tconst parameterNames = ['objectId', 'sequenceNumber', 'digest'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'receiving_object_ref',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ObjectByTypeOptions {\n\tpackage?: string;\n\targuments?: [];\n\ttypeArguments: [string];\n}\n/** Create an off-chain input handler for a given type T. */\nexport function objectByType(options: ObjectByTypeOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'object_by_type',\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ObjectByTypeStringArguments {\n\ttypeName: RawTransactionArgument<string>;\n}\nexport interface ObjectByTypeStringOptions {\n\tpackage?: string;\n\targuments: ObjectByTypeStringArguments | [typeName: RawTransactionArgument<string>];\n}\n/** Create an off-chain input handler for a given type as a String. */\nexport function objectByTypeString(options: ObjectByTypeStringOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x1::string::String'] satisfies (string | null)[];\n\tconst parameterNames = ['typeName'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'object_by_type_string',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ObjectByIdArguments {\n\tid: RawTransactionArgument<string>;\n}\nexport interface ObjectByIdOptions {\n\tpackage?: string;\n\targuments: ObjectByIdArguments | [id: RawTransactionArgument<string>];\n}\n/** Create an off-chain input handler for an object with a specific ID. */\nexport function objectById(options: ObjectByIdOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x2::object::ID'] satisfies (string | null)[];\n\tconst parameterNames = ['id'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'object_by_id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ReceivingObjectByIdArguments {\n\tid: RawTransactionArgument<string>;\n}\nexport interface ReceivingObjectByIdOptions {\n\tpackage?: string;\n\targuments: ReceivingObjectByIdArguments | [id: RawTransactionArgument<string>];\n}\n/** Create an off-chain input handler for a receiving object with a specific ID. */\nexport function receivingObjectById(options: ReceivingObjectByIdOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x2::object::ID'] satisfies (string | null)[];\n\tconst parameterNames = ['id'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'receiving_object_by_id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ExtInputArguments {\n\tname: RawTransactionArgument<string>;\n}\nexport interface ExtInputOptions {\n\tpackage?: string;\n\targuments: ExtInputArguments | [name: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/**\n * Create an external input handler. Expected to be understood by the off-chain\n * tooling.\n */\nexport function extInput(options: ExtInputOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x1::string::String'] satisfies (string | null)[];\n\tconst parameterNames = ['name'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'ext_input',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ExtInputRawArguments {\n\tnamespace: RawTransactionArgument<string>;\n\tname: RawTransactionArgument<string>;\n}\nexport interface ExtInputRawOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ExtInputRawArguments\n\t\t| [namespace: RawTransactionArgument<string>, name: RawTransactionArgument<string>];\n}\n/**\n * Create an external input handler for a given type T. This can be used to\n * hardcode the namespace value without having access to `T`.\n */\nexport function extInputRaw(options: ExtInputRawOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x1::string::String', '0x1::string::String'] satisfies (string | null)[];\n\tconst parameterNames = ['namespace', 'name'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'ext_input_raw',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface CommandArguments {\n\tself: RawTransactionArgument<string>;\n\tcommand: RawTransactionArgument<string>;\n}\nexport interface CommandOptions {\n\tpackage?: string;\n\targuments:\n\t\t| CommandArguments\n\t\t| [self: RawTransactionArgument<string>, command: RawTransactionArgument<string>];\n}\n/**\n * Register a command in the Transaction builder. Returns the Argument, which is\n * treated as the `Result(idx)` of the command, and can be turned into a nested\n * result `NestedResult(idx, idx)`.\n */\nexport function command(options: CommandOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'command'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'command',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface NestedArguments {\n\tself: RawTransactionArgument<string>;\n\tsubIdx: RawTransactionArgument<number>;\n}\nexport interface NestedOptions {\n\tpackage?: string;\n\targuments:\n\t\t| NestedArguments\n\t\t| [self: RawTransactionArgument<string>, subIdx: RawTransactionArgument<number>];\n}\n/**\n * Spawn a nested result out of a (just) `Result`. Simple result is a command\n * output.\n */\nexport function nested(options: NestedOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [null, 'u16'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'subIdx'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'nested',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface MoveCallArguments {\n\tpackageId: RawTransactionArgument<string>;\n\tmoduleName: RawTransactionArgument<string>;\n\tfunction: RawTransactionArgument<string>;\n\targuments: RawTransactionArgument<string[]>;\n\ttypeArguments: RawTransactionArgument<string[]>;\n}\nexport interface MoveCallOptions {\n\tpackage?: string;\n\targuments:\n\t\t| MoveCallArguments\n\t\t| [\n\t\t\t\tpackageId: RawTransactionArgument<string>,\n\t\t\t\tmoduleName: RawTransactionArgument<string>,\n\t\t\t\tfunction: RawTransactionArgument<string>,\n\t\t\t\targuments: RawTransactionArgument<string[]>,\n\t\t\t\ttypeArguments: RawTransactionArgument<string[]>,\n\t\t ];\n}\n/** Create a `MoveCall` command. */\nexport function moveCall(options: MoveCallOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [\n\t\t'0x1::string::String',\n\t\t'0x1::string::String',\n\t\t'0x1::string::String',\n\t\t'vector<null>',\n\t\t'vector<0x1::string::String>',\n\t] satisfies (string | null)[];\n\tconst parameterNames = ['packageId', 'moduleName', 'function', 'arguments', 'typeArguments'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'move_call',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface TransferObjectsArguments {\n\tobjects: RawTransactionArgument<string[]>;\n\tto: RawTransactionArgument<string>;\n}\nexport interface TransferObjectsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| TransferObjectsArguments\n\t\t| [objects: RawTransactionArgument<string[]>, to: RawTransactionArgument<string>];\n}\n/**\n * Create a `TransferObjects` command Expects a vector of arguments to transfer and\n * an address value for destination.\n */\nexport function transferObjects(options: TransferObjectsOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['vector<null>', null] satisfies (string | null)[];\n\tconst parameterNames = ['objects', 'to'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'transfer_objects',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface SplitCoinsArguments {\n\tcoin: RawTransactionArgument<string>;\n\tamounts: RawTransactionArgument<string[]>;\n}\nexport interface SplitCoinsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| SplitCoinsArguments\n\t\t| [coin: RawTransactionArgument<string>, amounts: RawTransactionArgument<string[]>];\n}\n/** Create a `SplitCoins` command. */\nexport function splitCoins(options: SplitCoinsOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [null, 'vector<null>'] satisfies (string | null)[];\n\tconst parameterNames = ['coin', 'amounts'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'split_coins',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface MergeCoinsArguments {\n\tcoin: RawTransactionArgument<string>;\n\tcoins: RawTransactionArgument<string[]>;\n}\nexport interface MergeCoinsOptions {\n\tpackage?: string;\n\targuments:\n\t\t| MergeCoinsArguments\n\t\t| [coin: RawTransactionArgument<string>, coins: RawTransactionArgument<string[]>];\n}\n/**\n * Create a `MergeCoins` command. Takes a Coin Argument and a vector of other coin\n * arguments to merge into it.\n */\nexport function mergeCoins(options: MergeCoinsOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [null, 'vector<null>'] satisfies (string | null)[];\n\tconst parameterNames = ['coin', 'coins'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'merge_coins',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface PublishArguments {\n\tmodulesBytes: RawTransactionArgument<number[][]>;\n\tdependencies: RawTransactionArgument<string[]>;\n}\nexport interface PublishOptions {\n\tpackage?: string;\n\targuments:\n\t\t| PublishArguments\n\t\t| [\n\t\t\t\tmodulesBytes: RawTransactionArgument<number[][]>,\n\t\t\t\tdependencies: RawTransactionArgument<string[]>,\n\t\t ];\n}\n/**\n * Create a `Publish` command. Takes a vector of modules' bytes and a vector of\n * dependencies.\n */\nexport function publish(options: PublishOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['vector<vector<u8>>', 'vector<0x2::object::ID>'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = ['modulesBytes', 'dependencies'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'publish',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface MakeMoveVecArguments {\n\telementType: RawTransactionArgument<string | null>;\n\telements: RawTransactionArgument<string[]>;\n}\nexport interface MakeMoveVecOptions {\n\tpackage?: string;\n\targuments:\n\t\t| MakeMoveVecArguments\n\t\t| [\n\t\t\t\telementType: RawTransactionArgument<string | null>,\n\t\t\t\telements: RawTransactionArgument<string[]>,\n\t\t ];\n}\n/**\n * Create a `MakeMoveVec` command. Takes an optional element type and a vector of\n * elements to make into a vector.\n */\nexport function makeMoveVec(options: MakeMoveVecOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x1::option::Option<0x1::string::String>', 'vector<null>'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = ['elementType', 'elements'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'make_move_vec',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface UpgradeArguments {\n\tmodulesBytes: RawTransactionArgument<number[][]>;\n\tdependencies: RawTransactionArgument<string[]>;\n\tobjectId: RawTransactionArgument<string>;\n\tupgradeTicket: RawTransactionArgument<string>;\n}\nexport interface UpgradeOptions {\n\tpackage?: string;\n\targuments:\n\t\t| UpgradeArguments\n\t\t| [\n\t\t\t\tmodulesBytes: RawTransactionArgument<number[][]>,\n\t\t\t\tdependencies: RawTransactionArgument<string[]>,\n\t\t\t\tobjectId: RawTransactionArgument<string>,\n\t\t\t\tupgradeTicket: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Create a `Upgrade` command. Takes a vector of modules' bytes, a vector of\n * dependencies, an updated package ID, and an upgrade ticket.\n */\nexport function upgrade(options: UpgradeOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [\n\t\t'vector<vector<u8>>',\n\t\t'vector<0x2::object::ID>',\n\t\t'0x2::object::ID',\n\t\tnull,\n\t] satisfies (string | null)[];\n\tconst parameterNames = ['modulesBytes', 'dependencies', 'objectId', 'upgradeTicket'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'upgrade',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ExtArguments {\n\tdata: RawTransactionArgument<number[]>;\n}\nexport interface ExtOptions {\n\tpackage?: string;\n\targuments: ExtArguments | [data: RawTransactionArgument<number[]>];\n}\n/** Create an `Ext` command. */\nexport function ext(options: ExtOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['vector<u8>'] satisfies (string | null)[];\n\tconst parameterNames = ['data'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'ext',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ptb.mjs","names":[],"sources":["../../../src/contracts/ptb/ptb.ts"],"sourcesContent":["/**************************************************************\n * THIS FILE IS GENERATED AND SHOULD NOT BE MANUALLY MODIFIED *\n **************************************************************/\n\n/** Module: ptb */\n\nimport {\n\tMoveTuple,\n\tMoveStruct,\n\tMoveEnum,\n\tnormalizeMoveArguments,\n\ttype RawTransactionArgument,\n} from '../utils/index.js';\nimport { bcs, type BcsType } from '@mysten/sui/bcs';\nimport {\n\ttype Transaction as Transaction_1,\n\ttype TransactionArgument,\n} from '@mysten/sui/transactions';\nconst $moduleName = '@mysten/ptb::ptb';\nexport const Command = new MoveTuple({\n\tname: `${$moduleName}::Command`,\n\tfields: [bcs.u8(), bcs.vector(bcs.u8())],\n});\nexport const Transaction = new MoveStruct({\n\tname: `${$moduleName}::Transaction`,\n\tfields: {\n\t\tcommands: bcs.vector(Command),\n\t},\n});\n/**\n * Defines a simplified `ObjectArg` type for the `Transaction`.\n *\n * Differences with canonical Sui `ObjectArg` type:\n *\n * - Uses `address` type as a fixed-length sequence of bytes without length prefix.\n * - Extends the number of variants to support off-chain resolution.\n */\nexport const ObjectArg = new MoveEnum({\n\tname: `${$moduleName}::ObjectArg`,\n\tfields: {\n\t\tImmOrOwnedObject: new MoveStruct({\n\t\t\tname: `ObjectArg.ImmOrOwnedObject`,\n\t\t\tfields: {\n\t\t\t\tobject_id: bcs.Address,\n\t\t\t\tsequence_number: bcs.u64(),\n\t\t\t\tdigest: bcs.Address,\n\t\t\t},\n\t\t}),\n\t\tSharedObject: new MoveStruct({\n\t\t\tname: `ObjectArg.SharedObject`,\n\t\t\tfields: {\n\t\t\t\tobject_id: bcs.Address,\n\t\t\t\tinitial_shared_version: bcs.u64(),\n\t\t\t\tis_mutable: bcs.bool(),\n\t\t\t},\n\t\t}),\n\t\tReceiving: new MoveStruct({\n\t\t\tname: `ObjectArg.Receiving`,\n\t\t\tfields: {\n\t\t\t\tobject_id: bcs.Address,\n\t\t\t\tsequence_number: bcs.u64(),\n\t\t\t\tdigest: bcs.Address,\n\t\t\t},\n\t\t}),\n\t\tExt: bcs.string(),\n\t},\n});\nexport const WithdrawFrom = new MoveEnum({\n\tname: `${$moduleName}::WithdrawFrom`,\n\tfields: {\n\t\tSender: null,\n\t\tSponsor: null,\n\t},\n});\n/**\n * Defines a simplified `CallArg` type for `Transaction`.\n *\n * Differences with canonical Sui `CallArg` type:\n *\n * - ObjectArg is a simplified, unresolved representation of Object arguments;\n * - Ext(...) is a custom extension for the `CallArg` which allows off-chain\n * resolvers to convert them into the appropriate values for context.\n */\nexport const CallArg = new MoveEnum({\n\tname: `${$moduleName}::CallArg`,\n\tfields: {\n\t\tPure: bcs.vector(bcs.u8()),\n\t\tObject: ObjectArg,\n\t\tFundsWithdrawal: new MoveStruct({\n\t\t\tname: `CallArg.FundsWithdrawal`,\n\t\t\tfields: {\n\t\t\t\tamount: bcs.u64(),\n\t\t\t\ttype_name: bcs.string(),\n\t\t\t\twithdraw_from: WithdrawFrom,\n\t\t\t},\n\t\t}),\n\t\t/**\n\t\t * Extended arguments for off-chain resolution. Can be created and registered in a\n\t\t * transaction through `ext_input`.\n\t\t *\n\t\t * Extended arguments are namespaced by Type associated with them. In an\n\t\t * application, this can be the root object, or a special type used for off chain\n\t\t * resolution.\n\t\t */\n\t\tExt: new MoveTuple({ name: `CallArg.Ext`, fields: [bcs.string(), bcs.string()] }),\n\t},\n});\n/** Defines a simplified `Argument` type for the `Transaction`. */\nexport const Argument = new MoveEnum({\n\tname: `${$moduleName}::Argument`,\n\tfields: {\n\t\tGasCoin: null,\n\t\tInput: CallArg,\n\t\tResult: bcs.u16(),\n\t\tNestedResult: new MoveTuple({ name: `Argument.NestedResult`, fields: [bcs.u16(), bcs.u16()] }),\n\t\t/**\n\t\t * Extended arguments for off-chain resolution. Cannot be constructed directly,\n\t\t * only through future extensions.\n\t\t */\n\t\tExt: bcs.vector(bcs.u8()),\n\t},\n});\nexport const MoveCall = new MoveStruct({\n\tname: `${$moduleName}::MoveCall`,\n\tfields: {\n\t\tpackage_id: bcs.string(),\n\t\tmodule_name: bcs.string(),\n\t\tfunction: bcs.string(),\n\t\targuments: bcs.vector(Argument),\n\t\ttype_arguments: bcs.vector(bcs.string()),\n\t},\n});\nexport const TransferObjects = new MoveStruct({\n\tname: `${$moduleName}::TransferObjects`,\n\tfields: {\n\t\tobjects: bcs.vector(Argument),\n\t\tto: Argument,\n\t},\n});\nexport const SplitCoins = new MoveStruct({\n\tname: `${$moduleName}::SplitCoins`,\n\tfields: {\n\t\tcoin: Argument,\n\t\tamounts: bcs.vector(Argument),\n\t},\n});\nexport const MergeCoins = new MoveStruct({\n\tname: `${$moduleName}::MergeCoins`,\n\tfields: {\n\t\tcoin: Argument,\n\t\tcoins: bcs.vector(Argument),\n\t},\n});\nexport const Publish = new MoveStruct({\n\tname: `${$moduleName}::Publish`,\n\tfields: {\n\t\tmodules_bytes: bcs.vector(bcs.vector(bcs.u8())),\n\t\tdependencies: bcs.vector(bcs.Address),\n\t},\n});\nexport const MakeMoveVec = new MoveStruct({\n\tname: `${$moduleName}::MakeMoveVec`,\n\tfields: {\n\t\telement_type: bcs.option(bcs.string()),\n\t\telements: bcs.vector(Argument),\n\t},\n});\nexport const Upgrade = new MoveStruct({\n\tname: `${$moduleName}::Upgrade`,\n\tfields: {\n\t\tmodules_bytes: bcs.vector(bcs.vector(bcs.u8())),\n\t\tdependencies: bcs.vector(bcs.Address),\n\t\tobject_id: bcs.Address,\n\t\tupgrade_ticket: Argument,\n\t},\n});\nexport interface NewOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Create a new Transaction builder. */\nexport function _new(options: NewOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'new',\n\t\t});\n}\nexport interface ClockOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0x6` (Clock). */\nexport function clock(options: ClockOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'clock',\n\t\t});\n}\nexport interface RandomOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0x8` (Random). */\nexport function random(options: RandomOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'random',\n\t\t});\n}\nexport interface DisplayOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0xD` (DisplayRegistry). */\nexport function display(options: DisplayOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'display',\n\t\t});\n}\nexport interface DenyListOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0x403` (DenyList). */\nexport function denyList(options: DenyListOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'deny_list',\n\t\t});\n}\nexport interface CoinRegistryOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0xC` (CoinRegistry). */\nexport function coinRegistry(options: CoinRegistryOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'coin_registry',\n\t\t});\n}\nexport interface AccumulatorRootOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Shorthand for `object_by_id` with `0xACC` (AccumulatorRoot). */\nexport function accumulatorRoot(options: AccumulatorRootOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'accumulator_root',\n\t\t});\n}\nexport interface GasOptions {\n\tpackage?: string;\n\targuments?: [];\n}\n/** Create a gas coin input. */\nexport function gas(options: GasOptions = {}) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'gas',\n\t\t});\n}\nexport interface PureArguments<T extends BcsType<any>> {\n\tvalue: RawTransactionArgument<T>;\n}\nexport interface PureOptions<T extends BcsType<any>> {\n\tpackage?: string;\n\targuments: PureArguments<T> | [value: RawTransactionArgument<T>];\n\ttypeArguments: [string];\n}\n/** Create a pure input. */\nexport function pure<T extends BcsType<any>>(options: PureOptions<T>) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [`${options.typeArguments[0]}`] satisfies (string | null)[];\n\tconst parameterNames = ['value'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'pure',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ObjectRefArguments {\n\tobjectId: RawTransactionArgument<string>;\n\tsequenceNumber: RawTransactionArgument<number | bigint>;\n\tdigest: RawTransactionArgument<string>;\n}\nexport interface ObjectRefOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ObjectRefArguments\n\t\t| [\n\t\t\t\tobjectId: RawTransactionArgument<string>,\n\t\t\t\tsequenceNumber: RawTransactionArgument<number | bigint>,\n\t\t\t\tdigest: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Create a fully-resolved immutable or owned object argument. Should be used with\n * caution, yet for immutable or owned objects refs can be stored. For automatic\n * version resolution, use `object_by_id`.\n */\nexport function objectRef(options: ObjectRefOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x2::object::ID', 'u64', 'address'] satisfies (string | null)[];\n\tconst parameterNames = ['objectId', 'sequenceNumber', 'digest'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'object_ref',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface SharedObjectRefArguments {\n\tobjectId: RawTransactionArgument<string>;\n\tinitialSharedVersion: RawTransactionArgument<number | bigint>;\n\tisMutable: RawTransactionArgument<boolean>;\n}\nexport interface SharedObjectRefOptions {\n\tpackage?: string;\n\targuments:\n\t\t| SharedObjectRefArguments\n\t\t| [\n\t\t\t\tobjectId: RawTransactionArgument<string>,\n\t\t\t\tinitialSharedVersion: RawTransactionArgument<number | bigint>,\n\t\t\t\tisMutable: RawTransactionArgument<boolean>,\n\t\t ];\n}\n/**\n * Create a fully-resolved shared object argument. Should be used with caution, yet\n * for shared objects refs can be stored. For automatic version resolution, use\n * `shared_object_by_id`.\n *\n * TODO: should it be named `consensus_managed_object_ref`? NOTE: the naming is\n * changing elsewhere\n */\nexport function sharedObjectRef(options: SharedObjectRefOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x2::object::ID', 'u64', 'bool'] satisfies (string | null)[];\n\tconst parameterNames = ['objectId', 'initialSharedVersion', 'isMutable'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'shared_object_ref',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ReceivingObjectRefArguments {\n\tobjectId: RawTransactionArgument<string>;\n\tsequenceNumber: RawTransactionArgument<number | bigint>;\n\tdigest: RawTransactionArgument<string>;\n}\nexport interface ReceivingObjectRefOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ReceivingObjectRefArguments\n\t\t| [\n\t\t\t\tobjectId: RawTransactionArgument<string>,\n\t\t\t\tsequenceNumber: RawTransactionArgument<number | bigint>,\n\t\t\t\tdigest: RawTransactionArgument<string>,\n\t\t ];\n}\n/**\n * Create a fully-resolved receiving object argument. Should be used with caution,\n * since the version of the object is dynamic. For automatic version resolution,\n * use `object_by_id`.\n */\nexport function receivingObjectRef(options: ReceivingObjectRefOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x2::object::ID', 'u64', 'address'] satisfies (string | null)[];\n\tconst parameterNames = ['objectId', 'sequenceNumber', 'digest'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'receiving_object_ref',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ObjectByTypeOptions {\n\tpackage?: string;\n\targuments?: [];\n\ttypeArguments: [string];\n}\n/** Create an off-chain input handler for a given type T. */\nexport function objectByType(options: ObjectByTypeOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'object_by_type',\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ObjectByTypeStringArguments {\n\ttypeName: RawTransactionArgument<string>;\n}\nexport interface ObjectByTypeStringOptions {\n\tpackage?: string;\n\targuments: ObjectByTypeStringArguments | [typeName: RawTransactionArgument<string>];\n}\n/** Create an off-chain input handler for a given type as a String. */\nexport function objectByTypeString(options: ObjectByTypeStringOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x1::string::String'] satisfies (string | null)[];\n\tconst parameterNames = ['typeName'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'object_by_type_string',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ObjectByIdArguments {\n\tid: RawTransactionArgument<string>;\n}\nexport interface ObjectByIdOptions {\n\tpackage?: string;\n\targuments: ObjectByIdArguments | [id: RawTransactionArgument<string>];\n}\n/** Create an off-chain input handler for an object with a specific ID. */\nexport function objectById(options: ObjectByIdOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x2::object::ID'] satisfies (string | null)[];\n\tconst parameterNames = ['id'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'object_by_id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ReceivingObjectByIdArguments {\n\tid: RawTransactionArgument<string>;\n}\nexport interface ReceivingObjectByIdOptions {\n\tpackage?: string;\n\targuments: ReceivingObjectByIdArguments | [id: RawTransactionArgument<string>];\n}\n/** Create an off-chain input handler for a receiving object with a specific ID. */\nexport function receivingObjectById(options: ReceivingObjectByIdOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x2::object::ID'] satisfies (string | null)[];\n\tconst parameterNames = ['id'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'receiving_object_by_id',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ExtInputArguments {\n\tname: RawTransactionArgument<string>;\n}\nexport interface ExtInputOptions {\n\tpackage?: string;\n\targuments: ExtInputArguments | [name: RawTransactionArgument<string>];\n\ttypeArguments: [string];\n}\n/**\n * Create an external input handler. Expected to be understood by the off-chain\n * tooling.\n */\nexport function extInput(options: ExtInputOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x1::string::String'] satisfies (string | null)[];\n\tconst parameterNames = ['name'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'ext_input',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t\ttypeArguments: options.typeArguments,\n\t\t});\n}\nexport interface ExtInputRawArguments {\n\tnamespace: RawTransactionArgument<string>;\n\tname: RawTransactionArgument<string>;\n}\nexport interface ExtInputRawOptions {\n\tpackage?: string;\n\targuments:\n\t\t| ExtInputRawArguments\n\t\t| [namespace: RawTransactionArgument<string>, name: RawTransactionArgument<string>];\n}\n/**\n * Create an external input handler for a given type T. This can be used to\n * hardcode the namespace value without having access to `T`.\n */\nexport function extInputRaw(options: ExtInputRawOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x1::string::String', '0x1::string::String'] satisfies (string | null)[];\n\tconst parameterNames = ['namespace', 'name'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'ext_input_raw',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface CommandArguments {\n\tself: TransactionArgument;\n\tcommand: TransactionArgument;\n}\nexport interface CommandOptions {\n\tpackage?: string;\n\targuments: CommandArguments | [self: TransactionArgument, command: TransactionArgument];\n}\n/**\n * Register a command in the Transaction builder. Returns the Argument, which is\n * treated as the `Result(idx)` of the command, and can be turned into a nested\n * result `NestedResult(idx, idx)`.\n */\nexport function command(options: CommandOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [null, null] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'command'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'command',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface NestedArguments {\n\tself: TransactionArgument;\n\tsubIdx: RawTransactionArgument<number>;\n}\nexport interface NestedOptions {\n\tpackage?: string;\n\targuments: NestedArguments | [self: TransactionArgument, subIdx: RawTransactionArgument<number>];\n}\n/**\n * Spawn a nested result out of a (just) `Result`. Simple result is a command\n * output.\n */\nexport function nested(options: NestedOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [null, 'u16'] satisfies (string | null)[];\n\tconst parameterNames = ['self', 'subIdx'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'nested',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface MoveCallArguments {\n\tpackageId: RawTransactionArgument<string>;\n\tmoduleName: RawTransactionArgument<string>;\n\tfunction: RawTransactionArgument<string>;\n\targuments: TransactionArgument;\n\ttypeArguments: RawTransactionArgument<Array<string>>;\n}\nexport interface MoveCallOptions {\n\tpackage?: string;\n\targuments:\n\t\t| MoveCallArguments\n\t\t| [\n\t\t\t\tpackageId: RawTransactionArgument<string>,\n\t\t\t\tmoduleName: RawTransactionArgument<string>,\n\t\t\t\tfunction: RawTransactionArgument<string>,\n\t\t\t\targuments: TransactionArgument,\n\t\t\t\ttypeArguments: RawTransactionArgument<Array<string>>,\n\t\t ];\n}\n/** Create a `MoveCall` command. */\nexport function moveCall(options: MoveCallOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [\n\t\t'0x1::string::String',\n\t\t'0x1::string::String',\n\t\t'0x1::string::String',\n\t\t'vector<null>',\n\t\t'vector<0x1::string::String>',\n\t] satisfies (string | null)[];\n\tconst parameterNames = ['packageId', 'moduleName', 'function', 'arguments', 'typeArguments'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'move_call',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface TransferObjectsArguments {\n\tobjects: TransactionArgument;\n\tto: TransactionArgument;\n}\nexport interface TransferObjectsOptions {\n\tpackage?: string;\n\targuments: TransferObjectsArguments | [objects: TransactionArgument, to: TransactionArgument];\n}\n/**\n * Create a `TransferObjects` command Expects a vector of arguments to transfer and\n * an address value for destination.\n */\nexport function transferObjects(options: TransferObjectsOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['vector<null>', null] satisfies (string | null)[];\n\tconst parameterNames = ['objects', 'to'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'transfer_objects',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface SplitCoinsArguments {\n\tcoin: TransactionArgument;\n\tamounts: TransactionArgument;\n}\nexport interface SplitCoinsOptions {\n\tpackage?: string;\n\targuments: SplitCoinsArguments | [coin: TransactionArgument, amounts: TransactionArgument];\n}\n/** Create a `SplitCoins` command. */\nexport function splitCoins(options: SplitCoinsOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [null, 'vector<null>'] satisfies (string | null)[];\n\tconst parameterNames = ['coin', 'amounts'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'split_coins',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface MergeCoinsArguments {\n\tcoin: TransactionArgument;\n\tcoins: TransactionArgument;\n}\nexport interface MergeCoinsOptions {\n\tpackage?: string;\n\targuments: MergeCoinsArguments | [coin: TransactionArgument, coins: TransactionArgument];\n}\n/**\n * Create a `MergeCoins` command. Takes a Coin Argument and a vector of other coin\n * arguments to merge into it.\n */\nexport function mergeCoins(options: MergeCoinsOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [null, 'vector<null>'] satisfies (string | null)[];\n\tconst parameterNames = ['coin', 'coins'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'merge_coins',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface PublishArguments {\n\tmodulesBytes: RawTransactionArgument<Array<Array<number>>>;\n\tdependencies: RawTransactionArgument<Array<string>>;\n}\nexport interface PublishOptions {\n\tpackage?: string;\n\targuments:\n\t\t| PublishArguments\n\t\t| [\n\t\t\t\tmodulesBytes: RawTransactionArgument<Array<Array<number>>>,\n\t\t\t\tdependencies: RawTransactionArgument<Array<string>>,\n\t\t ];\n}\n/**\n * Create a `Publish` command. Takes a vector of modules' bytes and a vector of\n * dependencies.\n */\nexport function publish(options: PublishOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['vector<vector<u8>>', 'vector<0x2::object::ID>'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = ['modulesBytes', 'dependencies'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'publish',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface MakeMoveVecArguments {\n\telementType: RawTransactionArgument<string | null>;\n\telements: TransactionArgument;\n}\nexport interface MakeMoveVecOptions {\n\tpackage?: string;\n\targuments:\n\t\t| MakeMoveVecArguments\n\t\t| [elementType: RawTransactionArgument<string | null>, elements: TransactionArgument];\n}\n/**\n * Create a `MakeMoveVec` command. Takes an optional element type and a vector of\n * elements to make into a vector.\n */\nexport function makeMoveVec(options: MakeMoveVecOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['0x1::option::Option<0x1::string::String>', 'vector<null>'] satisfies (\n\t\t| string\n\t\t| null\n\t)[];\n\tconst parameterNames = ['elementType', 'elements'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'make_move_vec',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface UpgradeArguments {\n\tmodulesBytes: RawTransactionArgument<Array<Array<number>>>;\n\tdependencies: RawTransactionArgument<Array<string>>;\n\tobjectId: RawTransactionArgument<string>;\n\tupgradeTicket: TransactionArgument;\n}\nexport interface UpgradeOptions {\n\tpackage?: string;\n\targuments:\n\t\t| UpgradeArguments\n\t\t| [\n\t\t\t\tmodulesBytes: RawTransactionArgument<Array<Array<number>>>,\n\t\t\t\tdependencies: RawTransactionArgument<Array<string>>,\n\t\t\t\tobjectId: RawTransactionArgument<string>,\n\t\t\t\tupgradeTicket: TransactionArgument,\n\t\t ];\n}\n/**\n * Create a `Upgrade` command. Takes a vector of modules' bytes, a vector of\n * dependencies, an updated package ID, and an upgrade ticket.\n */\nexport function upgrade(options: UpgradeOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = [\n\t\t'vector<vector<u8>>',\n\t\t'vector<0x2::object::ID>',\n\t\t'0x2::object::ID',\n\t\tnull,\n\t] satisfies (string | null)[];\n\tconst parameterNames = ['modulesBytes', 'dependencies', 'objectId', 'upgradeTicket'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'upgrade',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\nexport interface ExtArguments {\n\tdata: RawTransactionArgument<Array<number>>;\n}\nexport interface ExtOptions {\n\tpackage?: string;\n\targuments: ExtArguments | [data: RawTransactionArgument<Array<number>>];\n}\n/** Create an `Ext` command. */\nexport function ext(options: ExtOptions) {\n\tconst packageAddress = options.package ?? '@mysten/ptb';\n\tconst argumentsTypes = ['vector<u8>'] satisfies (string | null)[];\n\tconst parameterNames = ['data'];\n\treturn (tx: Transaction_1) =>\n\t\ttx.moveCall({\n\t\t\tpackage: packageAddress,\n\t\t\tmodule: 'ptb',\n\t\t\tfunction: 'ext',\n\t\t\targuments: normalizeMoveArguments(options.arguments, argumentsTypes, parameterNames),\n\t\t});\n}\n"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/contracts/utils/index.ts"],"sourcesContent":["import {\n\tbcs,\n\ttype BcsType,\n\ttype TypeTag,\n\tTypeTagSerializer,\n\tBcsStruct,\n\tBcsEnum,\n\tBcsTuple,\n} from '@mysten/sui/bcs';\nimport { normalizeSuiAddress } from '@mysten/sui/utils';\nimport { type TransactionArgument, isArgument } from '@mysten/sui/transactions';\nimport { type ClientWithCoreApi, type SuiClientTypes } from '@mysten/sui/client';\
|
|
1
|
+
{"version":3,"file":"index.mjs","names":[],"sources":["../../../src/contracts/utils/index.ts"],"sourcesContent":["import { PASClientError } from '../../error.js';\n\nimport {\n\tbcs,\n\ttype BcsType,\n\ttype TypeTag,\n\tTypeTagSerializer,\n\tBcsStruct,\n\tBcsEnum,\n\tBcsTuple,\n} from '@mysten/sui/bcs';\nimport { normalizeSuiAddress } from '@mysten/sui/utils';\nimport { type TransactionArgument, isArgument } from '@mysten/sui/transactions';\nimport { type ClientWithCoreApi, type SuiClientTypes } from '@mysten/sui/client';\n\nconst MOVE_STDLIB_ADDRESS = normalizeSuiAddress('0x1');\nconst SUI_FRAMEWORK_ADDRESS = normalizeSuiAddress('0x2');\n\nexport type RawTransactionArgument<T> = T | TransactionArgument;\n\nexport type GetOptions<Include extends Omit<SuiClientTypes.ObjectInclude, 'content'> = {}> =\n\tSuiClientTypes.GetObjectOptions<Include> & { client: ClientWithCoreApi };\n\nexport type GetManyOptions<Include extends Omit<SuiClientTypes.ObjectInclude, 'content'> = {}> =\n\tSuiClientTypes.GetObjectsOptions<Include> & { client: ClientWithCoreApi };\n\nexport function getPureBcsSchema(typeTag: string | TypeTag): BcsType<any> | null {\n\tconst parsedTag = typeof typeTag === 'string' ? TypeTagSerializer.parseFromStr(typeTag) : typeTag;\n\n\tif ('u8' in parsedTag) {\n\t\treturn bcs.U8;\n\t} else if ('u16' in parsedTag) {\n\t\treturn bcs.U16;\n\t} else if ('u32' in parsedTag) {\n\t\treturn bcs.U32;\n\t} else if ('u64' in parsedTag) {\n\t\treturn bcs.U64;\n\t} else if ('u128' in parsedTag) {\n\t\treturn bcs.U128;\n\t} else if ('u256' in parsedTag) {\n\t\treturn bcs.U256;\n\t} else if ('address' in parsedTag) {\n\t\treturn bcs.Address;\n\t} else if ('bool' in parsedTag) {\n\t\treturn bcs.Bool;\n\t} else if ('vector' in parsedTag) {\n\t\tconst type = getPureBcsSchema(parsedTag.vector);\n\t\treturn type ? bcs.vector(type) : null;\n\t} else if ('struct' in parsedTag) {\n\t\tconst structTag = parsedTag.struct;\n\t\tconst pkg = normalizeSuiAddress(structTag.address);\n\n\t\tif (pkg === MOVE_STDLIB_ADDRESS) {\n\t\t\tif (\n\t\t\t\t(structTag.module === 'ascii' || structTag.module === 'string') &&\n\t\t\t\tstructTag.name === 'String'\n\t\t\t) {\n\t\t\t\treturn bcs.String;\n\t\t\t}\n\n\t\t\tif (structTag.module === 'option' && structTag.name === 'Option') {\n\t\t\t\tconst type = getPureBcsSchema(structTag.typeParams[0]);\n\t\t\t\treturn type ? bcs.option(type) : null;\n\t\t\t}\n\t\t}\n\n\t\tif (\n\t\t\tpkg === SUI_FRAMEWORK_ADDRESS &&\n\t\t\tstructTag.module === 'object' &&\n\t\t\t(structTag.name === 'ID' || structTag.name === 'UID')\n\t\t) {\n\t\t\treturn bcs.Address;\n\t\t}\n\t}\n\n\treturn null;\n}\n\nexport function normalizeMoveArguments(\n\targs: unknown[] | object,\n\targTypes: readonly (string | null)[],\n\tparameterNames?: string[],\n) {\n\tconst argLen = Array.isArray(args) ? args.length : Object.keys(args).length;\n\tif (parameterNames && argLen !== parameterNames.length) {\n\t\tthrow new PASClientError(\n\t\t\t`Invalid number of arguments, expected ${parameterNames.length}, got ${argLen}`,\n\t\t);\n\t}\n\n\tconst normalizedArgs: TransactionArgument[] = [];\n\n\tlet index = 0;\n\tfor (const [i, argType] of argTypes.entries()) {\n\t\tif (argType === '0x2::clock::Clock') {\n\t\t\tnormalizedArgs.push((tx) => tx.object.clock());\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (argType === '0x2::random::Random') {\n\t\t\tnormalizedArgs.push((tx) => tx.object.random());\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (argType === '0x2::deny_list::DenyList') {\n\t\t\tnormalizedArgs.push((tx) => tx.object.denyList());\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (argType === '0x3::sui_system::SuiSystemState') {\n\t\t\tnormalizedArgs.push((tx) => tx.object.system());\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet arg;\n\t\tif (Array.isArray(args)) {\n\t\t\tif (index >= args.length) {\n\t\t\t\tthrow new PASClientError(\n\t\t\t\t\t`Invalid number of arguments, expected at least ${index + 1}, got ${args.length}`,\n\t\t\t\t);\n\t\t\t}\n\t\t\targ = args[index];\n\t\t} else {\n\t\t\tif (!parameterNames) {\n\t\t\t\tthrow new PASClientError(`Expected arguments to be passed as an array`);\n\t\t\t}\n\t\t\tconst name = parameterNames[index];\n\t\t\targ = args[name as keyof typeof args];\n\n\t\t\tif (arg === undefined) {\n\t\t\t\tthrow new PASClientError(`Parameter ${name} is required`);\n\t\t\t}\n\t\t}\n\n\t\tindex += 1;\n\n\t\tif (typeof arg === 'function' || isArgument(arg)) {\n\t\t\tnormalizedArgs.push(arg as TransactionArgument);\n\t\t\tcontinue;\n\t\t}\n\n\t\tconst type = argTypes[i];\n\t\tconst bcsType = type === null ? null : getPureBcsSchema(type);\n\n\t\tif (bcsType) {\n\t\t\tconst bytes = bcsType.serialize(arg as never);\n\t\t\tnormalizedArgs.push((tx) => tx.pure(bytes));\n\t\t\tcontinue;\n\t\t}\n\n\t\tif (typeof arg === 'string') {\n\t\t\tnormalizedArgs.push((tx) => tx.object(arg));\n\t\t\tcontinue;\n\t\t}\n\n\t\tthrow new PASClientError(`Invalid argument ${stringify(arg)} for type ${type}`);\n\t}\n\n\treturn normalizedArgs;\n}\n\nexport class MoveStruct<\n\tT extends Record<string, BcsType<any>>,\n\tconst Name extends string = string,\n> extends BcsStruct<T, Name> {\n\tasync get<Include extends Omit<SuiClientTypes.ObjectInclude, 'content' | 'json'> = {}>({\n\t\tobjectId,\n\t\t...options\n\t}: GetOptions<Include>): Promise<\n\t\tSuiClientTypes.Object<Include & { content: true; json: true }> & {\n\t\t\tjson: BcsStruct<T>['$inferType'];\n\t\t}\n\t> {\n\t\tconst [res] = await this.getMany<Include>({\n\t\t\t...options,\n\t\t\tobjectIds: [objectId],\n\t\t});\n\n\t\treturn res;\n\t}\n\n\tasync getMany<Include extends Omit<SuiClientTypes.ObjectInclude, 'content' | 'json'> = {}>({\n\t\tclient,\n\t\t...options\n\t}: GetManyOptions<Include>): Promise<\n\t\tArray<\n\t\t\tSuiClientTypes.Object<Include & { content: true; json: true }> & {\n\t\t\t\tjson: BcsStruct<T>['$inferType'];\n\t\t\t}\n\t\t>\n\t> {\n\t\tconst response = (await client.core.getObjects({\n\t\t\t...options,\n\t\t\tinclude: {\n\t\t\t\t...options.include,\n\t\t\t\tcontent: true,\n\t\t\t},\n\t\t})) as SuiClientTypes.GetObjectsResponse<Include & { content: true }>;\n\n\t\treturn response.objects.map((obj) => {\n\t\t\tif (obj instanceof Error) {\n\t\t\t\tthrow obj;\n\t\t\t}\n\n\t\t\treturn {\n\t\t\t\t...obj,\n\t\t\t\tjson: this.parse(obj.content),\n\t\t\t};\n\t\t});\n\t}\n}\n\nexport class MoveEnum<\n\tT extends Record<string, BcsType<any> | null>,\n\tconst Name extends string,\n> extends BcsEnum<T, Name> {}\n\nexport class MoveTuple<\n\tconst T extends readonly BcsType<any>[],\n\tconst Name extends string,\n> extends BcsTuple<T, Name> {}\n\nfunction stringify(val: unknown) {\n\tif (typeof val === 'object') {\n\t\treturn JSON.stringify(val, (val: unknown) => val);\n\t}\n\tif (typeof val === 'bigint') {\n\t\treturn val.toString();\n\t}\n\n\treturn val;\n}\n"],"mappings":";;;;;AAeA,MAAM,sBAAsB,oBAAoB,MAAM;AACtD,MAAM,wBAAwB,oBAAoB,MAAM;AAiJxD,IAAa,aAAb,cAGU,UAAmB;CAC5B,MAAM,IAAiF,EACtF,UACA,GAAG,WAKF;EACD,MAAM,CAAC,OAAO,MAAM,KAAK,QAAiB;GACzC,GAAG;GACH,WAAW,CAAC,SAAS;GACrB,CAAC;AAEF,SAAO;;CAGR,MAAM,QAAqF,EAC1F,QACA,GAAG,WAOF;AASD,UARkB,MAAM,OAAO,KAAK,WAAW;GAC9C,GAAG;GACH,SAAS;IACR,GAAG,QAAQ;IACX,SAAS;IACT;GACD,CAAC,EAEc,QAAQ,KAAK,QAAQ;AACpC,OAAI,eAAe,MAClB,OAAM;AAGP,UAAO;IACN,GAAG;IACH,MAAM,KAAK,MAAM,IAAI,QAAQ;IAC7B;IACA;;;AAIJ,IAAa,WAAb,cAGU,QAAiB;AAE3B,IAAa,YAAb,cAGU,SAAkB"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@mysten/pas",
|
|
3
|
-
"version": "0.0
|
|
3
|
+
"version": "0.1.0",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "Permissioned Assets Standard SDK",
|
|
6
6
|
"license": "Apache-2.0",
|
|
@@ -37,11 +37,11 @@
|
|
|
37
37
|
"tsdown": "0.20.0-beta.1",
|
|
38
38
|
"typescript": "^5.9.3",
|
|
39
39
|
"vitest": "^4.0.17",
|
|
40
|
-
"@mysten/codegen": "^0.
|
|
41
|
-
"@mysten/sui": "^2.
|
|
40
|
+
"@mysten/codegen": "^0.10.0",
|
|
41
|
+
"@mysten/sui": "^2.16.0"
|
|
42
42
|
},
|
|
43
43
|
"peerDependencies": {
|
|
44
|
-
"@mysten/sui": "^2.
|
|
44
|
+
"@mysten/sui": "^2.16.0"
|
|
45
45
|
},
|
|
46
46
|
"scripts": {
|
|
47
47
|
"clean": "rm -rf tsconfig.tsbuildinfo ./dist",
|
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
type RawTransactionArgument,
|
|
12
12
|
} from '../utils/index.js';
|
|
13
13
|
import { bcs } from '@mysten/sui/bcs';
|
|
14
|
-
import { type Transaction } from '@mysten/sui/transactions';
|
|
14
|
+
import { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';
|
|
15
15
|
import * as versioning from './versioning.js';
|
|
16
16
|
const $moduleName = '@mysten/pas::account';
|
|
17
17
|
export const Account = new MoveStruct({
|
|
@@ -105,7 +105,7 @@ export function createAndShare(options: CreateAndShareOptions) {
|
|
|
105
105
|
}
|
|
106
106
|
export interface UnlockBalanceArguments {
|
|
107
107
|
account: RawTransactionArgument<string>;
|
|
108
|
-
auth:
|
|
108
|
+
auth: TransactionArgument;
|
|
109
109
|
amount: RawTransactionArgument<number | bigint>;
|
|
110
110
|
}
|
|
111
111
|
export interface UnlockBalanceOptions {
|
|
@@ -114,7 +114,7 @@ export interface UnlockBalanceOptions {
|
|
|
114
114
|
| UnlockBalanceArguments
|
|
115
115
|
| [
|
|
116
116
|
account: RawTransactionArgument<string>,
|
|
117
|
-
auth:
|
|
117
|
+
auth: TransactionArgument,
|
|
118
118
|
amount: RawTransactionArgument<number | bigint>,
|
|
119
119
|
];
|
|
120
120
|
typeArguments: [string];
|
|
@@ -139,7 +139,7 @@ export function unlockBalance(options: UnlockBalanceOptions) {
|
|
|
139
139
|
}
|
|
140
140
|
export interface SendBalanceArguments {
|
|
141
141
|
from: RawTransactionArgument<string>;
|
|
142
|
-
auth:
|
|
142
|
+
auth: TransactionArgument;
|
|
143
143
|
to: RawTransactionArgument<string>;
|
|
144
144
|
amount: RawTransactionArgument<number | bigint>;
|
|
145
145
|
}
|
|
@@ -149,7 +149,7 @@ export interface SendBalanceOptions {
|
|
|
149
149
|
| SendBalanceArguments
|
|
150
150
|
| [
|
|
151
151
|
from: RawTransactionArgument<string>,
|
|
152
|
-
auth:
|
|
152
|
+
auth: TransactionArgument,
|
|
153
153
|
to: RawTransactionArgument<string>,
|
|
154
154
|
amount: RawTransactionArgument<number | bigint>,
|
|
155
155
|
];
|
|
@@ -201,7 +201,7 @@ export function clawbackBalance(options: ClawbackBalanceOptions) {
|
|
|
201
201
|
}
|
|
202
202
|
export interface UnsafeSendBalanceArguments {
|
|
203
203
|
from: RawTransactionArgument<string>;
|
|
204
|
-
auth:
|
|
204
|
+
auth: TransactionArgument;
|
|
205
205
|
recipientAddress: RawTransactionArgument<string>;
|
|
206
206
|
amount: RawTransactionArgument<number | bigint>;
|
|
207
207
|
}
|
|
@@ -211,7 +211,7 @@ export interface UnsafeSendBalanceOptions {
|
|
|
211
211
|
| UnsafeSendBalanceArguments
|
|
212
212
|
| [
|
|
213
213
|
from: RawTransactionArgument<string>,
|
|
214
|
-
auth:
|
|
214
|
+
auth: TransactionArgument,
|
|
215
215
|
recipientAddress: RawTransactionArgument<string>,
|
|
216
216
|
amount: RawTransactionArgument<number | bigint>,
|
|
217
217
|
];
|
|
@@ -296,13 +296,13 @@ export function owner(options: OwnerOptions) {
|
|
|
296
296
|
}
|
|
297
297
|
export interface DepositBalanceArguments {
|
|
298
298
|
account: RawTransactionArgument<string>;
|
|
299
|
-
balance:
|
|
299
|
+
balance: TransactionArgument;
|
|
300
300
|
}
|
|
301
301
|
export interface DepositBalanceOptions {
|
|
302
302
|
package?: string;
|
|
303
303
|
arguments:
|
|
304
304
|
| DepositBalanceArguments
|
|
305
|
-
| [account: RawTransactionArgument<string>, balance:
|
|
305
|
+
| [account: RawTransactionArgument<string>, balance: TransactionArgument];
|
|
306
306
|
typeArguments: [string];
|
|
307
307
|
}
|
|
308
308
|
export function depositBalance(options: DepositBalanceOptions) {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
**************************************************************/
|
|
4
4
|
import { type BcsType, bcs } from '@mysten/sui/bcs';
|
|
5
5
|
import { MoveStruct, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.js';
|
|
6
|
-
import { type Transaction } from '@mysten/sui/transactions';
|
|
6
|
+
import { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';
|
|
7
7
|
const $moduleName = '@mysten/pas::clawback_funds';
|
|
8
8
|
export function ClawbackFunds<T extends BcsType<any>>(...typeParameters: [T]) {
|
|
9
9
|
return new MoveStruct({
|
|
@@ -19,11 +19,11 @@ export function ClawbackFunds<T extends BcsType<any>>(...typeParameters: [T]) {
|
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
21
|
export interface OwnerArguments {
|
|
22
|
-
request:
|
|
22
|
+
request: TransactionArgument;
|
|
23
23
|
}
|
|
24
24
|
export interface OwnerOptions {
|
|
25
25
|
package?: string;
|
|
26
|
-
arguments: OwnerArguments | [request:
|
|
26
|
+
arguments: OwnerArguments | [request: TransactionArgument];
|
|
27
27
|
typeArguments: [string];
|
|
28
28
|
}
|
|
29
29
|
export function owner(options: OwnerOptions) {
|
|
@@ -40,11 +40,11 @@ export function owner(options: OwnerOptions) {
|
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
42
|
export interface AccountIdArguments {
|
|
43
|
-
request:
|
|
43
|
+
request: TransactionArgument;
|
|
44
44
|
}
|
|
45
45
|
export interface AccountIdOptions {
|
|
46
46
|
package?: string;
|
|
47
|
-
arguments: AccountIdArguments | [request:
|
|
47
|
+
arguments: AccountIdArguments | [request: TransactionArgument];
|
|
48
48
|
typeArguments: [string];
|
|
49
49
|
}
|
|
50
50
|
export function accountId(options: AccountIdOptions) {
|
|
@@ -61,11 +61,11 @@ export function accountId(options: AccountIdOptions) {
|
|
|
61
61
|
});
|
|
62
62
|
}
|
|
63
63
|
export interface FundsArguments {
|
|
64
|
-
request:
|
|
64
|
+
request: TransactionArgument;
|
|
65
65
|
}
|
|
66
66
|
export interface FundsOptions {
|
|
67
67
|
package?: string;
|
|
68
|
-
arguments: FundsArguments | [request:
|
|
68
|
+
arguments: FundsArguments | [request: TransactionArgument];
|
|
69
69
|
typeArguments: [string];
|
|
70
70
|
}
|
|
71
71
|
export function funds(options: FundsOptions) {
|
|
@@ -82,14 +82,14 @@ export function funds(options: FundsOptions) {
|
|
|
82
82
|
});
|
|
83
83
|
}
|
|
84
84
|
export interface ResolveArguments {
|
|
85
|
-
request:
|
|
85
|
+
request: TransactionArgument;
|
|
86
86
|
policy: RawTransactionArgument<string>;
|
|
87
87
|
}
|
|
88
88
|
export interface ResolveOptions {
|
|
89
89
|
package?: string;
|
|
90
90
|
arguments:
|
|
91
91
|
| ResolveArguments
|
|
92
|
-
| [request:
|
|
92
|
+
| [request: TransactionArgument, policy: RawTransactionArgument<string>];
|
|
93
93
|
typeArguments: [string];
|
|
94
94
|
}
|
|
95
95
|
/**
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
**************************************************************/
|
|
4
4
|
import { type BcsType } from '@mysten/sui/bcs';
|
|
5
5
|
import { MoveStruct, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.js';
|
|
6
|
-
import { type Transaction } from '@mysten/sui/transactions';
|
|
6
|
+
import { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';
|
|
7
7
|
import * as vec_set from './deps/sui/vec_set.js';
|
|
8
8
|
import * as type_name from './deps/std/type_name.js';
|
|
9
9
|
const $moduleName = '@mysten/pas::request';
|
|
@@ -19,14 +19,14 @@ export function Request<K extends BcsType<any>>(...typeParameters: [K]) {
|
|
|
19
19
|
});
|
|
20
20
|
}
|
|
21
21
|
export interface ApproveArguments<U extends BcsType<any>> {
|
|
22
|
-
request:
|
|
22
|
+
request: TransactionArgument;
|
|
23
23
|
Approval: RawTransactionArgument<U>;
|
|
24
24
|
}
|
|
25
25
|
export interface ApproveOptions<U extends BcsType<any>> {
|
|
26
26
|
package?: string;
|
|
27
27
|
arguments:
|
|
28
28
|
| ApproveArguments<U>
|
|
29
|
-
| [request:
|
|
29
|
+
| [request: TransactionArgument, Approval: RawTransactionArgument<U>];
|
|
30
30
|
typeArguments: [string, string];
|
|
31
31
|
}
|
|
32
32
|
/** Adds an approval to a request. Can be called to resolve rules */
|
|
@@ -44,11 +44,11 @@ export function approve<U extends BcsType<any>>(options: ApproveOptions<U>) {
|
|
|
44
44
|
});
|
|
45
45
|
}
|
|
46
46
|
export interface DataArguments {
|
|
47
|
-
request:
|
|
47
|
+
request: TransactionArgument;
|
|
48
48
|
}
|
|
49
49
|
export interface DataOptions {
|
|
50
50
|
package?: string;
|
|
51
|
-
arguments: DataArguments | [request:
|
|
51
|
+
arguments: DataArguments | [request: TransactionArgument];
|
|
52
52
|
typeArguments: [string];
|
|
53
53
|
}
|
|
54
54
|
export function data(options: DataOptions) {
|
|
@@ -65,11 +65,11 @@ export function data(options: DataOptions) {
|
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
67
|
export interface ApprovalsArguments {
|
|
68
|
-
request:
|
|
68
|
+
request: TransactionArgument;
|
|
69
69
|
}
|
|
70
70
|
export interface ApprovalsOptions {
|
|
71
71
|
package?: string;
|
|
72
|
-
arguments: ApprovalsArguments | [request:
|
|
72
|
+
arguments: ApprovalsArguments | [request: TransactionArgument];
|
|
73
73
|
typeArguments: [string];
|
|
74
74
|
}
|
|
75
75
|
export function approvals(options: ApprovalsOptions) {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
**************************************************************/
|
|
4
4
|
import { type BcsType, bcs } from '@mysten/sui/bcs';
|
|
5
5
|
import { MoveStruct, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.js';
|
|
6
|
-
import { type Transaction } from '@mysten/sui/transactions';
|
|
6
|
+
import { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';
|
|
7
7
|
const $moduleName = '@mysten/pas::send_funds';
|
|
8
8
|
/**
|
|
9
9
|
* A transfer request that is generated once a send funds request is initialized.
|
|
@@ -40,11 +40,11 @@ export function SendFunds<T extends BcsType<any>>(...typeParameters: [T]) {
|
|
|
40
40
|
});
|
|
41
41
|
}
|
|
42
42
|
export interface SenderArguments {
|
|
43
|
-
request:
|
|
43
|
+
request: TransactionArgument;
|
|
44
44
|
}
|
|
45
45
|
export interface SenderOptions {
|
|
46
46
|
package?: string;
|
|
47
|
-
arguments: SenderArguments | [request:
|
|
47
|
+
arguments: SenderArguments | [request: TransactionArgument];
|
|
48
48
|
typeArguments: [string];
|
|
49
49
|
}
|
|
50
50
|
export function sender(options: SenderOptions) {
|
|
@@ -61,11 +61,11 @@ export function sender(options: SenderOptions) {
|
|
|
61
61
|
});
|
|
62
62
|
}
|
|
63
63
|
export interface RecipientArguments {
|
|
64
|
-
request:
|
|
64
|
+
request: TransactionArgument;
|
|
65
65
|
}
|
|
66
66
|
export interface RecipientOptions {
|
|
67
67
|
package?: string;
|
|
68
|
-
arguments: RecipientArguments | [request:
|
|
68
|
+
arguments: RecipientArguments | [request: TransactionArgument];
|
|
69
69
|
typeArguments: [string];
|
|
70
70
|
}
|
|
71
71
|
export function recipient(options: RecipientOptions) {
|
|
@@ -82,11 +82,11 @@ export function recipient(options: RecipientOptions) {
|
|
|
82
82
|
});
|
|
83
83
|
}
|
|
84
84
|
export interface SenderAccountIdArguments {
|
|
85
|
-
request:
|
|
85
|
+
request: TransactionArgument;
|
|
86
86
|
}
|
|
87
87
|
export interface SenderAccountIdOptions {
|
|
88
88
|
package?: string;
|
|
89
|
-
arguments: SenderAccountIdArguments | [request:
|
|
89
|
+
arguments: SenderAccountIdArguments | [request: TransactionArgument];
|
|
90
90
|
typeArguments: [string];
|
|
91
91
|
}
|
|
92
92
|
export function senderAccountId(options: SenderAccountIdOptions) {
|
|
@@ -103,11 +103,11 @@ export function senderAccountId(options: SenderAccountIdOptions) {
|
|
|
103
103
|
});
|
|
104
104
|
}
|
|
105
105
|
export interface RecipientAccountIdArguments {
|
|
106
|
-
request:
|
|
106
|
+
request: TransactionArgument;
|
|
107
107
|
}
|
|
108
108
|
export interface RecipientAccountIdOptions {
|
|
109
109
|
package?: string;
|
|
110
|
-
arguments: RecipientAccountIdArguments | [request:
|
|
110
|
+
arguments: RecipientAccountIdArguments | [request: TransactionArgument];
|
|
111
111
|
typeArguments: [string];
|
|
112
112
|
}
|
|
113
113
|
export function recipientAccountId(options: RecipientAccountIdOptions) {
|
|
@@ -124,11 +124,11 @@ export function recipientAccountId(options: RecipientAccountIdOptions) {
|
|
|
124
124
|
});
|
|
125
125
|
}
|
|
126
126
|
export interface FundsArguments {
|
|
127
|
-
request:
|
|
127
|
+
request: TransactionArgument;
|
|
128
128
|
}
|
|
129
129
|
export interface FundsOptions {
|
|
130
130
|
package?: string;
|
|
131
|
-
arguments: FundsArguments | [request:
|
|
131
|
+
arguments: FundsArguments | [request: TransactionArgument];
|
|
132
132
|
typeArguments: [string];
|
|
133
133
|
}
|
|
134
134
|
export function funds(options: FundsOptions) {
|
|
@@ -145,14 +145,14 @@ export function funds(options: FundsOptions) {
|
|
|
145
145
|
});
|
|
146
146
|
}
|
|
147
147
|
export interface ResolveBalanceArguments {
|
|
148
|
-
request:
|
|
148
|
+
request: TransactionArgument;
|
|
149
149
|
policy: RawTransactionArgument<string>;
|
|
150
150
|
}
|
|
151
151
|
export interface ResolveBalanceOptions {
|
|
152
152
|
package?: string;
|
|
153
153
|
arguments:
|
|
154
154
|
| ResolveBalanceArguments
|
|
155
|
-
| [request:
|
|
155
|
+
| [request: TransactionArgument, policy: RawTransactionArgument<string>];
|
|
156
156
|
typeArguments: [string];
|
|
157
157
|
}
|
|
158
158
|
/**
|
|
@@ -11,7 +11,7 @@
|
|
|
11
11
|
|
|
12
12
|
import { MoveStruct, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.js';
|
|
13
13
|
import { bcs } from '@mysten/sui/bcs';
|
|
14
|
-
import { type Transaction } from '@mysten/sui/transactions';
|
|
14
|
+
import { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';
|
|
15
15
|
const $moduleName = '@mysten/pas::templates';
|
|
16
16
|
export const PAS = new MoveStruct({
|
|
17
17
|
name: `${$moduleName}::PAS`,
|
|
@@ -47,8 +47,8 @@ export function setup(options: SetupOptions) {
|
|
|
47
47
|
}
|
|
48
48
|
export interface SetTemplateCommandArguments {
|
|
49
49
|
templates: RawTransactionArgument<string>;
|
|
50
|
-
_:
|
|
51
|
-
command:
|
|
50
|
+
_: TransactionArgument;
|
|
51
|
+
command: TransactionArgument;
|
|
52
52
|
}
|
|
53
53
|
export interface SetTemplateCommandOptions {
|
|
54
54
|
package?: string;
|
|
@@ -56,8 +56,8 @@ export interface SetTemplateCommandOptions {
|
|
|
56
56
|
| SetTemplateCommandArguments
|
|
57
57
|
| [
|
|
58
58
|
templates: RawTransactionArgument<string>,
|
|
59
|
-
_:
|
|
60
|
-
command:
|
|
59
|
+
_: TransactionArgument,
|
|
60
|
+
command: TransactionArgument,
|
|
61
61
|
];
|
|
62
62
|
typeArguments: [string];
|
|
63
63
|
}
|
|
@@ -77,13 +77,13 @@ export function setTemplateCommand(options: SetTemplateCommandOptions) {
|
|
|
77
77
|
}
|
|
78
78
|
export interface UnsetTemplateCommandArguments {
|
|
79
79
|
templates: RawTransactionArgument<string>;
|
|
80
|
-
_:
|
|
80
|
+
_: TransactionArgument;
|
|
81
81
|
}
|
|
82
82
|
export interface UnsetTemplateCommandOptions {
|
|
83
83
|
package?: string;
|
|
84
84
|
arguments:
|
|
85
85
|
| UnsetTemplateCommandArguments
|
|
86
|
-
| [templates: RawTransactionArgument<string>, _:
|
|
86
|
+
| [templates: RawTransactionArgument<string>, _: TransactionArgument];
|
|
87
87
|
typeArguments: [string];
|
|
88
88
|
}
|
|
89
89
|
export function unsetTemplateCommand(options: UnsetTemplateCommandOptions) {
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
**************************************************************/
|
|
4
4
|
import { type BcsType, bcs } from '@mysten/sui/bcs';
|
|
5
5
|
import { MoveStruct, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.js';
|
|
6
|
-
import { type Transaction } from '@mysten/sui/transactions';
|
|
6
|
+
import { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';
|
|
7
7
|
const $moduleName = '@mysten/pas::unlock_funds';
|
|
8
8
|
/**
|
|
9
9
|
* An unlock funds request that is generated once a Permissioned Funds Transfer is
|
|
@@ -31,11 +31,11 @@ export function UnlockFunds<T extends BcsType<any>>(...typeParameters: [T]) {
|
|
|
31
31
|
});
|
|
32
32
|
}
|
|
33
33
|
export interface OwnerArguments {
|
|
34
|
-
request:
|
|
34
|
+
request: TransactionArgument;
|
|
35
35
|
}
|
|
36
36
|
export interface OwnerOptions {
|
|
37
37
|
package?: string;
|
|
38
|
-
arguments: OwnerArguments | [request:
|
|
38
|
+
arguments: OwnerArguments | [request: TransactionArgument];
|
|
39
39
|
typeArguments: [string];
|
|
40
40
|
}
|
|
41
41
|
export function owner(options: OwnerOptions) {
|
|
@@ -52,11 +52,11 @@ export function owner(options: OwnerOptions) {
|
|
|
52
52
|
});
|
|
53
53
|
}
|
|
54
54
|
export interface AccountIdArguments {
|
|
55
|
-
request:
|
|
55
|
+
request: TransactionArgument;
|
|
56
56
|
}
|
|
57
57
|
export interface AccountIdOptions {
|
|
58
58
|
package?: string;
|
|
59
|
-
arguments: AccountIdArguments | [request:
|
|
59
|
+
arguments: AccountIdArguments | [request: TransactionArgument];
|
|
60
60
|
typeArguments: [string];
|
|
61
61
|
}
|
|
62
62
|
export function accountId(options: AccountIdOptions) {
|
|
@@ -73,11 +73,11 @@ export function accountId(options: AccountIdOptions) {
|
|
|
73
73
|
});
|
|
74
74
|
}
|
|
75
75
|
export interface FundsArguments {
|
|
76
|
-
request:
|
|
76
|
+
request: TransactionArgument;
|
|
77
77
|
}
|
|
78
78
|
export interface FundsOptions {
|
|
79
79
|
package?: string;
|
|
80
|
-
arguments: FundsArguments | [request:
|
|
80
|
+
arguments: FundsArguments | [request: TransactionArgument];
|
|
81
81
|
typeArguments: [string];
|
|
82
82
|
}
|
|
83
83
|
export function funds(options: FundsOptions) {
|
|
@@ -94,14 +94,14 @@ export function funds(options: FundsOptions) {
|
|
|
94
94
|
});
|
|
95
95
|
}
|
|
96
96
|
export interface ResolveUnrestrictedBalanceArguments {
|
|
97
|
-
request:
|
|
97
|
+
request: TransactionArgument;
|
|
98
98
|
namespace: RawTransactionArgument<string>;
|
|
99
99
|
}
|
|
100
100
|
export interface ResolveUnrestrictedBalanceOptions {
|
|
101
101
|
package?: string;
|
|
102
102
|
arguments:
|
|
103
103
|
| ResolveUnrestrictedBalanceArguments
|
|
104
|
-
| [request:
|
|
104
|
+
| [request: TransactionArgument, namespace: RawTransactionArgument<string>];
|
|
105
105
|
typeArguments: [string];
|
|
106
106
|
}
|
|
107
107
|
/**
|
|
@@ -126,14 +126,14 @@ export function resolveUnrestrictedBalance(options: ResolveUnrestrictedBalanceOp
|
|
|
126
126
|
});
|
|
127
127
|
}
|
|
128
128
|
export interface ResolveArguments {
|
|
129
|
-
request:
|
|
129
|
+
request: TransactionArgument;
|
|
130
130
|
policy: RawTransactionArgument<string>;
|
|
131
131
|
}
|
|
132
132
|
export interface ResolveOptions {
|
|
133
133
|
package?: string;
|
|
134
134
|
arguments:
|
|
135
135
|
| ResolveArguments
|
|
136
|
-
| [request:
|
|
136
|
+
| [request: TransactionArgument, policy: RawTransactionArgument<string>];
|
|
137
137
|
typeArguments: [string];
|
|
138
138
|
}
|
|
139
139
|
/**
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
|
|
14
14
|
import { MoveStruct, normalizeMoveArguments, type RawTransactionArgument } from '../utils/index.js';
|
|
15
15
|
import { bcs } from '@mysten/sui/bcs';
|
|
16
|
-
import { type Transaction } from '@mysten/sui/transactions';
|
|
16
|
+
import { type Transaction, type TransactionArgument } from '@mysten/sui/transactions';
|
|
17
17
|
import * as vec_set from './deps/sui/vec_set.js';
|
|
18
18
|
const $moduleName = '@mysten/pas::versioning';
|
|
19
19
|
export const Versioning = new MoveStruct({
|
|
@@ -23,17 +23,14 @@ export const Versioning = new MoveStruct({
|
|
|
23
23
|
},
|
|
24
24
|
});
|
|
25
25
|
export interface IsValidVersionArguments {
|
|
26
|
-
versioning:
|
|
26
|
+
versioning: TransactionArgument;
|
|
27
27
|
version: RawTransactionArgument<number | bigint>;
|
|
28
28
|
}
|
|
29
29
|
export interface IsValidVersionOptions {
|
|
30
30
|
package?: string;
|
|
31
31
|
arguments:
|
|
32
32
|
| IsValidVersionArguments
|
|
33
|
-
| [
|
|
34
|
-
versioning: RawTransactionArgument<string>,
|
|
35
|
-
version: RawTransactionArgument<number | bigint>,
|
|
36
|
-
];
|
|
33
|
+
| [versioning: TransactionArgument, version: RawTransactionArgument<number | bigint>];
|
|
37
34
|
}
|
|
38
35
|
/** Verify that a version is not part of the blocked version list. */
|
|
39
36
|
export function isValidVersion(options: IsValidVersionOptions) {
|
|
@@ -49,11 +46,11 @@ export function isValidVersion(options: IsValidVersionOptions) {
|
|
|
49
46
|
});
|
|
50
47
|
}
|
|
51
48
|
export interface AssertIsValidVersionArguments {
|
|
52
|
-
versioning:
|
|
49
|
+
versioning: TransactionArgument;
|
|
53
50
|
}
|
|
54
51
|
export interface AssertIsValidVersionOptions {
|
|
55
52
|
package?: string;
|
|
56
|
-
arguments: AssertIsValidVersionArguments | [versioning:
|
|
53
|
+
arguments: AssertIsValidVersionArguments | [versioning: TransactionArgument];
|
|
57
54
|
}
|
|
58
55
|
export function assertIsValidVersion(options: AssertIsValidVersionOptions) {
|
|
59
56
|
const packageAddress = options.package ?? '@mysten/pas';
|
package/src/contracts/ptb/ptb.ts
CHANGED
|
@@ -12,7 +12,10 @@ import {
|
|
|
12
12
|
type RawTransactionArgument,
|
|
13
13
|
} from '../utils/index.js';
|
|
14
14
|
import { bcs, type BcsType } from '@mysten/sui/bcs';
|
|
15
|
-
import {
|
|
15
|
+
import {
|
|
16
|
+
type Transaction as Transaction_1,
|
|
17
|
+
type TransactionArgument,
|
|
18
|
+
} from '@mysten/sui/transactions';
|
|
16
19
|
const $moduleName = '@mysten/ptb::ptb';
|
|
17
20
|
export const Command = new MoveTuple({
|
|
18
21
|
name: `${$moduleName}::Command`,
|
|
@@ -532,14 +535,12 @@ export function extInputRaw(options: ExtInputRawOptions) {
|
|
|
532
535
|
});
|
|
533
536
|
}
|
|
534
537
|
export interface CommandArguments {
|
|
535
|
-
self:
|
|
536
|
-
command:
|
|
538
|
+
self: TransactionArgument;
|
|
539
|
+
command: TransactionArgument;
|
|
537
540
|
}
|
|
538
541
|
export interface CommandOptions {
|
|
539
542
|
package?: string;
|
|
540
|
-
arguments:
|
|
541
|
-
| CommandArguments
|
|
542
|
-
| [self: RawTransactionArgument<string>, command: RawTransactionArgument<string>];
|
|
543
|
+
arguments: CommandArguments | [self: TransactionArgument, command: TransactionArgument];
|
|
543
544
|
}
|
|
544
545
|
/**
|
|
545
546
|
* Register a command in the Transaction builder. Returns the Argument, which is
|
|
@@ -559,14 +560,12 @@ export function command(options: CommandOptions) {
|
|
|
559
560
|
});
|
|
560
561
|
}
|
|
561
562
|
export interface NestedArguments {
|
|
562
|
-
self:
|
|
563
|
+
self: TransactionArgument;
|
|
563
564
|
subIdx: RawTransactionArgument<number>;
|
|
564
565
|
}
|
|
565
566
|
export interface NestedOptions {
|
|
566
567
|
package?: string;
|
|
567
|
-
arguments:
|
|
568
|
-
| NestedArguments
|
|
569
|
-
| [self: RawTransactionArgument<string>, subIdx: RawTransactionArgument<number>];
|
|
568
|
+
arguments: NestedArguments | [self: TransactionArgument, subIdx: RawTransactionArgument<number>];
|
|
570
569
|
}
|
|
571
570
|
/**
|
|
572
571
|
* Spawn a nested result out of a (just) `Result`. Simple result is a command
|
|
@@ -588,8 +587,8 @@ export interface MoveCallArguments {
|
|
|
588
587
|
packageId: RawTransactionArgument<string>;
|
|
589
588
|
moduleName: RawTransactionArgument<string>;
|
|
590
589
|
function: RawTransactionArgument<string>;
|
|
591
|
-
arguments:
|
|
592
|
-
typeArguments: RawTransactionArgument<string
|
|
590
|
+
arguments: TransactionArgument;
|
|
591
|
+
typeArguments: RawTransactionArgument<Array<string>>;
|
|
593
592
|
}
|
|
594
593
|
export interface MoveCallOptions {
|
|
595
594
|
package?: string;
|
|
@@ -599,8 +598,8 @@ export interface MoveCallOptions {
|
|
|
599
598
|
packageId: RawTransactionArgument<string>,
|
|
600
599
|
moduleName: RawTransactionArgument<string>,
|
|
601
600
|
function: RawTransactionArgument<string>,
|
|
602
|
-
arguments:
|
|
603
|
-
typeArguments: RawTransactionArgument<string
|
|
601
|
+
arguments: TransactionArgument,
|
|
602
|
+
typeArguments: RawTransactionArgument<Array<string>>,
|
|
604
603
|
];
|
|
605
604
|
}
|
|
606
605
|
/** Create a `MoveCall` command. */
|
|
@@ -623,14 +622,12 @@ export function moveCall(options: MoveCallOptions) {
|
|
|
623
622
|
});
|
|
624
623
|
}
|
|
625
624
|
export interface TransferObjectsArguments {
|
|
626
|
-
objects:
|
|
627
|
-
to:
|
|
625
|
+
objects: TransactionArgument;
|
|
626
|
+
to: TransactionArgument;
|
|
628
627
|
}
|
|
629
628
|
export interface TransferObjectsOptions {
|
|
630
629
|
package?: string;
|
|
631
|
-
arguments:
|
|
632
|
-
| TransferObjectsArguments
|
|
633
|
-
| [objects: RawTransactionArgument<string[]>, to: RawTransactionArgument<string>];
|
|
630
|
+
arguments: TransferObjectsArguments | [objects: TransactionArgument, to: TransactionArgument];
|
|
634
631
|
}
|
|
635
632
|
/**
|
|
636
633
|
* Create a `TransferObjects` command Expects a vector of arguments to transfer and
|
|
@@ -649,14 +646,12 @@ export function transferObjects(options: TransferObjectsOptions) {
|
|
|
649
646
|
});
|
|
650
647
|
}
|
|
651
648
|
export interface SplitCoinsArguments {
|
|
652
|
-
coin:
|
|
653
|
-
amounts:
|
|
649
|
+
coin: TransactionArgument;
|
|
650
|
+
amounts: TransactionArgument;
|
|
654
651
|
}
|
|
655
652
|
export interface SplitCoinsOptions {
|
|
656
653
|
package?: string;
|
|
657
|
-
arguments:
|
|
658
|
-
| SplitCoinsArguments
|
|
659
|
-
| [coin: RawTransactionArgument<string>, amounts: RawTransactionArgument<string[]>];
|
|
654
|
+
arguments: SplitCoinsArguments | [coin: TransactionArgument, amounts: TransactionArgument];
|
|
660
655
|
}
|
|
661
656
|
/** Create a `SplitCoins` command. */
|
|
662
657
|
export function splitCoins(options: SplitCoinsOptions) {
|
|
@@ -672,14 +667,12 @@ export function splitCoins(options: SplitCoinsOptions) {
|
|
|
672
667
|
});
|
|
673
668
|
}
|
|
674
669
|
export interface MergeCoinsArguments {
|
|
675
|
-
coin:
|
|
676
|
-
coins:
|
|
670
|
+
coin: TransactionArgument;
|
|
671
|
+
coins: TransactionArgument;
|
|
677
672
|
}
|
|
678
673
|
export interface MergeCoinsOptions {
|
|
679
674
|
package?: string;
|
|
680
|
-
arguments:
|
|
681
|
-
| MergeCoinsArguments
|
|
682
|
-
| [coin: RawTransactionArgument<string>, coins: RawTransactionArgument<string[]>];
|
|
675
|
+
arguments: MergeCoinsArguments | [coin: TransactionArgument, coins: TransactionArgument];
|
|
683
676
|
}
|
|
684
677
|
/**
|
|
685
678
|
* Create a `MergeCoins` command. Takes a Coin Argument and a vector of other coin
|
|
@@ -698,16 +691,16 @@ export function mergeCoins(options: MergeCoinsOptions) {
|
|
|
698
691
|
});
|
|
699
692
|
}
|
|
700
693
|
export interface PublishArguments {
|
|
701
|
-
modulesBytes: RawTransactionArgument<number
|
|
702
|
-
dependencies: RawTransactionArgument<string
|
|
694
|
+
modulesBytes: RawTransactionArgument<Array<Array<number>>>;
|
|
695
|
+
dependencies: RawTransactionArgument<Array<string>>;
|
|
703
696
|
}
|
|
704
697
|
export interface PublishOptions {
|
|
705
698
|
package?: string;
|
|
706
699
|
arguments:
|
|
707
700
|
| PublishArguments
|
|
708
701
|
| [
|
|
709
|
-
modulesBytes: RawTransactionArgument<number
|
|
710
|
-
dependencies: RawTransactionArgument<string
|
|
702
|
+
modulesBytes: RawTransactionArgument<Array<Array<number>>>,
|
|
703
|
+
dependencies: RawTransactionArgument<Array<string>>,
|
|
711
704
|
];
|
|
712
705
|
}
|
|
713
706
|
/**
|
|
@@ -731,16 +724,13 @@ export function publish(options: PublishOptions) {
|
|
|
731
724
|
}
|
|
732
725
|
export interface MakeMoveVecArguments {
|
|
733
726
|
elementType: RawTransactionArgument<string | null>;
|
|
734
|
-
elements:
|
|
727
|
+
elements: TransactionArgument;
|
|
735
728
|
}
|
|
736
729
|
export interface MakeMoveVecOptions {
|
|
737
730
|
package?: string;
|
|
738
731
|
arguments:
|
|
739
732
|
| MakeMoveVecArguments
|
|
740
|
-
| [
|
|
741
|
-
elementType: RawTransactionArgument<string | null>,
|
|
742
|
-
elements: RawTransactionArgument<string[]>,
|
|
743
|
-
];
|
|
733
|
+
| [elementType: RawTransactionArgument<string | null>, elements: TransactionArgument];
|
|
744
734
|
}
|
|
745
735
|
/**
|
|
746
736
|
* Create a `MakeMoveVec` command. Takes an optional element type and a vector of
|
|
@@ -762,20 +752,20 @@ export function makeMoveVec(options: MakeMoveVecOptions) {
|
|
|
762
752
|
});
|
|
763
753
|
}
|
|
764
754
|
export interface UpgradeArguments {
|
|
765
|
-
modulesBytes: RawTransactionArgument<number
|
|
766
|
-
dependencies: RawTransactionArgument<string
|
|
755
|
+
modulesBytes: RawTransactionArgument<Array<Array<number>>>;
|
|
756
|
+
dependencies: RawTransactionArgument<Array<string>>;
|
|
767
757
|
objectId: RawTransactionArgument<string>;
|
|
768
|
-
upgradeTicket:
|
|
758
|
+
upgradeTicket: TransactionArgument;
|
|
769
759
|
}
|
|
770
760
|
export interface UpgradeOptions {
|
|
771
761
|
package?: string;
|
|
772
762
|
arguments:
|
|
773
763
|
| UpgradeArguments
|
|
774
764
|
| [
|
|
775
|
-
modulesBytes: RawTransactionArgument<number
|
|
776
|
-
dependencies: RawTransactionArgument<string
|
|
765
|
+
modulesBytes: RawTransactionArgument<Array<Array<number>>>,
|
|
766
|
+
dependencies: RawTransactionArgument<Array<string>>,
|
|
777
767
|
objectId: RawTransactionArgument<string>,
|
|
778
|
-
upgradeTicket:
|
|
768
|
+
upgradeTicket: TransactionArgument,
|
|
779
769
|
];
|
|
780
770
|
}
|
|
781
771
|
/**
|
|
@@ -800,11 +790,11 @@ export function upgrade(options: UpgradeOptions) {
|
|
|
800
790
|
});
|
|
801
791
|
}
|
|
802
792
|
export interface ExtArguments {
|
|
803
|
-
data: RawTransactionArgument<number
|
|
793
|
+
data: RawTransactionArgument<Array<number>>;
|
|
804
794
|
}
|
|
805
795
|
export interface ExtOptions {
|
|
806
796
|
package?: string;
|
|
807
|
-
arguments: ExtArguments | [data: RawTransactionArgument<number
|
|
797
|
+
arguments: ExtArguments | [data: RawTransactionArgument<Array<number>>];
|
|
808
798
|
}
|
|
809
799
|
/** Create an `Ext` command. */
|
|
810
800
|
export function ext(options: ExtOptions) {
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { PASClientError } from '../../error.js';
|
|
2
|
+
|
|
1
3
|
import {
|
|
2
4
|
bcs,
|
|
3
5
|
type BcsType,
|
|
@@ -10,24 +12,17 @@ import {
|
|
|
10
12
|
import { normalizeSuiAddress } from '@mysten/sui/utils';
|
|
11
13
|
import { type TransactionArgument, isArgument } from '@mysten/sui/transactions';
|
|
12
14
|
import { type ClientWithCoreApi, type SuiClientTypes } from '@mysten/sui/client';
|
|
13
|
-
import { PASClientError } from '../../error.js';
|
|
14
15
|
|
|
15
16
|
const MOVE_STDLIB_ADDRESS = normalizeSuiAddress('0x1');
|
|
16
17
|
const SUI_FRAMEWORK_ADDRESS = normalizeSuiAddress('0x2');
|
|
17
18
|
|
|
18
19
|
export type RawTransactionArgument<T> = T | TransactionArgument;
|
|
19
20
|
|
|
20
|
-
export
|
|
21
|
-
Include
|
|
22
|
-
> extends SuiClientTypes.GetObjectOptions<Include> {
|
|
23
|
-
client: ClientWithCoreApi;
|
|
24
|
-
}
|
|
21
|
+
export type GetOptions<Include extends Omit<SuiClientTypes.ObjectInclude, 'content'> = {}> =
|
|
22
|
+
SuiClientTypes.GetObjectOptions<Include> & { client: ClientWithCoreApi };
|
|
25
23
|
|
|
26
|
-
export
|
|
27
|
-
Include
|
|
28
|
-
> extends SuiClientTypes.GetObjectsOptions<Include> {
|
|
29
|
-
client: ClientWithCoreApi;
|
|
30
|
-
}
|
|
24
|
+
export type GetManyOptions<Include extends Omit<SuiClientTypes.ObjectInclude, 'content'> = {}> =
|
|
25
|
+
SuiClientTypes.GetObjectsOptions<Include> & { client: ClientWithCoreApi };
|
|
31
26
|
|
|
32
27
|
export function getPureBcsSchema(typeTag: string | TypeTag): BcsType<any> | null {
|
|
33
28
|
const parsedTag = typeof typeTag === 'string' ? TypeTagSerializer.parseFromStr(typeTag) : typeTag;
|
|
@@ -151,7 +146,9 @@ export function normalizeMoveArguments(
|
|
|
151
146
|
const bytes = bcsType.serialize(arg as never);
|
|
152
147
|
normalizedArgs.push((tx) => tx.pure(bytes));
|
|
153
148
|
continue;
|
|
154
|
-
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
if (typeof arg === 'string') {
|
|
155
152
|
normalizedArgs.push((tx) => tx.object(arg));
|
|
156
153
|
continue;
|
|
157
154
|
}
|