UNPKG

@hyper-fetch/react

Version:

React hooks and utils for the hyper-fetch

29 lines 2.06 kB
import { CacheValueType, NullableType, RequestInstance, ExtractResponseType, ExtractErrorType, ExtractAdapterResolvedType, Dispatcher, ExtractAdapterType, ResponseDetailsType } from '@hyper-fetch/core'; import { UseTrackedStateType } from '..'; /** * Determines whether state should be cleared when the cache key changes. * * - `"clean"` — always clear * - `"preserve"` — never clear * - `"auto"` — clear when the resource identity changed (URL params), preserve when only query params changed */ export declare const getShouldClearState: (mode: "auto" | "preserve" | "clean", oldCacheKey: string, newCacheKey: string) => boolean; export declare const getDetailsState: (state?: UseTrackedStateType<RequestInstance>, details?: Partial<ResponseDetailsType>) => ResponseDetailsType; export declare const isStaleCacheData: (staleTime: number, staleTimestamp: NullableType<Date | number>) => boolean; export declare const getValidCacheData: <T extends RequestInstance>(request: T, initialResponse: NullableType<Partial<ExtractAdapterResolvedType<T>>>, cacheData: NullableType<CacheValueType<ExtractResponseType<T>, ExtractErrorType<T>, ExtractAdapterType<T>>>) => CacheValueType<ExtractResponseType<T>, ExtractErrorType<T>, ExtractAdapterType<T>> | null; export declare const getTimestamp: (timestamp?: NullableType<number | Date>) => Date | null; export declare const getIsInitiallyLoading: <T extends RequestInstance>({ queryKey, dispatcher, hasState, revalidate, disabled, }: { queryKey: string; dispatcher: Dispatcher<ExtractAdapterType<T>>; hasState: boolean; revalidate?: boolean; disabled?: boolean; }) => boolean; export declare const getInitialState: <T extends RequestInstance>({ initialResponse, dispatcher, request, disabled, revalidate, }: { initialResponse: NullableType<Partial<ExtractAdapterResolvedType<T>>>; dispatcher: Dispatcher<ExtractAdapterType<T>>; request: T; disabled?: boolean; revalidate?: boolean; }) => UseTrackedStateType<T>; //# sourceMappingURL=use-tracked-state.utils.d.ts.map