import type { Dispatch, SetStateAction } from "react"; export interface RequestPayload { limit: number; offset: number; } interface Info { hasMore: boolean; isLoading: boolean; offset: number; data: Array | undefined; } interface ReturnType { data: Array | undefined; hasMore: boolean; isLoading: boolean; offset: number; refresh: (silent?: boolean) => Promise; fetchMore: () => void; setInfo: Dispatch>>; } type RequestFn = (params: RequestPayload) => Promise>; declare function useInfiniteFetch(request: RequestFn, limit: number, initOnMount?: boolean): ReturnType; export default useInfiniteFetch;