cdk-common 2.0.1351 → 2.0.1352

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/.jsii +38 -2
  2. package/API.md +36 -0
  3. package/lib/main.js +1 -1
  4. package/lib/managed-policies.d.ts +7 -1
  5. package/lib/managed-policies.js +7 -1
  6. package/node_modules/@types/concat-stream/node_modules/@types/node/README.md +1 -1
  7. package/node_modules/@types/concat-stream/node_modules/@types/node/assert/strict.d.ts +5 -11
  8. package/node_modules/@types/concat-stream/node_modules/@types/node/assert.d.ts +9 -169
  9. package/node_modules/@types/concat-stream/node_modules/@types/node/async_hooks.d.ts +8 -8
  10. package/node_modules/@types/concat-stream/node_modules/@types/node/buffer.buffer.d.ts +1 -7
  11. package/node_modules/@types/concat-stream/node_modules/@types/node/buffer.d.ts +44 -168
  12. package/node_modules/@types/concat-stream/node_modules/@types/node/child_process.d.ts +16 -64
  13. package/node_modules/@types/concat-stream/node_modules/@types/node/cluster.d.ts +240 -332
  14. package/node_modules/@types/concat-stream/node_modules/@types/node/console.d.ts +49 -351
  15. package/node_modules/@types/concat-stream/node_modules/@types/node/constants.d.ts +3 -4
  16. package/node_modules/@types/concat-stream/node_modules/@types/node/crypto.d.ts +279 -1631
  17. package/node_modules/@types/concat-stream/node_modules/@types/node/dgram.d.ts +15 -51
  18. package/node_modules/@types/concat-stream/node_modules/@types/node/diagnostics_channel.d.ts +4 -4
  19. package/node_modules/@types/concat-stream/node_modules/@types/node/dns/promises.d.ts +3 -3
  20. package/node_modules/@types/concat-stream/node_modules/@types/node/dns.d.ts +131 -132
  21. package/node_modules/@types/concat-stream/node_modules/@types/node/domain.d.ts +13 -17
  22. package/node_modules/@types/concat-stream/node_modules/@types/node/events.d.ts +869 -791
  23. package/node_modules/@types/concat-stream/node_modules/@types/node/fs/promises.d.ts +7 -8
  24. package/node_modules/@types/concat-stream/node_modules/@types/node/fs.d.ts +417 -455
  25. package/node_modules/@types/concat-stream/node_modules/@types/node/globals.d.ts +6 -26
  26. package/node_modules/@types/concat-stream/node_modules/@types/node/globals.typedarray.d.ts +60 -0
  27. package/node_modules/@types/concat-stream/node_modules/@types/node/http.d.ts +263 -254
  28. package/node_modules/@types/concat-stream/node_modules/@types/node/http2.d.ts +528 -804
  29. package/node_modules/@types/concat-stream/node_modules/@types/node/https.d.ts +59 -239
  30. package/node_modules/@types/concat-stream/node_modules/@types/node/index.d.ts +15 -1
  31. package/node_modules/@types/concat-stream/node_modules/@types/node/inspector/promises.d.ts +41 -0
  32. package/node_modules/@types/concat-stream/node_modules/@types/node/inspector.d.ts +6 -59
  33. package/node_modules/@types/concat-stream/node_modules/@types/node/inspector.generated.d.ts +3 -10
  34. package/node_modules/@types/concat-stream/node_modules/@types/node/module.d.ts +47 -122
  35. package/node_modules/@types/concat-stream/node_modules/@types/node/net.d.ts +63 -184
  36. package/node_modules/@types/concat-stream/node_modules/@types/node/os.d.ts +6 -6
  37. package/node_modules/@types/concat-stream/node_modules/@types/node/package.json +2 -2
  38. package/node_modules/@types/concat-stream/node_modules/@types/node/path/posix.d.ts +8 -0
  39. package/node_modules/@types/concat-stream/node_modules/@types/node/path/win32.d.ts +8 -0
  40. package/node_modules/@types/concat-stream/node_modules/@types/node/path.d.ts +120 -133
  41. package/node_modules/@types/concat-stream/node_modules/@types/node/perf_hooks.d.ts +282 -643
  42. package/node_modules/@types/concat-stream/node_modules/@types/node/process.d.ts +156 -128
  43. package/node_modules/@types/concat-stream/node_modules/@types/node/punycode.d.ts +5 -5
  44. package/node_modules/@types/concat-stream/node_modules/@types/node/querystring.d.ts +4 -4
  45. package/node_modules/@types/concat-stream/node_modules/@types/node/quic.d.ts +910 -0
  46. package/node_modules/@types/concat-stream/node_modules/@types/node/readline/promises.d.ts +3 -3
  47. package/node_modules/@types/concat-stream/node_modules/@types/node/readline.d.ts +67 -120
  48. package/node_modules/@types/concat-stream/node_modules/@types/node/repl.d.ts +75 -98
  49. package/node_modules/@types/concat-stream/node_modules/@types/node/sea.d.ts +1 -1
  50. package/node_modules/@types/concat-stream/node_modules/@types/node/sqlite.d.ts +2 -2
  51. package/node_modules/@types/concat-stream/node_modules/@types/node/stream/consumers.d.ts +10 -10
  52. package/node_modules/@types/concat-stream/node_modules/@types/node/stream/promises.d.ts +136 -15
  53. package/node_modules/@types/concat-stream/node_modules/@types/node/stream/web.d.ts +176 -453
  54. package/node_modules/@types/concat-stream/node_modules/@types/node/stream.d.ts +555 -478
  55. package/node_modules/@types/concat-stream/node_modules/@types/node/string_decoder.d.ts +4 -4
  56. package/node_modules/@types/concat-stream/node_modules/@types/node/test/reporters.d.ts +96 -0
  57. package/node_modules/@types/concat-stream/node_modules/@types/node/test.d.ts +80 -180
  58. package/node_modules/@types/concat-stream/node_modules/@types/node/timers/promises.d.ts +4 -4
  59. package/node_modules/@types/concat-stream/node_modules/@types/node/timers.d.ts +4 -130
  60. package/node_modules/@types/concat-stream/node_modules/@types/node/tls.d.ts +102 -177
  61. package/node_modules/@types/concat-stream/node_modules/@types/node/trace_events.d.ts +9 -9
  62. package/node_modules/@types/concat-stream/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +1 -7
  63. package/node_modules/@types/concat-stream/node_modules/@types/node/ts5.6/index.d.ts +15 -1
  64. package/node_modules/@types/concat-stream/node_modules/@types/node/ts5.7/index.d.ts +15 -1
  65. package/node_modules/@types/concat-stream/node_modules/@types/node/tty.d.ts +58 -16
  66. package/node_modules/@types/concat-stream/node_modules/@types/node/url.d.ts +54 -592
  67. package/node_modules/@types/concat-stream/node_modules/@types/node/util/types.d.ts +558 -0
  68. package/node_modules/@types/concat-stream/node_modules/@types/node/util.d.ts +120 -792
  69. package/node_modules/@types/concat-stream/node_modules/@types/node/v8.d.ts +32 -5
  70. package/node_modules/@types/concat-stream/node_modules/@types/node/vm.d.ts +13 -13
  71. package/node_modules/@types/concat-stream/node_modules/@types/node/wasi.d.ts +4 -4
  72. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/abortcontroller.d.ts +27 -2
  73. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  74. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/console.d.ts +9 -0
  75. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/crypto.d.ts +7 -0
  76. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  77. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/events.d.ts +9 -0
  78. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/fetch.d.ts +4 -0
  79. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  80. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  81. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  82. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/streams.d.ts +93 -0
  83. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  84. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/url.d.ts +24 -0
  85. package/node_modules/@types/concat-stream/node_modules/@types/node/worker_threads.d.ts +176 -358
  86. package/node_modules/@types/concat-stream/node_modules/@types/node/zlib.d.ts +8 -71
  87. package/node_modules/@types/form-data/node_modules/@types/node/README.md +1 -1
  88. package/node_modules/@types/form-data/node_modules/@types/node/assert/strict.d.ts +5 -11
  89. package/node_modules/@types/form-data/node_modules/@types/node/assert.d.ts +9 -169
  90. package/node_modules/@types/form-data/node_modules/@types/node/async_hooks.d.ts +8 -8
  91. package/node_modules/@types/form-data/node_modules/@types/node/buffer.buffer.d.ts +1 -7
  92. package/node_modules/@types/form-data/node_modules/@types/node/buffer.d.ts +44 -168
  93. package/node_modules/@types/form-data/node_modules/@types/node/child_process.d.ts +16 -64
  94. package/node_modules/@types/form-data/node_modules/@types/node/cluster.d.ts +240 -332
  95. package/node_modules/@types/form-data/node_modules/@types/node/console.d.ts +49 -351
  96. package/node_modules/@types/form-data/node_modules/@types/node/constants.d.ts +3 -4
  97. package/node_modules/@types/form-data/node_modules/@types/node/crypto.d.ts +279 -1631
  98. package/node_modules/@types/form-data/node_modules/@types/node/dgram.d.ts +15 -51
  99. package/node_modules/@types/form-data/node_modules/@types/node/diagnostics_channel.d.ts +4 -4
  100. package/node_modules/@types/form-data/node_modules/@types/node/dns/promises.d.ts +3 -3
  101. package/node_modules/@types/form-data/node_modules/@types/node/dns.d.ts +131 -132
  102. package/node_modules/@types/form-data/node_modules/@types/node/domain.d.ts +13 -17
  103. package/node_modules/@types/form-data/node_modules/@types/node/events.d.ts +869 -791
  104. package/node_modules/@types/form-data/node_modules/@types/node/fs/promises.d.ts +7 -8
  105. package/node_modules/@types/form-data/node_modules/@types/node/fs.d.ts +417 -455
  106. package/node_modules/@types/form-data/node_modules/@types/node/globals.d.ts +6 -26
  107. package/node_modules/@types/form-data/node_modules/@types/node/globals.typedarray.d.ts +60 -0
  108. package/node_modules/@types/form-data/node_modules/@types/node/http.d.ts +263 -254
  109. package/node_modules/@types/form-data/node_modules/@types/node/http2.d.ts +528 -804
  110. package/node_modules/@types/form-data/node_modules/@types/node/https.d.ts +59 -239
  111. package/node_modules/@types/form-data/node_modules/@types/node/index.d.ts +15 -1
  112. package/node_modules/@types/form-data/node_modules/@types/node/inspector/promises.d.ts +41 -0
  113. package/node_modules/@types/form-data/node_modules/@types/node/inspector.d.ts +6 -59
  114. package/node_modules/@types/form-data/node_modules/@types/node/inspector.generated.d.ts +3 -10
  115. package/node_modules/@types/form-data/node_modules/@types/node/module.d.ts +47 -122
  116. package/node_modules/@types/form-data/node_modules/@types/node/net.d.ts +63 -184
  117. package/node_modules/@types/form-data/node_modules/@types/node/os.d.ts +6 -6
  118. package/node_modules/@types/form-data/node_modules/@types/node/package.json +2 -2
  119. package/node_modules/@types/form-data/node_modules/@types/node/path/posix.d.ts +8 -0
  120. package/node_modules/@types/form-data/node_modules/@types/node/path/win32.d.ts +8 -0
  121. package/node_modules/@types/form-data/node_modules/@types/node/path.d.ts +120 -133
  122. package/node_modules/@types/form-data/node_modules/@types/node/perf_hooks.d.ts +282 -643
  123. package/node_modules/@types/form-data/node_modules/@types/node/process.d.ts +156 -128
  124. package/node_modules/@types/form-data/node_modules/@types/node/punycode.d.ts +5 -5
  125. package/node_modules/@types/form-data/node_modules/@types/node/querystring.d.ts +4 -4
  126. package/node_modules/@types/form-data/node_modules/@types/node/quic.d.ts +910 -0
  127. package/node_modules/@types/form-data/node_modules/@types/node/readline/promises.d.ts +3 -3
  128. package/node_modules/@types/form-data/node_modules/@types/node/readline.d.ts +67 -120
  129. package/node_modules/@types/form-data/node_modules/@types/node/repl.d.ts +75 -98
  130. package/node_modules/@types/form-data/node_modules/@types/node/sea.d.ts +1 -1
  131. package/node_modules/@types/form-data/node_modules/@types/node/sqlite.d.ts +2 -2
  132. package/node_modules/@types/form-data/node_modules/@types/node/stream/consumers.d.ts +10 -10
  133. package/node_modules/@types/form-data/node_modules/@types/node/stream/promises.d.ts +136 -15
  134. package/node_modules/@types/form-data/node_modules/@types/node/stream/web.d.ts +176 -453
  135. package/node_modules/@types/form-data/node_modules/@types/node/stream.d.ts +555 -478
  136. package/node_modules/@types/form-data/node_modules/@types/node/string_decoder.d.ts +4 -4
  137. package/node_modules/@types/form-data/node_modules/@types/node/test/reporters.d.ts +96 -0
  138. package/node_modules/@types/form-data/node_modules/@types/node/test.d.ts +80 -180
  139. package/node_modules/@types/form-data/node_modules/@types/node/timers/promises.d.ts +4 -4
  140. package/node_modules/@types/form-data/node_modules/@types/node/timers.d.ts +4 -130
  141. package/node_modules/@types/form-data/node_modules/@types/node/tls.d.ts +102 -177
  142. package/node_modules/@types/form-data/node_modules/@types/node/trace_events.d.ts +9 -9
  143. package/node_modules/@types/form-data/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +1 -7
  144. package/node_modules/@types/form-data/node_modules/@types/node/ts5.6/index.d.ts +15 -1
  145. package/node_modules/@types/form-data/node_modules/@types/node/ts5.7/index.d.ts +15 -1
  146. package/node_modules/@types/form-data/node_modules/@types/node/tty.d.ts +58 -16
  147. package/node_modules/@types/form-data/node_modules/@types/node/url.d.ts +54 -592
  148. package/node_modules/@types/form-data/node_modules/@types/node/util/types.d.ts +558 -0
  149. package/node_modules/@types/form-data/node_modules/@types/node/util.d.ts +120 -792
  150. package/node_modules/@types/form-data/node_modules/@types/node/v8.d.ts +32 -5
  151. package/node_modules/@types/form-data/node_modules/@types/node/vm.d.ts +13 -13
  152. package/node_modules/@types/form-data/node_modules/@types/node/wasi.d.ts +4 -4
  153. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/abortcontroller.d.ts +27 -2
  154. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  155. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/console.d.ts +9 -0
  156. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/crypto.d.ts +7 -0
  157. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  158. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/events.d.ts +9 -0
  159. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/fetch.d.ts +4 -0
  160. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  161. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  162. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  163. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/streams.d.ts +93 -0
  164. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  165. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/url.d.ts +24 -0
  166. package/node_modules/@types/form-data/node_modules/@types/node/worker_threads.d.ts +176 -358
  167. package/node_modules/@types/form-data/node_modules/@types/node/zlib.d.ts +8 -71
  168. package/package.json +4 -4
@@ -52,17 +52,22 @@
52
52
  *
53
53
  * Worker threads inherit non-process-specific options by default. Refer to `Worker constructor options` to know how to customize worker thread options,
54
54
  * specifically `argv` and `execArgv` options.
55
- * @see [source](https://github.com/nodejs/node/blob/v24.x/lib/worker_threads.js)
55
+ * @see [source](https://github.com/nodejs/node/blob/v25.x/lib/worker_threads.js)
56
56
  */
57
- declare module "worker_threads" {
58
- import { Context } from "node:vm";
59
- import { EventEmitter, NodeEventTarget } from "node:events";
60
- import { EventLoopUtilityFunction } from "node:perf_hooks";
57
+ declare module "node:worker_threads" {
58
+ import {
59
+ EventEmitter,
60
+ InternalEventEmitter,
61
+ InternalEventTargetEventProperties,
62
+ NodeEventTarget,
63
+ } from "node:events";
61
64
  import { FileHandle } from "node:fs/promises";
65
+ import { Performance } from "node:perf_hooks";
62
66
  import { Readable, Writable } from "node:stream";
63
67
  import { ReadableStream, TransformStream, WritableStream } from "node:stream/web";
64
68
  import { URL } from "node:url";
65
69
  import { CPUProfileHandle, HeapInfo, HeapProfileHandle } from "node:v8";
70
+ import { Context } from "node:vm";
66
71
  import { MessageEvent } from "undici-types";
67
72
  const isInternalThread: boolean;
68
73
  const isMainThread: boolean;
@@ -72,186 +77,10 @@ declare module "worker_threads" {
72
77
  const threadId: number;
73
78
  const threadName: string | null;
74
79
  const workerData: any;
75
- /**
76
- * Instances of the `worker.MessageChannel` class represent an asynchronous,
77
- * two-way communications channel.
78
- * The `MessageChannel` has no methods of its own. `new MessageChannel()` yields an object with `port1` and `port2` properties, which refer to linked `MessagePort` instances.
79
- *
80
- * ```js
81
- * import { MessageChannel } from 'node:worker_threads';
82
- *
83
- * const { port1, port2 } = new MessageChannel();
84
- * port1.on('message', (message) => console.log('received', message));
85
- * port2.postMessage({ foo: 'bar' });
86
- * // Prints: received { foo: 'bar' } from the `port1.on('message')` listener
87
- * ```
88
- * @since v10.5.0
89
- */
90
- class MessageChannel {
91
- readonly port1: MessagePort;
92
- readonly port2: MessagePort;
93
- }
94
- interface WorkerPerformance {
95
- eventLoopUtilization: EventLoopUtilityFunction;
96
- }
97
- type Transferable =
98
- | ArrayBuffer
99
- | MessagePort
100
- | AbortSignal
101
- | FileHandle
102
- | ReadableStream
103
- | WritableStream
104
- | TransformStream;
80
+ interface WorkerPerformance extends Pick<Performance, "eventLoopUtilization"> {}
105
81
  /** @deprecated Use `import { Transferable } from "node:worker_threads"` instead. */
106
82
  // TODO: remove in a future major @types/node version.
107
83
  type TransferListItem = Transferable;
108
- /**
109
- * Instances of the `worker.MessagePort` class represent one end of an
110
- * asynchronous, two-way communications channel. It can be used to transfer
111
- * structured data, memory regions and other `MessagePort`s between different `Worker`s.
112
- *
113
- * This implementation matches [browser `MessagePort`](https://developer.mozilla.org/en-US/docs/Web/API/MessagePort) s.
114
- * @since v10.5.0
115
- */
116
- class MessagePort implements EventTarget {
117
- /**
118
- * Disables further sending of messages on either side of the connection.
119
- * This method can be called when no further communication will happen over this `MessagePort`.
120
- *
121
- * The `'close' event` is emitted on both `MessagePort` instances that
122
- * are part of the channel.
123
- * @since v10.5.0
124
- */
125
- close(): void;
126
- /**
127
- * Sends a JavaScript value to the receiving side of this channel. `value` is transferred in a way which is compatible with
128
- * the [HTML structured clone algorithm](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm).
129
- *
130
- * In particular, the significant differences to `JSON` are:
131
- *
132
- * * `value` may contain circular references.
133
- * * `value` may contain instances of builtin JS types such as `RegExp`s, `BigInt`s, `Map`s, `Set`s, etc.
134
- * * `value` may contain typed arrays, both using `ArrayBuffer`s
135
- * and `SharedArrayBuffer`s.
136
- * * `value` may contain [`WebAssembly.Module`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/Module) instances.
137
- * * `value` may not contain native (C++-backed) objects other than:
138
- *
139
- * ```js
140
- * import { MessageChannel } from 'node:worker_threads';
141
- * const { port1, port2 } = new MessageChannel();
142
- *
143
- * port1.on('message', (message) => console.log(message));
144
- *
145
- * const circularData = {};
146
- * circularData.foo = circularData;
147
- * // Prints: { foo: [Circular] }
148
- * port2.postMessage(circularData);
149
- * ```
150
- *
151
- * `transferList` may be a list of [`ArrayBuffer`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer), `MessagePort`, and `FileHandle` objects.
152
- * After transferring, they are not usable on the sending side of the channel
153
- * anymore (even if they are not contained in `value`). Unlike with `child processes`, transferring handles such as network sockets is currently
154
- * not supported.
155
- *
156
- * If `value` contains [`SharedArrayBuffer`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer) instances, those are accessible
157
- * from either thread. They cannot be listed in `transferList`.
158
- *
159
- * `value` may still contain `ArrayBuffer` instances that are not in `transferList`; in that case, the underlying memory is copied rather than moved.
160
- *
161
- * ```js
162
- * import { MessageChannel } from 'node:worker_threads';
163
- * const { port1, port2 } = new MessageChannel();
164
- *
165
- * port1.on('message', (message) => console.log(message));
166
- *
167
- * const uint8Array = new Uint8Array([ 1, 2, 3, 4 ]);
168
- * // This posts a copy of `uint8Array`:
169
- * port2.postMessage(uint8Array);
170
- * // This does not copy data, but renders `uint8Array` unusable:
171
- * port2.postMessage(uint8Array, [ uint8Array.buffer ]);
172
- *
173
- * // The memory for the `sharedUint8Array` is accessible from both the
174
- * // original and the copy received by `.on('message')`:
175
- * const sharedUint8Array = new Uint8Array(new SharedArrayBuffer(4));
176
- * port2.postMessage(sharedUint8Array);
177
- *
178
- * // This transfers a freshly created message port to the receiver.
179
- * // This can be used, for example, to create communication channels between
180
- * // multiple `Worker` threads that are children of the same parent thread.
181
- * const otherChannel = new MessageChannel();
182
- * port2.postMessage({ port: otherChannel.port1 }, [ otherChannel.port1 ]);
183
- * ```
184
- *
185
- * The message object is cloned immediately, and can be modified after
186
- * posting without having side effects.
187
- *
188
- * For more information on the serialization and deserialization mechanisms
189
- * behind this API, see the `serialization API of the node:v8 module`.
190
- * @since v10.5.0
191
- */
192
- postMessage(value: any, transferList?: readonly Transferable[]): void;
193
- /**
194
- * If true, the `MessagePort` object will keep the Node.js event loop active.
195
- * @since v18.1.0, v16.17.0
196
- */
197
- hasRef(): boolean;
198
- /**
199
- * Opposite of `unref()`. Calling `ref()` on a previously `unref()`ed port does _not_ let the program exit if it's the only active handle left (the default
200
- * behavior). If the port is `ref()`ed, calling `ref()` again has no effect.
201
- *
202
- * If listeners are attached or removed using `.on('message')`, the port
203
- * is `ref()`ed and `unref()`ed automatically depending on whether
204
- * listeners for the event exist.
205
- * @since v10.5.0
206
- */
207
- ref(): void;
208
- /**
209
- * Calling `unref()` on a port allows the thread to exit if this is the only
210
- * active handle in the event system. If the port is already `unref()`ed calling `unref()` again has no effect.
211
- *
212
- * If listeners are attached or removed using `.on('message')`, the port is `ref()`ed and `unref()`ed automatically depending on whether
213
- * listeners for the event exist.
214
- * @since v10.5.0
215
- */
216
- unref(): void;
217
- /**
218
- * Starts receiving messages on this `MessagePort`. When using this port
219
- * as an event emitter, this is called automatically once `'message'` listeners are attached.
220
- *
221
- * This method exists for parity with the Web `MessagePort` API. In Node.js,
222
- * it is only useful for ignoring messages when no event listener is present.
223
- * Node.js also diverges in its handling of `.onmessage`. Setting it
224
- * automatically calls `.start()`, but unsetting it lets messages queue up
225
- * until a new handler is set or the port is discarded.
226
- * @since v10.5.0
227
- */
228
- start(): void;
229
- addListener(event: "close", listener: (ev: Event) => void): this;
230
- addListener(event: "message", listener: (value: any) => void): this;
231
- addListener(event: "messageerror", listener: (error: Error) => void): this;
232
- addListener(event: string, listener: (arg: any) => void): this;
233
- emit(event: "close", ev: Event): boolean;
234
- emit(event: "message", value: any): boolean;
235
- emit(event: "messageerror", error: Error): boolean;
236
- emit(event: string, arg: any): boolean;
237
- off(event: "close", listener: (ev: Event) => void, options?: EventListenerOptions): this;
238
- off(event: "message", listener: (value: any) => void, options?: EventListenerOptions): this;
239
- off(event: "messageerror", listener: (error: Error) => void, options?: EventListenerOptions): this;
240
- off(event: string, listener: (arg: any) => void, options?: EventListenerOptions): this;
241
- on(event: "close", listener: (ev: Event) => void): this;
242
- on(event: "message", listener: (value: any) => void): this;
243
- on(event: "messageerror", listener: (error: Error) => void): this;
244
- on(event: string, listener: (arg: any) => void): this;
245
- once(event: "close", listener: (ev: Event) => void): this;
246
- once(event: "message", listener: (value: any) => void): this;
247
- once(event: "messageerror", listener: (error: Error) => void): this;
248
- once(event: string, listener: (arg: any) => void): this;
249
- removeListener(event: "close", listener: (ev: Event) => void, options?: EventListenerOptions): this;
250
- removeListener(event: "message", listener: (value: any) => void, options?: EventListenerOptions): this;
251
- removeListener(event: "messageerror", listener: (error: Error) => void, options?: EventListenerOptions): this;
252
- removeListener(event: string, listener: (arg: any) => void, options?: EventListenerOptions): this;
253
- }
254
- interface MessagePort extends NodeEventTarget {}
255
84
  interface WorkerOptions {
256
85
  /**
257
86
  * List of arguments which would be stringified and appended to
@@ -302,6 +131,13 @@ declare module "worker_threads" {
302
131
  */
303
132
  stackSizeMb?: number | undefined;
304
133
  }
134
+ interface WorkerEventMap {
135
+ "error": [err: unknown];
136
+ "exit": [exitCode: number];
137
+ "message": [value: any];
138
+ "messageerror": [error: Error];
139
+ "online": [];
140
+ }
305
141
  /**
306
142
  * The `Worker` class represents an independent JavaScript execution thread.
307
143
  * Most Node.js APIs are available inside of it.
@@ -366,7 +202,7 @@ declare module "worker_threads" {
366
202
  * ```
367
203
  * @since v10.5.0
368
204
  */
369
- class Worker extends EventEmitter {
205
+ class Worker implements EventEmitter {
370
206
  /**
371
207
  * If `stdin: true` was passed to the `Worker` constructor, this is a
372
208
  * writable stream. The data written to this stream will be made available in
@@ -556,139 +392,8 @@ declare module "worker_threads" {
556
392
  * @since v24.2.0
557
393
  */
558
394
  [Symbol.asyncDispose](): Promise<void>;
559
- addListener(event: "error", listener: (err: Error) => void): this;
560
- addListener(event: "exit", listener: (exitCode: number) => void): this;
561
- addListener(event: "message", listener: (value: any) => void): this;
562
- addListener(event: "messageerror", listener: (error: Error) => void): this;
563
- addListener(event: "online", listener: () => void): this;
564
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
565
- emit(event: "error", err: Error): boolean;
566
- emit(event: "exit", exitCode: number): boolean;
567
- emit(event: "message", value: any): boolean;
568
- emit(event: "messageerror", error: Error): boolean;
569
- emit(event: "online"): boolean;
570
- emit(event: string | symbol, ...args: any[]): boolean;
571
- on(event: "error", listener: (err: Error) => void): this;
572
- on(event: "exit", listener: (exitCode: number) => void): this;
573
- on(event: "message", listener: (value: any) => void): this;
574
- on(event: "messageerror", listener: (error: Error) => void): this;
575
- on(event: "online", listener: () => void): this;
576
- on(event: string | symbol, listener: (...args: any[]) => void): this;
577
- once(event: "error", listener: (err: Error) => void): this;
578
- once(event: "exit", listener: (exitCode: number) => void): this;
579
- once(event: "message", listener: (value: any) => void): this;
580
- once(event: "messageerror", listener: (error: Error) => void): this;
581
- once(event: "online", listener: () => void): this;
582
- once(event: string | symbol, listener: (...args: any[]) => void): this;
583
- prependListener(event: "error", listener: (err: Error) => void): this;
584
- prependListener(event: "exit", listener: (exitCode: number) => void): this;
585
- prependListener(event: "message", listener: (value: any) => void): this;
586
- prependListener(event: "messageerror", listener: (error: Error) => void): this;
587
- prependListener(event: "online", listener: () => void): this;
588
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
589
- prependOnceListener(event: "error", listener: (err: Error) => void): this;
590
- prependOnceListener(event: "exit", listener: (exitCode: number) => void): this;
591
- prependOnceListener(event: "message", listener: (value: any) => void): this;
592
- prependOnceListener(event: "messageerror", listener: (error: Error) => void): this;
593
- prependOnceListener(event: "online", listener: () => void): this;
594
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
595
- removeListener(event: "error", listener: (err: Error) => void): this;
596
- removeListener(event: "exit", listener: (exitCode: number) => void): this;
597
- removeListener(event: "message", listener: (value: any) => void): this;
598
- removeListener(event: "messageerror", listener: (error: Error) => void): this;
599
- removeListener(event: "online", listener: () => void): this;
600
- removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
601
- off(event: "error", listener: (err: Error) => void): this;
602
- off(event: "exit", listener: (exitCode: number) => void): this;
603
- off(event: "message", listener: (value: any) => void): this;
604
- off(event: "messageerror", listener: (error: Error) => void): this;
605
- off(event: "online", listener: () => void): this;
606
- off(event: string | symbol, listener: (...args: any[]) => void): this;
607
- }
608
- interface BroadcastChannel extends NodeJS.RefCounted {}
609
- /**
610
- * Instances of `BroadcastChannel` allow asynchronous one-to-many communication
611
- * with all other `BroadcastChannel` instances bound to the same channel name.
612
- *
613
- * ```js
614
- * 'use strict';
615
- *
616
- * import {
617
- * isMainThread,
618
- * BroadcastChannel,
619
- * Worker,
620
- * } from 'node:worker_threads';
621
- *
622
- * const bc = new BroadcastChannel('hello');
623
- *
624
- * if (isMainThread) {
625
- * let c = 0;
626
- * bc.onmessage = (event) => {
627
- * console.log(event.data);
628
- * if (++c === 10) bc.close();
629
- * };
630
- * for (let n = 0; n < 10; n++)
631
- * new Worker(__filename);
632
- * } else {
633
- * bc.postMessage('hello from every worker');
634
- * bc.close();
635
- * }
636
- * ```
637
- * @since v15.4.0
638
- */
639
- class BroadcastChannel extends EventTarget {
640
- readonly name: string;
641
- /**
642
- * Invoked with a single \`MessageEvent\` argument when a message is received.
643
- * @since v15.4.0
644
- */
645
- onmessage: (message: MessageEvent) => void;
646
- /**
647
- * Invoked with a received message cannot be deserialized.
648
- * @since v15.4.0
649
- */
650
- onmessageerror: (message: MessageEvent) => void;
651
- constructor(name: string);
652
- /**
653
- * Closes the `BroadcastChannel` connection.
654
- * @since v15.4.0
655
- */
656
- close(): void;
657
- /**
658
- * @since v15.4.0
659
- * @param message Any cloneable JavaScript value.
660
- */
661
- postMessage(message: unknown): void;
662
- }
663
- interface Lock {
664
- readonly mode: LockMode;
665
- readonly name: string;
666
395
  }
667
- interface LockGrantedCallback<T> {
668
- (lock: Lock | null): T;
669
- }
670
- interface LockInfo {
671
- clientId: string;
672
- mode: LockMode;
673
- name: string;
674
- }
675
- interface LockManager {
676
- query(): Promise<LockManagerSnapshot>;
677
- request<T>(name: string, callback: LockGrantedCallback<T>): Promise<Awaited<T>>;
678
- request<T>(name: string, options: LockOptions, callback: LockGrantedCallback<T>): Promise<Awaited<T>>;
679
- }
680
- interface LockManagerSnapshot {
681
- held: LockInfo[];
682
- pending: LockInfo[];
683
- }
684
- type LockMode = "exclusive" | "shared";
685
- interface LockOptions {
686
- ifAvailable?: boolean;
687
- mode?: LockMode;
688
- signal?: AbortSignal;
689
- steal?: boolean;
690
- }
691
- var locks: LockManager;
396
+ interface Worker extends InternalEventEmitter<WorkerEventMap> {}
692
397
  /**
693
398
  * Mark an object as not transferable. If `object` occurs in the transfer list of
694
399
  * a `port.postMessage()` call, it is ignored.
@@ -848,49 +553,162 @@ declare module "worker_threads" {
848
553
  transferList: readonly Transferable[],
849
554
  timeout?: number,
850
555
  ): Promise<void>;
851
-
852
- import {
853
- BroadcastChannel as _BroadcastChannel,
854
- MessageChannel as _MessageChannel,
855
- MessagePort as _MessagePort,
856
- } from "worker_threads";
857
- global {
858
- function structuredClone<T>(
859
- value: T,
860
- options?: { transfer?: Transferable[] },
861
- ): T;
862
- /**
863
- * `BroadcastChannel` class is a global reference for `import { BroadcastChannel } from 'worker_threads'`
864
- * https://nodejs.org/api/globals.html#broadcastchannel
865
- * @since v18.0.0
866
- */
867
- var BroadcastChannel: typeof globalThis extends {
868
- onmessage: any;
869
- BroadcastChannel: infer T;
870
- } ? T
871
- : typeof _BroadcastChannel;
872
- /**
873
- * `MessageChannel` class is a global reference for `import { MessageChannel } from 'worker_threads'`
874
- * https://nodejs.org/api/globals.html#messagechannel
875
- * @since v15.0.0
876
- */
877
- var MessageChannel: typeof globalThis extends {
878
- onmessage: any;
879
- MessageChannel: infer T;
880
- } ? T
881
- : typeof _MessageChannel;
882
- /**
883
- * `MessagePort` class is a global reference for `import { MessagePort } from 'worker_threads'`
884
- * https://nodejs.org/api/globals.html#messageport
885
- * @since v15.0.0
886
- */
887
- var MessagePort: typeof globalThis extends {
888
- onmessage: any;
889
- MessagePort: infer T;
890
- } ? T
891
- : typeof _MessagePort;
556
+ // #region web types
557
+ type LockMode = "exclusive" | "shared";
558
+ type Transferable =
559
+ | ArrayBuffer
560
+ | MessagePort
561
+ | AbortSignal
562
+ | FileHandle
563
+ | ReadableStream
564
+ | WritableStream
565
+ | TransformStream;
566
+ interface LockGrantedCallback<T> {
567
+ (lock: Lock | null): T;
568
+ }
569
+ interface LockInfo {
570
+ clientId: string;
571
+ mode: LockMode;
572
+ name: string;
573
+ }
574
+ interface LockManagerSnapshot {
575
+ held: LockInfo[];
576
+ pending: LockInfo[];
577
+ }
578
+ interface LockOptions {
579
+ ifAvailable?: boolean;
580
+ mode?: LockMode;
581
+ signal?: AbortSignal;
582
+ steal?: boolean;
583
+ }
584
+ interface StructuredSerializeOptions {
585
+ transfer?: Transferable[];
586
+ }
587
+ interface BroadcastChannelEventMap {
588
+ "message": MessageEvent;
589
+ "messageerror": MessageEvent;
590
+ }
591
+ interface BroadcastChannel
592
+ extends EventTarget, InternalEventTargetEventProperties<BroadcastChannelEventMap>, NodeJS.RefCounted
593
+ {
594
+ readonly name: string;
595
+ close(): void;
596
+ postMessage(message: any): void;
597
+ addEventListener<K extends keyof BroadcastChannelEventMap>(
598
+ type: K,
599
+ listener: (ev: BroadcastChannelEventMap[K]) => void,
600
+ options?: AddEventListenerOptions | boolean,
601
+ ): void;
602
+ addEventListener(
603
+ type: string,
604
+ listener: EventListener | EventListenerObject,
605
+ options?: AddEventListenerOptions | boolean,
606
+ ): void;
607
+ removeEventListener<K extends keyof BroadcastChannelEventMap>(
608
+ type: K,
609
+ listener: (ev: BroadcastChannelEventMap[K]) => void,
610
+ options?: EventListenerOptions | boolean,
611
+ ): void;
612
+ removeEventListener(
613
+ type: string,
614
+ listener: EventListener | EventListenerObject,
615
+ options?: EventListenerOptions | boolean,
616
+ ): void;
617
+ }
618
+ var BroadcastChannel: {
619
+ prototype: BroadcastChannel;
620
+ new(name: string): BroadcastChannel;
621
+ };
622
+ interface Lock {
623
+ readonly mode: LockMode;
624
+ readonly name: string;
625
+ }
626
+ // var Lock: {
627
+ // prototype: Lock;
628
+ // new(): Lock;
629
+ // };
630
+ interface LockManager {
631
+ query(): Promise<LockManagerSnapshot>;
632
+ request<T>(name: string, callback: LockGrantedCallback<T>): Promise<Awaited<T>>;
633
+ request<T>(name: string, options: LockOptions, callback: LockGrantedCallback<T>): Promise<Awaited<T>>;
634
+ }
635
+ // var LockManager: {
636
+ // prototype: LockManager;
637
+ // new(): LockManager;
638
+ // };
639
+ interface MessageChannel {
640
+ readonly port1: MessagePort;
641
+ readonly port2: MessagePort;
642
+ }
643
+ var MessageChannel: {
644
+ prototype: MessageChannel;
645
+ new(): MessageChannel;
646
+ };
647
+ interface MessagePortEventMap {
648
+ "close": Event;
649
+ "message": MessageEvent;
650
+ "messageerror": MessageEvent;
892
651
  }
652
+ interface MessagePort extends NodeEventTarget, InternalEventTargetEventProperties<MessagePortEventMap> {
653
+ close(): void;
654
+ postMessage(message: any, transfer: Transferable[]): void;
655
+ postMessage(message: any, options?: StructuredSerializeOptions): void;
656
+ start(): void;
657
+ addEventListener<K extends keyof MessagePortEventMap>(
658
+ type: K,
659
+ listener: (ev: MessagePortEventMap[K]) => void,
660
+ options?: AddEventListenerOptions | boolean,
661
+ ): void;
662
+ addEventListener(
663
+ type: string,
664
+ listener: EventListener | EventListenerObject,
665
+ options?: AddEventListenerOptions | boolean,
666
+ ): void;
667
+ removeEventListener<K extends keyof MessagePortEventMap>(
668
+ type: K,
669
+ listener: (ev: MessagePortEventMap[K]) => void,
670
+ options?: EventListenerOptions | boolean,
671
+ ): void;
672
+ removeEventListener(
673
+ type: string,
674
+ listener: EventListener | EventListenerObject,
675
+ options?: EventListenerOptions | boolean,
676
+ ): void;
677
+ // #region NodeEventTarget
678
+ addListener(event: "close", listener: (ev: Event) => void): this;
679
+ addListener(event: "message", listener: (value: any) => void): this;
680
+ addListener(event: "messageerror", listener: (error: Error) => void): this;
681
+ addListener(event: string, listener: (arg: any) => void): this;
682
+ emit(event: "close", ev: Event): boolean;
683
+ emit(event: "message", value: any): boolean;
684
+ emit(event: "messageerror", error: Error): boolean;
685
+ emit(event: string, arg: any): boolean;
686
+ off(event: "close", listener: (ev: Event) => void, options?: EventListenerOptions): this;
687
+ off(event: "message", listener: (value: any) => void, options?: EventListenerOptions): this;
688
+ off(event: "messageerror", listener: (error: Error) => void, options?: EventListenerOptions): this;
689
+ off(event: string, listener: (arg: any) => void, options?: EventListenerOptions): this;
690
+ on(event: "close", listener: (ev: Event) => void): this;
691
+ on(event: "message", listener: (value: any) => void): this;
692
+ on(event: "messageerror", listener: (error: Error) => void): this;
693
+ on(event: string, listener: (arg: any) => void): this;
694
+ once(event: "close", listener: (ev: Event) => void): this;
695
+ once(event: "message", listener: (value: any) => void): this;
696
+ once(event: "messageerror", listener: (error: Error) => void): this;
697
+ once(event: string, listener: (arg: any) => void): this;
698
+ removeListener(event: "close", listener: (ev: Event) => void, options?: EventListenerOptions): this;
699
+ removeListener(event: "message", listener: (value: any) => void, options?: EventListenerOptions): this;
700
+ removeListener(event: "messageerror", listener: (error: Error) => void, options?: EventListenerOptions): this;
701
+ removeListener(event: string, listener: (arg: any) => void, options?: EventListenerOptions): this;
702
+ // #endregion
703
+ }
704
+ var MessagePort: {
705
+ prototype: MessagePort;
706
+ new(): MessagePort;
707
+ };
708
+ var locks: LockManager;
709
+ export import structuredClone = globalThis.structuredClone;
710
+ // #endregion
893
711
  }
894
- declare module "node:worker_threads" {
895
- export * from "worker_threads";
712
+ declare module "worker_threads" {
713
+ export * from "node:worker_threads";
896
714
  }