fetch-retry-ts
Version:
Adds retry functionality to fetch()
10 lines (9 loc) • 650 B
TypeScript
export type RequestDelayFunction = (attempt: number, error: Error | null, response: Response | null) => number;
export type RetryRequestFunction = (attempt: number, retries: number, error: Error | null, response: Response | null) => boolean;
export interface FetchRetryParams {
retries?: number;
retryDelay?: number | RequestDelayFunction;
retryOn?: number[] | RetryRequestFunction;
}
export declare function fetchBuilder<F extends (...args: any) => Promise<any> = typeof fetch>(fetchFunc: F, params?: FetchRetryParams): (input: Parameters<F>[0], init?: Parameters<F>[1] & FetchRetryParams) => ReturnType<F>;
export default fetchBuilder;