UNPKG

@creejs/commons-retrier

Version:
30 lines (29 loc) 1.14 kB
export default class Task { /** * Creates a new Task instance. * @param {Retrier} retrier - The retrier instance. * @param {Function} task - The function to be executed as the task. */ constructor(retrier: Retrier, task: Function); retrier: import("./retrier.js").default; task: Function; result: any; /** @type {Error|undefined} */ error: Error | undefined; get failed(): boolean; get succeeded(): boolean; /** * Executes the task with the given retry parameters. * 1. if execution throw error, keep error in this.error * 2. if execution return value, keep it in this.result * 3. always return Promise<void> * @param {number} retries - The number of retries attempted so far. * @param {number} latence - The current latency ms. * @param {number} nextInterval - The next interval ms. * @returns {Promise<void>} The result of the task execution. */ execute(retries: number, latence: number, nextInterval: number): Promise<void>; dispose(): void; } export { Task as TaskType }; export type Retrier = import("./retrier.js").default;