import { Coin, CoinAmino } from "../../../../cosmos/base/v1beta1/coin"; import { Height, HeightAmino, Params, ParamsAmino } from "../../../core/client/v1/client"; import { BinaryReader, BinaryWriter } from "../../../../binary"; import { TxRpc } from "../../../../types"; export declare const protobufPackage = "ibc.applications.transfer.v1"; /** * MsgTransfer defines a msg to transfer fungible tokens (i.e Coins) between * ICS20 enabled chains. See ICS Spec here: * https://github.com/cosmos/ibc/tree/master/spec/app/ics-020-fungible-token-transfer#data-structures */ export interface MsgTransfer { /** the port on which the packet will be sent */ sourcePort: string; /** the channel by which the packet will be sent */ sourceChannel: string; /** token to be transferred */ token: Coin | undefined; /** the sender address */ sender: string; /** the recipient address on the destination chain */ receiver: string; /** * Timeout height relative to the current block height. * If you are sending with IBC v1 protocol, either timeout_height or timeout_timestamp must be set. * If you are sending with IBC v2 protocol, timeout_timestamp must be set, and timeout_height must be omitted. */ timeoutHeight: Height | undefined; /** * Timeout timestamp in absolute nanoseconds since unix epoch. * If you are sending with IBC v1 protocol, either timeout_height or timeout_timestamp must be set. * If you are sending with IBC v2 protocol, timeout_timestamp must be set. */ timeoutTimestamp: bigint; /** optional memo */ memo: string; /** optional encoding */ encoding: string; } export interface MsgTransferProtoMsg { typeUrl: "/ibc.applications.transfer.v1.MsgTransfer"; value: Uint8Array; } /** * MsgTransfer defines a msg to transfer fungible tokens (i.e Coins) between * ICS20 enabled chains. See ICS Spec here: * https://github.com/cosmos/ibc/tree/master/spec/app/ics-020-fungible-token-transfer#data-structures */ export interface MsgTransferAmino { /** the port on which the packet will be sent */ source_port?: string; /** the channel by which the packet will be sent */ source_channel?: string; /** token to be transferred */ token: CoinAmino | undefined; /** the sender address */ sender?: string; /** the recipient address on the destination chain */ receiver?: string; /** * Timeout height relative to the current block height. * If you are sending with IBC v1 protocol, either timeout_height or timeout_timestamp must be set. * If you are sending with IBC v2 protocol, timeout_timestamp must be set, and timeout_height must be omitted. */ timeout_height: HeightAmino | undefined; /** * Timeout timestamp in absolute nanoseconds since unix epoch. * If you are sending with IBC v1 protocol, either timeout_height or timeout_timestamp must be set. * If you are sending with IBC v2 protocol, timeout_timestamp must be set. */ timeout_timestamp?: string; /** optional memo */ memo?: string; /** optional encoding */ encoding?: string; } export interface MsgTransferAminoMsg { type: "cosmos-sdk/MsgTransfer"; value: MsgTransferAmino; } /** MsgTransferResponse defines the Msg/Transfer response type. */ export interface MsgTransferResponse { /** sequence number of the transfer packet sent */ sequence: bigint; } export interface MsgTransferResponseProtoMsg { typeUrl: "/ibc.applications.transfer.v1.MsgTransferResponse"; value: Uint8Array; } /** MsgTransferResponse defines the Msg/Transfer response type. */ export interface MsgTransferResponseAmino { /** sequence number of the transfer packet sent */ sequence?: string; } export interface MsgTransferResponseAminoMsg { type: "cosmos-sdk/MsgTransferResponse"; value: MsgTransferResponseAmino; } /** MsgUpdateParams is the Msg/UpdateParams request type. */ export interface MsgUpdateParams { /** signer address */ signer: string; /** * params defines the transfer parameters to update. * * NOTE: All parameters must be supplied. */ params: Params | undefined; } export interface MsgUpdateParamsProtoMsg { typeUrl: "/ibc.applications.transfer.v1.MsgUpdateParams"; value: Uint8Array; } /** MsgUpdateParams is the Msg/UpdateParams request type. */ export interface MsgUpdateParamsAmino { /** signer address */ signer?: string; /** * params defines the transfer parameters to update. * * NOTE: All parameters must be supplied. */ params?: ParamsAmino | undefined; } export interface MsgUpdateParamsAminoMsg { type: "cosmos-sdk/MsgUpdateParams"; value: MsgUpdateParamsAmino; } /** * MsgUpdateParamsResponse defines the response structure for executing a * MsgUpdateParams message. */ export interface MsgUpdateParamsResponse { } export interface MsgUpdateParamsResponseProtoMsg { typeUrl: "/ibc.applications.transfer.v1.MsgUpdateParamsResponse"; value: Uint8Array; } /** * MsgUpdateParamsResponse defines the response structure for executing a * MsgUpdateParams message. */ export interface MsgUpdateParamsResponseAmino { } export interface MsgUpdateParamsResponseAminoMsg { type: "cosmos-sdk/MsgUpdateParamsResponse"; value: MsgUpdateParamsResponseAmino; } export declare const MsgTransfer: { typeUrl: string; encode(message: MsgTransfer, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): MsgTransfer; fromJSON(object: any): MsgTransfer; toJSON(message: MsgTransfer): unknown; fromPartial(object: Partial): MsgTransfer; fromAmino(object: MsgTransferAmino): MsgTransfer; toAmino(message: MsgTransfer): MsgTransferAmino; fromAminoMsg(object: MsgTransferAminoMsg): MsgTransfer; toAminoMsg(message: MsgTransfer): MsgTransferAminoMsg; fromProtoMsg(message: MsgTransferProtoMsg): MsgTransfer; toProto(message: MsgTransfer): Uint8Array; toProtoMsg(message: MsgTransfer): MsgTransferProtoMsg; }; export declare const MsgTransferResponse: { typeUrl: string; encode(message: MsgTransferResponse, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): MsgTransferResponse; fromJSON(object: any): MsgTransferResponse; toJSON(message: MsgTransferResponse): unknown; fromPartial(object: Partial): MsgTransferResponse; fromAmino(object: MsgTransferResponseAmino): MsgTransferResponse; toAmino(message: MsgTransferResponse): MsgTransferResponseAmino; fromAminoMsg(object: MsgTransferResponseAminoMsg): MsgTransferResponse; toAminoMsg(message: MsgTransferResponse): MsgTransferResponseAminoMsg; fromProtoMsg(message: MsgTransferResponseProtoMsg): MsgTransferResponse; toProto(message: MsgTransferResponse): Uint8Array; toProtoMsg(message: MsgTransferResponse): MsgTransferResponseProtoMsg; }; export declare const MsgUpdateParams: { typeUrl: string; encode(message: MsgUpdateParams, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): MsgUpdateParams; fromJSON(object: any): MsgUpdateParams; toJSON(message: MsgUpdateParams): unknown; fromPartial(object: Partial): MsgUpdateParams; fromAmino(object: MsgUpdateParamsAmino): MsgUpdateParams; toAmino(message: MsgUpdateParams): MsgUpdateParamsAmino; fromAminoMsg(object: MsgUpdateParamsAminoMsg): MsgUpdateParams; toAminoMsg(message: MsgUpdateParams): MsgUpdateParamsAminoMsg; fromProtoMsg(message: MsgUpdateParamsProtoMsg): MsgUpdateParams; toProto(message: MsgUpdateParams): Uint8Array; toProtoMsg(message: MsgUpdateParams): MsgUpdateParamsProtoMsg; }; export declare const MsgUpdateParamsResponse: { typeUrl: string; encode(_: MsgUpdateParamsResponse, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): MsgUpdateParamsResponse; fromJSON(_: any): MsgUpdateParamsResponse; toJSON(_: MsgUpdateParamsResponse): unknown; fromPartial(_: Partial): MsgUpdateParamsResponse; fromAmino(_: MsgUpdateParamsResponseAmino): MsgUpdateParamsResponse; toAmino(_: MsgUpdateParamsResponse): MsgUpdateParamsResponseAmino; fromAminoMsg(object: MsgUpdateParamsResponseAminoMsg): MsgUpdateParamsResponse; toAminoMsg(message: MsgUpdateParamsResponse): MsgUpdateParamsResponseAminoMsg; fromProtoMsg(message: MsgUpdateParamsResponseProtoMsg): MsgUpdateParamsResponse; toProto(message: MsgUpdateParamsResponse): Uint8Array; toProtoMsg(message: MsgUpdateParamsResponse): MsgUpdateParamsResponseProtoMsg; }; /** Msg defines the ibc/transfer Msg service. */ export interface Msg { /** Transfer defines a rpc handler method for MsgTransfer. */ Transfer(request: MsgTransfer): Promise; /** UpdateParams defines a rpc handler for MsgUpdateParams. */ UpdateParams(request: MsgUpdateParams): Promise; } export declare class MsgClientImpl implements Msg { private readonly rpc; constructor(rpc: TxRpc); Transfer(request: MsgTransfer): Promise; UpdateParams(request: MsgUpdateParams): Promise; }