/** * The `timers/promises` API provides an alternative set of timer functions * that return `Promise` objects. The API is accessible via`require('timers/promises')`. * * ```js * import { * setTimeout, * setImmediate, * setInterval, * } from 'timers/promises'; * ``` * @since v15.0.0 */ declare module 'timers/promises' { import { TimerOptions } from 'node:timers'; /** * ```js * import { * setTimeout, * } from 'timers/promises'; * * const res = await setTimeout(100, 'result'); * * console.log(res); // Prints 'result' * ``` * @since v15.0.0 * @param [delay=1] The number of milliseconds to wait before fulfilling the promise. * @param value A value with which the promise is fulfilled. */ function setTimeout(delay?: number, value?: T, options?: TimerOptions): Promise; /** * ```js * import { * setImmediate, * } from 'timers/promises'; * * const res = await setImmediate('result'); * * console.log(res); // Prints 'result' * ``` * @since v15.0.0 * @param value A value with which the promise is fulfilled. */ function setImmediate(value?: T, options?: TimerOptions): Promise; /** * Returns an async iterator that generates values in an interval of `delay` ms. * * ```js * import { * setInterval, * } from 'timers/promises'; * * const interval = 100; * for await (const startTime of setInterval(interval, Date.now())) { * const now = Date.now(); * console.log(now); * if ((now - startTime) > 1000) * break; * } * console.log(Date.now()); * ``` * @since v15.9.0 */ function setInterval(delay?: number, value?: T, options?: TimerOptions): AsyncIterable; } declare module 'node:timers/promises' { export * from 'timers/promises'; }