Class: TransactionDataBuilder
Implements
Constructors
Constructor
new TransactionDataBuilder(clone?): TransactionDataBuilder;
Parameters
| Parameter | Type |
|---|---|
clone? | { version: 2; sender?: string | null; expiration?: | EnumOutputShapeWithKeys<{ None: true; Epoch: string | number; }, "None" | "Epoch"> | null; gasData: { budget: string | number | null; price: string | number | null; owner: string | null; payment: object[] | null; }; inputs: EnumOutputShapeWithKeys<{ Object: EnumOutputShapeWithKeys<{ ImmOrOwnedObject: { objectId: string; version: string | number; digest: string; }; SharedObject: { objectId: string; initialSharedVersion: string | number; mutable: boolean; }; Receiving: { objectId: string; version: string | number; digest: string; }; }, "ImmOrOwnedObject" | "SharedObject" | "Receiving">; Pure: { bytes: string; }; UnresolvedPure: { value: unknown; }; UnresolvedObject: { objectId: string; version?: string | number | null; digest?: string | null; initialSharedVersion?: string | number | null; mutable?: boolean | null; }; }, "Pure" | "Object" | "UnresolvedPure" | "UnresolvedObject">[]; commands: EnumOutputShapeWithKeys<{ MoveCall: { package: string; module: string; function: string; typeArguments: string[]; arguments: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; _argumentTypes?: object[] | null; }; TransferObjects: { objects: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; address: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; }; SplitCoins: { coin: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; amounts: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; }; MergeCoins: { destination: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; sources: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; }; Publish: { modules: string[]; dependencies: string[]; }; MakeMoveVec: { type: string | null; elements: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; }; Upgrade: { modules: string[]; dependencies: string[]; package: string; ticket: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; }; $Intent: { name: string; inputs: { [key: string]: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; } | ( | { $kind: ...; GasCoin: ...; } | { $kind: ...; Input: ...; type?: ...; } | { $kind: ...; Input: ...; type?: ...; } | { $kind: ...; Result: ...; } | { $kind: ...; NestedResult: ...; })[]; }; data: { [key: string]: unknown; }; }; }, | "MoveCall" | "TransferObjects" | "SplitCoins" | "MergeCoins" | "Publish" | "MakeMoveVec" | "Upgrade" | "$Intent">[]; } |
clone.version? | 2 |
clone.sender? | string | null |
clone.expiration? | | EnumOutputShapeWithKeys<{ None: true; Epoch: string | number; }, "None" | "Epoch"> | null |
clone.gasData? | { budget: string | number | null; price: string | number | null; owner: string | null; payment: object[] | null; } |
clone.gasData.budget? | string | number | null |
clone.gasData.price? | string | number | null |
clone.gasData.owner? | string | null |
clone.gasData.payment? | object[] | null |
clone.inputs? | EnumOutputShapeWithKeys<{ Object: EnumOutputShapeWithKeys<{ ImmOrOwnedObject: { objectId: string; version: string | number; digest: string; }; SharedObject: { objectId: string; initialSharedVersion: string | number; mutable: boolean; }; Receiving: { objectId: string; version: string | number; digest: string; }; }, "ImmOrOwnedObject" | "SharedObject" | "Receiving">; Pure: { bytes: string; }; UnresolvedPure: { value: unknown; }; UnresolvedObject: { objectId: string; version?: string | number | null; digest?: string | null; initialSharedVersion?: string | number | null; mutable?: boolean | null; }; }, "Pure" | "Object" | "UnresolvedPure" | "UnresolvedObject">[] |
clone.commands? | EnumOutputShapeWithKeys<{ MoveCall: { package: string; module: string; function: string; typeArguments: string[]; arguments: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; _argumentTypes?: object[] | null; }; TransferObjects: { objects: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; address: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; }; SplitCoins: { coin: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; amounts: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; }; MergeCoins: { destination: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; sources: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; }; Publish: { modules: string[]; dependencies: string[]; }; MakeMoveVec: { type: string | null; elements: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; }; Upgrade: { modules: string[]; dependencies: string[]; package: string; ticket: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; }; $Intent: { name: string; inputs: { [key: string]: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; } | ( | { $kind: ...; GasCoin: ...; } | { $kind: ...; Input: ...; type?: ...; } | { $kind: ...; Input: ...; type?: ...; } | { $kind: ...; Result: ...; } | { $kind: ...; NestedResult: ...; })[]; }; data: { [key: string]: unknown; }; }; }, | "MoveCall" | "TransferObjects" | "SplitCoins" | "MergeCoins" | "Publish" | "MakeMoveVec" | "Upgrade" | "$Intent">[] |
Returns
TransactionDataBuilder
Properties
| Property | Type |
|---|---|
version | 2 |
sender | string | null |
expiration | | EnumOutputShapeWithKeys<{ None: true; Epoch: string | number; }, "None" | "Epoch"> | null |
gasData | object |
gasData.budget | string | number | null |
gasData.price | string | number | null |
gasData.owner | string | null |
gasData.payment | object[] | null |
inputs | EnumOutputShapeWithKeys<{ Object: EnumOutputShapeWithKeys<{ ImmOrOwnedObject: { objectId: string; version: string | number; digest: string; }; SharedObject: { objectId: string; initialSharedVersion: string | number; mutable: boolean; }; Receiving: { objectId: string; version: string | number; digest: string; }; }, "ImmOrOwnedObject" | "SharedObject" | "Receiving">; Pure: { bytes: string; }; UnresolvedPure: { value: unknown; }; UnresolvedObject: { objectId: string; version?: string | number | null; digest?: string | null; initialSharedVersion?: string | number | null; mutable?: boolean | null; }; }, "Pure" | "Object" | "UnresolvedPure" | "UnresolvedObject">[] |
commands | Command[] |
Accessors
gasConfig
Get Signature
get gasConfig(): object;
Returns
object
| Name | Type |
|---|---|
budget | string | number | null |
price | string | number | null |
owner | string | null |
payment | object[] | null |
Set Signature
set gasConfig(value): void;
Parameters
| Parameter | Type |
|---|---|
value | { budget: string | number | null; price: string | number | null; owner: string | null; payment: object[] | null; } |
value.budget | string | number | null |
value.price | string | number | null |
value.owner | string | null |
value.payment | object[] | null |
Returns
void
Methods
fromKindBytes()
static fromKindBytes(bytes): TransactionDataBuilder;
Parameters
| Parameter | Type |
|---|---|
bytes | Uint8Array |
Returns
TransactionDataBuilder
fromBytes()
static fromBytes(bytes): TransactionDataBuilder;
Parameters
| Parameter | Type |
|---|---|
bytes | Uint8Array |
Returns
TransactionDataBuilder
restore()
static restore(data): TransactionDataBuilder;
Parameters
| Parameter | Type |
|---|---|
data | | { version: 1; sender?: string; expiration?: | { Epoch: number; } | { None: true | null; } | null; gasConfig: { budget?: string | number | bigint; price?: string | number | bigint; payment?: object[]; owner?: string; }; inputs: ( | { kind: "Input"; index: number; value: unknown; type?: "object"; } | { kind: "Input"; index: number; value: unknown; type: "pure"; })[]; transactions: ( | { kind: "MoveCall"; target: `${string}::${string}::${string}`; typeArguments: string[]; arguments: ( | { kind: "Input"; index: number; value: unknown; type?: "object"; } | { kind: "Input"; index: number; value: unknown; type: "pure"; } | { kind: "GasCoin"; } | { kind: "Result"; index: number; } | { kind: "NestedResult"; index: number; resultIndex: number; })[]; } | { kind: "TransferObjects"; objects: ( | { kind: "Input"; index: number; value: unknown; type?: "object"; } | { kind: "Input"; index: number; value: unknown; type: "pure"; } | { kind: "GasCoin"; } | { kind: "Result"; index: number; } | { kind: "NestedResult"; index: number; resultIndex: number; })[]; address: | { kind: "Input"; index: number; value: unknown; type?: "object"; } | { kind: "Input"; index: number; value: unknown; type: "pure"; } | { kind: "GasCoin"; } | { kind: "Result"; index: number; } | { kind: "NestedResult"; index: number; resultIndex: number; }; } | { kind: "SplitCoins"; coin: | { kind: "Input"; index: number; value: unknown; type?: "object"; } | { kind: "Input"; index: number; value: unknown; type: "pure"; } | { kind: "GasCoin"; } | { kind: "Result"; index: number; } | { kind: "NestedResult"; index: number; resultIndex: number; }; amounts: ( | { kind: "Input"; index: number; value: unknown; type?: "object"; } | { kind: "Input"; index: number; value: unknown; type: "pure"; } | { kind: "GasCoin"; } | { kind: "Result"; index: number; } | { kind: "NestedResult"; index: number; resultIndex: number; })[]; } | { kind: "MergeCoins"; destination: | { kind: "Input"; index: number; value: unknown; type?: "object"; } | { kind: "Input"; index: number; value: unknown; type: "pure"; } | { kind: "GasCoin"; } | { kind: "Result"; index: number; } | { kind: "NestedResult"; index: number; resultIndex: number; }; sources: ( | { kind: "Input"; index: number; value: unknown; type?: "object"; } | { kind: "Input"; index: number; value: unknown; type: "pure"; } | { kind: "GasCoin"; } | { kind: "Result"; index: number; } | { kind: "NestedResult"; index: number; resultIndex: number; })[]; } | { kind: "Publish"; modules: number[][]; dependencies: string[]; } | { kind: "Upgrade"; modules: number[][]; dependencies: string[]; packageId: string; ticket: | { kind: "Input"; index: number; value: unknown; type?: "object"; } | { kind: "Input"; index: number; value: unknown; type: "pure"; } | { kind: "GasCoin"; } | { kind: "Result"; index: number; } | { kind: "NestedResult"; index: number; resultIndex: number; }; } | { kind: "MakeMoveVec"; type: | { Some: TypeTag; } | { None: true | null; }; objects: ( | { kind: "Input"; index: number; value: unknown; type?: "object"; } | { kind: "Input"; index: number; value: unknown; type: "pure"; } | { kind: "GasCoin"; } | { kind: "Result"; index: number; } | { kind: "NestedResult"; index: number; resultIndex: number; })[]; })[]; } | { version: 2; sender?: string | null; expiration?: | EnumInputShape<{ None: true; Epoch: string | number; }> | null; gasData: { budget: string | number | null; price: string | number | null; owner: string | null; payment: object[] | null; }; inputs: EnumInputShape<{ Object: EnumInputShape<{ ImmOrOwnedObject: { objectId: string; version: string | number; digest: string; }; SharedObject: { objectId: string; initialSharedVersion: string | number; mutable: boolean; }; Receiving: { objectId: string; version: string | number; digest: string; }; }>; Pure: { bytes: string; }; UnresolvedPure: { value: unknown; }; UnresolvedObject: { objectId: string; version?: string | number | null; digest?: string | null; initialSharedVersion?: string | number | null; mutable?: boolean | null; }; }>[]; commands: EnumInputShape<{ MoveCall: { package: string; module: string; function: string; typeArguments: string[]; arguments: EnumInputShape<{ GasCoin: true; Input: number; Result: number; NestedResult: [number, number]; }>[]; }; TransferObjects: { objects: EnumInputShape<{ GasCoin: true; Input: number; Result: number; NestedResult: [number, number]; }>[]; address: EnumInputShape<{ GasCoin: true; Input: number; Result: number; NestedResult: [number, number]; }>; }; SplitCoins: { coin: EnumInputShape<{ GasCoin: true; Input: number; Result: number; NestedResult: [number, number]; }>; amounts: EnumInputShape<{ GasCoin: true; Input: number; Result: number; NestedResult: [number, number]; }>[]; }; MergeCoins: { destination: EnumInputShape<{ GasCoin: true; Input: number; Result: number; NestedResult: [number, number]; }>; sources: EnumInputShape<{ GasCoin: true; Input: number; Result: number; NestedResult: [number, number]; }>[]; }; Publish: { modules: string[]; dependencies: string[]; }; MakeMoveVec: { type: string | null; elements: EnumInputShape<{ GasCoin: true; Input: number; Result: number; NestedResult: [number, number]; }>[]; }; Upgrade: { modules: string[]; dependencies: string[]; package: string; ticket: EnumInputShape<{ GasCoin: true; Input: number; Result: number; NestedResult: [number, number]; }>; }; $Intent: { name: string; inputs: { [key: string]: | EnumInputShape<{ GasCoin: true; Input: number; Result: number; NestedResult: [..., ...]; }> | EnumInputShape<{ GasCoin: ...; Input: ...; Result: ...; NestedResult: ...; }>[]; }; data: { [key: string]: unknown; }; }; }>[]; } |
Returns
TransactionDataBuilder
getDigestFromBytes()
static getDigestFromBytes(bytes): string;
Generate transaction digest.
Parameters
| Parameter | Type | Description |
|---|---|---|
bytes | Uint8Array | BCS serialized transaction data |
Returns
string
transaction digest.
build()
build(__namedParameters?): Uint8Array;
Parameters
| Parameter | Type |
|---|---|
__namedParameters | { maxSizeBytes?: number; overrides?: { expiration?: EnumOutputShapeWithKeys<{ None: true; Epoch: string | number; }, "None" | "Epoch">; sender?: string; gasConfig?: Partial<{ budget: string | number | null; price: string | number | null; owner: string | null; payment: object[] | null; }>; gasData?: Partial<{ budget: string | number | null; price: string | number | null; owner: string | null; payment: object[] | null; }>; }; onlyTransactionKind?: boolean; } |
__namedParameters.maxSizeBytes? | number |
__namedParameters.overrides? | { expiration?: EnumOutputShapeWithKeys<{ None: true; Epoch: string | number; }, "None" | "Epoch">; sender?: string; gasConfig?: Partial<{ budget: string | number | null; price: string | number | null; owner: string | null; payment: object[] | null; }>; gasData?: Partial<{ budget: string | number | null; price: string | number | null; owner: string | null; payment: object[] | null; }>; } |
__namedParameters.overrides.expiration? | EnumOutputShapeWithKeys<{ None: true; Epoch: string | number; }, "None" | "Epoch"> |
__namedParameters.overrides.sender? | string |
__namedParameters.overrides.gasConfig? | Partial<{ budget: string | number | null; price: string | number | null; owner: string | null; payment: object[] | null; }> |
__namedParameters.overrides.gasData? | Partial<{ budget: string | number | null; price: string | number | null; owner: string | null; payment: object[] | null; }> |
__namedParameters.onlyTransactionKind? | boolean |
Returns
Uint8Array
addInput()
addInput<T>(type, arg): object;
Type Parameters
| Type Parameter |
|---|
T extends "object" | "pure" |
Parameters
| Parameter | Type |
|---|---|
type | T |
arg | EnumOutputShapeWithKeys |
Returns
object
| Name | Type | Default value |
|---|---|---|
Input | number | index |
type | T | - |
$kind | "Input" | - |
getInputUses()
getInputUses(index, fn): void;
Parameters
| Parameter | Type |
|---|---|
index | number |
fn | (arg, command) => void |
Returns
void
mapArguments()
mapArguments(fn): void;
Parameters
| Parameter | Type |
|---|---|
fn | (arg, command) => | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; } |
Returns
void
replaceCommand()
replaceCommand(index, replacement): void;
Parameters
| Parameter | Type |
|---|---|
index | number |
replacement | | Command | Command[] |
Returns
void
getDigest()
getDigest(): string;
Returns
string
snapshot()
snapshot(): object;
Returns
object
| Name | Type | Default value |
|---|---|---|
version | 2 | - |
sender? | string | null | - |
expiration? | | EnumOutputShapeWithKeys<{ None: true; Epoch: string | number; }, "None" | "Epoch"> | null | - |
gasData | object | GasData |
gasData.budget | string | number | null | - |
gasData.price | string | number | null | - |
gasData.owner | string | null | - |
gasData.payment | object[] | null | - |
inputs | EnumOutputShapeWithKeys<{ Object: EnumOutputShapeWithKeys<{ ImmOrOwnedObject: { objectId: string; version: string | number; digest: string; }; SharedObject: { objectId: string; initialSharedVersion: string | number; mutable: boolean; }; Receiving: { objectId: string; version: string | number; digest: string; }; }, "ImmOrOwnedObject" | "SharedObject" | "Receiving">; Pure: { bytes: string; }; UnresolvedPure: { value: unknown; }; UnresolvedObject: { objectId: string; version?: string | number | null; digest?: string | null; initialSharedVersion?: string | number | null; mutable?: boolean | null; }; }, "Pure" | "Object" | "UnresolvedPure" | "UnresolvedObject">[] | - |
commands | EnumOutputShapeWithKeys<{ MoveCall: { package: string; module: string; function: string; typeArguments: string[]; arguments: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; _argumentTypes?: object[] | null; }; TransferObjects: { objects: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; address: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; }; SplitCoins: { coin: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; amounts: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; }; MergeCoins: { destination: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; sources: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; }; Publish: { modules: string[]; dependencies: string[]; }; MakeMoveVec: { type: string | null; elements: ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; })[]; }; Upgrade: { modules: string[]; dependencies: string[]; package: string; ticket: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; }; }; $Intent: { name: string; inputs: { [key: string]: | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: "pure"; } | { $kind: "Input"; Input: number; type?: "object"; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [number, number]; } | ( | { $kind: "GasCoin"; GasCoin: true; } | { $kind: "Input"; Input: number; type?: ... | ...; } | { $kind: "Input"; Input: number; type?: ... | ...; } | { $kind: "Result"; Result: number; } | { $kind: "NestedResult"; NestedResult: [..., ...]; })[]; }; data: { [key: string]: unknown; }; }; }, | "MoveCall" | "TransferObjects" | "SplitCoins" | "MergeCoins" | "Publish" | "MakeMoveVec" | "Upgrade" | "$Intent">[] | - |