cdk-common 2.0.1302 → 2.0.1304

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 (48) hide show
  1. package/.jsii +14 -2
  2. package/API.md +12 -0
  3. package/lib/main.js +1 -1
  4. package/lib/managed-policies.d.ts +3 -1
  5. package/lib/managed-policies.js +3 -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.d.ts +1 -1
  8. package/node_modules/@types/concat-stream/node_modules/@types/node/child_process.d.ts +15 -9
  9. package/node_modules/@types/concat-stream/node_modules/@types/node/cluster.d.ts +3 -4
  10. package/node_modules/@types/concat-stream/node_modules/@types/node/crypto.d.ts +35 -35
  11. package/node_modules/@types/concat-stream/node_modules/@types/node/dns.d.ts +1 -1
  12. package/node_modules/@types/concat-stream/node_modules/@types/node/events.d.ts +1 -1
  13. package/node_modules/@types/concat-stream/node_modules/@types/node/fs.d.ts +11 -11
  14. package/node_modules/@types/concat-stream/node_modules/@types/node/http.d.ts +3 -4
  15. package/node_modules/@types/concat-stream/node_modules/@types/node/http2.d.ts +4 -3
  16. package/node_modules/@types/concat-stream/node_modules/@types/node/https.d.ts +9 -12
  17. package/node_modules/@types/concat-stream/node_modules/@types/node/net.d.ts +5 -5
  18. package/node_modules/@types/concat-stream/node_modules/@types/node/os.d.ts +13 -3
  19. package/node_modules/@types/concat-stream/node_modules/@types/node/package.json +2 -2
  20. package/node_modules/@types/concat-stream/node_modules/@types/node/perf_hooks.d.ts +6 -8
  21. package/node_modules/@types/concat-stream/node_modules/@types/node/process.d.ts +7 -19
  22. package/node_modules/@types/concat-stream/node_modules/@types/node/readline/promises.d.ts +1 -1
  23. package/node_modules/@types/concat-stream/node_modules/@types/node/stream.d.ts +29 -22
  24. package/node_modules/@types/concat-stream/node_modules/@types/node/tls.d.ts +2 -2
  25. package/node_modules/@types/concat-stream/node_modules/@types/node/v8.d.ts +2 -2
  26. package/node_modules/@types/concat-stream/node_modules/@types/node/vm.d.ts +18 -48
  27. package/node_modules/@types/form-data/node_modules/@types/node/README.md +1 -1
  28. package/node_modules/@types/form-data/node_modules/@types/node/assert.d.ts +1 -1
  29. package/node_modules/@types/form-data/node_modules/@types/node/child_process.d.ts +15 -9
  30. package/node_modules/@types/form-data/node_modules/@types/node/cluster.d.ts +3 -4
  31. package/node_modules/@types/form-data/node_modules/@types/node/crypto.d.ts +35 -35
  32. package/node_modules/@types/form-data/node_modules/@types/node/dns.d.ts +1 -1
  33. package/node_modules/@types/form-data/node_modules/@types/node/events.d.ts +1 -1
  34. package/node_modules/@types/form-data/node_modules/@types/node/fs.d.ts +11 -11
  35. package/node_modules/@types/form-data/node_modules/@types/node/http.d.ts +3 -4
  36. package/node_modules/@types/form-data/node_modules/@types/node/http2.d.ts +4 -3
  37. package/node_modules/@types/form-data/node_modules/@types/node/https.d.ts +9 -12
  38. package/node_modules/@types/form-data/node_modules/@types/node/net.d.ts +5 -5
  39. package/node_modules/@types/form-data/node_modules/@types/node/os.d.ts +13 -3
  40. package/node_modules/@types/form-data/node_modules/@types/node/package.json +2 -2
  41. package/node_modules/@types/form-data/node_modules/@types/node/perf_hooks.d.ts +6 -8
  42. package/node_modules/@types/form-data/node_modules/@types/node/process.d.ts +7 -19
  43. package/node_modules/@types/form-data/node_modules/@types/node/readline/promises.d.ts +1 -1
  44. package/node_modules/@types/form-data/node_modules/@types/node/stream.d.ts +29 -22
  45. package/node_modules/@types/form-data/node_modules/@types/node/tls.d.ts +2 -2
  46. package/node_modules/@types/form-data/node_modules/@types/node/v8.d.ts +2 -2
  47. package/node_modules/@types/form-data/node_modules/@types/node/vm.d.ts +18 -48
  48. package/package.json +2 -2
@@ -484,7 +484,7 @@ declare module "events" {
484
484
  * directly rather than as a child class.
485
485
  * @default new.target.name if instantiated as a child class.
486
486
  */
487
- name?: string;
487
+ name?: string | undefined;
488
488
  }
489
489
 
490
490
  /**
@@ -2634,7 +2634,7 @@ declare module "fs" {
2634
2634
  /**
2635
2635
  * @default null
2636
2636
  */
2637
- position?: number | undefined | null;
2637
+ position?: number | null | undefined;
2638
2638
  }
2639
2639
  /**
2640
2640
  * Write `buffer` to the file specified by `fd`.
@@ -4463,7 +4463,7 @@ declare module "fs" {
4463
4463
  /**
4464
4464
  * @default false
4465
4465
  */
4466
- recursive?: boolean;
4466
+ recursive?: boolean | undefined;
4467
4467
  }
4468
4468
  /**
4469
4469
  * Synchronously open a directory. See [`opendir(3)`](http://man7.org/linux/man-pages/man3/opendir.3.html).
@@ -4516,54 +4516,54 @@ declare module "fs" {
4516
4516
  * Dereference symlinks
4517
4517
  * @default false
4518
4518
  */
4519
- dereference?: boolean;
4519
+ dereference?: boolean | undefined;
4520
4520
  /**
4521
4521
  * When `force` is `false`, and the destination
4522
4522
  * exists, throw an error.
4523
4523
  * @default false
4524
4524
  */
4525
- errorOnExist?: boolean;
4525
+ errorOnExist?: boolean | undefined;
4526
4526
  /**
4527
4527
  * Overwrite existing file or directory. _The copy
4528
4528
  * operation will ignore errors if you set this to false and the destination
4529
4529
  * exists. Use the `errorOnExist` option to change this behavior.
4530
4530
  * @default true
4531
4531
  */
4532
- force?: boolean;
4532
+ force?: boolean | undefined;
4533
4533
  /**
4534
4534
  * Modifiers for copy operation. See `mode` flag of {@link copyFileSync()}
4535
4535
  */
4536
- mode?: number;
4536
+ mode?: number | undefined;
4537
4537
  /**
4538
4538
  * When `true` timestamps from `src` will
4539
4539
  * be preserved.
4540
4540
  * @default false
4541
4541
  */
4542
- preserveTimestamps?: boolean;
4542
+ preserveTimestamps?: boolean | undefined;
4543
4543
  /**
4544
4544
  * Copy directories recursively.
4545
4545
  * @default false
4546
4546
  */
4547
- recursive?: boolean;
4547
+ recursive?: boolean | undefined;
4548
4548
  /**
4549
4549
  * When true, path resolution for symlinks will be skipped
4550
4550
  * @default false
4551
4551
  */
4552
- verbatimSymlinks?: boolean;
4552
+ verbatimSymlinks?: boolean | undefined;
4553
4553
  }
4554
4554
  export interface CopyOptions extends CopyOptionsBase {
4555
4555
  /**
4556
4556
  * Function to filter copied files/directories. Return
4557
4557
  * `true` to copy the item, `false` to ignore it.
4558
4558
  */
4559
- filter?(source: string, destination: string): boolean | Promise<boolean>;
4559
+ filter?: ((source: string, destination: string) => boolean | Promise<boolean>) | undefined;
4560
4560
  }
4561
4561
  export interface CopySyncOptions extends CopyOptionsBase {
4562
4562
  /**
4563
4563
  * Function to filter copied files/directories. Return
4564
4564
  * `true` to copy the item, `false` to ignore it.
4565
4565
  */
4566
- filter?(source: string, destination: string): boolean;
4566
+ filter?: ((source: string, destination: string) => boolean) | undefined;
4567
4567
  }
4568
4568
  /**
4569
4569
  * Asynchronously copies the entire directory structure from `src` to `dest`,
@@ -200,7 +200,7 @@ declare module "http" {
200
200
  "x-frame-options"?: string | undefined;
201
201
  "x-xss-protection"?: string | undefined;
202
202
  }
203
- interface ClientRequestArgs {
203
+ interface ClientRequestArgs extends Pick<LookupOptions, "hints"> {
204
204
  _defaultAgent?: Agent | undefined;
205
205
  agent?: Agent | boolean | undefined;
206
206
  auth?: string | null | undefined;
@@ -213,7 +213,6 @@ declare module "http" {
213
213
  defaultPort?: number | string | undefined;
214
214
  family?: number | undefined;
215
215
  headers?: OutgoingHttpHeaders | readonly string[] | undefined;
216
- hints?: LookupOptions["hints"];
217
216
  host?: string | null | undefined;
218
217
  hostname?: string | null | undefined;
219
218
  insecureHTTPParser?: boolean | undefined;
@@ -234,7 +233,7 @@ declare module "http" {
234
233
  socketPath?: string | undefined;
235
234
  timeout?: number | undefined;
236
235
  uniqueHeaders?: Array<string | string[]> | undefined;
237
- joinDuplicateHeaders?: boolean;
236
+ joinDuplicateHeaders?: boolean | undefined;
238
237
  }
239
238
  interface ServerOptions<
240
239
  Request extends typeof IncomingMessage = typeof IncomingMessage,
@@ -260,7 +259,7 @@ declare module "http" {
260
259
  * @default false
261
260
  * @since v18.14.0
262
261
  */
263
- joinDuplicateHeaders?: boolean;
262
+ joinDuplicateHeaders?: boolean | undefined;
264
263
  /**
265
264
  * The number of milliseconds of inactivity a server needs to wait for additional incoming data,
266
265
  * after it has finished writing the last response, before a socket will be destroyed.
@@ -51,14 +51,15 @@ declare module "http2" {
51
51
  length: number;
52
52
  }
53
53
  export interface ServerStreamFileResponseOptions {
54
- // eslint-disable-next-line @typescript-eslint/no-invalid-void-type
55
- statCheck?(stats: fs.Stats, headers: OutgoingHttpHeaders, statOptions: StatOptions): void | boolean;
54
+ statCheck?:
55
+ | ((stats: fs.Stats, headers: OutgoingHttpHeaders, statOptions: StatOptions) => void)
56
+ | undefined;
56
57
  waitForTrailers?: boolean | undefined;
57
58
  offset?: number | undefined;
58
59
  length?: number | undefined;
59
60
  }
60
61
  export interface ServerStreamFileResponseOptionsWithError extends ServerStreamFileResponseOptions {
61
- onError?(err: NodeJS.ErrnoException): void;
62
+ onError?: ((err: NodeJS.ErrnoException) => void) | undefined;
62
63
  }
63
64
  export interface Http2Stream extends stream.Duplex {
64
65
  /**
@@ -8,20 +8,17 @@ declare module "https" {
8
8
  import * as tls from "node:tls";
9
9
  import * as http from "node:http";
10
10
  import { URL } from "node:url";
11
- type ServerOptions<
11
+ interface ServerOptions<
12
12
  Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
13
13
  Response extends typeof http.ServerResponse<InstanceType<Request>> = typeof http.ServerResponse,
14
- > = tls.SecureContextOptions & tls.TlsOptions & http.ServerOptions<Request, Response>;
15
- type RequestOptions =
16
- & http.RequestOptions
17
- & tls.SecureContextOptions
18
- & {
19
- checkServerIdentity?:
20
- | ((hostname: string, cert: tls.DetailedPeerCertificate) => Error | undefined)
21
- | undefined;
22
- rejectUnauthorized?: boolean | undefined; // Defaults to true
23
- servername?: string | undefined; // SNI TLS Extension
24
- };
14
+ > extends http.ServerOptions<Request, Response>, tls.TlsOptions {}
15
+ interface RequestOptions extends http.RequestOptions, tls.SecureContextOptions {
16
+ checkServerIdentity?:
17
+ | ((hostname: string, cert: tls.DetailedPeerCertificate) => Error | undefined)
18
+ | undefined;
19
+ rejectUnauthorized?: boolean | undefined; // Defaults to true
20
+ servername?: string | undefined; // SNI TLS Extension
21
+ }
25
22
  interface AgentOptions extends http.AgentOptions, tls.ConnectionOptions {
26
23
  maxCachedSessions?: number | undefined;
27
24
  }
@@ -32,7 +32,7 @@ declare module "net" {
32
32
  onread?: OnReadOpts | undefined;
33
33
  readable?: boolean | undefined;
34
34
  writable?: boolean | undefined;
35
- signal?: AbortSignal;
35
+ signal?: AbortSignal | undefined;
36
36
  }
37
37
  interface OnReadOpts {
38
38
  buffer: Uint8Array | (() => Uint8Array);
@@ -321,25 +321,25 @@ declare module "net" {
321
321
  * the socket is destroyed (for example, if the client disconnected).
322
322
  * @since v0.5.10
323
323
  */
324
- readonly remoteAddress?: string | undefined;
324
+ readonly remoteAddress: string | undefined;
325
325
  /**
326
326
  * The string representation of the remote IP family. `'IPv4'` or `'IPv6'`. Value may be `undefined` if
327
327
  * the socket is destroyed (for example, if the client disconnected).
328
328
  * @since v0.11.14
329
329
  */
330
- readonly remoteFamily?: string | undefined;
330
+ readonly remoteFamily: string | undefined;
331
331
  /**
332
332
  * The numeric representation of the remote port. For example, `80` or `21`. Value may be `undefined` if
333
333
  * the socket is destroyed (for example, if the client disconnected).
334
334
  * @since v0.5.10
335
335
  */
336
- readonly remotePort?: number | undefined;
336
+ readonly remotePort: number | undefined;
337
337
  /**
338
338
  * The socket timeout in milliseconds as set by `socket.setTimeout()`.
339
339
  * It is `undefined` if a timeout has not been set.
340
340
  * @since v10.7.0
341
341
  */
342
- readonly timeout?: number | undefined;
342
+ readonly timeout?: number;
343
343
  /**
344
344
  * Half-closes the socket. i.e., it sends a FIN packet. It is possible the
345
345
  * server will still send some data.
@@ -30,10 +30,10 @@ declare module "os" {
30
30
  mac: string;
31
31
  internal: boolean;
32
32
  cidr: string | null;
33
+ scopeid?: number;
33
34
  }
34
35
  interface NetworkInterfaceInfoIPv4 extends NetworkInterfaceBase {
35
36
  family: "IPv4";
36
- scopeid?: undefined;
37
37
  }
38
38
  interface NetworkInterfaceInfoIPv6 extends NetworkInterfaceBase {
39
39
  family: "IPv6";
@@ -231,6 +231,15 @@ declare module "os" {
231
231
  * @since v2.3.0
232
232
  */
233
233
  function homedir(): string;
234
+ interface UserInfoOptions {
235
+ encoding?: BufferEncoding | "buffer" | undefined;
236
+ }
237
+ interface UserInfoOptionsWithBufferEncoding extends UserInfoOptions {
238
+ encoding: "buffer";
239
+ }
240
+ interface UserInfoOptionsWithStringEncoding extends UserInfoOptions {
241
+ encoding?: BufferEncoding | undefined;
242
+ }
234
243
  /**
235
244
  * Returns information about the currently effective user. On POSIX platforms,
236
245
  * this is typically a subset of the password file. The returned object includes
@@ -244,8 +253,9 @@ declare module "os" {
244
253
  * Throws a [`SystemError`](https://nodejs.org/docs/latest-v24.x/api/errors.html#class-systemerror) if a user has no `username` or `homedir`.
245
254
  * @since v6.0.0
246
255
  */
247
- function userInfo(options: { encoding: "buffer" }): UserInfo<Buffer>;
248
- function userInfo(options?: { encoding: BufferEncoding }): UserInfo<string>;
256
+ function userInfo(options: UserInfoOptionsWithBufferEncoding): UserInfo<Buffer>;
257
+ function userInfo(options?: UserInfoOptionsWithStringEncoding): UserInfo<string>;
258
+ function userInfo(options: UserInfoOptions): UserInfo<string | Buffer>;
249
259
  type SignalConstants = {
250
260
  [key in NodeJS.Signals]: number;
251
261
  };
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@types/node",
3
- "version": "24.7.1",
3
+ "version": "24.7.2",
4
4
  "description": "TypeScript definitions for node",
5
5
  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node",
6
6
  "license": "MIT",
@@ -150,6 +150,6 @@
150
150
  "undici-types": "~7.14.0"
151
151
  },
152
152
  "peerDependencies": {},
153
- "typesPublisherContentHash": "3707c233ea107d992d9f52fba949c67a272356911b6089143bd81b83b0ebb9c3",
153
+ "typesPublisherContentHash": "4bf36d2d52de2aa8898ee24d026198a784567fa5a42adcae5e37b826951ff66d",
154
154
  "typeScriptVersion": "5.2"
155
155
  }
@@ -48,13 +48,13 @@ declare module "perf_hooks" {
48
48
  * the type of garbage collection operation that occurred.
49
49
  * See perf_hooks.constants for valid values.
50
50
  */
51
- readonly kind?: number | undefined;
51
+ readonly kind: number;
52
52
  /**
53
53
  * When `performanceEntry.entryType` is equal to 'gc', the `performance.flags`
54
54
  * property contains additional information about garbage collection operation.
55
55
  * See perf_hooks.constants for valid values.
56
56
  */
57
- readonly flags?: number | undefined;
57
+ readonly flags: number;
58
58
  }
59
59
  /**
60
60
  * The constructor of this class is not exposed to users directly.
@@ -92,11 +92,6 @@ declare module "perf_hooks" {
92
92
  * @since v8.5.0
93
93
  */
94
94
  readonly entryType: EntryType;
95
- /**
96
- * Additional detail specific to the `entryType`.
97
- * @since v16.0.0
98
- */
99
- readonly detail?: NodeGCPerformanceDetail | unknown | undefined; // TODO: Narrow this based on entry type.
100
95
  toJSON(): any;
101
96
  }
102
97
  /**
@@ -104,6 +99,7 @@ declare module "perf_hooks" {
104
99
  * @since v18.2.0, v16.17.0
105
100
  */
106
101
  class PerformanceMark extends PerformanceEntry {
102
+ readonly detail: any;
107
103
  readonly duration: 0;
108
104
  readonly entryType: "mark";
109
105
  }
@@ -114,6 +110,7 @@ declare module "perf_hooks" {
114
110
  * @since v18.2.0, v16.17.0
115
111
  */
116
112
  class PerformanceMeasure extends PerformanceEntry {
113
+ readonly detail: any;
117
114
  readonly entryType: "measure";
118
115
  }
119
116
  interface UVMetrics {
@@ -130,6 +127,7 @@ declare module "perf_hooks" {
130
127
  */
131
128
  readonly eventsWaiting: number;
132
129
  }
130
+ // TODO: PerformanceNodeEntry is missing
133
131
  /**
134
132
  * _This property is an extension by Node.js. It is not available in Web browsers._
135
133
  *
@@ -225,7 +223,7 @@ declare module "perf_hooks" {
225
223
  /**
226
224
  * Additional optional detail to include with the mark.
227
225
  */
228
- detail?: unknown | undefined;
226
+ detail?: unknown;
229
227
  /**
230
228
  * Duration between start and end times.
231
229
  */
@@ -1,4 +1,5 @@
1
1
  declare module "process" {
2
+ import { Control, MessageOptions } from "node:child_process";
2
3
  import * as tty from "node:tty";
3
4
  import { Worker } from "node:worker_threads";
4
5
 
@@ -346,7 +347,7 @@ declare module "process" {
346
347
  /**
347
348
  * Can be used to change the default timezone at runtime
348
349
  */
349
- TZ?: string;
350
+ TZ?: string | undefined;
350
351
  }
351
352
  interface HRTime {
352
353
  /**
@@ -990,7 +991,7 @@ declare module "process" {
990
991
  * @since v0.1.13
991
992
  * @param [code=0] The exit code. For string type, only integer strings (e.g.,'1') are allowed.
992
993
  */
993
- exit(code?: number | string | null | undefined): never;
994
+ exit(code?: number | string | null): never;
994
995
  /**
995
996
  * A number which will be the process exit code, when the process either
996
997
  * exits gracefully, or is exited via {@link exit} without specifying
@@ -1001,7 +1002,7 @@ declare module "process" {
1001
1002
  * @default undefined
1002
1003
  * @since v0.11.8
1003
1004
  */
1004
- exitCode?: number | string | number | undefined;
1005
+ exitCode: number | string | null | undefined;
1005
1006
  finalization: {
1006
1007
  /**
1007
1008
  * This function registers a callback to be called when the process emits the `exit` event if the `ref` object was not garbage collected.
@@ -1568,7 +1569,7 @@ declare module "process" {
1568
1569
  * @since v0.1.17
1569
1570
  * @deprecated Since v14.0.0 - Use `main` instead.
1570
1571
  */
1571
- mainModule?: Module | undefined;
1572
+ mainModule?: Module;
1572
1573
  memoryUsage: MemoryUsageFn;
1573
1574
  /**
1574
1575
  * Gets the amount of memory available to the process (in bytes) based on
@@ -1760,18 +1761,7 @@ declare module "process" {
1760
1761
  * If no IPC channel exists, this property is undefined.
1761
1762
  * @since v7.1.0
1762
1763
  */
1763
- channel?: {
1764
- /**
1765
- * This method makes the IPC channel keep the event loop of the process running if .unref() has been called before.
1766
- * @since v7.1.0
1767
- */
1768
- ref(): void;
1769
- /**
1770
- * This method makes the IPC channel not keep the event loop of the process running, and lets it finish even while the channel is open.
1771
- * @since v7.1.0
1772
- */
1773
- unref(): void;
1774
- };
1764
+ channel?: Control;
1775
1765
  /**
1776
1766
  * If Node.js is spawned with an IPC channel, the `process.send()` method can be
1777
1767
  * used to send messages to the parent process. Messages will be received as a `'message'` event on the parent's `ChildProcess` object.
@@ -1786,9 +1776,7 @@ declare module "process" {
1786
1776
  send?(
1787
1777
  message: any,
1788
1778
  sendHandle?: any,
1789
- options?: {
1790
- keepOpen?: boolean | undefined;
1791
- },
1779
+ options?: MessageOptions,
1792
1780
  callback?: (error: Error | null) => void,
1793
1781
  ): boolean;
1794
1782
  /**
@@ -64,7 +64,7 @@ declare module "readline/promises" {
64
64
  constructor(
65
65
  stream: NodeJS.WritableStream,
66
66
  options?: {
67
- autoCommit?: boolean;
67
+ autoCommit?: boolean | undefined;
68
68
  },
69
69
  );
70
70
  /**
@@ -45,22 +45,22 @@ declare module "stream" {
45
45
  emitClose?: boolean | undefined;
46
46
  highWaterMark?: number | undefined;
47
47
  objectMode?: boolean | undefined;
48
- construct?(this: T, callback: (error?: Error | null) => void): void;
49
- destroy?(this: T, error: Error | null, callback: (error?: Error | null) => void): void;
48
+ construct?: ((this: T, callback: (error?: Error | null) => void) => void) | undefined;
49
+ destroy?: ((this: T, error: Error | null, callback: (error?: Error | null) => void) => void) | undefined;
50
50
  autoDestroy?: boolean | undefined;
51
51
  }
52
52
  interface ReadableOptions<T extends Readable = Readable> extends StreamOptions<T> {
53
53
  encoding?: BufferEncoding | undefined;
54
- read?(this: T, size: number): void;
54
+ read?: ((this: T, size: number) => void) | undefined;
55
55
  }
56
56
  interface ArrayOptions {
57
57
  /**
58
58
  * The maximum concurrent invocations of `fn` to call on the stream at once.
59
59
  * @default 1
60
60
  */
61
- concurrency?: number;
61
+ concurrency?: number | undefined;
62
62
  /** Allows destroying the stream if the signal is aborted. */
63
- signal?: AbortSignal;
63
+ signal?: AbortSignal | undefined;
64
64
  }
65
65
  /**
66
66
  * @since v0.9.4
@@ -697,21 +697,25 @@ declare module "stream" {
697
697
  interface WritableOptions<T extends Writable = Writable> extends StreamOptions<T> {
698
698
  decodeStrings?: boolean | undefined;
699
699
  defaultEncoding?: BufferEncoding | undefined;
700
- write?(
701
- this: T,
702
- chunk: any,
703
- encoding: BufferEncoding,
704
- callback: (error?: Error | null) => void,
705
- ): void;
706
- writev?(
707
- this: T,
708
- chunks: Array<{
709
- chunk: any;
710
- encoding: BufferEncoding;
711
- }>,
712
- callback: (error?: Error | null) => void,
713
- ): void;
714
- final?(this: T, callback: (error?: Error | null) => void): void;
700
+ write?:
701
+ | ((
702
+ this: T,
703
+ chunk: any,
704
+ encoding: BufferEncoding,
705
+ callback: (error?: Error | null) => void,
706
+ ) => void)
707
+ | undefined;
708
+ writev?:
709
+ | ((
710
+ this: T,
711
+ chunks: Array<{
712
+ chunk: any;
713
+ encoding: BufferEncoding;
714
+ }>,
715
+ callback: (error?: Error | null) => void,
716
+ ) => void)
717
+ | undefined;
718
+ final?: ((this: T, callback: (error?: Error | null) => void) => void) | undefined;
715
719
  }
716
720
  /**
717
721
  * @since v0.9.4
@@ -1235,8 +1239,10 @@ declare module "stream" {
1235
1239
  function duplexPair(options?: DuplexOptions): [Duplex, Duplex];
1236
1240
  type TransformCallback = (error?: Error | null, data?: any) => void;
1237
1241
  interface TransformOptions<T extends Transform = Transform> extends DuplexOptions<T> {
1238
- transform?(this: T, chunk: any, encoding: BufferEncoding, callback: TransformCallback): void;
1239
- flush?(this: T, callback: TransformCallback): void;
1242
+ transform?:
1243
+ | ((this: T, chunk: any, encoding: BufferEncoding, callback: TransformCallback) => void)
1244
+ | undefined;
1245
+ flush?: ((this: T, callback: TransformCallback) => void) | undefined;
1240
1246
  }
1241
1247
  /**
1242
1248
  * Transform streams are `Duplex` streams where the output is in some way
@@ -1643,6 +1649,7 @@ declare module "stream" {
1643
1649
  ...streams: Array<NodeJS.ReadWriteStream | NodeJS.WritableStream | PipelineOptions>
1644
1650
  ): Promise<void>;
1645
1651
  }
1652
+ // TODO: this interface never existed; remove in next major
1646
1653
  interface Pipe {
1647
1654
  close(): void;
1648
1655
  hasRef(): boolean;
@@ -586,7 +586,7 @@ declare module "tls" {
586
586
  * requires explicitly specifying a cipher suite with the `ciphers` option.
587
587
  * More information can be found in the RFC 4279.
588
588
  */
589
- pskCallback?(socket: TLSSocket, identity: string): DataView | NodeJS.TypedArray | null;
589
+ pskCallback?: ((socket: TLSSocket, identity: string) => NodeJS.ArrayBufferView | null) | undefined;
590
590
  /**
591
591
  * hint to send to a client to help
592
592
  * with selecting the identity during TLS-PSK negotiation. Will be ignored
@@ -627,7 +627,7 @@ declare module "tls" {
627
627
  * compatible with the selected cipher's digest.
628
628
  * `identity` must use UTF-8 encoding.
629
629
  */
630
- pskCallback?(hint: string | null): PSKCallbackNegotation | null;
630
+ pskCallback?: ((hint: string | null) => PSKCallbackNegotation | null) | undefined;
631
631
  }
632
632
  /**
633
633
  * Accepts encrypted connections using TLS or SSL.
@@ -43,12 +43,12 @@ declare module "v8" {
43
43
  * If true, expose internals in the heap snapshot.
44
44
  * @default false
45
45
  */
46
- exposeInternals?: boolean;
46
+ exposeInternals?: boolean | undefined;
47
47
  /**
48
48
  * If true, expose numeric values in artificial fields.
49
49
  * @default false
50
50
  */
51
- exposeNumericValues?: boolean;
51
+ exposeNumericValues?: boolean | undefined;
52
52
  }
53
53
  /**
54
54
  * Returns an integer representing a version tag derived from the V8 version,