@psnext/slingcli 3.3.20260911-1 → 3.3.20260914-1

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 (420) hide show
  1. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/chunks/{chunk-VDBOM5UG.js → chunk-BRL3MDQL.js} +1 -1
  2. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/cli.js +1 -1
  3. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/index.js +1 -1
  4. package/node_modules/@earendil-works/pi-coding-agent/dist/bundle/rpc-entry.js +1 -1
  5. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/model-selector.js +79 -32
  6. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.browser.js +2 -0
  7. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +25 -8
  8. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.native.js +2 -0
  9. package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/getAwsChunkedEncodingStream.browser.js +2 -0
  10. package/node_modules/@smithy/core/dist-es/submodules/serde/util-stream/getAwsChunkedEncodingStream.js +23 -8
  11. package/node_modules/@smithy/core/package.json +1 -1
  12. package/node_modules/@types/node/README.md +2 -2
  13. package/node_modules/@types/node/assert/strict.d.ts +13 -56
  14. package/node_modules/@types/node/assert.d.ts +189 -190
  15. package/node_modules/@types/node/async_hooks.d.ts +151 -43
  16. package/node_modules/@types/node/buffer.buffer.d.ts +12 -13
  17. package/node_modules/@types/node/buffer.d.ts +103 -237
  18. package/node_modules/@types/node/child_process.d.ts +39 -154
  19. package/node_modules/@types/node/cluster.d.ts +238 -384
  20. package/node_modules/@types/node/console.d.ts +45 -404
  21. package/node_modules/@types/node/constants.d.ts +3 -10
  22. package/node_modules/@types/node/crypto.d.ts +1000 -1593
  23. package/node_modules/@types/node/dgram.d.ts +133 -81
  24. package/node_modules/@types/node/diagnostics_channel.d.ts +277 -59
  25. package/node_modules/@types/node/dns/promises.d.ts +9 -15
  26. package/node_modules/@types/node/dns.d.ts +136 -183
  27. package/node_modules/@types/node/domain.d.ts +12 -32
  28. package/node_modules/@types/node/events.d.ts +872 -840
  29. package/node_modules/@types/node/ffi.d.ts +486 -0
  30. package/node_modules/@types/node/fs/promises.d.ts +256 -85
  31. package/node_modules/@types/node/fs.d.ts +865 -525
  32. package/node_modules/@types/node/globals.d.ts +12 -34
  33. package/node_modules/@types/node/globals.typedarray.d.ts +63 -0
  34. package/node_modules/@types/node/http.d.ts +433 -312
  35. package/node_modules/@types/node/http2.d.ts +545 -891
  36. package/node_modules/@types/node/https.d.ts +64 -243
  37. package/node_modules/@types/node/index.d.ts +25 -7
  38. package/node_modules/@types/node/inspector/promises.d.ts +35 -0
  39. package/node_modules/@types/node/inspector.d.ts +70 -58
  40. package/node_modules/@types/node/inspector.generated.d.ts +764 -410
  41. package/node_modules/@types/node/module.d.ts +54 -219
  42. package/node_modules/@types/node/net.d.ts +208 -222
  43. package/node_modules/@types/node/os.d.ts +41 -49
  44. package/node_modules/@types/node/package.json +13 -3
  45. package/node_modules/@types/node/path/posix.d.ts +8 -0
  46. package/node_modules/@types/node/path/win32.d.ts +8 -0
  47. package/node_modules/@types/node/path.d.ts +119 -141
  48. package/node_modules/@types/node/perf_hooks.d.ts +339 -690
  49. package/node_modules/@types/node/process.d.ts +389 -205
  50. package/node_modules/@types/node/punycode.d.ts +3 -31
  51. package/node_modules/@types/node/querystring.d.ts +3 -16
  52. package/node_modules/@types/node/quic.d.ts +2153 -0
  53. package/node_modules/@types/node/readline/promises.d.ts +3 -6
  54. package/node_modules/@types/node/readline.d.ts +66 -152
  55. package/node_modules/@types/node/repl.d.ts +101 -109
  56. package/node_modules/@types/node/sea.d.ts +1 -116
  57. package/node_modules/@types/node/sqlite.d.ts +486 -68
  58. package/node_modules/@types/node/stream/consumers.d.ts +91 -15
  59. package/node_modules/@types/node/stream/iter.d.ts +452 -0
  60. package/node_modules/@types/node/stream/promises.d.ts +136 -15
  61. package/node_modules/@types/node/stream/web.d.ts +197 -454
  62. package/node_modules/@types/node/stream.d.ts +603 -491
  63. package/node_modules/@types/node/string_decoder.d.ts +3 -43
  64. package/node_modules/@types/node/test/reporters.d.ts +59 -0
  65. package/node_modules/@types/node/test.d.ts +513 -292
  66. package/node_modules/@types/node/timers/promises.d.ts +3 -18
  67. package/node_modules/@types/node/timers.d.ts +3 -141
  68. package/node_modules/@types/node/tls.d.ts +166 -257
  69. package/node_modules/@types/node/trace_events.d.ts +3 -97
  70. package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +7 -8
  71. package/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  72. package/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +2 -0
  73. package/node_modules/@types/node/ts5.6/index.d.ts +26 -6
  74. package/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  75. package/node_modules/@types/node/ts5.7/index.d.ts +118 -0
  76. package/node_modules/@types/node/tty.d.ts +61 -43
  77. package/node_modules/@types/node/url.d.ts +156 -584
  78. package/node_modules/@types/node/util/types.d.ts +558 -0
  79. package/node_modules/@types/node/util.d.ts +170 -1099
  80. package/node_modules/@types/node/v8.d.ts +175 -36
  81. package/node_modules/@types/node/vfs.d.ts +211 -0
  82. package/node_modules/@types/node/vm.d.ts +292 -209
  83. package/node_modules/@types/node/wasi.d.ts +24 -74
  84. package/node_modules/@types/node/web-globals/abortcontroller.d.ts +27 -2
  85. package/node_modules/@types/node/web-globals/blob.d.ts +23 -0
  86. package/node_modules/@types/node/web-globals/console.d.ts +9 -0
  87. package/node_modules/@types/node/web-globals/crypto.d.ts +39 -0
  88. package/node_modules/@types/node/web-globals/domexception.d.ts +15 -0
  89. package/node_modules/@types/node/web-globals/encoding.d.ts +11 -0
  90. package/node_modules/@types/node/web-globals/events.d.ts +9 -0
  91. package/node_modules/@types/node/web-globals/fetch.d.ts +14 -0
  92. package/node_modules/@types/node/web-globals/importmeta.d.ts +13 -0
  93. package/node_modules/@types/node/web-globals/messaging.d.ts +23 -0
  94. package/node_modules/@types/node/web-globals/navigator.d.ts +3 -0
  95. package/node_modules/@types/node/web-globals/performance.d.ts +45 -0
  96. package/node_modules/@types/node/web-globals/streams.d.ts +97 -0
  97. package/node_modules/@types/node/web-globals/timers.d.ts +44 -0
  98. package/node_modules/@types/node/web-globals/url.d.ts +24 -0
  99. package/node_modules/@types/node/worker_threads.d.ts +257 -407
  100. package/node_modules/@types/node/zlib/iter.d.ts +131 -0
  101. package/node_modules/@types/node/zlib.d.ts +24 -165
  102. package/node_modules/undici-types/agent.d.ts +12 -13
  103. package/node_modules/undici-types/api.d.ts +26 -26
  104. package/node_modules/undici-types/balanced-pool.d.ts +13 -12
  105. package/node_modules/undici-types/cache-interceptor.d.ts +179 -0
  106. package/node_modules/undici-types/client-stats.d.ts +15 -0
  107. package/node_modules/undici-types/client.d.ts +63 -37
  108. package/node_modules/undici-types/connector.d.ts +5 -2
  109. package/node_modules/undici-types/cookies.d.ts +3 -1
  110. package/node_modules/undici-types/diagnostics-channel.d.ts +18 -10
  111. package/node_modules/undici-types/dispatcher.d.ts +136 -139
  112. package/node_modules/undici-types/dispatcher1-wrapper.d.ts +7 -0
  113. package/node_modules/undici-types/env-http-proxy-agent.d.ts +4 -3
  114. package/node_modules/undici-types/errors.d.ts +92 -54
  115. package/node_modules/undici-types/eventsource.d.ts +9 -4
  116. package/node_modules/undici-types/fetch.d.ts +51 -25
  117. package/node_modules/undici-types/formdata.d.ts +7 -7
  118. package/node_modules/undici-types/global-dispatcher.d.ts +4 -4
  119. package/node_modules/undici-types/global-origin.d.ts +5 -5
  120. package/node_modules/undici-types/h2c-client.d.ts +73 -0
  121. package/node_modules/undici-types/handlers.d.ts +10 -9
  122. package/node_modules/undici-types/header.d.ts +162 -1
  123. package/node_modules/undici-types/index.d.ts +69 -47
  124. package/node_modules/undici-types/interceptors.d.ts +72 -9
  125. package/node_modules/undici-types/mock-agent.d.ts +36 -18
  126. package/node_modules/undici-types/mock-call-history.d.ts +111 -0
  127. package/node_modules/undici-types/mock-client.d.ts +6 -4
  128. package/node_modules/undici-types/mock-errors.d.ts +3 -3
  129. package/node_modules/undici-types/mock-interceptor.d.ts +26 -21
  130. package/node_modules/undici-types/mock-pool.d.ts +6 -4
  131. package/node_modules/undici-types/package.json +1 -1
  132. package/node_modules/undici-types/patch.d.ts +0 -4
  133. package/node_modules/undici-types/pool-stats.d.ts +8 -8
  134. package/node_modules/undici-types/pool.d.ts +14 -14
  135. package/node_modules/undici-types/proxy-agent.d.ts +14 -6
  136. package/node_modules/undici-types/readable.d.ts +19 -16
  137. package/node_modules/undici-types/retry-agent.d.ts +1 -1
  138. package/node_modules/undici-types/retry-handler.d.ts +19 -10
  139. package/node_modules/undici-types/round-robin-pool.d.ts +39 -0
  140. package/node_modules/undici-types/snapshot-agent.d.ts +113 -0
  141. package/node_modules/undici-types/socks5-proxy-agent.d.ts +25 -0
  142. package/node_modules/undici-types/util.d.ts +3 -3
  143. package/node_modules/undici-types/utility.d.ts +7 -0
  144. package/node_modules/undici-types/webidl.d.ts +148 -30
  145. package/node_modules/undici-types/websocket.d.ts +48 -10
  146. package/node_modules/zod/README.md +2 -2
  147. package/node_modules/zod/package.json +1 -1
  148. package/node_modules/zod/src/v4/classic/checks.ts +1 -0
  149. package/node_modules/zod/src/v4/classic/schemas.ts +14 -30
  150. package/node_modules/zod/src/v4/classic/tests/assignability.test.ts +1 -0
  151. package/node_modules/zod/src/v4/classic/tests/cyclic-data.test.ts +2 -11
  152. package/node_modules/zod/src/v4/classic/tests/firstparty.test.ts +0 -4
  153. package/node_modules/zod/src/v4/classic/tests/instance-footprint.test.ts +22 -0
  154. package/node_modules/zod/src/v4/classic/tests/instanceof.test.ts +1 -1
  155. package/node_modules/zod/src/v4/classic/tests/number.test.ts +39 -0
  156. package/node_modules/zod/src/v4/classic/tests/properties.test.ts +53 -137
  157. package/node_modules/zod/src/v4/classic/tests/string.test.ts +70 -1
  158. package/node_modules/zod/src/v4/classic/tests/to-json-schema.test.ts +87 -35
  159. package/node_modules/zod/src/v4/core/api.ts +21 -29
  160. package/node_modules/zod/src/v4/core/checks.ts +61 -1
  161. package/node_modules/zod/src/v4/core/compile.ts +35 -24
  162. package/node_modules/zod/src/v4/core/core.ts +1 -3
  163. package/node_modules/zod/src/v4/core/json-schema-processors.ts +9 -63
  164. package/node_modules/zod/src/v4/core/memoizer.ts +2 -5
  165. package/node_modules/zod/src/v4/core/regexes.ts +4 -0
  166. package/node_modules/zod/src/v4/core/schemas.ts +36 -109
  167. package/node_modules/zod/src/v4/core/tests/compile-differential.test.ts +35 -0
  168. package/node_modules/zod/src/v4/core/tests/compile.test.ts +177 -0
  169. package/node_modules/zod/src/v4/core/tests/url-no-canparse.test.ts +118 -16
  170. package/node_modules/zod/src/v4/core/to-json-schema.ts +1 -1
  171. package/node_modules/zod/src/v4/core/util.ts +0 -4
  172. package/node_modules/zod/src/v4/core/versions.ts +1 -1
  173. package/node_modules/zod/src/v4/core/visit.ts +0 -11
  174. package/node_modules/zod/src/v4/locales/ar.ts +1 -0
  175. package/node_modules/zod/src/v4/locales/az.ts +1 -0
  176. package/node_modules/zod/src/v4/locales/be.ts +1 -0
  177. package/node_modules/zod/src/v4/locales/bg.ts +1 -0
  178. package/node_modules/zod/src/v4/locales/bn.ts +1 -0
  179. package/node_modules/zod/src/v4/locales/ca.ts +1 -0
  180. package/node_modules/zod/src/v4/locales/ckb.ts +1 -0
  181. package/node_modules/zod/src/v4/locales/cs.ts +1 -0
  182. package/node_modules/zod/src/v4/locales/da.ts +1 -0
  183. package/node_modules/zod/src/v4/locales/de.ts +1 -0
  184. package/node_modules/zod/src/v4/locales/el.ts +1 -0
  185. package/node_modules/zod/src/v4/locales/en.ts +1 -0
  186. package/node_modules/zod/src/v4/locales/eo.ts +1 -0
  187. package/node_modules/zod/src/v4/locales/es.ts +1 -0
  188. package/node_modules/zod/src/v4/locales/fa.ts +1 -0
  189. package/node_modules/zod/src/v4/locales/fi.ts +1 -0
  190. package/node_modules/zod/src/v4/locales/fr-CA.ts +1 -0
  191. package/node_modules/zod/src/v4/locales/fr.ts +1 -0
  192. package/node_modules/zod/src/v4/locales/gu.ts +1 -0
  193. package/node_modules/zod/src/v4/locales/he.ts +1 -0
  194. package/node_modules/zod/src/v4/locales/hi.ts +1 -0
  195. package/node_modules/zod/src/v4/locales/hr.ts +1 -0
  196. package/node_modules/zod/src/v4/locales/hu.ts +1 -0
  197. package/node_modules/zod/src/v4/locales/hy.ts +1 -0
  198. package/node_modules/zod/src/v4/locales/id.ts +1 -0
  199. package/node_modules/zod/src/v4/locales/is.ts +1 -0
  200. package/node_modules/zod/src/v4/locales/it.ts +1 -0
  201. package/node_modules/zod/src/v4/locales/ja.ts +1 -0
  202. package/node_modules/zod/src/v4/locales/ka.ts +1 -0
  203. package/node_modules/zod/src/v4/locales/km.ts +1 -0
  204. package/node_modules/zod/src/v4/locales/kn.ts +1 -0
  205. package/node_modules/zod/src/v4/locales/ko.ts +1 -0
  206. package/node_modules/zod/src/v4/locales/lt.ts +1 -0
  207. package/node_modules/zod/src/v4/locales/mk.ts +1 -0
  208. package/node_modules/zod/src/v4/locales/ms.ts +1 -0
  209. package/node_modules/zod/src/v4/locales/ne.ts +1 -0
  210. package/node_modules/zod/src/v4/locales/nl.ts +1 -0
  211. package/node_modules/zod/src/v4/locales/nn.ts +1 -0
  212. package/node_modules/zod/src/v4/locales/no.ts +1 -0
  213. package/node_modules/zod/src/v4/locales/ota.ts +1 -0
  214. package/node_modules/zod/src/v4/locales/pl.ts +1 -0
  215. package/node_modules/zod/src/v4/locales/ps.ts +1 -0
  216. package/node_modules/zod/src/v4/locales/pt-BR.ts +1 -0
  217. package/node_modules/zod/src/v4/locales/pt.ts +1 -0
  218. package/node_modules/zod/src/v4/locales/ro.ts +1 -0
  219. package/node_modules/zod/src/v4/locales/ru.ts +1 -0
  220. package/node_modules/zod/src/v4/locales/sk.ts +1 -0
  221. package/node_modules/zod/src/v4/locales/sl.ts +1 -0
  222. package/node_modules/zod/src/v4/locales/sv.ts +1 -0
  223. package/node_modules/zod/src/v4/locales/ta.ts +1 -0
  224. package/node_modules/zod/src/v4/locales/tg.ts +1 -0
  225. package/node_modules/zod/src/v4/locales/th.ts +1 -0
  226. package/node_modules/zod/src/v4/locales/tk.ts +1 -0
  227. package/node_modules/zod/src/v4/locales/tr.ts +1 -0
  228. package/node_modules/zod/src/v4/locales/uk.ts +1 -0
  229. package/node_modules/zod/src/v4/locales/ur.ts +1 -0
  230. package/node_modules/zod/src/v4/locales/uz.ts +1 -0
  231. package/node_modules/zod/src/v4/locales/vi.ts +1 -0
  232. package/node_modules/zod/src/v4/locales/yo.ts +1 -0
  233. package/node_modules/zod/src/v4/locales/zh-CN.ts +1 -0
  234. package/node_modules/zod/src/v4/locales/zh-TW.ts +1 -0
  235. package/node_modules/zod/src/v4/mini/checks.ts +1 -0
  236. package/node_modules/zod/src/v4/mini/schemas.ts +12 -23
  237. package/node_modules/zod/src/v4/mini/tests/index.test.ts +56 -0
  238. package/node_modules/zod/src/v4/mini/tests/string.test.ts +7 -0
  239. package/node_modules/zod/v4/classic/checks.cjs +2 -1
  240. package/node_modules/zod/v4/classic/checks.d.cts +1 -1
  241. package/node_modules/zod/v4/classic/checks.d.ts +1 -1
  242. package/node_modules/zod/v4/classic/checks.js +1 -1
  243. package/node_modules/zod/v4/classic/schemas.cjs +11 -15
  244. package/node_modules/zod/v4/classic/schemas.d.cts +4 -6
  245. package/node_modules/zod/v4/classic/schemas.d.ts +4 -6
  246. package/node_modules/zod/v4/classic/schemas.js +9 -13
  247. package/node_modules/zod/v4/core/api.cjs +11 -23
  248. package/node_modules/zod/v4/core/api.d.cts +8 -4
  249. package/node_modules/zod/v4/core/api.d.ts +8 -4
  250. package/node_modules/zod/v4/core/api.js +11 -23
  251. package/node_modules/zod/v4/core/checks.cjs +32 -1
  252. package/node_modules/zod/v4/core/checks.d.cts +16 -0
  253. package/node_modules/zod/v4/core/checks.d.ts +16 -0
  254. package/node_modules/zod/v4/core/checks.js +31 -0
  255. package/node_modules/zod/v4/core/compile.cjs +12 -17
  256. package/node_modules/zod/v4/core/compile.js +13 -18
  257. package/node_modules/zod/v4/core/core.cjs +1 -1
  258. package/node_modules/zod/v4/core/core.js +1 -1
  259. package/node_modules/zod/v4/core/json-schema-processors.cjs +8 -44
  260. package/node_modules/zod/v4/core/json-schema-processors.d.cts +0 -1
  261. package/node_modules/zod/v4/core/json-schema-processors.d.ts +0 -1
  262. package/node_modules/zod/v4/core/json-schema-processors.js +8 -43
  263. package/node_modules/zod/v4/core/memoizer.cjs +2 -5
  264. package/node_modules/zod/v4/core/memoizer.js +2 -5
  265. package/node_modules/zod/v4/core/regexes.cjs +4 -2
  266. package/node_modules/zod/v4/core/regexes.d.cts +1 -0
  267. package/node_modules/zod/v4/core/regexes.d.ts +1 -0
  268. package/node_modules/zod/v4/core/regexes.js +2 -0
  269. package/node_modules/zod/v4/core/schemas.cjs +33 -73
  270. package/node_modules/zod/v4/core/schemas.d.cts +7 -22
  271. package/node_modules/zod/v4/core/schemas.d.ts +7 -22
  272. package/node_modules/zod/v4/core/schemas.js +30 -72
  273. package/node_modules/zod/v4/core/to-json-schema.cjs +0 -1
  274. package/node_modules/zod/v4/core/to-json-schema.d.cts +0 -3
  275. package/node_modules/zod/v4/core/to-json-schema.d.ts +0 -3
  276. package/node_modules/zod/v4/core/to-json-schema.js +1 -1
  277. package/node_modules/zod/v4/core/util.cjs +0 -4
  278. package/node_modules/zod/v4/core/util.js +0 -4
  279. package/node_modules/zod/v4/core/versions.cjs +1 -1
  280. package/node_modules/zod/v4/core/versions.js +1 -1
  281. package/node_modules/zod/v4/core/visit.cjs +0 -12
  282. package/node_modules/zod/v4/core/visit.js +0 -12
  283. package/node_modules/zod/v4/locales/ar.cjs +1 -0
  284. package/node_modules/zod/v4/locales/ar.js +1 -0
  285. package/node_modules/zod/v4/locales/az.cjs +1 -0
  286. package/node_modules/zod/v4/locales/az.js +1 -0
  287. package/node_modules/zod/v4/locales/be.cjs +1 -0
  288. package/node_modules/zod/v4/locales/be.js +1 -0
  289. package/node_modules/zod/v4/locales/bg.cjs +1 -0
  290. package/node_modules/zod/v4/locales/bg.js +1 -0
  291. package/node_modules/zod/v4/locales/bn.cjs +1 -0
  292. package/node_modules/zod/v4/locales/bn.js +1 -0
  293. package/node_modules/zod/v4/locales/ca.cjs +1 -0
  294. package/node_modules/zod/v4/locales/ca.js +1 -0
  295. package/node_modules/zod/v4/locales/ckb.cjs +1 -0
  296. package/node_modules/zod/v4/locales/ckb.js +1 -0
  297. package/node_modules/zod/v4/locales/cs.cjs +1 -0
  298. package/node_modules/zod/v4/locales/cs.js +1 -0
  299. package/node_modules/zod/v4/locales/da.cjs +1 -0
  300. package/node_modules/zod/v4/locales/da.js +1 -0
  301. package/node_modules/zod/v4/locales/de.cjs +1 -0
  302. package/node_modules/zod/v4/locales/de.js +1 -0
  303. package/node_modules/zod/v4/locales/el.cjs +1 -0
  304. package/node_modules/zod/v4/locales/el.js +1 -0
  305. package/node_modules/zod/v4/locales/en.cjs +1 -0
  306. package/node_modules/zod/v4/locales/en.js +1 -0
  307. package/node_modules/zod/v4/locales/eo.cjs +1 -0
  308. package/node_modules/zod/v4/locales/eo.js +1 -0
  309. package/node_modules/zod/v4/locales/es.cjs +1 -0
  310. package/node_modules/zod/v4/locales/es.js +1 -0
  311. package/node_modules/zod/v4/locales/fa.cjs +1 -0
  312. package/node_modules/zod/v4/locales/fa.js +1 -0
  313. package/node_modules/zod/v4/locales/fi.cjs +1 -0
  314. package/node_modules/zod/v4/locales/fi.js +1 -0
  315. package/node_modules/zod/v4/locales/fr-CA.cjs +1 -0
  316. package/node_modules/zod/v4/locales/fr-CA.js +1 -0
  317. package/node_modules/zod/v4/locales/fr.cjs +1 -0
  318. package/node_modules/zod/v4/locales/fr.js +1 -0
  319. package/node_modules/zod/v4/locales/gu.cjs +1 -0
  320. package/node_modules/zod/v4/locales/gu.js +1 -0
  321. package/node_modules/zod/v4/locales/he.cjs +1 -0
  322. package/node_modules/zod/v4/locales/he.js +1 -0
  323. package/node_modules/zod/v4/locales/hi.cjs +1 -0
  324. package/node_modules/zod/v4/locales/hi.js +1 -0
  325. package/node_modules/zod/v4/locales/hr.cjs +1 -0
  326. package/node_modules/zod/v4/locales/hr.js +1 -0
  327. package/node_modules/zod/v4/locales/hu.cjs +1 -0
  328. package/node_modules/zod/v4/locales/hu.js +1 -0
  329. package/node_modules/zod/v4/locales/hy.cjs +1 -0
  330. package/node_modules/zod/v4/locales/hy.js +1 -0
  331. package/node_modules/zod/v4/locales/id.cjs +1 -0
  332. package/node_modules/zod/v4/locales/id.js +1 -0
  333. package/node_modules/zod/v4/locales/is.cjs +1 -0
  334. package/node_modules/zod/v4/locales/is.js +1 -0
  335. package/node_modules/zod/v4/locales/it.cjs +1 -0
  336. package/node_modules/zod/v4/locales/it.js +1 -0
  337. package/node_modules/zod/v4/locales/ja.cjs +1 -0
  338. package/node_modules/zod/v4/locales/ja.js +1 -0
  339. package/node_modules/zod/v4/locales/ka.cjs +1 -0
  340. package/node_modules/zod/v4/locales/ka.js +1 -0
  341. package/node_modules/zod/v4/locales/km.cjs +1 -0
  342. package/node_modules/zod/v4/locales/km.js +1 -0
  343. package/node_modules/zod/v4/locales/kn.cjs +1 -0
  344. package/node_modules/zod/v4/locales/kn.js +1 -0
  345. package/node_modules/zod/v4/locales/ko.cjs +1 -0
  346. package/node_modules/zod/v4/locales/ko.js +1 -0
  347. package/node_modules/zod/v4/locales/lt.cjs +1 -0
  348. package/node_modules/zod/v4/locales/lt.js +1 -0
  349. package/node_modules/zod/v4/locales/mk.cjs +1 -0
  350. package/node_modules/zod/v4/locales/mk.js +1 -0
  351. package/node_modules/zod/v4/locales/ms.cjs +1 -0
  352. package/node_modules/zod/v4/locales/ms.js +1 -0
  353. package/node_modules/zod/v4/locales/ne.cjs +1 -0
  354. package/node_modules/zod/v4/locales/ne.js +1 -0
  355. package/node_modules/zod/v4/locales/nl.cjs +1 -0
  356. package/node_modules/zod/v4/locales/nl.js +1 -0
  357. package/node_modules/zod/v4/locales/nn.cjs +1 -0
  358. package/node_modules/zod/v4/locales/nn.js +1 -0
  359. package/node_modules/zod/v4/locales/no.cjs +1 -0
  360. package/node_modules/zod/v4/locales/no.js +1 -0
  361. package/node_modules/zod/v4/locales/ota.cjs +1 -0
  362. package/node_modules/zod/v4/locales/ota.js +1 -0
  363. package/node_modules/zod/v4/locales/pl.cjs +1 -0
  364. package/node_modules/zod/v4/locales/pl.js +1 -0
  365. package/node_modules/zod/v4/locales/ps.cjs +1 -0
  366. package/node_modules/zod/v4/locales/ps.js +1 -0
  367. package/node_modules/zod/v4/locales/pt-BR.cjs +1 -0
  368. package/node_modules/zod/v4/locales/pt-BR.js +1 -0
  369. package/node_modules/zod/v4/locales/pt.cjs +1 -0
  370. package/node_modules/zod/v4/locales/pt.js +1 -0
  371. package/node_modules/zod/v4/locales/ro.cjs +1 -0
  372. package/node_modules/zod/v4/locales/ro.js +1 -0
  373. package/node_modules/zod/v4/locales/ru.cjs +1 -0
  374. package/node_modules/zod/v4/locales/ru.js +1 -0
  375. package/node_modules/zod/v4/locales/sk.cjs +1 -0
  376. package/node_modules/zod/v4/locales/sk.js +1 -0
  377. package/node_modules/zod/v4/locales/sl.cjs +1 -0
  378. package/node_modules/zod/v4/locales/sl.js +1 -0
  379. package/node_modules/zod/v4/locales/sv.cjs +1 -0
  380. package/node_modules/zod/v4/locales/sv.js +1 -0
  381. package/node_modules/zod/v4/locales/ta.cjs +1 -0
  382. package/node_modules/zod/v4/locales/ta.js +1 -0
  383. package/node_modules/zod/v4/locales/tg.cjs +1 -0
  384. package/node_modules/zod/v4/locales/tg.js +1 -0
  385. package/node_modules/zod/v4/locales/th.cjs +1 -0
  386. package/node_modules/zod/v4/locales/th.js +1 -0
  387. package/node_modules/zod/v4/locales/tk.cjs +1 -0
  388. package/node_modules/zod/v4/locales/tk.js +1 -0
  389. package/node_modules/zod/v4/locales/tr.cjs +1 -0
  390. package/node_modules/zod/v4/locales/tr.js +1 -0
  391. package/node_modules/zod/v4/locales/uk.cjs +1 -0
  392. package/node_modules/zod/v4/locales/uk.js +1 -0
  393. package/node_modules/zod/v4/locales/ur.cjs +1 -0
  394. package/node_modules/zod/v4/locales/ur.js +1 -0
  395. package/node_modules/zod/v4/locales/uz.cjs +1 -0
  396. package/node_modules/zod/v4/locales/uz.js +1 -0
  397. package/node_modules/zod/v4/locales/vi.cjs +1 -0
  398. package/node_modules/zod/v4/locales/vi.js +1 -0
  399. package/node_modules/zod/v4/locales/yo.cjs +1 -0
  400. package/node_modules/zod/v4/locales/yo.js +1 -0
  401. package/node_modules/zod/v4/locales/zh-CN.cjs +1 -0
  402. package/node_modules/zod/v4/locales/zh-CN.js +1 -0
  403. package/node_modules/zod/v4/locales/zh-TW.cjs +1 -0
  404. package/node_modules/zod/v4/locales/zh-TW.js +1 -0
  405. package/node_modules/zod/v4/mini/checks.cjs +2 -1
  406. package/node_modules/zod/v4/mini/checks.d.cts +1 -1
  407. package/node_modules/zod/v4/mini/checks.d.ts +1 -1
  408. package/node_modules/zod/v4/mini/checks.js +1 -1
  409. package/node_modules/zod/v4/mini/schemas.cjs +11 -13
  410. package/node_modules/zod/v4/mini/schemas.d.cts +1 -4
  411. package/node_modules/zod/v4/mini/schemas.d.ts +1 -4
  412. package/node_modules/zod/v4/mini/schemas.js +9 -11
  413. package/package.json +2 -2
  414. package/slingshot/index.js +183 -182
  415. package/node_modules/@types/node/compatibility/disposable.d.ts +0 -14
  416. package/node_modules/@types/node/compatibility/index.d.ts +0 -9
  417. package/node_modules/@types/node/compatibility/indexable.d.ts +0 -20
  418. package/node_modules/@types/node/compatibility/iterators.d.ts +0 -20
  419. package/node_modules/undici-types/file.d.ts +0 -39
  420. package/node_modules/undici-types/filereader.d.ts +0 -54
@@ -1,51 +1,10 @@
1
- /**
2
- * To use the HTTP server and client one must import the `node:http` module.
3
- *
4
- * The HTTP interfaces in Node.js are designed to support many features
5
- * of the protocol which have been traditionally difficult to use.
6
- * In particular, large, possibly chunk-encoded, messages. The interface is
7
- * careful to never buffer entire requests or responses, so the
8
- * user is able to stream data.
9
- *
10
- * HTTP message headers are represented by an object like this:
11
- *
12
- * ```json
13
- * { "content-length": "123",
14
- * "content-type": "text/plain",
15
- * "connection": "keep-alive",
16
- * "host": "example.com",
17
- * "accept": "*" }
18
- * ```
19
- *
20
- * Keys are lowercased. Values are not modified.
21
- *
22
- * In order to support the full spectrum of possible HTTP applications, the Node.js
23
- * HTTP API is very low-level. It deals with stream handling and message
24
- * parsing only. It parses a message into headers and body but it does not
25
- * parse the actual headers or the body.
26
- *
27
- * See `message.headers` for details on how duplicate headers are handled.
28
- *
29
- * The raw headers as they were received are retained in the `rawHeaders` property, which is an array of `[key, value, key2, value2, ...]`. For
30
- * example, the previous message header object might have a `rawHeaders` list like the following:
31
- *
32
- * ```js
33
- * [ 'ConTent-Length', '123456',
34
- * 'content-LENGTH', '123',
35
- * 'content-type', 'text/plain',
36
- * 'CONNECTION', 'keep-alive',
37
- * 'Host', 'example.com',
38
- * 'accepT', '*' ]
39
- * ```
40
- * @see [source](https://github.com/nodejs/node/blob/v22.x/lib/http.js)
41
- */
42
- declare module "http" {
1
+ declare module "node:http" {
43
2
  import { NonSharedBuffer } from "node:buffer";
44
- import * as stream from "node:stream";
45
- import { URL } from "node:url";
46
3
  import { LookupOptions } from "node:dns";
47
4
  import { EventEmitter } from "node:events";
48
- import { LookupFunction, Server as NetServer, Socket, TcpSocketConnectOpts } from "node:net";
5
+ import * as net from "node:net";
6
+ import * as stream from "node:stream";
7
+ import { URL } from "node:url";
49
8
  // incoming headers will never contain number
50
9
  interface IncomingHttpHeaders extends NodeJS.Dict<string | string[]> {
51
10
  accept?: string | undefined;
@@ -216,10 +175,11 @@ declare module "http" {
216
175
  headers?: OutgoingHttpHeaders | readonly string[] | undefined;
217
176
  host?: string | null | undefined;
218
177
  hostname?: string | null | undefined;
178
+ httpValidation?: "strict" | "relaxed" | "insecure" | undefined;
219
179
  insecureHTTPParser?: boolean | undefined;
220
180
  localAddress?: string | undefined;
221
181
  localPort?: number | undefined;
222
- lookup?: LookupFunction | undefined;
182
+ lookup?: net.LookupFunction | undefined;
223
183
  /**
224
184
  * @default 16384
225
185
  */
@@ -265,14 +225,14 @@ declare module "http" {
265
225
  * The number of milliseconds of inactivity a server needs to wait for additional incoming data,
266
226
  * after it has finished writing the last response, before a socket will be destroyed.
267
227
  * @see Server.keepAliveTimeout for more information.
268
- * @default 5000
228
+ * @default 65000
269
229
  * @since v18.0.0
270
230
  */
271
231
  keepAliveTimeout?: number | undefined;
272
232
  /**
273
233
  * An additional buffer time added to the
274
234
  * `server.keepAliveTimeout` to extend the internal socket timeout.
275
- * @since 22.19.0
235
+ * @since 24.6.0
276
236
  * @default 1000
277
237
  */
278
238
  keepAliveTimeoutBuffer?: number | undefined;
@@ -295,6 +255,21 @@ declare module "http" {
295
255
  * @since v20.1.0
296
256
  */
297
257
  highWaterMark?: number | undefined;
258
+ /**
259
+ * Controls HTTP header value validation strictness
260
+ * for incoming requests. Accepted values are:
261
+ * * `'strict'`: Strictest validation; rejects any non-ASCII or control
262
+ * characters in header values.
263
+ * * `'relaxed'`: Allows a limited set of non-ASCII characters in header
264
+ * values, aligning with the
265
+ * [Fetch specification](https://fetch.spec.whatwg.org/).
266
+ * * `'insecure'`: Disables all header value validation (equivalent to
267
+ * `insecureHTTPParser: true`).
268
+ *
269
+ * Cannot be used together with `insecureHTTPParser`. **Default:** `'strict'`.
270
+ * @since v26.3.0
271
+ */
272
+ httpValidation?: "strict" | "relaxed" | "insecure" | undefined;
298
273
  /**
299
274
  * Use an insecure HTTP parser that accepts invalid HTTP headers when `true`.
300
275
  * Using the insecure parser should be avoided.
@@ -324,7 +299,7 @@ declare module "http" {
324
299
  requireHostHeader?: boolean | undefined;
325
300
  /**
326
301
  * If set to `true`, it enables keep-alive functionality on the socket immediately after a new incoming connection is received,
327
- * similarly on what is done in `socket.setKeepAlive([enable][, initialDelay])`.
302
+ * similarly on what is done in `socket.setKeepAlive()`.
328
303
  * @default false
329
304
  * @since v16.5.0
330
305
  */
@@ -340,24 +315,57 @@ declare module "http" {
340
315
  * If the header's value is an array, the items will be joined using `; `.
341
316
  */
342
317
  uniqueHeaders?: Array<string | string[]> | undefined;
318
+ /**
319
+ * A callback which receives an
320
+ * incoming request and returns a boolean, to control which upgrade attempts
321
+ * should be accepted. Accepted upgrades will fire an `'upgrade'` event (or
322
+ * their sockets will be destroyed, if no listener is registered) while
323
+ * rejected upgrades will fire a `'request'` event like any non-upgrade
324
+ * request.
325
+ * @since v24.9.0
326
+ * @default () => server.listenerCount('upgrade') > 0
327
+ */
328
+ shouldUpgradeCallback?: ((request: InstanceType<Request>) => boolean) | undefined;
343
329
  /**
344
330
  * If set to `true`, an error is thrown when writing to an HTTP response which does not have a body.
345
331
  * @default false
346
332
  * @since v18.17.0, v20.2.0
347
333
  */
348
334
  rejectNonStandardBodyWrites?: boolean | undefined;
335
+ /**
336
+ * If set to `true`, requests without `Content-Length`
337
+ * or `Transfer-Encoding` headers (indicating no body) will be initialized with an
338
+ * already-ended body stream, so they will never emit any stream events
339
+ * (like `'data'` or `'end'`). You can use `req.readableEnded` to detect this case.
340
+ * @since v25.1.0
341
+ * @default false
342
+ */
343
+ optimizeEmptyRequests?: boolean | undefined;
349
344
  }
350
345
  type RequestListener<
351
346
  Request extends typeof IncomingMessage = typeof IncomingMessage,
352
347
  Response extends typeof ServerResponse<InstanceType<Request>> = typeof ServerResponse,
353
- > = (req: InstanceType<Request>, res: InstanceType<Response> & { req: InstanceType<Request> }) => void;
348
+ > = (request: InstanceType<Request>, response: InstanceType<Response> & { req: InstanceType<Request> }) => void;
349
+ interface ServerEventMap<
350
+ Request extends typeof IncomingMessage = typeof IncomingMessage,
351
+ Response extends typeof ServerResponse<InstanceType<Request>> = typeof ServerResponse,
352
+ > extends net.ServerEventMap {
353
+ "checkContinue": Parameters<RequestListener<Request, Response>>;
354
+ "checkExpectation": Parameters<RequestListener<Request, Response>>;
355
+ "clientError": [exception: Error, socket: stream.Duplex];
356
+ "connect": [request: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer];
357
+ "connection": [socket: net.Socket];
358
+ "dropRequest": [request: InstanceType<Request>, socket: stream.Duplex];
359
+ "request": Parameters<RequestListener<Request, Response>>;
360
+ "upgrade": [req: InstanceType<Request>, stream: stream.Duplex, head: NonSharedBuffer];
361
+ }
354
362
  /**
355
363
  * @since v0.1.17
356
364
  */
357
365
  class Server<
358
366
  Request extends typeof IncomingMessage = typeof IncomingMessage,
359
367
  Response extends typeof ServerResponse<InstanceType<Request>> = typeof ServerResponse,
360
- > extends NetServer {
368
+ > extends net.Server {
361
369
  constructor(requestListener?: RequestListener<Request, Response>);
362
370
  constructor(options: ServerOptions<Request, Response>, requestListener?: RequestListener<Request, Response>);
363
371
  /**
@@ -374,8 +382,8 @@ declare module "http" {
374
382
  * @since v0.9.12
375
383
  * @param [msecs=0 (no timeout)]
376
384
  */
377
- setTimeout(msecs?: number, callback?: (socket: Socket) => void): this;
378
- setTimeout(callback: (socket: Socket) => void): this;
385
+ setTimeout(msecs?: number, callback?: (socket: net.Socket) => void): this;
386
+ setTimeout(callback: (socket: net.Socket) => void): this;
379
387
  /**
380
388
  * Limits maximum incoming headers count. If set to 0, no limit will be applied.
381
389
  * @since v0.7.0
@@ -447,7 +455,7 @@ declare module "http" {
447
455
  * the socket timeout slightly beyond the advertised keep-alive timeout.
448
456
  *
449
457
  * This option applies only to new incoming connections.
450
- * @since v22.19.0
458
+ * @since v24.6.0
451
459
  * @default 1000
452
460
  */
453
461
  keepAliveTimeoutBuffer: number;
@@ -475,126 +483,64 @@ declare module "http" {
475
483
  * @since v18.2.0
476
484
  */
477
485
  closeIdleConnections(): void;
478
- addListener(event: string, listener: (...args: any[]) => void): this;
479
- addListener(event: "close", listener: () => void): this;
480
- addListener(event: "connection", listener: (socket: Socket) => void): this;
481
- addListener(event: "error", listener: (err: Error) => void): this;
482
- addListener(event: "listening", listener: () => void): this;
483
- addListener(event: "checkContinue", listener: RequestListener<Request, Response>): this;
484
- addListener(event: "checkExpectation", listener: RequestListener<Request, Response>): this;
485
- addListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this;
486
- addListener(
487
- event: "connect",
488
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
489
- ): this;
490
- addListener(event: "dropRequest", listener: (req: InstanceType<Request>, socket: stream.Duplex) => void): this;
491
- addListener(event: "request", listener: RequestListener<Request, Response>): this;
492
- addListener(
493
- event: "upgrade",
494
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
495
- ): this;
496
- emit(event: string, ...args: any[]): boolean;
497
- emit(event: "close"): boolean;
498
- emit(event: "connection", socket: Socket): boolean;
499
- emit(event: "error", err: Error): boolean;
500
- emit(event: "listening"): boolean;
501
- emit(
502
- event: "checkContinue",
503
- req: InstanceType<Request>,
504
- res: InstanceType<Response> & { req: InstanceType<Request> },
505
- ): boolean;
506
- emit(
507
- event: "checkExpectation",
508
- req: InstanceType<Request>,
509
- res: InstanceType<Response> & { req: InstanceType<Request> },
510
- ): boolean;
511
- emit(event: "clientError", err: Error, socket: stream.Duplex): boolean;
512
- emit(event: "connect", req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer): boolean;
513
- emit(event: "dropRequest", req: InstanceType<Request>, socket: stream.Duplex): boolean;
514
- emit(
515
- event: "request",
516
- req: InstanceType<Request>,
517
- res: InstanceType<Response> & { req: InstanceType<Request> },
518
- ): boolean;
519
- emit(event: "upgrade", req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer): boolean;
520
- on(event: string, listener: (...args: any[]) => void): this;
521
- on(event: "close", listener: () => void): this;
522
- on(event: "connection", listener: (socket: Socket) => void): this;
523
- on(event: "error", listener: (err: Error) => void): this;
524
- on(event: "listening", listener: () => void): this;
525
- on(event: "checkContinue", listener: RequestListener<Request, Response>): this;
526
- on(event: "checkExpectation", listener: RequestListener<Request, Response>): this;
527
- on(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this;
528
- on(
529
- event: "connect",
530
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
486
+ // #region InternalEventEmitter
487
+ addListener<E extends keyof ServerEventMap>(
488
+ eventName: E,
489
+ listener: (...args: ServerEventMap<Request, Response>[E]) => void,
531
490
  ): this;
532
- on(event: "dropRequest", listener: (req: InstanceType<Request>, socket: stream.Duplex) => void): this;
533
- on(event: "request", listener: RequestListener<Request, Response>): this;
534
- on(
535
- event: "upgrade",
536
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
491
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
492
+ emit<E extends keyof ServerEventMap>(eventName: E, ...args: ServerEventMap<Request, Response>[E]): boolean;
493
+ emit(eventName: string | symbol, ...args: any[]): boolean;
494
+ listenerCount<E extends keyof ServerEventMap>(
495
+ eventName: E,
496
+ listener?: (...args: ServerEventMap<Request, Response>[E]) => void,
497
+ ): number;
498
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
499
+ listeners<E extends keyof ServerEventMap>(
500
+ eventName: E,
501
+ ): ((...args: ServerEventMap<Request, Response>[E]) => void)[];
502
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
503
+ off<E extends keyof ServerEventMap>(
504
+ eventName: E,
505
+ listener: (...args: ServerEventMap<Request, Response>[E]) => void,
537
506
  ): this;
538
- once(event: string, listener: (...args: any[]) => void): this;
539
- once(event: "close", listener: () => void): this;
540
- once(event: "connection", listener: (socket: Socket) => void): this;
541
- once(event: "error", listener: (err: Error) => void): this;
542
- once(event: "listening", listener: () => void): this;
543
- once(event: "checkContinue", listener: RequestListener<Request, Response>): this;
544
- once(event: "checkExpectation", listener: RequestListener<Request, Response>): this;
545
- once(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this;
546
- once(
547
- event: "connect",
548
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
507
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
508
+ on<E extends keyof ServerEventMap>(
509
+ eventName: E,
510
+ listener: (...args: ServerEventMap<Request, Response>[E]) => void,
549
511
  ): this;
550
- once(event: "dropRequest", listener: (req: InstanceType<Request>, socket: stream.Duplex) => void): this;
551
- once(event: "request", listener: RequestListener<Request, Response>): this;
552
- once(
553
- event: "upgrade",
554
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
512
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
513
+ once<E extends keyof ServerEventMap>(
514
+ eventName: E,
515
+ listener: (...args: ServerEventMap<Request, Response>[E]) => void,
555
516
  ): this;
556
- prependListener(event: string, listener: (...args: any[]) => void): this;
557
- prependListener(event: "close", listener: () => void): this;
558
- prependListener(event: "connection", listener: (socket: Socket) => void): this;
559
- prependListener(event: "error", listener: (err: Error) => void): this;
560
- prependListener(event: "listening", listener: () => void): this;
561
- prependListener(event: "checkContinue", listener: RequestListener<Request, Response>): this;
562
- prependListener(event: "checkExpectation", listener: RequestListener<Request, Response>): this;
563
- prependListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this;
564
- prependListener(
565
- event: "connect",
566
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
517
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
518
+ prependListener<E extends keyof ServerEventMap>(
519
+ eventName: E,
520
+ listener: (...args: ServerEventMap<Request, Response>[E]) => void,
567
521
  ): this;
568
- prependListener(
569
- event: "dropRequest",
570
- listener: (req: InstanceType<Request>, socket: stream.Duplex) => void,
522
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
523
+ prependOnceListener<E extends keyof ServerEventMap>(
524
+ eventName: E,
525
+ listener: (...args: ServerEventMap<Request, Response>[E]) => void,
571
526
  ): this;
572
- prependListener(event: "request", listener: RequestListener<Request, Response>): this;
573
- prependListener(
574
- event: "upgrade",
575
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
576
- ): this;
577
- prependOnceListener(event: string, listener: (...args: any[]) => void): this;
578
- prependOnceListener(event: "close", listener: () => void): this;
579
- prependOnceListener(event: "connection", listener: (socket: Socket) => void): this;
580
- prependOnceListener(event: "error", listener: (err: Error) => void): this;
581
- prependOnceListener(event: "listening", listener: () => void): this;
582
- prependOnceListener(event: "checkContinue", listener: RequestListener<Request, Response>): this;
583
- prependOnceListener(event: "checkExpectation", listener: RequestListener<Request, Response>): this;
584
- prependOnceListener(event: "clientError", listener: (err: Error, socket: stream.Duplex) => void): this;
585
- prependOnceListener(
586
- event: "connect",
587
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
588
- ): this;
589
- prependOnceListener(
590
- event: "dropRequest",
591
- listener: (req: InstanceType<Request>, socket: stream.Duplex) => void,
592
- ): this;
593
- prependOnceListener(event: "request", listener: RequestListener<Request, Response>): this;
594
- prependOnceListener(
595
- event: "upgrade",
596
- listener: (req: InstanceType<Request>, socket: stream.Duplex, head: NonSharedBuffer) => void,
527
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
528
+ rawListeners<E extends keyof ServerEventMap>(
529
+ eventName: E,
530
+ ): ((...args: ServerEventMap<Request, Response>[E]) => void)[];
531
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
532
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
533
+ removeAllListeners<E extends keyof ServerEventMap>(eventName?: E): this;
534
+ removeAllListeners(eventName?: string | symbol): this;
535
+ removeListener<E extends keyof ServerEventMap>(
536
+ eventName: E,
537
+ listener: (...args: ServerEventMap<Request, Response>[E]) => void,
597
538
  ): this;
539
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
540
+ // #endregion
541
+ }
542
+ interface OutgoingMessageEventMap extends stream.WritableEventMap {
543
+ "prefinish": [];
598
544
  }
599
545
  /**
600
546
  * This class serves as the parent class of {@link ClientRequest} and {@link ServerResponse}. It is an abstract outgoing message from
@@ -602,6 +548,7 @@ declare module "http" {
602
548
  * @since v0.1.17
603
549
  */
604
550
  class OutgoingMessage<Request extends IncomingMessage = IncomingMessage> extends stream.Writable {
551
+ constructor();
605
552
  readonly req: Request;
606
553
  chunkedEncoding: boolean;
607
554
  shouldKeepAlive: boolean;
@@ -621,7 +568,7 @@ declare module "http" {
621
568
  * @since v0.3.0
622
569
  * @deprecated Since v15.12.0,v14.17.1 - Use `socket` instead.
623
570
  */
624
- readonly connection: Socket | null;
571
+ readonly connection: net.Socket | null;
625
572
  /**
626
573
  * Reference to the underlying socket. Usually, users will not want to access
627
574
  * this property.
@@ -629,8 +576,7 @@ declare module "http" {
629
576
  * After calling `outgoingMessage.end()`, this property will be nulled.
630
577
  * @since v0.3.0
631
578
  */
632
- readonly socket: Socket | null;
633
- constructor();
579
+ readonly socket: net.Socket | null;
634
580
  /**
635
581
  * Once a socket is associated with the message and is connected, `socket.setTimeout()` will be called with `msecs` as the first parameter.
636
582
  * @since v0.9.12
@@ -788,6 +734,61 @@ declare module "http" {
788
734
  * @since v1.6.0
789
735
  */
790
736
  flushHeaders(): void;
737
+ // #region InternalEventEmitter
738
+ addListener<E extends keyof OutgoingMessageEventMap>(
739
+ eventName: E,
740
+ listener: (...args: OutgoingMessageEventMap[E]) => void,
741
+ ): this;
742
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
743
+ emit<E extends keyof OutgoingMessageEventMap>(eventName: E, ...args: OutgoingMessageEventMap[E]): boolean;
744
+ emit(eventName: string | symbol, ...args: any[]): boolean;
745
+ listenerCount<E extends keyof OutgoingMessageEventMap>(
746
+ eventName: E,
747
+ listener?: (...args: OutgoingMessageEventMap[E]) => void,
748
+ ): number;
749
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
750
+ listeners<E extends keyof OutgoingMessageEventMap>(
751
+ eventName: E,
752
+ ): ((...args: OutgoingMessageEventMap[E]) => void)[];
753
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
754
+ off<E extends keyof OutgoingMessageEventMap>(
755
+ eventName: E,
756
+ listener: (...args: OutgoingMessageEventMap[E]) => void,
757
+ ): this;
758
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
759
+ on<E extends keyof OutgoingMessageEventMap>(
760
+ eventName: E,
761
+ listener: (...args: OutgoingMessageEventMap[E]) => void,
762
+ ): this;
763
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
764
+ once<E extends keyof OutgoingMessageEventMap>(
765
+ eventName: E,
766
+ listener: (...args: OutgoingMessageEventMap[E]) => void,
767
+ ): this;
768
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
769
+ prependListener<E extends keyof OutgoingMessageEventMap>(
770
+ eventName: E,
771
+ listener: (...args: OutgoingMessageEventMap[E]) => void,
772
+ ): this;
773
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
774
+ prependOnceListener<E extends keyof OutgoingMessageEventMap>(
775
+ eventName: E,
776
+ listener: (...args: OutgoingMessageEventMap[E]) => void,
777
+ ): this;
778
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
779
+ rawListeners<E extends keyof OutgoingMessageEventMap>(
780
+ eventName: E,
781
+ ): ((...args: OutgoingMessageEventMap[E]) => void)[];
782
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
783
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
784
+ removeAllListeners<E extends keyof OutgoingMessageEventMap>(eventName?: E): this;
785
+ removeAllListeners(eventName?: string | symbol): this;
786
+ removeListener<E extends keyof OutgoingMessageEventMap>(
787
+ eventName: E,
788
+ listener: (...args: OutgoingMessageEventMap[E]) => void,
789
+ ): this;
790
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
791
+ // #endregion
791
792
  }
792
793
  /**
793
794
  * This object is created internally by an HTTP server, not by the user. It is
@@ -832,8 +833,8 @@ declare module "http" {
832
833
  */
833
834
  strictContentLength: boolean;
834
835
  constructor(req: Request);
835
- assignSocket(socket: Socket): void;
836
- detachSocket(socket: Socket): void;
836
+ assignSocket(socket: net.Socket): void;
837
+ detachSocket(socket: net.Socket): void;
837
838
  /**
838
839
  * Sends an HTTP/1.1 100 Continue message to the client, indicating that
839
840
  * the request body should be sent. See the `'checkContinue'` event on `Server`.
@@ -928,7 +929,7 @@ declare module "http" {
928
929
  * been transmitted are equal or not.
929
930
  *
930
931
  * Attempting to set a header field name or value that contains invalid characters
931
- * will result in a [`TypeError`](https://nodejs.org/docs/latest-v22.x/api/errors.html#class-typeerror) being thrown.
932
+ * will result in a `Error` being thrown.
932
933
  * @since v0.1.30
933
934
  */
934
935
  writeHead(
@@ -937,6 +938,36 @@ declare module "http" {
937
938
  headers?: OutgoingHttpHeaders | OutgoingHttpHeader[],
938
939
  ): this;
939
940
  writeHead(statusCode: number, headers?: OutgoingHttpHeaders | OutgoingHttpHeader[]): this;
941
+ /**
942
+ * Sends an arbitrary HTTP/1.1 1xx informational response to the client. This
943
+ * is a generic equivalent of `response.writeContinue()`,
944
+ * `response.writeProcessing()` and `response.writeEarlyHints()`, and
945
+ * can be called multiple times before the final response. After the final
946
+ * response headers have been sent (via `response.writeHead()` or an
947
+ * implicit header), calling this method throws `ERR_HTTP_HEADERS_SENT`.
948
+ *
949
+ * Clients receive these responses via the [`'information'`](https://nodejs.org/docs/latest-v26.x/api/http.html#event-information)
950
+ * event on `http.ClientRequest`.
951
+ *
952
+ * ```js
953
+ * response.writeInformation(110, { 'X-Progress': '50%' });
954
+ * ```
955
+ * @since v26.2.0
956
+ * @param statusCode An HTTP 1xx informational status code, between `100`
957
+ * and `199` inclusive, excluding `101` (Switching Protocols) which is only
958
+ * available through the [`'upgrade'`](https://nodejs.org/docs/latest-v26.x/api/http.html#event-upgrade) event.
959
+ * @param headers An optional set of headers to send with the
960
+ * informational response. Accepts the same shapes as
961
+ * `response.writeHead()`.
962
+ * @param callback Optional, called once the message has been written
963
+ * to the socket.
964
+ */
965
+ writeInformation(
966
+ statusCode: number,
967
+ headers?: OutgoingHttpHeaders | readonly string[],
968
+ callback?: () => void,
969
+ ): void;
970
+ writeInformation(statusCode: number, callback: () => void): void;
940
971
  /**
941
972
  * Sends a HTTP/1.1 102 Processing message to the client, indicating that
942
973
  * the request body should be sent.
@@ -945,14 +976,25 @@ declare module "http" {
945
976
  writeProcessing(callback?: () => void): void;
946
977
  }
947
978
  interface InformationEvent {
948
- statusCode: number;
949
- statusMessage: string;
950
979
  httpVersion: string;
951
980
  httpVersionMajor: number;
952
981
  httpVersionMinor: number;
982
+ statusCode: number;
983
+ statusMessage: string;
953
984
  headers: IncomingHttpHeaders;
954
985
  rawHeaders: string[];
955
986
  }
987
+ interface ClientRequestEventMap extends stream.WritableEventMap {
988
+ /** @deprecated Listen for the `'close'` event instead. */
989
+ "abort": [];
990
+ "connect": [response: IncomingMessage, socket: net.Socket, head: NonSharedBuffer];
991
+ "continue": [];
992
+ "information": [info: InformationEvent];
993
+ "response": [response: IncomingMessage];
994
+ "socket": [socket: net.Socket];
995
+ "timeout": [];
996
+ "upgrade": [response: IncomingMessage, stream: net.Socket, head: NonSharedBuffer];
997
+ }
956
998
  /**
957
999
  * This object is created internally and returned from {@link request}. It
958
1000
  * represents an _in-progress_ request whose header has already been queued. The
@@ -1009,6 +1051,7 @@ declare module "http" {
1009
1051
  *
1010
1052
  * ```js
1011
1053
  * import http from 'node:http';
1054
+ * const agent = new http.Agent({ keepAlive: true });
1012
1055
  *
1013
1056
  * // Server has a 5 seconds keep-alive timeout by default
1014
1057
  * http
@@ -1075,7 +1118,7 @@ declare module "http" {
1075
1118
  * @deprecated Since v14.1.0,v13.14.0 - Use `destroy` instead.
1076
1119
  */
1077
1120
  abort(): void;
1078
- onSocket(socket: Socket): void;
1121
+ onSocket(socket: net.Socket): void;
1079
1122
  /**
1080
1123
  * Once a socket is assigned to this request and is connected `socket.setTimeout()` will be called.
1081
1124
  * @since v0.5.9
@@ -1107,126 +1150,63 @@ declare module "http" {
1107
1150
  * @since v15.13.0, v14.17.0
1108
1151
  */
1109
1152
  getRawHeaderNames(): string[];
1110
- /**
1111
- * @deprecated
1112
- */
1113
- addListener(event: "abort", listener: () => void): this;
1114
- addListener(
1115
- event: "connect",
1116
- listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1117
- ): this;
1118
- addListener(event: "continue", listener: () => void): this;
1119
- addListener(event: "information", listener: (info: InformationEvent) => void): this;
1120
- addListener(event: "response", listener: (response: IncomingMessage) => void): this;
1121
- addListener(event: "socket", listener: (socket: Socket) => void): this;
1122
- addListener(event: "timeout", listener: () => void): this;
1123
- addListener(
1124
- event: "upgrade",
1125
- listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1126
- ): this;
1127
- addListener(event: "close", listener: () => void): this;
1128
- addListener(event: "drain", listener: () => void): this;
1129
- addListener(event: "error", listener: (err: Error) => void): this;
1130
- addListener(event: "finish", listener: () => void): this;
1131
- addListener(event: "pipe", listener: (src: stream.Readable) => void): this;
1132
- addListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
1133
- addListener(event: string | symbol, listener: (...args: any[]) => void): this;
1134
- /**
1135
- * @deprecated
1136
- */
1137
- on(event: "abort", listener: () => void): this;
1138
- on(
1139
- event: "connect",
1140
- listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1153
+ // #region InternalEventEmitter
1154
+ addListener<E extends keyof ClientRequestEventMap>(
1155
+ eventName: E,
1156
+ listener: (...args: ClientRequestEventMap[E]) => void,
1141
1157
  ): this;
1142
- on(event: "continue", listener: () => void): this;
1143
- on(event: "information", listener: (info: InformationEvent) => void): this;
1144
- on(event: "response", listener: (response: IncomingMessage) => void): this;
1145
- on(event: "socket", listener: (socket: Socket) => void): this;
1146
- on(event: "timeout", listener: () => void): this;
1147
- on(
1148
- event: "upgrade",
1149
- listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1158
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1159
+ emit<E extends keyof ClientRequestEventMap>(eventName: E, ...args: ClientRequestEventMap[E]): boolean;
1160
+ emit(eventName: string | symbol, ...args: any[]): boolean;
1161
+ listenerCount<E extends keyof ClientRequestEventMap>(
1162
+ eventName: E,
1163
+ listener?: (...args: ClientRequestEventMap[E]) => void,
1164
+ ): number;
1165
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
1166
+ listeners<E extends keyof ClientRequestEventMap>(eventName: E): ((...args: ClientRequestEventMap[E]) => void)[];
1167
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
1168
+ off<E extends keyof ClientRequestEventMap>(
1169
+ eventName: E,
1170
+ listener: (...args: ClientRequestEventMap[E]) => void,
1150
1171
  ): this;
1151
- on(event: "close", listener: () => void): this;
1152
- on(event: "drain", listener: () => void): this;
1153
- on(event: "error", listener: (err: Error) => void): this;
1154
- on(event: "finish", listener: () => void): this;
1155
- on(event: "pipe", listener: (src: stream.Readable) => void): this;
1156
- on(event: "unpipe", listener: (src: stream.Readable) => void): this;
1157
- on(event: string | symbol, listener: (...args: any[]) => void): this;
1158
- /**
1159
- * @deprecated
1160
- */
1161
- once(event: "abort", listener: () => void): this;
1162
- once(
1163
- event: "connect",
1164
- listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1172
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
1173
+ on<E extends keyof ClientRequestEventMap>(
1174
+ eventName: E,
1175
+ listener: (...args: ClientRequestEventMap[E]) => void,
1165
1176
  ): this;
1166
- once(event: "continue", listener: () => void): this;
1167
- once(event: "information", listener: (info: InformationEvent) => void): this;
1168
- once(event: "response", listener: (response: IncomingMessage) => void): this;
1169
- once(event: "socket", listener: (socket: Socket) => void): this;
1170
- once(event: "timeout", listener: () => void): this;
1171
- once(
1172
- event: "upgrade",
1173
- listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1177
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
1178
+ once<E extends keyof ClientRequestEventMap>(
1179
+ eventName: E,
1180
+ listener: (...args: ClientRequestEventMap[E]) => void,
1174
1181
  ): this;
1175
- once(event: "close", listener: () => void): this;
1176
- once(event: "drain", listener: () => void): this;
1177
- once(event: "error", listener: (err: Error) => void): this;
1178
- once(event: "finish", listener: () => void): this;
1179
- once(event: "pipe", listener: (src: stream.Readable) => void): this;
1180
- once(event: "unpipe", listener: (src: stream.Readable) => void): this;
1181
- once(event: string | symbol, listener: (...args: any[]) => void): this;
1182
- /**
1183
- * @deprecated
1184
- */
1185
- prependListener(event: "abort", listener: () => void): this;
1186
- prependListener(
1187
- event: "connect",
1188
- listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1182
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
1183
+ prependListener<E extends keyof ClientRequestEventMap>(
1184
+ eventName: E,
1185
+ listener: (...args: ClientRequestEventMap[E]) => void,
1189
1186
  ): this;
1190
- prependListener(event: "continue", listener: () => void): this;
1191
- prependListener(event: "information", listener: (info: InformationEvent) => void): this;
1192
- prependListener(event: "response", listener: (response: IncomingMessage) => void): this;
1193
- prependListener(event: "socket", listener: (socket: Socket) => void): this;
1194
- prependListener(event: "timeout", listener: () => void): this;
1195
- prependListener(
1196
- event: "upgrade",
1197
- listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1187
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1188
+ prependOnceListener<E extends keyof ClientRequestEventMap>(
1189
+ eventName: E,
1190
+ listener: (...args: ClientRequestEventMap[E]) => void,
1198
1191
  ): this;
1199
- prependListener(event: "close", listener: () => void): this;
1200
- prependListener(event: "drain", listener: () => void): this;
1201
- prependListener(event: "error", listener: (err: Error) => void): this;
1202
- prependListener(event: "finish", listener: () => void): this;
1203
- prependListener(event: "pipe", listener: (src: stream.Readable) => void): this;
1204
- prependListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
1205
- prependListener(event: string | symbol, listener: (...args: any[]) => void): this;
1206
- /**
1207
- * @deprecated
1208
- */
1209
- prependOnceListener(event: "abort", listener: () => void): this;
1210
- prependOnceListener(
1211
- event: "connect",
1212
- listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1192
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1193
+ rawListeners<E extends keyof ClientRequestEventMap>(
1194
+ eventName: E,
1195
+ ): ((...args: ClientRequestEventMap[E]) => void)[];
1196
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
1197
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
1198
+ removeAllListeners<E extends keyof ClientRequestEventMap>(eventName?: E): this;
1199
+ removeAllListeners(eventName?: string | symbol): this;
1200
+ removeListener<E extends keyof ClientRequestEventMap>(
1201
+ eventName: E,
1202
+ listener: (...args: ClientRequestEventMap[E]) => void,
1213
1203
  ): this;
1214
- prependOnceListener(event: "continue", listener: () => void): this;
1215
- prependOnceListener(event: "information", listener: (info: InformationEvent) => void): this;
1216
- prependOnceListener(event: "response", listener: (response: IncomingMessage) => void): this;
1217
- prependOnceListener(event: "socket", listener: (socket: Socket) => void): this;
1218
- prependOnceListener(event: "timeout", listener: () => void): this;
1219
- prependOnceListener(
1220
- event: "upgrade",
1221
- listener: (response: IncomingMessage, socket: Socket, head: NonSharedBuffer) => void,
1222
- ): this;
1223
- prependOnceListener(event: "close", listener: () => void): this;
1224
- prependOnceListener(event: "drain", listener: () => void): this;
1225
- prependOnceListener(event: "error", listener: (err: Error) => void): this;
1226
- prependOnceListener(event: "finish", listener: () => void): this;
1227
- prependOnceListener(event: "pipe", listener: (src: stream.Readable) => void): this;
1228
- prependOnceListener(event: "unpipe", listener: (src: stream.Readable) => void): this;
1229
- prependOnceListener(event: string | symbol, listener: (...args: any[]) => void): this;
1204
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1205
+ // #endregion
1206
+ }
1207
+ interface IncomingMessageEventMap extends stream.ReadableEventMap {
1208
+ /** @deprecated Listen for `'close'` event instead. */
1209
+ "aborted": [];
1230
1210
  }
1231
1211
  /**
1232
1212
  * An `IncomingMessage` object is created by {@link Server} or {@link ClientRequest} and passed as the first argument to the `'request'` and `'response'` event respectively. It may be used to
@@ -1239,7 +1219,7 @@ declare module "http" {
1239
1219
  * @since v0.1.17
1240
1220
  */
1241
1221
  class IncomingMessage extends stream.Readable {
1242
- constructor(socket: Socket);
1222
+ constructor(socket: net.Socket);
1243
1223
  /**
1244
1224
  * The `message.aborted` property will be `true` if the request has
1245
1225
  * been aborted.
@@ -1287,7 +1267,7 @@ declare module "http" {
1287
1267
  * @since v0.1.90
1288
1268
  * @deprecated Since v16.0.0 - Use `socket`.
1289
1269
  */
1290
- connection: Socket;
1270
+ connection: net.Socket;
1291
1271
  /**
1292
1272
  * The `net.Socket` object associated with the connection.
1293
1273
  *
@@ -1299,7 +1279,7 @@ declare module "http" {
1299
1279
  * type other than `net.Socket` or internally nulled.
1300
1280
  * @since v0.3.0
1301
1281
  */
1302
- socket: Socket;
1282
+ socket: net.Socket;
1303
1283
  /**
1304
1284
  * The request/response headers object.
1305
1285
  *
@@ -1391,6 +1371,31 @@ declare module "http" {
1391
1371
  * @since v0.5.9
1392
1372
  */
1393
1373
  setTimeout(msecs: number, callback?: () => void): this;
1374
+ /**
1375
+ * An `AbortSignal` that is aborted when the underlying socket closes or the
1376
+ * request is destroyed. The signal is created lazily on first access — no
1377
+ * `AbortController` is allocated for requests that never use this property.
1378
+ *
1379
+ * This is useful for cancelling downstream asynchronous work such as database
1380
+ * queries or `fetch` calls when a client disconnects mid-request.
1381
+ *
1382
+ * ```js
1383
+ * import http from 'node:http';
1384
+ *
1385
+ * http.createServer(async (req, res) => {
1386
+ * try {
1387
+ * const data = await fetch('https://example.com/api', { signal: req.signal });
1388
+ * res.end(JSON.stringify(await data.json()));
1389
+ * } catch (err) {
1390
+ * if (err.name === 'AbortError') return;
1391
+ * res.statusCode = 500;
1392
+ * res.end('Internal Server Error');
1393
+ * }
1394
+ * }).listen(3000);
1395
+ * ```
1396
+ * @since v26.1.0
1397
+ */
1398
+ readonly signal: AbortSignal;
1394
1399
  /**
1395
1400
  * **Only valid for request obtained from {@link Server}.**
1396
1401
  *
@@ -1461,8 +1466,71 @@ declare module "http" {
1461
1466
  * @since v0.3.0
1462
1467
  */
1463
1468
  destroy(error?: Error): this;
1469
+ // #region InternalEventEmitter
1470
+ addListener<E extends keyof IncomingMessageEventMap>(
1471
+ eventName: E,
1472
+ listener: (...args: IncomingMessageEventMap[E]) => void,
1473
+ ): this;
1474
+ addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1475
+ emit<E extends keyof IncomingMessageEventMap>(eventName: E, ...args: IncomingMessageEventMap[E]): boolean;
1476
+ emit(eventName: string | symbol, ...args: any[]): boolean;
1477
+ listenerCount<E extends keyof IncomingMessageEventMap>(
1478
+ eventName: E,
1479
+ listener?: (...args: IncomingMessageEventMap[E]) => void,
1480
+ ): number;
1481
+ listenerCount(eventName: string | symbol, listener?: (...args: any[]) => void): number;
1482
+ listeners<E extends keyof IncomingMessageEventMap>(
1483
+ eventName: E,
1484
+ ): ((...args: IncomingMessageEventMap[E]) => void)[];
1485
+ listeners(eventName: string | symbol): ((...args: any[]) => void)[];
1486
+ off<E extends keyof IncomingMessageEventMap>(
1487
+ eventName: E,
1488
+ listener: (...args: IncomingMessageEventMap[E]) => void,
1489
+ ): this;
1490
+ off(eventName: string | symbol, listener: (...args: any[]) => void): this;
1491
+ on<E extends keyof IncomingMessageEventMap>(
1492
+ eventName: E,
1493
+ listener: (...args: IncomingMessageEventMap[E]) => void,
1494
+ ): this;
1495
+ on(eventName: string | symbol, listener: (...args: any[]) => void): this;
1496
+ once<E extends keyof IncomingMessageEventMap>(
1497
+ eventName: E,
1498
+ listener: (...args: IncomingMessageEventMap[E]) => void,
1499
+ ): this;
1500
+ once(eventName: string | symbol, listener: (...args: any[]) => void): this;
1501
+ prependListener<E extends keyof IncomingMessageEventMap>(
1502
+ eventName: E,
1503
+ listener: (...args: IncomingMessageEventMap[E]) => void,
1504
+ ): this;
1505
+ prependListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1506
+ prependOnceListener<E extends keyof IncomingMessageEventMap>(
1507
+ eventName: E,
1508
+ listener: (...args: IncomingMessageEventMap[E]) => void,
1509
+ ): this;
1510
+ prependOnceListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1511
+ rawListeners<E extends keyof IncomingMessageEventMap>(
1512
+ eventName: E,
1513
+ ): ((...args: IncomingMessageEventMap[E]) => void)[];
1514
+ rawListeners(eventName: string | symbol): ((...args: any[]) => void)[];
1515
+ // eslint-disable-next-line @definitelytyped/no-unnecessary-generics
1516
+ removeAllListeners<E extends keyof IncomingMessageEventMap>(eventName?: E): this;
1517
+ removeAllListeners(eventName?: string | symbol): this;
1518
+ removeListener<E extends keyof IncomingMessageEventMap>(
1519
+ eventName: E,
1520
+ listener: (...args: IncomingMessageEventMap[E]) => void,
1521
+ ): this;
1522
+ removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
1523
+ // #endregion
1464
1524
  }
1465
- interface AgentOptions extends NodeJS.PartialOptions<TcpSocketConnectOpts> {
1525
+ interface ProxyEnv extends NodeJS.ProcessEnv {
1526
+ HTTP_PROXY?: string | undefined;
1527
+ HTTPS_PROXY?: string | undefined;
1528
+ NO_PROXY?: string | undefined;
1529
+ http_proxy?: string | undefined;
1530
+ https_proxy?: string | undefined;
1531
+ no_proxy?: string | undefined;
1532
+ }
1533
+ interface AgentOptions extends NodeJS.PartialOptions<net.TcpSocketConnectOpts> {
1466
1534
  /**
1467
1535
  * Keep sockets around in a pool to be used by other requests in the future. Default = false
1468
1536
  */
@@ -1473,11 +1541,13 @@ declare module "http" {
1473
1541
  */
1474
1542
  keepAliveMsecs?: number | undefined;
1475
1543
  /**
1476
- * Milliseconds to subtract from the server-provided `keep-alive: timeout=...` hint when determining socket
1477
- * expiration time. This buffer helps ensure the agent closes the socket slightly before the server does, reducing
1478
- * the chance of sending a request on a socket that’s about to be closed by the server.
1544
+ * Milliseconds to subtract from
1545
+ * the server-provided `keep-alive: timeout=...` hint when determining socket
1546
+ * expiration time. This buffer helps ensure the agent closes the socket
1547
+ * slightly before the server does, reducing the chance of sending a request
1548
+ * on a socket that’s about to be closed by the server.
1549
+ * @since v24.7.0
1479
1550
  * @default 1000
1480
- * @since v22.20.0
1481
1551
  */
1482
1552
  agentKeepAliveTimeoutBuffer?: number | undefined;
1483
1553
  /**
@@ -1501,6 +1571,22 @@ declare module "http" {
1501
1571
  * @default `lifo`
1502
1572
  */
1503
1573
  scheduling?: "fifo" | "lifo" | undefined;
1574
+ /**
1575
+ * Environment variables for proxy configuration. See
1576
+ * [Built-in Proxy Support](https://nodejs.org/docs/latest-v26.x/api/http.html#built-in-proxy-support) for details.
1577
+ * @since v24.5.0
1578
+ */
1579
+ proxyEnv?: ProxyEnv | undefined;
1580
+ /**
1581
+ * Default port to use when the port is not specified in requests.
1582
+ * @since v24.5.0
1583
+ */
1584
+ defaultPort?: number | undefined;
1585
+ /**
1586
+ * The protocol to use for the agent.
1587
+ * @since v24.5.0
1588
+ */
1589
+ protocol?: string | undefined;
1504
1590
  }
1505
1591
  /**
1506
1592
  * An `Agent` is responsible for managing connection persistence
@@ -1556,7 +1642,7 @@ declare module "http" {
1556
1642
  * });
1557
1643
  * ```
1558
1644
  *
1559
- * `options` in [`socket.connect()`](https://nodejs.org/docs/latest-v22.x/api/net.html#socketconnectoptions-connectlistener) are also supported.
1645
+ * `options` in [`socket.connect()`](https://nodejs.org/docs/latest-v26.x/api/net.html#socketconnectoptions-connectlistener) are also supported.
1560
1646
  *
1561
1647
  * To configure any of them, a custom {@link Agent} instance must be created.
1562
1648
  *
@@ -1596,13 +1682,13 @@ declare module "http" {
1596
1682
  * removed from the array on `'timeout'`.
1597
1683
  * @since v0.11.4
1598
1684
  */
1599
- readonly freeSockets: NodeJS.ReadOnlyDict<Socket[]>;
1685
+ readonly freeSockets: NodeJS.ReadOnlyDict<net.Socket[]>;
1600
1686
  /**
1601
1687
  * An object which contains arrays of sockets currently in use by the
1602
1688
  * agent. Do not modify.
1603
1689
  * @since v0.3.6
1604
1690
  */
1605
- readonly sockets: NodeJS.ReadOnlyDict<Socket[]>;
1691
+ readonly sockets: NodeJS.ReadOnlyDict<net.Socket[]>;
1606
1692
  /**
1607
1693
  * An object which contains queues of requests that have not yet been assigned to
1608
1694
  * sockets. Do not modify.
@@ -1624,20 +1710,34 @@ declare module "http" {
1624
1710
  /**
1625
1711
  * Produces a socket/stream to be used for HTTP requests.
1626
1712
  *
1627
- * By default, this function is the same as `net.createConnection()`. However,
1628
- * custom agents may override this method in case greater flexibility is desired.
1713
+ * By default, this function behaves identically to `net.createConnection()`,
1714
+ * synchronously returning the created socket. The optional `callback` parameter in the
1715
+ * signature is **not** used by this default implementation.
1629
1716
  *
1630
- * A socket/stream can be supplied in one of two ways: by returning the
1631
- * socket/stream from this function, or by passing the socket/stream to `callback`.
1717
+ * However, custom agents may override this method to provide greater flexibility,
1718
+ * for example, to create sockets asynchronously. When overriding `createConnection`:
1632
1719
  *
1633
- * This method is guaranteed to return an instance of the `net.Socket` class,
1634
- * a subclass of `stream.Duplex`, unless the user specifies a socket
1635
- * type other than `net.Socket`.
1720
+ * 1. **Synchronous socket creation**: The overriding method can return the
1721
+ * socket/stream directly.
1722
+ * 2. **Asynchronous socket creation**: The overriding method can accept the `callback`
1723
+ * and pass the created socket/stream to it (e.g., `callback(null, newSocket)`).
1724
+ * If an error occurs during socket creation, it should be passed as the first
1725
+ * argument to the `callback` (e.g., `callback(err)`).
1636
1726
  *
1637
- * `callback` has a signature of `(err, stream)`.
1727
+ * The agent will call the provided `createConnection` function with `options` and
1728
+ * this internal `callback`. The `callback` provided by the agent has a signature
1729
+ * of `(err, stream)`.
1638
1730
  * @since v0.11.4
1639
- * @param options Options containing connection details. Check `createConnection` for the format of the options
1640
- * @param callback Callback function that receives the created socket
1731
+ * @param options Options containing connection details. Check
1732
+ * `net.createConnection` for the format of the options. For custom agents,
1733
+ * this object is passed to the custom `createConnection` function.
1734
+ * @param callback (Optional, primarily for custom agents) A function to be
1735
+ * called by a custom `createConnection` implementation when the socket is
1736
+ * created, especially for asynchronous operations.
1737
+ * @returns The created socket. This is returned by the default
1738
+ * implementation or by a custom synchronous `createConnection` implementation.
1739
+ * If a custom `createConnection` uses the `callback` for asynchronous
1740
+ * operation, this return value might not be the primary way to obtain the socket.
1641
1741
  */
1642
1742
  createConnection(
1643
1743
  options: ClientRequestArgs,
@@ -2066,6 +2166,27 @@ declare module "http" {
2066
2166
  * @param [max=1000]
2067
2167
  */
2068
2168
  function setMaxIdleHTTPParsers(max: number): void;
2169
+ /**
2170
+ * Dynamically resets the global configurations to enable built-in proxy support for
2171
+ * `fetch()` and `http.request()`/`https.request()` at runtime, as an alternative
2172
+ * to using the `--use-env-proxy` flag or `NODE_USE_ENV_PROXY` environment variable.
2173
+ * It can also be used to override settings configured from the environment variables.
2174
+ *
2175
+ * As this function resets the global configurations, any previously configured
2176
+ * `http.globalAgent`, `https.globalAgent` or undici global dispatcher would be
2177
+ * overridden after this function is invoked. It's recommended to invoke it before any
2178
+ * requests are made and avoid invoking it in the middle of any requests.
2179
+ *
2180
+ * See [Built-in Proxy Support](https://nodejs.org/docs/latest-v26.x/api/http.html#built-in-proxy-support) for details on proxy URL formats and `NO_PROXY`
2181
+ * syntax.
2182
+ * @since v25.4.0
2183
+ * @param proxyEnv An object containing proxy configuration. This accepts the
2184
+ * same options as the `proxyEnv` option accepted by {@link Agent}. **Default:**
2185
+ * `process.env`.
2186
+ * @returns A function that restores the original agent and dispatcher
2187
+ * settings to the state before this `http.setGlobalProxyFromEnv()` is invoked.
2188
+ */
2189
+ function setGlobalProxyFromEnv(proxyEnv?: ProxyEnv): () => void;
2069
2190
  /**
2070
2191
  * Global instance of `Agent` which is used as the default for all HTTP client
2071
2192
  * requests. Diverges from a default `Agent` configuration by having `keepAlive`
@@ -2092,6 +2213,6 @@ declare module "http" {
2092
2213
  */
2093
2214
  const MessageEvent: typeof import("undici-types").MessageEvent;
2094
2215
  }
2095
- declare module "node:http" {
2096
- export * from "http";
2216
+ declare module "http" {
2217
+ export * from "node:http";
2097
2218
  }