import { Rpc } from "../../../helpers";
import { QueryClient } from "@cosmjs/stargate";
import { QueryCountsRequest, QueryCountsResponse, QueryMembersRequest, QueryMembersResponse, QueryMemberRequest, QueryMemberResponse, QueryCurrentGroupRequest, QueryCurrentGroupResponse, QueryIncomingGroupRequest, QueryIncomingGroupResponse, QuerySigningRequest, QuerySigningResponse, QueryGroupTransitionRequest, QueryGroupTransitionResponse, QueryParamsRequest, QueryParamsResponse } from "./query";
/** Query defines the gRPC querier service. */
export interface Query {
    /** Counts queries the number of existing signing. */
    counts(request?: QueryCountsRequest): Promise<QueryCountsResponse>;
    /** Members queries all members. */
    members(request: QueryMembersRequest): Promise<QueryMembersResponse>;
    /** Member queries the member information of the given address. */
    member(request: QueryMemberRequest): Promise<QueryMemberResponse>;
    /** CurrentGroup queries the current group information. */
    currentGroup(request?: QueryCurrentGroupRequest): Promise<QueryCurrentGroupResponse>;
    /** IncomingGroup queries the incoming group information. */
    incomingGroup(request?: QueryIncomingGroupRequest): Promise<QueryIncomingGroupResponse>;
    /** Signing queries the signing result of the given signing request ID. */
    signing(request: QuerySigningRequest): Promise<QuerySigningResponse>;
    /** GroupTransition queries the group transition information. */
    groupTransition(request?: QueryGroupTransitionRequest): Promise<QueryGroupTransitionResponse>;
    /** Params queries parameters of bandtss module */
    params(request?: QueryParamsRequest): Promise<QueryParamsResponse>;
}
export declare class QueryClientImpl implements Query {
    private readonly rpc;
    constructor(rpc: Rpc);
    counts(request?: QueryCountsRequest): Promise<QueryCountsResponse>;
    members(request: QueryMembersRequest): Promise<QueryMembersResponse>;
    member(request: QueryMemberRequest): Promise<QueryMemberResponse>;
    currentGroup(request?: QueryCurrentGroupRequest): Promise<QueryCurrentGroupResponse>;
    incomingGroup(request?: QueryIncomingGroupRequest): Promise<QueryIncomingGroupResponse>;
    signing(request: QuerySigningRequest): Promise<QuerySigningResponse>;
    groupTransition(request?: QueryGroupTransitionRequest): Promise<QueryGroupTransitionResponse>;
    params(request?: QueryParamsRequest): Promise<QueryParamsResponse>;
}
export declare const createRpcQueryExtension: (base: QueryClient) => {
    counts(request?: QueryCountsRequest): Promise<QueryCountsResponse>;
    members(request: QueryMembersRequest): Promise<QueryMembersResponse>;
    member(request: QueryMemberRequest): Promise<QueryMemberResponse>;
    currentGroup(request?: QueryCurrentGroupRequest): Promise<QueryCurrentGroupResponse>;
    incomingGroup(request?: QueryIncomingGroupRequest): Promise<QueryIncomingGroupResponse>;
    signing(request: QuerySigningRequest): Promise<QuerySigningResponse>;
    groupTransition(request?: QueryGroupTransitionRequest): Promise<QueryGroupTransitionResponse>;
    params(request?: QueryParamsRequest): Promise<QueryParamsResponse>;
};
