@types/node 17.0.44 → 18.0.0
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.
- node/README.md +1 -1
- node/assert.d.ts +7 -8
- node/async_hooks.d.ts +2 -2
- node/buffer.d.ts +11 -5
- node/child_process.d.ts +6 -3
- node/cluster.d.ts +14 -18
- node/console.d.ts +1 -1
- node/crypto.d.ts +109 -37
- node/dgram.d.ts +2 -2
- node/diagnostics_channel.d.ts +2 -1
- node/dns/promises.d.ts +2 -2
- node/dns.d.ts +2 -2
- node/domain.d.ts +1 -1
- node/events.d.ts +17 -27
- node/fs/promises.d.ts +14 -15
- node/fs.d.ts +21 -39
- node/http.d.ts +69 -23
- node/http2.d.ts +7 -2
- node/https.d.ts +1 -1
- node/index.d.ts +2 -1
- node/inspector.d.ts +10 -13
- node/net.d.ts +27 -7
- node/os.d.ts +5 -4
- node/package.json +2 -2
- node/path.d.ts +1 -1
- node/perf_hooks.d.ts +10 -2
- node/process.d.ts +2 -2
- node/punycode.d.ts +1 -1
- node/querystring.d.ts +1 -1
- node/readline.d.ts +2 -2
- node/repl.d.ts +2 -2
- node/stream.d.ts +39 -15
- node/string_decoder.d.ts +1 -1
- node/test.d.ts +142 -0
- node/timers.d.ts +1 -1
- node/tls.d.ts +17 -9
- node/trace_events.d.ts +11 -1
- node/tty.d.ts +4 -2
- node/url.d.ts +20 -18
- node/util.d.ts +20 -9
- node/v8.d.ts +19 -1
- node/vm.d.ts +5 -3
- node/wasi.d.ts +1 -1
- node/worker_threads.d.ts +2 -5
- node/zlib.d.ts +1 -1
node/net.d.ts
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
* ```js
|
|
11
11
|
* const net = require('net');
|
|
12
12
|
* ```
|
|
13
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
13
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/net.js)
|
|
14
14
|
*/
|
|
15
15
|
declare module 'net' {
|
|
16
16
|
import * as stream from 'node:stream';
|
|
@@ -650,7 +650,7 @@ declare module 'net' {
|
|
|
650
650
|
*
|
|
651
651
|
* The server can be a TCP server or an `IPC` server, depending on what it `listen()` to.
|
|
652
652
|
*
|
|
653
|
-
* Here is an example of
|
|
653
|
+
* Here is an example of a TCP echo server which listens for connections
|
|
654
654
|
* on port 8124:
|
|
655
655
|
*
|
|
656
656
|
* ```js
|
|
@@ -729,19 +729,39 @@ declare module 'net' {
|
|
|
729
729
|
function createConnection(port: number, host?: string, connectionListener?: () => void): Socket;
|
|
730
730
|
function createConnection(path: string, connectionListener?: () => void): Socket;
|
|
731
731
|
/**
|
|
732
|
-
*
|
|
733
|
-
*
|
|
734
|
-
*
|
|
732
|
+
* Returns `6` if `input` is an IPv6 address. Returns `4` if `input` is an IPv4
|
|
733
|
+
* address in [dot-decimal notation](https://en.wikipedia.org/wiki/Dot-decimal_notation) with no leading zeroes. Otherwise, returns`0`.
|
|
734
|
+
*
|
|
735
|
+
* ```js
|
|
736
|
+
* net.isIP('::1'); // returns 6
|
|
737
|
+
* net.isIP('127.0.0.1'); // returns 4
|
|
738
|
+
* net.isIP('127.000.000.001'); // returns 0
|
|
739
|
+
* net.isIP('127.0.0.1/24'); // returns 0
|
|
740
|
+
* net.isIP('fhqwhgads'); // returns 0
|
|
741
|
+
* ```
|
|
735
742
|
* @since v0.3.0
|
|
736
743
|
*/
|
|
737
744
|
function isIP(input: string): number;
|
|
738
745
|
/**
|
|
739
|
-
* Returns `true` if input is
|
|
746
|
+
* Returns `true` if `input` is an IPv4 address in [dot-decimal notation](https://en.wikipedia.org/wiki/Dot-decimal_notation) with no
|
|
747
|
+
* leading zeroes. Otherwise, returns `false`.
|
|
748
|
+
*
|
|
749
|
+
* ```js
|
|
750
|
+
* net.isIPv4('127.0.0.1'); // returns true
|
|
751
|
+
* net.isIPv4('127.000.000.001'); // returns false
|
|
752
|
+
* net.isIPv4('127.0.0.1/24'); // returns false
|
|
753
|
+
* net.isIPv4('fhqwhgads'); // returns false
|
|
754
|
+
* ```
|
|
740
755
|
* @since v0.3.0
|
|
741
756
|
*/
|
|
742
757
|
function isIPv4(input: string): boolean;
|
|
743
758
|
/**
|
|
744
|
-
* Returns `true` if input is
|
|
759
|
+
* Returns `true` if `input` is an IPv6 address. Otherwise, returns `false`.
|
|
760
|
+
*
|
|
761
|
+
* ```js
|
|
762
|
+
* net.isIPv6('::1'); // returns true
|
|
763
|
+
* net.isIPv6('fhqwhgads'); // returns false
|
|
764
|
+
* ```
|
|
745
765
|
* @since v0.3.0
|
|
746
766
|
*/
|
|
747
767
|
function isIPv6(input: string): boolean;
|
node/os.d.ts
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* ```js
|
|
6
6
|
* const os = require('os');
|
|
7
7
|
* ```
|
|
8
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
8
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/os.js)
|
|
9
9
|
*/
|
|
10
10
|
declare module 'os' {
|
|
11
11
|
interface CpuInfo {
|
|
@@ -387,7 +387,7 @@ declare module 'os' {
|
|
|
387
387
|
const EOL: string;
|
|
388
388
|
/**
|
|
389
389
|
* Returns the operating system CPU architecture for which the Node.js binary was
|
|
390
|
-
* compiled. Possible values are `'arm'`, `'arm64'`, `'ia32'`, `'mips'`,`'mipsel'`, `'ppc'`, `'ppc64'`, `'s390'`, `'s390x'`,
|
|
390
|
+
* compiled. Possible values are `'arm'`, `'arm64'`, `'ia32'`, `'mips'`,`'mipsel'`, `'ppc'`, `'ppc64'`, `'s390'`, `'s390x'`, and `'x64'`.
|
|
391
391
|
*
|
|
392
392
|
* The return value is equivalent to `process.arch`.
|
|
393
393
|
* @since v0.5.0
|
|
@@ -402,8 +402,9 @@ declare module 'os' {
|
|
|
402
402
|
*/
|
|
403
403
|
function version(): string;
|
|
404
404
|
/**
|
|
405
|
-
* Returns a string identifying the operating system platform
|
|
406
|
-
*
|
|
405
|
+
* Returns a string identifying the operating system platform for which
|
|
406
|
+
* the Node.js binary was compiled. The value is set at compile time.
|
|
407
|
+
* Possible values are `'aix'`, `'darwin'`, `'freebsd'`,`'linux'`,`'openbsd'`, `'sunos'`, and `'win32'`.
|
|
407
408
|
*
|
|
408
409
|
* The return value is equivalent to `process.platform`.
|
|
409
410
|
*
|
node/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@types/node",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "18.0.0",
|
|
4
4
|
"description": "TypeScript definitions for Node.js",
|
|
5
5
|
"homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node",
|
|
6
6
|
"license": "MIT",
|
|
@@ -220,6 +220,6 @@
|
|
|
220
220
|
},
|
|
221
221
|
"scripts": {},
|
|
222
222
|
"dependencies": {},
|
|
223
|
-
"typesPublisherContentHash": "
|
|
223
|
+
"typesPublisherContentHash": "7b0d8dcde4896c79ad74f0d57a24996d6812633e45ed2abd06201f1b078dd9db",
|
|
224
224
|
"typeScriptVersion": "4.0"
|
|
225
225
|
}
|
node/path.d.ts
CHANGED
|
@@ -13,7 +13,7 @@ declare module 'path/win32' {
|
|
|
13
13
|
* ```js
|
|
14
14
|
* const path = require('path');
|
|
15
15
|
* ```
|
|
16
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
16
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/path.js)
|
|
17
17
|
*/
|
|
18
18
|
declare module 'path' {
|
|
19
19
|
namespace path {
|
node/perf_hooks.d.ts
CHANGED
|
@@ -26,7 +26,7 @@
|
|
|
26
26
|
* performance.measure('A to B', 'A', 'B');
|
|
27
27
|
* });
|
|
28
28
|
* ```
|
|
29
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
29
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/perf_hooks.js)
|
|
30
30
|
*/
|
|
31
31
|
declare module 'perf_hooks' {
|
|
32
32
|
import { AsyncResource } from 'node:async_hooks';
|
|
@@ -270,6 +270,9 @@ declare module 'perf_hooks' {
|
|
|
270
270
|
* * }
|
|
271
271
|
* * ]
|
|
272
272
|
*
|
|
273
|
+
*
|
|
274
|
+
* performance.clearMarks();
|
|
275
|
+
* performance.clearMeasures();
|
|
273
276
|
* observer.disconnect();
|
|
274
277
|
* });
|
|
275
278
|
* obs.observe({ type: 'mark' });
|
|
@@ -317,6 +320,9 @@ declare module 'perf_hooks' {
|
|
|
317
320
|
* * ]
|
|
318
321
|
*
|
|
319
322
|
* console.log(perfObserverList.getEntriesByName('test', 'measure')); // []
|
|
323
|
+
*
|
|
324
|
+
* performance.clearMarks();
|
|
325
|
+
* performance.clearMeasures();
|
|
320
326
|
* observer.disconnect();
|
|
321
327
|
* });
|
|
322
328
|
* obs.observe({ entryTypes: ['mark', 'measure'] });
|
|
@@ -355,6 +361,8 @@ declare module 'perf_hooks' {
|
|
|
355
361
|
* * }
|
|
356
362
|
* * ]
|
|
357
363
|
*
|
|
364
|
+
* performance.clearMarks();
|
|
365
|
+
* performance.clearMeasures();
|
|
358
366
|
* observer.disconnect();
|
|
359
367
|
* });
|
|
360
368
|
* obs.observe({ type: 'mark' });
|
|
@@ -384,7 +392,7 @@ declare module 'perf_hooks' {
|
|
|
384
392
|
* } = require('perf_hooks');
|
|
385
393
|
*
|
|
386
394
|
* const obs = new PerformanceObserver((list, observer) => {
|
|
387
|
-
* // Called
|
|
395
|
+
* // Called once asynchronously. `list` contains three items.
|
|
388
396
|
* });
|
|
389
397
|
* obs.observe({ type: 'mark' });
|
|
390
398
|
*
|
node/process.d.ts
CHANGED
|
@@ -1041,7 +1041,7 @@ declare module 'process' {
|
|
|
1041
1041
|
title: string;
|
|
1042
1042
|
/**
|
|
1043
1043
|
* The operating system CPU architecture for which the Node.js binary was compiled.
|
|
1044
|
-
* Possible values are: `'arm'`, `'arm64'`, `'ia32'`, `'mips'`,`'mipsel'`, `'ppc'`,`'ppc64'`, `'s390'`, `'s390x'`,
|
|
1044
|
+
* Possible values are: `'arm'`, `'arm64'`, `'ia32'`, `'mips'`,`'mipsel'`, `'ppc'`,`'ppc64'`, `'s390'`, `'s390x'`, and `'x64'`.
|
|
1045
1045
|
*
|
|
1046
1046
|
* ```js
|
|
1047
1047
|
* import { arch } from 'process';
|
|
@@ -1053,7 +1053,7 @@ declare module 'process' {
|
|
|
1053
1053
|
readonly arch: Architecture;
|
|
1054
1054
|
/**
|
|
1055
1055
|
* The `process.platform` property returns a string identifying the operating
|
|
1056
|
-
* system platform
|
|
1056
|
+
* system platform for which the Node.js binary was compiled.
|
|
1057
1057
|
*
|
|
1058
1058
|
* Currently possible values are:
|
|
1059
1059
|
*
|
node/punycode.d.ts
CHANGED
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
* made available to developers as a convenience. Fixes or other modifications to
|
|
25
25
|
* the module must be directed to the [Punycode.js](https://github.com/bestiejs/punycode.js) project.
|
|
26
26
|
* @deprecated Since v7.0.0 - Deprecated
|
|
27
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
27
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/punycode.js)
|
|
28
28
|
*/
|
|
29
29
|
declare module 'punycode' {
|
|
30
30
|
/**
|
node/querystring.d.ts
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
* The `querystring` API is considered Legacy. While it is still maintained,
|
|
10
10
|
* new code should use the `URLSearchParams` API instead.
|
|
11
11
|
* @deprecated Legacy
|
|
12
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
12
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/querystring.js)
|
|
13
13
|
*/
|
|
14
14
|
declare module 'querystring' {
|
|
15
15
|
interface StringifyOptions {
|
node/readline.d.ts
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
*
|
|
18
18
|
* ```js
|
|
19
19
|
* import * as readline from 'node:readline/promises';
|
|
20
|
-
* import { stdin as input, stdout as output } from 'process';
|
|
20
|
+
* import { stdin as input, stdout as output } from 'node:process';
|
|
21
21
|
*
|
|
22
22
|
* const rl = readline.createInterface({ input, output });
|
|
23
23
|
*
|
|
@@ -30,7 +30,7 @@
|
|
|
30
30
|
*
|
|
31
31
|
* Once this code is invoked, the Node.js application will not terminate until the`readline.Interface` is closed because the interface waits for data to be
|
|
32
32
|
* received on the `input` stream.
|
|
33
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
33
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/readline.js)
|
|
34
34
|
*/
|
|
35
35
|
declare module 'readline' {
|
|
36
36
|
import { Abortable, EventEmitter } from 'node:events';
|
node/repl.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* ```js
|
|
7
7
|
* const repl = require('repl');
|
|
8
8
|
* ```
|
|
9
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
9
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/repl.js)
|
|
10
10
|
*/
|
|
11
11
|
declare module 'repl' {
|
|
12
12
|
import { Interface, Completer, AsyncCompleter } from 'node:readline';
|
|
@@ -277,7 +277,7 @@ declare module 'repl' {
|
|
|
277
277
|
* Goodbye!
|
|
278
278
|
* ```
|
|
279
279
|
* @since v0.3.0
|
|
280
|
-
* @param keyword The command keyword (
|
|
280
|
+
* @param keyword The command keyword (_without_ a leading `.` character).
|
|
281
281
|
* @param cmd The function to invoke when the command is processed.
|
|
282
282
|
*/
|
|
283
283
|
defineCommand(keyword: string, cmd: REPLCommandAction | REPLCommand): void;
|
node/stream.d.ts
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
*
|
|
15
15
|
* The `stream` module is useful for creating new types of stream instances. It is
|
|
16
16
|
* usually not necessary to use the `stream` module to consume streams.
|
|
17
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
17
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/stream.js)
|
|
18
18
|
*/
|
|
19
19
|
declare module 'stream' {
|
|
20
20
|
import { EventEmitter, Abortable } from 'node:events';
|
|
@@ -123,16 +123,16 @@ declare module 'stream' {
|
|
|
123
123
|
readonly readableObjectMode: boolean;
|
|
124
124
|
/**
|
|
125
125
|
* Is `true` after `readable.destroy()` has been called.
|
|
126
|
-
* @since
|
|
126
|
+
* @since v18.0.0
|
|
127
127
|
*/
|
|
128
128
|
destroyed: boolean;
|
|
129
129
|
constructor(opts?: ReadableOptions);
|
|
130
130
|
_construct?(callback: (error?: Error | null) => void): void;
|
|
131
131
|
_read(size: number): void;
|
|
132
132
|
/**
|
|
133
|
-
* The `readable.read()` method
|
|
134
|
-
* returns it. If no data available to be read, `null` is returned. By default,
|
|
135
|
-
* the data
|
|
133
|
+
* The `readable.read()` method reads data out of the internal buffer and
|
|
134
|
+
* returns it. If no data is available to be read, `null` is returned. By default,
|
|
135
|
+
* the data is returned as a `Buffer` object unless an encoding has been
|
|
136
136
|
* specified using the `readable.setEncoding()` method or the stream is operating
|
|
137
137
|
* in object mode.
|
|
138
138
|
*
|
|
@@ -347,7 +347,7 @@ declare module 'stream' {
|
|
|
347
347
|
* let chunk;
|
|
348
348
|
* while (null !== (chunk = stream.read())) {
|
|
349
349
|
* const str = decoder.write(chunk);
|
|
350
|
-
* if (str.
|
|
350
|
+
* if (str.includes('\n\n')) {
|
|
351
351
|
* // Found the header boundary.
|
|
352
352
|
* const split = str.split(/\n\n/);
|
|
353
353
|
* header += split.shift();
|
|
@@ -360,10 +360,10 @@ declare module 'stream' {
|
|
|
360
360
|
* stream.unshift(buf);
|
|
361
361
|
* // Now the body of the message can be read from the stream.
|
|
362
362
|
* callback(null, header, stream);
|
|
363
|
-
*
|
|
364
|
-
* // Still reading the header.
|
|
365
|
-
* header += str;
|
|
363
|
+
* return;
|
|
366
364
|
* }
|
|
365
|
+
* // Still reading the header.
|
|
366
|
+
* header += str;
|
|
367
367
|
* }
|
|
368
368
|
* }
|
|
369
369
|
* }
|
|
@@ -580,7 +580,7 @@ declare module 'stream' {
|
|
|
580
580
|
* While a stream is not draining, calls to `write()` will buffer `chunk`, and
|
|
581
581
|
* return false. Once all currently buffered chunks are drained (accepted for
|
|
582
582
|
* delivery by the operating system), the `'drain'` event will be emitted.
|
|
583
|
-
*
|
|
583
|
+
* Once `write()` returns false, do not write more chunks
|
|
584
584
|
* until the `'drain'` event is emitted. While calling `write()` on a stream that
|
|
585
585
|
* is not draining is allowed, Node.js will buffer all written chunks until
|
|
586
586
|
* maximum memory usage occurs, at which point it will abort unconditionally.
|
|
@@ -674,8 +674,8 @@ declare module 'stream' {
|
|
|
674
674
|
* The `writable.uncork()` method flushes all data buffered since {@link cork} was called.
|
|
675
675
|
*
|
|
676
676
|
* When using `writable.cork()` and `writable.uncork()` to manage the buffering
|
|
677
|
-
* of writes to a stream,
|
|
678
|
-
*
|
|
677
|
+
* of writes to a stream, defer calls to `writable.uncork()` using`process.nextTick()`. Doing so allows batching of all`writable.write()` calls that occur within a given Node.js event
|
|
678
|
+
* loop phase.
|
|
679
679
|
*
|
|
680
680
|
* ```js
|
|
681
681
|
* stream.cork();
|
|
@@ -1119,7 +1119,7 @@ declare module 'stream' {
|
|
|
1119
1119
|
* async function run() {
|
|
1120
1120
|
* await pipeline(
|
|
1121
1121
|
* fs.createReadStream('lowercase.txt'),
|
|
1122
|
-
* async function* (source, signal) {
|
|
1122
|
+
* async function* (source, { signal }) {
|
|
1123
1123
|
* source.setEncoding('utf8'); // Work with strings rather than `Buffer`s.
|
|
1124
1124
|
* for await (const chunk of source) {
|
|
1125
1125
|
* yield await processChunk(chunk, { signal });
|
|
@@ -1143,7 +1143,7 @@ declare module 'stream' {
|
|
|
1143
1143
|
*
|
|
1144
1144
|
* async function run() {
|
|
1145
1145
|
* await pipeline(
|
|
1146
|
-
* async function
|
|
1146
|
+
* async function* ({ signal }) {
|
|
1147
1147
|
* await someLongRunningfn({ signal });
|
|
1148
1148
|
* yield 'asd';
|
|
1149
1149
|
* },
|
|
@@ -1162,7 +1162,31 @@ declare module 'stream' {
|
|
|
1162
1162
|
*
|
|
1163
1163
|
* `stream.pipeline()` leaves dangling event listeners on the streams
|
|
1164
1164
|
* after the `callback` has been invoked. In the case of reuse of streams after
|
|
1165
|
-
* failure, this can cause event listener leaks and swallowed errors.
|
|
1165
|
+
* failure, this can cause event listener leaks and swallowed errors. If the last
|
|
1166
|
+
* stream is readable, dangling event listeners will be removed so that the last
|
|
1167
|
+
* stream can be consumed later.
|
|
1168
|
+
*
|
|
1169
|
+
* `stream.pipeline()` closes all the streams when an error is raised.
|
|
1170
|
+
* The `IncomingRequest` usage with `pipeline` could lead to an unexpected behavior
|
|
1171
|
+
* once it would destroy the socket without sending the expected response.
|
|
1172
|
+
* See the example below:
|
|
1173
|
+
*
|
|
1174
|
+
* ```js
|
|
1175
|
+
* const fs = require('fs');
|
|
1176
|
+
* const http = require('http');
|
|
1177
|
+
* const { pipeline } = require('stream');
|
|
1178
|
+
*
|
|
1179
|
+
* const server = http.createServer((req, res) => {
|
|
1180
|
+
* const fileStream = fs.createReadStream('./fileNotExist.txt');
|
|
1181
|
+
* pipeline(fileStream, res, (err) => {
|
|
1182
|
+
* if (err) {
|
|
1183
|
+
* console.log(err); // No such file
|
|
1184
|
+
* // this message can't be sent once `pipeline` already destroyed the socket
|
|
1185
|
+
* return res.end('error!!!');
|
|
1186
|
+
* }
|
|
1187
|
+
* });
|
|
1188
|
+
* });
|
|
1189
|
+
* ```
|
|
1166
1190
|
* @since v10.0.0
|
|
1167
1191
|
* @param callback Called when the pipeline is fully done.
|
|
1168
1192
|
*/
|
node/string_decoder.d.ts
CHANGED
|
@@ -36,7 +36,7 @@
|
|
|
36
36
|
* decoder.write(Buffer.from([0x82]));
|
|
37
37
|
* console.log(decoder.end(Buffer.from([0xAC])));
|
|
38
38
|
* ```
|
|
39
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
39
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/string_decoder.js)
|
|
40
40
|
*/
|
|
41
41
|
declare module 'string_decoder' {
|
|
42
42
|
class StringDecoder {
|
node/test.d.ts
ADDED
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The `node:test` module provides a standalone testing module.
|
|
3
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/test.js)
|
|
4
|
+
*/
|
|
5
|
+
declare module 'node:test' {
|
|
6
|
+
/**
|
|
7
|
+
* The `test()` function is the value imported from the test module. Each invocation of this
|
|
8
|
+
* function results in the creation of a test point in the TAP output.
|
|
9
|
+
*
|
|
10
|
+
* The {@link TestContext} object passed to the fn argument can be used to perform actions
|
|
11
|
+
* related to the current test. Examples include skipping the test, adding additional TAP
|
|
12
|
+
* diagnostic information, or creating subtests.
|
|
13
|
+
*
|
|
14
|
+
* `test()` returns a {@link Promise} that resolves once the test completes. The return value
|
|
15
|
+
* can usually be discarded for top level tests. However, the return value from subtests should
|
|
16
|
+
* be used to prevent the parent test from finishing first and cancelling the subtest as shown
|
|
17
|
+
* in the following example.
|
|
18
|
+
*
|
|
19
|
+
* ```js
|
|
20
|
+
* test('top level test', async (t) => {
|
|
21
|
+
* // The setTimeout() in the following subtest would cause it to outlive its
|
|
22
|
+
* // parent test if 'await' is removed on the next line. Once the parent test
|
|
23
|
+
* // completes, it will cancel any outstanding subtests.
|
|
24
|
+
* await t.test('longer running subtest', async (t) => {
|
|
25
|
+
* return new Promise((resolve, reject) => {
|
|
26
|
+
* setTimeout(resolve, 1000);
|
|
27
|
+
* });
|
|
28
|
+
* });
|
|
29
|
+
* });
|
|
30
|
+
* ```
|
|
31
|
+
* @since v18.0.0
|
|
32
|
+
* @param name The name of the test, which is displayed when reporting test results.
|
|
33
|
+
* Default: The `name` property of fn, or `'<anonymous>'` if `fn` does not have a name.
|
|
34
|
+
* @param options Configuration options for the test
|
|
35
|
+
* @param fn The function under test. This first argument to this function is a
|
|
36
|
+
* {@link TestContext} object. If the test uses callbacks, the callback function is
|
|
37
|
+
* passed as the second argument. Default: A no-op function.
|
|
38
|
+
* @returns A {@link Promise} resolved with `undefined` once the test completes.
|
|
39
|
+
*/
|
|
40
|
+
function test(name?: string, fn?: TestFn): Promise<void>;
|
|
41
|
+
function test(name?: string, options?: TestOptions, fn?: TestFn): Promise<void>;
|
|
42
|
+
function test(options?: TestOptions, fn?: TestFn): Promise<void>;
|
|
43
|
+
function test(fn?: TestFn): Promise<void>;
|
|
44
|
+
|
|
45
|
+
/**
|
|
46
|
+
* The type of a function under test. This first argument to this function is a
|
|
47
|
+
* {@link TestContext} object. If the test uses callbacks, the callback function is passed as
|
|
48
|
+
* the second argument.
|
|
49
|
+
*/
|
|
50
|
+
type TestFn = ((t: TestContext, done: (result?: any) => void) => any);
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* An instance of `TestContext` is passed to each test function in order to interact with the
|
|
54
|
+
* test runner. However, the `TestContext` constructor is not exposed as part of the API.
|
|
55
|
+
* @since v18.0.0
|
|
56
|
+
*/
|
|
57
|
+
interface TestContext {
|
|
58
|
+
/**
|
|
59
|
+
* This function is used to write TAP diagnostics to the output. Any diagnostic information is
|
|
60
|
+
* included at the end of the test's results. This function does not return a value.
|
|
61
|
+
* @param message Message to be displayed as a TAP diagnostic.
|
|
62
|
+
* @since v18.0.0
|
|
63
|
+
*/
|
|
64
|
+
diagnostic(message: string): void;
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* If `shouldRunOnlyTests` is truthy, the test context will only run tests that have the `only`
|
|
68
|
+
* option set. Otherwise, all tests are run. If Node.js was not started with the `--test-only`
|
|
69
|
+
* command-line option, this function is a no-op.
|
|
70
|
+
* @param shouldRunOnlyTests Whether or not to run `only` tests.
|
|
71
|
+
* @since v18.0.0
|
|
72
|
+
*/
|
|
73
|
+
runOnly(shouldRunOnlyTests: boolean): void;
|
|
74
|
+
|
|
75
|
+
/**
|
|
76
|
+
* This function causes the test's output to indicate the test as skipped. If `message` is
|
|
77
|
+
* provided, it is included in the TAP output. Calling `skip()` does not terminate execution of
|
|
78
|
+
* the test function. This function does not return a value.
|
|
79
|
+
* @param message Optional skip message to be displayed in TAP output.
|
|
80
|
+
* @since v18.0.0
|
|
81
|
+
*/
|
|
82
|
+
skip(message?: string): void;
|
|
83
|
+
|
|
84
|
+
/**
|
|
85
|
+
* This function adds a `TODO` directive to the test's output. If `message` is provided, it is
|
|
86
|
+
* included in the TAP output. Calling `todo()` does not terminate execution of the test
|
|
87
|
+
* function. This function does not return a value.
|
|
88
|
+
* @param message Optional `TODO` message to be displayed in TAP output.
|
|
89
|
+
* @since v18.0.0
|
|
90
|
+
*/
|
|
91
|
+
todo(message?: string): void;
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* This function is used to create subtests under the current test. This function behaves in
|
|
95
|
+
* the same fashion as the top level {@link test} function.
|
|
96
|
+
* @since v18.0.0
|
|
97
|
+
* @param name The name of the test, which is displayed when reporting test results.
|
|
98
|
+
* Default: The `name` property of fn, or `'<anonymous>'` if `fn` does not have a name.
|
|
99
|
+
* @param options Configuration options for the test
|
|
100
|
+
* @param fn The function under test. This first argument to this function is a
|
|
101
|
+
* {@link TestContext} object. If the test uses callbacks, the callback function is
|
|
102
|
+
* passed as the second argument. Default: A no-op function.
|
|
103
|
+
* @returns A {@link Promise} resolved with `undefined` once the test completes.
|
|
104
|
+
*/
|
|
105
|
+
test: typeof test;
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
interface TestOptions {
|
|
109
|
+
/**
|
|
110
|
+
* The number of tests that can be run at the same time. If unspecified, subtests inherit this
|
|
111
|
+
* value from their parent.
|
|
112
|
+
* @default 1
|
|
113
|
+
*/
|
|
114
|
+
concurrency?: number;
|
|
115
|
+
|
|
116
|
+
/**
|
|
117
|
+
* If truthy, and the test context is configured to run `only` tests, then this test will be
|
|
118
|
+
* run. Otherwise, the test is skipped.
|
|
119
|
+
* @default false
|
|
120
|
+
*/
|
|
121
|
+
only?: boolean;
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* If truthy, the test is skipped. If a string is provided, that string is displayed in the
|
|
125
|
+
* test results as the reason for skipping the test.
|
|
126
|
+
* @default false
|
|
127
|
+
*/
|
|
128
|
+
skip?: boolean | string;
|
|
129
|
+
|
|
130
|
+
/**
|
|
131
|
+
* If truthy, the test marked as `TODO`. If a string is provided, that string is displayed in
|
|
132
|
+
* the test results as the reason why the test is `TODO`.
|
|
133
|
+
* @default false
|
|
134
|
+
*/
|
|
135
|
+
todo?: boolean | string;
|
|
136
|
+
}
|
|
137
|
+
|
|
138
|
+
export {
|
|
139
|
+
test as default,
|
|
140
|
+
test,
|
|
141
|
+
};
|
|
142
|
+
}
|
node/timers.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* The timer functions within Node.js implement a similar API as the timers API
|
|
7
7
|
* provided by Web Browsers but use a different internal implementation that is
|
|
8
8
|
* built around the Node.js [Event Loop](https://nodejs.org/en/docs/guides/event-loop-timers-and-nexttick/#setimmediate-vs-settimeout).
|
|
9
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
9
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/timers.js)
|
|
10
10
|
*/
|
|
11
11
|
declare module 'timers' {
|
|
12
12
|
import { Abortable } from 'node:events';
|
node/tls.d.ts
CHANGED
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* ```js
|
|
7
7
|
* const tls = require('tls');
|
|
8
8
|
* ```
|
|
9
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
9
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/tls.js)
|
|
10
10
|
*/
|
|
11
11
|
declare module 'tls' {
|
|
12
12
|
import { X509Certificate } from 'node:crypto';
|
|
@@ -143,8 +143,8 @@ declare module 'tls' {
|
|
|
143
143
|
*/
|
|
144
144
|
constructor(socket: net.Socket, options?: TLSSocketOptions);
|
|
145
145
|
/**
|
|
146
|
-
*
|
|
147
|
-
* when creating the `tls.TLSSocket` instance, otherwise `false`.
|
|
146
|
+
* This property is `true` if the peer certificate was signed by one of the CAs
|
|
147
|
+
* specified when creating the `tls.TLSSocket` instance, otherwise `false`.
|
|
148
148
|
* @since v0.11.4
|
|
149
149
|
*/
|
|
150
150
|
authorized: boolean;
|
|
@@ -343,9 +343,9 @@ declare module 'tls' {
|
|
|
343
343
|
* When enabled, TLS packet trace information is written to `stderr`. This can be
|
|
344
344
|
* used to debug TLS connection problems.
|
|
345
345
|
*
|
|
346
|
-
*
|
|
347
|
-
* undocumented, can change
|
|
348
|
-
* and should not be relied on.
|
|
346
|
+
* The format of the output is identical to the output of`openssl s_client -trace` or `openssl s_server -trace`. While it is produced by
|
|
347
|
+
* OpenSSL's `SSL_trace()` function, the format is undocumented, can change
|
|
348
|
+
* without notice, and should not be relied on.
|
|
349
349
|
* @since v12.2.0
|
|
350
350
|
*/
|
|
351
351
|
enableTrace(): void;
|
|
@@ -374,7 +374,7 @@ declare module 'tls' {
|
|
|
374
374
|
* 128,
|
|
375
375
|
* 'client finished');
|
|
376
376
|
*
|
|
377
|
-
*
|
|
377
|
+
* /*
|
|
378
378
|
* Example return value of keyingMaterial:
|
|
379
379
|
* <Buffer 76 26 af 99 c5 56 8e 42 09 91 ef 9f 93 cb ad 6c 7b 65 f8 53 f1 d8 d9
|
|
380
380
|
* 12 5a 33 b8 b5 25 df 7b 37 9f e0 e2 4f b8 67 83 a3 2f cd 5d 41 42 4c 91
|
|
@@ -814,13 +814,19 @@ declare module 'tls' {
|
|
|
814
814
|
* Returns [Error](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Error) object, populating it with `reason`, `host`, and `cert` on
|
|
815
815
|
* failure. On success, returns [undefined](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Data_structures#Undefined_type).
|
|
816
816
|
*
|
|
817
|
-
* This function can be
|
|
818
|
-
*
|
|
817
|
+
* This function is intended to be used in combination with the`checkServerIdentity` option that can be passed to {@link connect} and as
|
|
818
|
+
* such operates on a `certificate object`. For other purposes, consider using `x509.checkHost()` instead.
|
|
819
|
+
*
|
|
820
|
+
* This function can be overwritten by providing an alternative function as the`options.checkServerIdentity` option that is passed to `tls.connect()`. The
|
|
819
821
|
* overwriting function can call `tls.checkServerIdentity()` of course, to augment
|
|
820
822
|
* the checks done with additional verification.
|
|
821
823
|
*
|
|
822
824
|
* This function is only called if the certificate passed all other checks, such as
|
|
823
825
|
* being issued by trusted CA (`options.ca`).
|
|
826
|
+
*
|
|
827
|
+
* Earlier versions of Node.js incorrectly accepted certificates for a given`hostname` if a matching `uniformResourceIdentifier` subject alternative name
|
|
828
|
+
* was present (see [CVE-2021-44531](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-44531)). Applications that wish to accept`uniformResourceIdentifier` subject alternative names can use
|
|
829
|
+
* a custom`options.checkServerIdentity` function that implements the desired behavior.
|
|
824
830
|
* @since v0.8.4
|
|
825
831
|
* @param hostname The host name or IP address to verify the certificate against.
|
|
826
832
|
* @param cert A `certificate object` representing the peer's certificate.
|
|
@@ -973,6 +979,8 @@ declare module 'tls' {
|
|
|
973
979
|
* lower-case for historical reasons, but must be uppercased to be used in
|
|
974
980
|
* the `ciphers` option of {@link createSecureContext}.
|
|
975
981
|
*
|
|
982
|
+
* Not all supported ciphers are enabled by default. See `Modifying the default TLS cipher suite`.
|
|
983
|
+
*
|
|
976
984
|
* Cipher names that start with `'tls_'` are for TLSv1.3, all the others are for
|
|
977
985
|
* TLSv1.2 and below.
|
|
978
986
|
*
|
node/trace_events.d.ts
CHANGED
|
@@ -66,6 +66,16 @@
|
|
|
66
66
|
* node --trace-event-categories v8 --trace-event-file-pattern '${pid}-${rotation}.log' server.js
|
|
67
67
|
* ```
|
|
68
68
|
*
|
|
69
|
+
* To guarantee that the log file is properly generated after signal events like`SIGINT`, `SIGTERM`, or `SIGBREAK`, make sure to have the appropriate handlers
|
|
70
|
+
* in your code, such as:
|
|
71
|
+
*
|
|
72
|
+
* ```js
|
|
73
|
+
* process.on('SIGINT', function onSigint() {
|
|
74
|
+
* console.info('Received SIGINT.');
|
|
75
|
+
* process.exit(130); // Or applicable exit code depending on OS and signal
|
|
76
|
+
* });
|
|
77
|
+
* ```
|
|
78
|
+
*
|
|
69
79
|
* The tracing system uses the same time source
|
|
70
80
|
* as the one used by `process.hrtime()`.
|
|
71
81
|
* However the trace-event timestamps are expressed in microseconds,
|
|
@@ -73,7 +83,7 @@
|
|
|
73
83
|
*
|
|
74
84
|
* The features from this module are not available in `Worker` threads.
|
|
75
85
|
* @experimental
|
|
76
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
86
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/trace_events.js)
|
|
77
87
|
*/
|
|
78
88
|
declare module 'trace_events' {
|
|
79
89
|
/**
|
node/tty.d.ts
CHANGED
|
@@ -22,7 +22,7 @@
|
|
|
22
22
|
*
|
|
23
23
|
* In most cases, there should be little to no reason for an application to
|
|
24
24
|
* manually create instances of the `tty.ReadStream` and `tty.WriteStream`classes.
|
|
25
|
-
* @see [source](https://github.com/nodejs/node/blob/
|
|
25
|
+
* @see [source](https://github.com/nodejs/node/blob/v18.0.0/lib/tty.js)
|
|
26
26
|
*/
|
|
27
27
|
declare module 'tty' {
|
|
28
28
|
import * as net from 'node:net';
|
|
@@ -52,7 +52,9 @@ declare module 'tty' {
|
|
|
52
52
|
*
|
|
53
53
|
* When in raw mode, input is always available character-by-character, not
|
|
54
54
|
* including modifiers. Additionally, all special processing of characters by the
|
|
55
|
-
* terminal is disabled, including echoing input
|
|
55
|
+
* terminal is disabled, including echoing input
|
|
56
|
+
* characters. Ctrl+C will no longer cause a `SIGINT` when
|
|
57
|
+
* in this mode.
|
|
56
58
|
* @since v0.7.7
|
|
57
59
|
* @param mode If `true`, configures the `tty.ReadStream` to operate as a raw device. If `false`, configures the `tty.ReadStream` to operate in its default mode. The `readStream.isRaw`
|
|
58
60
|
* property will be set to the resulting mode.
|