cdk-common 2.0.1351 → 2.0.1352

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (168) hide show
  1. package/.jsii +38 -2
  2. package/API.md +36 -0
  3. package/lib/main.js +1 -1
  4. package/lib/managed-policies.d.ts +7 -1
  5. package/lib/managed-policies.js +7 -1
  6. package/node_modules/@types/concat-stream/node_modules/@types/node/README.md +1 -1
  7. package/node_modules/@types/concat-stream/node_modules/@types/node/assert/strict.d.ts +5 -11
  8. package/node_modules/@types/concat-stream/node_modules/@types/node/assert.d.ts +9 -169
  9. package/node_modules/@types/concat-stream/node_modules/@types/node/async_hooks.d.ts +8 -8
  10. package/node_modules/@types/concat-stream/node_modules/@types/node/buffer.buffer.d.ts +1 -7
  11. package/node_modules/@types/concat-stream/node_modules/@types/node/buffer.d.ts +44 -168
  12. package/node_modules/@types/concat-stream/node_modules/@types/node/child_process.d.ts +16 -64
  13. package/node_modules/@types/concat-stream/node_modules/@types/node/cluster.d.ts +240 -332
  14. package/node_modules/@types/concat-stream/node_modules/@types/node/console.d.ts +49 -351
  15. package/node_modules/@types/concat-stream/node_modules/@types/node/constants.d.ts +3 -4
  16. package/node_modules/@types/concat-stream/node_modules/@types/node/crypto.d.ts +279 -1631
  17. package/node_modules/@types/concat-stream/node_modules/@types/node/dgram.d.ts +15 -51
  18. package/node_modules/@types/concat-stream/node_modules/@types/node/diagnostics_channel.d.ts +4 -4
  19. package/node_modules/@types/concat-stream/node_modules/@types/node/dns/promises.d.ts +3 -3
  20. package/node_modules/@types/concat-stream/node_modules/@types/node/dns.d.ts +131 -132
  21. package/node_modules/@types/concat-stream/node_modules/@types/node/domain.d.ts +13 -17
  22. package/node_modules/@types/concat-stream/node_modules/@types/node/events.d.ts +869 -791
  23. package/node_modules/@types/concat-stream/node_modules/@types/node/fs/promises.d.ts +7 -8
  24. package/node_modules/@types/concat-stream/node_modules/@types/node/fs.d.ts +417 -455
  25. package/node_modules/@types/concat-stream/node_modules/@types/node/globals.d.ts +6 -26
  26. package/node_modules/@types/concat-stream/node_modules/@types/node/globals.typedarray.d.ts +60 -0
  27. package/node_modules/@types/concat-stream/node_modules/@types/node/http.d.ts +263 -254
  28. package/node_modules/@types/concat-stream/node_modules/@types/node/http2.d.ts +528 -804
  29. package/node_modules/@types/concat-stream/node_modules/@types/node/https.d.ts +59 -239
  30. package/node_modules/@types/concat-stream/node_modules/@types/node/index.d.ts +15 -1
  31. package/node_modules/@types/concat-stream/node_modules/@types/node/inspector/promises.d.ts +41 -0
  32. package/node_modules/@types/concat-stream/node_modules/@types/node/inspector.d.ts +6 -59
  33. package/node_modules/@types/concat-stream/node_modules/@types/node/inspector.generated.d.ts +3 -10
  34. package/node_modules/@types/concat-stream/node_modules/@types/node/module.d.ts +47 -122
  35. package/node_modules/@types/concat-stream/node_modules/@types/node/net.d.ts +63 -184
  36. package/node_modules/@types/concat-stream/node_modules/@types/node/os.d.ts +6 -6
  37. package/node_modules/@types/concat-stream/node_modules/@types/node/package.json +2 -2
  38. package/node_modules/@types/concat-stream/node_modules/@types/node/path/posix.d.ts +8 -0
  39. package/node_modules/@types/concat-stream/node_modules/@types/node/path/win32.d.ts +8 -0
  40. package/node_modules/@types/concat-stream/node_modules/@types/node/path.d.ts +120 -133
  41. package/node_modules/@types/concat-stream/node_modules/@types/node/perf_hooks.d.ts +282 -643
  42. package/node_modules/@types/concat-stream/node_modules/@types/node/process.d.ts +156 -128
  43. package/node_modules/@types/concat-stream/node_modules/@types/node/punycode.d.ts +5 -5
  44. package/node_modules/@types/concat-stream/node_modules/@types/node/querystring.d.ts +4 -4
  45. package/node_modules/@types/concat-stream/node_modules/@types/node/quic.d.ts +910 -0
  46. package/node_modules/@types/concat-stream/node_modules/@types/node/readline/promises.d.ts +3 -3
  47. package/node_modules/@types/concat-stream/node_modules/@types/node/readline.d.ts +67 -120
  48. package/node_modules/@types/concat-stream/node_modules/@types/node/repl.d.ts +75 -98
  49. package/node_modules/@types/concat-stream/node_modules/@types/node/sea.d.ts +1 -1
  50. package/node_modules/@types/concat-stream/node_modules/@types/node/sqlite.d.ts +2 -2
  51. package/node_modules/@types/concat-stream/node_modules/@types/node/stream/consumers.d.ts +10 -10
  52. package/node_modules/@types/concat-stream/node_modules/@types/node/stream/promises.d.ts +136 -15
  53. package/node_modules/@types/concat-stream/node_modules/@types/node/stream/web.d.ts +176 -453
  54. package/node_modules/@types/concat-stream/node_modules/@types/node/stream.d.ts +555 -478
  55. package/node_modules/@types/concat-stream/node_modules/@types/node/string_decoder.d.ts +4 -4
  56. package/node_modules/@types/concat-stream/node_modules/@types/node/test/reporters.d.ts +96 -0
  57. package/node_modules/@types/concat-stream/node_modules/@types/node/test.d.ts +80 -180
  58. package/node_modules/@types/concat-stream/node_modules/@types/node/timers/promises.d.ts +4 -4
  59. package/node_modules/@types/concat-stream/node_modules/@types/node/timers.d.ts +4 -130
  60. package/node_modules/@types/concat-stream/node_modules/@types/node/tls.d.ts +102 -177
  61. package/node_modules/@types/concat-stream/node_modules/@types/node/trace_events.d.ts +9 -9
  62. package/node_modules/@types/concat-stream/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +1 -7
  63. package/node_modules/@types/concat-stream/node_modules/@types/node/ts5.6/index.d.ts +15 -1
  64. package/node_modules/@types/concat-stream/node_modules/@types/node/ts5.7/index.d.ts +15 -1
  65. package/node_modules/@types/concat-stream/node_modules/@types/node/tty.d.ts +58 -16
  66. package/node_modules/@types/concat-stream/node_modules/@types/node/url.d.ts +54 -592
  67. package/node_modules/@types/concat-stream/node_modules/@types/node/util/types.d.ts +558 -0
  68. package/node_modules/@types/concat-stream/node_modules/@types/node/util.d.ts +120 -792
  69. package/node_modules/@types/concat-stream/node_modules/@types/node/v8.d.ts +32 -5
  70. package/node_modules/@types/concat-stream/node_modules/@types/node/vm.d.ts +13 -13
  71. package/node_modules/@types/concat-stream/node_modules/@types/node/wasi.d.ts +4 -4
  72. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/abortcontroller.d.ts +27 -2
  73. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  74. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/console.d.ts +9 -0
  75. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/crypto.d.ts +7 -0
  76. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  77. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/events.d.ts +9 -0
  78. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/fetch.d.ts +4 -0
  79. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  80. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  81. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  82. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/streams.d.ts +93 -0
  83. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  84. package/node_modules/@types/concat-stream/node_modules/@types/node/web-globals/url.d.ts +24 -0
  85. package/node_modules/@types/concat-stream/node_modules/@types/node/worker_threads.d.ts +176 -358
  86. package/node_modules/@types/concat-stream/node_modules/@types/node/zlib.d.ts +8 -71
  87. package/node_modules/@types/form-data/node_modules/@types/node/README.md +1 -1
  88. package/node_modules/@types/form-data/node_modules/@types/node/assert/strict.d.ts +5 -11
  89. package/node_modules/@types/form-data/node_modules/@types/node/assert.d.ts +9 -169
  90. package/node_modules/@types/form-data/node_modules/@types/node/async_hooks.d.ts +8 -8
  91. package/node_modules/@types/form-data/node_modules/@types/node/buffer.buffer.d.ts +1 -7
  92. package/node_modules/@types/form-data/node_modules/@types/node/buffer.d.ts +44 -168
  93. package/node_modules/@types/form-data/node_modules/@types/node/child_process.d.ts +16 -64
  94. package/node_modules/@types/form-data/node_modules/@types/node/cluster.d.ts +240 -332
  95. package/node_modules/@types/form-data/node_modules/@types/node/console.d.ts +49 -351
  96. package/node_modules/@types/form-data/node_modules/@types/node/constants.d.ts +3 -4
  97. package/node_modules/@types/form-data/node_modules/@types/node/crypto.d.ts +279 -1631
  98. package/node_modules/@types/form-data/node_modules/@types/node/dgram.d.ts +15 -51
  99. package/node_modules/@types/form-data/node_modules/@types/node/diagnostics_channel.d.ts +4 -4
  100. package/node_modules/@types/form-data/node_modules/@types/node/dns/promises.d.ts +3 -3
  101. package/node_modules/@types/form-data/node_modules/@types/node/dns.d.ts +131 -132
  102. package/node_modules/@types/form-data/node_modules/@types/node/domain.d.ts +13 -17
  103. package/node_modules/@types/form-data/node_modules/@types/node/events.d.ts +869 -791
  104. package/node_modules/@types/form-data/node_modules/@types/node/fs/promises.d.ts +7 -8
  105. package/node_modules/@types/form-data/node_modules/@types/node/fs.d.ts +417 -455
  106. package/node_modules/@types/form-data/node_modules/@types/node/globals.d.ts +6 -26
  107. package/node_modules/@types/form-data/node_modules/@types/node/globals.typedarray.d.ts +60 -0
  108. package/node_modules/@types/form-data/node_modules/@types/node/http.d.ts +263 -254
  109. package/node_modules/@types/form-data/node_modules/@types/node/http2.d.ts +528 -804
  110. package/node_modules/@types/form-data/node_modules/@types/node/https.d.ts +59 -239
  111. package/node_modules/@types/form-data/node_modules/@types/node/index.d.ts +15 -1
  112. package/node_modules/@types/form-data/node_modules/@types/node/inspector/promises.d.ts +41 -0
  113. package/node_modules/@types/form-data/node_modules/@types/node/inspector.d.ts +6 -59
  114. package/node_modules/@types/form-data/node_modules/@types/node/inspector.generated.d.ts +3 -10
  115. package/node_modules/@types/form-data/node_modules/@types/node/module.d.ts +47 -122
  116. package/node_modules/@types/form-data/node_modules/@types/node/net.d.ts +63 -184
  117. package/node_modules/@types/form-data/node_modules/@types/node/os.d.ts +6 -6
  118. package/node_modules/@types/form-data/node_modules/@types/node/package.json +2 -2
  119. package/node_modules/@types/form-data/node_modules/@types/node/path/posix.d.ts +8 -0
  120. package/node_modules/@types/form-data/node_modules/@types/node/path/win32.d.ts +8 -0
  121. package/node_modules/@types/form-data/node_modules/@types/node/path.d.ts +120 -133
  122. package/node_modules/@types/form-data/node_modules/@types/node/perf_hooks.d.ts +282 -643
  123. package/node_modules/@types/form-data/node_modules/@types/node/process.d.ts +156 -128
  124. package/node_modules/@types/form-data/node_modules/@types/node/punycode.d.ts +5 -5
  125. package/node_modules/@types/form-data/node_modules/@types/node/querystring.d.ts +4 -4
  126. package/node_modules/@types/form-data/node_modules/@types/node/quic.d.ts +910 -0
  127. package/node_modules/@types/form-data/node_modules/@types/node/readline/promises.d.ts +3 -3
  128. package/node_modules/@types/form-data/node_modules/@types/node/readline.d.ts +67 -120
  129. package/node_modules/@types/form-data/node_modules/@types/node/repl.d.ts +75 -98
  130. package/node_modules/@types/form-data/node_modules/@types/node/sea.d.ts +1 -1
  131. package/node_modules/@types/form-data/node_modules/@types/node/sqlite.d.ts +2 -2
  132. package/node_modules/@types/form-data/node_modules/@types/node/stream/consumers.d.ts +10 -10
  133. package/node_modules/@types/form-data/node_modules/@types/node/stream/promises.d.ts +136 -15
  134. package/node_modules/@types/form-data/node_modules/@types/node/stream/web.d.ts +176 -453
  135. package/node_modules/@types/form-data/node_modules/@types/node/stream.d.ts +555 -478
  136. package/node_modules/@types/form-data/node_modules/@types/node/string_decoder.d.ts +4 -4
  137. package/node_modules/@types/form-data/node_modules/@types/node/test/reporters.d.ts +96 -0
  138. package/node_modules/@types/form-data/node_modules/@types/node/test.d.ts +80 -180
  139. package/node_modules/@types/form-data/node_modules/@types/node/timers/promises.d.ts +4 -4
  140. package/node_modules/@types/form-data/node_modules/@types/node/timers.d.ts +4 -130
  141. package/node_modules/@types/form-data/node_modules/@types/node/tls.d.ts +102 -177
  142. package/node_modules/@types/form-data/node_modules/@types/node/trace_events.d.ts +9 -9
  143. package/node_modules/@types/form-data/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +1 -7
  144. package/node_modules/@types/form-data/node_modules/@types/node/ts5.6/index.d.ts +15 -1
  145. package/node_modules/@types/form-data/node_modules/@types/node/ts5.7/index.d.ts +15 -1
  146. package/node_modules/@types/form-data/node_modules/@types/node/tty.d.ts +58 -16
  147. package/node_modules/@types/form-data/node_modules/@types/node/url.d.ts +54 -592
  148. package/node_modules/@types/form-data/node_modules/@types/node/util/types.d.ts +558 -0
  149. package/node_modules/@types/form-data/node_modules/@types/node/util.d.ts +120 -792
  150. package/node_modules/@types/form-data/node_modules/@types/node/v8.d.ts +32 -5
  151. package/node_modules/@types/form-data/node_modules/@types/node/vm.d.ts +13 -13
  152. package/node_modules/@types/form-data/node_modules/@types/node/wasi.d.ts +4 -4
  153. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/abortcontroller.d.ts +27 -2
  154. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  155. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/console.d.ts +9 -0
  156. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/crypto.d.ts +7 -0
  157. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  158. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/events.d.ts +9 -0
  159. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/fetch.d.ts +4 -0
  160. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  161. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  162. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  163. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/streams.d.ts +93 -0
  164. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  165. package/node_modules/@types/form-data/node_modules/@types/node/web-globals/url.d.ts +24 -0
  166. package/node_modules/@types/form-data/node_modules/@types/node/worker_threads.d.ts +176 -358
  167. package/node_modules/@types/form-data/node_modules/@types/node/zlib.d.ts +8 -71
  168. package/package.json +4 -4
@@ -6,11 +6,11 @@
6
6
  * import http2 from 'node:http2';
7
7
  * ```
8
8
  * @since v8.4.0
9
- * @see [source](https://github.com/nodejs/node/blob/v24.x/lib/http2.js)
9
+ * @see [source](https://github.com/nodejs/node/blob/v25.x/lib/http2.js)
10
10
  */
11
- declare module "http2" {
11
+ declare module "node:http2" {
12
12
  import { NonSharedBuffer } from "node:buffer";
13
- import EventEmitter = require("node:events");
13
+ import { InternalEventEmitter } from "node:events";
14
14
  import * as fs from "node:fs";
15
15
  import * as net from "node:net";
16
16
  import * as stream from "node:stream";
@@ -22,18 +22,17 @@ declare module "http2" {
22
22
  OutgoingHttpHeaders,
23
23
  ServerResponse,
24
24
  } from "node:http";
25
- export { OutgoingHttpHeaders } from "node:http";
26
- export interface IncomingHttpStatusHeader {
25
+ interface IncomingHttpStatusHeader {
27
26
  ":status"?: number | undefined;
28
27
  }
29
- export interface IncomingHttpHeaders extends Http1IncomingHttpHeaders {
28
+ interface IncomingHttpHeaders extends Http1IncomingHttpHeaders {
30
29
  ":path"?: string | undefined;
31
30
  ":method"?: string | undefined;
32
31
  ":authority"?: string | undefined;
33
32
  ":scheme"?: string | undefined;
34
33
  }
35
34
  // Http2Stream
36
- export interface StreamState {
35
+ interface StreamState {
37
36
  localWindowSize?: number | undefined;
38
37
  state?: number | undefined;
39
38
  localClose?: number | undefined;
@@ -43,15 +42,15 @@ declare module "http2" {
43
42
  /** @deprecated */
44
43
  weight?: number | undefined;
45
44
  }
46
- export interface ServerStreamResponseOptions {
45
+ interface ServerStreamResponseOptions {
47
46
  endStream?: boolean | undefined;
48
47
  waitForTrailers?: boolean | undefined;
49
48
  }
50
- export interface StatOptions {
49
+ interface StatOptions {
51
50
  offset: number;
52
51
  length: number;
53
52
  }
54
- export interface ServerStreamFileResponseOptions {
53
+ interface ServerStreamFileResponseOptions {
55
54
  statCheck?:
56
55
  | ((stats: fs.Stats, headers: OutgoingHttpHeaders, statOptions: StatOptions) => void)
57
56
  | undefined;
@@ -59,10 +58,20 @@ declare module "http2" {
59
58
  offset?: number | undefined;
60
59
  length?: number | undefined;
61
60
  }
62
- export interface ServerStreamFileResponseOptionsWithError extends ServerStreamFileResponseOptions {
61
+ interface ServerStreamFileResponseOptionsWithError extends ServerStreamFileResponseOptions {
63
62
  onError?: ((err: NodeJS.ErrnoException) => void) | undefined;
64
63
  }
65
- export interface Http2Stream extends stream.Duplex {
64
+ interface Http2StreamEventMap extends stream.DuplexEventMap {
65
+ "aborted": [];
66
+ "data": [chunk: string | NonSharedBuffer];
67
+ "frameError": [type: number, code: number, id: number];
68
+ "ready": [];
69
+ "streamClosed": [code: number];
70
+ "timeout": [];
71
+ "trailers": [trailers: IncomingHttpHeaders, flags: number];
72
+ "wantTrailers": [];
73
+ }
74
+ interface Http2Stream extends stream.Duplex {
66
75
  /**
67
76
  * Set to `true` if the `Http2Stream` instance was aborted abnormally. When set,
68
77
  * the `'aborted'` event will have been emitted.
@@ -190,210 +199,122 @@ declare module "http2" {
190
199
  * @since v10.0.0
191
200
  */
192
201
  sendTrailers(headers: OutgoingHttpHeaders): void;
193
- addListener(event: "aborted", listener: () => void): this;
194
- addListener(event: "close", listener: () => void): this;
195
- addListener(event: "data", listener: (chunk: NonSharedBuffer | string) => void): this;
196
- addListener(event: "drain", listener: () => void): this;
197
- addListener(event: "end", listener: () => void): this;
198
- addListener(event: "error", listener: (err: Error) => void): this;
199
- addListener(event: "finish", listener: () => void): this;
200
- addListener(event: "frameError", listener: (frameType: number, errorCode: number) => void): this;
201
- addListener(event: "pipe", listener: (src: stream.Readable) => void): this;
202
- addListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
203
- addListener(event: "streamClosed", listener: (code: number) => void): this;
204
- addListener(event: "timeout", listener: () => void): this;
205
- addListener(event: "trailers", listener: (trailers: IncomingHttpHeaders, flags: number) => void): this;
206
- addListener(event: "wantTrailers", listener: () => void): this;
207
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
208
- emit(event: "aborted"): boolean;
209
- emit(event: "close"): boolean;
210
- emit(event: "data", chunk: NonSharedBuffer | string): boolean;
211
- emit(event: "drain"): boolean;
212
- emit(event: "end"): boolean;
213
- emit(event: "error", err: Error): boolean;
214
- emit(event: "finish"): boolean;
215
- emit(event: "frameError", frameType: number, errorCode: number): boolean;
216
- emit(event: "pipe", src: stream.Readable): boolean;
217
- emit(event: "unpipe", src: stream.Readable): boolean;
218
- emit(event: "streamClosed", code: number): boolean;
219
- emit(event: "timeout"): boolean;
220
- emit(event: "trailers", trailers: IncomingHttpHeaders, flags: number): boolean;
221
- emit(event: "wantTrailers"): boolean;
222
- emit(event: string | symbol, ...args: any[]): boolean;
223
- on(event: "aborted", listener: () => void): this;
224
- on(event: "close", listener: () => void): this;
225
- on(event: "data", listener: (chunk: NonSharedBuffer | string) => void): this;
226
- on(event: "drain", listener: () => void): this;
227
- on(event: "end", listener: () => void): this;
228
- on(event: "error", listener: (err: Error) => void): this;
229
- on(event: "finish", listener: () => void): this;
230
- on(event: "frameError", listener: (frameType: number, errorCode: number) => void): this;
231
- on(event: "pipe", listener: (src: stream.Readable) => void): this;
232
- on(event: "unpipe", listener: (src: stream.Readable) => void): this;
233
- on(event: "streamClosed", listener: (code: number) => void): this;
234
- on(event: "timeout", listener: () => void): this;
235
- on(event: "trailers", listener: (trailers: IncomingHttpHeaders, flags: number) => void): this;
236
- on(event: "wantTrailers", listener: () => void): this;
237
- on(event: string | symbol, listener: (...args: any[]) => void): this;
238
- once(event: "aborted", listener: () => void): this;
239
- once(event: "close", listener: () => void): this;
240
- once(event: "data", listener: (chunk: NonSharedBuffer | string) => void): this;
241
- once(event: "drain", listener: () => void): this;
242
- once(event: "end", listener: () => void): this;
243
- once(event: "error", listener: (err: Error) => void): this;
244
- once(event: "finish", listener: () => void): this;
245
- once(event: "frameError", listener: (frameType: number, errorCode: number) => void): this;
246
- once(event: "pipe", listener: (src: stream.Readable) => void): this;
247
- once(event: "unpipe", listener: (src: stream.Readable) => void): this;
248
- once(event: "streamClosed", listener: (code: number) => void): this;
249
- once(event: "timeout", listener: () => void): this;
250
- once(event: "trailers", listener: (trailers: IncomingHttpHeaders, flags: number) => void): this;
251
- once(event: "wantTrailers", listener: () => void): this;
252
- once(event: string | symbol, listener: (...args: any[]) => void): this;
253
- prependListener(event: "aborted", listener: () => void): this;
254
- prependListener(event: "close", listener: () => void): this;
255
- prependListener(event: "data", listener: (chunk: NonSharedBuffer | string) => void): this;
256
- prependListener(event: "drain", listener: () => void): this;
257
- prependListener(event: "end", listener: () => void): this;
258
- prependListener(event: "error", listener: (err: Error) => void): this;
259
- prependListener(event: "finish", listener: () => void): this;
260
- prependListener(event: "frameError", listener: (frameType: number, errorCode: number) => void): this;
261
- prependListener(event: "pipe", listener: (src: stream.Readable) => void): this;
262
- prependListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
263
- prependListener(event: "streamClosed", listener: (code: number) => void): this;
264
- prependListener(event: "timeout", listener: () => void): this;
265
- prependListener(event: "trailers", listener: (trailers: IncomingHttpHeaders, flags: number) => void): this;
266
- prependListener(event: "wantTrailers", listener: () => void): this;
267
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
268
- prependOnceListener(event: "aborted", listener: () => void): this;
269
- prependOnceListener(event: "close", listener: () => void): this;
270
- prependOnceListener(event: "data", listener: (chunk: NonSharedBuffer | string) => void): this;
271
- prependOnceListener(event: "drain", listener: () => void): this;
272
- prependOnceListener(event: "end", listener: () => void): this;
273
- prependOnceListener(event: "error", listener: (err: Error) => void): this;
274
- prependOnceListener(event: "finish", listener: () => void): this;
275
- prependOnceListener(event: "frameError", listener: (frameType: number, errorCode: number) => void): this;
276
- prependOnceListener(event: "pipe", listener: (src: stream.Readable) => void): this;
277
- prependOnceListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
278
- prependOnceListener(event: "streamClosed", listener: (code: number) => void): this;
279
- prependOnceListener(event: "timeout", listener: () => void): this;
280
- prependOnceListener(event: "trailers", listener: (trailers: IncomingHttpHeaders, flags: number) => void): this;
281
- prependOnceListener(event: "wantTrailers", listener: () => void): this;
282
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
202
+ // #region InternalEventEmitter
203
+ addListener<E extends keyof Http2StreamEventMap>(
204
+ eventName: E,
205
+ listener: (...args: Http2StreamEventMap[E]) => void,
206
+ ): this;
207
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
208
+ emit<E extends keyof Http2StreamEventMap>(eventName: E, ...args: Http2StreamEventMap[E]): boolean;
209
+ emit(eventName: string | symbol, ...args: any[]): boolean;
210
+ listenerCount<E extends keyof Http2StreamEventMap>(
211
+ eventName: E,
212
+ listener?: (...args: Http2StreamEventMap[E]) => void,
213
+ ): number;
214
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
215
+ listeners<E extends keyof Http2StreamEventMap>(eventName: E): ((...args: Http2StreamEventMap[E]) => void)[];
216
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
217
+ off<E extends keyof Http2StreamEventMap>(
218
+ eventName: E,
219
+ listener: (...args: Http2StreamEventMap[E]) => void,
220
+ ): this;
221
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
222
+ on<E extends keyof Http2StreamEventMap>(
223
+ eventName: E,
224
+ listener: (...args: Http2StreamEventMap[E]) => void,
225
+ ): this;
226
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
227
+ once<E extends keyof Http2StreamEventMap>(
228
+ eventName: E,
229
+ listener: (...args: Http2StreamEventMap[E]) => void,
230
+ ): this;
231
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
232
+ prependListener<E extends keyof Http2StreamEventMap>(
233
+ eventName: E,
234
+ listener: (...args: Http2StreamEventMap[E]) => void,
235
+ ): this;
236
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
237
+ prependOnceListener<E extends keyof Http2StreamEventMap>(
238
+ eventName: E,
239
+ listener: (...args: Http2StreamEventMap[E]) => void,
240
+ ): this;
241
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
242
+ rawListeners<E extends keyof Http2StreamEventMap>(eventName: E): ((...args: Http2StreamEventMap[E]) => void)[];
243
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
244
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
245
+ removeAllListeners<E extends keyof Http2StreamEventMap>(eventName?: E): this;
246
+ removeAllListeners(eventName?: string | symbol): this;
247
+ removeListener<E extends keyof Http2StreamEventMap>(
248
+ eventName: E,
249
+ listener: (...args: Http2StreamEventMap[E]) => void,
250
+ ): this;
251
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
252
+ // #endregion
283
253
  }
284
- export interface ClientHttp2Stream extends Http2Stream {
285
- addListener(event: "continue", listener: () => {}): this;
286
- addListener(
287
- event: "headers",
288
- listener: (
289
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
290
- flags: number,
291
- rawHeaders: string[],
292
- ) => void,
293
- ): this;
294
- addListener(event: "push", listener: (headers: IncomingHttpHeaders, flags: number) => void): this;
295
- addListener(
296
- event: "response",
297
- listener: (
298
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
299
- flags: number,
300
- rawHeaders: string[],
301
- ) => void,
302
- ): this;
303
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
304
- emit(event: "continue"): boolean;
305
- emit(
306
- event: "headers",
307
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
308
- flags: number,
309
- rawHeaders: string[],
310
- ): boolean;
311
- emit(event: "push", headers: IncomingHttpHeaders, flags: number): boolean;
312
- emit(
313
- event: "response",
314
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
315
- flags: number,
316
- rawHeaders: string[],
317
- ): boolean;
318
- emit(event: string | symbol, ...args: any[]): boolean;
319
- on(event: "continue", listener: () => {}): this;
320
- on(
321
- event: "headers",
322
- listener: (
323
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
324
- flags: number,
325
- rawHeaders: string[],
326
- ) => void,
327
- ): this;
328
- on(event: "push", listener: (headers: IncomingHttpHeaders, flags: number) => void): this;
329
- on(
330
- event: "response",
331
- listener: (
332
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
333
- flags: number,
334
- rawHeaders: string[],
335
- ) => void,
336
- ): this;
337
- on(event: string | symbol, listener: (...args: any[]) => void): this;
338
- once(event: "continue", listener: () => {}): this;
339
- once(
340
- event: "headers",
341
- listener: (
342
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
343
- flags: number,
344
- rawHeaders: string[],
345
- ) => void,
346
- ): this;
347
- once(event: "push", listener: (headers: IncomingHttpHeaders, flags: number) => void): this;
348
- once(
349
- event: "response",
350
- listener: (
351
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
352
- flags: number,
353
- rawHeaders: string[],
354
- ) => void,
355
- ): this;
356
- once(event: string | symbol, listener: (...args: any[]) => void): this;
357
- prependListener(event: "continue", listener: () => {}): this;
358
- prependListener(
359
- event: "headers",
360
- listener: (
361
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
362
- flags: number,
363
- rawHeaders: string[],
364
- ) => void,
365
- ): this;
366
- prependListener(event: "push", listener: (headers: IncomingHttpHeaders, flags: number) => void): this;
367
- prependListener(
368
- event: "response",
369
- listener: (
370
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
371
- flags: number,
372
- rawHeaders: string[],
373
- ) => void,
374
- ): this;
375
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
376
- prependOnceListener(event: "continue", listener: () => {}): this;
377
- prependOnceListener(
378
- event: "headers",
379
- listener: (
380
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
381
- flags: number,
382
- rawHeaders: string[],
383
- ) => void,
384
- ): this;
385
- prependOnceListener(event: "push", listener: (headers: IncomingHttpHeaders, flags: number) => void): this;
386
- prependOnceListener(
387
- event: "response",
388
- listener: (
389
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
390
- flags: number,
391
- rawHeaders: string[],
392
- ) => void,
393
- ): this;
394
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
254
+ interface ClientHttp2StreamEventMap extends Http2StreamEventMap {
255
+ "continue": [];
256
+ "headers": [headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number, rawHeaders: string[]];
257
+ "push": [headers: IncomingHttpHeaders, flags: number];
258
+ "response": [headers: IncomingHttpHeaders & IncomingHttpStatusHeader, flags: number, rawHeaders: string[]];
395
259
  }
396
- export interface ServerHttp2Stream extends Http2Stream {
260
+ interface ClientHttp2Stream extends Http2Stream {
261
+ // #region InternalEventEmitter
262
+ addListener<E extends keyof ClientHttp2StreamEventMap>(
263
+ eventName: E,
264
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
265
+ ): this;
266
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
267
+ emit<E extends keyof ClientHttp2StreamEventMap>(eventName: E, ...args: ClientHttp2StreamEventMap[E]): boolean;
268
+ emit(eventName: string | symbol, ...args: any[]): boolean;
269
+ listenerCount<E extends keyof ClientHttp2StreamEventMap>(
270
+ eventName: E,
271
+ listener?: (...args: ClientHttp2StreamEventMap[E]) => void,
272
+ ): number;
273
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
274
+ listeners<E extends keyof ClientHttp2StreamEventMap>(
275
+ eventName: E,
276
+ ): ((...args: ClientHttp2StreamEventMap[E]) => void)[];
277
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
278
+ off<E extends keyof ClientHttp2StreamEventMap>(
279
+ eventName: E,
280
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
281
+ ): this;
282
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
283
+ on<E extends keyof ClientHttp2StreamEventMap>(
284
+ eventName: E,
285
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
286
+ ): this;
287
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
288
+ once<E extends keyof ClientHttp2StreamEventMap>(
289
+ eventName: E,
290
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
291
+ ): this;
292
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
293
+ prependListener<E extends keyof ClientHttp2StreamEventMap>(
294
+ eventName: E,
295
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
296
+ ): this;
297
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
298
+ prependOnceListener<E extends keyof ClientHttp2StreamEventMap>(
299
+ eventName: E,
300
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
301
+ ): this;
302
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
303
+ rawListeners<E extends keyof ClientHttp2StreamEventMap>(
304
+ eventName: E,
305
+ ): ((...args: ClientHttp2StreamEventMap[E]) => void)[];
306
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
307
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
308
+ removeAllListeners<E extends keyof ClientHttp2StreamEventMap>(eventName?: E): this;
309
+ removeAllListeners(eventName?: string | symbol): this;
310
+ removeListener<E extends keyof ClientHttp2StreamEventMap>(
311
+ eventName: E,
312
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
313
+ ): this;
314
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
315
+ // #endregion
316
+ }
317
+ interface ServerHttp2Stream extends Http2Stream {
397
318
  /**
398
319
  * True if headers were sent, false otherwise (read-only).
399
320
  * @since v8.4.0
@@ -663,7 +584,7 @@ declare module "http2" {
663
584
  ): void;
664
585
  }
665
586
  // Http2Session
666
- export interface Settings {
587
+ interface Settings {
667
588
  headerTableSize?: number | undefined;
668
589
  enablePush?: boolean | undefined;
669
590
  initialWindowSize?: number | undefined;
@@ -672,14 +593,14 @@ declare module "http2" {
672
593
  maxHeaderListSize?: number | undefined;
673
594
  enableConnectProtocol?: boolean | undefined;
674
595
  }
675
- export interface ClientSessionRequestOptions {
596
+ interface ClientSessionRequestOptions {
676
597
  endStream?: boolean | undefined;
677
598
  exclusive?: boolean | undefined;
678
599
  parent?: number | undefined;
679
600
  waitForTrailers?: boolean | undefined;
680
601
  signal?: AbortSignal | undefined;
681
602
  }
682
- export interface SessionState {
603
+ interface SessionState {
683
604
  effectiveLocalWindowSize?: number | undefined;
684
605
  effectiveRecvDataLength?: number | undefined;
685
606
  nextStreamID?: number | undefined;
@@ -690,7 +611,24 @@ declare module "http2" {
690
611
  deflateDynamicTableSize?: number | undefined;
691
612
  inflateDynamicTableSize?: number | undefined;
692
613
  }
693
- export interface Http2Session extends EventEmitter {
614
+ interface Http2SessionEventMap {
615
+ "close": [];
616
+ "connect": [session: Http2Session, socket: net.Socket | tls.TLSSocket];
617
+ "error": [err: Error];
618
+ "frameError": [type: number, code: number, id: number];
619
+ "goaway": [errorCode: number, lastStreamID: number, opaqueData?: NonSharedBuffer];
620
+ "localSettings": [settings: Settings];
621
+ "ping": [payload: Buffer];
622
+ "remoteSettings": [settings: Settings];
623
+ "stream": [
624
+ stream: Http2Stream,
625
+ headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
626
+ flags: number,
627
+ rawHeaders: string[],
628
+ ];
629
+ "timeout": [];
630
+ }
631
+ interface Http2Session extends InternalEventEmitter<Http2SessionEventMap> {
694
632
  /**
695
633
  * Value will be `undefined` if the `Http2Session` is not yet connected to a
696
634
  * socket, `h2c` if the `Http2Session` is not connected to a `TLSSocket`, or
@@ -892,86 +830,19 @@ declare module "http2" {
892
830
  * @since v9.4.0
893
831
  */
894
832
  unref(): void;
895
- addListener(event: "close", listener: () => void): this;
896
- addListener(event: "error", listener: (err: Error) => void): this;
897
- addListener(
898
- event: "frameError",
899
- listener: (frameType: number, errorCode: number, streamID: number) => void,
900
- ): this;
901
- addListener(
902
- event: "goaway",
903
- listener: (errorCode: number, lastStreamID: number, opaqueData?: NonSharedBuffer) => void,
904
- ): this;
905
- addListener(event: "localSettings", listener: (settings: Settings) => void): this;
906
- addListener(event: "ping", listener: () => void): this;
907
- addListener(event: "remoteSettings", listener: (settings: Settings) => void): this;
908
- addListener(event: "timeout", listener: () => void): this;
909
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
910
- emit(event: "close"): boolean;
911
- emit(event: "error", err: Error): boolean;
912
- emit(event: "frameError", frameType: number, errorCode: number, streamID: number): boolean;
913
- emit(event: "goaway", errorCode: number, lastStreamID: number, opaqueData?: NonSharedBuffer): boolean;
914
- emit(event: "localSettings", settings: Settings): boolean;
915
- emit(event: "ping"): boolean;
916
- emit(event: "remoteSettings", settings: Settings): boolean;
917
- emit(event: "timeout"): boolean;
918
- emit(event: string | symbol, ...args: any[]): boolean;
919
- on(event: "close", listener: () => void): this;
920
- on(event: "error", listener: (err: Error) => void): this;
921
- on(event: "frameError", listener: (frameType: number, errorCode: number, streamID: number) => void): this;
922
- on(
923
- event: "goaway",
924
- listener: (errorCode: number, lastStreamID: number, opaqueData?: NonSharedBuffer) => void,
925
- ): this;
926
- on(event: "localSettings", listener: (settings: Settings) => void): this;
927
- on(event: "ping", listener: () => void): this;
928
- on(event: "remoteSettings", listener: (settings: Settings) => void): this;
929
- on(event: "timeout", listener: () => void): this;
930
- on(event: string | symbol, listener: (...args: any[]) => void): this;
931
- once(event: "close", listener: () => void): this;
932
- once(event: "error", listener: (err: Error) => void): this;
933
- once(event: "frameError", listener: (frameType: number, errorCode: number, streamID: number) => void): this;
934
- once(
935
- event: "goaway",
936
- listener: (errorCode: number, lastStreamID: number, opaqueData?: NonSharedBuffer) => void,
937
- ): this;
938
- once(event: "localSettings", listener: (settings: Settings) => void): this;
939
- once(event: "ping", listener: () => void): this;
940
- once(event: "remoteSettings", listener: (settings: Settings) => void): this;
941
- once(event: "timeout", listener: () => void): this;
942
- once(event: string | symbol, listener: (...args: any[]) => void): this;
943
- prependListener(event: "close", listener: () => void): this;
944
- prependListener(event: "error", listener: (err: Error) => void): this;
945
- prependListener(
946
- event: "frameError",
947
- listener: (frameType: number, errorCode: number, streamID: number) => void,
948
- ): this;
949
- prependListener(
950
- event: "goaway",
951
- listener: (errorCode: number, lastStreamID: number, opaqueData?: NonSharedBuffer) => void,
952
- ): this;
953
- prependListener(event: "localSettings", listener: (settings: Settings) => void): this;
954
- prependListener(event: "ping", listener: () => void): this;
955
- prependListener(event: "remoteSettings", listener: (settings: Settings) => void): this;
956
- prependListener(event: "timeout", listener: () => void): this;
957
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
958
- prependOnceListener(event: "close", listener: () => void): this;
959
- prependOnceListener(event: "error", listener: (err: Error) => void): this;
960
- prependOnceListener(
961
- event: "frameError",
962
- listener: (frameType: number, errorCode: number, streamID: number) => void,
963
- ): this;
964
- prependOnceListener(
965
- event: "goaway",
966
- listener: (errorCode: number, lastStreamID: number, opaqueData?: NonSharedBuffer) => void,
967
- ): this;
968
- prependOnceListener(event: "localSettings", listener: (settings: Settings) => void): this;
969
- prependOnceListener(event: "ping", listener: () => void): this;
970
- prependOnceListener(event: "remoteSettings", listener: (settings: Settings) => void): this;
971
- prependOnceListener(event: "timeout", listener: () => void): this;
972
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
973
833
  }
974
- export interface ClientHttp2Session extends Http2Session {
834
+ interface ClientHttp2SessionEventMap extends Http2SessionEventMap {
835
+ "altsvc": [alt: string, origin: string, streamId: number];
836
+ "connect": [session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket];
837
+ "origin": [origins: string[]];
838
+ "stream": [
839
+ stream: ClientHttp2Stream,
840
+ headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
841
+ flags: number,
842
+ rawHeaders: string[],
843
+ ];
844
+ }
845
+ interface ClientHttp2Session extends Http2Session {
975
846
  /**
976
847
  * For HTTP/2 Client `Http2Session` instances only, the `http2session.request()` creates and returns an `Http2Stream` instance that can be used to send an
977
848
  * HTTP/2 request to the connected server.
@@ -1021,99 +892,78 @@ declare module "http2" {
1021
892
  headers?: OutgoingHttpHeaders | readonly string[],
1022
893
  options?: ClientSessionRequestOptions,
1023
894
  ): ClientHttp2Stream;
1024
- addListener(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
1025
- addListener(event: "origin", listener: (origins: string[]) => void): this;
1026
- addListener(
1027
- event: "connect",
1028
- listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void,
1029
- ): this;
1030
- addListener(
1031
- event: "stream",
1032
- listener: (
1033
- stream: ClientHttp2Stream,
1034
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
1035
- flags: number,
1036
- rawHeaders: string[],
1037
- ) => void,
1038
- ): this;
1039
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
1040
- emit(event: "altsvc", alt: string, origin: string, stream: number): boolean;
1041
- emit(event: "origin", origins: readonly string[]): boolean;
1042
- emit(event: "connect", session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket): boolean;
1043
- emit(
1044
- event: "stream",
1045
- stream: ClientHttp2Stream,
1046
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
1047
- flags: number,
1048
- rawHeaders: string[],
1049
- ): boolean;
1050
- emit(event: string | symbol, ...args: any[]): boolean;
1051
- on(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
1052
- on(event: "origin", listener: (origins: string[]) => void): this;
1053
- on(event: "connect", listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void): this;
1054
- on(
1055
- event: "stream",
1056
- listener: (
1057
- stream: ClientHttp2Stream,
1058
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
1059
- flags: number,
1060
- rawHeaders: string[],
1061
- ) => void,
1062
- ): this;
1063
- on(event: string | symbol, listener: (...args: any[]) => void): this;
1064
- once(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
1065
- once(event: "origin", listener: (origins: string[]) => void): this;
1066
- once(
1067
- event: "connect",
1068
- listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void,
1069
- ): this;
1070
- once(
1071
- event: "stream",
1072
- listener: (
1073
- stream: ClientHttp2Stream,
1074
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
1075
- flags: number,
1076
- rawHeaders: string[],
1077
- ) => void,
1078
- ): this;
1079
- once(event: string | symbol, listener: (...args: any[]) => void): this;
1080
- prependListener(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
1081
- prependListener(event: "origin", listener: (origins: string[]) => void): this;
1082
- prependListener(
1083
- event: "connect",
1084
- listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void,
1085
- ): this;
1086
- prependListener(
1087
- event: "stream",
1088
- listener: (
1089
- stream: ClientHttp2Stream,
1090
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
1091
- flags: number,
1092
- rawHeaders: string[],
1093
- ) => void,
1094
- ): this;
1095
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
1096
- prependOnceListener(event: "altsvc", listener: (alt: string, origin: string, stream: number) => void): this;
1097
- prependOnceListener(event: "origin", listener: (origins: string[]) => void): this;
1098
- prependOnceListener(
1099
- event: "connect",
1100
- listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void,
1101
- ): this;
1102
- prependOnceListener(
1103
- event: "stream",
1104
- listener: (
1105
- stream: ClientHttp2Stream,
1106
- headers: IncomingHttpHeaders & IncomingHttpStatusHeader,
1107
- flags: number,
1108
- rawHeaders: string[],
1109
- ) => void,
1110
- ): this;
1111
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
895
+ // #region InternalEventEmitter
896
+ addListener<E extends keyof ClientHttp2StreamEventMap>(
897
+ eventName: E,
898
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
899
+ ): this;
900
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
901
+ emit<E extends keyof ClientHttp2StreamEventMap>(eventName: E, ...args: ClientHttp2StreamEventMap[E]): boolean;
902
+ emit(eventName: string | symbol, ...args: any[]): boolean;
903
+ listenerCount<E extends keyof ClientHttp2StreamEventMap>(
904
+ eventName: E,
905
+ listener?: (...args: ClientHttp2StreamEventMap[E]) => void,
906
+ ): number;
907
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
908
+ listeners<E extends keyof ClientHttp2StreamEventMap>(
909
+ eventName: E,
910
+ ): ((...args: ClientHttp2StreamEventMap[E]) => void)[];
911
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
912
+ off<E extends keyof ClientHttp2StreamEventMap>(
913
+ eventName: E,
914
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
915
+ ): this;
916
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
917
+ on<E extends keyof ClientHttp2StreamEventMap>(
918
+ eventName: E,
919
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
920
+ ): this;
921
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
922
+ once<E extends keyof ClientHttp2StreamEventMap>(
923
+ eventName: E,
924
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
925
+ ): this;
926
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
927
+ prependListener<E extends keyof ClientHttp2StreamEventMap>(
928
+ eventName: E,
929
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
930
+ ): this;
931
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
932
+ prependOnceListener<E extends keyof ClientHttp2StreamEventMap>(
933
+ eventName: E,
934
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
935
+ ): this;
936
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
937
+ rawListeners<E extends keyof ClientHttp2StreamEventMap>(
938
+ eventName: E,
939
+ ): ((...args: ClientHttp2StreamEventMap[E]) => void)[];
940
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
941
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
942
+ removeAllListeners<E extends keyof ClientHttp2StreamEventMap>(eventName?: E): this;
943
+ removeAllListeners(eventName?: string | symbol): this;
944
+ removeListener<E extends keyof ClientHttp2StreamEventMap>(
945
+ eventName: E,
946
+ listener: (...args: ClientHttp2StreamEventMap[E]) => void,
947
+ ): this;
948
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
949
+ // #endregion
1112
950
  }
1113
- export interface AlternativeServiceOptions {
951
+ interface AlternativeServiceOptions {
1114
952
  origin: number | string | url.URL;
1115
953
  }
1116
- export interface ServerHttp2Session<
954
+ interface ServerHttp2SessionEventMap<
955
+ Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
956
+ Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
957
+ Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
958
+ Http2Response extends typeof Http2ServerResponse<InstanceType<Http2Request>> = typeof Http2ServerResponse,
959
+ > extends Http2SessionEventMap {
960
+ "connect": [
961
+ session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>,
962
+ socket: net.Socket | tls.TLSSocket,
963
+ ];
964
+ "stream": [stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number, rawHeaders: string[]];
965
+ }
966
+ interface ServerHttp2Session<
1117
967
  Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
1118
968
  Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
1119
969
  Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
@@ -1214,107 +1064,87 @@ declare module "http2" {
1214
1064
  }
1215
1065
  >
1216
1066
  ): void;
1217
- addListener(
1218
- event: "connect",
1219
- listener: (
1220
- session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>,
1221
- socket: net.Socket | tls.TLSSocket,
1222
- ) => void,
1223
- ): this;
1224
- addListener(
1225
- event: "stream",
1067
+ // #region InternalEventEmitter
1068
+ addListener<E extends keyof ServerHttp2SessionEventMap>(
1069
+ eventName: E,
1226
1070
  listener: (
1227
- stream: ServerHttp2Stream,
1228
- headers: IncomingHttpHeaders,
1229
- flags: number,
1230
- rawHeaders: string[],
1071
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1231
1072
  ) => void,
1232
1073
  ): this;
1233
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
1234
- emit(
1235
- event: "connect",
1236
- session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>,
1237
- socket: net.Socket | tls.TLSSocket,
1238
- ): boolean;
1239
- emit(
1240
- event: "stream",
1241
- stream: ServerHttp2Stream,
1242
- headers: IncomingHttpHeaders,
1243
- flags: number,
1244
- rawHeaders: string[],
1074
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1075
+ emit<E extends keyof ServerHttp2SessionEventMap>(
1076
+ eventName: E,
1077
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1245
1078
  ): boolean;
1246
- emit(event: string | symbol, ...args: any[]): boolean;
1247
- on(
1248
- event: "connect",
1249
- listener: (
1250
- session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>,
1251
- socket: net.Socket | tls.TLSSocket,
1079
+ emit(eventName: string | symbol, ...args: any[]): boolean;
1080
+ listenerCount<E extends keyof ServerHttp2SessionEventMap>(
1081
+ eventName: E,
1082
+ listener?: (
1083
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1252
1084
  ) => void,
1253
- ): this;
1254
- on(
1255
- event: "stream",
1085
+ ): number;
1086
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
1087
+ listeners<E extends keyof ServerHttp2SessionEventMap>(
1088
+ eventName: E,
1089
+ ): ((
1090
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1091
+ ) => void)[];
1092
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
1093
+ off<E extends keyof ServerHttp2SessionEventMap>(
1094
+ eventName: E,
1256
1095
  listener: (
1257
- stream: ServerHttp2Stream,
1258
- headers: IncomingHttpHeaders,
1259
- flags: number,
1260
- rawHeaders: string[],
1096
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1261
1097
  ) => void,
1262
1098
  ): this;
1263
- on(event: string | symbol, listener: (...args: any[]) => void): this;
1264
- once(
1265
- event: "connect",
1099
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
1100
+ on<E extends keyof ServerHttp2SessionEventMap>(
1101
+ eventName: E,
1266
1102
  listener: (
1267
- session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>,
1268
- socket: net.Socket | tls.TLSSocket,
1103
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1269
1104
  ) => void,
1270
1105
  ): this;
1271
- once(
1272
- event: "stream",
1106
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
1107
+ once<E extends keyof ServerHttp2SessionEventMap>(
1108
+ eventName: E,
1273
1109
  listener: (
1274
- stream: ServerHttp2Stream,
1275
- headers: IncomingHttpHeaders,
1276
- flags: number,
1277
- rawHeaders: string[],
1110
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1278
1111
  ) => void,
1279
1112
  ): this;
1280
- once(event: string | symbol, listener: (...args: any[]) => void): this;
1281
- prependListener(
1282
- event: "connect",
1113
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
1114
+ prependListener<E extends keyof ServerHttp2SessionEventMap>(
1115
+ eventName: E,
1283
1116
  listener: (
1284
- session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>,
1285
- socket: net.Socket | tls.TLSSocket,
1117
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1286
1118
  ) => void,
1287
1119
  ): this;
1288
- prependListener(
1289
- event: "stream",
1120
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1121
+ prependOnceListener<E extends keyof ServerHttp2SessionEventMap>(
1122
+ eventName: E,
1290
1123
  listener: (
1291
- stream: ServerHttp2Stream,
1292
- headers: IncomingHttpHeaders,
1293
- flags: number,
1294
- rawHeaders: string[],
1124
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1295
1125
  ) => void,
1296
1126
  ): this;
1297
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
1298
- prependOnceListener(
1299
- event: "connect",
1127
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1128
+ rawListeners<E extends keyof ServerHttp2SessionEventMap>(
1129
+ eventName: E,
1130
+ ): ((
1131
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1132
+ ) => void)[];
1133
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
1134
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
1135
+ removeAllListeners<E extends keyof ServerHttp2SessionEventMap>(eventName?: E): this;
1136
+ removeAllListeners(eventName?: string | symbol): this;
1137
+ removeListener<E extends keyof ServerHttp2SessionEventMap>(
1138
+ eventName: E,
1300
1139
  listener: (
1301
- session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>,
1302
- socket: net.Socket | tls.TLSSocket,
1140
+ ...args: ServerHttp2SessionEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1303
1141
  ) => void,
1304
1142
  ): this;
1305
- prependOnceListener(
1306
- event: "stream",
1307
- listener: (
1308
- stream: ServerHttp2Stream,
1309
- headers: IncomingHttpHeaders,
1310
- flags: number,
1311
- rawHeaders: string[],
1312
- ) => void,
1313
- ): this;
1314
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
1143
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1144
+ // #endregion
1315
1145
  }
1316
1146
  // Http2Server
1317
- export interface SessionOptions {
1147
+ interface SessionOptions {
1318
1148
  /**
1319
1149
  * Sets the maximum dynamic table size for deflating header fields.
1320
1150
  * @default 4Kib
@@ -1392,7 +1222,7 @@ declare module "http2" {
1392
1222
  */
1393
1223
  strictFieldWhitespaceValidation?: boolean | undefined;
1394
1224
  }
1395
- export interface ClientSessionOptions extends SessionOptions {
1225
+ interface ClientSessionOptions extends SessionOptions {
1396
1226
  /**
1397
1227
  * Sets the maximum number of reserved push streams the client will accept at any given time.
1398
1228
  * Once the current number of currently reserved push streams exceeds reaches this limit,
@@ -1414,7 +1244,7 @@ declare module "http2" {
1414
1244
  */
1415
1245
  protocol?: "http:" | "https:" | undefined;
1416
1246
  }
1417
- export interface ServerSessionOptions<
1247
+ interface ServerSessionOptions<
1418
1248
  Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
1419
1249
  Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
1420
1250
  Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
@@ -1427,20 +1257,20 @@ declare module "http2" {
1427
1257
  Http2ServerRequest?: Http2Request | undefined;
1428
1258
  Http2ServerResponse?: Http2Response | undefined;
1429
1259
  }
1430
- export interface SecureClientSessionOptions extends ClientSessionOptions, tls.ConnectionOptions {}
1431
- export interface SecureServerSessionOptions<
1260
+ interface SecureClientSessionOptions extends ClientSessionOptions, tls.ConnectionOptions {}
1261
+ interface SecureServerSessionOptions<
1432
1262
  Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
1433
1263
  Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
1434
1264
  Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
1435
1265
  Http2Response extends typeof Http2ServerResponse<InstanceType<Http2Request>> = typeof Http2ServerResponse,
1436
1266
  > extends ServerSessionOptions<Http1Request, Http1Response, Http2Request, Http2Response>, tls.TlsOptions {}
1437
- export interface ServerOptions<
1267
+ interface ServerOptions<
1438
1268
  Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
1439
1269
  Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
1440
1270
  Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
1441
1271
  Http2Response extends typeof Http2ServerResponse<InstanceType<Http2Request>> = typeof Http2ServerResponse,
1442
1272
  > extends ServerSessionOptions<Http1Request, Http1Response, Http2Request, Http2Response> {}
1443
- export interface SecureServerOptions<
1273
+ interface SecureServerOptions<
1444
1274
  Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
1445
1275
  Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
1446
1276
  Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
@@ -1449,7 +1279,7 @@ declare module "http2" {
1449
1279
  allowHTTP1?: boolean | undefined;
1450
1280
  origins?: string[] | undefined;
1451
1281
  }
1452
- interface HTTP2ServerCommon {
1282
+ interface Http2ServerCommon {
1453
1283
  setTimeout(msec?: number, callback?: () => void): this;
1454
1284
  /**
1455
1285
  * Throws ERR_HTTP2_INVALID_SETTING_VALUE for invalid settings values.
@@ -1457,274 +1287,194 @@ declare module "http2" {
1457
1287
  */
1458
1288
  updateSettings(settings: Settings): void;
1459
1289
  }
1460
- export interface Http2Server<
1290
+ interface Http2ServerEventMap<
1461
1291
  Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
1462
1292
  Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
1463
1293
  Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
1464
1294
  Http2Response extends typeof Http2ServerResponse<InstanceType<Http2Request>> = typeof Http2ServerResponse,
1465
- > extends net.Server, HTTP2ServerCommon {
1466
- addListener(
1467
- event: "checkContinue",
1468
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1469
- ): this;
1470
- addListener(
1471
- event: "request",
1472
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1473
- ): this;
1474
- addListener(
1475
- event: "session",
1476
- listener: (session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>) => void,
1477
- ): this;
1478
- addListener(event: "sessionError", listener: (err: Error) => void): this;
1479
- addListener(
1480
- event: "stream",
1295
+ > extends net.ServerEventMap, Pick<Http2SessionEventMap, "stream" | "timeout"> {
1296
+ "checkContinue": [request: InstanceType<Http2Request>, response: InstanceType<Http2Response>];
1297
+ "request": [request: InstanceType<Http2Request>, response: InstanceType<Http2Response>];
1298
+ "session": [session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>];
1299
+ "sessionError": [err: Error];
1300
+ }
1301
+ interface Http2Server<
1302
+ Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
1303
+ Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
1304
+ Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
1305
+ Http2Response extends typeof Http2ServerResponse<InstanceType<Http2Request>> = typeof Http2ServerResponse,
1306
+ > extends net.Server, Http2ServerCommon {
1307
+ // #region InternalEventEmitter
1308
+ addListener<E extends keyof Http2ServerEventMap>(
1309
+ eventName: E,
1481
1310
  listener: (
1482
- stream: ServerHttp2Stream,
1483
- headers: IncomingHttpHeaders,
1484
- flags: number,
1485
- rawHeaders: string[],
1311
+ ...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1486
1312
  ) => void,
1487
1313
  ): this;
1488
- addListener(event: "timeout", listener: () => void): this;
1489
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
1490
- emit(
1491
- event: "checkContinue",
1492
- request: InstanceType<Http2Request>,
1493
- response: InstanceType<Http2Response>,
1494
- ): boolean;
1495
- emit(event: "request", request: InstanceType<Http2Request>, response: InstanceType<Http2Response>): boolean;
1496
- emit(
1497
- event: "session",
1498
- session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>,
1499
- ): boolean;
1500
- emit(event: "sessionError", err: Error): boolean;
1501
- emit(
1502
- event: "stream",
1503
- stream: ServerHttp2Stream,
1504
- headers: IncomingHttpHeaders,
1505
- flags: number,
1506
- rawHeaders: string[],
1314
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1315
+ emit<E extends keyof Http2ServerEventMap>(
1316
+ eventName: E,
1317
+ ...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1507
1318
  ): boolean;
1508
- emit(event: "timeout"): boolean;
1509
- emit(event: string | symbol, ...args: any[]): boolean;
1510
- on(
1511
- event: "checkContinue",
1512
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1513
- ): this;
1514
- on(
1515
- event: "request",
1516
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1517
- ): this;
1518
- on(
1519
- event: "session",
1520
- listener: (session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>) => void,
1521
- ): this;
1522
- on(event: "sessionError", listener: (err: Error) => void): this;
1523
- on(
1524
- event: "stream",
1319
+ emit(eventName: string | symbol, ...args: any[]): boolean;
1320
+ listenerCount<E extends keyof Http2ServerEventMap>(
1321
+ eventName: E,
1322
+ listener?: (
1323
+ ...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1324
+ ) => void,
1325
+ ): number;
1326
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
1327
+ listeners<E extends keyof Http2ServerEventMap>(
1328
+ eventName: E,
1329
+ ): ((...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]) => void)[];
1330
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
1331
+ off<E extends keyof Http2ServerEventMap>(
1332
+ eventName: E,
1525
1333
  listener: (
1526
- stream: ServerHttp2Stream,
1527
- headers: IncomingHttpHeaders,
1528
- flags: number,
1529
- rawHeaders: string[],
1334
+ ...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1530
1335
  ) => void,
1531
1336
  ): this;
1532
- on(event: "timeout", listener: () => void): this;
1533
- on(event: string | symbol, listener: (...args: any[]) => void): this;
1534
- once(
1535
- event: "checkContinue",
1536
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1537
- ): this;
1538
- once(
1539
- event: "request",
1540
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1541
- ): this;
1542
- once(
1543
- event: "session",
1544
- listener: (session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>) => void,
1545
- ): this;
1546
- once(event: "sessionError", listener: (err: Error) => void): this;
1547
- once(
1548
- event: "stream",
1337
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
1338
+ on<E extends keyof Http2ServerEventMap>(
1339
+ eventName: E,
1549
1340
  listener: (
1550
- stream: ServerHttp2Stream,
1551
- headers: IncomingHttpHeaders,
1552
- flags: number,
1553
- rawHeaders: string[],
1341
+ ...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1554
1342
  ) => void,
1555
1343
  ): this;
1556
- once(event: "timeout", listener: () => void): this;
1557
- once(event: string | symbol, listener: (...args: any[]) => void): this;
1558
- prependListener(
1559
- event: "checkContinue",
1560
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1561
- ): this;
1562
- prependListener(
1563
- event: "request",
1564
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1565
- ): this;
1566
- prependListener(
1567
- event: "session",
1568
- listener: (session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>) => void,
1569
- ): this;
1570
- prependListener(event: "sessionError", listener: (err: Error) => void): this;
1571
- prependListener(
1572
- event: "stream",
1344
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
1345
+ once<E extends keyof Http2ServerEventMap>(
1346
+ eventName: E,
1573
1347
  listener: (
1574
- stream: ServerHttp2Stream,
1575
- headers: IncomingHttpHeaders,
1576
- flags: number,
1577
- rawHeaders: string[],
1348
+ ...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1578
1349
  ) => void,
1579
1350
  ): this;
1580
- prependListener(event: "timeout", listener: () => void): this;
1581
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
1582
- prependOnceListener(
1583
- event: "checkContinue",
1584
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1585
- ): this;
1586
- prependOnceListener(
1587
- event: "request",
1588
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1351
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
1352
+ prependListener<E extends keyof Http2ServerEventMap>(
1353
+ eventName: E,
1354
+ listener: (
1355
+ ...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1356
+ ) => void,
1589
1357
  ): this;
1590
- prependOnceListener(
1591
- event: "session",
1592
- listener: (session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>) => void,
1358
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1359
+ prependOnceListener<E extends keyof Http2ServerEventMap>(
1360
+ eventName: E,
1361
+ listener: (
1362
+ ...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1363
+ ) => void,
1593
1364
  ): this;
1594
- prependOnceListener(event: "sessionError", listener: (err: Error) => void): this;
1595
- prependOnceListener(
1596
- event: "stream",
1365
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1366
+ rawListeners<E extends keyof Http2ServerEventMap>(
1367
+ eventName: E,
1368
+ ): ((...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]) => void)[];
1369
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
1370
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
1371
+ removeAllListeners<E extends keyof Http2ServerEventMap>(eventName?: E): this;
1372
+ removeAllListeners(eventName?: string | symbol): this;
1373
+ removeListener<E extends keyof Http2ServerEventMap>(
1374
+ eventName: E,
1597
1375
  listener: (
1598
- stream: ServerHttp2Stream,
1599
- headers: IncomingHttpHeaders,
1600
- flags: number,
1601
- rawHeaders: string[],
1376
+ ...args: Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1602
1377
  ) => void,
1603
1378
  ): this;
1604
- prependOnceListener(event: "timeout", listener: () => void): this;
1605
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
1379
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1380
+ // #endregion
1606
1381
  }
1607
- export interface Http2SecureServer<
1382
+ interface Http2SecureServerEventMap<
1608
1383
  Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
1609
1384
  Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
1610
1385
  Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
1611
1386
  Http2Response extends typeof Http2ServerResponse<InstanceType<Http2Request>> = typeof Http2ServerResponse,
1612
- > extends tls.Server, HTTP2ServerCommon {
1613
- addListener(
1614
- event: "checkContinue",
1615
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1616
- ): this;
1617
- addListener(
1618
- event: "request",
1619
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1620
- ): this;
1621
- addListener(
1622
- event: "session",
1623
- listener: (session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>) => void,
1624
- ): this;
1625
- addListener(event: "sessionError", listener: (err: Error) => void): this;
1626
- addListener(
1627
- event: "stream",
1628
- listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void,
1387
+ > extends tls.ServerEventMap, Http2ServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response> {
1388
+ "unknownProtocol": [socket: tls.TLSSocket];
1389
+ }
1390
+ interface Http2SecureServer<
1391
+ Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
1392
+ Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
1393
+ Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
1394
+ Http2Response extends typeof Http2ServerResponse<InstanceType<Http2Request>> = typeof Http2ServerResponse,
1395
+ > extends tls.Server, Http2ServerCommon {
1396
+ // #region InternalEventEmitter
1397
+ addListener<E extends keyof Http2SecureServerEventMap>(
1398
+ eventName: E,
1399
+ listener: (
1400
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1401
+ ) => void,
1629
1402
  ): this;
1630
- addListener(event: "timeout", listener: () => void): this;
1631
- addListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
1632
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
1633
- emit(
1634
- event: "checkContinue",
1635
- request: InstanceType<Http2Request>,
1636
- response: InstanceType<Http2Response>,
1403
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1404
+ emit<E extends keyof Http2SecureServerEventMap>(
1405
+ eventName: E,
1406
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1637
1407
  ): boolean;
1638
- emit(event: "request", request: InstanceType<Http2Request>, response: InstanceType<Http2Response>): boolean;
1639
- emit(
1640
- event: "session",
1641
- session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>,
1642
- ): boolean;
1643
- emit(event: "sessionError", err: Error): boolean;
1644
- emit(event: "stream", stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number): boolean;
1645
- emit(event: "timeout"): boolean;
1646
- emit(event: "unknownProtocol", socket: tls.TLSSocket): boolean;
1647
- emit(event: string | symbol, ...args: any[]): boolean;
1648
- on(
1649
- event: "checkContinue",
1650
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1651
- ): this;
1652
- on(
1653
- event: "request",
1654
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1655
- ): this;
1656
- on(
1657
- event: "session",
1658
- listener: (session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>) => void,
1659
- ): this;
1660
- on(event: "sessionError", listener: (err: Error) => void): this;
1661
- on(
1662
- event: "stream",
1663
- listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void,
1664
- ): this;
1665
- on(event: "timeout", listener: () => void): this;
1666
- on(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
1667
- on(event: string | symbol, listener: (...args: any[]) => void): this;
1668
- once(
1669
- event: "checkContinue",
1670
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1671
- ): this;
1672
- once(
1673
- event: "request",
1674
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1675
- ): this;
1676
- once(
1677
- event: "session",
1678
- listener: (session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>) => void,
1679
- ): this;
1680
- once(event: "sessionError", listener: (err: Error) => void): this;
1681
- once(
1682
- event: "stream",
1683
- listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void,
1684
- ): this;
1685
- once(event: "timeout", listener: () => void): this;
1686
- once(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
1687
- once(event: string | symbol, listener: (...args: any[]) => void): this;
1688
- prependListener(
1689
- event: "checkContinue",
1690
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1691
- ): this;
1692
- prependListener(
1693
- event: "request",
1694
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1695
- ): this;
1696
- prependListener(
1697
- event: "session",
1698
- listener: (session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>) => void,
1408
+ emit(eventName: string | symbol, ...args: any[]): boolean;
1409
+ listenerCount<E extends keyof Http2SecureServerEventMap>(
1410
+ eventName: E,
1411
+ listener?: (
1412
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1413
+ ) => void,
1414
+ ): number;
1415
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
1416
+ listeners<E extends keyof Http2SecureServerEventMap>(
1417
+ eventName: E,
1418
+ ): ((
1419
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1420
+ ) => void)[];
1421
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
1422
+ off<E extends keyof Http2SecureServerEventMap>(
1423
+ eventName: E,
1424
+ listener: (
1425
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1426
+ ) => void,
1699
1427
  ): this;
1700
- prependListener(event: "sessionError", listener: (err: Error) => void): this;
1701
- prependListener(
1702
- event: "stream",
1703
- listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void,
1428
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
1429
+ on<E extends keyof Http2SecureServerEventMap>(
1430
+ eventName: E,
1431
+ listener: (
1432
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1433
+ ) => void,
1704
1434
  ): this;
1705
- prependListener(event: "timeout", listener: () => void): this;
1706
- prependListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
1707
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
1708
- prependOnceListener(
1709
- event: "checkContinue",
1710
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1435
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
1436
+ once<E extends keyof Http2SecureServerEventMap>(
1437
+ eventName: E,
1438
+ listener: (
1439
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1440
+ ) => void,
1711
1441
  ): this;
1712
- prependOnceListener(
1713
- event: "request",
1714
- listener: (request: InstanceType<Http2Request>, response: InstanceType<Http2Response>) => void,
1442
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
1443
+ prependListener<E extends keyof Http2SecureServerEventMap>(
1444
+ eventName: E,
1445
+ listener: (
1446
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1447
+ ) => void,
1715
1448
  ): this;
1716
- prependOnceListener(
1717
- event: "session",
1718
- listener: (session: ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>) => void,
1449
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1450
+ prependOnceListener<E extends keyof Http2SecureServerEventMap>(
1451
+ eventName: E,
1452
+ listener: (
1453
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1454
+ ) => void,
1719
1455
  ): this;
1720
- prependOnceListener(event: "sessionError", listener: (err: Error) => void): this;
1721
- prependOnceListener(
1722
- event: "stream",
1723
- listener: (stream: ServerHttp2Stream, headers: IncomingHttpHeaders, flags: number) => void,
1456
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1457
+ rawListeners<E extends keyof Http2SecureServerEventMap>(
1458
+ eventName: E,
1459
+ ): ((
1460
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1461
+ ) => void)[];
1462
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
1463
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
1464
+ removeAllListeners<E extends keyof Http2SecureServerEventMap>(eventName?: E): this;
1465
+ removeAllListeners(eventName?: string | symbol): this;
1466
+ removeListener<E extends keyof Http2SecureServerEventMap>(
1467
+ eventName: E,
1468
+ listener: (
1469
+ ...args: Http2SecureServerEventMap<Http1Request, Http1Response, Http2Request, Http2Response>[E]
1470
+ ) => void,
1724
1471
  ): this;
1725
- prependOnceListener(event: "timeout", listener: () => void): this;
1726
- prependOnceListener(event: "unknownProtocol", listener: (socket: tls.TLSSocket) => void): this;
1727
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
1472
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1473
+ // #endregion
1474
+ }
1475
+ interface Http2ServerRequestEventMap extends stream.ReadableEventMap {
1476
+ "aborted": [hadError: boolean, code: number];
1477
+ "data": [chunk: string | NonSharedBuffer];
1728
1478
  }
1729
1479
  /**
1730
1480
  * A `Http2ServerRequest` object is created by {@link Server} or {@link SecureServer} and passed as the first argument to the `'request'` event. It may be used to access a request status,
@@ -1732,7 +1482,7 @@ declare module "http2" {
1732
1482
  * data.
1733
1483
  * @since v8.4.0
1734
1484
  */
1735
- export class Http2ServerRequest extends stream.Readable {
1485
+ class Http2ServerRequest extends stream.Readable {
1736
1486
  constructor(
1737
1487
  stream: ServerHttp2Stream,
1738
1488
  headers: IncomingHttpHeaders,
@@ -1923,56 +1673,69 @@ declare module "http2" {
1923
1673
  * @since v8.4.0
1924
1674
  */
1925
1675
  setTimeout(msecs: number, callback?: () => void): void;
1926
- read(size?: number): NonSharedBuffer | string | null;
1927
- addListener(event: "aborted", listener: (hadError: boolean, code: number) => void): this;
1928
- addListener(event: "close", listener: () => void): this;
1929
- addListener(event: "data", listener: (chunk: NonSharedBuffer | string) => void): this;
1930
- addListener(event: "end", listener: () => void): this;
1931
- addListener(event: "readable", listener: () => void): this;
1932
- addListener(event: "error", listener: (err: Error) => void): this;
1933
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
1934
- emit(event: "aborted", hadError: boolean, code: number): boolean;
1935
- emit(event: "close"): boolean;
1936
- emit(event: "data", chunk: NonSharedBuffer | string): boolean;
1937
- emit(event: "end"): boolean;
1938
- emit(event: "readable"): boolean;
1939
- emit(event: "error", err: Error): boolean;
1940
- emit(event: string | symbol, ...args: any[]): boolean;
1941
- on(event: "aborted", listener: (hadError: boolean, code: number) => void): this;
1942
- on(event: "close", listener: () => void): this;
1943
- on(event: "data", listener: (chunk: NonSharedBuffer | string) => void): this;
1944
- on(event: "end", listener: () => void): this;
1945
- on(event: "readable", listener: () => void): this;
1946
- on(event: "error", listener: (err: Error) => void): this;
1947
- on(event: string | symbol, listener: (...args: any[]) => void): this;
1948
- once(event: "aborted", listener: (hadError: boolean, code: number) => void): this;
1949
- once(event: "close", listener: () => void): this;
1950
- once(event: "data", listener: (chunk: NonSharedBuffer | string) => void): this;
1951
- once(event: "end", listener: () => void): this;
1952
- once(event: "readable", listener: () => void): this;
1953
- once(event: "error", listener: (err: Error) => void): this;
1954
- once(event: string | symbol, listener: (...args: any[]) => void): this;
1955
- prependListener(event: "aborted", listener: (hadError: boolean, code: number) => void): this;
1956
- prependListener(event: "close", listener: () => void): this;
1957
- prependListener(event: "data", listener: (chunk: NonSharedBuffer | string) => void): this;
1958
- prependListener(event: "end", listener: () => void): this;
1959
- prependListener(event: "readable", listener: () => void): this;
1960
- prependListener(event: "error", listener: (err: Error) => void): this;
1961
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
1962
- prependOnceListener(event: "aborted", listener: (hadError: boolean, code: number) => void): this;
1963
- prependOnceListener(event: "close", listener: () => void): this;
1964
- prependOnceListener(event: "data", listener: (chunk: NonSharedBuffer | string) => void): this;
1965
- prependOnceListener(event: "end", listener: () => void): this;
1966
- prependOnceListener(event: "readable", listener: () => void): this;
1967
- prependOnceListener(event: "error", listener: (err: Error) => void): this;
1968
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
1676
+ read(size?: number): Buffer | string | null;
1677
+ // #region InternalEventEmitter
1678
+ addListener<E extends keyof Http2ServerRequestEventMap>(
1679
+ eventName: E,
1680
+ listener: (...args: Http2ServerRequestEventMap[E]) => void,
1681
+ ): this;
1682
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1683
+ emit<E extends keyof Http2ServerRequestEventMap>(eventName: E, ...args: Http2ServerRequestEventMap[E]): boolean;
1684
+ emit(eventName: string | symbol, ...args: any[]): boolean;
1685
+ listenerCount<E extends keyof Http2ServerRequestEventMap>(
1686
+ eventName: E,
1687
+ listener?: (...args: Http2ServerRequestEventMap[E]) => void,
1688
+ ): number;
1689
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
1690
+ listeners<E extends keyof Http2ServerRequestEventMap>(
1691
+ eventName: E,
1692
+ ): ((...args: Http2ServerRequestEventMap[E]) => void)[];
1693
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
1694
+ off<E extends keyof Http2ServerRequestEventMap>(
1695
+ eventName: E,
1696
+ listener: (...args: Http2ServerRequestEventMap[E]) => void,
1697
+ ): this;
1698
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
1699
+ on<E extends keyof Http2ServerRequestEventMap>(
1700
+ eventName: E,
1701
+ listener: (...args: Http2ServerRequestEventMap[E]) => void,
1702
+ ): this;
1703
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
1704
+ once<E extends keyof Http2ServerRequestEventMap>(
1705
+ eventName: E,
1706
+ listener: (...args: Http2ServerRequestEventMap[E]) => void,
1707
+ ): this;
1708
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
1709
+ prependListener<E extends keyof Http2ServerRequestEventMap>(
1710
+ eventName: E,
1711
+ listener: (...args: Http2ServerRequestEventMap[E]) => void,
1712
+ ): this;
1713
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1714
+ prependOnceListener<E extends keyof Http2ServerRequestEventMap>(
1715
+ eventName: E,
1716
+ listener: (...args: Http2ServerRequestEventMap[E]) => void,
1717
+ ): this;
1718
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1719
+ rawListeners<E extends keyof Http2ServerRequestEventMap>(
1720
+ eventName: E,
1721
+ ): ((...args: Http2ServerRequestEventMap[E]) => void)[];
1722
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
1723
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
1724
+ removeAllListeners<E extends keyof Http2ServerRequestEventMap>(eventName?: E): this;
1725
+ removeAllListeners(eventName?: string | symbol): this;
1726
+ removeListener<E extends keyof Http2ServerRequestEventMap>(
1727
+ eventName: E,
1728
+ listener: (...args: Http2ServerRequestEventMap[E]) => void,
1729
+ ): this;
1730
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1731
+ // #endregion
1969
1732
  }
1970
1733
  /**
1971
1734
  * This object is created internally by an HTTP server, not by the user. It is
1972
1735
  * passed as the second parameter to the `'request'` event.
1973
1736
  * @since v8.4.0
1974
1737
  */
1975
- export class Http2ServerResponse<Request extends Http2ServerRequest = Http2ServerRequest> extends stream.Writable {
1738
+ class Http2ServerResponse<Request extends Http2ServerRequest = Http2ServerRequest> extends stream.Writable {
1976
1739
  constructor(stream: ServerHttp2Stream);
1977
1740
  /**
1978
1741
  * See `response.socket`.
@@ -1988,7 +1751,7 @@ declare module "http2" {
1988
1751
  * If there were no previous values for the header, this is equivalent to calling {@link setHeader}.
1989
1752
  *
1990
1753
  * Attempting to set a header field name or value that contains invalid characters will result in a
1991
- * [TypeError](https://nodejs.org/docs/latest-v24.x/api/errors.html#class-typeerror) being thrown.
1754
+ * [TypeError](https://nodejs.org/docs/latest-v25.x/api/errors.html#class-typeerror) being thrown.
1992
1755
  *
1993
1756
  * ```js
1994
1757
  * // Returns headers including "set-cookie: a" and "set-cookie: b"
@@ -2336,50 +2099,8 @@ declare module "http2" {
2336
2099
  headers: OutgoingHttpHeaders,
2337
2100
  callback: (err: Error | null, res: Http2ServerResponse) => void,
2338
2101
  ): void;
2339
- addListener(event: "close", listener: () => void): this;
2340
- addListener(event: "drain", listener: () => void): this;
2341
- addListener(event: "error", listener: (error: Error) => void): this;
2342
- addListener(event: "finish", listener: () => void): this;
2343
- addListener(event: "pipe", listener: (src: stream.Readable) => void): this;
2344
- addListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
2345
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
2346
- emit(event: "close"): boolean;
2347
- emit(event: "drain"): boolean;
2348
- emit(event: "error", error: Error): boolean;
2349
- emit(event: "finish"): boolean;
2350
- emit(event: "pipe", src: stream.Readable): boolean;
2351
- emit(event: "unpipe", src: stream.Readable): boolean;
2352
- emit(event: string | symbol, ...args: any[]): boolean;
2353
- on(event: "close", listener: () => void): this;
2354
- on(event: "drain", listener: () => void): this;
2355
- on(event: "error", listener: (error: Error) => void): this;
2356
- on(event: "finish", listener: () => void): this;
2357
- on(event: "pipe", listener: (src: stream.Readable) => void): this;
2358
- on(event: "unpipe", listener: (src: stream.Readable) => void): this;
2359
- on(event: string | symbol, listener: (...args: any[]) => void): this;
2360
- once(event: "close", listener: () => void): this;
2361
- once(event: "drain", listener: () => void): this;
2362
- once(event: "error", listener: (error: Error) => void): this;
2363
- once(event: "finish", listener: () => void): this;
2364
- once(event: "pipe", listener: (src: stream.Readable) => void): this;
2365
- once(event: "unpipe", listener: (src: stream.Readable) => void): this;
2366
- once(event: string | symbol, listener: (...args: any[]) => void): this;
2367
- prependListener(event: "close", listener: () => void): this;
2368
- prependListener(event: "drain", listener: () => void): this;
2369
- prependListener(event: "error", listener: (error: Error) => void): this;
2370
- prependListener(event: "finish", listener: () => void): this;
2371
- prependListener(event: "pipe", listener: (src: stream.Readable) => void): this;
2372
- prependListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
2373
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
2374
- prependOnceListener(event: "close", listener: () => void): this;
2375
- prependOnceListener(event: "drain", listener: () => void): this;
2376
- prependOnceListener(event: "error", listener: (error: Error) => void): this;
2377
- prependOnceListener(event: "finish", listener: () => void): this;
2378
- prependOnceListener(event: "pipe", listener: (src: stream.Readable) => void): this;
2379
- prependOnceListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
2380
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
2381
2102
  }
2382
- export namespace constants {
2103
+ namespace constants {
2383
2104
  const NGHTTP2_SESSION_SERVER: number;
2384
2105
  const NGHTTP2_SESSION_CLIENT: number;
2385
2106
  const NGHTTP2_STREAM_STATE_IDLE: number;
@@ -2599,13 +2320,13 @@ declare module "http2" {
2599
2320
  * This symbol can be set as a property on the HTTP/2 headers object with
2600
2321
  * an array value in order to provide a list of headers considered sensitive.
2601
2322
  */
2602
- export const sensitiveHeaders: symbol;
2323
+ const sensitiveHeaders: symbol;
2603
2324
  /**
2604
2325
  * Returns an object containing the default settings for an `Http2Session` instance. This method returns a new object instance every time it is called
2605
2326
  * so instances returned may be safely modified for use.
2606
2327
  * @since v8.4.0
2607
2328
  */
2608
- export function getDefaultSettings(): Settings;
2329
+ function getDefaultSettings(): Settings;
2609
2330
  /**
2610
2331
  * Returns a `Buffer` instance containing serialized representation of the given
2611
2332
  * HTTP/2 settings as specified in the [HTTP/2](https://tools.ietf.org/html/rfc7540) specification. This is intended
@@ -2621,14 +2342,14 @@ declare module "http2" {
2621
2342
  * ```
2622
2343
  * @since v8.4.0
2623
2344
  */
2624
- export function getPackedSettings(settings: Settings): NonSharedBuffer;
2345
+ function getPackedSettings(settings: Settings): NonSharedBuffer;
2625
2346
  /**
2626
2347
  * Returns a `HTTP/2 Settings Object` containing the deserialized settings from
2627
2348
  * the given `Buffer` as generated by `http2.getPackedSettings()`.
2628
2349
  * @since v8.4.0
2629
2350
  * @param buf The packed settings.
2630
2351
  */
2631
- export function getUnpackedSettings(buf: Uint8Array): Settings;
2352
+ function getUnpackedSettings(buf: Uint8Array): Settings;
2632
2353
  /**
2633
2354
  * Returns a `net.Server` instance that creates and manages `Http2Session` instances.
2634
2355
  *
@@ -2658,10 +2379,10 @@ declare module "http2" {
2658
2379
  * @since v8.4.0
2659
2380
  * @param onRequestHandler See `Compatibility API`
2660
2381
  */
2661
- export function createServer(
2382
+ function createServer(
2662
2383
  onRequestHandler?: (request: Http2ServerRequest, response: Http2ServerResponse) => void,
2663
2384
  ): Http2Server;
2664
- export function createServer<
2385
+ function createServer<
2665
2386
  Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
2666
2387
  Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
2667
2388
  Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
@@ -2698,10 +2419,10 @@ declare module "http2" {
2698
2419
  * @since v8.4.0
2699
2420
  * @param onRequestHandler See `Compatibility API`
2700
2421
  */
2701
- export function createSecureServer(
2422
+ function createSecureServer(
2702
2423
  onRequestHandler?: (request: Http2ServerRequest, response: Http2ServerResponse) => void,
2703
2424
  ): Http2SecureServer;
2704
- export function createSecureServer<
2425
+ function createSecureServer<
2705
2426
  Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
2706
2427
  Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
2707
2428
  Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
@@ -2726,11 +2447,11 @@ declare module "http2" {
2726
2447
  * is used). Userinfo (user ID and password), path, querystring, and fragment details in the URL will be ignored.
2727
2448
  * @param listener Will be registered as a one-time listener of the {@link 'connect'} event.
2728
2449
  */
2729
- export function connect(
2450
+ function connect(
2730
2451
  authority: string | url.URL,
2731
2452
  listener: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void,
2732
2453
  ): ClientHttp2Session;
2733
- export function connect(
2454
+ function connect(
2734
2455
  authority: string | url.URL,
2735
2456
  options?: ClientSessionOptions | SecureClientSessionOptions,
2736
2457
  listener?: (session: ClientHttp2Session, socket: net.Socket | tls.TLSSocket) => void,
@@ -2741,7 +2462,7 @@ declare module "http2" {
2741
2462
  * @param options Any `{@link createServer}` options can be provided.
2742
2463
  * @since v20.12.0
2743
2464
  */
2744
- export function performServerHandshake<
2465
+ function performServerHandshake<
2745
2466
  Http1Request extends typeof IncomingMessage = typeof IncomingMessage,
2746
2467
  Http1Response extends typeof ServerResponse<InstanceType<Http1Request>> = typeof ServerResponse,
2747
2468
  Http2Request extends typeof Http2ServerRequest = typeof Http2ServerRequest,
@@ -2752,5 +2473,8 @@ declare module "http2" {
2752
2473
  ): ServerHttp2Session<Http1Request, Http1Response, Http2Request, Http2Response>;
2753
2474
  }
2754
2475
  declare module "node:http2" {
2755
- export * from "http2";
2476
+ export { OutgoingHttpHeaders } from "node:http";
2477
+ }
2478
+ declare module "http2" {
2479
+ export * from "node:http2";
2756
2480
  }