interface ParallelTransactionExecutorOptions {
    cache?: AsyncCache;
    client: SuiClient;
    coinBatchSize?: number;
    defaultGasBudget?: bigint;
    epochBoundaryWindow?: number;
    initialCoinBalance?: bigint;
    maxPoolSize?: number;
    minimumCoinBalance?: bigint;
    onEffects?: (
        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<
                                    {
                                        AddressDeniedForCoin: { address: ...; coinType: ... };
                                        ArityMismatch: true;
                                        CertificateDenied: true;
                                        CircularObjectOwnership: { object: ... };
                                        CoinBalanceOverflow: true;
                                        CoinTypeGlobalPause: { coinType: ... };
                                        CommandArgumentError: { argIdx: ...; kind: ... };
                                        EffectsTooLarge: { currentSize: ...; maxSize: ... };
                                        ExecutionCancelledDueToRandomnessUnavailable: true;
                                        ExecutionCancelledDueToSharedObjectCongestion: {
                                            congestedObjects: ...;
                                        };
                                        FeatureNotYetSupported: true;
                                        FunctionNotFound: true;
                                        InputObjectDeleted: true;
                                        InsufficientCoinBalance: true;
                                        InsufficientGas: true;
                                        InvalidGasObject: true;
                                        InvalidPublicFunctionReturnType: { idx: ... };
                                        InvalidTransferObject: true;
                                        InvariantViolation: true;
                                        MoveAbort: [(...), (...)];
                                        MoveObjectTooBig: { maxObjectSize: ...; objectSize: ... };
                                        MovePackageTooBig: { maxObjectSize: ...; objectSize: ... };
                                        MovePrimitiveRuntimeError: (...) | (...);
                                        NonEntryFunctionInvoked: true;
                                        PackageUpgradeError: { upgradeError: ... };
                                        PublishErrorNonZeroAddress: true;
                                        PublishUpgradeDependencyDowngrade: true;
                                        PublishUpgradeMissingDependency: true;
                                        SharedObjectOperationNotAllowed: true;
                                        SuiMoveVerificationError: true;
                                        SuiMoveVerificationTimedout: true;
                                        TypeArgumentError: { argumentIdx: ...; kind: ... };
                                        TypeArityMismatch: true;
                                        UnusedValueWithoutDrop: { resultIdx: ...; secondaryIdx: ... };
                                        VMInvariantViolation: true;
                                        VMVerificationOrDeserializationError: true;
                                        WrittenObjectsTooLarge: { currentSize: ...; maxSize: ... };
                                    },
                                    | "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"
                                    | "ExecutionCancelledDueToSharedObjectCongestion"
                                    | "AddressDeniedForCoin"
                                    | "CoinTypeGlobalPause"
                                    | "ExecutionCancelledDueToRandomnessUnavailable",
                                >;
                            };
                            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: [(...), (...)]; NotExist: true },
                                "NotExist" | "Exist",
                            >;
                            outputState: EnumOutputShapeWithKeys<
                                {
                                    NotExist: true;
                                    ObjectWrite: [(...), (...)];
                                    PackageWrite: [(...), (...)];
                                },
                                "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<
                                    {
                                        AddressDeniedForCoin: { address: ...; coinType: ... };
                                        ArityMismatch: true;
                                        CertificateDenied: true;
                                        CircularObjectOwnership: { object: ... };
                                        CoinBalanceOverflow: true;
                                        CoinTypeGlobalPause: { coinType: ... };
                                        CommandArgumentError: { argIdx: ...; kind: ... };
                                        EffectsTooLarge: { currentSize: ...; maxSize: ... };
                                        ExecutionCancelledDueToRandomnessUnavailable: true;
                                        ExecutionCancelledDueToSharedObjectCongestion: {
                                            congestedObjects: ...;
                                        };
                                        FeatureNotYetSupported: true;
                                        FunctionNotFound: true;
                                        InputObjectDeleted: true;
                                        InsufficientCoinBalance: true;
                                        InsufficientGas: true;
                                        InvalidGasObject: true;
                                        InvalidPublicFunctionReturnType: { idx: ... };
                                        InvalidTransferObject: true;
                                        InvariantViolation: true;
                                        MoveAbort: [(...), (...)];
                                        MoveObjectTooBig: { maxObjectSize: ...; objectSize: ... };
                                        MovePackageTooBig: { maxObjectSize: ...; objectSize: ... };
                                        MovePrimitiveRuntimeError: (...) | (...);
                                        NonEntryFunctionInvoked: true;
                                        PackageUpgradeError: { upgradeError: ... };
                                        PublishErrorNonZeroAddress: true;
                                        PublishUpgradeDependencyDowngrade: true;
                                        PublishUpgradeMissingDependency: true;
                                        SharedObjectOperationNotAllowed: true;
                                        SuiMoveVerificationError: true;
                                        SuiMoveVerificationTimedout: true;
                                        TypeArgumentError: { argumentIdx: ...; kind: ... };
                                        TypeArityMismatch: true;
                                        UnusedValueWithoutDrop: { resultIdx: ...; secondaryIdx: ... };
                                        VMInvariantViolation: true;
                                        VMVerificationOrDeserializationError: true;
                                        WrittenObjectsTooLarge: { currentSize: ...; maxSize: ... };
                                    },
                                    | "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"
                                    | "ExecutionCancelledDueToSharedObjectCongestion"
                                    | "AddressDeniedForCoin"
                                    | "CoinTypeGlobalPause"
                                    | "ExecutionCancelledDueToRandomnessUnavailable",
                                >;
                            };
                            Success: true;
                        },
                        "Success"
                        | "Failed",
                    >;
                    transactionDigest: string;
                    unchangedSharedObjects: [
                        string,
                        EnumOutputShapeWithKeys<
                            {
                                Cancelled: string;
                                MutateDeleted: string;
                                PerEpochConfig: true;
                                ReadDeleted: string;
                                ReadOnlyRoot: [string, string];
                            },
                            | "ReadOnlyRoot"
                            | "MutateDeleted"
                            | "ReadDeleted"
                            | "Cancelled"
                            | "PerEpochConfig",
                        >,
                    ][];
                };
            },
            "V1"
            | "V2",
        >,
    ) => Promise<void>;
    signer: Signer;
    sourceCoins?: string[];
}

Hierarchy

  • Omit<ObjectCacheOptions, "address">
    • ParallelTransactionExecutorOptions

Properties

cache?: AsyncCache
client: SuiClient
coinBatchSize?: number

The number of coins to create in a batch when refilling the gas pool

defaultGasBudget?: bigint

The gasBudget to use if the transaction has not defined it's own gasBudget, defaults to minimumCoinBalance

epochBoundaryWindow?: number

Time to wait before/after the expected epoch boundary before re-fetching the gas pool (in milliseconds). Building transactions will be paused for up to 2x this duration around each epoch boundary to ensure the gas price is up-to-date for the next epoch.

initialCoinBalance?: bigint

The initial balance of each coin created for the gas pool

maxPoolSize?: number

The maximum number of transactions that can be execute in parallel, this also determines the maximum number of gas coins that will be created

minimumCoinBalance?: bigint

The minimum balance of a coin that can be reused for future transactions. If the gasCoin is below this value, it will be used when refilling the gasPool

onEffects?: (
    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<
                                {
                                    AddressDeniedForCoin: { address: ...; coinType: ... };
                                    ArityMismatch: true;
                                    CertificateDenied: true;
                                    CircularObjectOwnership: { object: ... };
                                    CoinBalanceOverflow: true;
                                    CoinTypeGlobalPause: { coinType: ... };
                                    CommandArgumentError: { argIdx: ...; kind: ... };
                                    EffectsTooLarge: { currentSize: ...; maxSize: ... };
                                    ExecutionCancelledDueToRandomnessUnavailable: true;
                                    ExecutionCancelledDueToSharedObjectCongestion: {
                                        congestedObjects: ...;
                                    };
                                    FeatureNotYetSupported: true;
                                    FunctionNotFound: true;
                                    InputObjectDeleted: true;
                                    InsufficientCoinBalance: true;
                                    InsufficientGas: true;
                                    InvalidGasObject: true;
                                    InvalidPublicFunctionReturnType: { idx: ... };
                                    InvalidTransferObject: true;
                                    InvariantViolation: true;
                                    MoveAbort: [(...), (...)];
                                    MoveObjectTooBig: { maxObjectSize: ...; objectSize: ... };
                                    MovePackageTooBig: { maxObjectSize: ...; objectSize: ... };
                                    MovePrimitiveRuntimeError: (...) | (...);
                                    NonEntryFunctionInvoked: true;
                                    PackageUpgradeError: { upgradeError: ... };
                                    PublishErrorNonZeroAddress: true;
                                    PublishUpgradeDependencyDowngrade: true;
                                    PublishUpgradeMissingDependency: true;
                                    SharedObjectOperationNotAllowed: true;
                                    SuiMoveVerificationError: true;
                                    SuiMoveVerificationTimedout: true;
                                    TypeArgumentError: { argumentIdx: ...; kind: ... };
                                    TypeArityMismatch: true;
                                    UnusedValueWithoutDrop: { resultIdx: ...; secondaryIdx: ... };
                                    VMInvariantViolation: true;
                                    VMVerificationOrDeserializationError: true;
                                    WrittenObjectsTooLarge: { currentSize: ...; maxSize: ... };
                                },
                                | "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"
                                | "ExecutionCancelledDueToSharedObjectCongestion"
                                | "AddressDeniedForCoin"
                                | "CoinTypeGlobalPause"
                                | "ExecutionCancelledDueToRandomnessUnavailable",
                            >;
                        };
                        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: [(...), (...)]; NotExist: true },
                            "NotExist" | "Exist",
                        >;
                        outputState: EnumOutputShapeWithKeys<
                            {
                                NotExist: true;
                                ObjectWrite: [(...), (...)];
                                PackageWrite: [(...), (...)];
                            },
                            "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<
                                {
                                    AddressDeniedForCoin: { address: ...; coinType: ... };
                                    ArityMismatch: true;
                                    CertificateDenied: true;
                                    CircularObjectOwnership: { object: ... };
                                    CoinBalanceOverflow: true;
                                    CoinTypeGlobalPause: { coinType: ... };
                                    CommandArgumentError: { argIdx: ...; kind: ... };
                                    EffectsTooLarge: { currentSize: ...; maxSize: ... };
                                    ExecutionCancelledDueToRandomnessUnavailable: true;
                                    ExecutionCancelledDueToSharedObjectCongestion: {
                                        congestedObjects: ...;
                                    };
                                    FeatureNotYetSupported: true;
                                    FunctionNotFound: true;
                                    InputObjectDeleted: true;
                                    InsufficientCoinBalance: true;
                                    InsufficientGas: true;
                                    InvalidGasObject: true;
                                    InvalidPublicFunctionReturnType: { idx: ... };
                                    InvalidTransferObject: true;
                                    InvariantViolation: true;
                                    MoveAbort: [(...), (...)];
                                    MoveObjectTooBig: { maxObjectSize: ...; objectSize: ... };
                                    MovePackageTooBig: { maxObjectSize: ...; objectSize: ... };
                                    MovePrimitiveRuntimeError: (...) | (...);
                                    NonEntryFunctionInvoked: true;
                                    PackageUpgradeError: { upgradeError: ... };
                                    PublishErrorNonZeroAddress: true;
                                    PublishUpgradeDependencyDowngrade: true;
                                    PublishUpgradeMissingDependency: true;
                                    SharedObjectOperationNotAllowed: true;
                                    SuiMoveVerificationError: true;
                                    SuiMoveVerificationTimedout: true;
                                    TypeArgumentError: { argumentIdx: ...; kind: ... };
                                    TypeArityMismatch: true;
                                    UnusedValueWithoutDrop: { resultIdx: ...; secondaryIdx: ... };
                                    VMInvariantViolation: true;
                                    VMVerificationOrDeserializationError: true;
                                    WrittenObjectsTooLarge: { currentSize: ...; maxSize: ... };
                                },
                                | "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"
                                | "ExecutionCancelledDueToSharedObjectCongestion"
                                | "AddressDeniedForCoin"
                                | "CoinTypeGlobalPause"
                                | "ExecutionCancelledDueToRandomnessUnavailable",
                            >;
                        };
                        Success: true;
                    },
                    "Success"
                    | "Failed",
                >;
                transactionDigest: string;
                unchangedSharedObjects: [
                    string,
                    EnumOutputShapeWithKeys<
                        {
                            Cancelled: string;
                            MutateDeleted: string;
                            PerEpochConfig: true;
                            ReadDeleted: string;
                            ReadOnlyRoot: [string, string];
                        },
                        | "ReadOnlyRoot"
                        | "MutateDeleted"
                        | "ReadDeleted"
                        | "Cancelled"
                        | "PerEpochConfig",
                    >,
                ][];
            };
        },
        "V1"
        | "V2",
    >,
) => Promise<void>
signer: Signer
sourceCoins?: string[]

An initial list of coins used to fund the gas pool, uses all owned SUI coins by default