import { Reactive } from '../reactive'; import { InjectionProvider } from '../render/app'; export type QueryFn = () => T | Promise; type QueryState = { data: Reactive; error: Reactive; isPending: Reactive; isFetching: boolean; }; type QueryClientPrepareResponse = undefined extends InitialValue ? QueryState : QueryState; export declare class QueryClient { private keyToState; private _id; prepare(queryKey: string, initialValue?: InitialValue): QueryClientPrepareResponse; getData(queryFn: QueryFn, queryKey: string): QueryState; reset(): void; } export declare function useQuery({ queryFn, queryKey, initialValue, }: { queryFn: QueryFn; queryKey: string; initialValue?: InitialValue; }, injections?: { queryClient?: QueryClient; }): { data: Reactive | Reactive; error: Reactive; isPending: Reactive; execute: () => Promise; }; export declare const createQueryClientProvider: () => InjectionProvider; export {};