import { BinaryReader, BinaryWriter } from "../../../binary";
import { DeepPartial } from "../../../helpers";
/** MsgInit defines the Create request type for the Msg/Create RPC method. */
export interface MsgInit {
    /** sender is the address of the sender of this message. */
    sender: string;
    /** account_type is the type of the account to be created. */
    accountType: string;
    /**
     * message is the message to be sent to the account, it's up to the account
     * implementation to decide what encoding format should be used to interpret
     * this message.
     */
    message: Uint8Array;
}
export interface MsgInitProtoMsg {
    typeUrl: "/cosmos.accounts.v1.MsgInit";
    value: Uint8Array;
}
/** MsgInit defines the Create request type for the Msg/Create RPC method. */
export interface MsgInitAmino {
    /** sender is the address of the sender of this message. */
    sender: string;
    /** account_type is the type of the account to be created. */
    account_type: string;
    /**
     * message is the message to be sent to the account, it's up to the account
     * implementation to decide what encoding format should be used to interpret
     * this message.
     */
    message: Uint8Array;
}
export interface MsgInitAminoMsg {
    type: "cosmos-sdk/MsgInit";
    value: MsgInitAmino;
}
/** MsgInit defines the Create request type for the Msg/Create RPC method. */
export interface MsgInitSDKType {
    sender: string;
    account_type: string;
    message: Uint8Array;
}
/** MsgInitResponse defines the Create response type for the Msg/Create RPC method. */
export interface MsgInitResponse {
    /** account_address is the address of the newly created account. */
    accountAddress: string;
    /** response is the response returned by the account implementation. */
    response: Uint8Array;
}
export interface MsgInitResponseProtoMsg {
    typeUrl: "/cosmos.accounts.v1.MsgInitResponse";
    value: Uint8Array;
}
/** MsgInitResponse defines the Create response type for the Msg/Create RPC method. */
export interface MsgInitResponseAmino {
    /** account_address is the address of the newly created account. */
    account_address: string;
    /** response is the response returned by the account implementation. */
    response: Uint8Array;
}
export interface MsgInitResponseAminoMsg {
    type: "cosmos-sdk/MsgInitResponse";
    value: MsgInitResponseAmino;
}
/** MsgInitResponse defines the Create response type for the Msg/Create RPC method. */
export interface MsgInitResponseSDKType {
    account_address: string;
    response: Uint8Array;
}
/** MsgExecute defines the Execute request type for the Msg/Execute RPC method. */
export interface MsgExecute {
    /** sender is the address of the sender of this message. */
    sender: string;
    /** target is the address of the account to be executed. */
    target: string;
    /** message is the message to be sent to the account, it's up to the account */
    message: Uint8Array;
}
export interface MsgExecuteProtoMsg {
    typeUrl: "/cosmos.accounts.v1.MsgExecute";
    value: Uint8Array;
}
/** MsgExecute defines the Execute request type for the Msg/Execute RPC method. */
export interface MsgExecuteAmino {
    /** sender is the address of the sender of this message. */
    sender: string;
    /** target is the address of the account to be executed. */
    target: string;
    /** message is the message to be sent to the account, it's up to the account */
    message: Uint8Array;
}
export interface MsgExecuteAminoMsg {
    type: "cosmos-sdk/MsgExecute";
    value: MsgExecuteAmino;
}
/** MsgExecute defines the Execute request type for the Msg/Execute RPC method. */
export interface MsgExecuteSDKType {
    sender: string;
    target: string;
    message: Uint8Array;
}
/** MsgExecuteResponse defines the Execute response type for the Msg/Execute RPC method. */
export interface MsgExecuteResponse {
    /** response is the response returned by the account implementation. */
    response: Uint8Array;
}
export interface MsgExecuteResponseProtoMsg {
    typeUrl: "/cosmos.accounts.v1.MsgExecuteResponse";
    value: Uint8Array;
}
/** MsgExecuteResponse defines the Execute response type for the Msg/Execute RPC method. */
export interface MsgExecuteResponseAmino {
    /** response is the response returned by the account implementation. */
    response: Uint8Array;
}
export interface MsgExecuteResponseAminoMsg {
    type: "cosmos-sdk/MsgExecuteResponse";
    value: MsgExecuteResponseAmino;
}
/** MsgExecuteResponse defines the Execute response type for the Msg/Execute RPC method. */
export interface MsgExecuteResponseSDKType {
    response: Uint8Array;
}
export declare const MsgInit: {
    typeUrl: string;
    aminoType: string;
    encode(message: MsgInit, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): MsgInit;
    fromPartial(object: DeepPartial<MsgInit>): MsgInit;
    fromAmino(object: MsgInitAmino): MsgInit;
    toAmino(message: MsgInit): MsgInitAmino;
    fromAminoMsg(object: MsgInitAminoMsg): MsgInit;
    toAminoMsg(message: MsgInit): MsgInitAminoMsg;
    fromProtoMsg(message: MsgInitProtoMsg): MsgInit;
    toProto(message: MsgInit): Uint8Array;
    toProtoMsg(message: MsgInit): MsgInitProtoMsg;
};
export declare const MsgInitResponse: {
    typeUrl: string;
    aminoType: string;
    encode(message: MsgInitResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): MsgInitResponse;
    fromPartial(object: DeepPartial<MsgInitResponse>): MsgInitResponse;
    fromAmino(object: MsgInitResponseAmino): MsgInitResponse;
    toAmino(message: MsgInitResponse): MsgInitResponseAmino;
    fromAminoMsg(object: MsgInitResponseAminoMsg): MsgInitResponse;
    toAminoMsg(message: MsgInitResponse): MsgInitResponseAminoMsg;
    fromProtoMsg(message: MsgInitResponseProtoMsg): MsgInitResponse;
    toProto(message: MsgInitResponse): Uint8Array;
    toProtoMsg(message: MsgInitResponse): MsgInitResponseProtoMsg;
};
export declare const MsgExecute: {
    typeUrl: string;
    aminoType: string;
    encode(message: MsgExecute, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): MsgExecute;
    fromPartial(object: DeepPartial<MsgExecute>): MsgExecute;
    fromAmino(object: MsgExecuteAmino): MsgExecute;
    toAmino(message: MsgExecute): MsgExecuteAmino;
    fromAminoMsg(object: MsgExecuteAminoMsg): MsgExecute;
    toAminoMsg(message: MsgExecute): MsgExecuteAminoMsg;
    fromProtoMsg(message: MsgExecuteProtoMsg): MsgExecute;
    toProto(message: MsgExecute): Uint8Array;
    toProtoMsg(message: MsgExecute): MsgExecuteProtoMsg;
};
export declare const MsgExecuteResponse: {
    typeUrl: string;
    aminoType: string;
    encode(message: MsgExecuteResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): MsgExecuteResponse;
    fromPartial(object: DeepPartial<MsgExecuteResponse>): MsgExecuteResponse;
    fromAmino(object: MsgExecuteResponseAmino): MsgExecuteResponse;
    toAmino(message: MsgExecuteResponse): MsgExecuteResponseAmino;
    fromAminoMsg(object: MsgExecuteResponseAminoMsg): MsgExecuteResponse;
    toAminoMsg(message: MsgExecuteResponse): MsgExecuteResponseAminoMsg;
    fromProtoMsg(message: MsgExecuteResponseProtoMsg): MsgExecuteResponse;
    toProto(message: MsgExecuteResponse): Uint8Array;
    toProtoMsg(message: MsgExecuteResponse): MsgExecuteResponseProtoMsg;
};
