UNPKG

next-loaders

Version:
19 lines (18 loc) 612 B
import { LoaderInferred, LoaderServerAction, LoaderServerResponse } from "./types"; export interface UseLoaderProps { retry?: number; delay?: number; debounce?: number; throttle?: number; } export type UseLoaderReturn<T, P = any> = [ LoaderServerResponse<T> | null, { load: LoaderInferred<P>; debounce: LoaderInferred<P>; throttle: LoaderInferred<P>; cancel: () => void; reset: () => void; } ]; export default function createLoader<T, P = any>(name: string, action: LoaderServerAction<T, P>): (props?: UseLoaderProps) => UseLoaderReturn<T, P>;