rahad-all-downloader 2.1.16 → 2.1.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (188) hide show
  1. package/.github/workflows/Run.yml +20 -0
  2. package/README.md +0 -1
  3. package/index.js +1 -1
  4. package/package.json +4 -2
  5. package/.cache/nix/binary-cache-v6.sqlite +0 -0
  6. package/.cache/nix/binary-cache-v6.sqlite-journal +0 -0
  7. package/.cache/replit/env/latest +0 -123
  8. package/.cache/replit/env/latest.json +0 -1
  9. package/.cache/replit/modules/nix.res +0 -1
  10. package/.cache/replit/modules/nodejs-20.res +0 -1
  11. package/.cache/replit/modules/replit.res +0 -1
  12. package/.cache/replit/modules.stamp +0 -0
  13. package/.cache/replit/nix/env.json +0 -1
  14. package/.cache/typescript/5.4/node_modules/.package-lock.json +0 -137
  15. package/.cache/typescript/5.4/node_modules/@types/caseless/LICENSE +0 -21
  16. package/.cache/typescript/5.4/node_modules/@types/caseless/README.md +0 -48
  17. package/.cache/typescript/5.4/node_modules/@types/caseless/index.d.ts +0 -29
  18. package/.cache/typescript/5.4/node_modules/@types/caseless/package.json +0 -35
  19. package/.cache/typescript/5.4/node_modules/@types/node/LICENSE +0 -21
  20. package/.cache/typescript/5.4/node_modules/@types/node/README.md +0 -15
  21. package/.cache/typescript/5.4/node_modules/@types/node/assert/strict.d.ts +0 -8
  22. package/.cache/typescript/5.4/node_modules/@types/node/assert.d.ts +0 -1040
  23. package/.cache/typescript/5.4/node_modules/@types/node/async_hooks.d.ts +0 -541
  24. package/.cache/typescript/5.4/node_modules/@types/node/buffer.d.ts +0 -2363
  25. package/.cache/typescript/5.4/node_modules/@types/node/child_process.d.ts +0 -1544
  26. package/.cache/typescript/5.4/node_modules/@types/node/cluster.d.ts +0 -578
  27. package/.cache/typescript/5.4/node_modules/@types/node/console.d.ts +0 -452
  28. package/.cache/typescript/5.4/node_modules/@types/node/constants.d.ts +0 -19
  29. package/.cache/typescript/5.4/node_modules/@types/node/crypto.d.ts +0 -4523
  30. package/.cache/typescript/5.4/node_modules/@types/node/dgram.d.ts +0 -596
  31. package/.cache/typescript/5.4/node_modules/@types/node/diagnostics_channel.d.ts +0 -554
  32. package/.cache/typescript/5.4/node_modules/@types/node/dns/promises.d.ts +0 -474
  33. package/.cache/typescript/5.4/node_modules/@types/node/dns.d.ts +0 -864
  34. package/.cache/typescript/5.4/node_modules/@types/node/dom-events.d.ts +0 -124
  35. package/.cache/typescript/5.4/node_modules/@types/node/domain.d.ts +0 -170
  36. package/.cache/typescript/5.4/node_modules/@types/node/events.d.ts +0 -909
  37. package/.cache/typescript/5.4/node_modules/@types/node/fs/promises.d.ts +0 -1245
  38. package/.cache/typescript/5.4/node_modules/@types/node/fs.d.ts +0 -4317
  39. package/.cache/typescript/5.4/node_modules/@types/node/globals.d.ts +0 -411
  40. package/.cache/typescript/5.4/node_modules/@types/node/globals.global.d.ts +0 -1
  41. package/.cache/typescript/5.4/node_modules/@types/node/http.d.ts +0 -1908
  42. package/.cache/typescript/5.4/node_modules/@types/node/http2.d.ts +0 -2418
  43. package/.cache/typescript/5.4/node_modules/@types/node/https.d.ts +0 -550
  44. package/.cache/typescript/5.4/node_modules/@types/node/index.d.ts +0 -89
  45. package/.cache/typescript/5.4/node_modules/@types/node/inspector.d.ts +0 -2746
  46. package/.cache/typescript/5.4/node_modules/@types/node/module.d.ts +0 -315
  47. package/.cache/typescript/5.4/node_modules/@types/node/net.d.ts +0 -999
  48. package/.cache/typescript/5.4/node_modules/@types/node/os.d.ts +0 -495
  49. package/.cache/typescript/5.4/node_modules/@types/node/package.json +0 -217
  50. package/.cache/typescript/5.4/node_modules/@types/node/path.d.ts +0 -191
  51. package/.cache/typescript/5.4/node_modules/@types/node/perf_hooks.d.ts +0 -905
  52. package/.cache/typescript/5.4/node_modules/@types/node/process.d.ts +0 -1754
  53. package/.cache/typescript/5.4/node_modules/@types/node/punycode.d.ts +0 -117
  54. package/.cache/typescript/5.4/node_modules/@types/node/querystring.d.ts +0 -153
  55. package/.cache/typescript/5.4/node_modules/@types/node/readline/promises.d.ts +0 -150
  56. package/.cache/typescript/5.4/node_modules/@types/node/readline.d.ts +0 -540
  57. package/.cache/typescript/5.4/node_modules/@types/node/repl.d.ts +0 -430
  58. package/.cache/typescript/5.4/node_modules/@types/node/sea.d.ts +0 -153
  59. package/.cache/typescript/5.4/node_modules/@types/node/stream/consumers.d.ts +0 -12
  60. package/.cache/typescript/5.4/node_modules/@types/node/stream/promises.d.ts +0 -83
  61. package/.cache/typescript/5.4/node_modules/@types/node/stream/web.d.ts +0 -367
  62. package/.cache/typescript/5.4/node_modules/@types/node/stream.d.ts +0 -1707
  63. package/.cache/typescript/5.4/node_modules/@types/node/string_decoder.d.ts +0 -67
  64. package/.cache/typescript/5.4/node_modules/@types/node/test.d.ts +0 -1718
  65. package/.cache/typescript/5.4/node_modules/@types/node/timers/promises.d.ts +0 -97
  66. package/.cache/typescript/5.4/node_modules/@types/node/timers.d.ts +0 -240
  67. package/.cache/typescript/5.4/node_modules/@types/node/tls.d.ts +0 -1217
  68. package/.cache/typescript/5.4/node_modules/@types/node/trace_events.d.ts +0 -197
  69. package/.cache/typescript/5.4/node_modules/@types/node/tty.d.ts +0 -208
  70. package/.cache/typescript/5.4/node_modules/@types/node/url.d.ts +0 -952
  71. package/.cache/typescript/5.4/node_modules/@types/node/util.d.ts +0 -2292
  72. package/.cache/typescript/5.4/node_modules/@types/node/v8.d.ts +0 -808
  73. package/.cache/typescript/5.4/node_modules/@types/node/vm.d.ts +0 -924
  74. package/.cache/typescript/5.4/node_modules/@types/node/wasi.d.ts +0 -181
  75. package/.cache/typescript/5.4/node_modules/@types/node/worker_threads.d.ts +0 -691
  76. package/.cache/typescript/5.4/node_modules/@types/node/zlib.d.ts +0 -530
  77. package/.cache/typescript/5.4/node_modules/@types/node-fetch/LICENSE +0 -21
  78. package/.cache/typescript/5.4/node_modules/@types/node-fetch/README.md +0 -15
  79. package/.cache/typescript/5.4/node_modules/@types/node-fetch/externals.d.ts +0 -32
  80. package/.cache/typescript/5.4/node_modules/@types/node-fetch/index.d.ts +0 -238
  81. package/.cache/typescript/5.4/node_modules/@types/node-fetch/package.json +0 -83
  82. package/.cache/typescript/5.4/node_modules/@types/request/LICENSE +0 -21
  83. package/.cache/typescript/5.4/node_modules/@types/request/README.md +0 -15
  84. package/.cache/typescript/5.4/node_modules/@types/request/index.d.ts +0 -395
  85. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/License +0 -19
  86. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/README.md +0 -350
  87. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/README.md.bak +0 -350
  88. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/index.d.ts +0 -51
  89. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/lib/browser.js +0 -2
  90. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/lib/form_data.js +0 -483
  91. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/lib/populate.js +0 -10
  92. package/.cache/typescript/5.4/node_modules/@types/request/node_modules/form-data/package.json +0 -68
  93. package/.cache/typescript/5.4/node_modules/@types/request/package.json +0 -70
  94. package/.cache/typescript/5.4/node_modules/@types/tough-cookie/LICENSE +0 -21
  95. package/.cache/typescript/5.4/node_modules/@types/tough-cookie/README.md +0 -15
  96. package/.cache/typescript/5.4/node_modules/@types/tough-cookie/index.d.ts +0 -321
  97. package/.cache/typescript/5.4/node_modules/@types/tough-cookie/package.json +0 -35
  98. package/.cache/typescript/5.4/node_modules/asynckit/LICENSE +0 -21
  99. package/.cache/typescript/5.4/node_modules/asynckit/README.md +0 -233
  100. package/.cache/typescript/5.4/node_modules/asynckit/bench.js +0 -76
  101. package/.cache/typescript/5.4/node_modules/asynckit/index.js +0 -6
  102. package/.cache/typescript/5.4/node_modules/asynckit/lib/abort.js +0 -29
  103. package/.cache/typescript/5.4/node_modules/asynckit/lib/async.js +0 -34
  104. package/.cache/typescript/5.4/node_modules/asynckit/lib/defer.js +0 -26
  105. package/.cache/typescript/5.4/node_modules/asynckit/lib/iterate.js +0 -75
  106. package/.cache/typescript/5.4/node_modules/asynckit/lib/readable_asynckit.js +0 -91
  107. package/.cache/typescript/5.4/node_modules/asynckit/lib/readable_parallel.js +0 -25
  108. package/.cache/typescript/5.4/node_modules/asynckit/lib/readable_serial.js +0 -25
  109. package/.cache/typescript/5.4/node_modules/asynckit/lib/readable_serial_ordered.js +0 -29
  110. package/.cache/typescript/5.4/node_modules/asynckit/lib/state.js +0 -37
  111. package/.cache/typescript/5.4/node_modules/asynckit/lib/streamify.js +0 -141
  112. package/.cache/typescript/5.4/node_modules/asynckit/lib/terminator.js +0 -29
  113. package/.cache/typescript/5.4/node_modules/asynckit/package.json +0 -63
  114. package/.cache/typescript/5.4/node_modules/asynckit/parallel.js +0 -43
  115. package/.cache/typescript/5.4/node_modules/asynckit/serial.js +0 -17
  116. package/.cache/typescript/5.4/node_modules/asynckit/serialOrdered.js +0 -75
  117. package/.cache/typescript/5.4/node_modules/asynckit/stream.js +0 -21
  118. package/.cache/typescript/5.4/node_modules/combined-stream/License +0 -19
  119. package/.cache/typescript/5.4/node_modules/combined-stream/Readme.md +0 -138
  120. package/.cache/typescript/5.4/node_modules/combined-stream/lib/combined_stream.js +0 -208
  121. package/.cache/typescript/5.4/node_modules/combined-stream/package.json +0 -25
  122. package/.cache/typescript/5.4/node_modules/combined-stream/yarn.lock +0 -17
  123. package/.cache/typescript/5.4/node_modules/delayed-stream/License +0 -19
  124. package/.cache/typescript/5.4/node_modules/delayed-stream/Makefile +0 -7
  125. package/.cache/typescript/5.4/node_modules/delayed-stream/Readme.md +0 -141
  126. package/.cache/typescript/5.4/node_modules/delayed-stream/lib/delayed_stream.js +0 -107
  127. package/.cache/typescript/5.4/node_modules/delayed-stream/package.json +0 -27
  128. package/.cache/typescript/5.4/node_modules/form-data/License +0 -19
  129. package/.cache/typescript/5.4/node_modules/form-data/README.md.bak +0 -358
  130. package/.cache/typescript/5.4/node_modules/form-data/Readme.md +0 -358
  131. package/.cache/typescript/5.4/node_modules/form-data/index.d.ts +0 -62
  132. package/.cache/typescript/5.4/node_modules/form-data/lib/browser.js +0 -2
  133. package/.cache/typescript/5.4/node_modules/form-data/lib/form_data.js +0 -501
  134. package/.cache/typescript/5.4/node_modules/form-data/lib/populate.js +0 -10
  135. package/.cache/typescript/5.4/node_modules/form-data/package.json +0 -68
  136. package/.cache/typescript/5.4/node_modules/mime-db/HISTORY.md +0 -507
  137. package/.cache/typescript/5.4/node_modules/mime-db/LICENSE +0 -23
  138. package/.cache/typescript/5.4/node_modules/mime-db/README.md +0 -100
  139. package/.cache/typescript/5.4/node_modules/mime-db/db.json +0 -8519
  140. package/.cache/typescript/5.4/node_modules/mime-db/index.js +0 -12
  141. package/.cache/typescript/5.4/node_modules/mime-db/package.json +0 -60
  142. package/.cache/typescript/5.4/node_modules/mime-types/HISTORY.md +0 -397
  143. package/.cache/typescript/5.4/node_modules/mime-types/LICENSE +0 -23
  144. package/.cache/typescript/5.4/node_modules/mime-types/README.md +0 -113
  145. package/.cache/typescript/5.4/node_modules/mime-types/index.js +0 -188
  146. package/.cache/typescript/5.4/node_modules/mime-types/package.json +0 -44
  147. package/.cache/typescript/5.4/node_modules/types-registry/README.md +0 -2
  148. package/.cache/typescript/5.4/node_modules/types-registry/index.json +0 -1
  149. package/.cache/typescript/5.4/node_modules/types-registry/package.json +0 -20
  150. package/.cache/typescript/5.4/node_modules/undici-types/README.md +0 -6
  151. package/.cache/typescript/5.4/node_modules/undici-types/agent.d.ts +0 -31
  152. package/.cache/typescript/5.4/node_modules/undici-types/api.d.ts +0 -43
  153. package/.cache/typescript/5.4/node_modules/undici-types/balanced-pool.d.ts +0 -18
  154. package/.cache/typescript/5.4/node_modules/undici-types/cache.d.ts +0 -36
  155. package/.cache/typescript/5.4/node_modules/undici-types/client.d.ts +0 -97
  156. package/.cache/typescript/5.4/node_modules/undici-types/connector.d.ts +0 -34
  157. package/.cache/typescript/5.4/node_modules/undici-types/content-type.d.ts +0 -21
  158. package/.cache/typescript/5.4/node_modules/undici-types/cookies.d.ts +0 -28
  159. package/.cache/typescript/5.4/node_modules/undici-types/diagnostics-channel.d.ts +0 -67
  160. package/.cache/typescript/5.4/node_modules/undici-types/dispatcher.d.ts +0 -241
  161. package/.cache/typescript/5.4/node_modules/undici-types/errors.d.ts +0 -128
  162. package/.cache/typescript/5.4/node_modules/undici-types/fetch.d.ts +0 -209
  163. package/.cache/typescript/5.4/node_modules/undici-types/file.d.ts +0 -39
  164. package/.cache/typescript/5.4/node_modules/undici-types/filereader.d.ts +0 -54
  165. package/.cache/typescript/5.4/node_modules/undici-types/formdata.d.ts +0 -108
  166. package/.cache/typescript/5.4/node_modules/undici-types/global-dispatcher.d.ts +0 -9
  167. package/.cache/typescript/5.4/node_modules/undici-types/global-origin.d.ts +0 -7
  168. package/.cache/typescript/5.4/node_modules/undici-types/handlers.d.ts +0 -9
  169. package/.cache/typescript/5.4/node_modules/undici-types/header.d.ts +0 -4
  170. package/.cache/typescript/5.4/node_modules/undici-types/index.d.ts +0 -63
  171. package/.cache/typescript/5.4/node_modules/undici-types/interceptors.d.ts +0 -5
  172. package/.cache/typescript/5.4/node_modules/undici-types/mock-agent.d.ts +0 -50
  173. package/.cache/typescript/5.4/node_modules/undici-types/mock-client.d.ts +0 -25
  174. package/.cache/typescript/5.4/node_modules/undici-types/mock-errors.d.ts +0 -12
  175. package/.cache/typescript/5.4/node_modules/undici-types/mock-interceptor.d.ts +0 -93
  176. package/.cache/typescript/5.4/node_modules/undici-types/mock-pool.d.ts +0 -25
  177. package/.cache/typescript/5.4/node_modules/undici-types/package.json +0 -55
  178. package/.cache/typescript/5.4/node_modules/undici-types/patch.d.ts +0 -71
  179. package/.cache/typescript/5.4/node_modules/undici-types/pool-stats.d.ts +0 -19
  180. package/.cache/typescript/5.4/node_modules/undici-types/pool.d.ts +0 -28
  181. package/.cache/typescript/5.4/node_modules/undici-types/proxy-agent.d.ts +0 -30
  182. package/.cache/typescript/5.4/node_modules/undici-types/readable.d.ts +0 -61
  183. package/.cache/typescript/5.4/node_modules/undici-types/webidl.d.ts +0 -220
  184. package/.cache/typescript/5.4/node_modules/undici-types/websocket.d.ts +0 -131
  185. package/.cache/typescript/5.4/package-lock.json +0 -146
  186. package/.cache/typescript/5.4/package.json +0 -1
  187. package/.replit +0 -21
  188. package/replit.nix +0 -3
@@ -1,691 +0,0 @@
1
- /**
2
- * The `node:worker_threads` module enables the use of threads that execute
3
- * JavaScript in parallel. To access it:
4
- *
5
- * ```js
6
- * const worker = require('node:worker_threads');
7
- * ```
8
- *
9
- * Workers (threads) are useful for performing CPU-intensive JavaScript operations.
10
- * They do not help much with I/O-intensive work. The Node.js built-in
11
- * asynchronous I/O operations are more efficient than Workers can be.
12
- *
13
- * Unlike `child_process` or `cluster`, `worker_threads` can share memory. They do
14
- * so by transferring `ArrayBuffer` instances or sharing `SharedArrayBuffer` instances.
15
- *
16
- * ```js
17
- * const {
18
- * Worker, isMainThread, parentPort, workerData,
19
- * } = require('node:worker_threads');
20
- *
21
- * if (isMainThread) {
22
- * module.exports = function parseJSAsync(script) {
23
- * return new Promise((resolve, reject) => {
24
- * const worker = new Worker(__filename, {
25
- * workerData: script,
26
- * });
27
- * worker.on('message', resolve);
28
- * worker.on('error', reject);
29
- * worker.on('exit', (code) => {
30
- * if (code !== 0)
31
- * reject(new Error(`Worker stopped with exit code ${code}`));
32
- * });
33
- * });
34
- * };
35
- * } else {
36
- * const { parse } = require('some-js-parsing-library');
37
- * const script = workerData;
38
- * parentPort.postMessage(parse(script));
39
- * }
40
- * ```
41
- *
42
- * The above example spawns a Worker thread for each `parseJSAsync()` call. In
43
- * practice, use a pool of Workers for these kinds of tasks. Otherwise, the
44
- * overhead of creating Workers would likely exceed their benefit.
45
- *
46
- * When implementing a worker pool, use the `AsyncResource` API to inform
47
- * diagnostic tools (e.g. to provide asynchronous stack traces) about the
48
- * correlation between tasks and their outcomes. See `"Using AsyncResource for a Worker thread pool"` in the `async_hooks` documentation for an example implementation.
49
- *
50
- * Worker threads inherit non-process-specific options by default. Refer to `Worker constructor options` to know how to customize worker thread options,
51
- * specifically `argv` and `execArgv` options.
52
- * @see [source](https://github.com/nodejs/node/blob/v20.13.1/lib/worker_threads.js)
53
- */
54
- declare module "worker_threads" {
55
- import { Blob } from "node:buffer";
56
- import { Context } from "node:vm";
57
- import { EventEmitter } from "node:events";
58
- import { EventLoopUtilityFunction } from "node:perf_hooks";
59
- import { FileHandle } from "node:fs/promises";
60
- import { Readable, Writable } from "node:stream";
61
- import { URL } from "node:url";
62
- import { X509Certificate } from "node:crypto";
63
- const isMainThread: boolean;
64
- const parentPort: null | MessagePort;
65
- const resourceLimits: ResourceLimits;
66
- const SHARE_ENV: unique symbol;
67
- const threadId: number;
68
- const workerData: any;
69
- /**
70
- * Instances of the `worker.MessageChannel` class represent an asynchronous,
71
- * two-way communications channel.
72
- * The `MessageChannel` has no methods of its own. `new MessageChannel()` yields an object with `port1` and `port2` properties, which refer to linked `MessagePort` instances.
73
- *
74
- * ```js
75
- * const { MessageChannel } = require('node:worker_threads');
76
- *
77
- * const { port1, port2 } = new MessageChannel();
78
- * port1.on('message', (message) => console.log('received', message));
79
- * port2.postMessage({ foo: 'bar' });
80
- * // Prints: received { foo: 'bar' } from the `port1.on('message')` listener
81
- * ```
82
- * @since v10.5.0
83
- */
84
- class MessageChannel {
85
- readonly port1: MessagePort;
86
- readonly port2: MessagePort;
87
- }
88
- interface WorkerPerformance {
89
- eventLoopUtilization: EventLoopUtilityFunction;
90
- }
91
- type TransferListItem = ArrayBuffer | MessagePort | FileHandle | X509Certificate | Blob;
92
- /**
93
- * Instances of the `worker.MessagePort` class represent one end of an
94
- * asynchronous, two-way communications channel. It can be used to transfer
95
- * structured data, memory regions and other `MessagePort`s between different `Worker`s.
96
- *
97
- * This implementation matches [browser `MessagePort`](https://developer.mozilla.org/en-US/docs/Web/API/MessagePort) s.
98
- * @since v10.5.0
99
- */
100
- class MessagePort extends EventEmitter {
101
- /**
102
- * Disables further sending of messages on either side of the connection.
103
- * This method can be called when no further communication will happen over this `MessagePort`.
104
- *
105
- * The `'close' event` is emitted on both `MessagePort` instances that
106
- * are part of the channel.
107
- * @since v10.5.0
108
- */
109
- close(): void;
110
- /**
111
- * Sends a JavaScript value to the receiving side of this channel. `value` is transferred in a way which is compatible with
112
- * the [HTML structured clone algorithm](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API/Structured_clone_algorithm).
113
- *
114
- * In particular, the significant differences to `JSON` are:
115
- *
116
- * * `value` may contain circular references.
117
- * * `value` may contain instances of builtin JS types such as `RegExp`s, `BigInt`s, `Map`s, `Set`s, etc.
118
- * * `value` may contain typed arrays, both using `ArrayBuffer`s
119
- * and `SharedArrayBuffer`s.
120
- * * `value` may contain [`WebAssembly.Module`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/WebAssembly/Module) instances.
121
- * * `value` may not contain native (C++-backed) objects other than:
122
- *
123
- * ```js
124
- * const { MessageChannel } = require('node:worker_threads');
125
- * const { port1, port2 } = new MessageChannel();
126
- *
127
- * port1.on('message', (message) => console.log(message));
128
- *
129
- * const circularData = {};
130
- * circularData.foo = circularData;
131
- * // Prints: { foo: [Circular] }
132
- * port2.postMessage(circularData);
133
- * ```
134
- *
135
- * `transferList` may be a list of [`ArrayBuffer`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/ArrayBuffer), `MessagePort`, and `FileHandle` objects.
136
- * After transferring, they are not usable on the sending side of the channel
137
- * anymore (even if they are not contained in `value`). Unlike with `child processes`, transferring handles such as network sockets is currently
138
- * not supported.
139
- *
140
- * If `value` contains [`SharedArrayBuffer`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer) instances, those are accessible
141
- * from either thread. They cannot be listed in `transferList`.
142
- *
143
- * `value` may still contain `ArrayBuffer` instances that are not in `transferList`; in that case, the underlying memory is copied rather than moved.
144
- *
145
- * ```js
146
- * const { MessageChannel } = require('node:worker_threads');
147
- * const { port1, port2 } = new MessageChannel();
148
- *
149
- * port1.on('message', (message) => console.log(message));
150
- *
151
- * const uint8Array = new Uint8Array([ 1, 2, 3, 4 ]);
152
- * // This posts a copy of `uint8Array`:
153
- * port2.postMessage(uint8Array);
154
- * // This does not copy data, but renders `uint8Array` unusable:
155
- * port2.postMessage(uint8Array, [ uint8Array.buffer ]);
156
- *
157
- * // The memory for the `sharedUint8Array` is accessible from both the
158
- * // original and the copy received by `.on('message')`:
159
- * const sharedUint8Array = new Uint8Array(new SharedArrayBuffer(4));
160
- * port2.postMessage(sharedUint8Array);
161
- *
162
- * // This transfers a freshly created message port to the receiver.
163
- * // This can be used, for example, to create communication channels between
164
- * // multiple `Worker` threads that are children of the same parent thread.
165
- * const otherChannel = new MessageChannel();
166
- * port2.postMessage({ port: otherChannel.port1 }, [ otherChannel.port1 ]);
167
- * ```
168
- *
169
- * The message object is cloned immediately, and can be modified after
170
- * posting without having side effects.
171
- *
172
- * For more information on the serialization and deserialization mechanisms
173
- * behind this API, see the `serialization API of the node:v8 module`.
174
- * @since v10.5.0
175
- */
176
- postMessage(value: any, transferList?: readonly TransferListItem[]): void;
177
- /**
178
- * 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
179
- * behavior). If the port is `ref()`ed, calling `ref()` again has no effect.
180
- *
181
- * If listeners are attached or removed using `.on('message')`, the port
182
- * is `ref()`ed and `unref()`ed automatically depending on whether
183
- * listeners for the event exist.
184
- * @since v10.5.0
185
- */
186
- ref(): void;
187
- /**
188
- * Calling `unref()` on a port allows the thread to exit if this is the only
189
- * active handle in the event system. If the port is already `unref()`ed calling `unref()` again has no effect.
190
- *
191
- * If listeners are attached or removed using `.on('message')`, the port is `ref()`ed and `unref()`ed automatically depending on whether
192
- * listeners for the event exist.
193
- * @since v10.5.0
194
- */
195
- unref(): void;
196
- /**
197
- * Starts receiving messages on this `MessagePort`. When using this port
198
- * as an event emitter, this is called automatically once `'message'` listeners are attached.
199
- *
200
- * This method exists for parity with the Web `MessagePort` API. In Node.js,
201
- * it is only useful for ignoring messages when no event listener is present.
202
- * Node.js also diverges in its handling of `.onmessage`. Setting it
203
- * automatically calls `.start()`, but unsetting it lets messages queue up
204
- * until a new handler is set or the port is discarded.
205
- * @since v10.5.0
206
- */
207
- start(): void;
208
- addListener(event: "close", listener: () => void): this;
209
- addListener(event: "message", listener: (value: any) => void): this;
210
- addListener(event: "messageerror", listener: (error: Error) => void): this;
211
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
212
- emit(event: "close"): boolean;
213
- emit(event: "message", value: any): boolean;
214
- emit(event: "messageerror", error: Error): boolean;
215
- emit(event: string | symbol, ...args: any[]): boolean;
216
- on(event: "close", listener: () => void): this;
217
- on(event: "message", listener: (value: any) => void): this;
218
- on(event: "messageerror", listener: (error: Error) => void): this;
219
- on(event: string | symbol, listener: (...args: any[]) => void): this;
220
- once(event: "close", listener: () => void): this;
221
- once(event: "message", listener: (value: any) => void): this;
222
- once(event: "messageerror", listener: (error: Error) => void): this;
223
- once(event: string | symbol, listener: (...args: any[]) => void): this;
224
- prependListener(event: "close", listener: () => void): this;
225
- prependListener(event: "message", listener: (value: any) => void): this;
226
- prependListener(event: "messageerror", listener: (error: Error) => void): this;
227
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
228
- prependOnceListener(event: "close", listener: () => void): this;
229
- prependOnceListener(event: "message", listener: (value: any) => void): this;
230
- prependOnceListener(event: "messageerror", listener: (error: Error) => void): this;
231
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
232
- removeListener(event: "close", listener: () => void): this;
233
- removeListener(event: "message", listener: (value: any) => void): this;
234
- removeListener(event: "messageerror", listener: (error: Error) => void): this;
235
- removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
236
- off(event: "close", listener: () => void): this;
237
- off(event: "message", listener: (value: any) => void): this;
238
- off(event: "messageerror", listener: (error: Error) => void): this;
239
- off(event: string | symbol, listener: (...args: any[]) => void): this;
240
- }
241
- interface WorkerOptions {
242
- /**
243
- * List of arguments which would be stringified and appended to
244
- * `process.argv` in the worker. This is mostly similar to the `workerData`
245
- * but the values will be available on the global `process.argv` as if they
246
- * were passed as CLI options to the script.
247
- */
248
- argv?: any[] | undefined;
249
- env?: NodeJS.Dict<string> | typeof SHARE_ENV | undefined;
250
- eval?: boolean | undefined;
251
- workerData?: any;
252
- stdin?: boolean | undefined;
253
- stdout?: boolean | undefined;
254
- stderr?: boolean | undefined;
255
- execArgv?: string[] | undefined;
256
- resourceLimits?: ResourceLimits | undefined;
257
- /**
258
- * Additional data to send in the first worker message.
259
- */
260
- transferList?: TransferListItem[] | undefined;
261
- /**
262
- * @default true
263
- */
264
- trackUnmanagedFds?: boolean | undefined;
265
- /**
266
- * An optional `name` to be appended to the worker title
267
- * for debuggin/identification purposes, making the final title as
268
- * `[worker ${id}] ${name}`.
269
- */
270
- name?: string | undefined;
271
- }
272
- interface ResourceLimits {
273
- /**
274
- * The maximum size of a heap space for recently created objects.
275
- */
276
- maxYoungGenerationSizeMb?: number | undefined;
277
- /**
278
- * The maximum size of the main heap in MB.
279
- */
280
- maxOldGenerationSizeMb?: number | undefined;
281
- /**
282
- * The size of a pre-allocated memory range used for generated code.
283
- */
284
- codeRangeSizeMb?: number | undefined;
285
- /**
286
- * The default maximum stack size for the thread. Small values may lead to unusable Worker instances.
287
- * @default 4
288
- */
289
- stackSizeMb?: number | undefined;
290
- }
291
- /**
292
- * The `Worker` class represents an independent JavaScript execution thread.
293
- * Most Node.js APIs are available inside of it.
294
- *
295
- * Notable differences inside a Worker environment are:
296
- *
297
- * * The `process.stdin`, `process.stdout`, and `process.stderr` streams may be redirected by the parent thread.
298
- * * The `require('node:worker_threads').isMainThread` property is set to `false`.
299
- * * The `require('node:worker_threads').parentPort` message port is available.
300
- * * `process.exit()` does not stop the whole program, just the single thread,
301
- * and `process.abort()` is not available.
302
- * * `process.chdir()` and `process` methods that set group or user ids
303
- * are not available.
304
- * * `process.env` is a copy of the parent thread's environment variables,
305
- * unless otherwise specified. Changes to one copy are not visible in other
306
- * threads, and are not visible to native add-ons (unless `worker.SHARE_ENV` is passed as the `env` option to the `Worker` constructor). On Windows, unlike the main thread, a copy of the
307
- * environment variables operates in a case-sensitive manner.
308
- * * `process.title` cannot be modified.
309
- * * Signals are not delivered through `process.on('...')`.
310
- * * Execution may stop at any point as a result of `worker.terminate()` being invoked.
311
- * * IPC channels from parent processes are not accessible.
312
- * * The `trace_events` module is not supported.
313
- * * Native add-ons can only be loaded from multiple threads if they fulfill `certain conditions`.
314
- *
315
- * Creating `Worker` instances inside of other `Worker`s is possible.
316
- *
317
- * Like [Web Workers](https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API) and the `node:cluster module`, two-way communication
318
- * can be achieved through inter-thread message passing. Internally, a `Worker` has
319
- * a built-in pair of `MessagePort` s that are already associated with each
320
- * other when the `Worker` is created. While the `MessagePort` object on the parent
321
- * side is not directly exposed, its functionalities are exposed through `worker.postMessage()` and the `worker.on('message')` event
322
- * on the `Worker` object for the parent thread.
323
- *
324
- * To create custom messaging channels (which is encouraged over using the default
325
- * global channel because it facilitates separation of concerns), users can create
326
- * a `MessageChannel` object on either thread and pass one of the`MessagePort`s on that `MessageChannel` to the other thread through a
327
- * pre-existing channel, such as the global one.
328
- *
329
- * See `port.postMessage()` for more information on how messages are passed,
330
- * and what kind of JavaScript values can be successfully transported through
331
- * the thread barrier.
332
- *
333
- * ```js
334
- * const assert = require('node:assert');
335
- * const {
336
- * Worker, MessageChannel, MessagePort, isMainThread, parentPort,
337
- * } = require('node:worker_threads');
338
- * if (isMainThread) {
339
- * const worker = new Worker(__filename);
340
- * const subChannel = new MessageChannel();
341
- * worker.postMessage({ hereIsYourPort: subChannel.port1 }, [subChannel.port1]);
342
- * subChannel.port2.on('message', (value) => {
343
- * console.log('received:', value);
344
- * });
345
- * } else {
346
- * parentPort.once('message', (value) => {
347
- * assert(value.hereIsYourPort instanceof MessagePort);
348
- * value.hereIsYourPort.postMessage('the worker is sending this');
349
- * value.hereIsYourPort.close();
350
- * });
351
- * }
352
- * ```
353
- * @since v10.5.0
354
- */
355
- class Worker extends EventEmitter {
356
- /**
357
- * If `stdin: true` was passed to the `Worker` constructor, this is a
358
- * writable stream. The data written to this stream will be made available in
359
- * the worker thread as `process.stdin`.
360
- * @since v10.5.0
361
- */
362
- readonly stdin: Writable | null;
363
- /**
364
- * This is a readable stream which contains data written to `process.stdout` inside the worker thread. If `stdout: true` was not passed to the `Worker` constructor, then data is piped to the
365
- * parent thread's `process.stdout` stream.
366
- * @since v10.5.0
367
- */
368
- readonly stdout: Readable;
369
- /**
370
- * This is a readable stream which contains data written to `process.stderr` inside the worker thread. If `stderr: true` was not passed to the `Worker` constructor, then data is piped to the
371
- * parent thread's `process.stderr` stream.
372
- * @since v10.5.0
373
- */
374
- readonly stderr: Readable;
375
- /**
376
- * An integer identifier for the referenced thread. Inside the worker thread,
377
- * it is available as `require('node:worker_threads').threadId`.
378
- * This value is unique for each `Worker` instance inside a single process.
379
- * @since v10.5.0
380
- */
381
- readonly threadId: number;
382
- /**
383
- * Provides the set of JS engine resource constraints for this Worker thread.
384
- * If the `resourceLimits` option was passed to the `Worker` constructor,
385
- * this matches its values.
386
- *
387
- * If the worker has stopped, the return value is an empty object.
388
- * @since v13.2.0, v12.16.0
389
- */
390
- readonly resourceLimits?: ResourceLimits | undefined;
391
- /**
392
- * An object that can be used to query performance information from a worker
393
- * instance. Similar to `perf_hooks.performance`.
394
- * @since v15.1.0, v14.17.0, v12.22.0
395
- */
396
- readonly performance: WorkerPerformance;
397
- /**
398
- * @param filename The path to the Worker’s main script or module.
399
- * Must be either an absolute path or a relative path (i.e. relative to the current working directory) starting with ./ or ../,
400
- * or a WHATWG URL object using file: protocol. If options.eval is true, this is a string containing JavaScript code rather than a path.
401
- */
402
- constructor(filename: string | URL, options?: WorkerOptions);
403
- /**
404
- * Send a message to the worker that is received via `require('node:worker_threads').parentPort.on('message')`.
405
- * See `port.postMessage()` for more details.
406
- * @since v10.5.0
407
- */
408
- postMessage(value: any, transferList?: readonly TransferListItem[]): void;
409
- /**
410
- * Opposite of `unref()`, calling `ref()` on a previously `unref()`ed worker does _not_ let the program exit if it's the only active handle left (the default
411
- * behavior). If the worker is `ref()`ed, calling `ref()` again has
412
- * no effect.
413
- * @since v10.5.0
414
- */
415
- ref(): void;
416
- /**
417
- * Calling `unref()` on a worker allows the thread to exit if this is the only
418
- * active handle in the event system. If the worker is already `unref()`ed calling `unref()` again has no effect.
419
- * @since v10.5.0
420
- */
421
- unref(): void;
422
- /**
423
- * Stop all JavaScript execution in the worker thread as soon as possible.
424
- * Returns a Promise for the exit code that is fulfilled when the `'exit' event` is emitted.
425
- * @since v10.5.0
426
- */
427
- terminate(): Promise<number>;
428
- /**
429
- * Returns a readable stream for a V8 snapshot of the current state of the Worker.
430
- * See `v8.getHeapSnapshot()` for more details.
431
- *
432
- * If the Worker thread is no longer running, which may occur before the `'exit' event` is emitted, the returned `Promise` is rejected
433
- * immediately with an `ERR_WORKER_NOT_RUNNING` error.
434
- * @since v13.9.0, v12.17.0
435
- * @return A promise for a Readable Stream containing a V8 heap snapshot
436
- */
437
- getHeapSnapshot(): Promise<Readable>;
438
- addListener(event: "error", listener: (err: Error) => void): this;
439
- addListener(event: "exit", listener: (exitCode: number) => void): this;
440
- addListener(event: "message", listener: (value: any) => void): this;
441
- addListener(event: "messageerror", listener: (error: Error) => void): this;
442
- addListener(event: "online", listener: () => void): this;
443
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
444
- emit(event: "error", err: Error): boolean;
445
- emit(event: "exit", exitCode: number): boolean;
446
- emit(event: "message", value: any): boolean;
447
- emit(event: "messageerror", error: Error): boolean;
448
- emit(event: "online"): boolean;
449
- emit(event: string | symbol, ...args: any[]): boolean;
450
- on(event: "error", listener: (err: Error) => void): this;
451
- on(event: "exit", listener: (exitCode: number) => void): this;
452
- on(event: "message", listener: (value: any) => void): this;
453
- on(event: "messageerror", listener: (error: Error) => void): this;
454
- on(event: "online", listener: () => void): this;
455
- on(event: string | symbol, listener: (...args: any[]) => void): this;
456
- once(event: "error", listener: (err: Error) => void): this;
457
- once(event: "exit", listener: (exitCode: number) => void): this;
458
- once(event: "message", listener: (value: any) => void): this;
459
- once(event: "messageerror", listener: (error: Error) => void): this;
460
- once(event: "online", listener: () => void): this;
461
- once(event: string | symbol, listener: (...args: any[]) => void): this;
462
- prependListener(event: "error", listener: (err: Error) => void): this;
463
- prependListener(event: "exit", listener: (exitCode: number) => void): this;
464
- prependListener(event: "message", listener: (value: any) => void): this;
465
- prependListener(event: "messageerror", listener: (error: Error) => void): this;
466
- prependListener(event: "online", listener: () => void): this;
467
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
468
- prependOnceListener(event: "error", listener: (err: Error) => void): this;
469
- prependOnceListener(event: "exit", listener: (exitCode: number) => void): this;
470
- prependOnceListener(event: "message", listener: (value: any) => void): this;
471
- prependOnceListener(event: "messageerror", listener: (error: Error) => void): this;
472
- prependOnceListener(event: "online", listener: () => void): this;
473
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
474
- removeListener(event: "error", listener: (err: Error) => void): this;
475
- removeListener(event: "exit", listener: (exitCode: number) => void): this;
476
- removeListener(event: "message", listener: (value: any) => void): this;
477
- removeListener(event: "messageerror", listener: (error: Error) => void): this;
478
- removeListener(event: "online", listener: () => void): this;
479
- removeListener(event: string | symbol, listener: (...args: any[]) => void): this;
480
- off(event: "error", listener: (err: Error) => void): this;
481
- off(event: "exit", listener: (exitCode: number) => void): this;
482
- off(event: "message", listener: (value: any) => void): this;
483
- off(event: "messageerror", listener: (error: Error) => void): this;
484
- off(event: "online", listener: () => void): this;
485
- off(event: string | symbol, listener: (...args: any[]) => void): this;
486
- }
487
- interface BroadcastChannel extends NodeJS.RefCounted {}
488
- /**
489
- * Instances of `BroadcastChannel` allow asynchronous one-to-many communication
490
- * with all other `BroadcastChannel` instances bound to the same channel name.
491
- *
492
- * ```js
493
- * 'use strict';
494
- *
495
- * const {
496
- * isMainThread,
497
- * BroadcastChannel,
498
- * Worker,
499
- * } = require('node:worker_threads');
500
- *
501
- * const bc = new BroadcastChannel('hello');
502
- *
503
- * if (isMainThread) {
504
- * let c = 0;
505
- * bc.onmessage = (event) => {
506
- * console.log(event.data);
507
- * if (++c === 10) bc.close();
508
- * };
509
- * for (let n = 0; n < 10; n++)
510
- * new Worker(__filename);
511
- * } else {
512
- * bc.postMessage('hello from every worker');
513
- * bc.close();
514
- * }
515
- * ```
516
- * @since v15.4.0
517
- */
518
- class BroadcastChannel {
519
- readonly name: string;
520
- /**
521
- * Invoked with a single \`MessageEvent\` argument when a message is received.
522
- * @since v15.4.0
523
- */
524
- onmessage: (message: unknown) => void;
525
- /**
526
- * Invoked with a received message cannot be deserialized.
527
- * @since v15.4.0
528
- */
529
- onmessageerror: (message: unknown) => void;
530
- constructor(name: string);
531
- /**
532
- * Closes the `BroadcastChannel` connection.
533
- * @since v15.4.0
534
- */
535
- close(): void;
536
- /**
537
- * @since v15.4.0
538
- * @param message Any cloneable JavaScript value.
539
- */
540
- postMessage(message: unknown): void;
541
- }
542
- /**
543
- * Mark an object as not transferable. If `object` occurs in the transfer list of
544
- * a `port.postMessage()` call, it is ignored.
545
- *
546
- * In particular, this makes sense for objects that can be cloned, rather than
547
- * transferred, and which are used by other objects on the sending side.
548
- * For example, Node.js marks the `ArrayBuffer`s it uses for its `Buffer pool` with this.
549
- *
550
- * This operation cannot be undone.
551
- *
552
- * ```js
553
- * const { MessageChannel, markAsUntransferable } = require('node:worker_threads');
554
- *
555
- * const pooledBuffer = new ArrayBuffer(8);
556
- * const typedArray1 = new Uint8Array(pooledBuffer);
557
- * const typedArray2 = new Float64Array(pooledBuffer);
558
- *
559
- * markAsUntransferable(pooledBuffer);
560
- *
561
- * const { port1 } = new MessageChannel();
562
- * port1.postMessage(typedArray1, [ typedArray1.buffer ]);
563
- *
564
- * // The following line prints the contents of typedArray1 -- it still owns
565
- * // its memory and has been cloned, not transferred. Without
566
- * // `markAsUntransferable()`, this would print an empty Uint8Array.
567
- * // typedArray2 is intact as well.
568
- * console.log(typedArray1);
569
- * console.log(typedArray2);
570
- * ```
571
- *
572
- * There is no equivalent to this API in browsers.
573
- * @since v14.5.0, v12.19.0
574
- */
575
- function markAsUntransferable(object: object): void;
576
- /**
577
- * Transfer a `MessagePort` to a different `vm` Context. The original `port` object is rendered unusable, and the returned `MessagePort` instance
578
- * takes its place.
579
- *
580
- * The returned `MessagePort` is an object in the target context and
581
- * inherits from its global `Object` class. Objects passed to the [`port.onmessage()`](https://developer.mozilla.org/en-US/docs/Web/API/MessagePort/onmessage) listener are also created in the
582
- * target context
583
- * and inherit from its global `Object` class.
584
- *
585
- * However, the created `MessagePort` no longer inherits from [`EventTarget`](https://developer.mozilla.org/en-US/docs/Web/API/EventTarget), and only
586
- * [`port.onmessage()`](https://developer.mozilla.org/en-US/docs/Web/API/MessagePort/onmessage) can be used to receive
587
- * events using it.
588
- * @since v11.13.0
589
- * @param port The message port to transfer.
590
- * @param contextifiedSandbox A `contextified` object as returned by the `vm.createContext()` method.
591
- */
592
- function moveMessagePortToContext(port: MessagePort, contextifiedSandbox: Context): MessagePort;
593
- /**
594
- * Receive a single message from a given `MessagePort`. If no message is available,`undefined` is returned, otherwise an object with a single `message` property
595
- * that contains the message payload, corresponding to the oldest message in the `MessagePort`'s queue.
596
- *
597
- * ```js
598
- * const { MessageChannel, receiveMessageOnPort } = require('node:worker_threads');
599
- * const { port1, port2 } = new MessageChannel();
600
- * port1.postMessage({ hello: 'world' });
601
- *
602
- * console.log(receiveMessageOnPort(port2));
603
- * // Prints: { message: { hello: 'world' } }
604
- * console.log(receiveMessageOnPort(port2));
605
- * // Prints: undefined
606
- * ```
607
- *
608
- * When this function is used, no `'message'` event is emitted and the `onmessage` listener is not invoked.
609
- * @since v12.3.0
610
- */
611
- function receiveMessageOnPort(port: MessagePort):
612
- | {
613
- message: any;
614
- }
615
- | undefined;
616
- type Serializable = string | object | number | boolean | bigint;
617
- /**
618
- * Within a worker thread, `worker.getEnvironmentData()` returns a clone
619
- * of data passed to the spawning thread's `worker.setEnvironmentData()`.
620
- * Every new `Worker` receives its own copy of the environment data
621
- * automatically.
622
- *
623
- * ```js
624
- * const {
625
- * Worker,
626
- * isMainThread,
627
- * setEnvironmentData,
628
- * getEnvironmentData,
629
- * } = require('node:worker_threads');
630
- *
631
- * if (isMainThread) {
632
- * setEnvironmentData('Hello', 'World!');
633
- * const worker = new Worker(__filename);
634
- * } else {
635
- * console.log(getEnvironmentData('Hello')); // Prints 'World!'.
636
- * }
637
- * ```
638
- * @since v15.12.0, v14.18.0
639
- * @param key Any arbitrary, cloneable JavaScript value that can be used as a {Map} key.
640
- */
641
- function getEnvironmentData(key: Serializable): Serializable;
642
- /**
643
- * The `worker.setEnvironmentData()` API sets the content of `worker.getEnvironmentData()` in the current thread and all new `Worker` instances spawned from the current context.
644
- * @since v15.12.0, v14.18.0
645
- * @param key Any arbitrary, cloneable JavaScript value that can be used as a {Map} key.
646
- * @param value Any arbitrary, cloneable JavaScript value that will be cloned and passed automatically to all new `Worker` instances. If `value` is passed as `undefined`, any previously set value
647
- * for the `key` will be deleted.
648
- */
649
- function setEnvironmentData(key: Serializable, value: Serializable): void;
650
-
651
- import {
652
- BroadcastChannel as _BroadcastChannel,
653
- MessageChannel as _MessageChannel,
654
- MessagePort as _MessagePort,
655
- } from "worker_threads";
656
- global {
657
- /**
658
- * `BroadcastChannel` class is a global reference for `require('worker_threads').BroadcastChannel`
659
- * https://nodejs.org/api/globals.html#broadcastchannel
660
- * @since v18.0.0
661
- */
662
- var BroadcastChannel: typeof globalThis extends {
663
- onmessage: any;
664
- BroadcastChannel: infer T;
665
- } ? T
666
- : typeof _BroadcastChannel;
667
- /**
668
- * `MessageChannel` class is a global reference for `require('worker_threads').MessageChannel`
669
- * https://nodejs.org/api/globals.html#messagechannel
670
- * @since v15.0.0
671
- */
672
- var MessageChannel: typeof globalThis extends {
673
- onmessage: any;
674
- MessageChannel: infer T;
675
- } ? T
676
- : typeof _MessageChannel;
677
- /**
678
- * `MessagePort` class is a global reference for `require('worker_threads').MessagePort`
679
- * https://nodejs.org/api/globals.html#messageport
680
- * @since v15.0.0
681
- */
682
- var MessagePort: typeof globalThis extends {
683
- onmessage: any;
684
- MessagePort: infer T;
685
- } ? T
686
- : typeof _MessagePort;
687
- }
688
- }
689
- declare module "node:worker_threads" {
690
- export * from "worker_threads";
691
- }