type CachePayload = { data: Data; lastModified: number; maxAge: number; }; type QueryKey = ReadonlyArray | URL; declare class CacheApiAdaptor { private cacheName; private maxAge; constructor(ctx?: { cacheName?: string; maxAge?: number; }); retrieve(key: QueryKey): Promise | null>; update(key: QueryKey, value: Data | Response, options?: { maxAge?: number; }): Promise; delete(key: QueryKey): Promise; /** * Builds the full cache key for the suspense cache. * * @param key Key for the item in the suspense cache. * @returns The fully-formed cache key for the suspense cache. */ buildCacheKey(key: ReadonlyArray): string; } type RetryDelay = number | ((failureCount: number, error: TError) => number); type CreateQuery = { queryKey?: QueryKey | null; queryFn: () => Promise; staleTime?: number; gcTime?: number; revalidate?: boolean; retry?: number | ((failureCount: number, error: TError) => boolean); retryDelay?: RetryDelay; cacheName?: string; throwOnError?: boolean; enabled?: boolean | ((data: Data) => boolean); revalidateMode?: 'default' | 'probabilistic'; }; declare const createQuery: ({ queryKey, queryFn, gcTime, staleTime, revalidate, retry, retryDelay, cacheName, throwOnError, enabled, revalidateMode, }: CreateQuery) => Promise<{ data: Data | null; error: TError | null; invalidate: () => Promise | void; lastModified: number | null; }>; export { CacheApiAdaptor as C, type QueryKey as Q, type CreateQuery as a, createQuery as c };