import { PageRequest, PageRequestAmino, PageResponse, PageResponseAmino } from "../../base/query/v1beta1/pagination";
import { Permissions, PermissionsAmino, GenesisAccountPermissions, GenesisAccountPermissionsAmino } from "./types";
import { BinaryReader, BinaryWriter } from "../../../binary";
import { DeepPartial } from "../../../helpers";
/**
 * QueryAccountRequest is the request type for the Query/Account RPC method.
 * @name QueryAccountRequest
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.QueryAccountRequest
 */
export interface QueryAccountRequest {
    address: string;
}
export interface QueryAccountRequestProtoMsg {
    typeUrl: "/cosmos.circuit.v1.QueryAccountRequest";
    value: Uint8Array;
}
/**
 * QueryAccountRequest is the request type for the Query/Account RPC method.
 * @name QueryAccountRequestAmino
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.QueryAccountRequest
 */
export interface QueryAccountRequestAmino {
    address: string;
}
export interface QueryAccountRequestAminoMsg {
    type: "cosmos-sdk/QueryAccountRequest";
    value: QueryAccountRequestAmino;
}
/**
 * AccountResponse is the response type for the Query/Account RPC method.
 * @name AccountResponse
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.AccountResponse
 */
export interface AccountResponse {
    permission?: Permissions;
}
export interface AccountResponseProtoMsg {
    typeUrl: "/cosmos.circuit.v1.AccountResponse";
    value: Uint8Array;
}
/**
 * AccountResponse is the response type for the Query/Account RPC method.
 * @name AccountResponseAmino
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.AccountResponse
 */
export interface AccountResponseAmino {
    permission?: PermissionsAmino;
}
export interface AccountResponseAminoMsg {
    type: "cosmos-sdk/AccountResponse";
    value: AccountResponseAmino;
}
/**
 * QueryAccountsRequest is the request type for the Query/Accounts RPC method.
 * @name QueryAccountsRequest
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.QueryAccountsRequest
 */
export interface QueryAccountsRequest {
    /**
     * pagination defines an optional pagination for the request.
     */
    pagination?: PageRequest;
}
export interface QueryAccountsRequestProtoMsg {
    typeUrl: "/cosmos.circuit.v1.QueryAccountsRequest";
    value: Uint8Array;
}
/**
 * QueryAccountsRequest is the request type for the Query/Accounts RPC method.
 * @name QueryAccountsRequestAmino
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.QueryAccountsRequest
 */
export interface QueryAccountsRequestAmino {
    /**
     * pagination defines an optional pagination for the request.
     */
    pagination?: PageRequestAmino;
}
export interface QueryAccountsRequestAminoMsg {
    type: "cosmos-sdk/QueryAccountsRequest";
    value: QueryAccountsRequestAmino;
}
/**
 * AccountsResponse is the response type for the Query/Accounts RPC method.
 * @name AccountsResponse
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.AccountsResponse
 */
export interface AccountsResponse {
    accounts: GenesisAccountPermissions[];
    /**
     * pagination defines the pagination in the response.
     */
    pagination?: PageResponse;
}
export interface AccountsResponseProtoMsg {
    typeUrl: "/cosmos.circuit.v1.AccountsResponse";
    value: Uint8Array;
}
/**
 * AccountsResponse is the response type for the Query/Accounts RPC method.
 * @name AccountsResponseAmino
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.AccountsResponse
 */
export interface AccountsResponseAmino {
    accounts: GenesisAccountPermissionsAmino[];
    /**
     * pagination defines the pagination in the response.
     */
    pagination?: PageResponseAmino;
}
export interface AccountsResponseAminoMsg {
    type: "cosmos-sdk/AccountsResponse";
    value: AccountsResponseAmino;
}
/**
 * QueryDisableListRequest is the request type for the Query/DisabledList RPC method.
 * @name QueryDisabledListRequest
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.QueryDisabledListRequest
 */
export interface QueryDisabledListRequest {
}
export interface QueryDisabledListRequestProtoMsg {
    typeUrl: "/cosmos.circuit.v1.QueryDisabledListRequest";
    value: Uint8Array;
}
/**
 * QueryDisableListRequest is the request type for the Query/DisabledList RPC method.
 * @name QueryDisabledListRequestAmino
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.QueryDisabledListRequest
 */
export interface QueryDisabledListRequestAmino {
}
export interface QueryDisabledListRequestAminoMsg {
    type: "cosmos-sdk/QueryDisabledListRequest";
    value: QueryDisabledListRequestAmino;
}
/**
 * DisabledListResponse is the response type for the Query/DisabledList RPC method.
 * @name DisabledListResponse
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.DisabledListResponse
 */
export interface DisabledListResponse {
    disabledList: string[];
}
export interface DisabledListResponseProtoMsg {
    typeUrl: "/cosmos.circuit.v1.DisabledListResponse";
    value: Uint8Array;
}
/**
 * DisabledListResponse is the response type for the Query/DisabledList RPC method.
 * @name DisabledListResponseAmino
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.DisabledListResponse
 */
export interface DisabledListResponseAmino {
    disabled_list: string[];
}
export interface DisabledListResponseAminoMsg {
    type: "cosmos-sdk/DisabledListResponse";
    value: DisabledListResponseAmino;
}
/**
 * QueryAccountRequest is the request type for the Query/Account RPC method.
 * @name QueryAccountRequest
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.QueryAccountRequest
 */
export declare const QueryAccountRequest: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is QueryAccountRequest;
    isAmino(o: any): o is QueryAccountRequestAmino;
    encode(message: QueryAccountRequest, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): QueryAccountRequest;
    fromPartial(object: DeepPartial<QueryAccountRequest>): QueryAccountRequest;
    fromAmino(object: QueryAccountRequestAmino): QueryAccountRequest;
    toAmino(message: QueryAccountRequest): QueryAccountRequestAmino;
    fromAminoMsg(object: QueryAccountRequestAminoMsg): QueryAccountRequest;
    toAminoMsg(message: QueryAccountRequest): QueryAccountRequestAminoMsg;
    fromProtoMsg(message: QueryAccountRequestProtoMsg): QueryAccountRequest;
    toProto(message: QueryAccountRequest): Uint8Array;
    toProtoMsg(message: QueryAccountRequest): QueryAccountRequestProtoMsg;
    registerTypeUrl(): void;
};
/**
 * AccountResponse is the response type for the Query/Account RPC method.
 * @name AccountResponse
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.AccountResponse
 */
export declare const AccountResponse: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is AccountResponse;
    isAmino(o: any): o is AccountResponseAmino;
    encode(message: AccountResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): AccountResponse;
    fromPartial(object: DeepPartial<AccountResponse>): AccountResponse;
    fromAmino(object: AccountResponseAmino): AccountResponse;
    toAmino(message: AccountResponse): AccountResponseAmino;
    fromAminoMsg(object: AccountResponseAminoMsg): AccountResponse;
    toAminoMsg(message: AccountResponse): AccountResponseAminoMsg;
    fromProtoMsg(message: AccountResponseProtoMsg): AccountResponse;
    toProto(message: AccountResponse): Uint8Array;
    toProtoMsg(message: AccountResponse): AccountResponseProtoMsg;
    registerTypeUrl(): void;
};
/**
 * QueryAccountsRequest is the request type for the Query/Accounts RPC method.
 * @name QueryAccountsRequest
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.QueryAccountsRequest
 */
export declare const QueryAccountsRequest: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is QueryAccountsRequest;
    isAmino(o: any): o is QueryAccountsRequestAmino;
    encode(message: QueryAccountsRequest, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): QueryAccountsRequest;
    fromPartial(object: DeepPartial<QueryAccountsRequest>): QueryAccountsRequest;
    fromAmino(object: QueryAccountsRequestAmino): QueryAccountsRequest;
    toAmino(message: QueryAccountsRequest): QueryAccountsRequestAmino;
    fromAminoMsg(object: QueryAccountsRequestAminoMsg): QueryAccountsRequest;
    toAminoMsg(message: QueryAccountsRequest): QueryAccountsRequestAminoMsg;
    fromProtoMsg(message: QueryAccountsRequestProtoMsg): QueryAccountsRequest;
    toProto(message: QueryAccountsRequest): Uint8Array;
    toProtoMsg(message: QueryAccountsRequest): QueryAccountsRequestProtoMsg;
    registerTypeUrl(): void;
};
/**
 * AccountsResponse is the response type for the Query/Accounts RPC method.
 * @name AccountsResponse
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.AccountsResponse
 */
export declare const AccountsResponse: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is AccountsResponse;
    isAmino(o: any): o is AccountsResponseAmino;
    encode(message: AccountsResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): AccountsResponse;
    fromPartial(object: DeepPartial<AccountsResponse>): AccountsResponse;
    fromAmino(object: AccountsResponseAmino): AccountsResponse;
    toAmino(message: AccountsResponse): AccountsResponseAmino;
    fromAminoMsg(object: AccountsResponseAminoMsg): AccountsResponse;
    toAminoMsg(message: AccountsResponse): AccountsResponseAminoMsg;
    fromProtoMsg(message: AccountsResponseProtoMsg): AccountsResponse;
    toProto(message: AccountsResponse): Uint8Array;
    toProtoMsg(message: AccountsResponse): AccountsResponseProtoMsg;
    registerTypeUrl(): void;
};
/**
 * QueryDisableListRequest is the request type for the Query/DisabledList RPC method.
 * @name QueryDisabledListRequest
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.QueryDisabledListRequest
 */
export declare const QueryDisabledListRequest: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is QueryDisabledListRequest;
    isAmino(o: any): o is QueryDisabledListRequestAmino;
    encode(_: QueryDisabledListRequest, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): QueryDisabledListRequest;
    fromPartial(_: DeepPartial<QueryDisabledListRequest>): QueryDisabledListRequest;
    fromAmino(_: QueryDisabledListRequestAmino): QueryDisabledListRequest;
    toAmino(_: QueryDisabledListRequest): QueryDisabledListRequestAmino;
    fromAminoMsg(object: QueryDisabledListRequestAminoMsg): QueryDisabledListRequest;
    toAminoMsg(message: QueryDisabledListRequest): QueryDisabledListRequestAminoMsg;
    fromProtoMsg(message: QueryDisabledListRequestProtoMsg): QueryDisabledListRequest;
    toProto(message: QueryDisabledListRequest): Uint8Array;
    toProtoMsg(message: QueryDisabledListRequest): QueryDisabledListRequestProtoMsg;
    registerTypeUrl(): void;
};
/**
 * DisabledListResponse is the response type for the Query/DisabledList RPC method.
 * @name DisabledListResponse
 * @package cosmos.circuit.v1
 * @see proto type: cosmos.circuit.v1.DisabledListResponse
 */
export declare const DisabledListResponse: {
    typeUrl: string;
    aminoType: string;
    is(o: any): o is DisabledListResponse;
    isAmino(o: any): o is DisabledListResponseAmino;
    encode(message: DisabledListResponse, writer?: BinaryWriter): BinaryWriter;
    decode(input: BinaryReader | Uint8Array, length?: number): DisabledListResponse;
    fromPartial(object: DeepPartial<DisabledListResponse>): DisabledListResponse;
    fromAmino(object: DisabledListResponseAmino): DisabledListResponse;
    toAmino(message: DisabledListResponse): DisabledListResponseAmino;
    fromAminoMsg(object: DisabledListResponseAminoMsg): DisabledListResponse;
    toAminoMsg(message: DisabledListResponse): DisabledListResponseAminoMsg;
    fromProtoMsg(message: DisabledListResponseProtoMsg): DisabledListResponse;
    toProto(message: DisabledListResponse): Uint8Array;
    toProtoMsg(message: DisabledListResponse): DisabledListResponseProtoMsg;
    registerTypeUrl(): void;
};
