Commands: {
    Intent(__namedParameters: {
        data?: Record<string, unknown>;
        inputs?: Record<string,
            | {
                GasCoin: true;
            }
            | {
                Input: number;
                type?: "object" | "pure";
            }
            | {
                Result: number;
            }
            | {
                NestedResult: [number, number];
            }
            | (
                | {
                    GasCoin: true;
                }
                | {
                    Input: number;
                    type?: "object" | "pure";
                }
                | {
                    Result: number;
                }
                | {
                    NestedResult: [number, number];
                })[]>;
        name: string;
    }): TransactionShape<"$Intent">;
    MakeMoveVec(__namedParameters: {
        elements: (
            | {
                GasCoin: true;
            }
            | {
                Input: number;
                type?: "object" | "pure";
            }
            | {
                Result: number;
            }
            | {
                NestedResult: [number, number];
            })[];
        type?: string;
    }): TransactionShape<"MakeMoveVec">;
    MergeCoins(destination:
        | {
            GasCoin: true;
        }
        | {
            Input: number;
            type?: "object" | "pure";
        }
        | {
            Result: number;
        }
        | {
            NestedResult: [number, number];
        }, sources: (
        | {
            GasCoin: true;
        }
        | {
            Input: number;
            type?: "object" | "pure";
        }
        | {
            Result: number;
        }
        | {
            NestedResult: [number, number];
        })[]): TransactionShape<"MergeCoins">;
    MoveCall(input: {
        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];
            })[];
        function: string;
        module: string;
        package: 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];
            })[];
        target: string;
        typeArguments?: string[];
    }): TransactionShape<"MoveCall">;
    Publish(__namedParameters: {
        dependencies: string[];
        modules: string[] | number[][];
    }): TransactionShape<"Publish">;
    SplitCoins(coin:
        | {
            GasCoin: true;
        }
        | {
            Input: number;
            type?: "object" | "pure";
        }
        | {
            Result: number;
        }
        | {
            NestedResult: [number, number];
        }, amounts: (
        | {
            GasCoin: true;
        }
        | {
            Input: number;
            type?: "object" | "pure";
        }
        | {
            Result: number;
        }
        | {
            NestedResult: [number, number];
        })[]): TransactionShape<"SplitCoins">;
    TransferObjects(objects: (
        | {
            GasCoin: true;
        }
        | {
            Input: number;
            type?: "object" | "pure";
        }
        | {
            Result: number;
        }
        | {
            NestedResult: [number, number];
        })[], address:
        | {
            GasCoin: true;
        }
        | {
            Input: number;
            type?: "object" | "pure";
        }
        | {
            Result: number;
        }
        | {
            NestedResult: [number, number];
        }): TransactionShape<"TransferObjects">;
    Upgrade(__namedParameters: {
        dependencies: string[];
        modules: string[] | number[][];
        package: string;
        ticket:
            | {
                GasCoin: true;
            }
            | {
                Input: number;
                type?: "object" | "pure";
            }
            | {
                Result: number;
            }
            | {
                NestedResult: [number, number];
            };
    }): TransactionShape<"Upgrade">;
} = ...

Simple helpers used to construct transactions: