node-ejs-renderer/node_modules/retry-as-promised/dist/index.d.ts
2024-06-09 13:55:01 -04:00

31 lines
1.1 KiB
TypeScript

export declare class TimeoutError extends Error {
previous: Error | undefined;
constructor(message: string, previousError?: Error);
}
export type MatchOption = string | RegExp | Error | Function;
export interface Options {
max: number;
timeout?: number | undefined;
match?: MatchOption[] | MatchOption | undefined;
backoffBase?: number | undefined;
backoffExponent?: number | undefined;
report?: ((message: string, obj: CoercedOptions, err?: any) => void) | undefined;
name?: string | undefined;
}
type CoercedOptions = {
$current: number;
max: number;
timeout?: number | undefined;
match: MatchOption[];
backoffBase: number;
backoffExponent: number;
report?: ((message: string, obj: CoercedOptions, err?: any) => void) | undefined;
name?: string | undefined;
};
type MaybePromise<T> = PromiseLike<T> | T;
type RetryCallback<T> = ({ current }: {
current: CoercedOptions['$current'];
}) => MaybePromise<T>;
export declare function retryAsPromised<T>(callback: RetryCallback<T>, optionsInput: Options | number | CoercedOptions): Promise<T>;
export default retryAsPromised;