Class SerialTransactionExecutor
Constructors
constructor
- new SerialTransactionExecutor(__namedParameters): SerialTransactionExecutor
Parameters
- __namedParameters: Omit<ObjectCacheOptions, "address"> & {
client: SuiClient;
signer: Signer;
}
Methods
applyEffects
- applyEffects(effects): Promise<[void, void]>
Parameters
- effects: EnumOutputShapeWithKeys<{
V1: {
created: [{
digest: string;
objectId: string;
version: string;
}, EnumOutputShapeWithKeys<{
AddressOwner: string;
Immutable: true;
ObjectOwner: string;
Shared: {
initialSharedVersion: string;
};
}, "AddressOwner" | "ObjectOwner" | "Shared" | "Immutable">][];
deleted: {
digest: string;
objectId: string;
version: string;
}[];
dependencies: string[];
eventsDigest: null | string;
executedEpoch: string;
gasObject: [{
digest: string;
objectId: string;
version: string;
}, EnumOutputShapeWithKeys<{
AddressOwner: string;
Immutable: true;
ObjectOwner: string;
Shared: {
initialSharedVersion: string;
};
}, "AddressOwner" | "ObjectOwner" | "Shared" | "Immutable">];
gasUsed: {
computationCost: string;
nonRefundableStorageFee: string;
storageCost: string;
storageRebate: string;
};
modifiedAtVersions: [string, string][];
mutated: [{
digest: string;
objectId: string;
version: string;
}, EnumOutputShapeWithKeys<{
AddressOwner: string;
Immutable: true;
ObjectOwner: string;
Shared: {
initialSharedVersion: string;
};
}, "AddressOwner" | "ObjectOwner" | "Shared" | "Immutable">][];
sharedObjects: {
digest: string;
objectId: string;
version: string;
}[];
status: EnumOutputShapeWithKeys<{
Failed: {
command: null | string;
error: EnumOutputShapeWithKeys<{
ArityMismatch: true;
CertificateDenied: true;
CircularObjectOwnership: {
object: string;
};
CoinBalanceOverflow: true;
CommandArgumentError: {
argIdx: number;
kind: EnumOutputShapeWithKeys<{
IndexOutOfBounds: ...;
InvalidArgumentToPrivateEntryFunction: ...;
InvalidBCSBytes: ...;
InvalidGasCoinUsage: ...;
InvalidObjectByMutRef: ...;
InvalidObjectByValue: ...;
InvalidResultArity: ...;
InvalidUsageOfPureArg: ...;
InvalidValueUsage: ...;
SecondaryIndexOutOfBounds: ...;
SharedObjectOperationNotAllowed: ...;
TypeMismatch: ...;
}, (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...)>;
};
EffectsTooLarge: {
currentSize: string;
maxSize: string;
};
FeatureNotYetSupported: true;
FunctionNotFound: true;
InputObjectDeleted: true;
InsufficientCoinBalance: true;
InsufficientGas: true;
InvalidGasObject: true;
InvalidPublicFunctionReturnType: {
idx: number;
};
InvalidTransferObject: true;
InvariantViolation: true;
MoveAbort: [{
function: number;
functionName: (...) | (...);
instruction: number;
module: {
address: ...;
name: ...;
};
}, string];
MoveObjectTooBig: {
maxObjectSize: string;
objectSize: string;
};
MovePackageTooBig: {
maxObjectSize: string;
objectSize: string;
};
MovePrimitiveRuntimeError: null | {
function: number;
functionName: (...) | (...);
instruction: number;
module: {
address: ...;
name: ...;
};
};
NonEntryFunctionInvoked: true;
PackageUpgradeError: {
upgradeError: EnumOutputShapeWithKeys<{
DigestDoesNotMatch: ...;
IncompatibleUpgrade: ...;
NotAPackage: ...;
PackageIDDoesNotMatch: ...;
UnableToFetchPackage: ...;
UnknownUpgradePolicy: ...;
}, (...) | (...) | (...) | (...) | (...) | (...)>;
};
PublishErrorNonZeroAddress: true;
PublishUpgradeDependencyDowngrade: true;
PublishUpgradeMissingDependency: true;
SharedObjectOperationNotAllowed: true;
SuiMoveVerificationError: true;
SuiMoveVerificationTimedout: true;
TypeArgumentError: {
argumentIdx: number;
kind: EnumOutputShapeWithKeys<{
ConstraintNotSatisfied: ...;
TypeNotFound: ...;
}, (...) | (...)>;
};
TypeArityMismatch: true;
UnusedValueWithoutDrop: {
resultIdx: number;
secondaryIdx: number;
};
VMInvariantViolation: true;
VMVerificationOrDeserializationError: true;
WrittenObjectsTooLarge: {
currentSize: string;
maxSize: string;
};
}, "PackageUpgradeError" | "SharedObjectOperationNotAllowed" | "CommandArgumentError" | "TypeArgumentError" | "InsufficientGas" | "InvalidGasObject" | "InvariantViolation" | "FeatureNotYetSupported" | "MoveObjectTooBig" | "MovePackageTooBig" | "CircularObjectOwnership" | "InsufficientCoinBalance" | "CoinBalanceOverflow" | "PublishErrorNonZeroAddress" | "SuiMoveVerificationError" | "MovePrimitiveRuntimeError" | "MoveAbort" | "VMVerificationOrDeserializationError" | "VMInvariantViolation" | "FunctionNotFound" | "ArityMismatch" | "TypeArityMismatch" | "NonEntryFunctionInvoked" | "UnusedValueWithoutDrop" | "InvalidPublicFunctionReturnType" | "InvalidTransferObject" | "EffectsTooLarge" | "PublishUpgradeMissingDependency" | "PublishUpgradeDependencyDowngrade" | "WrittenObjectsTooLarge" | "CertificateDenied" | "SuiMoveVerificationTimedout" | "InputObjectDeleted">;
};
Success: true;
}, "Success" | "Failed">;
transactionDigest: string;
unwrapped: [{
digest: string;
objectId: string;
version: string;
}, EnumOutputShapeWithKeys<{
AddressOwner: string;
Immutable: true;
ObjectOwner: string;
Shared: {
initialSharedVersion: string;
};
}, "AddressOwner" | "ObjectOwner" | "Shared" | "Immutable">][];
unwrappedThenDeleted: {
digest: string;
objectId: string;
version: string;
}[];
wrapped: {
digest: string;
objectId: string;
version: string;
}[];
};
V2: {
auxDataDigest: null | string;
changedObjects: [string, {
idOperation: EnumOutputShapeWithKeys<{
Created: true;
Deleted: true;
None: true;
}, "None" | "Created" | "Deleted">;
inputState: EnumOutputShapeWithKeys<{
Exist: [[string, string], EnumOutputShapeWithKeys<{
AddressOwner: ...;
Immutable: ...;
ObjectOwner: ...;
Shared: ...;
}, (...) | (...) | (...) | (...)>];
NotExist: true;
}, "NotExist" | "Exist">;
outputState: EnumOutputShapeWithKeys<{
NotExist: true;
ObjectWrite: [string, EnumOutputShapeWithKeys<{
AddressOwner: ...;
Immutable: ...;
ObjectOwner: ...;
Shared: ...;
}, (...) | (...) | (...) | (...)>];
PackageWrite: [string, string];
}, "NotExist" | "ObjectWrite" | "PackageWrite">;
}][];
dependencies: string[];
eventsDigest: null | string;
executedEpoch: string;
gasObjectIndex: null | number;
gasUsed: {
computationCost: string;
nonRefundableStorageFee: string;
storageCost: string;
storageRebate: string;
};
lamportVersion: string;
status: EnumOutputShapeWithKeys<{
Failed: {
command: null | string;
error: EnumOutputShapeWithKeys<{
ArityMismatch: true;
CertificateDenied: true;
CircularObjectOwnership: {
object: string;
};
CoinBalanceOverflow: true;
CommandArgumentError: {
argIdx: number;
kind: EnumOutputShapeWithKeys<{
IndexOutOfBounds: ...;
InvalidArgumentToPrivateEntryFunction: ...;
InvalidBCSBytes: ...;
InvalidGasCoinUsage: ...;
InvalidObjectByMutRef: ...;
InvalidObjectByValue: ...;
InvalidResultArity: ...;
InvalidUsageOfPureArg: ...;
InvalidValueUsage: ...;
SecondaryIndexOutOfBounds: ...;
SharedObjectOperationNotAllowed: ...;
TypeMismatch: ...;
}, (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...) | (...)>;
};
EffectsTooLarge: {
currentSize: string;
maxSize: string;
};
FeatureNotYetSupported: true;
FunctionNotFound: true;
InputObjectDeleted: true;
InsufficientCoinBalance: true;
InsufficientGas: true;
InvalidGasObject: true;
InvalidPublicFunctionReturnType: {
idx: number;
};
InvalidTransferObject: true;
InvariantViolation: true;
MoveAbort: [{
function: number;
functionName: (...) | (...);
instruction: number;
module: {
address: ...;
name: ...;
};
}, string];
MoveObjectTooBig: {
maxObjectSize: string;
objectSize: string;
};
MovePackageTooBig: {
maxObjectSize: string;
objectSize: string;
};
MovePrimitiveRuntimeError: null | {
function: number;
functionName: (...) | (...);
instruction: number;
module: {
address: ...;
name: ...;
};
};
NonEntryFunctionInvoked: true;
PackageUpgradeError: {
upgradeError: EnumOutputShapeWithKeys<{
DigestDoesNotMatch: ...;
IncompatibleUpgrade: ...;
NotAPackage: ...;
PackageIDDoesNotMatch: ...;
UnableToFetchPackage: ...;
UnknownUpgradePolicy: ...;
}, (...) | (...) | (...) | (...) | (...) | (...)>;
};
PublishErrorNonZeroAddress: true;
PublishUpgradeDependencyDowngrade: true;
PublishUpgradeMissingDependency: true;
SharedObjectOperationNotAllowed: true;
SuiMoveVerificationError: true;
SuiMoveVerificationTimedout: true;
TypeArgumentError: {
argumentIdx: number;
kind: EnumOutputShapeWithKeys<{
ConstraintNotSatisfied: ...;
TypeNotFound: ...;
}, (...) | (...)>;
};
TypeArityMismatch: true;
UnusedValueWithoutDrop: {
resultIdx: number;
secondaryIdx: number;
};
VMInvariantViolation: true;
VMVerificationOrDeserializationError: true;
WrittenObjectsTooLarge: {
currentSize: string;
maxSize: string;
};
}, "PackageUpgradeError" | "SharedObjectOperationNotAllowed" | "CommandArgumentError" | "TypeArgumentError" | "InsufficientGas" | "InvalidGasObject" | "InvariantViolation" | "FeatureNotYetSupported" | "MoveObjectTooBig" | "MovePackageTooBig" | "CircularObjectOwnership" | "InsufficientCoinBalance" | "CoinBalanceOverflow" | "PublishErrorNonZeroAddress" | "SuiMoveVerificationError" | "MovePrimitiveRuntimeError" | "MoveAbort" | "VMVerificationOrDeserializationError" | "VMInvariantViolation" | "FunctionNotFound" | "ArityMismatch" | "TypeArityMismatch" | "NonEntryFunctionInvoked" | "UnusedValueWithoutDrop" | "InvalidPublicFunctionReturnType" | "InvalidTransferObject" | "EffectsTooLarge" | "PublishUpgradeMissingDependency" | "PublishUpgradeDependencyDowngrade" | "WrittenObjectsTooLarge" | "CertificateDenied" | "SuiMoveVerificationTimedout" | "InputObjectDeleted">;
};
Success: true;
}, "Success" | "Failed">;
transactionDigest: string;
unchangedSharedObjects: [string, EnumOutputShapeWithKeys<{
MutateDeleted: string;
ReadDeleted: string;
ReadOnlyRoot: [string, string];
}, "ReadOnlyRoot" | "MutateDeleted" | "ReadDeleted">][];
};
}, "V1" | "V2">
Returns Promise<[void, void]>
buildTransaction
- buildTransaction(transaction): Promise<Uint8Array>
Returns Promise<Uint8Array>
executeTransaction
- executeTransaction(transaction): Promise<{
digest: string;
effects: string;
}> Returns Promise<{
digest: string;
effects: string;
}>
resetCache
- resetCache(): Promise<[void, void]>
Returns Promise<[void, void]>