import { Coin, CoinAmino, CoinSDKType } from "../../../../cosmos/base/v1beta1/coin";
import { PacketId, PacketIdAmino, PacketIdSDKType } from "../../../core/channel/v1/channel";
import { BinaryReader, BinaryWriter } from "../../../../binary";
/** Fee defines the ICS29 receive, acknowledgement and timeout fees */
export interface Fee {
/** the packet receive fee */
recvFee: Coin[];
/** the packet acknowledgement fee */
ackFee: Coin[];
/** the packet timeout fee */
timeoutFee: Coin[];
}
export interface FeeProtoMsg {
typeUrl: "/ibc.applications.fee.v1.Fee";
value: Uint8Array;
}
/** Fee defines the ICS29 receive, acknowledgement and timeout fees */
export interface FeeAmino {
/** the packet receive fee */
recv_fee?: CoinAmino[];
/** the packet acknowledgement fee */
ack_fee?: CoinAmino[];
/** the packet timeout fee */
timeout_fee?: CoinAmino[];
}
export interface FeeAminoMsg {
type: "cosmos-sdk/Fee";
value: FeeAmino;
}
/** Fee defines the ICS29 receive, acknowledgement and timeout fees */
export interface FeeSDKType {
recv_fee: CoinSDKType[];
ack_fee: CoinSDKType[];
timeout_fee: CoinSDKType[];
}
/** PacketFee contains ICS29 relayer fees, refund address and optional list of permitted relayers */
export interface PacketFee {
/** fee encapsulates the recv, ack and timeout fees associated with an IBC packet */
fee: Fee;
/** the refund address for unspent fees */
refundAddress: string;
/** optional list of relayers permitted to receive fees */
relayers: string[];
}
export interface PacketFeeProtoMsg {
typeUrl: "/ibc.applications.fee.v1.PacketFee";
value: Uint8Array;
}
/** PacketFee contains ICS29 relayer fees, refund address and optional list of permitted relayers */
export interface PacketFeeAmino {
/** fee encapsulates the recv, ack and timeout fees associated with an IBC packet */
fee?: FeeAmino;
/** the refund address for unspent fees */
refund_address?: string;
/** optional list of relayers permitted to receive fees */
relayers?: string[];
}
export interface PacketFeeAminoMsg {
type: "cosmos-sdk/PacketFee";
value: PacketFeeAmino;
}
/** PacketFee contains ICS29 relayer fees, refund address and optional list of permitted relayers */
export interface PacketFeeSDKType {
fee: FeeSDKType;
refund_address: string;
relayers: string[];
}
/** PacketFees contains a list of type PacketFee */
export interface PacketFees {
/** list of packet fees */
packetFees: PacketFee[];
}
export interface PacketFeesProtoMsg {
typeUrl: "/ibc.applications.fee.v1.PacketFees";
value: Uint8Array;
}
/** PacketFees contains a list of type PacketFee */
export interface PacketFeesAmino {
/** list of packet fees */
packet_fees?: PacketFeeAmino[];
}
export interface PacketFeesAminoMsg {
type: "cosmos-sdk/PacketFees";
value: PacketFeesAmino;
}
/** PacketFees contains a list of type PacketFee */
export interface PacketFeesSDKType {
packet_fees: PacketFeeSDKType[];
}
/** IdentifiedPacketFees contains a list of type PacketFee and associated PacketId */
export interface IdentifiedPacketFees {
/** unique packet identifier comprised of the channel ID, port ID and sequence */
packetId: PacketId;
/** list of packet fees */
packetFees: PacketFee[];
}
export interface IdentifiedPacketFeesProtoMsg {
typeUrl: "/ibc.applications.fee.v1.IdentifiedPacketFees";
value: Uint8Array;
}
/** IdentifiedPacketFees contains a list of type PacketFee and associated PacketId */
export interface IdentifiedPacketFeesAmino {
/** unique packet identifier comprised of the channel ID, port ID and sequence */
packet_id?: PacketIdAmino;
/** list of packet fees */
packet_fees?: PacketFeeAmino[];
}
export interface IdentifiedPacketFeesAminoMsg {
type: "cosmos-sdk/IdentifiedPacketFees";
value: IdentifiedPacketFeesAmino;
}
/** IdentifiedPacketFees contains a list of type PacketFee and associated PacketId */
export interface IdentifiedPacketFeesSDKType {
packet_id: PacketIdSDKType;
packet_fees: PacketFeeSDKType[];
}
export declare const Fee: {
typeUrl: string;
aminoType: string;
is(o: any): o is Fee;
isSDK(o: any): o is FeeSDKType;
isAmino(o: any): o is FeeAmino;
encode(message: Fee, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): Fee;
fromPartial(object: Partial<Fee>): Fee;
fromAmino(object: FeeAmino): Fee;
toAmino(message: Fee): FeeAmino;
fromAminoMsg(object: FeeAminoMsg): Fee;
toAminoMsg(message: Fee): FeeAminoMsg;
fromProtoMsg(message: FeeProtoMsg): Fee;
toProto(message: Fee): Uint8Array;
toProtoMsg(message: Fee): FeeProtoMsg;
};
export declare const PacketFee: {
typeUrl: string;
aminoType: string;
is(o: any): o is PacketFee;
isSDK(o: any): o is PacketFeeSDKType;
isAmino(o: any): o is PacketFeeAmino;
encode(message: PacketFee, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): PacketFee;
fromPartial(object: Partial<PacketFee>): PacketFee;
fromAmino(object: PacketFeeAmino): PacketFee;
toAmino(message: PacketFee): PacketFeeAmino;
fromAminoMsg(object: PacketFeeAminoMsg): PacketFee;
toAminoMsg(message: PacketFee): PacketFeeAminoMsg;
fromProtoMsg(message: PacketFeeProtoMsg): PacketFee;
toProto(message: PacketFee): Uint8Array;
toProtoMsg(message: PacketFee): PacketFeeProtoMsg;
};
export declare const PacketFees: {
typeUrl: string;
aminoType: string;
is(o: any): o is PacketFees;
isSDK(o: any): o is PacketFeesSDKType;
isAmino(o: any): o is PacketFeesAmino;
encode(message: PacketFees, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): PacketFees;
fromPartial(object: Partial<PacketFees>): PacketFees;
fromAmino(object: PacketFeesAmino): PacketFees;
toAmino(message: PacketFees): PacketFeesAmino;
fromAminoMsg(object: PacketFeesAminoMsg): PacketFees;
toAminoMsg(message: PacketFees): PacketFeesAminoMsg;
fromProtoMsg(message: PacketFeesProtoMsg): PacketFees;
toProto(message: PacketFees): Uint8Array;
toProtoMsg(message: PacketFees): PacketFeesProtoMsg;
};
export declare const IdentifiedPacketFees: {
typeUrl: string;
aminoType: string;
is(o: any): o is IdentifiedPacketFees;
isSDK(o: any): o is IdentifiedPacketFeesSDKType;
isAmino(o: any): o is IdentifiedPacketFeesAmino;
encode(message: IdentifiedPacketFees, writer?: BinaryWriter): BinaryWriter;
decode(input: BinaryReader | Uint8Array, length?: number): IdentifiedPacketFees;
fromPartial(object: Partial<IdentifiedPacketFees>): IdentifiedPacketFees;
fromAmino(object: IdentifiedPacketFeesAmino): IdentifiedPacketFees;
toAmino(message: IdentifiedPacketFees): IdentifiedPacketFeesAmino;
fromAminoMsg(object: IdentifiedPacketFeesAminoMsg): IdentifiedPacketFees;
toAminoMsg(message: IdentifiedPacketFees): IdentifiedPacketFeesAminoMsg;
fromProtoMsg(message: IdentifiedPacketFeesProtoMsg): IdentifiedPacketFees;
toProto(message: IdentifiedPacketFees): Uint8Array;
toProtoMsg(message: IdentifiedPacketFees): IdentifiedPacketFeesProtoMsg;
};