@geersch/retry
Version:
Backoff strategies to use when retrying a function after a given delay.
16 lines • 967 B
TypeScript
import { Observable } from 'rxjs';
import type { BackoffStrategy } from './strategies/backoff.strategy.js';
type Type<T = any> = new (...args: any[]) => T;
export type ErrorConstructor = new (...args: any[]) => Error;
export interface RetryOptions {
abortRetry?: (error: any, retryCount: number) => boolean;
maxDelay?: number;
maxRetries?: number;
scaleFactor?: number;
signal?: AbortSignal | (() => AbortSignal | null) | null;
unrecoverableErrors?: ErrorConstructor[];
}
export declare function retry<T>(operation: (retryCount: number) => T | Promise<T>, backoffStrategy: Type<BackoffStrategy> | BackoffStrategy, options?: RetryOptions): Promise<T>;
export declare function passRetryOperatorToPipe<T>(observable: Observable<T>, backoffStrategy: Type<BackoffStrategy> | BackoffStrategy, { abortRetry, maxDelay, maxRetries, scaleFactor, signal, unrecoverableErrors }: RetryOptions): Observable<T>;
export {};
//# sourceMappingURL=retry.d.ts.map