node-red-contrib-tak-registration 0.16.0 → 0.16.3

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 (1065) hide show
  1. package/node_modules/@turf/along/README.md +3 -1
  2. package/node_modules/@turf/along/dist/cjs/index.cjs +2 -2
  3. package/node_modules/@turf/along/dist/cjs/index.cjs.map +1 -1
  4. package/node_modules/@turf/along/dist/cjs/index.d.cts +1 -1
  5. package/node_modules/@turf/along/dist/esm/index.d.ts +1 -1
  6. package/node_modules/@turf/along/dist/esm/index.js +2 -2
  7. package/node_modules/@turf/along/dist/esm/index.js.map +1 -1
  8. package/node_modules/@turf/along/package.json +12 -12
  9. package/node_modules/@turf/angle/dist/cjs/index.cjs +2 -2
  10. package/node_modules/@turf/angle/dist/cjs/index.cjs.map +1 -1
  11. package/node_modules/@turf/angle/dist/esm/index.js +2 -2
  12. package/node_modules/@turf/angle/dist/esm/index.js.map +1 -1
  13. package/node_modules/@turf/angle/package.json +16 -16
  14. package/node_modules/@turf/area/dist/cjs/index.cjs +2 -2
  15. package/node_modules/@turf/area/dist/cjs/index.cjs.map +1 -1
  16. package/node_modules/@turf/area/dist/esm/index.js +2 -2
  17. package/node_modules/@turf/area/dist/esm/index.js.map +1 -1
  18. package/node_modules/@turf/area/package.json +10 -10
  19. package/node_modules/@turf/bbox/dist/cjs/index.cjs +2 -2
  20. package/node_modules/@turf/bbox/dist/cjs/index.cjs.map +1 -1
  21. package/node_modules/@turf/bbox/dist/esm/index.js +2 -2
  22. package/node_modules/@turf/bbox/dist/esm/index.js.map +1 -1
  23. package/node_modules/@turf/bbox/package.json +9 -9
  24. package/node_modules/@turf/bbox-clip/dist/cjs/index.cjs +2 -2
  25. package/node_modules/@turf/bbox-clip/dist/cjs/index.cjs.map +1 -1
  26. package/node_modules/@turf/bbox-clip/dist/esm/index.js +2 -2
  27. package/node_modules/@turf/bbox-clip/dist/esm/index.js.map +1 -1
  28. package/node_modules/@turf/bbox-clip/package.json +11 -11
  29. package/node_modules/@turf/bbox-polygon/dist/cjs/index.cjs +2 -2
  30. package/node_modules/@turf/bbox-polygon/dist/cjs/index.cjs.map +1 -1
  31. package/node_modules/@turf/bbox-polygon/dist/esm/index.js +2 -2
  32. package/node_modules/@turf/bbox-polygon/dist/esm/index.js.map +1 -1
  33. package/node_modules/@turf/bbox-polygon/package.json +8 -8
  34. package/node_modules/@turf/bearing/dist/cjs/index.cjs +2 -2
  35. package/node_modules/@turf/bearing/dist/cjs/index.cjs.map +1 -1
  36. package/node_modules/@turf/bearing/dist/esm/index.js +2 -2
  37. package/node_modules/@turf/bearing/dist/esm/index.js.map +1 -1
  38. package/node_modules/@turf/bearing/package.json +11 -11
  39. package/node_modules/@turf/bezier-spline/dist/cjs/index.cjs +2 -2
  40. package/node_modules/@turf/bezier-spline/dist/cjs/index.cjs.map +1 -1
  41. package/node_modules/@turf/bezier-spline/dist/esm/index.js +2 -2
  42. package/node_modules/@turf/bezier-spline/dist/esm/index.js.map +1 -1
  43. package/node_modules/@turf/bezier-spline/package.json +10 -10
  44. package/node_modules/@turf/boolean-clockwise/dist/cjs/index.cjs +2 -2
  45. package/node_modules/@turf/boolean-clockwise/dist/cjs/index.cjs.map +1 -1
  46. package/node_modules/@turf/boolean-clockwise/dist/esm/index.js +2 -2
  47. package/node_modules/@turf/boolean-clockwise/dist/esm/index.js.map +1 -1
  48. package/node_modules/@turf/boolean-clockwise/package.json +10 -10
  49. package/node_modules/@turf/boolean-concave/dist/cjs/index.cjs +2 -2
  50. package/node_modules/@turf/boolean-concave/dist/cjs/index.cjs.map +1 -1
  51. package/node_modules/@turf/boolean-concave/dist/esm/index.js +2 -2
  52. package/node_modules/@turf/boolean-concave/dist/esm/index.js.map +1 -1
  53. package/node_modules/@turf/boolean-concave/package.json +10 -10
  54. package/node_modules/@turf/boolean-contains/dist/cjs/index.cjs +2 -2
  55. package/node_modules/@turf/boolean-contains/dist/cjs/index.cjs.map +1 -1
  56. package/node_modules/@turf/boolean-contains/dist/esm/index.js +2 -2
  57. package/node_modules/@turf/boolean-contains/dist/esm/index.js.map +1 -1
  58. package/node_modules/@turf/boolean-contains/package.json +13 -13
  59. package/node_modules/@turf/boolean-crosses/dist/cjs/index.cjs +2 -2
  60. package/node_modules/@turf/boolean-crosses/dist/cjs/index.cjs.map +1 -1
  61. package/node_modules/@turf/boolean-crosses/dist/esm/index.js +2 -2
  62. package/node_modules/@turf/boolean-crosses/dist/esm/index.js.map +1 -1
  63. package/node_modules/@turf/boolean-crosses/package.json +13 -13
  64. package/node_modules/@turf/boolean-disjoint/dist/cjs/index.cjs +2 -2
  65. package/node_modules/@turf/boolean-disjoint/dist/cjs/index.cjs.map +1 -1
  66. package/node_modules/@turf/boolean-disjoint/dist/esm/index.js +2 -2
  67. package/node_modules/@turf/boolean-disjoint/dist/esm/index.js.map +1 -1
  68. package/node_modules/@turf/boolean-disjoint/package.json +12 -12
  69. package/node_modules/@turf/boolean-equal/dist/cjs/index.cjs +2 -2
  70. package/node_modules/@turf/boolean-equal/dist/cjs/index.cjs.map +1 -1
  71. package/node_modules/@turf/boolean-equal/dist/esm/index.js +2 -2
  72. package/node_modules/@turf/boolean-equal/dist/esm/index.js.map +1 -1
  73. package/node_modules/@turf/boolean-equal/package.json +11 -11
  74. package/node_modules/@turf/boolean-intersects/README.md +1 -1
  75. package/node_modules/@turf/boolean-intersects/dist/cjs/index.cjs +2 -2
  76. package/node_modules/@turf/boolean-intersects/dist/cjs/index.cjs.map +1 -1
  77. package/node_modules/@turf/boolean-intersects/dist/esm/index.js +2 -2
  78. package/node_modules/@turf/boolean-intersects/dist/esm/index.js.map +1 -1
  79. package/node_modules/@turf/boolean-intersects/package.json +10 -10
  80. package/node_modules/@turf/boolean-overlap/dist/cjs/index.cjs +2 -2
  81. package/node_modules/@turf/boolean-overlap/dist/cjs/index.cjs.map +1 -1
  82. package/node_modules/@turf/boolean-overlap/dist/esm/index.js +2 -2
  83. package/node_modules/@turf/boolean-overlap/dist/esm/index.js.map +1 -1
  84. package/node_modules/@turf/boolean-overlap/package.json +13 -13
  85. package/node_modules/@turf/boolean-parallel/dist/cjs/index.cjs +2 -2
  86. package/node_modules/@turf/boolean-parallel/dist/cjs/index.cjs.map +1 -1
  87. package/node_modules/@turf/boolean-parallel/dist/esm/index.js +2 -2
  88. package/node_modules/@turf/boolean-parallel/dist/esm/index.js.map +1 -1
  89. package/node_modules/@turf/boolean-parallel/package.json +12 -12
  90. package/node_modules/@turf/boolean-point-in-polygon/dist/cjs/index.cjs +2 -2
  91. package/node_modules/@turf/boolean-point-in-polygon/dist/cjs/index.cjs.map +1 -1
  92. package/node_modules/@turf/boolean-point-in-polygon/dist/esm/index.js +2 -2
  93. package/node_modules/@turf/boolean-point-in-polygon/dist/esm/index.js.map +1 -1
  94. package/node_modules/@turf/boolean-point-in-polygon/package.json +9 -9
  95. package/node_modules/@turf/boolean-point-on-line/dist/cjs/index.cjs +2 -2
  96. package/node_modules/@turf/boolean-point-on-line/dist/cjs/index.cjs.map +1 -1
  97. package/node_modules/@turf/boolean-point-on-line/dist/esm/index.js +2 -2
  98. package/node_modules/@turf/boolean-point-on-line/dist/esm/index.js.map +1 -1
  99. package/node_modules/@turf/boolean-point-on-line/package.json +11 -11
  100. package/node_modules/@turf/boolean-touches/dist/cjs/index.cjs +2 -2
  101. package/node_modules/@turf/boolean-touches/dist/cjs/index.cjs.map +1 -1
  102. package/node_modules/@turf/boolean-touches/dist/esm/index.js +2 -2
  103. package/node_modules/@turf/boolean-touches/dist/esm/index.js.map +1 -1
  104. package/node_modules/@turf/boolean-touches/package.json +12 -12
  105. package/node_modules/@turf/boolean-valid/dist/cjs/index.cjs +2 -2
  106. package/node_modules/@turf/boolean-valid/dist/cjs/index.cjs.map +1 -1
  107. package/node_modules/@turf/boolean-valid/dist/esm/index.js +2 -2
  108. package/node_modules/@turf/boolean-valid/dist/esm/index.js.map +1 -1
  109. package/node_modules/@turf/boolean-valid/package.json +17 -17
  110. package/node_modules/@turf/boolean-within/dist/cjs/index.cjs +2 -2
  111. package/node_modules/@turf/boolean-within/dist/cjs/index.cjs.map +1 -1
  112. package/node_modules/@turf/boolean-within/dist/esm/index.js +2 -2
  113. package/node_modules/@turf/boolean-within/dist/esm/index.js.map +1 -1
  114. package/node_modules/@turf/boolean-within/package.json +13 -13
  115. package/node_modules/@turf/buffer/README.md +3 -3
  116. package/node_modules/@turf/buffer/dist/cjs/index.cjs +2 -2
  117. package/node_modules/@turf/buffer/dist/cjs/index.cjs.map +1 -1
  118. package/node_modules/@turf/buffer/dist/esm/index.js +2 -2
  119. package/node_modules/@turf/buffer/dist/esm/index.js.map +1 -1
  120. package/node_modules/@turf/buffer/package.json +13 -13
  121. package/node_modules/@turf/center/dist/cjs/index.cjs +2 -2
  122. package/node_modules/@turf/center/dist/cjs/index.cjs.map +1 -1
  123. package/node_modules/@turf/center/dist/esm/index.js +2 -2
  124. package/node_modules/@turf/center/dist/esm/index.js.map +1 -1
  125. package/node_modules/@turf/center/package.json +13 -13
  126. package/node_modules/@turf/center-mean/dist/cjs/index.cjs +2 -2
  127. package/node_modules/@turf/center-mean/dist/cjs/index.cjs.map +1 -1
  128. package/node_modules/@turf/center-mean/dist/esm/index.js +2 -2
  129. package/node_modules/@turf/center-mean/dist/esm/index.js.map +1 -1
  130. package/node_modules/@turf/center-mean/package.json +14 -14
  131. package/node_modules/@turf/center-median/dist/cjs/index.cjs +2 -2
  132. package/node_modules/@turf/center-median/dist/cjs/index.cjs.map +1 -1
  133. package/node_modules/@turf/center-median/dist/esm/index.js +2 -2
  134. package/node_modules/@turf/center-median/dist/esm/index.js.map +1 -1
  135. package/node_modules/@turf/center-median/package.json +17 -17
  136. package/node_modules/@turf/center-of-mass/dist/cjs/index.cjs +2 -2
  137. package/node_modules/@turf/center-of-mass/dist/cjs/index.cjs.map +1 -1
  138. package/node_modules/@turf/center-of-mass/dist/esm/index.js +2 -2
  139. package/node_modules/@turf/center-of-mass/dist/esm/index.js.map +1 -1
  140. package/node_modules/@turf/center-of-mass/package.json +14 -14
  141. package/node_modules/@turf/centroid/dist/cjs/index.cjs +2 -2
  142. package/node_modules/@turf/centroid/dist/cjs/index.cjs.map +1 -1
  143. package/node_modules/@turf/centroid/dist/esm/index.js +2 -2
  144. package/node_modules/@turf/centroid/dist/esm/index.js.map +1 -1
  145. package/node_modules/@turf/centroid/package.json +11 -11
  146. package/node_modules/@turf/circle/README.md +13 -13
  147. package/node_modules/@turf/circle/dist/cjs/index.cjs +2 -2
  148. package/node_modules/@turf/circle/dist/cjs/index.cjs.map +1 -1
  149. package/node_modules/@turf/circle/dist/cjs/index.d.cts +2 -2
  150. package/node_modules/@turf/circle/dist/esm/index.d.ts +2 -2
  151. package/node_modules/@turf/circle/dist/esm/index.js +2 -2
  152. package/node_modules/@turf/circle/dist/esm/index.js.map +1 -1
  153. package/node_modules/@turf/circle/package.json +11 -11
  154. package/node_modules/@turf/clean-coords/dist/cjs/index.cjs +33 -49
  155. package/node_modules/@turf/clean-coords/dist/cjs/index.cjs.map +1 -1
  156. package/node_modules/@turf/clean-coords/dist/esm/index.js +33 -49
  157. package/node_modules/@turf/clean-coords/dist/esm/index.js.map +1 -1
  158. package/node_modules/@turf/clean-coords/package.json +15 -12
  159. package/node_modules/@turf/clone/dist/cjs/index.cjs +2 -2
  160. package/node_modules/@turf/clone/dist/cjs/index.cjs.map +1 -1
  161. package/node_modules/@turf/clone/dist/esm/index.js +2 -2
  162. package/node_modules/@turf/clone/dist/esm/index.js.map +1 -1
  163. package/node_modules/@turf/clone/package.json +9 -9
  164. package/node_modules/@turf/clusters/package.json +9 -9
  165. package/node_modules/@turf/clusters-dbscan/README.md +2 -2
  166. package/node_modules/@turf/clusters-dbscan/dist/cjs/index.cjs +3 -8
  167. package/node_modules/@turf/clusters-dbscan/dist/cjs/index.cjs.map +1 -1
  168. package/node_modules/@turf/clusters-dbscan/dist/cjs/index.d.cts +1 -1
  169. package/node_modules/@turf/clusters-dbscan/dist/esm/index.d.ts +1 -1
  170. package/node_modules/@turf/clusters-dbscan/dist/esm/index.js +4 -9
  171. package/node_modules/@turf/clusters-dbscan/dist/esm/index.js.map +1 -1
  172. package/node_modules/@turf/clusters-dbscan/package.json +15 -15
  173. package/node_modules/@turf/clusters-kmeans/dist/cjs/index.cjs +2 -2
  174. package/node_modules/@turf/clusters-kmeans/dist/cjs/index.cjs.map +1 -1
  175. package/node_modules/@turf/clusters-kmeans/dist/cjs/index.d.cts +1 -1
  176. package/node_modules/@turf/clusters-kmeans/dist/esm/index.d.ts +1 -1
  177. package/node_modules/@turf/clusters-kmeans/dist/esm/index.js +2 -2
  178. package/node_modules/@turf/clusters-kmeans/dist/esm/index.js.map +1 -1
  179. package/node_modules/@turf/clusters-kmeans/package.json +15 -15
  180. package/node_modules/@turf/collect/dist/cjs/index.cjs +3 -8
  181. package/node_modules/@turf/collect/dist/cjs/index.cjs.map +1 -1
  182. package/node_modules/@turf/collect/dist/esm/index.js +3 -8
  183. package/node_modules/@turf/collect/dist/esm/index.js.map +1 -1
  184. package/node_modules/@turf/collect/package.json +11 -11
  185. package/node_modules/@turf/combine/dist/cjs/index.cjs +2 -2
  186. package/node_modules/@turf/combine/dist/cjs/index.cjs.map +1 -1
  187. package/node_modules/@turf/combine/dist/esm/index.js +2 -2
  188. package/node_modules/@turf/combine/dist/esm/index.js.map +1 -1
  189. package/node_modules/@turf/combine/package.json +9 -9
  190. package/node_modules/@turf/concave/README.md +2 -2
  191. package/node_modules/@turf/concave/dist/cjs/index.cjs +2 -2
  192. package/node_modules/@turf/concave/dist/cjs/index.cjs.map +1 -1
  193. package/node_modules/@turf/concave/dist/cjs/index.d.cts +1 -1
  194. package/node_modules/@turf/concave/dist/esm/index.d.ts +1 -1
  195. package/node_modules/@turf/concave/dist/esm/index.js +2 -2
  196. package/node_modules/@turf/concave/dist/esm/index.js.map +1 -1
  197. package/node_modules/@turf/concave/package.json +14 -14
  198. package/node_modules/@turf/convex/dist/cjs/index.cjs +2 -2
  199. package/node_modules/@turf/convex/dist/cjs/index.cjs.map +1 -1
  200. package/node_modules/@turf/convex/dist/esm/index.js +2 -2
  201. package/node_modules/@turf/convex/dist/esm/index.js.map +1 -1
  202. package/node_modules/@turf/convex/package.json +11 -11
  203. package/node_modules/@turf/destination/README.md +2 -2
  204. package/node_modules/@turf/destination/dist/cjs/index.cjs +5 -2
  205. package/node_modules/@turf/destination/dist/cjs/index.cjs.map +1 -1
  206. package/node_modules/@turf/destination/dist/cjs/index.d.cts +1 -1
  207. package/node_modules/@turf/destination/dist/esm/index.d.ts +1 -1
  208. package/node_modules/@turf/destination/dist/esm/index.js +5 -2
  209. package/node_modules/@turf/destination/dist/esm/index.js.map +1 -1
  210. package/node_modules/@turf/destination/package.json +14 -11
  211. package/node_modules/@turf/difference/dist/cjs/index.cjs +2 -2
  212. package/node_modules/@turf/difference/dist/cjs/index.cjs.map +1 -1
  213. package/node_modules/@turf/difference/dist/esm/index.js +2 -2
  214. package/node_modules/@turf/difference/dist/esm/index.js.map +1 -1
  215. package/node_modules/@turf/difference/package.json +11 -11
  216. package/node_modules/@turf/dissolve/dist/cjs/index.cjs +2 -2
  217. package/node_modules/@turf/dissolve/dist/cjs/index.cjs.map +1 -1
  218. package/node_modules/@turf/dissolve/dist/esm/index.js +2 -2
  219. package/node_modules/@turf/dissolve/dist/esm/index.js.map +1 -1
  220. package/node_modules/@turf/dissolve/package.json +12 -12
  221. package/node_modules/@turf/distance/README.md +2 -2
  222. package/node_modules/@turf/distance/dist/cjs/index.cjs +2 -2
  223. package/node_modules/@turf/distance/dist/cjs/index.cjs.map +1 -1
  224. package/node_modules/@turf/distance/dist/cjs/index.d.cts +1 -1
  225. package/node_modules/@turf/distance/dist/esm/index.d.ts +1 -1
  226. package/node_modules/@turf/distance/dist/esm/index.js +2 -2
  227. package/node_modules/@turf/distance/dist/esm/index.js.map +1 -1
  228. package/node_modules/@turf/distance/package.json +10 -10
  229. package/node_modules/@turf/distance-weight/dist/cjs/index.cjs +2 -2
  230. package/node_modules/@turf/distance-weight/dist/cjs/index.cjs.map +1 -1
  231. package/node_modules/@turf/distance-weight/dist/esm/index.js +2 -2
  232. package/node_modules/@turf/distance-weight/dist/esm/index.js.map +1 -1
  233. package/node_modules/@turf/distance-weight/package.json +12 -12
  234. package/node_modules/@turf/ellipse/README.md +2 -2
  235. package/node_modules/@turf/ellipse/dist/cjs/index.cjs +62 -39
  236. package/node_modules/@turf/ellipse/dist/cjs/index.cjs.map +1 -1
  237. package/node_modules/@turf/ellipse/dist/cjs/index.d.cts +1 -1
  238. package/node_modules/@turf/ellipse/dist/esm/index.d.ts +1 -1
  239. package/node_modules/@turf/ellipse/dist/esm/index.js +64 -41
  240. package/node_modules/@turf/ellipse/dist/esm/index.js.map +1 -1
  241. package/node_modules/@turf/ellipse/package.json +21 -18
  242. package/node_modules/@turf/envelope/dist/cjs/index.cjs +2 -2
  243. package/node_modules/@turf/envelope/dist/cjs/index.cjs.map +1 -1
  244. package/node_modules/@turf/envelope/dist/esm/index.js +2 -2
  245. package/node_modules/@turf/envelope/dist/esm/index.js.map +1 -1
  246. package/node_modules/@turf/envelope/package.json +10 -10
  247. package/node_modules/@turf/explode/dist/cjs/index.cjs +2 -2
  248. package/node_modules/@turf/explode/dist/cjs/index.cjs.map +1 -1
  249. package/node_modules/@turf/explode/dist/esm/index.js +2 -2
  250. package/node_modules/@turf/explode/dist/esm/index.js.map +1 -1
  251. package/node_modules/@turf/explode/package.json +10 -10
  252. package/node_modules/@turf/flatten/dist/cjs/index.cjs +2 -2
  253. package/node_modules/@turf/flatten/dist/cjs/index.cjs.map +1 -1
  254. package/node_modules/@turf/flatten/dist/esm/index.js +2 -2
  255. package/node_modules/@turf/flatten/dist/esm/index.js.map +1 -1
  256. package/node_modules/@turf/flatten/package.json +10 -10
  257. package/node_modules/@turf/flip/dist/cjs/index.cjs +2 -2
  258. package/node_modules/@turf/flip/dist/cjs/index.cjs.map +1 -1
  259. package/node_modules/@turf/flip/dist/esm/index.js +2 -2
  260. package/node_modules/@turf/flip/dist/esm/index.js.map +1 -1
  261. package/node_modules/@turf/flip/package.json +11 -11
  262. package/node_modules/@turf/geojson-rbush/dist/cjs/index.cjs +2 -2
  263. package/node_modules/@turf/geojson-rbush/dist/cjs/index.cjs.map +1 -1
  264. package/node_modules/@turf/geojson-rbush/dist/esm/index.js +2 -2
  265. package/node_modules/@turf/geojson-rbush/dist/esm/index.js.map +1 -1
  266. package/node_modules/@turf/geojson-rbush/package.json +12 -12
  267. package/node_modules/@turf/great-circle/dist/cjs/index.cjs +3 -3
  268. package/node_modules/@turf/great-circle/dist/cjs/index.cjs.map +1 -1
  269. package/node_modules/@turf/great-circle/dist/esm/index.js +3 -3
  270. package/node_modules/@turf/great-circle/dist/esm/index.js.map +1 -1
  271. package/node_modules/@turf/great-circle/package.json +10 -10
  272. package/node_modules/@turf/helpers/README.md +1 -1
  273. package/node_modules/@turf/helpers/dist/cjs/index.cjs.map +1 -1
  274. package/node_modules/@turf/helpers/dist/cjs/index.d.cts +1 -1
  275. package/node_modules/@turf/helpers/dist/esm/index.d.ts +1 -1
  276. package/node_modules/@turf/helpers/dist/esm/index.js.map +1 -1
  277. package/node_modules/@turf/helpers/package.json +7 -7
  278. package/node_modules/@turf/hex-grid/README.md +7 -5
  279. package/node_modules/@turf/hex-grid/dist/cjs/index.cjs +2 -2
  280. package/node_modules/@turf/hex-grid/dist/cjs/index.cjs.map +1 -1
  281. package/node_modules/@turf/hex-grid/dist/cjs/index.d.cts +4 -4
  282. package/node_modules/@turf/hex-grid/dist/esm/index.d.ts +4 -4
  283. package/node_modules/@turf/hex-grid/dist/esm/index.js +2 -2
  284. package/node_modules/@turf/hex-grid/dist/esm/index.js.map +1 -1
  285. package/node_modules/@turf/hex-grid/package.json +14 -14
  286. package/node_modules/@turf/interpolate/README.md +7 -5
  287. package/node_modules/@turf/interpolate/dist/cjs/index.cjs +2 -2
  288. package/node_modules/@turf/interpolate/dist/cjs/index.cjs.map +1 -1
  289. package/node_modules/@turf/interpolate/dist/esm/index.js +2 -2
  290. package/node_modules/@turf/interpolate/dist/esm/index.js.map +1 -1
  291. package/node_modules/@turf/interpolate/package.json +19 -19
  292. package/node_modules/@turf/intersect/dist/cjs/index.cjs +2 -2
  293. package/node_modules/@turf/intersect/dist/cjs/index.cjs.map +1 -1
  294. package/node_modules/@turf/intersect/dist/esm/index.js +2 -2
  295. package/node_modules/@turf/intersect/dist/esm/index.js.map +1 -1
  296. package/node_modules/@turf/intersect/package.json +11 -11
  297. package/node_modules/@turf/invariant/package.json +8 -8
  298. package/node_modules/@turf/isobands/README.md +1 -1
  299. package/node_modules/@turf/isobands/dist/cjs/index.cjs +313 -9
  300. package/node_modules/@turf/isobands/dist/cjs/index.cjs.map +1 -1
  301. package/node_modules/@turf/isobands/dist/cjs/index.d.cts +1 -1
  302. package/node_modules/@turf/isobands/dist/esm/index.d.ts +1 -1
  303. package/node_modules/@turf/isobands/dist/esm/index.js +313 -9
  304. package/node_modules/@turf/isobands/dist/esm/index.js.map +1 -1
  305. package/node_modules/@turf/isobands/package.json +22 -22
  306. package/node_modules/@turf/isolines/README.md +1 -1
  307. package/node_modules/@turf/isolines/dist/cjs/index.cjs +192 -7
  308. package/node_modules/@turf/isolines/dist/cjs/index.cjs.map +1 -1
  309. package/node_modules/@turf/isolines/dist/cjs/index.d.cts +1 -1
  310. package/node_modules/@turf/isolines/dist/esm/index.d.ts +1 -1
  311. package/node_modules/@turf/isolines/dist/esm/index.js +192 -7
  312. package/node_modules/@turf/isolines/dist/esm/index.js.map +1 -1
  313. package/node_modules/@turf/isolines/package.json +19 -19
  314. package/node_modules/@turf/kinks/dist/cjs/index.cjs +2 -2
  315. package/node_modules/@turf/kinks/dist/cjs/index.cjs.map +1 -1
  316. package/node_modules/@turf/kinks/dist/esm/index.js +2 -2
  317. package/node_modules/@turf/kinks/dist/esm/index.js.map +1 -1
  318. package/node_modules/@turf/kinks/package.json +10 -10
  319. package/node_modules/@turf/length/README.md +2 -2
  320. package/node_modules/@turf/length/dist/cjs/index.cjs +2 -2
  321. package/node_modules/@turf/length/dist/cjs/index.cjs.map +1 -1
  322. package/node_modules/@turf/length/dist/cjs/index.d.cts +1 -1
  323. package/node_modules/@turf/length/dist/esm/index.d.ts +1 -1
  324. package/node_modules/@turf/length/dist/esm/index.js +2 -2
  325. package/node_modules/@turf/length/dist/esm/index.js.map +1 -1
  326. package/node_modules/@turf/length/package.json +11 -11
  327. package/node_modules/@turf/line-arc/README.md +2 -2
  328. package/node_modules/@turf/line-arc/dist/cjs/index.cjs +2 -2
  329. package/node_modules/@turf/line-arc/dist/cjs/index.cjs.map +1 -1
  330. package/node_modules/@turf/line-arc/dist/cjs/index.d.cts +1 -1
  331. package/node_modules/@turf/line-arc/dist/esm/index.d.ts +1 -1
  332. package/node_modules/@turf/line-arc/dist/esm/index.js +2 -2
  333. package/node_modules/@turf/line-arc/dist/esm/index.js.map +1 -1
  334. package/node_modules/@turf/line-arc/package.json +12 -12
  335. package/node_modules/@turf/line-chunk/README.md +2 -2
  336. package/node_modules/@turf/line-chunk/dist/cjs/index.cjs +2 -2
  337. package/node_modules/@turf/line-chunk/dist/cjs/index.cjs.map +1 -1
  338. package/node_modules/@turf/line-chunk/dist/esm/index.js +2 -2
  339. package/node_modules/@turf/line-chunk/dist/esm/index.js.map +1 -1
  340. package/node_modules/@turf/line-chunk/package.json +12 -12
  341. package/node_modules/@turf/line-intersect/dist/cjs/index.cjs +2 -2
  342. package/node_modules/@turf/line-intersect/dist/cjs/index.cjs.map +1 -1
  343. package/node_modules/@turf/line-intersect/dist/esm/index.js +2 -2
  344. package/node_modules/@turf/line-intersect/dist/esm/index.js.map +1 -1
  345. package/node_modules/@turf/line-intersect/package.json +10 -10
  346. package/node_modules/@turf/line-offset/README.md +2 -2
  347. package/node_modules/@turf/line-offset/dist/cjs/index.cjs +2 -2
  348. package/node_modules/@turf/line-offset/dist/cjs/index.cjs.map +1 -1
  349. package/node_modules/@turf/line-offset/dist/esm/index.js +2 -2
  350. package/node_modules/@turf/line-offset/dist/esm/index.js.map +1 -1
  351. package/node_modules/@turf/line-offset/package.json +11 -11
  352. package/node_modules/@turf/line-overlap/dist/cjs/index.cjs +2 -2
  353. package/node_modules/@turf/line-overlap/dist/cjs/index.cjs.map +1 -1
  354. package/node_modules/@turf/line-overlap/dist/esm/index.js +2 -2
  355. package/node_modules/@turf/line-overlap/dist/esm/index.js.map +1 -1
  356. package/node_modules/@turf/line-overlap/package.json +15 -15
  357. package/node_modules/@turf/line-segment/dist/cjs/index.cjs +2 -2
  358. package/node_modules/@turf/line-segment/dist/cjs/index.cjs.map +1 -1
  359. package/node_modules/@turf/line-segment/dist/esm/index.js +2 -2
  360. package/node_modules/@turf/line-segment/dist/esm/index.js.map +1 -1
  361. package/node_modules/@turf/line-segment/package.json +11 -11
  362. package/node_modules/@turf/line-slice/dist/cjs/index.cjs +2 -2
  363. package/node_modules/@turf/line-slice/dist/cjs/index.cjs.map +1 -1
  364. package/node_modules/@turf/line-slice/dist/esm/index.js +2 -2
  365. package/node_modules/@turf/line-slice/dist/esm/index.js.map +1 -1
  366. package/node_modules/@turf/line-slice/package.json +11 -11
  367. package/node_modules/@turf/line-slice-along/README.md +2 -2
  368. package/node_modules/@turf/line-slice-along/dist/cjs/index.cjs +2 -2
  369. package/node_modules/@turf/line-slice-along/dist/cjs/index.cjs.map +1 -1
  370. package/node_modules/@turf/line-slice-along/dist/esm/index.js +2 -2
  371. package/node_modules/@turf/line-slice-along/dist/esm/index.js.map +1 -1
  372. package/node_modules/@turf/line-slice-along/package.json +12 -12
  373. package/node_modules/@turf/line-split/README.md +4 -1
  374. package/node_modules/@turf/line-split/dist/cjs/index.cjs +2 -7
  375. package/node_modules/@turf/line-split/dist/cjs/index.cjs.map +1 -1
  376. package/node_modules/@turf/line-split/dist/esm/index.js +2 -7
  377. package/node_modules/@turf/line-split/dist/esm/index.js.map +1 -1
  378. package/node_modules/@turf/line-split/package.json +16 -17
  379. package/node_modules/@turf/line-to-polygon/dist/cjs/index.cjs +2 -2
  380. package/node_modules/@turf/line-to-polygon/dist/cjs/index.cjs.map +1 -1
  381. package/node_modules/@turf/line-to-polygon/dist/esm/index.js +2 -2
  382. package/node_modules/@turf/line-to-polygon/dist/esm/index.js.map +1 -1
  383. package/node_modules/@turf/line-to-polygon/package.json +12 -12
  384. package/node_modules/@turf/mask/dist/cjs/index.cjs +2 -2
  385. package/node_modules/@turf/mask/dist/cjs/index.cjs.map +1 -1
  386. package/node_modules/@turf/mask/dist/esm/index.js +2 -2
  387. package/node_modules/@turf/mask/dist/esm/index.js.map +1 -1
  388. package/node_modules/@turf/mask/package.json +10 -10
  389. package/node_modules/@turf/meta/package.json +7 -7
  390. package/node_modules/@turf/midpoint/dist/cjs/index.cjs +2 -2
  391. package/node_modules/@turf/midpoint/dist/cjs/index.cjs.map +1 -1
  392. package/node_modules/@turf/midpoint/dist/esm/index.js +2 -2
  393. package/node_modules/@turf/midpoint/dist/esm/index.js.map +1 -1
  394. package/node_modules/@turf/midpoint/package.json +11 -11
  395. package/node_modules/@turf/moran-index/dist/cjs/index.cjs +2 -2
  396. package/node_modules/@turf/moran-index/dist/cjs/index.cjs.map +1 -1
  397. package/node_modules/@turf/moran-index/dist/esm/index.js +2 -2
  398. package/node_modules/@turf/moran-index/dist/esm/index.js.map +1 -1
  399. package/node_modules/@turf/moran-index/package.json +11 -11
  400. package/node_modules/@turf/nearest-neighbor-analysis/README.md +1 -1
  401. package/node_modules/@turf/nearest-neighbor-analysis/dist/cjs/index.cjs +2 -2
  402. package/node_modules/@turf/nearest-neighbor-analysis/dist/cjs/index.cjs.map +1 -1
  403. package/node_modules/@turf/nearest-neighbor-analysis/dist/cjs/index.d.cts +2 -2
  404. package/node_modules/@turf/nearest-neighbor-analysis/dist/esm/index.d.ts +2 -2
  405. package/node_modules/@turf/nearest-neighbor-analysis/dist/esm/index.js +2 -2
  406. package/node_modules/@turf/nearest-neighbor-analysis/dist/esm/index.js.map +1 -1
  407. package/node_modules/@turf/nearest-neighbor-analysis/package.json +17 -17
  408. package/node_modules/@turf/nearest-point/README.md +2 -2
  409. package/node_modules/@turf/nearest-point/dist/cjs/index.cjs +2 -2
  410. package/node_modules/@turf/nearest-point/dist/cjs/index.cjs.map +1 -1
  411. package/node_modules/@turf/nearest-point/dist/cjs/index.d.cts +6 -7
  412. package/node_modules/@turf/nearest-point/dist/esm/index.d.ts +6 -7
  413. package/node_modules/@turf/nearest-point/dist/esm/index.js +2 -2
  414. package/node_modules/@turf/nearest-point/dist/esm/index.js.map +1 -1
  415. package/node_modules/@turf/nearest-point/package.json +12 -12
  416. package/node_modules/@turf/nearest-point-on-line/README.md +6 -2
  417. package/node_modules/@turf/nearest-point-on-line/dist/cjs/index.cjs +45 -52
  418. package/node_modules/@turf/nearest-point-on-line/dist/cjs/index.cjs.map +1 -1
  419. package/node_modules/@turf/nearest-point-on-line/dist/cjs/index.d.cts +5 -1
  420. package/node_modules/@turf/nearest-point-on-line/dist/esm/index.d.ts +5 -1
  421. package/node_modules/@turf/nearest-point-on-line/dist/esm/index.js +45 -52
  422. package/node_modules/@turf/nearest-point-on-line/dist/esm/index.js.map +1 -1
  423. package/node_modules/@turf/nearest-point-on-line/package.json +20 -15
  424. package/node_modules/@turf/nearest-point-to-line/README.md +2 -2
  425. package/node_modules/@turf/nearest-point-to-line/dist/cjs/index.cjs +2 -2
  426. package/node_modules/@turf/nearest-point-to-line/dist/cjs/index.cjs.map +1 -1
  427. package/node_modules/@turf/nearest-point-to-line/dist/cjs/index.d.cts +1 -1
  428. package/node_modules/@turf/nearest-point-to-line/dist/esm/index.d.ts +1 -1
  429. package/node_modules/@turf/nearest-point-to-line/dist/esm/index.js +2 -2
  430. package/node_modules/@turf/nearest-point-to-line/dist/esm/index.js.map +1 -1
  431. package/node_modules/@turf/nearest-point-to-line/package.json +14 -14
  432. package/node_modules/@turf/planepoint/dist/cjs/index.cjs +2 -2
  433. package/node_modules/@turf/planepoint/dist/cjs/index.cjs.map +1 -1
  434. package/node_modules/@turf/planepoint/dist/esm/index.js +2 -2
  435. package/node_modules/@turf/planepoint/dist/esm/index.js.map +1 -1
  436. package/node_modules/@turf/planepoint/package.json +9 -9
  437. package/node_modules/@turf/point-grid/dist/cjs/index.cjs +2 -2
  438. package/node_modules/@turf/point-grid/dist/cjs/index.cjs.map +1 -1
  439. package/node_modules/@turf/point-grid/dist/esm/index.js +2 -2
  440. package/node_modules/@turf/point-grid/dist/esm/index.js.map +1 -1
  441. package/node_modules/@turf/point-grid/package.json +14 -14
  442. package/node_modules/@turf/point-on-feature/dist/cjs/index.cjs +2 -2
  443. package/node_modules/@turf/point-on-feature/dist/cjs/index.cjs.map +1 -1
  444. package/node_modules/@turf/point-on-feature/dist/esm/index.js +2 -2
  445. package/node_modules/@turf/point-on-feature/dist/esm/index.js.map +1 -1
  446. package/node_modules/@turf/point-on-feature/package.json +15 -15
  447. package/node_modules/@turf/point-to-line-distance/README.md +5 -4
  448. package/node_modules/@turf/point-to-line-distance/dist/cjs/index.cjs +2 -2
  449. package/node_modules/@turf/point-to-line-distance/dist/cjs/index.cjs.map +1 -1
  450. package/node_modules/@turf/point-to-line-distance/dist/cjs/index.d.cts +1 -2
  451. package/node_modules/@turf/point-to-line-distance/dist/esm/index.d.ts +1 -2
  452. package/node_modules/@turf/point-to-line-distance/dist/esm/index.js +2 -2
  453. package/node_modules/@turf/point-to-line-distance/dist/esm/index.js.map +1 -1
  454. package/node_modules/@turf/point-to-line-distance/package.json +18 -18
  455. package/node_modules/@turf/point-to-polygon-distance/dist/cjs/index.cjs +3 -3
  456. package/node_modules/@turf/point-to-polygon-distance/dist/cjs/index.cjs.map +1 -1
  457. package/node_modules/@turf/point-to-polygon-distance/dist/esm/index.js +3 -3
  458. package/node_modules/@turf/point-to-polygon-distance/dist/esm/index.js.map +1 -1
  459. package/node_modules/@turf/point-to-polygon-distance/package.json +14 -14
  460. package/node_modules/@turf/points-within-polygon/dist/cjs/index.cjs +2 -2
  461. package/node_modules/@turf/points-within-polygon/dist/cjs/index.cjs.map +1 -1
  462. package/node_modules/@turf/points-within-polygon/dist/esm/index.js +2 -2
  463. package/node_modules/@turf/points-within-polygon/dist/esm/index.js.map +1 -1
  464. package/node_modules/@turf/points-within-polygon/package.json +10 -10
  465. package/node_modules/@turf/polygon-smooth/README.md +1 -1
  466. package/node_modules/@turf/polygon-smooth/dist/cjs/index.cjs +2 -2
  467. package/node_modules/@turf/polygon-smooth/dist/cjs/index.cjs.map +1 -1
  468. package/node_modules/@turf/polygon-smooth/dist/cjs/index.d.cts +1 -1
  469. package/node_modules/@turf/polygon-smooth/dist/esm/index.d.ts +1 -1
  470. package/node_modules/@turf/polygon-smooth/dist/esm/index.js +2 -2
  471. package/node_modules/@turf/polygon-smooth/dist/esm/index.js.map +1 -1
  472. package/node_modules/@turf/polygon-smooth/package.json +11 -11
  473. package/node_modules/@turf/polygon-tangents/dist/cjs/index.cjs +2 -2
  474. package/node_modules/@turf/polygon-tangents/dist/cjs/index.cjs.map +1 -1
  475. package/node_modules/@turf/polygon-tangents/dist/esm/index.js +2 -2
  476. package/node_modules/@turf/polygon-tangents/dist/esm/index.js.map +1 -1
  477. package/node_modules/@turf/polygon-tangents/package.json +14 -14
  478. package/node_modules/@turf/polygon-to-line/dist/cjs/index.cjs +2 -2
  479. package/node_modules/@turf/polygon-to-line/dist/cjs/index.cjs.map +1 -1
  480. package/node_modules/@turf/polygon-to-line/dist/esm/index.js +2 -2
  481. package/node_modules/@turf/polygon-to-line/dist/esm/index.js.map +1 -1
  482. package/node_modules/@turf/polygon-to-line/package.json +10 -10
  483. package/node_modules/@turf/polygonize/dist/cjs/index.cjs +2 -2
  484. package/node_modules/@turf/polygonize/dist/cjs/index.cjs.map +1 -1
  485. package/node_modules/@turf/polygonize/dist/esm/index.js +2 -2
  486. package/node_modules/@turf/polygonize/dist/esm/index.js.map +1 -1
  487. package/node_modules/@turf/polygonize/package.json +13 -13
  488. package/node_modules/@turf/projection/package.json +12 -12
  489. package/node_modules/@turf/quadrat-analysis/dist/cjs/index.cjs +2 -2
  490. package/node_modules/@turf/quadrat-analysis/dist/cjs/index.cjs.map +1 -1
  491. package/node_modules/@turf/quadrat-analysis/dist/esm/index.js +2 -2
  492. package/node_modules/@turf/quadrat-analysis/dist/esm/index.js.map +1 -1
  493. package/node_modules/@turf/quadrat-analysis/package.json +18 -18
  494. package/node_modules/@turf/random/package.json +9 -9
  495. package/node_modules/@turf/rectangle-grid/dist/cjs/index.cjs +2 -2
  496. package/node_modules/@turf/rectangle-grid/dist/cjs/index.cjs.map +1 -1
  497. package/node_modules/@turf/rectangle-grid/dist/esm/index.js +2 -2
  498. package/node_modules/@turf/rectangle-grid/dist/esm/index.js.map +1 -1
  499. package/node_modules/@turf/rectangle-grid/package.json +13 -13
  500. package/node_modules/@turf/rewind/dist/cjs/index.cjs +2 -2
  501. package/node_modules/@turf/rewind/dist/cjs/index.cjs.map +1 -1
  502. package/node_modules/@turf/rewind/dist/esm/index.js +2 -2
  503. package/node_modules/@turf/rewind/dist/esm/index.js.map +1 -1
  504. package/node_modules/@turf/rewind/package.json +13 -13
  505. package/node_modules/@turf/rhumb-bearing/dist/cjs/index.cjs +2 -2
  506. package/node_modules/@turf/rhumb-bearing/dist/cjs/index.cjs.map +1 -1
  507. package/node_modules/@turf/rhumb-bearing/dist/esm/index.js +2 -2
  508. package/node_modules/@turf/rhumb-bearing/dist/esm/index.js.map +1 -1
  509. package/node_modules/@turf/rhumb-bearing/package.json +11 -11
  510. package/node_modules/@turf/rhumb-destination/README.md +2 -2
  511. package/node_modules/@turf/rhumb-destination/dist/cjs/index.cjs +2 -2
  512. package/node_modules/@turf/rhumb-destination/dist/cjs/index.cjs.map +1 -1
  513. package/node_modules/@turf/rhumb-destination/dist/cjs/index.d.cts +1 -1
  514. package/node_modules/@turf/rhumb-destination/dist/esm/index.d.ts +1 -1
  515. package/node_modules/@turf/rhumb-destination/dist/esm/index.js +2 -2
  516. package/node_modules/@turf/rhumb-destination/dist/esm/index.js.map +1 -1
  517. package/node_modules/@turf/rhumb-destination/package.json +11 -11
  518. package/node_modules/@turf/rhumb-distance/README.md +8 -9
  519. package/node_modules/@turf/rhumb-distance/dist/cjs/index.cjs +2 -2
  520. package/node_modules/@turf/rhumb-distance/dist/cjs/index.cjs.map +1 -1
  521. package/node_modules/@turf/rhumb-distance/dist/cjs/index.d.cts +2 -3
  522. package/node_modules/@turf/rhumb-distance/dist/esm/index.d.ts +2 -3
  523. package/node_modules/@turf/rhumb-distance/dist/esm/index.js +2 -2
  524. package/node_modules/@turf/rhumb-distance/dist/esm/index.js.map +1 -1
  525. package/node_modules/@turf/rhumb-distance/package.json +11 -11
  526. package/node_modules/@turf/sample/dist/cjs/index.cjs +2 -2
  527. package/node_modules/@turf/sample/dist/cjs/index.cjs.map +1 -1
  528. package/node_modules/@turf/sample/dist/esm/index.js +2 -2
  529. package/node_modules/@turf/sample/dist/esm/index.js.map +1 -1
  530. package/node_modules/@turf/sample/package.json +8 -8
  531. package/node_modules/@turf/sector/README.md +2 -2
  532. package/node_modules/@turf/sector/dist/cjs/index.cjs +2 -2
  533. package/node_modules/@turf/sector/dist/cjs/index.cjs.map +1 -1
  534. package/node_modules/@turf/sector/dist/cjs/index.d.cts +1 -1
  535. package/node_modules/@turf/sector/dist/esm/index.d.ts +1 -1
  536. package/node_modules/@turf/sector/dist/esm/index.js +2 -2
  537. package/node_modules/@turf/sector/dist/esm/index.js.map +1 -1
  538. package/node_modules/@turf/sector/package.json +14 -14
  539. package/node_modules/@turf/shortest-path/README.md +5 -3
  540. package/node_modules/@turf/shortest-path/dist/cjs/index.cjs +10 -14
  541. package/node_modules/@turf/shortest-path/dist/cjs/index.cjs.map +1 -1
  542. package/node_modules/@turf/shortest-path/dist/cjs/index.d.cts +1 -1
  543. package/node_modules/@turf/shortest-path/dist/esm/index.d.ts +1 -1
  544. package/node_modules/@turf/shortest-path/dist/esm/index.js +10 -14
  545. package/node_modules/@turf/shortest-path/dist/esm/index.js.map +1 -1
  546. package/node_modules/@turf/shortest-path/package.json +20 -19
  547. package/node_modules/@turf/simplify/README.md +13 -13
  548. package/node_modules/@turf/simplify/dist/cjs/index.cjs +6 -3
  549. package/node_modules/@turf/simplify/dist/cjs/index.cjs.map +1 -1
  550. package/node_modules/@turf/simplify/dist/cjs/index.d.cts +11 -12
  551. package/node_modules/@turf/simplify/dist/esm/index.d.ts +11 -12
  552. package/node_modules/@turf/simplify/dist/esm/index.js +6 -3
  553. package/node_modules/@turf/simplify/dist/esm/index.js.map +1 -1
  554. package/node_modules/@turf/simplify/package.json +13 -13
  555. package/node_modules/@turf/square/dist/cjs/index.cjs +2 -2
  556. package/node_modules/@turf/square/dist/cjs/index.cjs.map +1 -1
  557. package/node_modules/@turf/square/dist/esm/index.js +2 -2
  558. package/node_modules/@turf/square/dist/esm/index.js.map +1 -1
  559. package/node_modules/@turf/square/package.json +9 -9
  560. package/node_modules/@turf/square-grid/dist/cjs/index.cjs +2 -2
  561. package/node_modules/@turf/square-grid/dist/cjs/index.cjs.map +1 -1
  562. package/node_modules/@turf/square-grid/dist/esm/index.js +2 -2
  563. package/node_modules/@turf/square-grid/dist/esm/index.js.map +1 -1
  564. package/node_modules/@turf/square-grid/package.json +12 -12
  565. package/node_modules/@turf/standard-deviational-ellipse/dist/cjs/index.cjs +2 -2
  566. package/node_modules/@turf/standard-deviational-ellipse/dist/cjs/index.cjs.map +1 -1
  567. package/node_modules/@turf/standard-deviational-ellipse/dist/cjs/index.d.cts +1 -1
  568. package/node_modules/@turf/standard-deviational-ellipse/dist/esm/index.d.ts +1 -1
  569. package/node_modules/@turf/standard-deviational-ellipse/dist/esm/index.js +2 -2
  570. package/node_modules/@turf/standard-deviational-ellipse/dist/esm/index.js.map +1 -1
  571. package/node_modules/@turf/standard-deviational-ellipse/package.json +16 -16
  572. package/node_modules/@turf/tag/dist/cjs/index.cjs +2 -2
  573. package/node_modules/@turf/tag/dist/cjs/index.cjs.map +1 -1
  574. package/node_modules/@turf/tag/dist/esm/index.js +2 -2
  575. package/node_modules/@turf/tag/dist/esm/index.js.map +1 -1
  576. package/node_modules/@turf/tag/package.json +11 -11
  577. package/node_modules/@turf/tesselate/dist/cjs/index.cjs +2 -2
  578. package/node_modules/@turf/tesselate/dist/cjs/index.cjs.map +1 -1
  579. package/node_modules/@turf/tesselate/dist/esm/index.js +2 -2
  580. package/node_modules/@turf/tesselate/dist/esm/index.js.map +1 -1
  581. package/node_modules/@turf/tesselate/package.json +8 -8
  582. package/node_modules/@turf/tin/dist/cjs/index.cjs +2 -2
  583. package/node_modules/@turf/tin/dist/cjs/index.cjs.map +1 -1
  584. package/node_modules/@turf/tin/dist/esm/index.js +2 -2
  585. package/node_modules/@turf/tin/dist/esm/index.js.map +1 -1
  586. package/node_modules/@turf/tin/package.json +8 -8
  587. package/node_modules/@turf/transform-rotate/dist/cjs/index.cjs +2 -2
  588. package/node_modules/@turf/transform-rotate/dist/cjs/index.cjs.map +1 -1
  589. package/node_modules/@turf/transform-rotate/dist/esm/index.js +2 -2
  590. package/node_modules/@turf/transform-rotate/dist/esm/index.js.map +1 -1
  591. package/node_modules/@turf/transform-rotate/package.json +17 -17
  592. package/node_modules/@turf/transform-scale/dist/cjs/index.cjs +2 -2
  593. package/node_modules/@turf/transform-scale/dist/cjs/index.cjs.map +1 -1
  594. package/node_modules/@turf/transform-scale/dist/esm/index.js +2 -2
  595. package/node_modules/@turf/transform-scale/dist/esm/index.js.map +1 -1
  596. package/node_modules/@turf/transform-scale/package.json +21 -21
  597. package/node_modules/@turf/transform-translate/README.md +8 -3
  598. package/node_modules/@turf/transform-translate/dist/cjs/index.cjs +2 -2
  599. package/node_modules/@turf/transform-translate/dist/cjs/index.cjs.map +1 -1
  600. package/node_modules/@turf/transform-translate/dist/cjs/index.d.cts +4 -1
  601. package/node_modules/@turf/transform-translate/dist/esm/index.d.ts +4 -1
  602. package/node_modules/@turf/transform-translate/dist/esm/index.js +2 -2
  603. package/node_modules/@turf/transform-translate/dist/esm/index.js.map +1 -1
  604. package/node_modules/@turf/transform-translate/package.json +14 -14
  605. package/node_modules/@turf/triangle-grid/dist/cjs/index.cjs +2 -2
  606. package/node_modules/@turf/triangle-grid/dist/cjs/index.cjs.map +1 -1
  607. package/node_modules/@turf/triangle-grid/dist/esm/index.js +2 -2
  608. package/node_modules/@turf/triangle-grid/dist/esm/index.js.map +1 -1
  609. package/node_modules/@turf/triangle-grid/package.json +13 -13
  610. package/node_modules/@turf/truncate/dist/cjs/index.cjs +2 -2
  611. package/node_modules/@turf/truncate/dist/cjs/index.cjs.map +1 -1
  612. package/node_modules/@turf/truncate/dist/esm/index.js +2 -2
  613. package/node_modules/@turf/truncate/dist/esm/index.js.map +1 -1
  614. package/node_modules/@turf/truncate/package.json +10 -10
  615. package/node_modules/@turf/turf/package.json +125 -125
  616. package/node_modules/@turf/turf/turf.min.js +2 -11
  617. package/node_modules/@turf/union/dist/cjs/index.cjs +2 -2
  618. package/node_modules/@turf/union/dist/cjs/index.cjs.map +1 -1
  619. package/node_modules/@turf/union/dist/esm/index.js +2 -2
  620. package/node_modules/@turf/union/dist/esm/index.js.map +1 -1
  621. package/node_modules/@turf/union/package.json +11 -11
  622. package/node_modules/@turf/unkink-polygon/dist/cjs/index.cjs +2 -2
  623. package/node_modules/@turf/unkink-polygon/dist/cjs/index.cjs.map +1 -1
  624. package/node_modules/@turf/unkink-polygon/dist/esm/index.js +2 -2
  625. package/node_modules/@turf/unkink-polygon/dist/esm/index.js.map +1 -1
  626. package/node_modules/@turf/unkink-polygon/package.json +13 -13
  627. package/node_modules/@turf/voronoi/dist/cjs/index.cjs +2 -2
  628. package/node_modules/@turf/voronoi/dist/cjs/index.cjs.map +1 -1
  629. package/node_modules/@turf/voronoi/dist/esm/index.js +2 -2
  630. package/node_modules/@turf/voronoi/dist/esm/index.js.map +1 -1
  631. package/node_modules/@turf/voronoi/package.json +12 -12
  632. package/node_modules/@types/node/README.md +2 -2
  633. package/node_modules/@types/node/assert/strict.d.ts +105 -2
  634. package/node_modules/@types/node/assert.d.ts +162 -101
  635. package/node_modules/@types/node/async_hooks.d.ts +26 -6
  636. package/node_modules/@types/node/buffer.buffer.d.ts +9 -0
  637. package/node_modules/@types/node/buffer.d.ts +15 -7
  638. package/node_modules/@types/node/child_process.d.ts +91 -164
  639. package/node_modules/@types/node/cluster.d.ts +19 -20
  640. package/node_modules/@types/node/console.d.ts +19 -18
  641. package/node_modules/@types/node/crypto.d.ts +1264 -356
  642. package/node_modules/@types/node/dgram.d.ts +10 -9
  643. package/node_modules/@types/node/diagnostics_channel.d.ts +18 -15
  644. package/node_modules/@types/node/dns/promises.d.ts +36 -9
  645. package/node_modules/@types/node/dns.d.ts +95 -37
  646. package/node_modules/@types/node/domain.d.ts +1 -1
  647. package/node_modules/@types/node/events.d.ts +81 -36
  648. package/node_modules/@types/node/fs/promises.d.ts +104 -59
  649. package/node_modules/@types/node/fs.d.ts +414 -137
  650. package/node_modules/@types/node/globals.d.ts +149 -350
  651. package/node_modules/@types/node/globals.typedarray.d.ts +20 -0
  652. package/node_modules/@types/node/http.d.ts +191 -37
  653. package/node_modules/@types/node/http2.d.ts +266 -67
  654. package/node_modules/@types/node/https.d.ts +97 -63
  655. package/node_modules/@types/node/index.d.ts +16 -7
  656. package/node_modules/@types/node/inspector.d.ts +206 -3931
  657. package/node_modules/@types/node/inspector.generated.d.ts +4233 -0
  658. package/node_modules/@types/node/module.d.ts +153 -31
  659. package/node_modules/@types/node/net.d.ts +36 -17
  660. package/node_modules/@types/node/os.d.ts +22 -10
  661. package/node_modules/@types/node/package.json +14 -84
  662. package/node_modules/@types/node/path.d.ts +1 -1
  663. package/node_modules/@types/node/perf_hooks.d.ts +30 -18
  664. package/node_modules/@types/node/process.d.ts +40 -34
  665. package/node_modules/@types/node/punycode.d.ts +1 -1
  666. package/node_modules/@types/node/querystring.d.ts +1 -1
  667. package/node_modules/@types/node/readline/promises.d.ts +1 -2
  668. package/node_modules/@types/node/readline.d.ts +13 -13
  669. package/node_modules/@types/node/repl.d.ts +25 -17
  670. package/node_modules/@types/node/sea.d.ts +10 -1
  671. package/node_modules/@types/node/sqlite.d.ts +438 -9
  672. package/node_modules/@types/node/stream/consumers.d.ts +2 -2
  673. package/node_modules/@types/node/stream/web.d.ts +13 -54
  674. package/node_modules/@types/node/stream.d.ts +68 -47
  675. package/node_modules/@types/node/string_decoder.d.ts +3 -3
  676. package/node_modules/@types/node/test.d.ts +2034 -1975
  677. package/node_modules/@types/node/timers/promises.d.ts +1 -1
  678. package/node_modules/@types/node/timers.d.ts +1 -3
  679. package/node_modules/@types/node/tls.d.ts +124 -114
  680. package/node_modules/@types/node/trace_events.d.ts +6 -6
  681. package/node_modules/@types/node/ts5.6/buffer.buffer.d.ts +10 -2
  682. package/node_modules/@types/node/ts5.6/compatibility/float16array.d.ts +71 -0
  683. package/node_modules/@types/node/ts5.6/globals.typedarray.d.ts +17 -0
  684. package/node_modules/@types/node/ts5.6/index.d.ts +18 -7
  685. package/node_modules/@types/node/ts5.7/compatibility/float16array.d.ts +72 -0
  686. package/node_modules/@types/node/ts5.7/index.d.ts +103 -0
  687. package/node_modules/@types/node/tty.d.ts +1 -1
  688. package/node_modules/@types/node/url.d.ts +119 -34
  689. package/node_modules/@types/node/util.d.ts +46 -305
  690. package/node_modules/@types/node/v8.d.ts +100 -37
  691. package/node_modules/@types/node/vm.d.ts +299 -110
  692. package/node_modules/@types/node/wasi.d.ts +23 -2
  693. package/node_modules/@types/node/web-globals/abortcontroller.d.ts +34 -0
  694. package/node_modules/@types/node/web-globals/crypto.d.ts +32 -0
  695. package/node_modules/@types/node/web-globals/domexception.d.ts +68 -0
  696. package/node_modules/@types/node/web-globals/events.d.ts +97 -0
  697. package/node_modules/@types/node/web-globals/fetch.d.ts +50 -0
  698. package/node_modules/@types/node/web-globals/navigator.d.ts +25 -0
  699. package/node_modules/@types/node/web-globals/storage.d.ts +24 -0
  700. package/node_modules/@types/node/web-globals/streams.d.ts +22 -0
  701. package/node_modules/@types/node/worker_threads.d.ts +225 -75
  702. package/node_modules/@types/node/zlib.d.ts +44 -33
  703. package/node_modules/axios/CHANGELOG.md +410 -288
  704. package/node_modules/axios/README.md +156 -51
  705. package/node_modules/axios/dist/axios.js +471 -330
  706. package/node_modules/axios/dist/axios.js.map +1 -1
  707. package/node_modules/axios/dist/axios.min.js +2 -2
  708. package/node_modules/axios/dist/axios.min.js.map +1 -1
  709. package/node_modules/axios/dist/browser/axios.cjs +407 -265
  710. package/node_modules/axios/dist/browser/axios.cjs.map +1 -1
  711. package/node_modules/axios/dist/esm/axios.js +407 -265
  712. package/node_modules/axios/dist/esm/axios.js.map +1 -1
  713. package/node_modules/axios/dist/esm/axios.min.js +2 -2
  714. package/node_modules/axios/dist/esm/axios.min.js.map +1 -1
  715. package/node_modules/axios/dist/node/axios.cjs +723 -305
  716. package/node_modules/axios/dist/node/axios.cjs.map +1 -1
  717. package/node_modules/axios/index.d.cts +16 -5
  718. package/node_modules/axios/index.d.ts +17 -4
  719. package/node_modules/axios/lib/adapters/adapters.js +89 -42
  720. package/node_modules/axios/lib/adapters/fetch.js +221 -162
  721. package/node_modules/axios/lib/adapters/http.js +242 -42
  722. package/node_modules/axios/lib/adapters/xhr.js +11 -8
  723. package/node_modules/axios/lib/core/Axios.js +0 -2
  724. package/node_modules/axios/lib/core/AxiosError.js +10 -3
  725. package/node_modules/axios/lib/core/InterceptorManager.js +1 -1
  726. package/node_modules/axios/lib/core/dispatchRequest.js +1 -1
  727. package/node_modules/axios/lib/core/mergeConfig.js +4 -4
  728. package/node_modules/axios/lib/defaults/index.js +1 -1
  729. package/node_modules/axios/lib/env/data.js +1 -1
  730. package/node_modules/axios/lib/helpers/HttpStatusCode.js +6 -0
  731. package/node_modules/axios/lib/helpers/bind.js +7 -0
  732. package/node_modules/axios/lib/helpers/buildURL.js +1 -3
  733. package/node_modules/axios/lib/helpers/cookies.js +24 -13
  734. package/node_modules/axios/lib/helpers/estimateDataURLDecodedBytes.js +73 -0
  735. package/node_modules/axios/lib/helpers/resolveConfig.js +13 -9
  736. package/node_modules/axios/lib/utils.js +5 -3
  737. package/node_modules/axios/package.json +26 -15
  738. package/node_modules/bignumber.js/CHANGELOG.md +6 -1
  739. package/node_modules/bignumber.js/README.md +5 -4
  740. package/node_modules/bignumber.js/bignumber.js +2 -2
  741. package/node_modules/bignumber.js/bignumber.mjs +2 -2
  742. package/node_modules/bignumber.js/package.json +1 -1
  743. package/node_modules/fast-xml-parser/CHANGELOG.md +9 -0
  744. package/node_modules/fast-xml-parser/README.md +1 -1
  745. package/node_modules/fast-xml-parser/lib/fxp.cjs +1 -1
  746. package/node_modules/fast-xml-parser/lib/fxp.d.cts +1 -1
  747. package/node_modules/fast-xml-parser/lib/fxp.min.js +1 -1
  748. package/node_modules/fast-xml-parser/lib/fxp.min.js.map +1 -1
  749. package/node_modules/fast-xml-parser/lib/fxparser.min.js +1 -1
  750. package/node_modules/fast-xml-parser/lib/fxparser.min.js.map +1 -1
  751. package/node_modules/fast-xml-parser/package.json +1 -1
  752. package/node_modules/fast-xml-parser/src/fxp.d.ts +2 -2
  753. package/node_modules/fast-xml-parser/src/v6/OutputBuilders/JsMinArrBuilder.js +1 -1
  754. package/node_modules/fast-xml-parser/src/v6/OutputBuilders/ParserOptionsBuilder.js +4 -4
  755. package/node_modules/fast-xml-parser/src/xmlparser/DocTypeReader.js +297 -287
  756. package/node_modules/fast-xml-parser/src/xmlparser/OrderedObjParser.js +24 -12
  757. package/node_modules/fast-xml-parser/src/xmlparser/XMLParser.js +4 -4
  758. package/node_modules/follow-redirects/package.json +1 -1
  759. package/node_modules/form-data/CHANGELOG.md +60 -2
  760. package/node_modules/form-data/README.md +4 -4
  761. package/node_modules/form-data/lib/form_data.js +2 -2
  762. package/node_modules/form-data/package.json +4 -4
  763. package/node_modules/protobufjs/dist/light/protobuf.js +2 -2
  764. package/node_modules/protobufjs/dist/light/protobuf.min.js +2 -2
  765. package/node_modules/protobufjs/dist/minimal/protobuf.js +2 -2
  766. package/node_modules/protobufjs/dist/minimal/protobuf.min.js +2 -2
  767. package/node_modules/protobufjs/dist/protobuf.js +2 -2
  768. package/node_modules/protobufjs/dist/protobuf.min.js +2 -2
  769. package/node_modules/protobufjs/google/protobuf/descriptor.json +2 -2
  770. package/node_modules/protobufjs/google/protobuf/descriptor.proto +2 -1
  771. package/node_modules/protobufjs/package.json +1 -1
  772. package/node_modules/undici-types/agent.d.ts +12 -11
  773. package/node_modules/undici-types/api.d.ts +24 -24
  774. package/node_modules/undici-types/balanced-pool.d.ts +11 -11
  775. package/node_modules/undici-types/cache-interceptor.d.ts +172 -0
  776. package/node_modules/undici-types/client-stats.d.ts +15 -0
  777. package/node_modules/undici-types/client.d.ts +18 -18
  778. package/node_modules/undici-types/cookies.d.ts +2 -0
  779. package/node_modules/undici-types/diagnostics-channel.d.ts +18 -10
  780. package/node_modules/undici-types/dispatcher.d.ts +119 -99
  781. package/node_modules/undici-types/env-http-proxy-agent.d.ts +4 -3
  782. package/node_modules/undici-types/errors.d.ts +66 -54
  783. package/node_modules/undici-types/eventsource.d.ts +9 -4
  784. package/node_modules/undici-types/fetch.d.ts +18 -16
  785. package/node_modules/undici-types/formdata.d.ts +7 -7
  786. package/node_modules/undici-types/global-dispatcher.d.ts +4 -4
  787. package/node_modules/undici-types/global-origin.d.ts +5 -5
  788. package/node_modules/undici-types/h2c-client.d.ts +73 -0
  789. package/node_modules/undici-types/handlers.d.ts +8 -8
  790. package/node_modules/undici-types/header.d.ts +157 -1
  791. package/node_modules/undici-types/index.d.ts +56 -47
  792. package/node_modules/undici-types/interceptors.d.ts +30 -8
  793. package/node_modules/undici-types/mock-agent.d.ts +36 -18
  794. package/node_modules/undici-types/mock-call-history.d.ts +111 -0
  795. package/node_modules/undici-types/mock-client.d.ts +6 -4
  796. package/node_modules/undici-types/mock-errors.d.ts +3 -3
  797. package/node_modules/undici-types/mock-interceptor.d.ts +21 -20
  798. package/node_modules/undici-types/mock-pool.d.ts +6 -4
  799. package/node_modules/undici-types/package.json +1 -1
  800. package/node_modules/undici-types/patch.d.ts +0 -4
  801. package/node_modules/undici-types/pool-stats.d.ts +8 -8
  802. package/node_modules/undici-types/pool.d.ts +14 -12
  803. package/node_modules/undici-types/proxy-agent.d.ts +5 -4
  804. package/node_modules/undici-types/readable.d.ts +18 -15
  805. package/node_modules/undici-types/retry-agent.d.ts +1 -1
  806. package/node_modules/undici-types/retry-handler.d.ts +19 -10
  807. package/node_modules/undici-types/snapshot-agent.d.ts +109 -0
  808. package/node_modules/undici-types/util.d.ts +3 -3
  809. package/node_modules/undici-types/utility.d.ts +7 -0
  810. package/node_modules/undici-types/webidl.d.ts +142 -29
  811. package/node_modules/undici-types/websocket.d.ts +38 -2
  812. package/node_modules/uuid/README.md +8 -19
  813. package/node_modules/uuid/dist/{esm-browser/uuid-bin.js → uuid-bin.js} +1 -1
  814. package/node_modules/uuid/dist/{esm-browser/v4.js → v4.js} +7 -4
  815. package/node_modules/uuid/{dist/esm → dist-node}/md5.js +1 -1
  816. package/node_modules/uuid/dist-node/native.js +2 -0
  817. package/node_modules/uuid/{dist/esm → dist-node}/rng.js +1 -1
  818. package/node_modules/uuid/{dist/esm → dist-node}/sha1.js +1 -1
  819. package/node_modules/uuid/{dist/esm → dist-node}/uuid-bin.js +1 -1
  820. package/node_modules/uuid/{dist/esm → dist-node}/v4.js +7 -4
  821. package/node_modules/uuid/package.json +28 -41
  822. package/package.json +7 -7
  823. package/tak-registration.bak +557 -0
  824. package/tak-registration.js +19 -19
  825. package/node_modules/@types/node/compatibility/disposable.d.ts +0 -16
  826. package/node_modules/@types/node/compatibility/index.d.ts +0 -9
  827. package/node_modules/@types/node/compatibility/indexable.d.ts +0 -23
  828. package/node_modules/@types/node/dom-events.d.ts +0 -124
  829. package/node_modules/marchingsquares/.eslintrc.json +0 -81
  830. package/node_modules/marchingsquares/Changelog.md +0 -81
  831. package/node_modules/marchingsquares/LICENSE.md +0 -37
  832. package/node_modules/marchingsquares/README.md +0 -312
  833. package/node_modules/marchingsquares/VERSION +0 -1
  834. package/node_modules/marchingsquares/agpl-3.0.txt +0 -661
  835. package/node_modules/marchingsquares/dist/marchingsquares-esm.js +0 -3410
  836. package/node_modules/marchingsquares/dist/marchingsquares-isobands.js +0 -2513
  837. package/node_modules/marchingsquares/dist/marchingsquares-isobands.min.js +0 -9
  838. package/node_modules/marchingsquares/dist/marchingsquares-isocontours.js +0 -1209
  839. package/node_modules/marchingsquares/dist/marchingsquares-isocontours.min.js +0 -9
  840. package/node_modules/marchingsquares/dist/marchingsquares-isolines.js +0 -1209
  841. package/node_modules/marchingsquares/dist/marchingsquares-isolines.min.js +0 -9
  842. package/node_modules/marchingsquares/dist/marchingsquares.js +0 -3424
  843. package/node_modules/marchingsquares/dist/marchingsquares.min.js +0 -9
  844. package/node_modules/marchingsquares/examples/contour/index.html +0 -117
  845. package/node_modules/marchingsquares/examples/editor/draw-lines.js +0 -60
  846. package/node_modules/marchingsquares/examples/editor/index.html +0 -39
  847. package/node_modules/marchingsquares/examples/editor/script.js +0 -110
  848. package/node_modules/marchingsquares/examples/editor/styles.css +0 -37
  849. package/node_modules/marchingsquares/examples/require/app.js +0 -9
  850. package/node_modules/marchingsquares/examples/require/index.html +0 -14
  851. package/node_modules/marchingsquares/examples/require/main.js +0 -98
  852. package/node_modules/marchingsquares/examples/require/require.js +0 -5
  853. package/node_modules/marchingsquares/examples/simple/index.html +0 -115
  854. package/node_modules/marchingsquares/examples/vienna/index.html +0 -229
  855. package/node_modules/marchingsquares/examples/vienna/vienna_basin.png +0 -0
  856. package/node_modules/marchingsquares/examples/vienna/vienna_data.js +0 -514
  857. package/node_modules/marchingsquares/package.json +0 -47
  858. package/node_modules/marchingsquares/rollup.config.js +0 -122
  859. package/node_modules/marchingsquares/rollup.config.test.js +0 -14
  860. package/node_modules/marchingsquares/src/interpolation.js +0 -84
  861. package/node_modules/marchingsquares/src/isobands.js +0 -1883
  862. package/node_modules/marchingsquares/src/isolines.js +0 -638
  863. package/node_modules/marchingsquares/src/main.js +0 -4
  864. package/node_modules/marchingsquares/src/options.js +0 -80
  865. package/node_modules/marchingsquares/src/polygons.js +0 -531
  866. package/node_modules/marchingsquares/src/quadtree.js +0 -228
  867. package/node_modules/marchingsquares/test/data/in/isoBands-example-case.json +0 -14
  868. package/node_modules/marchingsquares/test/data/in/isoBands-issue#6-0_3.json +0 -12
  869. package/node_modules/marchingsquares/test/data/in/isoBands-issue#6-3_5.json +0 -12
  870. package/node_modules/marchingsquares/test/data/in/isoBands-issue#6-5_7.json +0 -12
  871. package/node_modules/marchingsquares/test/data/in/isoBands-minimal.json +0 -8
  872. package/node_modules/marchingsquares/test/data/in/isoBands-simple.json +0 -9
  873. package/node_modules/marchingsquares/test/data/in/isoLines-example-case.json +0 -13
  874. package/node_modules/marchingsquares/test/data/in/isoLines-simple.json +0 -8
  875. package/node_modules/marchingsquares/test/data/out/isoBands-example-case.json +0 -72
  876. package/node_modules/marchingsquares/test/data/out/isoBands-issue#6-0_3.json +0 -9
  877. package/node_modules/marchingsquares/test/data/out/isoBands-issue#6-3_5.json +0 -36
  878. package/node_modules/marchingsquares/test/data/out/isoBands-issue#6-5_7.json +0 -8
  879. package/node_modules/marchingsquares/test/data/out/isoBands-minimal.json +0 -10
  880. package/node_modules/marchingsquares/test/data/out/isoBands-simple.json +0 -25
  881. package/node_modules/marchingsquares/test/data/out/isoLines-example-case.json +0 -481
  882. package/node_modules/marchingsquares/test/data/out/isoLines-simple.json +0 -8
  883. package/node_modules/marchingsquares/test/test.js +0 -152
  884. package/node_modules/undici-types/file.d.ts +0 -39
  885. package/node_modules/undici-types/filereader.d.ts +0 -54
  886. package/node_modules/uuid/dist/cjs/index.d.ts +0 -15
  887. package/node_modules/uuid/dist/cjs/index.js +0 -31
  888. package/node_modules/uuid/dist/cjs/max.d.ts +0 -2
  889. package/node_modules/uuid/dist/cjs/max.js +0 -3
  890. package/node_modules/uuid/dist/cjs/md5.d.ts +0 -4
  891. package/node_modules/uuid/dist/cjs/md5.js +0 -13
  892. package/node_modules/uuid/dist/cjs/native.d.ts +0 -6
  893. package/node_modules/uuid/dist/cjs/native.js +0 -4
  894. package/node_modules/uuid/dist/cjs/nil.d.ts +0 -2
  895. package/node_modules/uuid/dist/cjs/nil.js +0 -3
  896. package/node_modules/uuid/dist/cjs/package.json +0 -1
  897. package/node_modules/uuid/dist/cjs/parse.d.ts +0 -2
  898. package/node_modules/uuid/dist/cjs/parse.js +0 -11
  899. package/node_modules/uuid/dist/cjs/regex.d.ts +0 -2
  900. package/node_modules/uuid/dist/cjs/regex.js +0 -3
  901. package/node_modules/uuid/dist/cjs/rng.d.ts +0 -1
  902. package/node_modules/uuid/dist/cjs/rng.js +0 -13
  903. package/node_modules/uuid/dist/cjs/sha1.d.ts +0 -4
  904. package/node_modules/uuid/dist/cjs/sha1.js +0 -13
  905. package/node_modules/uuid/dist/cjs/stringify.d.ts +0 -3
  906. package/node_modules/uuid/dist/cjs/stringify.js +0 -39
  907. package/node_modules/uuid/dist/cjs/types.d.ts +0 -21
  908. package/node_modules/uuid/dist/cjs/types.js +0 -2
  909. package/node_modules/uuid/dist/cjs/uuid-bin.d.ts +0 -1
  910. package/node_modules/uuid/dist/cjs/uuid-bin.js +0 -72
  911. package/node_modules/uuid/dist/cjs/v1.d.ts +0 -11
  912. package/node_modules/uuid/dist/cjs/v1.js +0 -87
  913. package/node_modules/uuid/dist/cjs/v1ToV6.d.ts +0 -2
  914. package/node_modules/uuid/dist/cjs/v1ToV6.js +0 -13
  915. package/node_modules/uuid/dist/cjs/v3.d.ts +0 -9
  916. package/node_modules/uuid/dist/cjs/v3.js +0 -14
  917. package/node_modules/uuid/dist/cjs/v35.d.ts +0 -7
  918. package/node_modules/uuid/dist/cjs/v35.js +0 -41
  919. package/node_modules/uuid/dist/cjs/v4.d.ts +0 -4
  920. package/node_modules/uuid/dist/cjs/v4.js +0 -29
  921. package/node_modules/uuid/dist/cjs/v5.d.ts +0 -9
  922. package/node_modules/uuid/dist/cjs/v5.js +0 -14
  923. package/node_modules/uuid/dist/cjs/v6.d.ts +0 -4
  924. package/node_modules/uuid/dist/cjs/v6.js +0 -19
  925. package/node_modules/uuid/dist/cjs/v6ToV1.d.ts +0 -2
  926. package/node_modules/uuid/dist/cjs/v6ToV1.js +0 -13
  927. package/node_modules/uuid/dist/cjs/v7.d.ts +0 -9
  928. package/node_modules/uuid/dist/cjs/v7.js +0 -69
  929. package/node_modules/uuid/dist/cjs/validate.d.ts +0 -2
  930. package/node_modules/uuid/dist/cjs/validate.js +0 -7
  931. package/node_modules/uuid/dist/cjs/version.d.ts +0 -2
  932. package/node_modules/uuid/dist/cjs/version.js +0 -10
  933. package/node_modules/uuid/dist/cjs-browser/index.js +0 -31
  934. package/node_modules/uuid/dist/cjs-browser/max.js +0 -3
  935. package/node_modules/uuid/dist/cjs-browser/md5.js +0 -137
  936. package/node_modules/uuid/dist/cjs-browser/native.js +0 -4
  937. package/node_modules/uuid/dist/cjs-browser/nil.js +0 -3
  938. package/node_modules/uuid/dist/cjs-browser/package.json +0 -1
  939. package/node_modules/uuid/dist/cjs-browser/parse.js +0 -11
  940. package/node_modules/uuid/dist/cjs-browser/regex.js +0 -3
  941. package/node_modules/uuid/dist/cjs-browser/rng.js +0 -14
  942. package/node_modules/uuid/dist/cjs-browser/sha1.js +0 -72
  943. package/node_modules/uuid/dist/cjs-browser/stringify.js +0 -39
  944. package/node_modules/uuid/dist/cjs-browser/types.js +0 -2
  945. package/node_modules/uuid/dist/cjs-browser/uuid-bin.js +0 -72
  946. package/node_modules/uuid/dist/cjs-browser/v1.js +0 -87
  947. package/node_modules/uuid/dist/cjs-browser/v1ToV6.js +0 -13
  948. package/node_modules/uuid/dist/cjs-browser/v3.js +0 -14
  949. package/node_modules/uuid/dist/cjs-browser/v35.js +0 -41
  950. package/node_modules/uuid/dist/cjs-browser/v4.js +0 -29
  951. package/node_modules/uuid/dist/cjs-browser/v5.js +0 -14
  952. package/node_modules/uuid/dist/cjs-browser/v6.js +0 -19
  953. package/node_modules/uuid/dist/cjs-browser/v6ToV1.js +0 -13
  954. package/node_modules/uuid/dist/cjs-browser/v7.js +0 -69
  955. package/node_modules/uuid/dist/cjs-browser/validate.js +0 -7
  956. package/node_modules/uuid/dist/cjs-browser/version.js +0 -10
  957. package/node_modules/uuid/dist/esm/index.d.ts +0 -15
  958. package/node_modules/uuid/dist/esm/max.d.ts +0 -2
  959. package/node_modules/uuid/dist/esm/md5.d.ts +0 -4
  960. package/node_modules/uuid/dist/esm/native.d.ts +0 -6
  961. package/node_modules/uuid/dist/esm/native.js +0 -2
  962. package/node_modules/uuid/dist/esm/nil.d.ts +0 -2
  963. package/node_modules/uuid/dist/esm/parse.d.ts +0 -2
  964. package/node_modules/uuid/dist/esm/regex.d.ts +0 -2
  965. package/node_modules/uuid/dist/esm/rng.d.ts +0 -1
  966. package/node_modules/uuid/dist/esm/sha1.d.ts +0 -4
  967. package/node_modules/uuid/dist/esm/stringify.d.ts +0 -3
  968. package/node_modules/uuid/dist/esm/types.d.ts +0 -21
  969. package/node_modules/uuid/dist/esm/uuid-bin.d.ts +0 -1
  970. package/node_modules/uuid/dist/esm/v1.d.ts +0 -11
  971. package/node_modules/uuid/dist/esm/v1ToV6.d.ts +0 -2
  972. package/node_modules/uuid/dist/esm/v3.d.ts +0 -9
  973. package/node_modules/uuid/dist/esm/v35.d.ts +0 -7
  974. package/node_modules/uuid/dist/esm/v4.d.ts +0 -4
  975. package/node_modules/uuid/dist/esm/v5.d.ts +0 -9
  976. package/node_modules/uuid/dist/esm/v6.d.ts +0 -4
  977. package/node_modules/uuid/dist/esm/v6ToV1.d.ts +0 -2
  978. package/node_modules/uuid/dist/esm/v7.d.ts +0 -9
  979. package/node_modules/uuid/dist/esm/validate.d.ts +0 -2
  980. package/node_modules/uuid/dist/esm/version.d.ts +0 -2
  981. package/node_modules/uuid/dist/esm-browser/index.d.ts +0 -15
  982. package/node_modules/uuid/dist/esm-browser/max.d.ts +0 -2
  983. package/node_modules/uuid/dist/esm-browser/md5.d.ts +0 -2
  984. package/node_modules/uuid/dist/esm-browser/native.d.ts +0 -4
  985. package/node_modules/uuid/dist/esm-browser/nil.d.ts +0 -2
  986. package/node_modules/uuid/dist/esm-browser/parse.d.ts +0 -2
  987. package/node_modules/uuid/dist/esm-browser/regex.d.ts +0 -2
  988. package/node_modules/uuid/dist/esm-browser/rng.d.ts +0 -1
  989. package/node_modules/uuid/dist/esm-browser/sha1.d.ts +0 -2
  990. package/node_modules/uuid/dist/esm-browser/stringify.d.ts +0 -3
  991. package/node_modules/uuid/dist/esm-browser/types.d.ts +0 -21
  992. package/node_modules/uuid/dist/esm-browser/uuid-bin.d.ts +0 -1
  993. package/node_modules/uuid/dist/esm-browser/v1.d.ts +0 -11
  994. package/node_modules/uuid/dist/esm-browser/v1ToV6.d.ts +0 -2
  995. package/node_modules/uuid/dist/esm-browser/v3.d.ts +0 -9
  996. package/node_modules/uuid/dist/esm-browser/v35.d.ts +0 -7
  997. package/node_modules/uuid/dist/esm-browser/v4.d.ts +0 -4
  998. package/node_modules/uuid/dist/esm-browser/v5.d.ts +0 -9
  999. package/node_modules/uuid/dist/esm-browser/v6.d.ts +0 -4
  1000. package/node_modules/uuid/dist/esm-browser/v6ToV1.d.ts +0 -2
  1001. package/node_modules/uuid/dist/esm-browser/v7.d.ts +0 -9
  1002. package/node_modules/uuid/dist/esm-browser/validate.d.ts +0 -2
  1003. package/node_modules/uuid/dist/esm-browser/version.d.ts +0 -2
  1004. /package/node_modules/uuid/dist/{cjs-browser/index.d.ts → index.d.ts} +0 -0
  1005. /package/node_modules/uuid/dist/{esm/index.js → index.js} +0 -0
  1006. /package/node_modules/uuid/dist/{cjs-browser/max.d.ts → max.d.ts} +0 -0
  1007. /package/node_modules/uuid/dist/{esm/max.js → max.js} +0 -0
  1008. /package/node_modules/uuid/dist/{cjs-browser/md5.d.ts → md5.d.ts} +0 -0
  1009. /package/node_modules/uuid/dist/{esm-browser/md5.js → md5.js} +0 -0
  1010. /package/node_modules/uuid/dist/{cjs-browser/native.d.ts → native.d.ts} +0 -0
  1011. /package/node_modules/uuid/dist/{esm-browser/native.js → native.js} +0 -0
  1012. /package/node_modules/uuid/dist/{cjs-browser/nil.d.ts → nil.d.ts} +0 -0
  1013. /package/node_modules/uuid/dist/{esm/nil.js → nil.js} +0 -0
  1014. /package/node_modules/uuid/dist/{cjs-browser/parse.d.ts → parse.d.ts} +0 -0
  1015. /package/node_modules/uuid/dist/{esm/parse.js → parse.js} +0 -0
  1016. /package/node_modules/uuid/dist/{cjs-browser/regex.d.ts → regex.d.ts} +0 -0
  1017. /package/node_modules/uuid/dist/{esm/regex.js → regex.js} +0 -0
  1018. /package/node_modules/uuid/dist/{cjs-browser/rng.d.ts → rng.d.ts} +0 -0
  1019. /package/node_modules/uuid/dist/{esm-browser/rng.js → rng.js} +0 -0
  1020. /package/node_modules/uuid/dist/{cjs-browser/sha1.d.ts → sha1.d.ts} +0 -0
  1021. /package/node_modules/uuid/dist/{esm-browser/sha1.js → sha1.js} +0 -0
  1022. /package/node_modules/uuid/dist/{cjs-browser/stringify.d.ts → stringify.d.ts} +0 -0
  1023. /package/node_modules/uuid/dist/{esm/stringify.js → stringify.js} +0 -0
  1024. /package/node_modules/uuid/dist/{cjs-browser/types.d.ts → types.d.ts} +0 -0
  1025. /package/node_modules/uuid/dist/{esm/types.js → types.js} +0 -0
  1026. /package/node_modules/uuid/dist/{cjs-browser/uuid-bin.d.ts → uuid-bin.d.ts} +0 -0
  1027. /package/node_modules/uuid/dist/{cjs-browser/v1.d.ts → v1.d.ts} +0 -0
  1028. /package/node_modules/uuid/dist/{esm/v1.js → v1.js} +0 -0
  1029. /package/node_modules/uuid/dist/{cjs-browser/v1ToV6.d.ts → v1ToV6.d.ts} +0 -0
  1030. /package/node_modules/uuid/dist/{esm/v1ToV6.js → v1ToV6.js} +0 -0
  1031. /package/node_modules/uuid/dist/{cjs-browser/v3.d.ts → v3.d.ts} +0 -0
  1032. /package/node_modules/uuid/dist/{esm/v3.js → v3.js} +0 -0
  1033. /package/node_modules/uuid/dist/{cjs-browser/v35.d.ts → v35.d.ts} +0 -0
  1034. /package/node_modules/uuid/dist/{esm/v35.js → v35.js} +0 -0
  1035. /package/node_modules/uuid/dist/{cjs-browser/v4.d.ts → v4.d.ts} +0 -0
  1036. /package/node_modules/uuid/dist/{cjs-browser/v5.d.ts → v5.d.ts} +0 -0
  1037. /package/node_modules/uuid/dist/{esm/v5.js → v5.js} +0 -0
  1038. /package/node_modules/uuid/dist/{cjs-browser/v6.d.ts → v6.d.ts} +0 -0
  1039. /package/node_modules/uuid/dist/{esm/v6.js → v6.js} +0 -0
  1040. /package/node_modules/uuid/dist/{cjs-browser/v6ToV1.d.ts → v6ToV1.d.ts} +0 -0
  1041. /package/node_modules/uuid/dist/{esm/v6ToV1.js → v6ToV1.js} +0 -0
  1042. /package/node_modules/uuid/dist/{cjs-browser/v7.d.ts → v7.d.ts} +0 -0
  1043. /package/node_modules/uuid/dist/{esm/v7.js → v7.js} +0 -0
  1044. /package/node_modules/uuid/dist/{cjs-browser/validate.d.ts → validate.d.ts} +0 -0
  1045. /package/node_modules/uuid/dist/{esm/validate.js → validate.js} +0 -0
  1046. /package/node_modules/uuid/dist/{cjs-browser/version.d.ts → version.d.ts} +0 -0
  1047. /package/node_modules/uuid/dist/{esm/version.js → version.js} +0 -0
  1048. /package/node_modules/uuid/{dist/esm → dist-node}/bin/uuid +0 -0
  1049. /package/node_modules/uuid/{dist/esm-browser → dist-node}/index.js +0 -0
  1050. /package/node_modules/uuid/{dist/esm-browser → dist-node}/max.js +0 -0
  1051. /package/node_modules/uuid/{dist/esm-browser → dist-node}/nil.js +0 -0
  1052. /package/node_modules/uuid/{dist/esm-browser → dist-node}/parse.js +0 -0
  1053. /package/node_modules/uuid/{dist/esm-browser → dist-node}/regex.js +0 -0
  1054. /package/node_modules/uuid/{dist/esm-browser → dist-node}/stringify.js +0 -0
  1055. /package/node_modules/uuid/{dist/esm-browser → dist-node}/types.js +0 -0
  1056. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v1.js +0 -0
  1057. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v1ToV6.js +0 -0
  1058. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v3.js +0 -0
  1059. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v35.js +0 -0
  1060. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v5.js +0 -0
  1061. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v6.js +0 -0
  1062. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v6ToV1.js +0 -0
  1063. /package/node_modules/uuid/{dist/esm-browser → dist-node}/v7.js +0 -0
  1064. /package/node_modules/uuid/{dist/esm-browser → dist-node}/validate.js +0 -0
  1065. /package/node_modules/uuid/{dist/esm-browser → dist-node}/version.js +0 -0
@@ -14,9 +14,10 @@
14
14
  * // Prints:
15
15
  * // c0fa1bc00531bd78ef38c628449c5102aeabd49b5dc3a2a516ea6ea959d6658e
16
16
  * ```
17
- * @see [source](https://github.com/nodejs/node/blob/v22.x/lib/crypto.js)
17
+ * @see [source](https://github.com/nodejs/node/blob/v24.x/lib/crypto.js)
18
18
  */
19
19
  declare module "crypto" {
20
+ import { NonSharedBuffer } from "node:buffer";
20
21
  import * as stream from "node:stream";
21
22
  import { PeerCertificate } from "node:tls";
22
23
  /**
@@ -44,7 +45,7 @@ declare module "crypto" {
44
45
  * @param encoding The `encoding` of the `spkac` string.
45
46
  * @return The challenge component of the `spkac` data structure, which includes a public key and a challenge.
46
47
  */
47
- static exportChallenge(spkac: BinaryLike): Buffer;
48
+ static exportChallenge(spkac: BinaryLike): NonSharedBuffer;
48
49
  /**
49
50
  * ```js
50
51
  * const { Certificate } = await import('node:crypto');
@@ -57,7 +58,7 @@ declare module "crypto" {
57
58
  * @param encoding The `encoding` of the `spkac` string.
58
59
  * @return The public key component of the `spkac` data structure, which includes a public key and a challenge.
59
60
  */
60
- static exportPublicKey(spkac: BinaryLike, encoding?: string): Buffer;
61
+ static exportPublicKey(spkac: BinaryLike, encoding?: string): NonSharedBuffer;
61
62
  /**
62
63
  * ```js
63
64
  * import { Buffer } from 'node:buffer';
@@ -78,7 +79,7 @@ declare module "crypto" {
78
79
  * @returns The challenge component of the `spkac` data structure,
79
80
  * which includes a public key and a challenge.
80
81
  */
81
- exportChallenge(spkac: BinaryLike): Buffer;
82
+ exportChallenge(spkac: BinaryLike): NonSharedBuffer;
82
83
  /**
83
84
  * @deprecated
84
85
  * @param spkac
@@ -86,7 +87,7 @@ declare module "crypto" {
86
87
  * @returns The public key component of the `spkac` data structure,
87
88
  * which includes a public key and a challenge.
88
89
  */
89
- exportPublicKey(spkac: BinaryLike, encoding?: string): Buffer;
90
+ exportPublicKey(spkac: BinaryLike, encoding?: string): NonSharedBuffer;
90
91
  /**
91
92
  * @deprecated
92
93
  * @param spkac
@@ -96,7 +97,7 @@ declare module "crypto" {
96
97
  verifySpkac(spkac: NodeJS.ArrayBufferView): boolean;
97
98
  }
98
99
  namespace constants {
99
- // https://nodejs.org/dist/latest-v22.x/docs/api/crypto.html#crypto-constants
100
+ // https://nodejs.org/dist/latest-v24.x/docs/api/crypto.html#crypto-constants
100
101
  const OPENSSL_VERSION_NUMBER: number;
101
102
  /** Applies multiple bug workarounds within OpenSSL. See https://www.openssl.org/docs/man1.0.2/ssl/SSL_CTX_set_options.html for detail. */
102
103
  const SSL_OP_ALL: number;
@@ -402,7 +403,7 @@ declare module "crypto" {
402
403
  * @since v0.1.92
403
404
  * @param encoding The `encoding` of the return value.
404
405
  */
405
- digest(): Buffer;
406
+ digest(): NonSharedBuffer;
406
407
  digest(encoding: BinaryToTextEncoding): string;
407
408
  }
408
409
  /**
@@ -496,7 +497,7 @@ declare module "crypto" {
496
497
  * @since v0.1.94
497
498
  * @param encoding The `encoding` of the return value.
498
499
  */
499
- digest(): Buffer;
500
+ digest(): NonSharedBuffer;
500
501
  digest(encoding: BinaryToTextEncoding): string;
501
502
  }
502
503
  type KeyObjectType = "secret" | "public" | "private";
@@ -510,50 +511,50 @@ declare module "crypto" {
510
511
  format: "jwk";
511
512
  }
512
513
  interface JsonWebKey {
513
- crv?: string | undefined;
514
- d?: string | undefined;
515
- dp?: string | undefined;
516
- dq?: string | undefined;
517
- e?: string | undefined;
518
- k?: string | undefined;
519
- kty?: string | undefined;
520
- n?: string | undefined;
521
- p?: string | undefined;
522
- q?: string | undefined;
523
- qi?: string | undefined;
524
- x?: string | undefined;
525
- y?: string | undefined;
514
+ crv?: string;
515
+ d?: string;
516
+ dp?: string;
517
+ dq?: string;
518
+ e?: string;
519
+ k?: string;
520
+ kty?: string;
521
+ n?: string;
522
+ p?: string;
523
+ q?: string;
524
+ qi?: string;
525
+ x?: string;
526
+ y?: string;
526
527
  [key: string]: unknown;
527
528
  }
528
529
  interface AsymmetricKeyDetails {
529
530
  /**
530
531
  * Key size in bits (RSA, DSA).
531
532
  */
532
- modulusLength?: number | undefined;
533
+ modulusLength?: number;
533
534
  /**
534
535
  * Public exponent (RSA).
535
536
  */
536
- publicExponent?: bigint | undefined;
537
+ publicExponent?: bigint;
537
538
  /**
538
539
  * Name of the message digest (RSA-PSS).
539
540
  */
540
- hashAlgorithm?: string | undefined;
541
+ hashAlgorithm?: string;
541
542
  /**
542
543
  * Name of the message digest used by MGF1 (RSA-PSS).
543
544
  */
544
- mgf1HashAlgorithm?: string | undefined;
545
+ mgf1HashAlgorithm?: string;
545
546
  /**
546
547
  * Minimal salt length in bytes (RSA-PSS).
547
548
  */
548
- saltLength?: number | undefined;
549
+ saltLength?: number;
549
550
  /**
550
551
  * Size of q in bits (DSA).
551
552
  */
552
- divisorLength?: number | undefined;
553
+ divisorLength?: number;
553
554
  /**
554
555
  * Name of the curve (EC).
555
556
  */
556
- namedCurve?: string | undefined;
557
+ namedCurve?: string;
557
558
  }
558
559
  /**
559
560
  * Node.js uses a `KeyObject` class to represent a symmetric or asymmetric key,
@@ -591,24 +592,14 @@ declare module "crypto" {
591
592
  */
592
593
  static from(key: webcrypto.CryptoKey): KeyObject;
593
594
  /**
594
- * For asymmetric keys, this property represents the type of the key. Supported key
595
- * types are:
596
- *
597
- * * `'rsa'` (OID 1.2.840.113549.1.1.1)
598
- * * `'rsa-pss'` (OID 1.2.840.113549.1.1.10)
599
- * * `'dsa'` (OID 1.2.840.10040.4.1)
600
- * * `'ec'` (OID 1.2.840.10045.2.1)
601
- * * `'x25519'` (OID 1.3.101.110)
602
- * * `'x448'` (OID 1.3.101.111)
603
- * * `'ed25519'` (OID 1.3.101.112)
604
- * * `'ed448'` (OID 1.3.101.113)
605
- * * `'dh'` (OID 1.2.840.113549.1.3.1)
595
+ * For asymmetric keys, this property represents the type of the key. See the
596
+ * supported [asymmetric key types](https://nodejs.org/docs/latest-v24.x/api/crypto.html#asymmetric-key-types).
606
597
  *
607
598
  * This property is `undefined` for unrecognized `KeyObject` types and symmetric
608
599
  * keys.
609
600
  * @since v11.6.0
610
601
  */
611
- asymmetricKeyType?: KeyType | undefined;
602
+ asymmetricKeyType?: KeyType;
612
603
  /**
613
604
  * This property exists only on asymmetric keys. Depending on the type of the key,
614
605
  * this object contains information about the key. None of the information obtained
@@ -622,7 +613,7 @@ declare module "crypto" {
622
613
  * Other key details might be exposed via this API using additional attributes.
623
614
  * @since v15.7.0
624
615
  */
625
- asymmetricKeyDetails?: AsymmetricKeyDetails | undefined;
616
+ asymmetricKeyDetails?: AsymmetricKeyDetails;
626
617
  /**
627
618
  * For symmetric keys, the following encoding options can be used:
628
619
  *
@@ -646,8 +637,8 @@ declare module "crypto" {
646
637
  * PKCS#1 and SEC1 encryption.
647
638
  * @since v11.6.0
648
639
  */
649
- export(options: KeyExportOptions<"pem">): string | Buffer;
650
- export(options?: KeyExportOptions<"der">): Buffer;
640
+ export(options: KeyExportOptions<"pem">): string | NonSharedBuffer;
641
+ export(options?: KeyExportOptions<"der">): NonSharedBuffer;
651
642
  export(options?: JwkKeyExportOptions): JsonWebKey;
652
643
  /**
653
644
  * Returns `true` or `false` depending on whether the keys have exactly the same
@@ -661,7 +652,7 @@ declare module "crypto" {
661
652
  * property is `undefined` for asymmetric keys.
662
653
  * @since v11.6.0
663
654
  */
664
- symmetricKeySize?: number | undefined;
655
+ symmetricKeySize?: number;
665
656
  /**
666
657
  * Converts a `KeyObject` instance to a `CryptoKey`.
667
658
  * @since 22.10.0
@@ -760,9 +751,9 @@ declare module "crypto" {
760
751
  key: CipherKey,
761
752
  iv: BinaryLike | null,
762
753
  options?: stream.TransformOptions,
763
- ): Cipher;
754
+ ): Cipheriv;
764
755
  /**
765
- * Instances of the `Cipher` class are used to encrypt data. The class can be
756
+ * Instances of the `Cipheriv` class are used to encrypt data. The class can be
766
757
  * used in one of two ways:
767
758
  *
768
759
  * * As a `stream` that is both readable and writable, where plain unencrypted
@@ -771,10 +762,10 @@ declare module "crypto" {
771
762
  * the encrypted data.
772
763
  *
773
764
  * The {@link createCipheriv} method is
774
- * used to create `Cipher` instances. `Cipher` objects are not to be created
765
+ * used to create `Cipheriv` instances. `Cipheriv` objects are not to be created
775
766
  * directly using the `new` keyword.
776
767
  *
777
- * Example: Using `Cipher` objects as streams:
768
+ * Example: Using `Cipheriv` objects as streams:
778
769
  *
779
770
  * ```js
780
771
  * const {
@@ -809,7 +800,7 @@ declare module "crypto" {
809
800
  * });
810
801
  * ```
811
802
  *
812
- * Example: Using `Cipher` and piped streams:
803
+ * Example: Using `Cipheriv` and piped streams:
813
804
  *
814
805
  * ```js
815
806
  * import {
@@ -880,7 +871,7 @@ declare module "crypto" {
880
871
  * ```
881
872
  * @since v0.1.94
882
873
  */
883
- class Cipher extends stream.Transform {
874
+ class Cipheriv extends stream.Transform {
884
875
  private constructor();
885
876
  /**
886
877
  * Updates the cipher with `data`. If the `inputEncoding` argument is given,
@@ -896,22 +887,22 @@ declare module "crypto" {
896
887
  * @param inputEncoding The `encoding` of the data.
897
888
  * @param outputEncoding The `encoding` of the return value.
898
889
  */
899
- update(data: BinaryLike): Buffer;
900
- update(data: string, inputEncoding: Encoding): Buffer;
890
+ update(data: BinaryLike): NonSharedBuffer;
891
+ update(data: string, inputEncoding: Encoding): NonSharedBuffer;
901
892
  update(data: NodeJS.ArrayBufferView, inputEncoding: undefined, outputEncoding: Encoding): string;
902
893
  update(data: string, inputEncoding: Encoding | undefined, outputEncoding: Encoding): string;
903
894
  /**
904
- * Once the `cipher.final()` method has been called, the `Cipher` object can no
895
+ * Once the `cipher.final()` method has been called, the `Cipheriv` object can no
905
896
  * longer be used to encrypt data. Attempts to call `cipher.final()` more than
906
897
  * once will result in an error being thrown.
907
898
  * @since v0.1.94
908
899
  * @param outputEncoding The `encoding` of the return value.
909
900
  * @return Any remaining enciphered contents. If `outputEncoding` is specified, a string is returned. If an `outputEncoding` is not provided, a {@link Buffer} is returned.
910
901
  */
911
- final(): Buffer;
902
+ final(): NonSharedBuffer;
912
903
  final(outputEncoding: BufferEncoding): string;
913
904
  /**
914
- * When using block encryption algorithms, the `Cipher` class will automatically
905
+ * When using block encryption algorithms, the `Cipheriv` class will automatically
915
906
  * add padding to the input data to the appropriate block size. To disable the
916
907
  * default padding call `cipher.setAutoPadding(false)`.
917
908
  *
@@ -927,44 +918,44 @@ declare module "crypto" {
927
918
  */
928
919
  setAutoPadding(autoPadding?: boolean): this;
929
920
  }
930
- interface CipherCCM extends Cipher {
921
+ interface CipherCCM extends Cipheriv {
931
922
  setAAD(
932
923
  buffer: NodeJS.ArrayBufferView,
933
924
  options: {
934
925
  plaintextLength: number;
935
926
  },
936
927
  ): this;
937
- getAuthTag(): Buffer;
928
+ getAuthTag(): NonSharedBuffer;
938
929
  }
939
- interface CipherGCM extends Cipher {
930
+ interface CipherGCM extends Cipheriv {
940
931
  setAAD(
941
932
  buffer: NodeJS.ArrayBufferView,
942
933
  options?: {
943
934
  plaintextLength: number;
944
935
  },
945
936
  ): this;
946
- getAuthTag(): Buffer;
937
+ getAuthTag(): NonSharedBuffer;
947
938
  }
948
- interface CipherOCB extends Cipher {
939
+ interface CipherOCB extends Cipheriv {
949
940
  setAAD(
950
941
  buffer: NodeJS.ArrayBufferView,
951
942
  options?: {
952
943
  plaintextLength: number;
953
944
  },
954
945
  ): this;
955
- getAuthTag(): Buffer;
946
+ getAuthTag(): NonSharedBuffer;
956
947
  }
957
- interface CipherChaCha20Poly1305 extends Cipher {
948
+ interface CipherChaCha20Poly1305 extends Cipheriv {
958
949
  setAAD(
959
950
  buffer: NodeJS.ArrayBufferView,
960
951
  options: {
961
952
  plaintextLength: number;
962
953
  },
963
954
  ): this;
964
- getAuthTag(): Buffer;
955
+ getAuthTag(): NonSharedBuffer;
965
956
  }
966
957
  /**
967
- * Creates and returns a `Decipher` object that uses the given `algorithm`, `key` and initialization vector (`iv`).
958
+ * Creates and returns a `Decipheriv` object that uses the given `algorithm`, `key` and initialization vector (`iv`).
968
959
  *
969
960
  * The `options` argument controls stream behavior and is optional except when a
970
961
  * cipher in CCM or OCB mode (e.g. `'aes-128-ccm'`) is used. In that case, the `authTagLength` option is required and specifies the length of the
@@ -1021,9 +1012,9 @@ declare module "crypto" {
1021
1012
  key: CipherKey,
1022
1013
  iv: BinaryLike | null,
1023
1014
  options?: stream.TransformOptions,
1024
- ): Decipher;
1015
+ ): Decipheriv;
1025
1016
  /**
1026
- * Instances of the `Decipher` class are used to decrypt data. The class can be
1017
+ * Instances of the `Decipheriv` class are used to decrypt data. The class can be
1027
1018
  * used in one of two ways:
1028
1019
  *
1029
1020
  * * As a `stream` that is both readable and writable, where plain encrypted
@@ -1032,10 +1023,10 @@ declare module "crypto" {
1032
1023
  * produce the unencrypted data.
1033
1024
  *
1034
1025
  * The {@link createDecipheriv} method is
1035
- * used to create `Decipher` instances. `Decipher` objects are not to be created
1026
+ * used to create `Decipheriv` instances. `Decipheriv` objects are not to be created
1036
1027
  * directly using the `new` keyword.
1037
1028
  *
1038
- * Example: Using `Decipher` objects as streams:
1029
+ * Example: Using `Decipheriv` objects as streams:
1039
1030
  *
1040
1031
  * ```js
1041
1032
  * import { Buffer } from 'node:buffer';
@@ -1074,7 +1065,7 @@ declare module "crypto" {
1074
1065
  * decipher.end();
1075
1066
  * ```
1076
1067
  *
1077
- * Example: Using `Decipher` and piped streams:
1068
+ * Example: Using `Decipheriv` and piped streams:
1078
1069
  *
1079
1070
  * ```js
1080
1071
  * import {
@@ -1130,7 +1121,7 @@ declare module "crypto" {
1130
1121
  * ```
1131
1122
  * @since v0.1.94
1132
1123
  */
1133
- class Decipher extends stream.Transform {
1124
+ class Decipheriv extends stream.Transform {
1134
1125
  private constructor();
1135
1126
  /**
1136
1127
  * Updates the decipher with `data`. If the `inputEncoding` argument is given,
@@ -1146,19 +1137,19 @@ declare module "crypto" {
1146
1137
  * @param inputEncoding The `encoding` of the `data` string.
1147
1138
  * @param outputEncoding The `encoding` of the return value.
1148
1139
  */
1149
- update(data: NodeJS.ArrayBufferView): Buffer;
1150
- update(data: string, inputEncoding: Encoding): Buffer;
1140
+ update(data: NodeJS.ArrayBufferView): NonSharedBuffer;
1141
+ update(data: string, inputEncoding: Encoding): NonSharedBuffer;
1151
1142
  update(data: NodeJS.ArrayBufferView, inputEncoding: undefined, outputEncoding: Encoding): string;
1152
1143
  update(data: string, inputEncoding: Encoding | undefined, outputEncoding: Encoding): string;
1153
1144
  /**
1154
- * Once the `decipher.final()` method has been called, the `Decipher` object can
1145
+ * Once the `decipher.final()` method has been called, the `Decipheriv` object can
1155
1146
  * no longer be used to decrypt data. Attempts to call `decipher.final()` more
1156
1147
  * than once will result in an error being thrown.
1157
1148
  * @since v0.1.94
1158
1149
  * @param outputEncoding The `encoding` of the return value.
1159
1150
  * @return Any remaining deciphered contents. If `outputEncoding` is specified, a string is returned. If an `outputEncoding` is not provided, a {@link Buffer} is returned.
1160
1151
  */
1161
- final(): Buffer;
1152
+ final(): NonSharedBuffer;
1162
1153
  final(outputEncoding: BufferEncoding): string;
1163
1154
  /**
1164
1155
  * When data has been encrypted without standard block padding, calling `decipher.setAutoPadding(false)` will disable automatic padding to prevent `decipher.final()` from checking for and
@@ -1174,7 +1165,7 @@ declare module "crypto" {
1174
1165
  */
1175
1166
  setAutoPadding(auto_padding?: boolean): this;
1176
1167
  }
1177
- interface DecipherCCM extends Decipher {
1168
+ interface DecipherCCM extends Decipheriv {
1178
1169
  setAuthTag(buffer: NodeJS.ArrayBufferView): this;
1179
1170
  setAAD(
1180
1171
  buffer: NodeJS.ArrayBufferView,
@@ -1183,7 +1174,7 @@ declare module "crypto" {
1183
1174
  },
1184
1175
  ): this;
1185
1176
  }
1186
- interface DecipherGCM extends Decipher {
1177
+ interface DecipherGCM extends Decipheriv {
1187
1178
  setAuthTag(buffer: NodeJS.ArrayBufferView): this;
1188
1179
  setAAD(
1189
1180
  buffer: NodeJS.ArrayBufferView,
@@ -1192,7 +1183,7 @@ declare module "crypto" {
1192
1183
  },
1193
1184
  ): this;
1194
1185
  }
1195
- interface DecipherOCB extends Decipher {
1186
+ interface DecipherOCB extends Decipheriv {
1196
1187
  setAuthTag(buffer: NodeJS.ArrayBufferView): this;
1197
1188
  setAAD(
1198
1189
  buffer: NodeJS.ArrayBufferView,
@@ -1201,7 +1192,7 @@ declare module "crypto" {
1201
1192
  },
1202
1193
  ): this;
1203
1194
  }
1204
- interface DecipherChaCha20Poly1305 extends Decipher {
1195
+ interface DecipherChaCha20Poly1305 extends Decipheriv {
1205
1196
  setAuthTag(buffer: NodeJS.ArrayBufferView): this;
1206
1197
  setAAD(
1207
1198
  buffer: NodeJS.ArrayBufferView,
@@ -1320,6 +1311,7 @@ declare module "crypto" {
1320
1311
  * @since v0.1.92
1321
1312
  * @param options `stream.Writable` options
1322
1313
  */
1314
+ // TODO: signing algorithm type
1323
1315
  function createSign(algorithm: string, options?: stream.WritableOptions): Sign;
1324
1316
  type DSAEncoding = "der" | "ieee-p1363";
1325
1317
  interface SigningOptions {
@@ -1329,6 +1321,7 @@ declare module "crypto" {
1329
1321
  padding?: number | undefined;
1330
1322
  saltLength?: number | undefined;
1331
1323
  dsaEncoding?: DSAEncoding | undefined;
1324
+ context?: ArrayBuffer | NodeJS.ArrayBufferView | undefined;
1332
1325
  }
1333
1326
  interface SignPrivateKeyInput extends PrivateKeyInput, SigningOptions {}
1334
1327
  interface SignKeyObjectInput extends SigningOptions {
@@ -1430,7 +1423,7 @@ declare module "crypto" {
1430
1423
  * called. Multiple calls to `sign.sign()` will result in an error being thrown.
1431
1424
  * @since v0.1.92
1432
1425
  */
1433
- sign(privateKey: KeyLike | SignKeyObjectInput | SignPrivateKeyInput | SignJsonWebKeyInput): Buffer;
1426
+ sign(privateKey: KeyLike | SignKeyObjectInput | SignPrivateKeyInput | SignJsonWebKeyInput): NonSharedBuffer;
1434
1427
  sign(
1435
1428
  privateKey: KeyLike | SignKeyObjectInput | SignPrivateKeyInput | SignJsonWebKeyInput,
1436
1429
  outputFormat: BinaryToTextEncoding,
@@ -1589,7 +1582,7 @@ declare module "crypto" {
1589
1582
  * @since v0.5.0
1590
1583
  * @param encoding The `encoding` of the return value.
1591
1584
  */
1592
- generateKeys(): Buffer;
1585
+ generateKeys(): NonSharedBuffer;
1593
1586
  generateKeys(encoding: BinaryToTextEncoding): string;
1594
1587
  /**
1595
1588
  * Computes the shared secret using `otherPublicKey` as the other
@@ -1604,8 +1597,16 @@ declare module "crypto" {
1604
1597
  * @param inputEncoding The `encoding` of an `otherPublicKey` string.
1605
1598
  * @param outputEncoding The `encoding` of the return value.
1606
1599
  */
1607
- computeSecret(otherPublicKey: NodeJS.ArrayBufferView, inputEncoding?: null, outputEncoding?: null): Buffer;
1608
- computeSecret(otherPublicKey: string, inputEncoding: BinaryToTextEncoding, outputEncoding?: null): Buffer;
1600
+ computeSecret(
1601
+ otherPublicKey: NodeJS.ArrayBufferView,
1602
+ inputEncoding?: null,
1603
+ outputEncoding?: null,
1604
+ ): NonSharedBuffer;
1605
+ computeSecret(
1606
+ otherPublicKey: string,
1607
+ inputEncoding: BinaryToTextEncoding,
1608
+ outputEncoding?: null,
1609
+ ): NonSharedBuffer;
1609
1610
  computeSecret(
1610
1611
  otherPublicKey: NodeJS.ArrayBufferView,
1611
1612
  inputEncoding: null,
@@ -1623,7 +1624,7 @@ declare module "crypto" {
1623
1624
  * @since v0.5.0
1624
1625
  * @param encoding The `encoding` of the return value.
1625
1626
  */
1626
- getPrime(): Buffer;
1627
+ getPrime(): NonSharedBuffer;
1627
1628
  getPrime(encoding: BinaryToTextEncoding): string;
1628
1629
  /**
1629
1630
  * Returns the Diffie-Hellman generator in the specified `encoding`.
@@ -1632,7 +1633,7 @@ declare module "crypto" {
1632
1633
  * @since v0.5.0
1633
1634
  * @param encoding The `encoding` of the return value.
1634
1635
  */
1635
- getGenerator(): Buffer;
1636
+ getGenerator(): NonSharedBuffer;
1636
1637
  getGenerator(encoding: BinaryToTextEncoding): string;
1637
1638
  /**
1638
1639
  * Returns the Diffie-Hellman public key in the specified `encoding`.
@@ -1641,7 +1642,7 @@ declare module "crypto" {
1641
1642
  * @since v0.5.0
1642
1643
  * @param encoding The `encoding` of the return value.
1643
1644
  */
1644
- getPublicKey(): Buffer;
1645
+ getPublicKey(): NonSharedBuffer;
1645
1646
  getPublicKey(encoding: BinaryToTextEncoding): string;
1646
1647
  /**
1647
1648
  * Returns the Diffie-Hellman private key in the specified `encoding`.
@@ -1650,7 +1651,7 @@ declare module "crypto" {
1650
1651
  * @since v0.5.0
1651
1652
  * @param encoding The `encoding` of the return value.
1652
1653
  */
1653
- getPrivateKey(): Buffer;
1654
+ getPrivateKey(): NonSharedBuffer;
1654
1655
  getPrivateKey(encoding: BinaryToTextEncoding): string;
1655
1656
  /**
1656
1657
  * Sets the Diffie-Hellman public key. If the `encoding` argument is provided, `publicKey` is expected
@@ -1794,7 +1795,7 @@ declare module "crypto" {
1794
1795
  iterations: number,
1795
1796
  keylen: number,
1796
1797
  digest: string,
1797
- callback: (err: Error | null, derivedKey: Buffer) => void,
1798
+ callback: (err: Error | null, derivedKey: NonSharedBuffer) => void,
1798
1799
  ): void;
1799
1800
  /**
1800
1801
  * Provides a synchronous Password-Based Key Derivation Function 2 (PBKDF2)
@@ -1831,7 +1832,7 @@ declare module "crypto" {
1831
1832
  iterations: number,
1832
1833
  keylen: number,
1833
1834
  digest: string,
1834
- ): Buffer;
1835
+ ): NonSharedBuffer;
1835
1836
  /**
1836
1837
  * Generates cryptographically strong pseudorandom data. The `size` argument
1837
1838
  * is a number indicating the number of bytes to generate.
@@ -1884,10 +1885,10 @@ declare module "crypto" {
1884
1885
  * @param size The number of bytes to generate. The `size` must not be larger than `2**31 - 1`.
1885
1886
  * @return if the `callback` function is not provided.
1886
1887
  */
1887
- function randomBytes(size: number): Buffer;
1888
- function randomBytes(size: number, callback: (err: Error | null, buf: Buffer) => void): void;
1889
- function pseudoRandomBytes(size: number): Buffer;
1890
- function pseudoRandomBytes(size: number, callback: (err: Error | null, buf: Buffer) => void): void;
1888
+ function randomBytes(size: number): NonSharedBuffer;
1889
+ function randomBytes(size: number, callback: (err: Error | null, buf: NonSharedBuffer) => void): void;
1890
+ function pseudoRandomBytes(size: number): NonSharedBuffer;
1891
+ function pseudoRandomBytes(size: number, callback: (err: Error | null, buf: NonSharedBuffer) => void): void;
1891
1892
  /**
1892
1893
  * Return a random integer `n` such that `min <= n < max`. This
1893
1894
  * implementation avoids [modulo bias](https://en.wikipedia.org/wiki/Fisher%E2%80%93Yates_shuffle#Modulo_bias).
@@ -2117,14 +2118,14 @@ declare module "crypto" {
2117
2118
  password: BinaryLike,
2118
2119
  salt: BinaryLike,
2119
2120
  keylen: number,
2120
- callback: (err: Error | null, derivedKey: Buffer) => void,
2121
+ callback: (err: Error | null, derivedKey: NonSharedBuffer) => void,
2121
2122
  ): void;
2122
2123
  function scrypt(
2123
2124
  password: BinaryLike,
2124
2125
  salt: BinaryLike,
2125
2126
  keylen: number,
2126
2127
  options: ScryptOptions,
2127
- callback: (err: Error | null, derivedKey: Buffer) => void,
2128
+ callback: (err: Error | null, derivedKey: NonSharedBuffer) => void,
2128
2129
  ): void;
2129
2130
  /**
2130
2131
  * Provides a synchronous [scrypt](https://en.wikipedia.org/wiki/Scrypt) implementation. Scrypt is a password-based
@@ -2156,7 +2157,12 @@ declare module "crypto" {
2156
2157
  * ```
2157
2158
  * @since v10.5.0
2158
2159
  */
2159
- function scryptSync(password: BinaryLike, salt: BinaryLike, keylen: number, options?: ScryptOptions): Buffer;
2160
+ function scryptSync(
2161
+ password: BinaryLike,
2162
+ salt: BinaryLike,
2163
+ keylen: number,
2164
+ options?: ScryptOptions,
2165
+ ): NonSharedBuffer;
2160
2166
  interface RsaPublicKey {
2161
2167
  key: KeyLike;
2162
2168
  padding?: number | undefined;
@@ -2185,7 +2191,7 @@ declare module "crypto" {
2185
2191
  function publicEncrypt(
2186
2192
  key: RsaPublicKey | RsaPrivateKey | KeyLike,
2187
2193
  buffer: NodeJS.ArrayBufferView | string,
2188
- ): Buffer;
2194
+ ): NonSharedBuffer;
2189
2195
  /**
2190
2196
  * Decrypts `buffer` with `key`.`buffer` was previously encrypted using
2191
2197
  * the corresponding private key, for example using {@link privateEncrypt}.
@@ -2200,7 +2206,7 @@ declare module "crypto" {
2200
2206
  function publicDecrypt(
2201
2207
  key: RsaPublicKey | RsaPrivateKey | KeyLike,
2202
2208
  buffer: NodeJS.ArrayBufferView | string,
2203
- ): Buffer;
2209
+ ): NonSharedBuffer;
2204
2210
  /**
2205
2211
  * Decrypts `buffer` with `privateKey`. `buffer` was previously encrypted using
2206
2212
  * the corresponding public key, for example using {@link publicEncrypt}.
@@ -2209,7 +2215,10 @@ declare module "crypto" {
2209
2215
  * object, the `padding` property can be passed. Otherwise, this function uses `RSA_PKCS1_OAEP_PADDING`.
2210
2216
  * @since v0.11.14
2211
2217
  */
2212
- function privateDecrypt(privateKey: RsaPrivateKey | KeyLike, buffer: NodeJS.ArrayBufferView | string): Buffer;
2218
+ function privateDecrypt(
2219
+ privateKey: RsaPrivateKey | KeyLike,
2220
+ buffer: NodeJS.ArrayBufferView | string,
2221
+ ): NonSharedBuffer;
2213
2222
  /**
2214
2223
  * Encrypts `buffer` with `privateKey`. The returned data can be decrypted using
2215
2224
  * the corresponding public key, for example using {@link publicDecrypt}.
@@ -2218,7 +2227,10 @@ declare module "crypto" {
2218
2227
  * object, the `padding` property can be passed. Otherwise, this function uses `RSA_PKCS1_PADDING`.
2219
2228
  * @since v1.1.0
2220
2229
  */
2221
- function privateEncrypt(privateKey: RsaPrivateKey | KeyLike, buffer: NodeJS.ArrayBufferView | string): Buffer;
2230
+ function privateEncrypt(
2231
+ privateKey: RsaPrivateKey | KeyLike,
2232
+ buffer: NodeJS.ArrayBufferView | string,
2233
+ ): NonSharedBuffer;
2222
2234
  /**
2223
2235
  * ```js
2224
2236
  * const {
@@ -2347,7 +2359,7 @@ declare module "crypto" {
2347
2359
  inputEncoding?: BinaryToTextEncoding,
2348
2360
  outputEncoding?: "latin1" | "hex" | "base64" | "base64url",
2349
2361
  format?: "uncompressed" | "compressed" | "hybrid",
2350
- ): Buffer | string;
2362
+ ): NonSharedBuffer | string;
2351
2363
  /**
2352
2364
  * Generates private and public EC Diffie-Hellman key values, and returns
2353
2365
  * the public key in the specified `format` and `encoding`. This key should be
@@ -2360,7 +2372,7 @@ declare module "crypto" {
2360
2372
  * @param encoding The `encoding` of the return value.
2361
2373
  * @param [format='uncompressed']
2362
2374
  */
2363
- generateKeys(): Buffer;
2375
+ generateKeys(): NonSharedBuffer;
2364
2376
  generateKeys(encoding: BinaryToTextEncoding, format?: ECDHKeyFormat): string;
2365
2377
  /**
2366
2378
  * Computes the shared secret using `otherPublicKey` as the other
@@ -2379,8 +2391,8 @@ declare module "crypto" {
2379
2391
  * @param inputEncoding The `encoding` of the `otherPublicKey` string.
2380
2392
  * @param outputEncoding The `encoding` of the return value.
2381
2393
  */
2382
- computeSecret(otherPublicKey: NodeJS.ArrayBufferView): Buffer;
2383
- computeSecret(otherPublicKey: string, inputEncoding: BinaryToTextEncoding): Buffer;
2394
+ computeSecret(otherPublicKey: NodeJS.ArrayBufferView): NonSharedBuffer;
2395
+ computeSecret(otherPublicKey: string, inputEncoding: BinaryToTextEncoding): NonSharedBuffer;
2384
2396
  computeSecret(otherPublicKey: NodeJS.ArrayBufferView, outputEncoding: BinaryToTextEncoding): string;
2385
2397
  computeSecret(
2386
2398
  otherPublicKey: string,
@@ -2394,7 +2406,7 @@ declare module "crypto" {
2394
2406
  * @param encoding The `encoding` of the return value.
2395
2407
  * @return The EC Diffie-Hellman in the specified `encoding`.
2396
2408
  */
2397
- getPrivateKey(): Buffer;
2409
+ getPrivateKey(): NonSharedBuffer;
2398
2410
  getPrivateKey(encoding: BinaryToTextEncoding): string;
2399
2411
  /**
2400
2412
  * The `format` argument specifies point encoding and can be `'compressed'` or `'uncompressed'`. If `format` is not specified the point will be returned in`'uncompressed'` format.
@@ -2406,7 +2418,7 @@ declare module "crypto" {
2406
2418
  * @param [format='uncompressed']
2407
2419
  * @return The EC Diffie-Hellman public key in the specified `encoding` and `format`.
2408
2420
  */
2409
- getPublicKey(encoding?: null, format?: ECDHKeyFormat): Buffer;
2421
+ getPublicKey(encoding?: null, format?: ECDHKeyFormat): NonSharedBuffer;
2410
2422
  getPublicKey(encoding: BinaryToTextEncoding, format?: ECDHKeyFormat): string;
2411
2423
  /**
2412
2424
  * Sets the EC Diffie-Hellman private key.
@@ -2456,7 +2468,34 @@ declare module "crypto" {
2456
2468
  * @since v6.6.0
2457
2469
  */
2458
2470
  function timingSafeEqual(a: NodeJS.ArrayBufferView, b: NodeJS.ArrayBufferView): boolean;
2459
- type KeyType = "rsa" | "rsa-pss" | "dsa" | "ec" | "ed25519" | "ed448" | "x25519" | "x448";
2471
+ type KeyType =
2472
+ | "dh"
2473
+ | "dsa"
2474
+ | "ec"
2475
+ | "ed25519"
2476
+ | "ed448"
2477
+ | "ml-dsa-44"
2478
+ | "ml-dsa-65"
2479
+ | "ml-dsa-87"
2480
+ | "ml-kem-1024"
2481
+ | "ml-kem-512"
2482
+ | "ml-kem-768"
2483
+ | "rsa-pss"
2484
+ | "rsa"
2485
+ | "slh-dsa-sha2-128f"
2486
+ | "slh-dsa-sha2-128s"
2487
+ | "slh-dsa-sha2-192f"
2488
+ | "slh-dsa-sha2-192s"
2489
+ | "slh-dsa-sha2-256f"
2490
+ | "slh-dsa-sha2-256s"
2491
+ | "slh-dsa-shake-128f"
2492
+ | "slh-dsa-shake-128s"
2493
+ | "slh-dsa-shake-192f"
2494
+ | "slh-dsa-shake-192s"
2495
+ | "slh-dsa-shake-256f"
2496
+ | "slh-dsa-shake-256s"
2497
+ | "x25519"
2498
+ | "x448";
2460
2499
  type KeyFormat = "pem" | "der" | "jwk";
2461
2500
  interface BasePrivateKeyEncodingOptions<T extends KeyFormat> {
2462
2501
  format: T;
@@ -2471,6 +2510,9 @@ declare module "crypto" {
2471
2510
  interface ED448KeyPairKeyObjectOptions {}
2472
2511
  interface X25519KeyPairKeyObjectOptions {}
2473
2512
  interface X448KeyPairKeyObjectOptions {}
2513
+ interface MLDSAKeyPairKeyObjectOptions {}
2514
+ interface MLKEMKeyPairKeyObjectOptions {}
2515
+ interface SLHDSAKeyPairKeyObjectOptions {}
2474
2516
  interface ECKeyPairKeyObjectOptions {
2475
2517
  /**
2476
2518
  * Name of the curve to use
@@ -2505,15 +2547,15 @@ declare module "crypto" {
2505
2547
  /**
2506
2548
  * Name of the message digest
2507
2549
  */
2508
- hashAlgorithm?: string;
2550
+ hashAlgorithm?: string | undefined;
2509
2551
  /**
2510
2552
  * Name of the message digest used by MGF1
2511
2553
  */
2512
- mgf1HashAlgorithm?: string;
2554
+ mgf1HashAlgorithm?: string | undefined;
2513
2555
  /**
2514
2556
  * Minimal salt length in bytes
2515
2557
  */
2516
- saltLength?: string;
2558
+ saltLength?: string | undefined;
2517
2559
  }
2518
2560
  interface DSAKeyPairKeyObjectOptions {
2519
2561
  /**
@@ -2556,15 +2598,15 @@ declare module "crypto" {
2556
2598
  /**
2557
2599
  * Name of the message digest
2558
2600
  */
2559
- hashAlgorithm?: string;
2601
+ hashAlgorithm?: string | undefined;
2560
2602
  /**
2561
2603
  * Name of the message digest used by MGF1
2562
2604
  */
2563
- mgf1HashAlgorithm?: string;
2605
+ mgf1HashAlgorithm?: string | undefined;
2564
2606
  /**
2565
2607
  * Minimal salt length in bytes
2566
2608
  */
2567
- saltLength?: string;
2609
+ saltLength?: string | undefined;
2568
2610
  publicKeyEncoding: {
2569
2611
  type: "spki";
2570
2612
  format: PubF;
@@ -2635,13 +2677,40 @@ declare module "crypto" {
2635
2677
  type: "pkcs8";
2636
2678
  };
2637
2679
  }
2680
+ interface MLDSAKeyPairOptions<PubF extends KeyFormat, PrivF extends KeyFormat> {
2681
+ publicKeyEncoding: {
2682
+ type: "spki";
2683
+ format: PubF;
2684
+ };
2685
+ privateKeyEncoding: BasePrivateKeyEncodingOptions<PrivF> & {
2686
+ type: "pkcs8";
2687
+ };
2688
+ }
2689
+ interface MLKEMKeyPairOptions<PubF extends KeyFormat, PrivF extends KeyFormat> {
2690
+ publicKeyEncoding: {
2691
+ type: "spki";
2692
+ format: PubF;
2693
+ };
2694
+ privateKeyEncoding: BasePrivateKeyEncodingOptions<PrivF> & {
2695
+ type: "pkcs8";
2696
+ };
2697
+ }
2698
+ interface SLHDSAKeyPairOptions<PubF extends KeyFormat, PrivF extends KeyFormat> {
2699
+ publicKeyEncoding: {
2700
+ type: "spki";
2701
+ format: PubF;
2702
+ };
2703
+ privateKeyEncoding: BasePrivateKeyEncodingOptions<PrivF> & {
2704
+ type: "pkcs8";
2705
+ };
2706
+ }
2638
2707
  interface KeyPairSyncResult<T1 extends string | Buffer, T2 extends string | Buffer> {
2639
2708
  publicKey: T1;
2640
2709
  privateKey: T2;
2641
2710
  }
2642
2711
  /**
2643
2712
  * Generates a new asymmetric key pair of the given `type`. RSA, RSA-PSS, DSA, EC,
2644
- * Ed25519, Ed448, X25519, X448, and DH are currently supported.
2713
+ * Ed25519, Ed448, X25519, X448, DH, and ML-DSA are currently supported.
2645
2714
  *
2646
2715
  * If a `publicKeyEncoding` or `privateKeyEncoding` was specified, this function
2647
2716
  * behaves as if `keyObject.export()` had been called on its result. Otherwise,
@@ -2678,7 +2747,8 @@ declare module "crypto" {
2678
2747
  * When PEM encoding was selected, the respective key will be a string, otherwise
2679
2748
  * it will be a buffer containing the data encoded as DER.
2680
2749
  * @since v10.12.0
2681
- * @param type Must be `'rsa'`, `'rsa-pss'`, `'dsa'`, `'ec'`, `'ed25519'`, `'ed448'`, `'x25519'`, `'x448'`, or `'dh'`.
2750
+ * @param type The asymmetric key type to generate. See the
2751
+ * supported [asymmetric key types](https://nodejs.org/docs/latest-v24.x/api/crypto.html#asymmetric-key-types).
2682
2752
  */
2683
2753
  function generateKeyPairSync(
2684
2754
  type: "rsa",
@@ -2687,15 +2757,15 @@ declare module "crypto" {
2687
2757
  function generateKeyPairSync(
2688
2758
  type: "rsa",
2689
2759
  options: RSAKeyPairOptions<"pem", "der">,
2690
- ): KeyPairSyncResult<string, Buffer>;
2760
+ ): KeyPairSyncResult<string, NonSharedBuffer>;
2691
2761
  function generateKeyPairSync(
2692
2762
  type: "rsa",
2693
2763
  options: RSAKeyPairOptions<"der", "pem">,
2694
- ): KeyPairSyncResult<Buffer, string>;
2764
+ ): KeyPairSyncResult<NonSharedBuffer, string>;
2695
2765
  function generateKeyPairSync(
2696
2766
  type: "rsa",
2697
2767
  options: RSAKeyPairOptions<"der", "der">,
2698
- ): KeyPairSyncResult<Buffer, Buffer>;
2768
+ ): KeyPairSyncResult<NonSharedBuffer, NonSharedBuffer>;
2699
2769
  function generateKeyPairSync(type: "rsa", options: RSAKeyPairKeyObjectOptions): KeyPairKeyObjectResult;
2700
2770
  function generateKeyPairSync(
2701
2771
  type: "rsa-pss",
@@ -2704,15 +2774,15 @@ declare module "crypto" {
2704
2774
  function generateKeyPairSync(
2705
2775
  type: "rsa-pss",
2706
2776
  options: RSAPSSKeyPairOptions<"pem", "der">,
2707
- ): KeyPairSyncResult<string, Buffer>;
2777
+ ): KeyPairSyncResult<string, NonSharedBuffer>;
2708
2778
  function generateKeyPairSync(
2709
2779
  type: "rsa-pss",
2710
2780
  options: RSAPSSKeyPairOptions<"der", "pem">,
2711
- ): KeyPairSyncResult<Buffer, string>;
2781
+ ): KeyPairSyncResult<NonSharedBuffer, string>;
2712
2782
  function generateKeyPairSync(
2713
2783
  type: "rsa-pss",
2714
2784
  options: RSAPSSKeyPairOptions<"der", "der">,
2715
- ): KeyPairSyncResult<Buffer, Buffer>;
2785
+ ): KeyPairSyncResult<NonSharedBuffer, NonSharedBuffer>;
2716
2786
  function generateKeyPairSync(type: "rsa-pss", options: RSAPSSKeyPairKeyObjectOptions): KeyPairKeyObjectResult;
2717
2787
  function generateKeyPairSync(
2718
2788
  type: "dsa",
@@ -2721,15 +2791,15 @@ declare module "crypto" {
2721
2791
  function generateKeyPairSync(
2722
2792
  type: "dsa",
2723
2793
  options: DSAKeyPairOptions<"pem", "der">,
2724
- ): KeyPairSyncResult<string, Buffer>;
2794
+ ): KeyPairSyncResult<string, NonSharedBuffer>;
2725
2795
  function generateKeyPairSync(
2726
2796
  type: "dsa",
2727
2797
  options: DSAKeyPairOptions<"der", "pem">,
2728
- ): KeyPairSyncResult<Buffer, string>;
2798
+ ): KeyPairSyncResult<NonSharedBuffer, string>;
2729
2799
  function generateKeyPairSync(
2730
2800
  type: "dsa",
2731
2801
  options: DSAKeyPairOptions<"der", "der">,
2732
- ): KeyPairSyncResult<Buffer, Buffer>;
2802
+ ): KeyPairSyncResult<NonSharedBuffer, NonSharedBuffer>;
2733
2803
  function generateKeyPairSync(type: "dsa", options: DSAKeyPairKeyObjectOptions): KeyPairKeyObjectResult;
2734
2804
  function generateKeyPairSync(
2735
2805
  type: "ec",
@@ -2738,15 +2808,15 @@ declare module "crypto" {
2738
2808
  function generateKeyPairSync(
2739
2809
  type: "ec",
2740
2810
  options: ECKeyPairOptions<"pem", "der">,
2741
- ): KeyPairSyncResult<string, Buffer>;
2811
+ ): KeyPairSyncResult<string, NonSharedBuffer>;
2742
2812
  function generateKeyPairSync(
2743
2813
  type: "ec",
2744
2814
  options: ECKeyPairOptions<"der", "pem">,
2745
- ): KeyPairSyncResult<Buffer, string>;
2815
+ ): KeyPairSyncResult<NonSharedBuffer, string>;
2746
2816
  function generateKeyPairSync(
2747
2817
  type: "ec",
2748
2818
  options: ECKeyPairOptions<"der", "der">,
2749
- ): KeyPairSyncResult<Buffer, Buffer>;
2819
+ ): KeyPairSyncResult<NonSharedBuffer, NonSharedBuffer>;
2750
2820
  function generateKeyPairSync(type: "ec", options: ECKeyPairKeyObjectOptions): KeyPairKeyObjectResult;
2751
2821
  function generateKeyPairSync(
2752
2822
  type: "ed25519",
@@ -2755,15 +2825,15 @@ declare module "crypto" {
2755
2825
  function generateKeyPairSync(
2756
2826
  type: "ed25519",
2757
2827
  options: ED25519KeyPairOptions<"pem", "der">,
2758
- ): KeyPairSyncResult<string, Buffer>;
2828
+ ): KeyPairSyncResult<string, NonSharedBuffer>;
2759
2829
  function generateKeyPairSync(
2760
2830
  type: "ed25519",
2761
2831
  options: ED25519KeyPairOptions<"der", "pem">,
2762
- ): KeyPairSyncResult<Buffer, string>;
2832
+ ): KeyPairSyncResult<NonSharedBuffer, string>;
2763
2833
  function generateKeyPairSync(
2764
2834
  type: "ed25519",
2765
2835
  options: ED25519KeyPairOptions<"der", "der">,
2766
- ): KeyPairSyncResult<Buffer, Buffer>;
2836
+ ): KeyPairSyncResult<NonSharedBuffer, NonSharedBuffer>;
2767
2837
  function generateKeyPairSync(type: "ed25519", options?: ED25519KeyPairKeyObjectOptions): KeyPairKeyObjectResult;
2768
2838
  function generateKeyPairSync(
2769
2839
  type: "ed448",
@@ -2772,15 +2842,15 @@ declare module "crypto" {
2772
2842
  function generateKeyPairSync(
2773
2843
  type: "ed448",
2774
2844
  options: ED448KeyPairOptions<"pem", "der">,
2775
- ): KeyPairSyncResult<string, Buffer>;
2845
+ ): KeyPairSyncResult<string, NonSharedBuffer>;
2776
2846
  function generateKeyPairSync(
2777
2847
  type: "ed448",
2778
2848
  options: ED448KeyPairOptions<"der", "pem">,
2779
- ): KeyPairSyncResult<Buffer, string>;
2849
+ ): KeyPairSyncResult<NonSharedBuffer, string>;
2780
2850
  function generateKeyPairSync(
2781
2851
  type: "ed448",
2782
2852
  options: ED448KeyPairOptions<"der", "der">,
2783
- ): KeyPairSyncResult<Buffer, Buffer>;
2853
+ ): KeyPairSyncResult<NonSharedBuffer, NonSharedBuffer>;
2784
2854
  function generateKeyPairSync(type: "ed448", options?: ED448KeyPairKeyObjectOptions): KeyPairKeyObjectResult;
2785
2855
  function generateKeyPairSync(
2786
2856
  type: "x25519",
@@ -2789,15 +2859,15 @@ declare module "crypto" {
2789
2859
  function generateKeyPairSync(
2790
2860
  type: "x25519",
2791
2861
  options: X25519KeyPairOptions<"pem", "der">,
2792
- ): KeyPairSyncResult<string, Buffer>;
2862
+ ): KeyPairSyncResult<string, NonSharedBuffer>;
2793
2863
  function generateKeyPairSync(
2794
2864
  type: "x25519",
2795
2865
  options: X25519KeyPairOptions<"der", "pem">,
2796
- ): KeyPairSyncResult<Buffer, string>;
2866
+ ): KeyPairSyncResult<NonSharedBuffer, string>;
2797
2867
  function generateKeyPairSync(
2798
2868
  type: "x25519",
2799
2869
  options: X25519KeyPairOptions<"der", "der">,
2800
- ): KeyPairSyncResult<Buffer, Buffer>;
2870
+ ): KeyPairSyncResult<NonSharedBuffer, NonSharedBuffer>;
2801
2871
  function generateKeyPairSync(type: "x25519", options?: X25519KeyPairKeyObjectOptions): KeyPairKeyObjectResult;
2802
2872
  function generateKeyPairSync(
2803
2873
  type: "x448",
@@ -2806,16 +2876,136 @@ declare module "crypto" {
2806
2876
  function generateKeyPairSync(
2807
2877
  type: "x448",
2808
2878
  options: X448KeyPairOptions<"pem", "der">,
2809
- ): KeyPairSyncResult<string, Buffer>;
2879
+ ): KeyPairSyncResult<string, NonSharedBuffer>;
2810
2880
  function generateKeyPairSync(
2811
2881
  type: "x448",
2812
2882
  options: X448KeyPairOptions<"der", "pem">,
2813
- ): KeyPairSyncResult<Buffer, string>;
2883
+ ): KeyPairSyncResult<NonSharedBuffer, string>;
2814
2884
  function generateKeyPairSync(
2815
2885
  type: "x448",
2816
2886
  options: X448KeyPairOptions<"der", "der">,
2817
- ): KeyPairSyncResult<Buffer, Buffer>;
2887
+ ): KeyPairSyncResult<NonSharedBuffer, NonSharedBuffer>;
2818
2888
  function generateKeyPairSync(type: "x448", options?: X448KeyPairKeyObjectOptions): KeyPairKeyObjectResult;
2889
+ function generateKeyPairSync(
2890
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
2891
+ options: MLDSAKeyPairOptions<"pem", "pem">,
2892
+ ): KeyPairSyncResult<string, string>;
2893
+ function generateKeyPairSync(
2894
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
2895
+ options: MLDSAKeyPairOptions<"pem", "der">,
2896
+ ): KeyPairSyncResult<string, NonSharedBuffer>;
2897
+ function generateKeyPairSync(
2898
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
2899
+ options: MLDSAKeyPairOptions<"der", "pem">,
2900
+ ): KeyPairSyncResult<NonSharedBuffer, string>;
2901
+ function generateKeyPairSync(
2902
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
2903
+ options: MLDSAKeyPairOptions<"der", "der">,
2904
+ ): KeyPairSyncResult<NonSharedBuffer, NonSharedBuffer>;
2905
+ function generateKeyPairSync(
2906
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
2907
+ options?: MLDSAKeyPairKeyObjectOptions,
2908
+ ): KeyPairKeyObjectResult;
2909
+ function generateKeyPairSync(
2910
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
2911
+ options: MLKEMKeyPairOptions<"pem", "pem">,
2912
+ ): KeyPairSyncResult<string, string>;
2913
+ function generateKeyPairSync(
2914
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
2915
+ options: MLKEMKeyPairOptions<"pem", "der">,
2916
+ ): KeyPairSyncResult<string, NonSharedBuffer>;
2917
+ function generateKeyPairSync(
2918
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
2919
+ options: MLKEMKeyPairOptions<"der", "pem">,
2920
+ ): KeyPairSyncResult<NonSharedBuffer, string>;
2921
+ function generateKeyPairSync(
2922
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
2923
+ options: MLKEMKeyPairOptions<"der", "der">,
2924
+ ): KeyPairSyncResult<NonSharedBuffer, NonSharedBuffer>;
2925
+ function generateKeyPairSync(
2926
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
2927
+ options?: MLKEMKeyPairKeyObjectOptions,
2928
+ ): KeyPairKeyObjectResult;
2929
+ function generateKeyPairSync(
2930
+ type:
2931
+ | "slh-dsa-sha2-128f"
2932
+ | "slh-dsa-sha2-128s"
2933
+ | "slh-dsa-sha2-192f"
2934
+ | "slh-dsa-sha2-192s"
2935
+ | "slh-dsa-sha2-256f"
2936
+ | "slh-dsa-sha2-256s"
2937
+ | "slh-dsa-shake-128f"
2938
+ | "slh-dsa-shake-128s"
2939
+ | "slh-dsa-shake-192f"
2940
+ | "slh-dsa-shake-192s"
2941
+ | "slh-dsa-shake-256f"
2942
+ | "slh-dsa-shake-256s",
2943
+ options: SLHDSAKeyPairOptions<"pem", "pem">,
2944
+ ): KeyPairSyncResult<string, string>;
2945
+ function generateKeyPairSync(
2946
+ type:
2947
+ | "slh-dsa-sha2-128f"
2948
+ | "slh-dsa-sha2-128s"
2949
+ | "slh-dsa-sha2-192f"
2950
+ | "slh-dsa-sha2-192s"
2951
+ | "slh-dsa-sha2-256f"
2952
+ | "slh-dsa-sha2-256s"
2953
+ | "slh-dsa-shake-128f"
2954
+ | "slh-dsa-shake-128s"
2955
+ | "slh-dsa-shake-192f"
2956
+ | "slh-dsa-shake-192s"
2957
+ | "slh-dsa-shake-256f"
2958
+ | "slh-dsa-shake-256s",
2959
+ options: SLHDSAKeyPairOptions<"pem", "der">,
2960
+ ): KeyPairSyncResult<string, Buffer>;
2961
+ function generateKeyPairSync(
2962
+ type:
2963
+ | "slh-dsa-sha2-128f"
2964
+ | "slh-dsa-sha2-128s"
2965
+ | "slh-dsa-sha2-192f"
2966
+ | "slh-dsa-sha2-192s"
2967
+ | "slh-dsa-sha2-256f"
2968
+ | "slh-dsa-sha2-256s"
2969
+ | "slh-dsa-shake-128f"
2970
+ | "slh-dsa-shake-128s"
2971
+ | "slh-dsa-shake-192f"
2972
+ | "slh-dsa-shake-192s"
2973
+ | "slh-dsa-shake-256f"
2974
+ | "slh-dsa-shake-256s",
2975
+ options: SLHDSAKeyPairOptions<"der", "pem">,
2976
+ ): KeyPairSyncResult<Buffer, string>;
2977
+ function generateKeyPairSync(
2978
+ type:
2979
+ | "slh-dsa-sha2-128f"
2980
+ | "slh-dsa-sha2-128s"
2981
+ | "slh-dsa-sha2-192f"
2982
+ | "slh-dsa-sha2-192s"
2983
+ | "slh-dsa-sha2-256f"
2984
+ | "slh-dsa-sha2-256s"
2985
+ | "slh-dsa-shake-128f"
2986
+ | "slh-dsa-shake-128s"
2987
+ | "slh-dsa-shake-192f"
2988
+ | "slh-dsa-shake-192s"
2989
+ | "slh-dsa-shake-256f"
2990
+ | "slh-dsa-shake-256s",
2991
+ options: SLHDSAKeyPairOptions<"der", "der">,
2992
+ ): KeyPairSyncResult<Buffer, Buffer>;
2993
+ function generateKeyPairSync(
2994
+ type:
2995
+ | "slh-dsa-sha2-128f"
2996
+ | "slh-dsa-sha2-128s"
2997
+ | "slh-dsa-sha2-192f"
2998
+ | "slh-dsa-sha2-192s"
2999
+ | "slh-dsa-sha2-256f"
3000
+ | "slh-dsa-sha2-256s"
3001
+ | "slh-dsa-shake-128f"
3002
+ | "slh-dsa-shake-128s"
3003
+ | "slh-dsa-shake-192f"
3004
+ | "slh-dsa-shake-192s"
3005
+ | "slh-dsa-shake-256f"
3006
+ | "slh-dsa-shake-256s",
3007
+ options?: SLHDSAKeyPairKeyObjectOptions,
3008
+ ): KeyPairKeyObjectResult;
2819
3009
  /**
2820
3010
  * Generates a new asymmetric key pair of the given `type`. RSA, RSA-PSS, DSA, EC,
2821
3011
  * Ed25519, Ed448, X25519, X448, and DH are currently supported.
@@ -2853,7 +3043,8 @@ declare module "crypto" {
2853
3043
  * If this method is invoked as its `util.promisify()` ed version, it returns
2854
3044
  * a `Promise` for an `Object` with `publicKey` and `privateKey` properties.
2855
3045
  * @since v10.12.0
2856
- * @param type Must be `'rsa'`, `'rsa-pss'`, `'dsa'`, `'ec'`, `'ed25519'`, `'ed448'`, `'x25519'`, `'x448'`, or `'dh'`.
3046
+ * @param type The asymmetric key type to generate. See the
3047
+ * supported [asymmetric key types](https://nodejs.org/docs/latest-v24.x/api/crypto.html#asymmetric-key-types).
2857
3048
  */
2858
3049
  function generateKeyPair(
2859
3050
  type: "rsa",
@@ -2863,17 +3054,17 @@ declare module "crypto" {
2863
3054
  function generateKeyPair(
2864
3055
  type: "rsa",
2865
3056
  options: RSAKeyPairOptions<"pem", "der">,
2866
- callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void,
3057
+ callback: (err: Error | null, publicKey: string, privateKey: NonSharedBuffer) => void,
2867
3058
  ): void;
2868
3059
  function generateKeyPair(
2869
3060
  type: "rsa",
2870
3061
  options: RSAKeyPairOptions<"der", "pem">,
2871
- callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void,
3062
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: string) => void,
2872
3063
  ): void;
2873
3064
  function generateKeyPair(
2874
3065
  type: "rsa",
2875
3066
  options: RSAKeyPairOptions<"der", "der">,
2876
- callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void,
3067
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: NonSharedBuffer) => void,
2877
3068
  ): void;
2878
3069
  function generateKeyPair(
2879
3070
  type: "rsa",
@@ -2888,17 +3079,17 @@ declare module "crypto" {
2888
3079
  function generateKeyPair(
2889
3080
  type: "rsa-pss",
2890
3081
  options: RSAPSSKeyPairOptions<"pem", "der">,
2891
- callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void,
3082
+ callback: (err: Error | null, publicKey: string, privateKey: NonSharedBuffer) => void,
2892
3083
  ): void;
2893
3084
  function generateKeyPair(
2894
3085
  type: "rsa-pss",
2895
3086
  options: RSAPSSKeyPairOptions<"der", "pem">,
2896
- callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void,
3087
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: string) => void,
2897
3088
  ): void;
2898
3089
  function generateKeyPair(
2899
3090
  type: "rsa-pss",
2900
3091
  options: RSAPSSKeyPairOptions<"der", "der">,
2901
- callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void,
3092
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: NonSharedBuffer) => void,
2902
3093
  ): void;
2903
3094
  function generateKeyPair(
2904
3095
  type: "rsa-pss",
@@ -2913,17 +3104,17 @@ declare module "crypto" {
2913
3104
  function generateKeyPair(
2914
3105
  type: "dsa",
2915
3106
  options: DSAKeyPairOptions<"pem", "der">,
2916
- callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void,
3107
+ callback: (err: Error | null, publicKey: string, privateKey: NonSharedBuffer) => void,
2917
3108
  ): void;
2918
3109
  function generateKeyPair(
2919
3110
  type: "dsa",
2920
3111
  options: DSAKeyPairOptions<"der", "pem">,
2921
- callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void,
3112
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: string) => void,
2922
3113
  ): void;
2923
3114
  function generateKeyPair(
2924
3115
  type: "dsa",
2925
3116
  options: DSAKeyPairOptions<"der", "der">,
2926
- callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void,
3117
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: NonSharedBuffer) => void,
2927
3118
  ): void;
2928
3119
  function generateKeyPair(
2929
3120
  type: "dsa",
@@ -2938,17 +3129,17 @@ declare module "crypto" {
2938
3129
  function generateKeyPair(
2939
3130
  type: "ec",
2940
3131
  options: ECKeyPairOptions<"pem", "der">,
2941
- callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void,
3132
+ callback: (err: Error | null, publicKey: string, privateKey: NonSharedBuffer) => void,
2942
3133
  ): void;
2943
3134
  function generateKeyPair(
2944
3135
  type: "ec",
2945
3136
  options: ECKeyPairOptions<"der", "pem">,
2946
- callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void,
3137
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: string) => void,
2947
3138
  ): void;
2948
3139
  function generateKeyPair(
2949
3140
  type: "ec",
2950
3141
  options: ECKeyPairOptions<"der", "der">,
2951
- callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void,
3142
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: NonSharedBuffer) => void,
2952
3143
  ): void;
2953
3144
  function generateKeyPair(
2954
3145
  type: "ec",
@@ -2963,17 +3154,17 @@ declare module "crypto" {
2963
3154
  function generateKeyPair(
2964
3155
  type: "ed25519",
2965
3156
  options: ED25519KeyPairOptions<"pem", "der">,
2966
- callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void,
3157
+ callback: (err: Error | null, publicKey: string, privateKey: NonSharedBuffer) => void,
2967
3158
  ): void;
2968
3159
  function generateKeyPair(
2969
3160
  type: "ed25519",
2970
3161
  options: ED25519KeyPairOptions<"der", "pem">,
2971
- callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void,
3162
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: string) => void,
2972
3163
  ): void;
2973
3164
  function generateKeyPair(
2974
3165
  type: "ed25519",
2975
3166
  options: ED25519KeyPairOptions<"der", "der">,
2976
- callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void,
3167
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: NonSharedBuffer) => void,
2977
3168
  ): void;
2978
3169
  function generateKeyPair(
2979
3170
  type: "ed25519",
@@ -2988,17 +3179,17 @@ declare module "crypto" {
2988
3179
  function generateKeyPair(
2989
3180
  type: "ed448",
2990
3181
  options: ED448KeyPairOptions<"pem", "der">,
2991
- callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void,
3182
+ callback: (err: Error | null, publicKey: string, privateKey: NonSharedBuffer) => void,
2992
3183
  ): void;
2993
3184
  function generateKeyPair(
2994
3185
  type: "ed448",
2995
3186
  options: ED448KeyPairOptions<"der", "pem">,
2996
- callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void,
3187
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: string) => void,
2997
3188
  ): void;
2998
3189
  function generateKeyPair(
2999
3190
  type: "ed448",
3000
3191
  options: ED448KeyPairOptions<"der", "der">,
3001
- callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void,
3192
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: NonSharedBuffer) => void,
3002
3193
  ): void;
3003
3194
  function generateKeyPair(
3004
3195
  type: "ed448",
@@ -3013,17 +3204,17 @@ declare module "crypto" {
3013
3204
  function generateKeyPair(
3014
3205
  type: "x25519",
3015
3206
  options: X25519KeyPairOptions<"pem", "der">,
3016
- callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void,
3207
+ callback: (err: Error | null, publicKey: string, privateKey: NonSharedBuffer) => void,
3017
3208
  ): void;
3018
3209
  function generateKeyPair(
3019
3210
  type: "x25519",
3020
3211
  options: X25519KeyPairOptions<"der", "pem">,
3021
- callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void,
3212
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: string) => void,
3022
3213
  ): void;
3023
3214
  function generateKeyPair(
3024
3215
  type: "x25519",
3025
3216
  options: X25519KeyPairOptions<"der", "der">,
3026
- callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void,
3217
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: NonSharedBuffer) => void,
3027
3218
  ): void;
3028
3219
  function generateKeyPair(
3029
3220
  type: "x25519",
@@ -3038,23 +3229,158 @@ declare module "crypto" {
3038
3229
  function generateKeyPair(
3039
3230
  type: "x448",
3040
3231
  options: X448KeyPairOptions<"pem", "der">,
3041
- callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void,
3232
+ callback: (err: Error | null, publicKey: string, privateKey: NonSharedBuffer) => void,
3042
3233
  ): void;
3043
3234
  function generateKeyPair(
3044
3235
  type: "x448",
3045
3236
  options: X448KeyPairOptions<"der", "pem">,
3046
- callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void,
3237
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: string) => void,
3047
3238
  ): void;
3048
3239
  function generateKeyPair(
3049
3240
  type: "x448",
3050
3241
  options: X448KeyPairOptions<"der", "der">,
3051
- callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void,
3242
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: NonSharedBuffer) => void,
3052
3243
  ): void;
3053
3244
  function generateKeyPair(
3054
3245
  type: "x448",
3055
3246
  options: X448KeyPairKeyObjectOptions | undefined,
3056
3247
  callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void,
3057
3248
  ): void;
3249
+ function generateKeyPair(
3250
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
3251
+ options: MLDSAKeyPairOptions<"pem", "pem">,
3252
+ callback: (err: Error | null, publicKey: string, privateKey: string) => void,
3253
+ ): void;
3254
+ function generateKeyPair(
3255
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
3256
+ options: MLDSAKeyPairOptions<"pem", "der">,
3257
+ callback: (err: Error | null, publicKey: string, privateKey: NonSharedBuffer) => void,
3258
+ ): void;
3259
+ function generateKeyPair(
3260
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
3261
+ options: MLDSAKeyPairOptions<"der", "pem">,
3262
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: string) => void,
3263
+ ): void;
3264
+ function generateKeyPair(
3265
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
3266
+ options: MLDSAKeyPairOptions<"der", "der">,
3267
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: NonSharedBuffer) => void,
3268
+ ): void;
3269
+ function generateKeyPair(
3270
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
3271
+ options: MLDSAKeyPairKeyObjectOptions | undefined,
3272
+ callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void,
3273
+ ): void;
3274
+ function generateKeyPair(
3275
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
3276
+ options: MLKEMKeyPairOptions<"pem", "pem">,
3277
+ callback: (err: Error | null, publicKey: string, privateKey: string) => void,
3278
+ ): void;
3279
+ function generateKeyPair(
3280
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
3281
+ options: MLKEMKeyPairOptions<"pem", "der">,
3282
+ callback: (err: Error | null, publicKey: string, privateKey: NonSharedBuffer) => void,
3283
+ ): void;
3284
+ function generateKeyPair(
3285
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
3286
+ options: MLKEMKeyPairOptions<"der", "pem">,
3287
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: string) => void,
3288
+ ): void;
3289
+ function generateKeyPair(
3290
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
3291
+ options: MLKEMKeyPairOptions<"der", "der">,
3292
+ callback: (err: Error | null, publicKey: NonSharedBuffer, privateKey: NonSharedBuffer) => void,
3293
+ ): void;
3294
+ function generateKeyPair(
3295
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
3296
+ options: MLKEMKeyPairKeyObjectOptions | undefined,
3297
+ callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void,
3298
+ ): void;
3299
+ function generateKeyPair(
3300
+ type:
3301
+ | "slh-dsa-sha2-128f"
3302
+ | "slh-dsa-sha2-128s"
3303
+ | "slh-dsa-sha2-192f"
3304
+ | "slh-dsa-sha2-192s"
3305
+ | "slh-dsa-sha2-256f"
3306
+ | "slh-dsa-sha2-256s"
3307
+ | "slh-dsa-shake-128f"
3308
+ | "slh-dsa-shake-128s"
3309
+ | "slh-dsa-shake-192f"
3310
+ | "slh-dsa-shake-192s"
3311
+ | "slh-dsa-shake-256f"
3312
+ | "slh-dsa-shake-256s",
3313
+ options: SLHDSAKeyPairOptions<"pem", "pem">,
3314
+ callback: (err: Error | null, publicKey: string, privateKey: string) => void,
3315
+ ): void;
3316
+ function generateKeyPair(
3317
+ type:
3318
+ | "slh-dsa-sha2-128f"
3319
+ | "slh-dsa-sha2-128s"
3320
+ | "slh-dsa-sha2-192f"
3321
+ | "slh-dsa-sha2-192s"
3322
+ | "slh-dsa-sha2-256f"
3323
+ | "slh-dsa-sha2-256s"
3324
+ | "slh-dsa-shake-128f"
3325
+ | "slh-dsa-shake-128s"
3326
+ | "slh-dsa-shake-192f"
3327
+ | "slh-dsa-shake-192s"
3328
+ | "slh-dsa-shake-256f"
3329
+ | "slh-dsa-shake-256s",
3330
+ options: SLHDSAKeyPairOptions<"pem", "der">,
3331
+ callback: (err: Error | null, publicKey: string, privateKey: Buffer) => void,
3332
+ ): void;
3333
+ function generateKeyPair(
3334
+ type:
3335
+ | "slh-dsa-sha2-128f"
3336
+ | "slh-dsa-sha2-128s"
3337
+ | "slh-dsa-sha2-192f"
3338
+ | "slh-dsa-sha2-192s"
3339
+ | "slh-dsa-sha2-256f"
3340
+ | "slh-dsa-sha2-256s"
3341
+ | "slh-dsa-shake-128f"
3342
+ | "slh-dsa-shake-128s"
3343
+ | "slh-dsa-shake-192f"
3344
+ | "slh-dsa-shake-192s"
3345
+ | "slh-dsa-shake-256f"
3346
+ | "slh-dsa-shake-256s",
3347
+ options: SLHDSAKeyPairOptions<"der", "pem">,
3348
+ callback: (err: Error | null, publicKey: Buffer, privateKey: string) => void,
3349
+ ): void;
3350
+ function generateKeyPair(
3351
+ type:
3352
+ | "slh-dsa-sha2-128f"
3353
+ | "slh-dsa-sha2-128s"
3354
+ | "slh-dsa-sha2-192f"
3355
+ | "slh-dsa-sha2-192s"
3356
+ | "slh-dsa-sha2-256f"
3357
+ | "slh-dsa-sha2-256s"
3358
+ | "slh-dsa-shake-128f"
3359
+ | "slh-dsa-shake-128s"
3360
+ | "slh-dsa-shake-192f"
3361
+ | "slh-dsa-shake-192s"
3362
+ | "slh-dsa-shake-256f"
3363
+ | "slh-dsa-shake-256s",
3364
+ options: SLHDSAKeyPairOptions<"der", "der">,
3365
+ callback: (err: Error | null, publicKey: Buffer, privateKey: Buffer) => void,
3366
+ ): void;
3367
+ function generateKeyPair(
3368
+ type:
3369
+ | "slh-dsa-sha2-128f"
3370
+ | "slh-dsa-sha2-128s"
3371
+ | "slh-dsa-sha2-192f"
3372
+ | "slh-dsa-sha2-192s"
3373
+ | "slh-dsa-sha2-256f"
3374
+ | "slh-dsa-sha2-256s"
3375
+ | "slh-dsa-shake-128f"
3376
+ | "slh-dsa-shake-128s"
3377
+ | "slh-dsa-shake-192f"
3378
+ | "slh-dsa-shake-192s"
3379
+ | "slh-dsa-shake-256f"
3380
+ | "slh-dsa-shake-256s",
3381
+ options: SLHDSAKeyPairKeyObjectOptions | undefined,
3382
+ callback: (err: Error | null, publicKey: KeyObject, privateKey: KeyObject) => void,
3383
+ ): void;
3058
3384
  namespace generateKeyPair {
3059
3385
  function __promisify__(
3060
3386
  type: "rsa",
@@ -3068,21 +3394,21 @@ declare module "crypto" {
3068
3394
  options: RSAKeyPairOptions<"pem", "der">,
3069
3395
  ): Promise<{
3070
3396
  publicKey: string;
3071
- privateKey: Buffer;
3397
+ privateKey: NonSharedBuffer;
3072
3398
  }>;
3073
3399
  function __promisify__(
3074
3400
  type: "rsa",
3075
3401
  options: RSAKeyPairOptions<"der", "pem">,
3076
3402
  ): Promise<{
3077
- publicKey: Buffer;
3403
+ publicKey: NonSharedBuffer;
3078
3404
  privateKey: string;
3079
3405
  }>;
3080
3406
  function __promisify__(
3081
3407
  type: "rsa",
3082
3408
  options: RSAKeyPairOptions<"der", "der">,
3083
3409
  ): Promise<{
3084
- publicKey: Buffer;
3085
- privateKey: Buffer;
3410
+ publicKey: NonSharedBuffer;
3411
+ privateKey: NonSharedBuffer;
3086
3412
  }>;
3087
3413
  function __promisify__(type: "rsa", options: RSAKeyPairKeyObjectOptions): Promise<KeyPairKeyObjectResult>;
3088
3414
  function __promisify__(
@@ -3097,21 +3423,21 @@ declare module "crypto" {
3097
3423
  options: RSAPSSKeyPairOptions<"pem", "der">,
3098
3424
  ): Promise<{
3099
3425
  publicKey: string;
3100
- privateKey: Buffer;
3426
+ privateKey: NonSharedBuffer;
3101
3427
  }>;
3102
3428
  function __promisify__(
3103
3429
  type: "rsa-pss",
3104
3430
  options: RSAPSSKeyPairOptions<"der", "pem">,
3105
3431
  ): Promise<{
3106
- publicKey: Buffer;
3432
+ publicKey: NonSharedBuffer;
3107
3433
  privateKey: string;
3108
3434
  }>;
3109
3435
  function __promisify__(
3110
3436
  type: "rsa-pss",
3111
3437
  options: RSAPSSKeyPairOptions<"der", "der">,
3112
3438
  ): Promise<{
3113
- publicKey: Buffer;
3114
- privateKey: Buffer;
3439
+ publicKey: NonSharedBuffer;
3440
+ privateKey: NonSharedBuffer;
3115
3441
  }>;
3116
3442
  function __promisify__(
3117
3443
  type: "rsa-pss",
@@ -3129,21 +3455,21 @@ declare module "crypto" {
3129
3455
  options: DSAKeyPairOptions<"pem", "der">,
3130
3456
  ): Promise<{
3131
3457
  publicKey: string;
3132
- privateKey: Buffer;
3458
+ privateKey: NonSharedBuffer;
3133
3459
  }>;
3134
3460
  function __promisify__(
3135
3461
  type: "dsa",
3136
3462
  options: DSAKeyPairOptions<"der", "pem">,
3137
3463
  ): Promise<{
3138
- publicKey: Buffer;
3464
+ publicKey: NonSharedBuffer;
3139
3465
  privateKey: string;
3140
3466
  }>;
3141
3467
  function __promisify__(
3142
3468
  type: "dsa",
3143
3469
  options: DSAKeyPairOptions<"der", "der">,
3144
3470
  ): Promise<{
3145
- publicKey: Buffer;
3146
- privateKey: Buffer;
3471
+ publicKey: NonSharedBuffer;
3472
+ privateKey: NonSharedBuffer;
3147
3473
  }>;
3148
3474
  function __promisify__(type: "dsa", options: DSAKeyPairKeyObjectOptions): Promise<KeyPairKeyObjectResult>;
3149
3475
  function __promisify__(
@@ -3158,21 +3484,21 @@ declare module "crypto" {
3158
3484
  options: ECKeyPairOptions<"pem", "der">,
3159
3485
  ): Promise<{
3160
3486
  publicKey: string;
3161
- privateKey: Buffer;
3487
+ privateKey: NonSharedBuffer;
3162
3488
  }>;
3163
3489
  function __promisify__(
3164
3490
  type: "ec",
3165
3491
  options: ECKeyPairOptions<"der", "pem">,
3166
3492
  ): Promise<{
3167
- publicKey: Buffer;
3493
+ publicKey: NonSharedBuffer;
3168
3494
  privateKey: string;
3169
3495
  }>;
3170
3496
  function __promisify__(
3171
3497
  type: "ec",
3172
3498
  options: ECKeyPairOptions<"der", "der">,
3173
3499
  ): Promise<{
3174
- publicKey: Buffer;
3175
- privateKey: Buffer;
3500
+ publicKey: NonSharedBuffer;
3501
+ privateKey: NonSharedBuffer;
3176
3502
  }>;
3177
3503
  function __promisify__(type: "ec", options: ECKeyPairKeyObjectOptions): Promise<KeyPairKeyObjectResult>;
3178
3504
  function __promisify__(
@@ -3187,21 +3513,21 @@ declare module "crypto" {
3187
3513
  options: ED25519KeyPairOptions<"pem", "der">,
3188
3514
  ): Promise<{
3189
3515
  publicKey: string;
3190
- privateKey: Buffer;
3516
+ privateKey: NonSharedBuffer;
3191
3517
  }>;
3192
3518
  function __promisify__(
3193
3519
  type: "ed25519",
3194
3520
  options: ED25519KeyPairOptions<"der", "pem">,
3195
3521
  ): Promise<{
3196
- publicKey: Buffer;
3522
+ publicKey: NonSharedBuffer;
3197
3523
  privateKey: string;
3198
3524
  }>;
3199
3525
  function __promisify__(
3200
3526
  type: "ed25519",
3201
3527
  options: ED25519KeyPairOptions<"der", "der">,
3202
3528
  ): Promise<{
3203
- publicKey: Buffer;
3204
- privateKey: Buffer;
3529
+ publicKey: NonSharedBuffer;
3530
+ privateKey: NonSharedBuffer;
3205
3531
  }>;
3206
3532
  function __promisify__(
3207
3533
  type: "ed25519",
@@ -3219,21 +3545,21 @@ declare module "crypto" {
3219
3545
  options: ED448KeyPairOptions<"pem", "der">,
3220
3546
  ): Promise<{
3221
3547
  publicKey: string;
3222
- privateKey: Buffer;
3548
+ privateKey: NonSharedBuffer;
3223
3549
  }>;
3224
3550
  function __promisify__(
3225
3551
  type: "ed448",
3226
3552
  options: ED448KeyPairOptions<"der", "pem">,
3227
3553
  ): Promise<{
3228
- publicKey: Buffer;
3554
+ publicKey: NonSharedBuffer;
3229
3555
  privateKey: string;
3230
3556
  }>;
3231
3557
  function __promisify__(
3232
3558
  type: "ed448",
3233
3559
  options: ED448KeyPairOptions<"der", "der">,
3234
3560
  ): Promise<{
3235
- publicKey: Buffer;
3236
- privateKey: Buffer;
3561
+ publicKey: NonSharedBuffer;
3562
+ privateKey: NonSharedBuffer;
3237
3563
  }>;
3238
3564
  function __promisify__(type: "ed448", options?: ED448KeyPairKeyObjectOptions): Promise<KeyPairKeyObjectResult>;
3239
3565
  function __promisify__(
@@ -3248,21 +3574,21 @@ declare module "crypto" {
3248
3574
  options: X25519KeyPairOptions<"pem", "der">,
3249
3575
  ): Promise<{
3250
3576
  publicKey: string;
3251
- privateKey: Buffer;
3577
+ privateKey: NonSharedBuffer;
3252
3578
  }>;
3253
3579
  function __promisify__(
3254
3580
  type: "x25519",
3255
3581
  options: X25519KeyPairOptions<"der", "pem">,
3256
3582
  ): Promise<{
3257
- publicKey: Buffer;
3583
+ publicKey: NonSharedBuffer;
3258
3584
  privateKey: string;
3259
3585
  }>;
3260
3586
  function __promisify__(
3261
3587
  type: "x25519",
3262
3588
  options: X25519KeyPairOptions<"der", "der">,
3263
3589
  ): Promise<{
3264
- publicKey: Buffer;
3265
- privateKey: Buffer;
3590
+ publicKey: NonSharedBuffer;
3591
+ privateKey: NonSharedBuffer;
3266
3592
  }>;
3267
3593
  function __promisify__(
3268
3594
  type: "x25519",
@@ -3280,28 +3606,187 @@ declare module "crypto" {
3280
3606
  options: X448KeyPairOptions<"pem", "der">,
3281
3607
  ): Promise<{
3282
3608
  publicKey: string;
3283
- privateKey: Buffer;
3609
+ privateKey: NonSharedBuffer;
3284
3610
  }>;
3285
3611
  function __promisify__(
3286
3612
  type: "x448",
3287
3613
  options: X448KeyPairOptions<"der", "pem">,
3288
3614
  ): Promise<{
3289
- publicKey: Buffer;
3615
+ publicKey: NonSharedBuffer;
3290
3616
  privateKey: string;
3291
3617
  }>;
3292
3618
  function __promisify__(
3293
3619
  type: "x448",
3294
3620
  options: X448KeyPairOptions<"der", "der">,
3621
+ ): Promise<{
3622
+ publicKey: NonSharedBuffer;
3623
+ privateKey: NonSharedBuffer;
3624
+ }>;
3625
+ function __promisify__(type: "x448", options?: X448KeyPairKeyObjectOptions): Promise<KeyPairKeyObjectResult>;
3626
+ function __promisify__(
3627
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
3628
+ options: MLDSAKeyPairOptions<"pem", "pem">,
3629
+ ): Promise<{
3630
+ publicKey: string;
3631
+ privateKey: string;
3632
+ }>;
3633
+ function __promisify__(
3634
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
3635
+ options: MLDSAKeyPairOptions<"pem", "der">,
3636
+ ): Promise<{
3637
+ publicKey: string;
3638
+ privateKey: NonSharedBuffer;
3639
+ }>;
3640
+ function __promisify__(
3641
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
3642
+ options: MLDSAKeyPairOptions<"der", "pem">,
3643
+ ): Promise<{
3644
+ publicKey: NonSharedBuffer;
3645
+ privateKey: string;
3646
+ }>;
3647
+ function __promisify__(
3648
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
3649
+ options: MLDSAKeyPairOptions<"der", "der">,
3650
+ ): Promise<{
3651
+ publicKey: NonSharedBuffer;
3652
+ privateKey: NonSharedBuffer;
3653
+ }>;
3654
+ function __promisify__(
3655
+ type: "ml-dsa-44" | "ml-dsa-65" | "ml-dsa-87",
3656
+ options?: MLDSAKeyPairKeyObjectOptions,
3657
+ ): Promise<KeyPairKeyObjectResult>;
3658
+ function __promisify__(
3659
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
3660
+ options: MLKEMKeyPairOptions<"pem", "pem">,
3661
+ ): Promise<{
3662
+ publicKey: string;
3663
+ privateKey: string;
3664
+ }>;
3665
+ function __promisify__(
3666
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
3667
+ options: MLKEMKeyPairOptions<"pem", "der">,
3668
+ ): Promise<{
3669
+ publicKey: string;
3670
+ privateKey: NonSharedBuffer;
3671
+ }>;
3672
+ function __promisify__(
3673
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
3674
+ options: MLKEMKeyPairOptions<"der", "pem">,
3675
+ ): Promise<{
3676
+ publicKey: NonSharedBuffer;
3677
+ privateKey: string;
3678
+ }>;
3679
+ function __promisify__(
3680
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
3681
+ options: MLKEMKeyPairOptions<"der", "der">,
3682
+ ): Promise<{
3683
+ publicKey: NonSharedBuffer;
3684
+ privateKey: NonSharedBuffer;
3685
+ }>;
3686
+ function __promisify__(
3687
+ type: "ml-kem-1024" | "ml-kem-512" | "ml-kem-768",
3688
+ options?: MLKEMKeyPairKeyObjectOptions,
3689
+ ): Promise<KeyPairKeyObjectResult>;
3690
+ function __promisify__(
3691
+ type:
3692
+ | "slh-dsa-sha2-128f"
3693
+ | "slh-dsa-sha2-128s"
3694
+ | "slh-dsa-sha2-192f"
3695
+ | "slh-dsa-sha2-192s"
3696
+ | "slh-dsa-sha2-256f"
3697
+ | "slh-dsa-sha2-256s"
3698
+ | "slh-dsa-shake-128f"
3699
+ | "slh-dsa-shake-128s"
3700
+ | "slh-dsa-shake-192f"
3701
+ | "slh-dsa-shake-192s"
3702
+ | "slh-dsa-shake-256f"
3703
+ | "slh-dsa-shake-256s",
3704
+ options: SLHDSAKeyPairOptions<"pem", "pem">,
3705
+ ): Promise<{
3706
+ publicKey: string;
3707
+ privateKey: string;
3708
+ }>;
3709
+ function __promisify__(
3710
+ type:
3711
+ | "slh-dsa-sha2-128f"
3712
+ | "slh-dsa-sha2-128s"
3713
+ | "slh-dsa-sha2-192f"
3714
+ | "slh-dsa-sha2-192s"
3715
+ | "slh-dsa-sha2-256f"
3716
+ | "slh-dsa-sha2-256s"
3717
+ | "slh-dsa-shake-128f"
3718
+ | "slh-dsa-shake-128s"
3719
+ | "slh-dsa-shake-192f"
3720
+ | "slh-dsa-shake-192s"
3721
+ | "slh-dsa-shake-256f"
3722
+ | "slh-dsa-shake-256s",
3723
+ options: SLHDSAKeyPairOptions<"pem", "der">,
3724
+ ): Promise<{
3725
+ publicKey: string;
3726
+ privateKey: Buffer;
3727
+ }>;
3728
+ function __promisify__(
3729
+ type:
3730
+ | "slh-dsa-sha2-128f"
3731
+ | "slh-dsa-sha2-128s"
3732
+ | "slh-dsa-sha2-192f"
3733
+ | "slh-dsa-sha2-192s"
3734
+ | "slh-dsa-sha2-256f"
3735
+ | "slh-dsa-sha2-256s"
3736
+ | "slh-dsa-shake-128f"
3737
+ | "slh-dsa-shake-128s"
3738
+ | "slh-dsa-shake-192f"
3739
+ | "slh-dsa-shake-192s"
3740
+ | "slh-dsa-shake-256f"
3741
+ | "slh-dsa-shake-256s",
3742
+ options: SLHDSAKeyPairOptions<"der", "pem">,
3743
+ ): Promise<{
3744
+ publicKey: Buffer;
3745
+ privateKey: string;
3746
+ }>;
3747
+ function __promisify__(
3748
+ type:
3749
+ | "slh-dsa-sha2-128f"
3750
+ | "slh-dsa-sha2-128s"
3751
+ | "slh-dsa-sha2-192f"
3752
+ | "slh-dsa-sha2-192s"
3753
+ | "slh-dsa-sha2-256f"
3754
+ | "slh-dsa-sha2-256s"
3755
+ | "slh-dsa-shake-128f"
3756
+ | "slh-dsa-shake-128s"
3757
+ | "slh-dsa-shake-192f"
3758
+ | "slh-dsa-shake-192s"
3759
+ | "slh-dsa-shake-256f"
3760
+ | "slh-dsa-shake-256s",
3761
+ options: SLHDSAKeyPairOptions<"der", "der">,
3295
3762
  ): Promise<{
3296
3763
  publicKey: Buffer;
3297
3764
  privateKey: Buffer;
3298
3765
  }>;
3299
- function __promisify__(type: "x448", options?: X448KeyPairKeyObjectOptions): Promise<KeyPairKeyObjectResult>;
3766
+ function __promisify__(
3767
+ type:
3768
+ | "slh-dsa-sha2-128f"
3769
+ | "slh-dsa-sha2-128s"
3770
+ | "slh-dsa-sha2-192f"
3771
+ | "slh-dsa-sha2-192s"
3772
+ | "slh-dsa-sha2-256f"
3773
+ | "slh-dsa-sha2-256s"
3774
+ | "slh-dsa-shake-128f"
3775
+ | "slh-dsa-shake-128s"
3776
+ | "slh-dsa-shake-192f"
3777
+ | "slh-dsa-shake-192s"
3778
+ | "slh-dsa-shake-256f"
3779
+ | "slh-dsa-shake-256s",
3780
+ options?: SLHDSAKeyPairKeyObjectOptions,
3781
+ ): Promise<KeyPairKeyObjectResult>;
3300
3782
  }
3301
3783
  /**
3302
3784
  * Calculates and returns the signature for `data` using the given private key and
3303
3785
  * algorithm. If `algorithm` is `null` or `undefined`, then the algorithm is
3304
- * dependent upon the key type (especially Ed25519 and Ed448).
3786
+ * dependent upon the key type.
3787
+ *
3788
+ * `algorithm` is required to be `null` or `undefined` for Ed25519, Ed448, and
3789
+ * ML-DSA.
3305
3790
  *
3306
3791
  * If `key` is not a `KeyObject`, this function behaves as if `key` had been
3307
3792
  * passed to {@link createPrivateKey}. If it is an object, the following
@@ -3314,16 +3799,20 @@ declare module "crypto" {
3314
3799
  algorithm: string | null | undefined,
3315
3800
  data: NodeJS.ArrayBufferView,
3316
3801
  key: KeyLike | SignKeyObjectInput | SignPrivateKeyInput | SignJsonWebKeyInput,
3317
- ): Buffer;
3802
+ ): NonSharedBuffer;
3318
3803
  function sign(
3319
3804
  algorithm: string | null | undefined,
3320
3805
  data: NodeJS.ArrayBufferView,
3321
3806
  key: KeyLike | SignKeyObjectInput | SignPrivateKeyInput | SignJsonWebKeyInput,
3322
- callback: (error: Error | null, data: Buffer) => void,
3807
+ callback: (error: Error | null, data: NonSharedBuffer) => void,
3323
3808
  ): void;
3324
3809
  /**
3325
- * Verifies the given signature for `data` using the given key and algorithm. If `algorithm` is `null` or `undefined`, then the algorithm is dependent upon the
3326
- * key type (especially Ed25519 and Ed448).
3810
+ * Verifies the given signature for `data` using the given key and algorithm. If
3811
+ * `algorithm` is `null` or `undefined`, then the algorithm is dependent upon the
3812
+ * key type.
3813
+ *
3814
+ * `algorithm` is required to be `null` or `undefined` for Ed25519, Ed448, and
3815
+ * ML-DSA.
3327
3816
  *
3328
3817
  * If `key` is not a `KeyObject`, this function behaves as if `key` had been
3329
3818
  * passed to {@link createPublicKey}. If it is an object, the following
@@ -3351,16 +3840,102 @@ declare module "crypto" {
3351
3840
  callback: (error: Error | null, result: boolean) => void,
3352
3841
  ): void;
3353
3842
  /**
3354
- * Computes the Diffie-Hellman secret based on a `privateKey` and a `publicKey`.
3355
- * Both keys must have the same `asymmetricKeyType`, which must be one of `'dh'` (for Diffie-Hellman), `'ec'` (for ECDH), `'x448'`, or `'x25519'` (for ECDH-ES).
3843
+ * Key decapsulation using a KEM algorithm with a private key.
3844
+ *
3845
+ * Supported key types and their KEM algorithms are:
3846
+ *
3847
+ * * `'rsa'` RSA Secret Value Encapsulation
3848
+ * * `'ec'` DHKEM(P-256, HKDF-SHA256), DHKEM(P-384, HKDF-SHA256), DHKEM(P-521, HKDF-SHA256)
3849
+ * * `'x25519'` DHKEM(X25519, HKDF-SHA256)
3850
+ * * `'x448'` DHKEM(X448, HKDF-SHA512)
3851
+ * * `'ml-kem-512'` ML-KEM
3852
+ * * `'ml-kem-768'` ML-KEM
3853
+ * * `'ml-kem-1024'` ML-KEM
3854
+ *
3855
+ * If `key` is not a {@link KeyObject}, this function behaves as if `key` had been
3856
+ * passed to `crypto.createPrivateKey()`.
3857
+ *
3858
+ * If the `callback` function is provided this function uses libuv's threadpool.
3859
+ * @since v24.7.0
3860
+ */
3861
+ function decapsulate(
3862
+ key: KeyLike | PrivateKeyInput | JsonWebKeyInput,
3863
+ ciphertext: ArrayBuffer | NodeJS.ArrayBufferView,
3864
+ ): NonSharedBuffer;
3865
+ function decapsulate(
3866
+ key: KeyLike | PrivateKeyInput | JsonWebKeyInput,
3867
+ ciphertext: ArrayBuffer | NodeJS.ArrayBufferView,
3868
+ callback: (err: Error, sharedKey: NonSharedBuffer) => void,
3869
+ ): void;
3870
+ /**
3871
+ * Computes the Diffie-Hellman shared secret based on a `privateKey` and a `publicKey`.
3872
+ * Both keys must have the same `asymmetricKeyType` and must support either the DH or
3873
+ * ECDH operation.
3874
+ *
3875
+ * If the `callback` function is provided this function uses libuv's threadpool.
3356
3876
  * @since v13.9.0, v12.17.0
3357
3877
  */
3358
- function diffieHellman(options: { privateKey: KeyObject; publicKey: KeyObject }): Buffer;
3878
+ function diffieHellman(options: { privateKey: KeyObject; publicKey: KeyObject }): NonSharedBuffer;
3879
+ function diffieHellman(
3880
+ options: { privateKey: KeyObject; publicKey: KeyObject },
3881
+ callback: (err: Error | null, secret: NonSharedBuffer) => void,
3882
+ ): void;
3359
3883
  /**
3360
- * A utility for creating one-shot hash digests of data. It can be faster than the object-based `crypto.createHash()` when hashing a smaller amount of data
3361
- * (<= 5MB) that's readily available. If the data can be big or if it is streamed, it's still recommended to use `crypto.createHash()` instead. The `algorithm`
3362
- * is dependent on the available algorithms supported by the version of OpenSSL on the platform. Examples are `'sha256'`, `'sha512'`, etc. On recent releases
3363
- * of OpenSSL, `openssl list -digest-algorithms` will display the available digest algorithms.
3884
+ * Key encapsulation using a KEM algorithm with a public key.
3885
+ *
3886
+ * Supported key types and their KEM algorithms are:
3887
+ *
3888
+ * * `'rsa'` RSA Secret Value Encapsulation
3889
+ * * `'ec'` DHKEM(P-256, HKDF-SHA256), DHKEM(P-384, HKDF-SHA256), DHKEM(P-521, HKDF-SHA256)
3890
+ * * `'x25519'` DHKEM(X25519, HKDF-SHA256)
3891
+ * * `'x448'` DHKEM(X448, HKDF-SHA512)
3892
+ * * `'ml-kem-512'` ML-KEM
3893
+ * * `'ml-kem-768'` ML-KEM
3894
+ * * `'ml-kem-1024'` ML-KEM
3895
+ *
3896
+ * If `key` is not a {@link KeyObject}, this function behaves as if `key` had been
3897
+ * passed to `crypto.createPublicKey()`.
3898
+ *
3899
+ * If the `callback` function is provided this function uses libuv's threadpool.
3900
+ * @since v24.7.0
3901
+ */
3902
+ function encapsulate(
3903
+ key: KeyLike | PublicKeyInput | JsonWebKeyInput,
3904
+ ): { sharedKey: NonSharedBuffer; ciphertext: NonSharedBuffer };
3905
+ function encapsulate(
3906
+ key: KeyLike | PublicKeyInput | JsonWebKeyInput,
3907
+ callback: (err: Error, result: { sharedKey: NonSharedBuffer; ciphertext: NonSharedBuffer }) => void,
3908
+ ): void;
3909
+ interface OneShotDigestOptions {
3910
+ /**
3911
+ * Encoding used to encode the returned digest.
3912
+ * @default 'hex'
3913
+ */
3914
+ outputEncoding?: BinaryToTextEncoding | "buffer" | undefined;
3915
+ /**
3916
+ * For XOF hash functions such as 'shake256', the outputLength option
3917
+ * can be used to specify the desired output length in bytes.
3918
+ */
3919
+ outputLength?: number | undefined;
3920
+ }
3921
+ interface OneShotDigestOptionsWithStringEncoding extends OneShotDigestOptions {
3922
+ outputEncoding?: BinaryToTextEncoding | undefined;
3923
+ }
3924
+ interface OneShotDigestOptionsWithBufferEncoding extends OneShotDigestOptions {
3925
+ outputEncoding: "buffer";
3926
+ }
3927
+ /**
3928
+ * A utility for creating one-shot hash digests of data. It can be faster than
3929
+ * the object-based `crypto.createHash()` when hashing a smaller amount of data
3930
+ * (<= 5MB) that's readily available. If the data can be big or if it is streamed,
3931
+ * it's still recommended to use `crypto.createHash()` instead.
3932
+ *
3933
+ * The `algorithm` is dependent on the available algorithms supported by the
3934
+ * version of OpenSSL on the platform. Examples are `'sha256'`, `'sha512'`, etc.
3935
+ * On recent releases of OpenSSL, `openssl list -digest-algorithms` will
3936
+ * display the available digest algorithms.
3937
+ *
3938
+ * If `options` is a string, then it specifies the `outputEncoding`.
3364
3939
  *
3365
3940
  * Example:
3366
3941
  *
@@ -3380,17 +3955,26 @@ declare module "crypto" {
3380
3955
  * console.log(crypto.hash('sha1', Buffer.from(base64, 'base64'), 'buffer'));
3381
3956
  * ```
3382
3957
  * @since v21.7.0, v20.12.0
3383
- * @param data When `data` is a string, it will be encoded as UTF-8 before being hashed. If a different input encoding is desired for a string input, user
3384
- * could encode the string into a `TypedArray` using either `TextEncoder` or `Buffer.from()` and passing the encoded `TypedArray` into this API instead.
3385
- * @param [outputEncoding='hex'] [Encoding](https://nodejs.org/docs/latest-v22.x/api/buffer.html#buffers-and-character-encodings) used to encode the returned digest.
3958
+ * @param data When `data` is a string, it will be encoded as UTF-8 before being hashed. If a different
3959
+ * input encoding is desired for a string input, user could encode the string
3960
+ * into a `TypedArray` using either `TextEncoder` or `Buffer.from()` and passing
3961
+ * the encoded `TypedArray` into this API instead.
3386
3962
  */
3387
- function hash(algorithm: string, data: BinaryLike, outputEncoding?: BinaryToTextEncoding): string;
3388
- function hash(algorithm: string, data: BinaryLike, outputEncoding: "buffer"): Buffer;
3389
3963
  function hash(
3390
3964
  algorithm: string,
3391
3965
  data: BinaryLike,
3392
- outputEncoding?: BinaryToTextEncoding | "buffer",
3393
- ): string | Buffer;
3966
+ options?: OneShotDigestOptionsWithStringEncoding | BinaryToTextEncoding,
3967
+ ): string;
3968
+ function hash(
3969
+ algorithm: string,
3970
+ data: BinaryLike,
3971
+ options: OneShotDigestOptionsWithBufferEncoding | "buffer",
3972
+ ): NonSharedBuffer;
3973
+ function hash(
3974
+ algorithm: string,
3975
+ data: BinaryLike,
3976
+ options: OneShotDigestOptions | BinaryToTextEncoding | "buffer",
3977
+ ): string | NonSharedBuffer;
3394
3978
  type CipherMode = "cbc" | "ccm" | "cfb" | "ctr" | "ecb" | "gcm" | "ocb" | "ofb" | "stream" | "wrap" | "xts";
3395
3979
  interface CipherInfoOptions {
3396
3980
  /**
@@ -3554,23 +4138,23 @@ declare module "crypto" {
3554
4138
  /**
3555
4139
  * @default 'always'
3556
4140
  */
3557
- subject?: "always" | "default" | "never";
4141
+ subject?: "always" | "default" | "never" | undefined;
3558
4142
  /**
3559
4143
  * @default true
3560
4144
  */
3561
- wildcards?: boolean;
4145
+ wildcards?: boolean | undefined;
3562
4146
  /**
3563
4147
  * @default true
3564
4148
  */
3565
- partialWildcards?: boolean;
4149
+ partialWildcards?: boolean | undefined;
3566
4150
  /**
3567
4151
  * @default false
3568
4152
  */
3569
- multiLabelWildcards?: boolean;
4153
+ multiLabelWildcards?: boolean | undefined;
3570
4154
  /**
3571
4155
  * @default false
3572
4156
  */
3573
- singleLabelSubdomains?: boolean;
4157
+ singleLabelSubdomains?: boolean | undefined;
3574
4158
  }
3575
4159
  /**
3576
4160
  * Encapsulates an X509 certificate and provides read-only access to
@@ -3672,7 +4256,7 @@ declare module "crypto" {
3672
4256
  * available.
3673
4257
  * @since v15.9.0
3674
4258
  */
3675
- readonly issuerCertificate?: X509Certificate | undefined;
4259
+ readonly issuerCertificate: X509Certificate | undefined;
3676
4260
  /**
3677
4261
  * The public key `KeyObject` for this certificate.
3678
4262
  * @since v15.6.0
@@ -3682,7 +4266,7 @@ declare module "crypto" {
3682
4266
  * A `Buffer` containing the DER encoding of this certificate.
3683
4267
  * @since v15.6.0
3684
4268
  */
3685
- readonly raw: Buffer;
4269
+ readonly raw: NonSharedBuffer;
3686
4270
  /**
3687
4271
  * The serial number of this certificate.
3688
4272
  *
@@ -3692,6 +4276,16 @@ declare module "crypto" {
3692
4276
  * @since v15.6.0
3693
4277
  */
3694
4278
  readonly serialNumber: string;
4279
+ /**
4280
+ * The algorithm used to sign the certificate or `undefined` if the signature algorithm is unknown by OpenSSL.
4281
+ * @since v24.9.0
4282
+ */
4283
+ readonly signatureAlgorithm: string | undefined;
4284
+ /**
4285
+ * The OID of the algorithm used to sign the certificate.
4286
+ * @since v24.9.0
4287
+ */
4288
+ readonly signatureAlgorithmOid: string;
3695
4289
  /**
3696
4290
  * The date/time from which this certificate is considered valid.
3697
4291
  * @since v15.6.0
@@ -3764,7 +4358,23 @@ declare module "crypto" {
3764
4358
  */
3765
4359
  checkIP(ip: string): string | undefined;
3766
4360
  /**
3767
- * Checks whether this certificate was issued by the given `otherCert`.
4361
+ * Checks whether this certificate was potentially issued by the given `otherCert`
4362
+ * by comparing the certificate metadata.
4363
+ *
4364
+ * This is useful for pruning a list of possible issuer certificates which have been
4365
+ * selected using a more rudimentary filtering routine, i.e. just based on subject
4366
+ * and issuer names.
4367
+ *
4368
+ * Finally, to verify that this certificate's signature was produced by a private key
4369
+ * corresponding to `otherCert`'s public key use `x509.verify(publicKey)`
4370
+ * with `otherCert`'s public key represented as a `KeyObject`
4371
+ * like so
4372
+ *
4373
+ * ```js
4374
+ * if (!x509.verify(otherCert.publicKey)) {
4375
+ * throw new Error('otherCert did not issue x509');
4376
+ * }
4377
+ * ```
3768
4378
  * @since v15.6.0
3769
4379
  */
3770
4380
  checkIssued(otherCert: X509Certificate): boolean;
@@ -3948,6 +4558,130 @@ declare module "crypto" {
3948
4558
  * @return Returns `typedArray`.
3949
4559
  */
3950
4560
  function getRandomValues<T extends webcrypto.BufferSource>(typedArray: T): T;
4561
+ type Argon2Algorithm = "argon2d" | "argon2i" | "argon2id";
4562
+ interface Argon2Parameters {
4563
+ /**
4564
+ * REQUIRED, this is the password for password hashing applications of Argon2.
4565
+ */
4566
+ message: string | ArrayBuffer | NodeJS.ArrayBufferView;
4567
+ /**
4568
+ * REQUIRED, must be at least 8 bytes long. This is the salt for password hashing applications of Argon2.
4569
+ */
4570
+ nonce: string | ArrayBuffer | NodeJS.ArrayBufferView;
4571
+ /**
4572
+ * REQUIRED, degree of parallelism determines how many computational chains (lanes)
4573
+ * can be run. Must be greater than 1 and less than `2**24-1`.
4574
+ */
4575
+ parallelism: number;
4576
+ /**
4577
+ * REQUIRED, the length of the key to generate. Must be greater than 4 and
4578
+ * less than `2**32-1`.
4579
+ */
4580
+ tagLength: number;
4581
+ /**
4582
+ * REQUIRED, memory cost in 1KiB blocks. Must be greater than
4583
+ * `8 * parallelism` and less than `2**32-1`. The actual number of blocks is rounded
4584
+ * down to the nearest multiple of `4 * parallelism`.
4585
+ */
4586
+ memory: number;
4587
+ /**
4588
+ * REQUIRED, number of passes (iterations). Must be greater than 1 and less
4589
+ * than `2**32-1`.
4590
+ */
4591
+ passes: number;
4592
+ /**
4593
+ * OPTIONAL, Random additional input,
4594
+ * similar to the salt, that should **NOT** be stored with the derived key. This is known as pepper in
4595
+ * password hashing applications. If used, must have a length not greater than `2**32-1` bytes.
4596
+ */
4597
+ secret?: string | ArrayBuffer | NodeJS.ArrayBufferView | undefined;
4598
+ /**
4599
+ * OPTIONAL, Additional data to
4600
+ * be added to the hash, functionally equivalent to salt or secret, but meant for
4601
+ * non-random data. If used, must have a length not greater than `2**32-1` bytes.
4602
+ */
4603
+ associatedData?: string | ArrayBuffer | NodeJS.ArrayBufferView | undefined;
4604
+ }
4605
+ /**
4606
+ * Provides an asynchronous [Argon2](https://www.rfc-editor.org/rfc/rfc9106.html) implementation. Argon2 is a password-based
4607
+ * key derivation function that is designed to be expensive computationally and
4608
+ * memory-wise in order to make brute-force attacks unrewarding.
4609
+ *
4610
+ * The `nonce` should be as unique as possible. It is recommended that a nonce is
4611
+ * random and at least 16 bytes long. See [NIST SP 800-132](https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-132.pdf) for details.
4612
+ *
4613
+ * When passing strings for `message`, `nonce`, `secret` or `associatedData`, please
4614
+ * consider [caveats when using strings as inputs to cryptographic APIs](https://nodejs.org/docs/latest-v24.x/api/crypto.html#using-strings-as-inputs-to-cryptographic-apis).
4615
+ *
4616
+ * The `callback` function is called with two arguments: `err` and `derivedKey`.
4617
+ * `err` is an exception object when key derivation fails, otherwise `err` is
4618
+ * `null`. `derivedKey` is passed to the callback as a `Buffer`.
4619
+ *
4620
+ * An exception is thrown when any of the input arguments specify invalid values
4621
+ * or types.
4622
+ *
4623
+ * ```js
4624
+ * const { argon2, randomBytes } = await import('node:crypto');
4625
+ *
4626
+ * const parameters = {
4627
+ * message: 'password',
4628
+ * nonce: randomBytes(16),
4629
+ * parallelism: 4,
4630
+ * tagLength: 64,
4631
+ * memory: 65536,
4632
+ * passes: 3,
4633
+ * };
4634
+ *
4635
+ * argon2('argon2id', parameters, (err, derivedKey) => {
4636
+ * if (err) throw err;
4637
+ * console.log(derivedKey.toString('hex')); // 'af91dad...9520f15'
4638
+ * });
4639
+ * ```
4640
+ * @since v24.7.0
4641
+ * @param algorithm Variant of Argon2, one of `"argon2d"`, `"argon2i"` or `"argon2id"`.
4642
+ * @experimental
4643
+ */
4644
+ function argon2(
4645
+ algorithm: Argon2Algorithm,
4646
+ parameters: Argon2Parameters,
4647
+ callback: (err: Error | null, derivedKey: NonSharedBuffer) => void,
4648
+ ): void;
4649
+ /**
4650
+ * Provides a synchronous [Argon2][] implementation. Argon2 is a password-based
4651
+ * key derivation function that is designed to be expensive computationally and
4652
+ * memory-wise in order to make brute-force attacks unrewarding.
4653
+ *
4654
+ * The `nonce` should be as unique as possible. It is recommended that a nonce is
4655
+ * random and at least 16 bytes long. See [NIST SP 800-132](https://nvlpubs.nist.gov/nistpubs/Legacy/SP/nistspecialpublication800-132.pdf) for details.
4656
+ *
4657
+ * When passing strings for `message`, `nonce`, `secret` or `associatedData`, please
4658
+ * consider [caveats when using strings as inputs to cryptographic APIs](https://nodejs.org/docs/latest-v24.x/api/crypto.html#using-strings-as-inputs-to-cryptographic-apis).
4659
+ *
4660
+ * An exception is thrown when key derivation fails, otherwise the derived key is
4661
+ * returned as a `Buffer`.
4662
+ *
4663
+ * An exception is thrown when any of the input arguments specify invalid values
4664
+ * or types.
4665
+ *
4666
+ * ```js
4667
+ * const { argon2Sync, randomBytes } = await import('node:crypto');
4668
+ *
4669
+ * const parameters = {
4670
+ * message: 'password',
4671
+ * nonce: randomBytes(16),
4672
+ * parallelism: 4,
4673
+ * tagLength: 64,
4674
+ * memory: 65536,
4675
+ * passes: 3,
4676
+ * };
4677
+ *
4678
+ * const derivedKey = argon2Sync('argon2id', parameters);
4679
+ * console.log(derivedKey.toString('hex')); // 'af91dad...9520f15'
4680
+ * ```
4681
+ * @since v24.7.0
4682
+ * @experimental
4683
+ */
4684
+ function argon2Sync(algorithm: Argon2Algorithm, parameters: Argon2Parameters): NonSharedBuffer;
3951
4685
  /**
3952
4686
  * A convenient alias for `crypto.webcrypto.subtle`.
3953
4687
  * @since v17.4.0
@@ -3962,21 +4696,30 @@ declare module "crypto" {
3962
4696
  const webcrypto: webcrypto.Crypto;
3963
4697
  namespace webcrypto {
3964
4698
  type BufferSource = ArrayBufferView | ArrayBuffer;
3965
- type KeyFormat = "jwk" | "pkcs8" | "raw" | "spki";
4699
+ type KeyFormat = "jwk" | "pkcs8" | "raw" | "raw-public" | "raw-secret" | "raw-seed" | "spki";
3966
4700
  type KeyType = "private" | "public" | "secret";
3967
4701
  type KeyUsage =
3968
- | "decrypt"
3969
- | "deriveBits"
3970
- | "deriveKey"
3971
4702
  | "encrypt"
4703
+ | "decrypt"
3972
4704
  | "sign"
3973
- | "unwrapKey"
3974
4705
  | "verify"
3975
- | "wrapKey";
4706
+ | "deriveKey"
4707
+ | "deriveBits"
4708
+ | "encapsulateBits"
4709
+ | "decapsulateBits"
4710
+ | "encapsulateKey"
4711
+ | "decapsulateKey"
4712
+ | "wrapKey"
4713
+ | "unwrapKey";
3976
4714
  type AlgorithmIdentifier = Algorithm | string;
3977
4715
  type HashAlgorithmIdentifier = AlgorithmIdentifier;
3978
4716
  type NamedCurve = string;
3979
4717
  type BigInteger = Uint8Array;
4718
+ interface AeadParams extends Algorithm {
4719
+ additionalData?: BufferSource;
4720
+ iv: BufferSource;
4721
+ tagLength: number;
4722
+ }
3980
4723
  interface AesCbcParams extends Algorithm {
3981
4724
  iv: BufferSource;
3982
4725
  }
@@ -3987,6 +4730,8 @@ declare module "crypto" {
3987
4730
  interface AesDerivedKeyParams extends Algorithm {
3988
4731
  length: number;
3989
4732
  }
4733
+ // TODO: remove in next major
4734
+ /** @deprecated Replaced by `AeadParams`. */
3990
4735
  interface AesGcmParams extends Algorithm {
3991
4736
  additionalData?: BufferSource;
3992
4737
  iv: BufferSource;
@@ -4001,6 +4746,23 @@ declare module "crypto" {
4001
4746
  interface Algorithm {
4002
4747
  name: string;
4003
4748
  }
4749
+ interface Argon2Params extends Algorithm {
4750
+ associatedData?: BufferSource;
4751
+ memory: number;
4752
+ nonce: BufferSource;
4753
+ parallelism: number;
4754
+ passes: number;
4755
+ secretValue?: BufferSource;
4756
+ version?: number;
4757
+ }
4758
+ interface CShakeParams extends Algorithm {
4759
+ customization?: BufferSource;
4760
+ functionName?: BufferSource;
4761
+ length: number;
4762
+ }
4763
+ interface ContextParams extends Algorithm {
4764
+ context?: BufferSource;
4765
+ }
4004
4766
  interface EcKeyAlgorithm extends KeyAlgorithm {
4005
4767
  namedCurve: NamedCurve;
4006
4768
  }
@@ -4016,9 +4778,6 @@ declare module "crypto" {
4016
4778
  interface EcdsaParams extends Algorithm {
4017
4779
  hash: HashAlgorithmIdentifier;
4018
4780
  }
4019
- interface Ed448Params extends Algorithm {
4020
- context?: BufferSource;
4021
- }
4022
4781
  interface HkdfParams extends Algorithm {
4023
4782
  hash: HashAlgorithmIdentifier;
4024
4783
  info: BufferSource;
@@ -4059,6 +4818,19 @@ declare module "crypto" {
4059
4818
  interface KeyAlgorithm {
4060
4819
  name: string;
4061
4820
  }
4821
+ interface KmacImportParams extends Algorithm {
4822
+ length?: number;
4823
+ }
4824
+ interface KmacKeyAlgorithm extends KeyAlgorithm {
4825
+ length: number;
4826
+ }
4827
+ interface KmacKeyGenParams extends Algorithm {
4828
+ length?: number;
4829
+ }
4830
+ interface KmacParams extends Algorithm {
4831
+ customization?: BufferSource;
4832
+ length: number;
4833
+ }
4062
4834
  interface Pbkdf2Params extends Algorithm {
4063
4835
  hash: HashAlgorithmIdentifier;
4064
4836
  iterations: number;
@@ -4112,22 +4884,15 @@ declare module "crypto" {
4112
4884
  * An error will be thrown if the given `typedArray` is larger than 65,536 bytes.
4113
4885
  * @since v15.0.0
4114
4886
  */
4115
- getRandomValues<T extends Exclude<NodeJS.TypedArray, Float32Array | Float64Array>>(typedArray: T): T;
4887
+ getRandomValues<T extends Exclude<NodeJS.TypedArray, Float16Array | Float32Array | Float64Array>>(
4888
+ typedArray: T,
4889
+ ): T;
4116
4890
  /**
4117
4891
  * Generates a random {@link https://www.rfc-editor.org/rfc/rfc4122.txt RFC 4122} version 4 UUID.
4118
4892
  * The UUID is generated using a cryptographic pseudorandom number generator.
4119
4893
  * @since v16.7.0
4120
4894
  */
4121
4895
  randomUUID(): UUID;
4122
- CryptoKey: CryptoKeyConstructor;
4123
- }
4124
- // This constructor throws ILLEGAL_CONSTRUCTOR so it should not be newable.
4125
- interface CryptoKeyConstructor {
4126
- /** Illegal constructor */
4127
- (_: { readonly _: unique symbol }): never; // Allows instanceof to work but not be callable by the user.
4128
- readonly length: 0;
4129
- readonly name: "CryptoKey";
4130
- readonly prototype: CryptoKey;
4131
4896
  }
4132
4897
  /**
4133
4898
  * @since v15.0.0
@@ -4182,31 +4947,81 @@ declare module "crypto" {
4182
4947
  */
4183
4948
  publicKey: CryptoKey;
4184
4949
  }
4950
+ interface EncapsulatedBits {
4951
+ sharedKey: ArrayBuffer;
4952
+ ciphertext: ArrayBuffer;
4953
+ }
4954
+ interface EncapsulatedKey {
4955
+ sharedKey: CryptoKey;
4956
+ ciphertext: ArrayBuffer;
4957
+ }
4185
4958
  /**
4186
4959
  * @since v15.0.0
4187
4960
  */
4188
4961
  interface SubtleCrypto {
4962
+ /**
4963
+ * A message recipient uses their asymmetric private key to decrypt an
4964
+ * "encapsulated key" (ciphertext), thereby recovering a temporary symmetric
4965
+ * key (represented as `ArrayBuffer`) which is then used to decrypt a message.
4966
+ *
4967
+ * The algorithms currently supported include:
4968
+ *
4969
+ * * `'ML-KEM-512'`
4970
+ * * `'ML-KEM-768'`
4971
+ * * `'ML-KEM-1024'`
4972
+ * @since v24.7.0
4973
+ * @returns Fulfills with `ArrayBuffer` upon success.
4974
+ */
4975
+ decapsulateBits(
4976
+ decapsulationAlgorithm: AlgorithmIdentifier,
4977
+ decapsulationKey: CryptoKey,
4978
+ ciphertext: BufferSource,
4979
+ ): Promise<ArrayBuffer>;
4980
+ /**
4981
+ * A message recipient uses their asymmetric private key to decrypt an
4982
+ * "encapsulated key" (ciphertext), thereby recovering a temporary symmetric
4983
+ * key (represented as `CryptoKey`) which is then used to decrypt a message.
4984
+ *
4985
+ * The algorithms currently supported include:
4986
+ *
4987
+ * * `'ML-KEM-512'`
4988
+ * * `'ML-KEM-768'`
4989
+ * * `'ML-KEM-1024'`
4990
+ * @since v24.7.0
4991
+ * @param usages See [Key usages](https://nodejs.org/docs/latest-v24.x/api/webcrypto.html#cryptokeyusages).
4992
+ * @returns Fulfills with `CryptoKey` upon success.
4993
+ */
4994
+ decapsulateKey(
4995
+ decapsulationAlgorithm: AlgorithmIdentifier,
4996
+ decapsulationKey: CryptoKey,
4997
+ ciphertext: BufferSource,
4998
+ sharedKeyAlgorithm: AlgorithmIdentifier | HmacImportParams | AesDerivedKeyParams | KmacImportParams,
4999
+ extractable: boolean,
5000
+ usages: KeyUsage[],
5001
+ ): Promise<CryptoKey>;
4189
5002
  /**
4190
5003
  * Using the method and parameters specified in `algorithm` and the keying material provided by `key`,
4191
- * `subtle.decrypt()` attempts to decipher the provided `data`. If successful,
5004
+ * this method attempts to decipher the provided `data`. If successful,
4192
5005
  * the returned promise will be resolved with an `<ArrayBuffer>` containing the plaintext result.
4193
5006
  *
4194
5007
  * The algorithms currently supported include:
4195
5008
  *
4196
- * - `'RSA-OAEP'`
4197
- * - `'AES-CTR'`
4198
- * - `'AES-CBC'`
4199
- * - `'AES-GCM'`
5009
+ * * `'AES-CBC'`
5010
+ * * `'AES-CTR'`
5011
+ * * `'AES-GCM'`
5012
+ * * `'AES-OCB'`
5013
+ * * `'ChaCha20-Poly1305'`
5014
+ * * `'RSA-OAEP'`
4200
5015
  * @since v15.0.0
4201
5016
  */
4202
5017
  decrypt(
4203
- algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams,
5018
+ algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AeadParams,
4204
5019
  key: CryptoKey,
4205
5020
  data: BufferSource,
4206
5021
  ): Promise<ArrayBuffer>;
4207
5022
  /**
4208
5023
  * Using the method and parameters specified in `algorithm` and the keying material provided by `baseKey`,
4209
- * `subtle.deriveBits()` attempts to generate `length` bits.
5024
+ * this method attempts to generate `length` bits.
4210
5025
  * The Node.js implementation requires that when `length` is a number it must be multiple of `8`.
4211
5026
  * When `length` is `null` the maximum number of bits for a given algorithm is generated. This is allowed
4212
5027
  * for the `'ECDH'`, `'X25519'`, and `'X448'` algorithms.
@@ -4214,11 +5029,14 @@ declare module "crypto" {
4214
5029
  *
4215
5030
  * The algorithms currently supported include:
4216
5031
  *
4217
- * - `'ECDH'`
4218
- * - `'X25519'`
4219
- * - `'X448'`
4220
- * - `'HKDF'`
4221
- * - `'PBKDF2'`
5032
+ * * `'Argon2d'`
5033
+ * * `'Argon2i'`
5034
+ * * `'Argon2id'`
5035
+ * * `'ECDH'`
5036
+ * * `'HKDF'`
5037
+ * * `'PBKDF2'`
5038
+ * * `'X25519'`
5039
+ * * `'X448'`
4222
5040
  * @since v15.0.0
4223
5041
  */
4224
5042
  deriveBits(
@@ -4227,31 +5045,34 @@ declare module "crypto" {
4227
5045
  length?: number | null,
4228
5046
  ): Promise<ArrayBuffer>;
4229
5047
  deriveBits(
4230
- algorithm: EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params,
5048
+ algorithm: EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params | Argon2Params,
4231
5049
  baseKey: CryptoKey,
4232
5050
  length: number,
4233
5051
  ): Promise<ArrayBuffer>;
4234
5052
  /**
4235
5053
  * Using the method and parameters specified in `algorithm`, and the keying material provided by `baseKey`,
4236
- * `subtle.deriveKey()` attempts to generate a new <CryptoKey>` based on the method and parameters in `derivedKeyAlgorithm`.
5054
+ * this method attempts to generate a new <CryptoKey>` based on the method and parameters in `derivedKeyAlgorithm`.
4237
5055
  *
4238
5056
  * Calling `subtle.deriveKey()` is equivalent to calling `subtle.deriveBits()` to generate raw keying material,
4239
5057
  * then passing the result into the `subtle.importKey()` method using the `deriveKeyAlgorithm`, `extractable`, and `keyUsages` parameters as input.
4240
5058
  *
4241
5059
  * The algorithms currently supported include:
4242
5060
  *
4243
- * - `'ECDH'`
4244
- * - `'X25519'`
4245
- * - `'X448'`
4246
- * - `'HKDF'`
4247
- * - `'PBKDF2'`
5061
+ * * `'Argon2d'`
5062
+ * * `'Argon2i'`
5063
+ * * `'Argon2id'`
5064
+ * * `'ECDH'`
5065
+ * * `'HKDF'`
5066
+ * * `'PBKDF2'`
5067
+ * * `'X25519'`
5068
+ * * `'X448'`
4248
5069
  * @param keyUsages See {@link https://nodejs.org/docs/latest/api/webcrypto.html#cryptokeyusages Key usages}.
4249
5070
  * @since v15.0.0
4250
5071
  */
4251
5072
  deriveKey(
4252
- algorithm: EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params,
5073
+ algorithm: EcdhKeyDeriveParams | HkdfParams | Pbkdf2Params | Argon2Params,
4253
5074
  baseKey: CryptoKey,
4254
- derivedKeyAlgorithm: AlgorithmIdentifier | HmacImportParams | AesDerivedKeyParams,
5075
+ derivedKeyAlgorithm: AlgorithmIdentifier | HmacImportParams | AesDerivedKeyParams | KmacImportParams,
4255
5076
  extractable: boolean,
4256
5077
  keyUsages: readonly KeyUsage[],
4257
5078
  ): Promise<CryptoKey>;
@@ -4261,30 +5082,73 @@ declare module "crypto" {
4261
5082
  *
4262
5083
  * If `algorithm` is provided as a `<string>`, it must be one of:
4263
5084
  *
4264
- * - `'SHA-1'`
4265
- * - `'SHA-256'`
4266
- * - `'SHA-384'`
4267
- * - `'SHA-512'`
5085
+ * * `'cSHAKE128'`
5086
+ * * `'cSHAKE256'`
5087
+ * * `'SHA-1'`
5088
+ * * `'SHA-256'`
5089
+ * * `'SHA-384'`
5090
+ * * `'SHA-512'`
5091
+ * * `'SHA3-256'`
5092
+ * * `'SHA3-384'`
5093
+ * * `'SHA3-512'`
4268
5094
  *
4269
5095
  * If `algorithm` is provided as an `<Object>`, it must have a `name` property whose value is one of the above.
4270
5096
  * @since v15.0.0
4271
5097
  */
4272
- digest(algorithm: AlgorithmIdentifier, data: BufferSource): Promise<ArrayBuffer>;
5098
+ digest(algorithm: AlgorithmIdentifier | CShakeParams, data: BufferSource): Promise<ArrayBuffer>;
5099
+ /**
5100
+ * Uses a message recipient's asymmetric public key to encrypt a temporary symmetric key.
5101
+ * This encrypted key is the "encapsulated key" represented as `EncapsulatedBits`.
5102
+ *
5103
+ * The algorithms currently supported include:
5104
+ *
5105
+ * * `'ML-KEM-512'`
5106
+ * * `'ML-KEM-768'`
5107
+ * * `'ML-KEM-1024'`
5108
+ * @since v24.7.0
5109
+ * @returns Fulfills with `EncapsulatedBits` upon success.
5110
+ */
5111
+ encapsulateBits(
5112
+ encapsulationAlgorithm: AlgorithmIdentifier,
5113
+ encapsulationKey: CryptoKey,
5114
+ ): Promise<EncapsulatedBits>;
5115
+ /**
5116
+ * Uses a message recipient's asymmetric public key to encrypt a temporary symmetric key.
5117
+ * This encrypted key is the "encapsulated key" represented as `EncapsulatedKey`.
5118
+ *
5119
+ * The algorithms currently supported include:
5120
+ *
5121
+ * * `'ML-KEM-512'`
5122
+ * * `'ML-KEM-768'`
5123
+ * * `'ML-KEM-1024'`
5124
+ * @since v24.7.0
5125
+ * @param usages See [Key usages](https://nodejs.org/docs/latest-v24.x/api/webcrypto.html#cryptokeyusages).
5126
+ * @returns Fulfills with `EncapsulatedKey` upon success.
5127
+ */
5128
+ encapsulateKey(
5129
+ encapsulationAlgorithm: AlgorithmIdentifier,
5130
+ encapsulationKey: CryptoKey,
5131
+ sharedKeyAlgorithm: AlgorithmIdentifier | HmacImportParams | AesDerivedKeyParams | KmacImportParams,
5132
+ extractable: boolean,
5133
+ usages: KeyUsage[],
5134
+ ): Promise<EncapsulatedKey>;
4273
5135
  /**
4274
5136
  * Using the method and parameters specified by `algorithm` and the keying material provided by `key`,
4275
- * `subtle.encrypt()` attempts to encipher `data`. If successful,
5137
+ * this method attempts to encipher `data`. If successful,
4276
5138
  * the returned promise is resolved with an `<ArrayBuffer>` containing the encrypted result.
4277
5139
  *
4278
5140
  * The algorithms currently supported include:
4279
5141
  *
4280
- * - `'RSA-OAEP'`
4281
- * - `'AES-CTR'`
4282
- * - `'AES-CBC'`
4283
- * - `'AES-GCM'`
5142
+ * * `'AES-CBC'`
5143
+ * * `'AES-CTR'`
5144
+ * * `'AES-GCM'`
5145
+ * * `'AES-OCB'`
5146
+ * * `'ChaCha20-Poly1305'`
5147
+ * * `'RSA-OAEP'`
4284
5148
  * @since v15.0.0
4285
5149
  */
4286
5150
  encrypt(
4287
- algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams,
5151
+ algorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AeadParams,
4288
5152
  key: CryptoKey,
4289
5153
  data: BufferSource,
4290
5154
  ): Promise<ArrayBuffer>;
@@ -4298,35 +5162,47 @@ declare module "crypto" {
4298
5162
  *
4299
5163
  * When `format` is `'jwk'` and the export is successful, the returned promise will be resolved with a
4300
5164
  * JavaScript object conforming to the {@link https://tools.ietf.org/html/rfc7517 JSON Web Key} specification.
4301
- * @param format Must be one of `'raw'`, `'pkcs8'`, `'spki'`, or `'jwk'`.
5165
+ * @param format Must be one of `'raw'`, `'pkcs8'`, `'spki'`, `'jwk'`, `'raw-secret'`,
5166
+ * `'raw-public'`, or `'raw-seed'`.
4302
5167
  * @returns `<Promise>` containing `<ArrayBuffer>`.
4303
5168
  * @since v15.0.0
4304
5169
  */
4305
5170
  exportKey(format: "jwk", key: CryptoKey): Promise<JsonWebKey>;
4306
5171
  exportKey(format: Exclude<KeyFormat, "jwk">, key: CryptoKey): Promise<ArrayBuffer>;
4307
5172
  /**
4308
- * Using the method and parameters provided in `algorithm`,
4309
- * `subtle.generateKey()` attempts to generate new keying material.
4310
- * Depending the method used, the method may generate either a single `<CryptoKey>` or a `<CryptoKeyPair>`.
5173
+ * Using the parameters provided in `algorithm`, this method
5174
+ * attempts to generate new keying material. Depending on the algorithm used
5175
+ * either a single `CryptoKey` or a `CryptoKeyPair` is generated.
4311
5176
  *
4312
- * The `<CryptoKeyPair>` (public and private key) generating algorithms supported include:
5177
+ * The `CryptoKeyPair` (public and private key) generating algorithms supported
5178
+ * include:
4313
5179
  *
4314
- * - `'RSASSA-PKCS1-v1_5'`
4315
- * - `'RSA-PSS'`
4316
- * - `'RSA-OAEP'`
4317
- * - `'ECDSA'`
4318
- * - `'Ed25519'`
4319
- * - `'Ed448'`
4320
- * - `'ECDH'`
4321
- * - `'X25519'`
4322
- * - `'X448'`
4323
- * The `<CryptoKey>` (secret key) generating algorithms supported include:
5180
+ * * `'ECDH'`
5181
+ * * `'ECDSA'`
5182
+ * * `'Ed25519'`
5183
+ * * `'Ed448'`
5184
+ * * `'ML-DSA-44'`
5185
+ * * `'ML-DSA-65'`
5186
+ * * `'ML-DSA-87'`
5187
+ * * `'ML-KEM-512'`
5188
+ * * `'ML-KEM-768'`
5189
+ * * `'ML-KEM-1024'`
5190
+ * * `'RSA-OAEP'`
5191
+ * * `'RSA-PSS'`
5192
+ * * `'RSASSA-PKCS1-v1_5'`
5193
+ * * `'X25519'`
5194
+ * * `'X448'`
4324
5195
  *
4325
- * - `'HMAC'`
4326
- * - `'AES-CTR'`
4327
- * - `'AES-CBC'`
4328
- * - `'AES-GCM'`
4329
- * - `'AES-KW'`
5196
+ * The `CryptoKey` (secret key) generating algorithms supported include:
5197
+ * * `'AES-CBC'`
5198
+ * * `'AES-CTR'`
5199
+ * * `'AES-GCM'`
5200
+ * * `'AES-KW'`
5201
+ * * `'AES-OCB'`
5202
+ * * `'ChaCha20-Poly1305'`
5203
+ * * `'HMAC'`
5204
+ * * `'KMAC128'`
5205
+ * * `'KMAC256'`
4330
5206
  * @param keyUsages See {@link https://nodejs.org/docs/latest/api/webcrypto.html#cryptokeyusages Key usages}.
4331
5207
  * @since v15.0.0
4332
5208
  */
@@ -4336,7 +5212,7 @@ declare module "crypto" {
4336
5212
  keyUsages: readonly KeyUsage[],
4337
5213
  ): Promise<CryptoKeyPair>;
4338
5214
  generateKey(
4339
- algorithm: AesKeyGenParams | HmacKeyGenParams | Pbkdf2Params,
5215
+ algorithm: AesKeyGenParams | HmacKeyGenParams | Pbkdf2Params | KmacKeyGenParams,
4340
5216
  extractable: boolean,
4341
5217
  keyUsages: readonly KeyUsage[],
4342
5218
  ): Promise<CryptoKey>;
@@ -4346,12 +5222,23 @@ declare module "crypto" {
4346
5222
  keyUsages: KeyUsage[],
4347
5223
  ): Promise<CryptoKeyPair | CryptoKey>;
4348
5224
  /**
4349
- * The `subtle.importKey()` method attempts to interpret the provided `keyData` as the given `format`
4350
- * to create a `<CryptoKey>` instance using the provided `algorithm`, `extractable`, and `keyUsages` arguments.
4351
- * If the import is successful, the returned promise will be resolved with the created `<CryptoKey>`.
5225
+ * Derives the public key from a given private key.
5226
+ * @since v24.7.0
5227
+ * @param key A private key from which to derive the corresponding public key.
5228
+ * @param keyUsages See [Key usages](https://nodejs.org/docs/latest-v24.x/api/webcrypto.html#cryptokeyusages).
5229
+ * @returns Fulfills with a `CryptoKey` upon success.
5230
+ */
5231
+ getPublicKey(key: CryptoKey, keyUsages: KeyUsage[]): Promise<CryptoKey>;
5232
+ /**
5233
+ * This method attempts to interpret the provided `keyData`
5234
+ * as the given `format` to create a `CryptoKey` instance using the provided
5235
+ * `algorithm`, `extractable`, and `keyUsages` arguments. If the import is
5236
+ * successful, the returned promise will be resolved with a {CryptoKey}
5237
+ * representation of the key material.
4352
5238
  *
4353
- * If importing a `'PBKDF2'` key, `extractable` must be `false`.
4354
- * @param format Must be one of `'raw'`, `'pkcs8'`, `'spki'`, or `'jwk'`.
5239
+ * If importing KDF algorithm keys, `extractable` must be `false`.
5240
+ * @param format Must be one of `'raw'`, `'pkcs8'`, `'spki'`, `'jwk'`, `'raw-secret'`,
5241
+ * `'raw-public'`, or `'raw-seed'`.
4355
5242
  * @param keyUsages See {@link https://nodejs.org/docs/latest/api/webcrypto.html#cryptokeyusages Key usages}.
4356
5243
  * @since v15.0.0
4357
5244
  */
@@ -4363,7 +5250,8 @@ declare module "crypto" {
4363
5250
  | RsaHashedImportParams
4364
5251
  | EcKeyImportParams
4365
5252
  | HmacImportParams
4366
- | AesKeyAlgorithm,
5253
+ | AesKeyAlgorithm
5254
+ | KmacImportParams,
4367
5255
  extractable: boolean,
4368
5256
  keyUsages: readonly KeyUsage[],
4369
5257
  ): Promise<CryptoKey>;
@@ -4375,62 +5263,81 @@ declare module "crypto" {
4375
5263
  | RsaHashedImportParams
4376
5264
  | EcKeyImportParams
4377
5265
  | HmacImportParams
4378
- | AesKeyAlgorithm,
5266
+ | AesKeyAlgorithm
5267
+ | KmacImportParams,
4379
5268
  extractable: boolean,
4380
5269
  keyUsages: KeyUsage[],
4381
5270
  ): Promise<CryptoKey>;
4382
5271
  /**
4383
5272
  * Using the method and parameters given by `algorithm` and the keying material provided by `key`,
4384
- * `subtle.sign()` attempts to generate a cryptographic signature of `data`. If successful,
5273
+ * this method attempts to generate a cryptographic signature of `data`. If successful,
4385
5274
  * the returned promise is resolved with an `<ArrayBuffer>` containing the generated signature.
4386
5275
  *
4387
5276
  * The algorithms currently supported include:
4388
5277
  *
4389
- * - `'RSASSA-PKCS1-v1_5'`
4390
- * - `'RSA-PSS'`
4391
- * - `'ECDSA'`
4392
- * - `'Ed25519'`
4393
- * - `'Ed448'`
4394
- * - `'HMAC'`
5278
+ * * `'ECDSA'`
5279
+ * * `'Ed25519'`
5280
+ * * `'Ed448'`
5281
+ * * `'HMAC'`
5282
+ * * `'KMAC128'`
5283
+ * * `'KMAC256'`
5284
+ * * `'ML-DSA-44'`
5285
+ * * `'ML-DSA-65'`
5286
+ * * `'ML-DSA-87'`
5287
+ * * `'RSA-PSS'`
5288
+ * * `'RSASSA-PKCS1-v1_5'`
4395
5289
  * @since v15.0.0
4396
5290
  */
4397
5291
  sign(
4398
- algorithm: AlgorithmIdentifier | RsaPssParams | EcdsaParams | Ed448Params,
5292
+ algorithm: AlgorithmIdentifier | RsaPssParams | EcdsaParams | ContextParams | KmacParams,
4399
5293
  key: CryptoKey,
4400
5294
  data: BufferSource,
4401
5295
  ): Promise<ArrayBuffer>;
4402
5296
  /**
4403
5297
  * In cryptography, "wrapping a key" refers to exporting and then encrypting the keying material.
4404
- * The `subtle.unwrapKey()` method attempts to decrypt a wrapped key and create a `<CryptoKey>` instance.
5298
+ * This method attempts to decrypt a wrapped key and create a `<CryptoKey>` instance.
4405
5299
  * It is equivalent to calling `subtle.decrypt()` first on the encrypted key data (using the `wrappedKey`, `unwrapAlgo`, and `unwrappingKey` arguments as input)
4406
5300
  * then passing the results in to the `subtle.importKey()` method using the `unwrappedKeyAlgo`, `extractable`, and `keyUsages` arguments as inputs.
4407
5301
  * If successful, the returned promise is resolved with a `<CryptoKey>` object.
4408
5302
  *
4409
5303
  * The wrapping algorithms currently supported include:
4410
5304
  *
4411
- * - `'RSA-OAEP'`
4412
- * - `'AES-CTR'`
4413
- * - `'AES-CBC'`
4414
- * - `'AES-GCM'`
4415
- * - `'AES-KW'`
5305
+ * * `'AES-CBC'`
5306
+ * * `'AES-CTR'`
5307
+ * * `'AES-GCM'`
5308
+ * * `'AES-KW'`
5309
+ * * `'AES-OCB'`
5310
+ * * `'ChaCha20-Poly1305'`
5311
+ * * `'RSA-OAEP'`
4416
5312
  *
4417
5313
  * The unwrapped key algorithms supported include:
4418
5314
  *
4419
- * - `'RSASSA-PKCS1-v1_5'`
4420
- * - `'RSA-PSS'`
4421
- * - `'RSA-OAEP'`
4422
- * - `'ECDSA'`
4423
- * - `'Ed25519'`
4424
- * - `'Ed448'`
4425
- * - `'ECDH'`
4426
- * - `'X25519'`
4427
- * - `'X448'`
4428
- * - `'HMAC'`
4429
- * - `'AES-CTR'`
4430
- * - `'AES-CBC'`
4431
- * - `'AES-GCM'`
4432
- * - `'AES-KW'`
4433
- * @param format Must be one of `'raw'`, `'pkcs8'`, `'spki'`, or `'jwk'`.
5315
+ * * `'AES-CBC'`
5316
+ * * `'AES-CTR'`
5317
+ * * `'AES-GCM'`
5318
+ * * `'AES-KW'`
5319
+ * * `'AES-OCB'`
5320
+ * * `'ChaCha20-Poly1305'`
5321
+ * * `'ECDH'`
5322
+ * * `'ECDSA'`
5323
+ * * `'Ed25519'`
5324
+ * * `'Ed448'`
5325
+ * * `'HMAC'`
5326
+ * * `'KMAC128'`
5327
+ * * `'KMAC256'`
5328
+ * * `'ML-DSA-44'`
5329
+ * * `'ML-DSA-65'`
5330
+ * * `'ML-DSA-87'`
5331
+ * * `'ML-KEM-512'`
5332
+ * * `'ML-KEM-768'`
5333
+ * * `'ML-KEM-1024'`
5334
+ * * `'RSA-OAEP'`
5335
+ * * `'RSA-PSS'`
5336
+ * * `'RSASSA-PKCS1-v1_5'`
5337
+ * * `'X25519'`
5338
+ * * `'X448'`
5339
+ * @param format Must be one of `'raw'`, `'pkcs8'`, `'spki'`, `'jwk'`, `'raw-secret'`,
5340
+ * `'raw-public'`, or `'raw-seed'`.
4434
5341
  * @param keyUsages See {@link https://nodejs.org/docs/latest/api/webcrypto.html#cryptokeyusages Key usages}.
4435
5342
  * @since v15.0.0
4436
5343
  */
@@ -4438,40 +5345,46 @@ declare module "crypto" {
4438
5345
  format: KeyFormat,
4439
5346
  wrappedKey: BufferSource,
4440
5347
  unwrappingKey: CryptoKey,
4441
- unwrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams,
5348
+ unwrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AeadParams,
4442
5349
  unwrappedKeyAlgorithm:
4443
5350
  | AlgorithmIdentifier
4444
5351
  | RsaHashedImportParams
4445
5352
  | EcKeyImportParams
4446
5353
  | HmacImportParams
4447
- | AesKeyAlgorithm,
5354
+ | AesKeyAlgorithm
5355
+ | KmacImportParams,
4448
5356
  extractable: boolean,
4449
5357
  keyUsages: KeyUsage[],
4450
5358
  ): Promise<CryptoKey>;
4451
5359
  /**
4452
5360
  * Using the method and parameters given in `algorithm` and the keying material provided by `key`,
4453
- * `subtle.verify()` attempts to verify that `signature` is a valid cryptographic signature of `data`.
5361
+ * This method attempts to verify that `signature` is a valid cryptographic signature of `data`.
4454
5362
  * The returned promise is resolved with either `true` or `false`.
4455
5363
  *
4456
5364
  * The algorithms currently supported include:
4457
5365
  *
4458
- * - `'RSASSA-PKCS1-v1_5'`
4459
- * - `'RSA-PSS'`
4460
- * - `'ECDSA'`
4461
- * - `'Ed25519'`
4462
- * - `'Ed448'`
4463
- * - `'HMAC'`
5366
+ * * `'ECDSA'`
5367
+ * * `'Ed25519'`
5368
+ * * `'Ed448'`
5369
+ * * `'HMAC'`
5370
+ * * `'KMAC128'`
5371
+ * * `'KMAC256'`
5372
+ * * `'ML-DSA-44'`
5373
+ * * `'ML-DSA-65'`
5374
+ * * `'ML-DSA-87'`
5375
+ * * `'RSA-PSS'`
5376
+ * * `'RSASSA-PKCS1-v1_5'`
4464
5377
  * @since v15.0.0
4465
5378
  */
4466
5379
  verify(
4467
- algorithm: AlgorithmIdentifier | RsaPssParams | EcdsaParams | Ed448Params,
5380
+ algorithm: AlgorithmIdentifier | RsaPssParams | EcdsaParams | ContextParams | KmacParams,
4468
5381
  key: CryptoKey,
4469
5382
  signature: BufferSource,
4470
5383
  data: BufferSource,
4471
5384
  ): Promise<boolean>;
4472
5385
  /**
4473
5386
  * In cryptography, "wrapping a key" refers to exporting and then encrypting the keying material.
4474
- * The `subtle.wrapKey()` method exports the keying material into the format identified by `format`,
5387
+ * This method exports the keying material into the format identified by `format`,
4475
5388
  * then encrypts it using the method and parameters specified by `wrapAlgo` and the keying material provided by `wrappingKey`.
4476
5389
  * It is the equivalent to calling `subtle.exportKey()` using `format` and `key` as the arguments,
4477
5390
  * then passing the result to the `subtle.encrypt()` method using `wrappingKey` and `wrapAlgo` as inputs.
@@ -4479,30 +5392,25 @@ declare module "crypto" {
4479
5392
  *
4480
5393
  * The wrapping algorithms currently supported include:
4481
5394
  *
4482
- * - `'RSA-OAEP'`
4483
- * - `'AES-CTR'`
4484
- * - `'AES-CBC'`
4485
- * - `'AES-GCM'`
4486
- * - `'AES-KW'`
4487
- * @param format Must be one of `'raw'`, `'pkcs8'`, `'spki'`, or `'jwk'`.
5395
+ * * `'AES-CBC'`
5396
+ * * `'AES-CTR'`
5397
+ * * `'AES-GCM'`
5398
+ * * `'AES-KW'`
5399
+ * * `'AES-OCB'`
5400
+ * * `'ChaCha20-Poly1305'`
5401
+ * * `'RSA-OAEP'`
5402
+ * @param format Must be one of `'raw'`, `'pkcs8'`, `'spki'`, `'jwk'`, `'raw-secret'`,
5403
+ * `'raw-public'`, or `'raw-seed'`.
4488
5404
  * @since v15.0.0
4489
5405
  */
4490
5406
  wrapKey(
4491
5407
  format: KeyFormat,
4492
5408
  key: CryptoKey,
4493
5409
  wrappingKey: CryptoKey,
4494
- wrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AesGcmParams,
5410
+ wrapAlgorithm: AlgorithmIdentifier | RsaOaepParams | AesCtrParams | AesCbcParams | AeadParams,
4495
5411
  ): Promise<ArrayBuffer>;
4496
5412
  }
4497
5413
  }
4498
-
4499
- global {
4500
- var crypto: typeof globalThis extends {
4501
- crypto: infer T;
4502
- onmessage: any;
4503
- } ? T
4504
- : webcrypto.Crypto;
4505
- }
4506
5414
  }
4507
5415
  declare module "node:crypto" {
4508
5416
  export * from "crypto";