import { type GQtyClient, type SubscriptionsClient } from 'gqty';
import { type GeneratedSchema } from './gqty';
import type { GqlAuthParam } from './types';
export type GqlClientV2 = ReturnType<typeof createClientV2>;
export declare function createClientV2(graphqlUri: string, args?: GqlAuthParam): {
    client: GQtyClient<GeneratedSchema>;
    subscriptionsClient: SubscriptionsClient;
    mutate<T = unknown>(resolved: (sub: import("./gqty").Mutation) => T, options?: import("./wrap").ResolveOptionsWithSession<T>): Promise<T>;
    query<T_1 = unknown>(resolved: (sub: import("./gqty").Query) => T_1, options?: import("./wrap").ResolveOptionsWithSession<T_1>): Promise<T_1>;
    subscribe<T_2 = unknown>(resolved: (sub: import("./gqty").Subscription) => T_2, onData: (data: T_2, unsubscribeFn: () => Promise<void>) => void, onError?: (err: Error, unsubscribeFn: () => Promise<void>) => void): () => Promise<void>;
};
