@daisugi/kintsugi
Version:
Kintsugi is a set of utilities to help build a fault tolerant services.
14 lines • 833 B
TypeScript
import type { AnzenAnyResult, AnzenResultFn } from '@daisugi/anzen';
interface WithRetryOpts {
firstDelayMs?: number;
maxDelayMs?: number;
timeFactor?: number;
maxRetries?: number;
calculateRetryDelayMs?(firstDelayMs: number, maxDelayMs: number, timeFactor: number, retryNumber: number): number;
shouldRetry?(response: any, retryNumber: number, maxRetries: number): boolean;
}
export declare function calculateRetryDelayMs(firstDelayMs: number, maxDelayMs: number, timeFactor: number, retryNumber: number): number;
export declare function shouldRetry(response: any, retryNumber: number, maxRetries: number): boolean;
export declare function withRetry(fn: AnzenResultFn<any, any>, opts?: WithRetryOpts): (...args: any[]) => Promise<AnzenAnyResult<any, any>>;
export {};
//# sourceMappingURL=with_retry.d.ts.map