@types/node 18.7.13 → 18.7.16

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 (6) hide show
  1. node/README.md +1 -1
  2. node/crypto.d.ts +4 -4
  3. node/http.d.ts +134 -52
  4. node/http2.d.ts +1 -1
  5. node/https.d.ts +198 -58
  6. node/package.json +3 -3
node/README.md CHANGED
@@ -8,7 +8,7 @@ This package contains type definitions for Node.js (https://nodejs.org/).
8
8
  Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node.
9
9
 
10
10
  ### Additional Details
11
- * Last updated: Wed, 24 Aug 2022 08:32:18 GMT
11
+ * Last updated: Wed, 07 Sep 2022 20:32:43 GMT
12
12
  * Dependencies: none
13
13
  * Global values: `AbortController`, `AbortSignal`, `__dirname`, `__filename`, `console`, `exports`, `gc`, `global`, `module`, `process`, `require`, `structuredClone`
14
14
 
node/crypto.d.ts CHANGED
@@ -1478,10 +1478,10 @@ declare module 'crypto' {
1478
1478
  * @param [generator=2]
1479
1479
  * @param generatorEncoding The `encoding` of the `generator` string.
1480
1480
  */
1481
- function createDiffieHellman(primeLength: number, generator?: number | NodeJS.ArrayBufferView): DiffieHellman;
1482
- function createDiffieHellman(prime: NodeJS.ArrayBufferView): DiffieHellman;
1483
- function createDiffieHellman(prime: string, primeEncoding: BinaryToTextEncoding): DiffieHellman;
1484
- function createDiffieHellman(prime: string, primeEncoding: BinaryToTextEncoding, generator: number | NodeJS.ArrayBufferView): DiffieHellman;
1481
+ function createDiffieHellman(primeLength: number, generator?: number): DiffieHellman;
1482
+ function createDiffieHellman(prime: ArrayBuffer | NodeJS.ArrayBufferView, generator?: number | ArrayBuffer | NodeJS.ArrayBufferView): DiffieHellman;
1483
+ function createDiffieHellman(prime: ArrayBuffer | NodeJS.ArrayBufferView, generator: string, generatorEncoding: BinaryToTextEncoding): DiffieHellman;
1484
+ function createDiffieHellman(prime: string, primeEncoding: BinaryToTextEncoding, generator?: number | ArrayBuffer | NodeJS.ArrayBufferView): DiffieHellman;
1485
1485
  function createDiffieHellman(prime: string, primeEncoding: BinaryToTextEncoding, generator: string, generatorEncoding: BinaryToTextEncoding): DiffieHellman;
1486
1486
  /**
1487
1487
  * The `DiffieHellman` class is a utility for creating Diffie-Hellman key
node/http.d.ts CHANGED
@@ -135,12 +135,17 @@ declare module 'http' {
135
135
  timeout?: number | undefined;
136
136
  setHost?: boolean | undefined;
137
137
  // https://github.com/nodejs/node/blob/master/lib/_http_client.js#L278
138
- createConnection?: ((options: ClientRequestArgs, oncreate: (err: Error, socket: Socket) => void) => Socket) | undefined;
138
+ createConnection?:
139
+ | ((options: ClientRequestArgs, oncreate: (err: Error, socket: Socket) => void) => Socket)
140
+ | undefined;
139
141
  lookup?: LookupFunction | undefined;
140
142
  }
141
- interface ServerOptions {
142
- IncomingMessage?: typeof IncomingMessage | undefined;
143
- ServerResponse?: typeof ServerResponse | undefined;
143
+ interface ServerOptions<
144
+ Request extends typeof IncomingMessage = typeof IncomingMessage,
145
+ Response extends typeof ServerResponse = typeof ServerResponse,
146
+ > {
147
+ IncomingMessage?: Request | undefined;
148
+ ServerResponse?: Response | undefined;
144
149
  /**
145
150
  * Optionally overrides the value of
146
151
  * `--max-http-header-size` for requests received by this server, i.e.
@@ -175,13 +180,19 @@ declare module 'http' {
175
180
  */
176
181
  keepAliveInitialDelay?: number | undefined;
177
182
  }
178
- type RequestListener = (req: IncomingMessage, res: ServerResponse) => void;
183
+ type RequestListener<
184
+ Request extends typeof IncomingMessage = typeof IncomingMessage,
185
+ Response extends typeof ServerResponse = typeof ServerResponse,
186
+ > = (req: InstanceType<Request>, res: InstanceType<Response> & { req: InstanceType<Request> }) => void;
179
187
  /**
180
188
  * @since v0.1.17
181
189
  */
182
- class Server extends NetServer {
183
- constructor(requestListener?: RequestListener);
184
- constructor(options: ServerOptions, requestListener?: RequestListener);
190
+ class Server<
191
+ Request extends typeof IncomingMessage = typeof IncomingMessage,
192
+ Response extends typeof ServerResponse = typeof ServerResponse,
193
+ > extends NetServer {
194
+ constructor(requestListener?: RequestListener<Request, Response>);
195
+ constructor(options: ServerOptions<Request, Response>, requestListener?: RequestListener<Request, Response>);
185
196
  /**
186
197
  * Sets the timeout value for sockets, and emits a `'timeout'` event on
187
198
  * the Server object, passing the socket as an argument, if a timeout
@@ -283,75 +294,111 @@ declare module 'http' {
283
294
  addListener(event: 'connection', listener: (socket: Socket) => void): this;
284
295
  addListener(event: 'error', listener: (err: Error) => void): this;
285
296
  addListener(event: 'listening', listener: () => void): this;
286
- addListener(event: 'checkContinue', listener: RequestListener): this;
287
- addListener(event: 'checkExpectation', listener: RequestListener): this;
297
+ addListener(event: 'checkContinue', listener: RequestListener<Request, Response>): this;
298
+ addListener(event: 'checkExpectation', listener: RequestListener<Request, Response>): this;
288
299
  addListener(event: 'clientError', listener: (err: Error, socket: stream.Duplex) => void): this;
289
- addListener(event: 'connect', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
290
- addListener(event: 'request', listener: RequestListener): this;
291
- addListener(event: 'upgrade', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
300
+ addListener(
301
+ event: 'connect',
302
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
303
+ ): this;
304
+ addListener(event: 'request', listener: RequestListener<Request, Response>): this;
305
+ addListener(
306
+ event: 'upgrade',
307
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
308
+ ): this;
292
309
  emit(event: string, ...args: any[]): boolean;
293
310
  emit(event: 'close'): boolean;
294
311
  emit(event: 'connection', socket: Socket): boolean;
295
312
  emit(event: 'error', err: Error): boolean;
296
313
  emit(event: 'listening'): boolean;
297
- emit(event: 'checkContinue', req: IncomingMessage, res: ServerResponse): boolean;
298
- emit(event: 'checkExpectation', req: IncomingMessage, res: ServerResponse): boolean;
314
+ emit(
315
+ event: 'checkContinue',
316
+ req: InstanceType<Request>,
317
+ res: InstanceType<Response> & { req: InstanceType<Request> },
318
+ ): boolean;
319
+ emit(
320
+ event: 'checkExpectation',
321
+ req: InstanceType<Request>,
322
+ res: InstanceType<Response> & { req: InstanceType<Request> },
323
+ ): boolean;
299
324
  emit(event: 'clientError', err: Error, socket: stream.Duplex): boolean;
300
- emit(event: 'connect', req: IncomingMessage, socket: stream.Duplex, head: Buffer): boolean;
301
- emit(event: 'request', req: IncomingMessage, res: ServerResponse): boolean;
302
- emit(event: 'upgrade', req: IncomingMessage, socket: stream.Duplex, head: Buffer): boolean;
325
+ emit(event: 'connect', req: InstanceType<Request>, socket: stream.Duplex, head: Buffer): boolean;
326
+ emit(
327
+ event: 'request',
328
+ req: InstanceType<Request>,
329
+ res: InstanceType<Response> & { req: InstanceType<Request> },
330
+ ): boolean;
331
+ emit(event: 'upgrade', req: InstanceType<Request>, socket: stream.Duplex, head: Buffer): boolean;
303
332
  on(event: string, listener: (...args: any[]) => void): this;
304
333
  on(event: 'close', listener: () => void): this;
305
334
  on(event: 'connection', listener: (socket: Socket) => void): this;
306
335
  on(event: 'error', listener: (err: Error) => void): this;
307
336
  on(event: 'listening', listener: () => void): this;
308
- on(event: 'checkContinue', listener: RequestListener): this;
309
- on(event: 'checkExpectation', listener: RequestListener): this;
337
+ on(event: 'checkContinue', listener: RequestListener<Request, Response>): this;
338
+ on(event: 'checkExpectation', listener: RequestListener<Request, Response>): this;
310
339
  on(event: 'clientError', listener: (err: Error, socket: stream.Duplex) => void): this;
311
- on(event: 'connect', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
312
- on(event: 'request', listener: RequestListener): this;
313
- on(event: 'upgrade', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
340
+ on(event: 'connect', listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void): this;
341
+ on(event: 'request', listener: RequestListener<Request, Response>): this;
342
+ on(event: 'upgrade', listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void): this;
314
343
  once(event: string, listener: (...args: any[]) => void): this;
315
344
  once(event: 'close', listener: () => void): this;
316
345
  once(event: 'connection', listener: (socket: Socket) => void): this;
317
346
  once(event: 'error', listener: (err: Error) => void): this;
318
347
  once(event: 'listening', listener: () => void): this;
319
- once(event: 'checkContinue', listener: RequestListener): this;
320
- once(event: 'checkExpectation', listener: RequestListener): this;
348
+ once(event: 'checkContinue', listener: RequestListener<Request, Response>): this;
349
+ once(event: 'checkExpectation', listener: RequestListener<Request, Response>): this;
321
350
  once(event: 'clientError', listener: (err: Error, socket: stream.Duplex) => void): this;
322
- once(event: 'connect', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
323
- once(event: 'request', listener: RequestListener): this;
324
- once(event: 'upgrade', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
351
+ once(
352
+ event: 'connect',
353
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
354
+ ): this;
355
+ once(event: 'request', listener: RequestListener<Request, Response>): this;
356
+ once(
357
+ event: 'upgrade',
358
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
359
+ ): this;
325
360
  prependListener(event: string, listener: (...args: any[]) => void): this;
326
361
  prependListener(event: 'close', listener: () => void): this;
327
362
  prependListener(event: 'connection', listener: (socket: Socket) => void): this;
328
363
  prependListener(event: 'error', listener: (err: Error) => void): this;
329
364
  prependListener(event: 'listening', listener: () => void): this;
330
- prependListener(event: 'checkContinue', listener: RequestListener): this;
331
- prependListener(event: 'checkExpectation', listener: RequestListener): this;
365
+ prependListener(event: 'checkContinue', listener: RequestListener<Request, Response>): this;
366
+ prependListener(event: 'checkExpectation', listener: RequestListener<Request, Response>): this;
332
367
  prependListener(event: 'clientError', listener: (err: Error, socket: stream.Duplex) => void): this;
333
- prependListener(event: 'connect', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
334
- prependListener(event: 'request', listener: RequestListener): this;
335
- prependListener(event: 'upgrade', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
368
+ prependListener(
369
+ event: 'connect',
370
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
371
+ ): this;
372
+ prependListener(event: 'request', listener: RequestListener<Request, Response>): this;
373
+ prependListener(
374
+ event: 'upgrade',
375
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
376
+ ): this;
336
377
  prependOnceListener(event: string, listener: (...args: any[]) => void): this;
337
378
  prependOnceListener(event: 'close', listener: () => void): this;
338
379
  prependOnceListener(event: 'connection', listener: (socket: Socket) => void): this;
339
380
  prependOnceListener(event: 'error', listener: (err: Error) => void): this;
340
381
  prependOnceListener(event: 'listening', listener: () => void): this;
341
- prependOnceListener(event: 'checkContinue', listener: RequestListener): this;
342
- prependOnceListener(event: 'checkExpectation', listener: RequestListener): this;
382
+ prependOnceListener(event: 'checkContinue', listener: RequestListener<Request, Response>): this;
383
+ prependOnceListener(event: 'checkExpectation', listener: RequestListener<Request, Response>): this;
343
384
  prependOnceListener(event: 'clientError', listener: (err: Error, socket: stream.Duplex) => void): this;
344
- prependOnceListener(event: 'connect', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
345
- prependOnceListener(event: 'request', listener: RequestListener): this;
346
- prependOnceListener(event: 'upgrade', listener: (req: IncomingMessage, socket: stream.Duplex, head: Buffer) => void): this;
385
+ prependOnceListener(
386
+ event: 'connect',
387
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
388
+ ): this;
389
+ prependOnceListener(event: 'request', listener: RequestListener<Request, Response>): this;
390
+ prependOnceListener(
391
+ event: 'upgrade',
392
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
393
+ ): this;
347
394
  }
348
395
  /**
349
396
  * This class serves as the parent class of {@link ClientRequest} and {@link ServerResponse}. It is an abstract of outgoing message from
350
397
  * the perspective of the participants of HTTP transaction.
351
398
  * @since v0.1.17
352
399
  */
353
- class OutgoingMessage extends stream.Writable {
354
- readonly req: IncomingMessage;
400
+ class OutgoingMessage<Request extends IncomingMessage = IncomingMessage> extends stream.Writable {
401
+ readonly req: Request;
355
402
  chunkedEncoding: boolean;
356
403
  shouldKeepAlive: boolean;
357
404
  useChunkedEncodingByDefault: boolean;
@@ -489,7 +536,7 @@ declare module 'http' {
489
536
  * passed as the second parameter to the `'request'` event.
490
537
  * @since v0.1.17
491
538
  */
492
- class ServerResponse extends OutgoingMessage {
539
+ class ServerResponse<Request extends IncomingMessage = IncomingMessage> extends OutgoingMessage<Request> {
493
540
  /**
494
541
  * When using implicit headers (not calling `response.writeHead()` explicitly),
495
542
  * this property controls the status code that will be sent to the client when
@@ -519,7 +566,7 @@ declare module 'http' {
519
566
  * @since v0.11.8
520
567
  */
521
568
  statusMessage: string;
522
- constructor(req: IncomingMessage);
569
+ constructor(req: Request);
523
570
  assignSocket(socket: Socket): void;
524
571
  detachSocket(socket: Socket): void;
525
572
  /**
@@ -585,7 +632,11 @@ declare module 'http' {
585
632
  * will result in a `TypeError` being thrown.
586
633
  * @since v0.1.30
587
634
  */
588
- writeHead(statusCode: number, statusMessage?: string, headers?: OutgoingHttpHeaders | OutgoingHttpHeader[]): this;
635
+ writeHead(
636
+ statusCode: number,
637
+ statusMessage?: string,
638
+ headers?: OutgoingHttpHeaders | OutgoingHttpHeader[],
639
+ ): this;
589
640
  writeHead(statusCode: number, headers?: OutgoingHttpHeaders | OutgoingHttpHeader[]): this;
590
641
  /**
591
642
  * Sends a HTTP/1.1 102 Processing message to the client, indicating that
@@ -758,13 +809,19 @@ declare module 'http' {
758
809
  * @deprecated
759
810
  */
760
811
  addListener(event: 'abort', listener: () => void): this;
761
- addListener(event: 'connect', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
812
+ addListener(
813
+ event: 'connect',
814
+ listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
815
+ ): this;
762
816
  addListener(event: 'continue', listener: () => void): this;
763
817
  addListener(event: 'information', listener: (info: InformationEvent) => void): this;
764
818
  addListener(event: 'response', listener: (response: IncomingMessage) => void): this;
765
819
  addListener(event: 'socket', listener: (socket: Socket) => void): this;
766
820
  addListener(event: 'timeout', listener: () => void): this;
767
- addListener(event: 'upgrade', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
821
+ addListener(
822
+ event: 'upgrade',
823
+ listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
824
+ ): this;
768
825
  addListener(event: 'close', listener: () => void): this;
769
826
  addListener(event: 'drain', listener: () => void): this;
770
827
  addListener(event: 'error', listener: (err: Error) => void): this;
@@ -812,13 +869,19 @@ declare module 'http' {
812
869
  * @deprecated
813
870
  */
814
871
  prependListener(event: 'abort', listener: () => void): this;
815
- prependListener(event: 'connect', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
872
+ prependListener(
873
+ event: 'connect',
874
+ listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
875
+ ): this;
816
876
  prependListener(event: 'continue', listener: () => void): this;
817
877
  prependListener(event: 'information', listener: (info: InformationEvent) => void): this;
818
878
  prependListener(event: 'response', listener: (response: IncomingMessage) => void): this;
819
879
  prependListener(event: 'socket', listener: (socket: Socket) => void): this;
820
880
  prependListener(event: 'timeout', listener: () => void): this;
821
- prependListener(event: 'upgrade', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
881
+ prependListener(
882
+ event: 'upgrade',
883
+ listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
884
+ ): this;
822
885
  prependListener(event: 'close', listener: () => void): this;
823
886
  prependListener(event: 'drain', listener: () => void): this;
824
887
  prependListener(event: 'error', listener: (err: Error) => void): this;
@@ -830,13 +893,19 @@ declare module 'http' {
830
893
  * @deprecated
831
894
  */
832
895
  prependOnceListener(event: 'abort', listener: () => void): this;
833
- prependOnceListener(event: 'connect', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
896
+ prependOnceListener(
897
+ event: 'connect',
898
+ listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
899
+ ): this;
834
900
  prependOnceListener(event: 'continue', listener: () => void): this;
835
901
  prependOnceListener(event: 'information', listener: (info: InformationEvent) => void): this;
836
902
  prependOnceListener(event: 'response', listener: (response: IncomingMessage) => void): this;
837
903
  prependOnceListener(event: 'socket', listener: (socket: Socket) => void): this;
838
904
  prependOnceListener(event: 'timeout', listener: () => void): this;
839
- prependOnceListener(event: 'upgrade', listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
905
+ prependOnceListener(
906
+ event: 'upgrade',
907
+ listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
908
+ ): this;
840
909
  prependOnceListener(event: 'close', listener: () => void): this;
841
910
  prependOnceListener(event: 'drain', listener: () => void): this;
842
911
  prependOnceListener(event: 'error', listener: (err: Error) => void): this;
@@ -1204,8 +1273,17 @@ declare module 'http' {
1204
1273
  * added to the `'request'` event.
1205
1274
  * @since v0.1.13
1206
1275
  */
1207
- function createServer(requestListener?: RequestListener): Server;
1208
- function createServer(options: ServerOptions, requestListener?: RequestListener): Server;
1276
+ function createServer<
1277
+ Request extends typeof IncomingMessage = typeof IncomingMessage,
1278
+ Response extends typeof ServerResponse = typeof ServerResponse,
1279
+ >(requestListener?: RequestListener<Request, Response>): Server<Request, Response>;
1280
+ function createServer<
1281
+ Request extends typeof IncomingMessage = typeof IncomingMessage,
1282
+ Response extends typeof ServerResponse = typeof ServerResponse,
1283
+ >(
1284
+ options: ServerOptions<Request, Response>,
1285
+ requestListener?: RequestListener<Request, Response>,
1286
+ ): Server<Request, Response>;
1209
1287
  // although RequestOptions are passed as ClientRequestArgs to ClientRequest directly,
1210
1288
  // create interface RequestOptions would make the naming more clear to developers
1211
1289
  interface RequestOptions extends ClientRequestArgs {}
@@ -1396,7 +1474,11 @@ declare module 'http' {
1396
1474
  * @since v0.3.6
1397
1475
  */
1398
1476
  function request(options: RequestOptions | string | URL, callback?: (res: IncomingMessage) => void): ClientRequest;
1399
- function request(url: string | URL, options: RequestOptions, callback?: (res: IncomingMessage) => void): ClientRequest;
1477
+ function request(
1478
+ url: string | URL,
1479
+ options: RequestOptions,
1480
+ callback?: (res: IncomingMessage) => void,
1481
+ ): ClientRequest;
1400
1482
  /**
1401
1483
  * Since most requests are GET requests without bodies, Node.js provides this
1402
1484
  * convenience method. The only difference between this method and {@link request} is that it sets the method to GET and calls `req.end()`automatically. The callback must take care to consume the
node/http2.d.ts CHANGED
@@ -780,7 +780,7 @@ declare module 'http2' {
780
780
  * @since v8.4.0
781
781
  * @param callback Callback that is called once the session is connected or right away if the session is already connected.
782
782
  */
783
- settings(settings: Settings): void;
783
+ settings(settings: Settings, callback?: (err: Error | null, settings: Settings, duration: number) => void): void;
784
784
  /**
785
785
  * Calls `unref()` on this `Http2Session`instance's underlying `net.Socket`.
786
786
  * @since v9.4.0
node/https.d.ts CHANGED
@@ -8,7 +8,10 @@ declare module 'https' {
8
8
  import * as tls from 'node:tls';
9
9
  import * as http from 'node:http';
10
10
  import { URL } from 'node:url';
11
- type ServerOptions = tls.SecureContextOptions & tls.TlsOptions & http.ServerOptions;
11
+ type ServerOptions<
12
+ Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
13
+ Response extends typeof http.ServerResponse = typeof http.ServerResponse,
14
+ > = tls.SecureContextOptions & tls.TlsOptions & http.ServerOptions<Request, Response>;
12
15
  type RequestOptions = http.RequestOptions &
13
16
  tls.SecureContextOptions & {
14
17
  rejectUnauthorized?: boolean | undefined; // Defaults to true
@@ -26,14 +29,23 @@ declare module 'https' {
26
29
  constructor(options?: AgentOptions);
27
30
  options: AgentOptions;
28
31
  }
29
- interface Server extends http.Server {}
32
+ interface Server<
33
+ Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
34
+ Response extends typeof http.ServerResponse = typeof http.ServerResponse,
35
+ > extends http.Server<Request, Response> {}
30
36
  /**
31
37
  * See `http.Server` for more information.
32
38
  * @since v0.3.4
33
39
  */
34
- class Server extends tls.Server {
35
- constructor(requestListener?: http.RequestListener);
36
- constructor(options: ServerOptions, requestListener?: http.RequestListener);
40
+ class Server<
41
+ Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
42
+ Response extends typeof http.ServerResponse = typeof http.ServerResponse,
43
+ > extends tls.Server {
44
+ constructor(requestListener?: http.RequestListener<Request, Response>);
45
+ constructor(
46
+ options: ServerOptions<Request, Response>,
47
+ requestListener?: http.RequestListener<Request, Response>,
48
+ );
37
49
  /**
38
50
  * Closes all connections connected to this server.
39
51
  * @since v18.2.0
@@ -46,25 +58,54 @@ declare module 'https' {
46
58
  closeIdleConnections(): void;
47
59
  addListener(event: string, listener: (...args: any[]) => void): this;
48
60
  addListener(event: 'keylog', listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
49
- addListener(event: 'newSession', listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void): this;
50
- addListener(event: 'OCSPRequest', listener: (certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void) => void): this;
51
- addListener(event: 'resumeSession', listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void): this;
61
+ addListener(
62
+ event: 'newSession',
63
+ listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
64
+ ): this;
65
+ addListener(
66
+ event: 'OCSPRequest',
67
+ listener: (
68
+ certificate: Buffer,
69
+ issuer: Buffer,
70
+ callback: (err: Error | null, resp: Buffer) => void,
71
+ ) => void,
72
+ ): this;
73
+ addListener(
74
+ event: 'resumeSession',
75
+ listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
76
+ ): this;
52
77
  addListener(event: 'secureConnection', listener: (tlsSocket: tls.TLSSocket) => void): this;
53
78
  addListener(event: 'tlsClientError', listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
54
79
  addListener(event: 'close', listener: () => void): this;
55
80
  addListener(event: 'connection', listener: (socket: Duplex) => void): this;
56
81
  addListener(event: 'error', listener: (err: Error) => void): this;
57
82
  addListener(event: 'listening', listener: () => void): this;
58
- addListener(event: 'checkContinue', listener: http.RequestListener): this;
59
- addListener(event: 'checkExpectation', listener: http.RequestListener): this;
83
+ addListener(event: 'checkContinue', listener: http.RequestListener<Request, Response>): this;
84
+ addListener(event: 'checkExpectation', listener: http.RequestListener<Request, Response>): this;
60
85
  addListener(event: 'clientError', listener: (err: Error, socket: Duplex) => void): this;
61
- addListener(event: 'connect', listener: (req: http.IncomingMessage, socket: Duplex, head: Buffer) => void): this;
62
- addListener(event: 'request', listener: http.RequestListener): this;
63
- addListener(event: 'upgrade', listener: (req: http.IncomingMessage, socket: Duplex, head: Buffer) => void): this;
86
+ addListener(
87
+ event: 'connect',
88
+ listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
89
+ ): this;
90
+ addListener(event: 'request', listener: http.RequestListener<Request, Response>): this;
91
+ addListener(
92
+ event: 'upgrade',
93
+ listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
94
+ ): this;
64
95
  emit(event: string, ...args: any[]): boolean;
65
96
  emit(event: 'keylog', line: Buffer, tlsSocket: tls.TLSSocket): boolean;
66
- emit(event: 'newSession', sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void): boolean;
67
- emit(event: 'OCSPRequest', certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void): boolean;
97
+ emit(
98
+ event: 'newSession',
99
+ sessionId: Buffer,
100
+ sessionData: Buffer,
101
+ callback: (err: Error, resp: Buffer) => void,
102
+ ): boolean;
103
+ emit(
104
+ event: 'OCSPRequest',
105
+ certificate: Buffer,
106
+ issuer: Buffer,
107
+ callback: (err: Error | null, resp: Buffer) => void,
108
+ ): boolean;
68
109
  emit(event: 'resumeSession', sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void): boolean;
69
110
  emit(event: 'secureConnection', tlsSocket: tls.TLSSocket): boolean;
70
111
  emit(event: 'tlsClientError', err: Error, tlsSocket: tls.TLSSocket): boolean;
@@ -72,80 +113,156 @@ declare module 'https' {
72
113
  emit(event: 'connection', socket: Duplex): boolean;
73
114
  emit(event: 'error', err: Error): boolean;
74
115
  emit(event: 'listening'): boolean;
75
- emit(event: 'checkContinue', req: http.IncomingMessage, res: http.ServerResponse): boolean;
76
- emit(event: 'checkExpectation', req: http.IncomingMessage, res: http.ServerResponse): boolean;
116
+ emit(
117
+ event: 'checkContinue',
118
+ req: InstanceType<Request>,
119
+ res: InstanceType<Response> & { req: InstanceType<Request> },
120
+ ): boolean;
121
+ emit(
122
+ event: 'checkExpectation',
123
+ req: InstanceType<Request>,
124
+ res: InstanceType<Response> & { req: InstanceType<Request> },
125
+ ): boolean;
77
126
  emit(event: 'clientError', err: Error, socket: Duplex): boolean;
78
- emit(event: 'connect', req: http.IncomingMessage, socket: Duplex, head: Buffer): boolean;
79
- emit(event: 'request', req: http.IncomingMessage, res: http.ServerResponse): boolean;
80
- emit(event: 'upgrade', req: http.IncomingMessage, socket: Duplex, head: Buffer): boolean;
127
+ emit(event: 'connect', req: InstanceType<Request>, socket: Duplex, head: Buffer): boolean;
128
+ emit(
129
+ event: 'request',
130
+ req: InstanceType<Request>,
131
+ res: InstanceType<Response> & { req: InstanceType<Request> },
132
+ ): boolean;
133
+ emit(event: 'upgrade', req: InstanceType<Request>, socket: Duplex, head: Buffer): boolean;
81
134
  on(event: string, listener: (...args: any[]) => void): this;
82
135
  on(event: 'keylog', listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
83
- on(event: 'newSession', listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void): this;
84
- on(event: 'OCSPRequest', listener: (certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void) => void): this;
85
- on(event: 'resumeSession', listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void): this;
136
+ on(
137
+ event: 'newSession',
138
+ listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
139
+ ): this;
140
+ on(
141
+ event: 'OCSPRequest',
142
+ listener: (
143
+ certificate: Buffer,
144
+ issuer: Buffer,
145
+ callback: (err: Error | null, resp: Buffer) => void,
146
+ ) => void,
147
+ ): this;
148
+ on(
149
+ event: 'resumeSession',
150
+ listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
151
+ ): this;
86
152
  on(event: 'secureConnection', listener: (tlsSocket: tls.TLSSocket) => void): this;
87
153
  on(event: 'tlsClientError', listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
88
154
  on(event: 'close', listener: () => void): this;
89
155
  on(event: 'connection', listener: (socket: Duplex) => void): this;
90
156
  on(event: 'error', listener: (err: Error) => void): this;
91
157
  on(event: 'listening', listener: () => void): this;
92
- on(event: 'checkContinue', listener: http.RequestListener): this;
93
- on(event: 'checkExpectation', listener: http.RequestListener): this;
158
+ on(event: 'checkContinue', listener: http.RequestListener<Request, Response>): this;
159
+ on(event: 'checkExpectation', listener: http.RequestListener<Request, Response>): this;
94
160
  on(event: 'clientError', listener: (err: Error, socket: Duplex) => void): this;
95
- on(event: 'connect', listener: (req: http.IncomingMessage, socket: Duplex, head: Buffer) => void): this;
96
- on(event: 'request', listener: http.RequestListener): this;
97
- on(event: 'upgrade', listener: (req: http.IncomingMessage, socket: Duplex, head: Buffer) => void): this;
161
+ on(event: 'connect', listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
162
+ on(event: 'request', listener: http.RequestListener<Request, Response>): this;
163
+ on(event: 'upgrade', listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
98
164
  once(event: string, listener: (...args: any[]) => void): this;
99
165
  once(event: 'keylog', listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
100
- once(event: 'newSession', listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void): this;
101
- once(event: 'OCSPRequest', listener: (certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void) => void): this;
102
- once(event: 'resumeSession', listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void): this;
166
+ once(
167
+ event: 'newSession',
168
+ listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
169
+ ): this;
170
+ once(
171
+ event: 'OCSPRequest',
172
+ listener: (
173
+ certificate: Buffer,
174
+ issuer: Buffer,
175
+ callback: (err: Error | null, resp: Buffer) => void,
176
+ ) => void,
177
+ ): this;
178
+ once(
179
+ event: 'resumeSession',
180
+ listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
181
+ ): this;
103
182
  once(event: 'secureConnection', listener: (tlsSocket: tls.TLSSocket) => void): this;
104
183
  once(event: 'tlsClientError', listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
105
184
  once(event: 'close', listener: () => void): this;
106
185
  once(event: 'connection', listener: (socket: Duplex) => void): this;
107
186
  once(event: 'error', listener: (err: Error) => void): this;
108
187
  once(event: 'listening', listener: () => void): this;
109
- once(event: 'checkContinue', listener: http.RequestListener): this;
110
- once(event: 'checkExpectation', listener: http.RequestListener): this;
188
+ once(event: 'checkContinue', listener: http.RequestListener<Request, Response>): this;
189
+ once(event: 'checkExpectation', listener: http.RequestListener<Request, Response>): this;
111
190
  once(event: 'clientError', listener: (err: Error, socket: Duplex) => void): this;
112
- once(event: 'connect', listener: (req: http.IncomingMessage, socket: Duplex, head: Buffer) => void): this;
113
- once(event: 'request', listener: http.RequestListener): this;
114
- once(event: 'upgrade', listener: (req: http.IncomingMessage, socket: Duplex, head: Buffer) => void): this;
191
+ once(event: 'connect', listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
192
+ once(event: 'request', listener: http.RequestListener<Request, Response>): this;
193
+ once(event: 'upgrade', listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void): this;
115
194
  prependListener(event: string, listener: (...args: any[]) => void): this;
116
195
  prependListener(event: 'keylog', listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
117
- prependListener(event: 'newSession', listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void): this;
118
- prependListener(event: 'OCSPRequest', listener: (certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void) => void): this;
119
- prependListener(event: 'resumeSession', listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void): this;
196
+ prependListener(
197
+ event: 'newSession',
198
+ listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
199
+ ): this;
200
+ prependListener(
201
+ event: 'OCSPRequest',
202
+ listener: (
203
+ certificate: Buffer,
204
+ issuer: Buffer,
205
+ callback: (err: Error | null, resp: Buffer) => void,
206
+ ) => void,
207
+ ): this;
208
+ prependListener(
209
+ event: 'resumeSession',
210
+ listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
211
+ ): this;
120
212
  prependListener(event: 'secureConnection', listener: (tlsSocket: tls.TLSSocket) => void): this;
121
213
  prependListener(event: 'tlsClientError', listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
122
214
  prependListener(event: 'close', listener: () => void): this;
123
215
  prependListener(event: 'connection', listener: (socket: Duplex) => void): this;
124
216
  prependListener(event: 'error', listener: (err: Error) => void): this;
125
217
  prependListener(event: 'listening', listener: () => void): this;
126
- prependListener(event: 'checkContinue', listener: http.RequestListener): this;
127
- prependListener(event: 'checkExpectation', listener: http.RequestListener): this;
218
+ prependListener(event: 'checkContinue', listener: http.RequestListener<Request, Response>): this;
219
+ prependListener(event: 'checkExpectation', listener: http.RequestListener<Request, Response>): this;
128
220
  prependListener(event: 'clientError', listener: (err: Error, socket: Duplex) => void): this;
129
- prependListener(event: 'connect', listener: (req: http.IncomingMessage, socket: Duplex, head: Buffer) => void): this;
130
- prependListener(event: 'request', listener: http.RequestListener): this;
131
- prependListener(event: 'upgrade', listener: (req: http.IncomingMessage, socket: Duplex, head: Buffer) => void): this;
221
+ prependListener(
222
+ event: 'connect',
223
+ listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
224
+ ): this;
225
+ prependListener(event: 'request', listener: http.RequestListener<Request, Response>): this;
226
+ prependListener(
227
+ event: 'upgrade',
228
+ listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
229
+ ): this;
132
230
  prependOnceListener(event: string, listener: (...args: any[]) => void): this;
133
231
  prependOnceListener(event: 'keylog', listener: (line: Buffer, tlsSocket: tls.TLSSocket) => void): this;
134
- prependOnceListener(event: 'newSession', listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void): this;
135
- prependOnceListener(event: 'OCSPRequest', listener: (certificate: Buffer, issuer: Buffer, callback: (err: Error | null, resp: Buffer) => void) => void): this;
136
- prependOnceListener(event: 'resumeSession', listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void): this;
232
+ prependOnceListener(
233
+ event: 'newSession',
234
+ listener: (sessionId: Buffer, sessionData: Buffer, callback: (err: Error, resp: Buffer) => void) => void,
235
+ ): this;
236
+ prependOnceListener(
237
+ event: 'OCSPRequest',
238
+ listener: (
239
+ certificate: Buffer,
240
+ issuer: Buffer,
241
+ callback: (err: Error | null, resp: Buffer) => void,
242
+ ) => void,
243
+ ): this;
244
+ prependOnceListener(
245
+ event: 'resumeSession',
246
+ listener: (sessionId: Buffer, callback: (err: Error, sessionData: Buffer) => void) => void,
247
+ ): this;
137
248
  prependOnceListener(event: 'secureConnection', listener: (tlsSocket: tls.TLSSocket) => void): this;
138
249
  prependOnceListener(event: 'tlsClientError', listener: (err: Error, tlsSocket: tls.TLSSocket) => void): this;
139
250
  prependOnceListener(event: 'close', listener: () => void): this;
140
251
  prependOnceListener(event: 'connection', listener: (socket: Duplex) => void): this;
141
252
  prependOnceListener(event: 'error', listener: (err: Error) => void): this;
142
253
  prependOnceListener(event: 'listening', listener: () => void): this;
143
- prependOnceListener(event: 'checkContinue', listener: http.RequestListener): this;
144
- prependOnceListener(event: 'checkExpectation', listener: http.RequestListener): this;
254
+ prependOnceListener(event: 'checkContinue', listener: http.RequestListener<Request, Response>): this;
255
+ prependOnceListener(event: 'checkExpectation', listener: http.RequestListener<Request, Response>): this;
145
256
  prependOnceListener(event: 'clientError', listener: (err: Error, socket: Duplex) => void): this;
146
- prependOnceListener(event: 'connect', listener: (req: http.IncomingMessage, socket: Duplex, head: Buffer) => void): this;
147
- prependOnceListener(event: 'request', listener: http.RequestListener): this;
148
- prependOnceListener(event: 'upgrade', listener: (req: http.IncomingMessage, socket: Duplex, head: Buffer) => void): this;
257
+ prependOnceListener(
258
+ event: 'connect',
259
+ listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
260
+ ): this;
261
+ prependOnceListener(event: 'request', listener: http.RequestListener<Request, Response>): this;
262
+ prependOnceListener(
263
+ event: 'upgrade',
264
+ listener: (req: InstanceType<Request>, socket: Duplex, head: Buffer) => void,
265
+ ): this;
149
266
  }
150
267
  /**
151
268
  * ```js
@@ -184,8 +301,17 @@ declare module 'https' {
184
301
  * @param options Accepts `options` from `createServer`, `createSecureContext` and `createServer`.
185
302
  * @param requestListener A listener to be added to the `'request'` event.
186
303
  */
187
- function createServer(requestListener?: http.RequestListener): Server;
188
- function createServer(options: ServerOptions, requestListener?: http.RequestListener): Server;
304
+ function createServer<
305
+ Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
306
+ Response extends typeof http.ServerResponse = typeof http.ServerResponse,
307
+ >(requestListener?: http.RequestListener<Request, Response>): Server<Request, Response>;
308
+ function createServer<
309
+ Request extends typeof http.IncomingMessage = typeof http.IncomingMessage,
310
+ Response extends typeof http.ServerResponse = typeof http.ServerResponse,
311
+ >(
312
+ options: ServerOptions<Request, Response>,
313
+ requestListener?: http.RequestListener<Request, Response>,
314
+ ): Server<Request, Response>;
189
315
  /**
190
316
  * Makes a request to a secure web server.
191
317
  *
@@ -366,8 +492,15 @@ declare module 'https' {
366
492
  * @since v0.3.6
367
493
  * @param options Accepts all `options` from `request`, with some differences in default values:
368
494
  */
369
- function request(options: RequestOptions | string | URL, callback?: (res: http.IncomingMessage) => void): http.ClientRequest;
370
- function request(url: string | URL, options: RequestOptions, callback?: (res: http.IncomingMessage) => void): http.ClientRequest;
495
+ function request(
496
+ options: RequestOptions | string | URL,
497
+ callback?: (res: http.IncomingMessage) => void,
498
+ ): http.ClientRequest;
499
+ function request(
500
+ url: string | URL,
501
+ options: RequestOptions,
502
+ callback?: (res: http.IncomingMessage) => void,
503
+ ): http.ClientRequest;
371
504
  /**
372
505
  * Like `http.get()` but for HTTPS.
373
506
  *
@@ -392,8 +525,15 @@ declare module 'https' {
392
525
  * @since v0.3.6
393
526
  * @param options Accepts the same `options` as {@link request}, with the `method` always set to `GET`.
394
527
  */
395
- function get(options: RequestOptions | string | URL, callback?: (res: http.IncomingMessage) => void): http.ClientRequest;
396
- function get(url: string | URL, options: RequestOptions, callback?: (res: http.IncomingMessage) => void): http.ClientRequest;
528
+ function get(
529
+ options: RequestOptions | string | URL,
530
+ callback?: (res: http.IncomingMessage) => void,
531
+ ): http.ClientRequest;
532
+ function get(
533
+ url: string | URL,
534
+ options: RequestOptions,
535
+ callback?: (res: http.IncomingMessage) => void,
536
+ ): http.ClientRequest;
397
537
  let globalAgent: Agent;
398
538
  }
399
539
  declare module 'node:https' {
node/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@types/node",
3
- "version": "18.7.13",
3
+ "version": "18.7.16",
4
4
  "description": "TypeScript definitions for Node.js",
5
5
  "homepage": "https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node",
6
6
  "license": "MIT",
@@ -220,6 +220,6 @@
220
220
  },
221
221
  "scripts": {},
222
222
  "dependencies": {},
223
- "typesPublisherContentHash": "25486c39271d0972bf5cd93fe21ef2423a533efc749c47d5f39973be04d2f89a",
224
- "typeScriptVersion": "4.0"
223
+ "typesPublisherContentHash": "c93df0685e32b0f653a67daaa7e7a626db993a7d2c1545ef65c3ba596999c46b",
224
+ "typeScriptVersion": "4.1"
225
225
  }