1 | /**
|
2 | * The `timers/promises` API provides an alternative set of timer functions
|
3 | * that return `Promise` objects. The API is accessible via`require('timers/promises')`.
|
4 | *
|
5 | * ```js
|
6 | * import {
|
7 | * setTimeout,
|
8 | * setImmediate,
|
9 | * setInterval,
|
10 | * } from 'timers/promises';
|
11 | * ```
|
12 | *
|
13 | * ```js
|
14 | * const {
|
15 | * setTimeout,
|
16 | * setImmediate,
|
17 | * setInterval,
|
18 | * } = require('timers/promises');
|
19 | * ```
|
20 | * @since v15.0.0
|
21 | */
|
22 | declare module 'timers/promises' {
|
23 | import { TimerOptions } from 'node:timers';
|
24 | /**
|
25 | * ```js
|
26 | * import {
|
27 | * setTimeout,
|
28 | * } from 'timers/promises';
|
29 | *
|
30 | * const res = await setTimeout(100, 'result');
|
31 | *
|
32 | * console.log(res); // Prints 'result'
|
33 | * ```
|
34 | *
|
35 | * ```js
|
36 | * const {
|
37 | * setTimeout,
|
38 | * } = require('timers/promises');
|
39 | *
|
40 | * setTimeout(100, 'result').then((res) => {
|
41 | * console.log(res); // Prints 'result'
|
42 | * });
|
43 | * ```
|
44 | * @since v15.0.0
|
45 | * @param [delay=1] The number of milliseconds to wait before fulfilling the promise.
|
46 | * @param value A value with which the promise is fulfilled.
|
47 | */
|
48 | function setTimeout<T = void>(delay?: number, value?: T, options?: TimerOptions): Promise<T>;
|
49 | /**
|
50 | * ```js
|
51 | * import {
|
52 | * setImmediate,
|
53 | * } from 'timers/promises';
|
54 | *
|
55 | * const res = await setImmediate('result');
|
56 | *
|
57 | * console.log(res); // Prints 'result'
|
58 | * ```
|
59 | *
|
60 | * ```js
|
61 | * const {
|
62 | * setImmediate,
|
63 | * } = require('timers/promises');
|
64 | *
|
65 | * setImmediate('result').then((res) => {
|
66 | * console.log(res); // Prints 'result'
|
67 | * });
|
68 | * ```
|
69 | * @since v15.0.0
|
70 | * @param value A value with which the promise is fulfilled.
|
71 | */
|
72 | function setImmediate<T = void>(value?: T, options?: TimerOptions): Promise<T>;
|
73 | /**
|
74 | * Returns an async iterator that generates values in an interval of `delay` ms.
|
75 | *
|
76 | * ```js
|
77 | * import {
|
78 | * setInterval,
|
79 | * } from 'timers/promises';
|
80 | *
|
81 | * const interval = 100;
|
82 | * for await (const startTime of setInterval(interval, Date.now())) {
|
83 | * const now = Date.now();
|
84 | * console.log(now);
|
85 | * if ((now - startTime) > 1000)
|
86 | * break;
|
87 | * }
|
88 | * console.log(Date.now());
|
89 | * ```
|
90 | *
|
91 | * ```js
|
92 | * const {
|
93 | * setInterval,
|
94 | * } = require('timers/promises');
|
95 | * const interval = 100;
|
96 | *
|
97 | * (async function() {
|
98 | * for await (const startTime of setInterval(interval, Date.now())) {
|
99 | * const now = Date.now();
|
100 | * console.log(now);
|
101 | * if ((now - startTime) > 1000)
|
102 | * break;
|
103 | * }
|
104 | * console.log(Date.now());
|
105 | * })();
|
106 | * ```
|
107 | * @since v15.9.0
|
108 | */
|
109 | function setInterval<T = void>(delay?: number, value?: T, options?: TimerOptions): AsyncIterable<T>;
|
110 | }
|
111 | declare module 'node:timers/promises' {
|
112 | export * from 'timers/promises';
|
113 | }
|