mollitia
Version:
JavaScript Resilience Library
33 lines (31 loc) • 908 B
TypeScript
import { Module, ModuleOptions } from './index.js';
import { Circuit, CircuitFunction } from '../circuit.js';
/**
* Properties that customizes the timeout behavior.
*/
export declare abstract class TimeoutOptions extends ModuleOptions {
/**
* The amount of time before a promise is rejected.
*/
delay?: number;
}
/**
* Returned when a function times out.
* @param message Timed out
*/
export declare class TimeoutError extends Error {
constructor();
}
/**
* The Timeout Module, that allows to ignore the result of the function if it takes too long.
*/
export declare class Timeout extends Module {
/**
* The amount of time before a promise is rejected.
*/
delay: number;
constructor(options?: TimeoutOptions);
execute<T>(circuit: Circuit, promise: CircuitFunction, ...params: any[]): Promise<T>;
private _promiseTimeout;
private emitTimeout;
}