import { type OperationVariables, useQuery } from '@apollo/client';
import { type RemoteData } from './rd';
export type QueryResultWithRemoteData<TData, TVariables extends OperationVariables = OperationVariables> = ReturnType<typeof useQueryRd<TData, TVariables>>;
/**
 * @description Maps a `useQuery` QueryResult status (called | loading | data | error) to the RemoteData union
 * @param query GQL query document
 * @param options useQuery opts
 * @see https://www.apollographql.com/docs/react/data/queries/
 * @note RemoteData is tagged with `tag`. There is no generic for Error as it will always be an ApolloError.
 * @returns Everything from `QueryResult` with an accompanying `_rd` property wth the RemoteData object
 */
export declare const useQueryRd: <TData, TVariables extends OperationVariables = OperationVariables>(query: import("@apollo/client").DocumentNode | import("@graphql-typed-document-node/core").TypedDocumentNode<TData, TVariables>, options?: import("@apollo/client").QueryHookOptions<TData, TVariables> | undefined) => import("@apollo/client").QueryResult<TData, TVariables> & {
    _rd: RemoteData<TData>;
};
//# sourceMappingURL=useQueryRd.d.ts.map