import { MsgSendPacket, MsgRecvPacket, MsgTimeout, MsgAcknowledgement } from "./tx";
export const registry = [["/ibc.core.channel.v2.MsgSendPacket", MsgSendPacket], ["/ibc.core.channel.v2.MsgRecvPacket", MsgRecvPacket], ["/ibc.core.channel.v2.MsgTimeout", MsgTimeout], ["/ibc.core.channel.v2.MsgAcknowledgement", MsgAcknowledgement]];
export const MessageComposer = {
    encoded: {
        sendPacket(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgSendPacket",
                value: MsgSendPacket.encode(value).finish()
            };
        },
        recvPacket(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgRecvPacket",
                value: MsgRecvPacket.encode(value).finish()
            };
        },
        timeout(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgTimeout",
                value: MsgTimeout.encode(value).finish()
            };
        },
        acknowledgement(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgAcknowledgement",
                value: MsgAcknowledgement.encode(value).finish()
            };
        }
    },
    withTypeUrl: {
        sendPacket(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgSendPacket",
                value
            };
        },
        recvPacket(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgRecvPacket",
                value
            };
        },
        timeout(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgTimeout",
                value
            };
        },
        acknowledgement(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgAcknowledgement",
                value
            };
        }
    },
    fromPartial: {
        sendPacket(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgSendPacket",
                value: MsgSendPacket.fromPartial(value)
            };
        },
        recvPacket(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgRecvPacket",
                value: MsgRecvPacket.fromPartial(value)
            };
        },
        timeout(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgTimeout",
                value: MsgTimeout.fromPartial(value)
            };
        },
        acknowledgement(value) {
            return {
                typeUrl: "/ibc.core.channel.v2.MsgAcknowledgement",
                value: MsgAcknowledgement.fromPartial(value)
            };
        }
    }
};
