interface QueryResult<T> {
    isLoading?: boolean;
    total?: number;
    offset?: number;
    data?: T[];
    error?: Error;
    requestId?: string;
}
declare type QueryHook<T, Q> = (query: Q, options?: {
    skip?: boolean;
}) => QueryResult<T>;
export interface InfiniteQueryParams<T, Q> {
    pageSize: number;
    index?: number;
    query: Q;
    useQuery: QueryHook<T, Q>;
    onRequestId?: (requestGroupId: string, requestId: string) => void;
}
declare const _default: <T, Q extends {
    from?: number;
    count?: number;
}>({ useQuery, query, index, pageSize, onRequestId, }: InfiniteQueryParams<T, Q>) => {
    ref: (node?: Element) => void;
    inView: boolean;
    data: T[];
    total: number;
    isLoading: boolean;
    requestId: string;
    currentPage: number;
    offset: number;
    rewindZero: () => void;
};
export default _default;
