import { MsgTransfer as BaseMsgTransfer } from '@routerprotocol/chain-api/ibc/applications/transfer/v1/tx_pb';
import { MsgBase } from '../../MsgBase';
export declare namespace MsgTransfer {
    interface Params {
        amount: {
            denom: string;
            amount: string;
        };
        sender: string;
        port: string;
        receiver: string;
        channelId: string;
        timeout?: number;
        height?: {
            revisionHeight: number;
            revisionNumber: number;
        };
    }
    interface DirectSign {
        type: '/ibc.applications.transfer.v1.MsgTransfer';
        message: BaseMsgTransfer;
    }
    interface Data extends BaseMsgTransfer.AsObject {
        '@type': '/ibc.applications.transfer.v1.MsgTransfer';
    }
    interface Amino extends BaseMsgTransfer.AsObject {
        type: 'cosmos-sdk/MsgTransfer';
    }
    interface Web3 extends BaseMsgTransfer.AsObject {
        '@type': '/ibc.applications.transfer.v1.MsgTransfer';
    }
    type Proto = BaseMsgTransfer;
}
/**
 * @group Message
 */
export default class MsgTransfer extends MsgBase<MsgTransfer.Params, MsgTransfer.Data, MsgTransfer.Proto, MsgTransfer.Amino, MsgTransfer.DirectSign> {
    static fromJSON(params: MsgTransfer.Params): MsgTransfer;
    toProto(): MsgTransfer.Proto;
    toData(): MsgTransfer.Data;
    toAmino(): MsgTransfer.Amino;
    toWeb3(): MsgTransfer.Web3;
    toDirectSign(): MsgTransfer.DirectSign;
}
