import { EncodeObject, GeneratedType } from "@shareledgerjs/signing"; import { Input, Output } from "@shareledgerjs/types/cosmos/bank/v1beta1/bank"; import { MsgMultiSend, MsgSend } from "@shareledgerjs/types/cosmos/bank/v1beta1/tx"; import { Coin } from "@shareledgerjs/types/cosmos/base/v1beta1/coin"; import { BaseClient } from "../../baseclient"; export declare function createBankTypes(): ReadonlyArray<[string, GeneratedType]>; export declare function createBankActions(): Record; export interface MsgSendEncodeObject extends EncodeObject { readonly typeUrl: "/cosmos.bank.v1beta1.MsgSend"; readonly value: Partial; } export declare function isMsgSendEncodeObject(encodeObject: EncodeObject): encodeObject is MsgSendEncodeObject; export interface MsgMultiSendEncodeObject extends EncodeObject { readonly typeUrl: "/cosmos.bank.v1beta1.MsgMultiSend"; readonly value: Partial; } export declare function isMsgMultiSendEncodeObject(encodeObject: EncodeObject): encodeObject is MsgMultiSendEncodeObject; export interface BankTxExtensionMethods { send(senderAddress: string, recipientAddress: string, amount: readonly Coin[]): MsgSendEncodeObject; multiSend(inputs: Input[], outputs: Output[]): MsgMultiSendEncodeObject; } export interface BankTxExtension { readonly bank: BankTxExtensionMethods; } export declare function BankTxExtension(constructor: T): T;