@contrast/agent-bundle 5.46.0 → 5.47.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (178) hide show
  1. package/README.md +1 -1
  2. package/node_modules/@contrast/agent/README.md +1 -1
  3. package/node_modules/@contrast/agent/package.json +12 -12
  4. package/node_modules/@contrast/agentify/package.json +15 -15
  5. package/node_modules/@contrast/architecture-components/package.json +5 -5
  6. package/node_modules/@contrast/assess/lib/{session-configuration → configuration-analysis}/common.js +1 -1
  7. package/node_modules/@contrast/assess/lib/{session-configuration → configuration-analysis}/handlers.js +23 -10
  8. package/node_modules/@contrast/assess/lib/{session-configuration → configuration-analysis}/index.js +6 -4
  9. package/node_modules/@contrast/assess/lib/configuration-analysis/install/apollo-server.js +92 -0
  10. package/node_modules/@contrast/assess/lib/{session-configuration → configuration-analysis}/install/express-session.js +2 -2
  11. package/node_modules/@contrast/assess/lib/{session-configuration → configuration-analysis}/install/fastify-cookie.js +2 -2
  12. package/node_modules/@contrast/assess/lib/configuration-analysis/install/graphql-yoga.js +90 -0
  13. package/node_modules/@contrast/assess/lib/{session-configuration → configuration-analysis}/install/hapi.js +2 -2
  14. package/node_modules/@contrast/assess/lib/{session-configuration → configuration-analysis}/install/koa.js +3 -3
  15. package/node_modules/@contrast/assess/lib/dataflow/propagation/install/string/substring.js +1 -1
  16. package/node_modules/@contrast/assess/lib/dataflow/sources/handler.js +9 -2
  17. package/node_modules/@contrast/assess/lib/dataflow/sources/index.js +2 -0
  18. package/node_modules/@contrast/assess/lib/dataflow/sources/install/fastify-websocket.js +63 -0
  19. package/node_modules/@contrast/assess/lib/dataflow/sources/install/http.js +42 -38
  20. package/node_modules/@contrast/assess/lib/dataflow/sources/install/koa/index.js +1 -1
  21. package/node_modules/@contrast/assess/lib/dataflow/sources/install/koa/koa-bodyparsers.js +76 -48
  22. package/node_modules/@contrast/assess/lib/dataflow/sources/install/koa/koa-multer.js +1 -1
  23. package/node_modules/@contrast/assess/lib/dataflow/sources/install/koa/koa-routers.js +2 -2
  24. package/node_modules/@contrast/assess/lib/dataflow/sources/install/koa/{koa2.js → koa.js} +3 -3
  25. package/node_modules/@contrast/assess/lib/dataflow/sources/install/socket.io.js +80 -0
  26. package/node_modules/@contrast/assess/lib/index.d.ts +4 -3
  27. package/node_modules/@contrast/assess/lib/index.js +1 -1
  28. package/node_modules/@contrast/assess/lib/policy.js +2 -2
  29. package/node_modules/@contrast/assess/package.json +12 -12
  30. package/node_modules/@contrast/common/lib/constants.d.ts +12 -4
  31. package/node_modules/@contrast/common/lib/constants.js +16 -7
  32. package/node_modules/@contrast/common/lib/types.d.ts +5 -1
  33. package/node_modules/@contrast/common/package.json +1 -1
  34. package/node_modules/@contrast/config/lib/common.js +1 -0
  35. package/node_modules/@contrast/config/lib/options.js +7 -1
  36. package/node_modules/@contrast/config/package.json +3 -3
  37. package/node_modules/@contrast/core/package.json +5 -5
  38. package/node_modules/@contrast/deadzones/package.json +5 -5
  39. package/node_modules/@contrast/dep-hooks/lib/package-finder.d.ts +2 -2
  40. package/node_modules/@contrast/dep-hooks/lib/package-finder.js +3 -2
  41. package/node_modules/@contrast/dep-hooks/package.json +4 -4
  42. package/node_modules/@contrast/esm-hooks/README.md +2 -2
  43. package/node_modules/@contrast/esm-hooks/package.json +6 -6
  44. package/node_modules/@contrast/instrumentation/package.json +5 -5
  45. package/node_modules/@contrast/library-analysis/lib/install/library-reporting/dep.json +149 -149
  46. package/node_modules/@contrast/library-analysis/lib/install/library-reporting/index.js +2 -11
  47. package/node_modules/@contrast/library-analysis/lib/install/library-reporting/utils.js +2 -0
  48. package/node_modules/@contrast/library-analysis/lib/install/library-usage/index.js +3 -1
  49. package/node_modules/@contrast/library-analysis/lib/util.js +0 -2
  50. package/node_modules/@contrast/library-analysis/package.json +4 -4
  51. package/node_modules/@contrast/logger/package.json +3 -3
  52. package/node_modules/@contrast/metrics/package.json +6 -6
  53. package/node_modules/@contrast/patcher/package.json +2 -2
  54. package/node_modules/@contrast/protect/lib/error-handlers/index.js +1 -1
  55. package/node_modules/@contrast/protect/lib/error-handlers/install/{koa2.js → koa.js} +4 -4
  56. package/node_modules/@contrast/protect/lib/index.d.ts +1 -1
  57. package/node_modules/@contrast/protect/lib/input-analysis/index.js +2 -3
  58. package/node_modules/@contrast/protect/lib/input-analysis/install/koa-bodyparsers.js +92 -0
  59. package/node_modules/@contrast/protect/lib/input-analysis/install/{koa2.js → koa.js} +5 -5
  60. package/node_modules/@contrast/protect/package.json +11 -11
  61. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/application-activity/translations.js +6 -10
  62. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/routes-observed.js +4 -0
  63. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/traces/index.d.ts +1 -1
  64. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/traces/index.js +1 -1
  65. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/traces/translations.d.ts +1 -1
  66. package/node_modules/@contrast/reporter/lib/reporters/contrast-ui/endpoints/traces/translations.js +22 -9
  67. package/node_modules/@contrast/reporter/lib/reporters/file.js +1 -1
  68. package/node_modules/@contrast/reporter/package.json +6 -6
  69. package/node_modules/@contrast/rewriter/package.json +5 -5
  70. package/node_modules/@contrast/route-coverage/lib/index.d.ts +0 -2
  71. package/node_modules/@contrast/route-coverage/lib/index.js +10 -1
  72. package/node_modules/@contrast/route-coverage/lib/install/express/express5.js +16 -1
  73. package/node_modules/@contrast/route-coverage/lib/install/fastify.js +25 -15
  74. package/node_modules/@contrast/route-coverage/lib/install/graphql.js +6 -1
  75. package/node_modules/@contrast/route-coverage/lib/install/koa.js +1 -1
  76. package/node_modules/@contrast/route-coverage/lib/install/socket.io.js +127 -0
  77. package/node_modules/@contrast/route-coverage/package.json +8 -8
  78. package/node_modules/@contrast/scopes/package.json +5 -5
  79. package/node_modules/@contrast/sec-obs/package.json +9 -9
  80. package/node_modules/@contrast/sources/lib/index.js +65 -22
  81. package/node_modules/@contrast/sources/lib/index.test.js +78 -33
  82. package/node_modules/@contrast/sources/lib/source-info.js +1 -10
  83. package/node_modules/@contrast/sources/package.json +3 -3
  84. package/node_modules/@contrast/telemetry/package.json +5 -5
  85. package/node_modules/@types/node/README.md +1 -1
  86. package/node_modules/@types/node/assert.d.ts +37 -2
  87. package/node_modules/@types/node/buffer.buffer.d.ts +9 -0
  88. package/node_modules/@types/node/buffer.d.ts +8 -4
  89. package/node_modules/@types/node/child_process.d.ts +65 -42
  90. package/node_modules/@types/node/cluster.d.ts +4 -5
  91. package/node_modules/@types/node/crypto.d.ts +1079 -338
  92. package/node_modules/@types/node/dgram.d.ts +9 -8
  93. package/node_modules/@types/node/diagnostics_channel.d.ts +0 -2
  94. package/node_modules/@types/node/dns.d.ts +1 -1
  95. package/node_modules/@types/node/events.d.ts +1 -1
  96. package/node_modules/@types/node/fs/promises.d.ts +39 -21
  97. package/node_modules/@types/node/fs.d.ts +104 -87
  98. package/node_modules/@types/node/globals.d.ts +2 -0
  99. package/node_modules/@types/node/globals.typedarray.d.ts +19 -0
  100. package/node_modules/@types/node/http.d.ts +66 -27
  101. package/node_modules/@types/node/http2.d.ts +178 -52
  102. package/node_modules/@types/node/https.d.ts +91 -62
  103. package/node_modules/@types/node/index.d.ts +2 -0
  104. package/node_modules/@types/node/inspector.d.ts +24 -0
  105. package/node_modules/@types/node/inspector.generated.d.ts +181 -0
  106. package/node_modules/@types/node/net.d.ts +12 -11
  107. package/node_modules/@types/node/os.d.ts +14 -3
  108. package/node_modules/@types/node/package.json +3 -3
  109. package/node_modules/@types/node/perf_hooks.d.ts +6 -8
  110. package/node_modules/@types/node/process.d.ts +12 -23
  111. package/node_modules/@types/node/readline/promises.d.ts +1 -1
  112. package/node_modules/@types/node/sea.d.ts +9 -0
  113. package/node_modules/@types/node/sqlite.d.ts +119 -10
  114. package/node_modules/@types/node/stream/consumers.d.ts +2 -2
  115. package/node_modules/@types/node/stream/web.d.ts +6 -55
  116. package/node_modules/@types/node/stream.d.ts +38 -23
  117. package/node_modules/@types/node/string_decoder.d.ts +2 -2
  118. package/node_modules/@types/node/test.d.ts +29 -3
  119. package/node_modules/@types/node/tls.d.ts +90 -66
  120. package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +10 -2
  121. package/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +16 -0
  122. package/node_modules/@types/node/ts5.6/index.d.ts +2 -0
  123. package/node_modules/@types/node/ts5.7/index.d.ts +2 -0
  124. package/node_modules/@types/node/url.d.ts +2 -2
  125. package/node_modules/@types/node/util.d.ts +12 -3
  126. package/node_modules/@types/node/v8.d.ts +38 -5
  127. package/node_modules/@types/node/vm.d.ts +169 -88
  128. package/node_modules/@types/node/wasi.d.ts +1 -1
  129. package/node_modules/@types/node/web-globals/crypto.d.ts +32 -0
  130. package/node_modules/@types/node/web-globals/streams.d.ts +22 -0
  131. package/node_modules/@types/node/worker_threads.d.ts +76 -1
  132. package/node_modules/@types/node/zlib.d.ts +25 -24
  133. package/node_modules/axios/CHANGELOG.md +403 -357
  134. package/node_modules/axios/README.md +80 -49
  135. package/node_modules/axios/dist/axios.js +121 -46
  136. package/node_modules/axios/dist/axios.js.map +1 -1
  137. package/node_modules/axios/dist/axios.min.js +2 -2
  138. package/node_modules/axios/dist/axios.min.js.map +1 -1
  139. package/node_modules/axios/dist/browser/axios.cjs +126 -57
  140. package/node_modules/axios/dist/browser/axios.cjs.map +1 -1
  141. package/node_modules/axios/dist/esm/axios.js +126 -57
  142. package/node_modules/axios/dist/esm/axios.js.map +1 -1
  143. package/node_modules/axios/dist/esm/axios.min.js +2 -2
  144. package/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  145. package/node_modules/axios/dist/node/axios.cjs +346 -97
  146. package/node_modules/axios/dist/node/axios.cjs.map +1 -1
  147. package/node_modules/axios/index.d.cts +4 -0
  148. package/node_modules/axios/index.d.ts +4 -0
  149. package/node_modules/axios/lib/adapters/adapters.js +85 -40
  150. package/node_modules/axios/lib/adapters/fetch.js +1 -1
  151. package/node_modules/axios/lib/adapters/http.js +220 -42
  152. package/node_modules/axios/lib/core/InterceptorManager.js +1 -1
  153. package/node_modules/axios/lib/core/mergeConfig.js +4 -4
  154. package/node_modules/axios/lib/env/data.js +1 -1
  155. package/node_modules/axios/lib/helpers/HttpStatusCode.js +6 -0
  156. package/node_modules/axios/lib/helpers/bind.js +7 -0
  157. package/node_modules/axios/lib/helpers/cookies.js +24 -13
  158. package/node_modules/axios/package.json +9 -4
  159. package/node_modules/detect-libc/lib/filesystem.js +1 -1
  160. package/node_modules/detect-libc/package.json +3 -1
  161. package/node_modules/node-abi/abi_registry.json +12 -2
  162. package/node_modules/node-abi/package.json +3 -6
  163. package/node_modules/semver/classes/range.js +1 -0
  164. package/node_modules/semver/classes/semver.js +19 -5
  165. package/node_modules/semver/internal/identifiers.js +4 -0
  166. package/node_modules/semver/package.json +3 -3
  167. package/node_modules/undici-types/agent.d.ts +1 -0
  168. package/node_modules/undici-types/diagnostics-channel.d.ts +0 -1
  169. package/node_modules/undici-types/errors.d.ts +5 -15
  170. package/node_modules/undici-types/eventsource.d.ts +6 -1
  171. package/node_modules/undici-types/index.d.ts +4 -1
  172. package/node_modules/undici-types/interceptors.d.ts +5 -0
  173. package/node_modules/undici-types/package.json +1 -1
  174. package/node_modules/undici-types/snapshot-agent.d.ts +5 -3
  175. package/node_modules/undici-types/webidl.d.ts +82 -21
  176. package/package.json +3 -3
  177. package/node_modules/@contrast/protect/lib/input-analysis/install/koa-body5.js +0 -63
  178. package/node_modules/@contrast/protect/lib/input-analysis/install/koa-bodyparser4.js +0 -64
@@ -40,6 +40,7 @@
40
40
  * @see [source](https://github.com/nodejs/node/blob/v24.x/lib/http.js)
41
41
  */
42
42
  declare module "http" {
43
+ import { NonSharedBuffer } from "node:buffer";
43
44
  import * as stream from "node:stream";
44
45
  import { URL } from "node:url";
45
46
  import { LookupOptions } from "node:dns";
@@ -200,7 +201,7 @@ declare module "http" {
200
201
  "x-frame-options"?: string | undefined;
201
202
  "x-xss-protection"?: string | undefined;
202
203
  }
203
- interface ClientRequestArgs {
204
+ interface ClientRequestArgs extends Pick<LookupOptions, "hints"> {
204
205
  _defaultAgent?: Agent | undefined;
205
206
  agent?: Agent | boolean | undefined;
206
207
  auth?: string | null | undefined;
@@ -213,7 +214,6 @@ declare module "http" {
213
214
  defaultPort?: number | string | undefined;
214
215
  family?: number | undefined;
215
216
  headers?: OutgoingHttpHeaders | readonly string[] | undefined;
216
- hints?: LookupOptions["hints"];
217
217
  host?: string | null | undefined;
218
218
  hostname?: string | null | undefined;
219
219
  insecureHTTPParser?: boolean | undefined;
@@ -234,7 +234,7 @@ declare module "http" {
234
234
  socketPath?: string | undefined;
235
235
  timeout?: number | undefined;
236
236
  uniqueHeaders?: Array<string | string[]> | undefined;
237
- joinDuplicateHeaders?: boolean;
237
+ joinDuplicateHeaders?: boolean | undefined;
238
238
  }
239
239
  interface ServerOptions<
240
240
  Request extends typeof IncomingMessage = typeof IncomingMessage,
@@ -260,7 +260,7 @@ declare module "http" {
260
260
  * @default false
261
261
  * @since v18.14.0
262
262
  */
263
- joinDuplicateHeaders?: boolean;
263
+ joinDuplicateHeaders?: boolean | undefined;
264
264
  /**
265
265
  * The number of milliseconds of inactivity a server needs to wait for additional incoming data,
266
266
  * after it has finished writing the last response, before a socket will be destroyed.
@@ -340,6 +340,17 @@ declare module "http" {
340
340
  * If the header's value is an array, the items will be joined using `; `.
341
341
  */
342
342
  uniqueHeaders?: Array<string | string[]> | undefined;
343
+ /**
344
+ * A callback which receives an
345
+ * incoming request and returns a boolean, to control which upgrade attempts
346
+ * should be accepted. Accepted upgrades will fire an `'upgrade'` event (or
347
+ * their sockets will be destroyed, if no listener is registered) while
348
+ * rejected upgrades will fire a `'request'` event like any non-upgrade
349
+ * request.
350
+ * @since v24.9.0
351
+ * @default () => server.listenerCount('upgrade') > 0
352
+ */
353
+ shouldUpgradeCallback?: ((request: InstanceType<Request>) => boolean) | undefined;
343
354
  /**
344
355
  * If set to `true`, an error is thrown when writing to an HTTP response which does not have a body.
345
356
  * @default false
@@ -485,13 +496,13 @@ declare module "http" {
485
496
  addListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this;
486
497
  addListener(
487
498
  event: "connect",
488
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
499
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
489
500
  ): this;
490
501
  addListener(event: "dropRequest", listener: (req: InstanceType<Request>, socket: stream.Duplex) => void): this;
491
502
  addListener(event: "request", listener: RequestListener<Request, Response>): this;
492
503
  addListener(
493
504
  event: "upgrade",
494
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
505
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
495
506
  ): this;
496
507
  emit(event: string, ...args: any[]): boolean;
497
508
  emit(event: "close"): boolean;
@@ -509,14 +520,14 @@ declare module "http" {
509
520
  res: InstanceType<Response> & { req: InstanceType<Request> },
510
521
  ): boolean;
511
522
  emit(event: "clientError", err: Error, socket: stream.Duplex): boolean;
512
- emit(event: "connect", req: InstanceType<Request>, socket: stream.Duplex, head: Buffer): boolean;
523
+ emit(event: "connect", req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer): boolean;
513
524
  emit(event: "dropRequest", req: InstanceType<Request>, socket: stream.Duplex): boolean;
514
525
  emit(
515
526
  event: "request",
516
527
  req: InstanceType<Request>,
517
528
  res: InstanceType<Response> & { req: InstanceType<Request> },
518
529
  ): boolean;
519
- emit(event: "upgrade", req: InstanceType<Request>, socket: stream.Duplex, head: Buffer): boolean;
530
+ emit(event: "upgrade", req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer): boolean;
520
531
  on(event: string, listener: (...args: any[]) => void): this;
521
532
  on(event: "close", listener: () => void): this;
522
533
  on(event: "connection", listener: (socket: Socket) => void): this;
@@ -525,10 +536,16 @@ declare module "http" {
525
536
  on(event: "checkContinue", listener: RequestListener<Request, Response>): this;
526
537
  on(event: "checkExpectation", listener: RequestListener<Request, Response>): this;
527
538
  on(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this;
528
- on(event: "connect", listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void): this;
539
+ on(
540
+ event: "connect",
541
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
542
+ ): this;
529
543
  on(event: "dropRequest", listener: (req: InstanceType<Request>, socket: stream.Duplex) => void): this;
530
544
  on(event: "request", listener: RequestListener<Request, Response>): this;
531
- on(event: "upgrade", listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void): this;
545
+ on(
546
+ event: "upgrade",
547
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
548
+ ): this;
532
549
  once(event: string, listener: (...args: any[]) => void): this;
533
550
  once(event: "close", listener: () => void): this;
534
551
  once(event: "connection", listener: (socket: Socket) => void): this;
@@ -539,13 +556,13 @@ declare module "http" {
539
556
  once(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this;
540
557
  once(
541
558
  event: "connect",
542
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
559
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
543
560
  ): this;
544
561
  once(event: "dropRequest", listener: (req: InstanceType<Request>, socket: stream.Duplex) => void): this;
545
562
  once(event: "request", listener: RequestListener<Request, Response>): this;
546
563
  once(
547
564
  event: "upgrade",
548
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
565
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
549
566
  ): this;
550
567
  prependListener(event: string, listener: (...args: any[]) => void): this;
551
568
  prependListener(event: "close", listener: () => void): this;
@@ -557,7 +574,7 @@ declare module "http" {
557
574
  prependListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this;
558
575
  prependListener(
559
576
  event: "connect",
560
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
577
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
561
578
  ): this;
562
579
  prependListener(
563
580
  event: "dropRequest",
@@ -566,7 +583,7 @@ declare module "http" {
566
583
  prependListener(event: "request", listener: RequestListener<Request, Response>): this;
567
584
  prependListener(
568
585
  event: "upgrade",
569
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
586
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
570
587
  ): this;
571
588
  prependOnceListener(event: string, listener: (...args: any[]) => void): this;
572
589
  prependOnceListener(event: "close", listener: () => void): this;
@@ -578,7 +595,7 @@ declare module "http" {
578
595
  prependOnceListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this;
579
596
  prependOnceListener(
580
597
  event: "connect",
581
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
598
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
582
599
  ): this;
583
600
  prependOnceListener(
584
601
  event: "dropRequest",
@@ -587,7 +604,7 @@ declare module "http" {
587
604
  prependOnceListener(event: "request", listener: RequestListener<Request, Response>): this;
588
605
  prependOnceListener(
589
606
  event: "upgrade",
590
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: Buffer) => void,
607
+ listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
591
608
  ): this;
592
609
  }
593
610
  /**
@@ -1107,7 +1124,7 @@ declare module "http" {
1107
1124
  addListener(event: "abort", listener: () => void): this;
1108
1125
  addListener(
1109
1126
  event: "connect",
1110
- listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
1127
+ listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1111
1128
  ): this;
1112
1129
  addListener(event: "continue", listener: () => void): this;
1113
1130
  addListener(event: "information", listener: (info: InformationEvent) => void): this;
@@ -1116,7 +1133,7 @@ declare module "http" {
1116
1133
  addListener(event: "timeout", listener: () => void): this;
1117
1134
  addListener(
1118
1135
  event: "upgrade",
1119
- listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
1136
+ listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1120
1137
  ): this;
1121
1138
  addListener(event: "close", listener: () => void): this;
1122
1139
  addListener(event: "drain", listener: () => void): this;
@@ -1129,13 +1146,19 @@ declare module "http" {
1129
1146
  * @deprecated
1130
1147
  */
1131
1148
  on(event: "abort", listener: () => void): this;
1132
- on(event: "connect", listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
1149
+ on(
1150
+ event: "connect",
1151
+ listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1152
+ ): this;
1133
1153
  on(event: "continue", listener: () => void): this;
1134
1154
  on(event: "information", listener: (info: InformationEvent) => void): this;
1135
1155
  on(event: "response", listener: (response: IncomingMessage) => void): this;
1136
1156
  on(event: "socket", listener: (socket: Socket) => void): this;
1137
1157
  on(event: "timeout", listener: () => void): this;
1138
- on(event: "upgrade", listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
1158
+ on(
1159
+ event: "upgrade",
1160
+ listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1161
+ ): this;
1139
1162
  on(event: "close", listener: () => void): this;
1140
1163
  on(event: "drain", listener: () => void): this;
1141
1164
  on(event: "error", listener: (err: Error) => void): this;
@@ -1147,13 +1170,19 @@ declare module "http" {
1147
1170
  * @deprecated
1148
1171
  */
1149
1172
  once(event: "abort", listener: () => void): this;
1150
- once(event: "connect", listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
1173
+ once(
1174
+ event: "connect",
1175
+ listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1176
+ ): this;
1151
1177
  once(event: "continue", listener: () => void): this;
1152
1178
  once(event: "information", listener: (info: InformationEvent) => void): this;
1153
1179
  once(event: "response", listener: (response: IncomingMessage) => void): this;
1154
1180
  once(event: "socket", listener: (socket: Socket) => void): this;
1155
1181
  once(event: "timeout", listener: () => void): this;
1156
- once(event: "upgrade", listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void): this;
1182
+ once(
1183
+ event: "upgrade",
1184
+ listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1185
+ ): this;
1157
1186
  once(event: "close", listener: () => void): this;
1158
1187
  once(event: "drain", listener: () => void): this;
1159
1188
  once(event: "error", listener: (err: Error) => void): this;
@@ -1167,7 +1196,7 @@ declare module "http" {
1167
1196
  prependListener(event: "abort", listener: () => void): this;
1168
1197
  prependListener(
1169
1198
  event: "connect",
1170
- listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
1199
+ listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1171
1200
  ): this;
1172
1201
  prependListener(event: "continue", listener: () => void): this;
1173
1202
  prependListener(event: "information", listener: (info: InformationEvent) => void): this;
@@ -1176,7 +1205,7 @@ declare module "http" {
1176
1205
  prependListener(event: "timeout", listener: () => void): this;
1177
1206
  prependListener(
1178
1207
  event: "upgrade",
1179
- listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
1208
+ listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1180
1209
  ): this;
1181
1210
  prependListener(event: "close", listener: () => void): this;
1182
1211
  prependListener(event: "drain", listener: () => void): this;
@@ -1191,7 +1220,7 @@ declare module "http" {
1191
1220
  prependOnceListener(event: "abort", listener: () => void): this;
1192
1221
  prependOnceListener(
1193
1222
  event: "connect",
1194
- listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
1223
+ listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1195
1224
  ): this;
1196
1225
  prependOnceListener(event: "continue", listener: () => void): this;
1197
1226
  prependOnceListener(event: "information", listener: (info: InformationEvent) => void): this;
@@ -1200,7 +1229,7 @@ declare module "http" {
1200
1229
  prependOnceListener(event: "timeout", listener: () => void): this;
1201
1230
  prependOnceListener(
1202
1231
  event: "upgrade",
1203
- listener: (response: IncomingMessage, socket: Socket, head: Buffer) => void,
1232
+ listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1204
1233
  ): this;
1205
1234
  prependOnceListener(event: "close", listener: () => void): this;
1206
1235
  prependOnceListener(event: "drain", listener: () => void): this;
@@ -1452,7 +1481,7 @@ declare module "http" {
1452
1481
  https_proxy?: string | undefined;
1453
1482
  no_proxy?: string | undefined;
1454
1483
  }
1455
- interface AgentOptions extends Partial<TcpSocketConnectOpts> {
1484
+ interface AgentOptions extends NodeJS.PartialOptions<TcpSocketConnectOpts> {
1456
1485
  /**
1457
1486
  * Keep sockets around in a pool to be used by other requests in the future. Default = false
1458
1487
  */
@@ -1462,6 +1491,16 @@ declare module "http" {
1462
1491
  * Only relevant if keepAlive is set to true.
1463
1492
  */
1464
1493
  keepAliveMsecs?: number | undefined;
1494
+ /**
1495
+ * Milliseconds to subtract from
1496
+ * the server-provided `keep-alive: timeout=...` hint when determining socket
1497
+ * expiration time. This buffer helps ensure the agent closes the socket
1498
+ * slightly before the server does, reducing the chance of sending a request
1499
+ * on a socket that’s about to be closed by the server.
1500
+ * @since v24.7.0
1501
+ * @default 1000
1502
+ */
1503
+ agentKeepAliveTimeoutBuffer?: number | undefined;
1465
1504
  /**
1466
1505
  * Maximum number of sockets to allow per host. Default for Node 0.10 is 5, default for Node 0.12 is Infinity
1467
1506
  */