import { TRPCClientErrorLike } from '@trpc/client';
import type { AnyRouter } from '@trpc/server';
import { Observable } from '@trpc/server/observable';
import { TRPCContextState } from '../../internals/context';
import { TRPCUseQueries } from '../../internals/useQueries';
import { CreateTRPCReactOptions } from '../types';
import { CreateClient, TRPCProvider, UseDehydratedState, UseTRPCInfiniteQueryOptions, UseTRPCInfiniteQueryResult, UseTRPCMutationOptions, UseTRPCMutationResult, UseTRPCQueryOptions, UseTRPCQueryResult, UseTRPCSubscriptionOptions } from './types';
/**
 * @internal
 */
export declare function createRootHooks<TRouter extends AnyRouter, TSSRContext = unknown>(config?: CreateTRPCReactOptions<TRouter>): {
    Provider: TRPCProvider<TRouter, TSSRContext>;
    createClient: CreateClient<TRouter>;
    useContext: () => TRPCContextState<TRouter, TSSRContext>;
    useQuery: (pathAndInput: [path: string, ...args: unknown[]], opts?: UseTRPCQueryOptions<unknown, unknown, unknown, unknown, TRPCClientErrorLike<TRouter>> | undefined) => UseTRPCQueryResult<unknown, TRPCClientErrorLike<TRouter>>;
    useQueries: TRPCUseQueries<TRouter>;
    useMutation: (path: string | [string], opts?: UseTRPCMutationOptions<unknown, TRPCClientErrorLike<TRouter>, unknown, unknown> | undefined) => UseTRPCMutationResult<unknown, TRPCClientErrorLike<TRouter>, unknown, unknown>;
    useSubscription: (pathAndInput: [
        path: string,
        ...args: unknown[]
    ], opts: UseTRPCSubscriptionOptions<Observable<unknown, unknown>, TRPCClientErrorLike<TRouter>>) => void;
    useDehydratedState: UseDehydratedState<TRouter>;
    useInfiniteQuery: (pathAndInput: [
        path: string,
        input: Record<any, unknown>
    ], opts?: UseTRPCInfiniteQueryOptions<unknown, unknown, unknown, TRPCClientErrorLike<TRouter>> | undefined) => UseTRPCInfiniteQueryResult<unknown, TRPCClientErrorLike<TRouter>>;
};
/**
 * @deprecated
 * DELETE ME
 */
export * from './deprecated/createHooksInternal';
//# sourceMappingURL=createHooksInternal.d.ts.map