import { SynapseClientError } from '@sage-bionetworks/synapse-client/util/SynapseClientError';
import { AsynchronousJobStatus, QueryBundleRequest, QueryResultBundle } from '@sage-bionetworks/synapse-types';
import { InfiniteData, QueryKey, UseInfiniteQueryOptions, UseQueryOptions, UseQueryResult } from '@tanstack/react-query';
import { KeyFactory } from '../KeyFactory';
export declare const tableQueryUseQueryDefaults: {
    staleTime: number;
};
/**
 *
 * @param queryBundleRequest
 * @param options
 * @returns
 *
 * @deprecated - use useGetQueryResultBundleWithAsyncStatus. That hook can be renamed and this can be removed
 *  when all cases are using useGetQueryResultBundleWithAsyncStatus
 */
export default function useGetQueryResultBundle<TData = QueryResultBundle>(queryBundleRequest: QueryBundleRequest, options?: Partial<UseQueryOptions<QueryResultBundle, SynapseClientError, TData>>): UseQueryResult<import("@tanstack/query-core").NoInfer<TData>, SynapseClientError>;
export declare function useGetQueryRows<TData = AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>>(queryBundleRequest: QueryBundleRequest, options?: Partial<UseQueryOptions<AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>, SynapseClientError, TData>>, setCurrentAsyncStatus?: (status: AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>) => void): UseQueryResult<import("@tanstack/query-core").NoInfer<TData>, SynapseClientError>;
export declare function useGetQueryStats<TData = AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>>(queryBundleRequest: QueryBundleRequest, options?: Partial<UseQueryOptions<AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>, SynapseClientError, TData>>, setCurrentAsyncStatus?: (status: AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>) => void): UseQueryResult<import("@tanstack/query-core").NoInfer<TData>, SynapseClientError>;
/**
 * The set of properties returned by UseQuery where the results can be safely merged and memoized
 */
type UseQueryResultMergeableProperties<TData, TError> = Pick<UseQueryResult<TData, TError>, 'data' | 'status' | 'isError' | 'isLoading' | 'error' | 'isSuccess' | 'isPlaceholderData' | 'isPending'>;
export declare function useGetQueryResultBundleWithAsyncStatus<TData = AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>>(queryBundleRequest: QueryBundleRequest, options?: Partial<UseQueryOptions<AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>, SynapseClientError, TData>>, setCurrentAsyncStatus?: (status: AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>) => void): UseQueryResultMergeableProperties<TData, SynapseClientError>;
export declare function getInfiniteQueryResultBundleOptions(queryBundleRequest: QueryBundleRequest, keyFactory: KeyFactory, accessToken: string | undefined, setCurrentAsyncStatus?: (status: AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>) => void): UseInfiniteQueryOptions<AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>, SynapseClientError, InfiniteData<AsynchronousJobStatus<QueryBundleRequest, QueryResultBundle>>, QueryKey, string | number | undefined>;
/**
 * Fetches all rows for a table query. Only use this request if you require all rows in a table at once.
 */
export declare function useGetFullTableQueryResults<TData = QueryResultBundle>(queryBundleRequest: QueryBundleRequest, options?: Partial<UseQueryOptions<QueryResultBundle, SynapseClientError, TData>>, forceAnonymous?: boolean): UseQueryResult<import("@tanstack/query-core").NoInfer<TData>, SynapseClientError>;
export {};
//# sourceMappingURL=useGetQueryResultBundle.d.ts.map