effect 4.0.7 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (679) hide show
  1. package/README.md +1 -1
  2. package/dist/BigDecimal.d.ts.map +1 -1
  3. package/dist/BigDecimal.js +3 -0
  4. package/dist/BigDecimal.js.map +1 -1
  5. package/dist/Channel.d.ts +12 -6
  6. package/dist/Channel.d.ts.map +1 -1
  7. package/dist/Channel.js +9 -3
  8. package/dist/Channel.js.map +1 -1
  9. package/dist/Config.d.ts +7 -1
  10. package/dist/Config.d.ts.map +1 -1
  11. package/dist/Config.js.map +1 -1
  12. package/dist/Context.d.ts +18 -1
  13. package/dist/Context.d.ts.map +1 -1
  14. package/dist/Context.js +27 -8
  15. package/dist/Context.js.map +1 -1
  16. package/dist/Cron.d.ts +81 -11
  17. package/dist/Cron.d.ts.map +1 -1
  18. package/dist/Cron.js +101 -26
  19. package/dist/Cron.js.map +1 -1
  20. package/dist/Duration.d.ts +78 -0
  21. package/dist/Duration.d.ts.map +1 -1
  22. package/dist/Duration.js +123 -0
  23. package/dist/Duration.js.map +1 -1
  24. package/dist/Effect.d.ts +164 -7
  25. package/dist/Effect.d.ts.map +1 -1
  26. package/dist/Effect.js +11 -1
  27. package/dist/Effect.js.map +1 -1
  28. package/dist/FileSystem.d.ts +59 -4
  29. package/dist/FileSystem.d.ts.map +1 -1
  30. package/dist/FileSystem.js +9 -2
  31. package/dist/FileSystem.js.map +1 -1
  32. package/dist/Glob.d.ts +165 -0
  33. package/dist/Glob.d.ts.map +1 -0
  34. package/dist/Glob.js +127 -0
  35. package/dist/Glob.js.map +1 -0
  36. package/dist/Match.d.ts +86 -0
  37. package/dist/Match.d.ts.map +1 -1
  38. package/dist/Match.js +72 -0
  39. package/dist/Match.js.map +1 -1
  40. package/dist/Pool.d.ts +51 -0
  41. package/dist/Pool.d.ts.map +1 -1
  42. package/dist/Pool.js +59 -9
  43. package/dist/Pool.js.map +1 -1
  44. package/dist/Random.d.ts.map +1 -1
  45. package/dist/Random.js +3 -3
  46. package/dist/Random.js.map +1 -1
  47. package/dist/RcMap.d.ts.map +1 -1
  48. package/dist/RcMap.js +8 -2
  49. package/dist/RcMap.js.map +1 -1
  50. package/dist/Schedule.d.ts +18 -1
  51. package/dist/Schedule.d.ts.map +1 -1
  52. package/dist/Schedule.js +7 -2
  53. package/dist/Schedule.js.map +1 -1
  54. package/dist/Schema.d.ts +666 -41
  55. package/dist/Schema.d.ts.map +1 -1
  56. package/dist/Schema.js +650 -0
  57. package/dist/Schema.js.map +1 -1
  58. package/dist/SchemaGetter.d.ts +6 -1
  59. package/dist/SchemaGetter.d.ts.map +1 -1
  60. package/dist/SchemaGetter.js +22 -11
  61. package/dist/SchemaGetter.js.map +1 -1
  62. package/dist/SchemaRepresentation.d.ts +14 -0
  63. package/dist/SchemaRepresentation.d.ts.map +1 -1
  64. package/dist/SchemaRepresentation.js +16 -0
  65. package/dist/SchemaRepresentation.js.map +1 -1
  66. package/dist/SchemaTransformation.d.ts +8 -3
  67. package/dist/SchemaTransformation.d.ts.map +1 -1
  68. package/dist/SchemaTransformation.js +6 -3
  69. package/dist/SchemaTransformation.js.map +1 -1
  70. package/dist/ScopedCache.d.ts.map +1 -1
  71. package/dist/ScopedCache.js +5 -7
  72. package/dist/ScopedCache.js.map +1 -1
  73. package/dist/Semaphore.d.ts +130 -0
  74. package/dist/Semaphore.d.ts.map +1 -1
  75. package/dist/Semaphore.js +40 -0
  76. package/dist/Semaphore.js.map +1 -1
  77. package/dist/Stream.d.ts +13 -4
  78. package/dist/Stream.d.ts.map +1 -1
  79. package/dist/Stream.js +9 -0
  80. package/dist/Stream.js.map +1 -1
  81. package/dist/Terminal.d.ts +18 -1
  82. package/dist/Terminal.d.ts.map +1 -1
  83. package/dist/Terminal.js +1 -1
  84. package/dist/Terminal.js.map +1 -1
  85. package/dist/ai/AiError.d.ts +43 -116
  86. package/dist/ai/AiError.d.ts.map +1 -1
  87. package/dist/ai/AiError.js +53 -72
  88. package/dist/ai/AiError.js.map +1 -1
  89. package/dist/ai/Decision.d.ts +196 -15
  90. package/dist/ai/Decision.d.ts.map +1 -1
  91. package/dist/ai/Decision.js +130 -0
  92. package/dist/ai/Decision.js.map +1 -1
  93. package/dist/ai/DecisionModel.d.ts +54 -13
  94. package/dist/ai/DecisionModel.d.ts.map +1 -1
  95. package/dist/ai/DecisionModel.js +123 -12
  96. package/dist/ai/DecisionModel.js.map +1 -1
  97. package/dist/ai/McpServer.d.ts +630 -29
  98. package/dist/ai/McpServer.d.ts.map +1 -1
  99. package/dist/ai/McpServer.js +562 -116
  100. package/dist/ai/McpServer.js.map +1 -1
  101. package/dist/ai/McpTest.d.ts +130 -0
  102. package/dist/ai/McpTest.d.ts.map +1 -0
  103. package/dist/ai/McpTest.js +237 -0
  104. package/dist/ai/McpTest.js.map +1 -0
  105. package/dist/ai/Response.d.ts +1 -25
  106. package/dist/ai/Response.d.ts.map +1 -1
  107. package/dist/ai/Response.js +1 -10
  108. package/dist/ai/Response.js.map +1 -1
  109. package/dist/ai/Tool.d.ts +19 -1
  110. package/dist/ai/Tool.d.ts.map +1 -1
  111. package/dist/ai/Tool.js.map +1 -1
  112. package/dist/ai/index.d.ts +5 -0
  113. package/dist/ai/index.d.ts.map +1 -1
  114. package/dist/ai/index.js +5 -0
  115. package/dist/ai/index.js.map +1 -1
  116. package/dist/ai/internal/mcpCore.js +17 -12
  117. package/dist/ai/internal/mcpCore.js.map +1 -1
  118. package/dist/ai/internal/mcpProtocol/v2024_11_05.js +4 -5
  119. package/dist/ai/internal/mcpProtocol/v2024_11_05.js.map +1 -1
  120. package/dist/ai/internal/mcpProtocol/v2025_03_26.js +4 -5
  121. package/dist/ai/internal/mcpProtocol/v2025_03_26.js.map +1 -1
  122. package/dist/ai/internal/mcpProtocol/v2025_06_18.js +4 -5
  123. package/dist/ai/internal/mcpProtocol/v2025_06_18.js.map +1 -1
  124. package/dist/ai/internal/mcpProtocol/v2025_11_25.js +4 -5
  125. package/dist/ai/internal/mcpProtocol/v2025_11_25.js.map +1 -1
  126. package/dist/ai/internal/mcpProtocol/v2026_07_28.js +18 -10
  127. package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
  128. package/dist/ai/internal/mcpProtocol.js +13 -0
  129. package/dist/ai/internal/mcpProtocol.js.map +1 -1
  130. package/dist/ai/internal/mcpRuntime.js +5 -3
  131. package/dist/ai/internal/mcpRuntime.js.map +1 -1
  132. package/dist/ai/internal/mcpStatefulRuntime.js +6 -1
  133. package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
  134. package/dist/cli/Argument.d.ts +6 -0
  135. package/dist/cli/Argument.d.ts.map +1 -1
  136. package/dist/cli/Argument.js +2 -0
  137. package/dist/cli/Argument.js.map +1 -1
  138. package/dist/cli/CliOutput.d.ts +65 -1
  139. package/dist/cli/CliOutput.d.ts.map +1 -1
  140. package/dist/cli/CliOutput.js +94 -37
  141. package/dist/cli/CliOutput.js.map +1 -1
  142. package/dist/cli/Command.d.ts +23 -0
  143. package/dist/cli/Command.d.ts.map +1 -1
  144. package/dist/cli/Command.js +8 -0
  145. package/dist/cli/Command.js.map +1 -1
  146. package/dist/cli/Flag.d.ts +107 -0
  147. package/dist/cli/Flag.d.ts.map +1 -1
  148. package/dist/cli/Flag.js +37 -0
  149. package/dist/cli/Flag.js.map +1 -1
  150. package/dist/cli/HelpDoc.d.ts +15 -1
  151. package/dist/cli/HelpDoc.d.ts.map +1 -1
  152. package/dist/cli/Param.d.ts +6 -0
  153. package/dist/cli/Param.d.ts.map +1 -1
  154. package/dist/cli/Param.js +2 -0
  155. package/dist/cli/Param.js.map +1 -1
  156. package/dist/cli/Primitive.d.ts +14 -0
  157. package/dist/cli/Primitive.d.ts.map +1 -1
  158. package/dist/cli/Primitive.js +15 -1
  159. package/dist/cli/Primitive.js.map +1 -1
  160. package/dist/cli/Prompt.d.ts +1 -0
  161. package/dist/cli/Prompt.d.ts.map +1 -1
  162. package/dist/cli/Prompt.js +1 -0
  163. package/dist/cli/Prompt.js.map +1 -1
  164. package/dist/cli/internal/help.d.ts.map +1 -1
  165. package/dist/cli/internal/help.js +17 -10
  166. package/dist/cli/internal/help.js.map +1 -1
  167. package/dist/cluster/Sharding.d.ts.map +1 -1
  168. package/dist/cluster/Sharding.js +90 -28
  169. package/dist/cluster/Sharding.js.map +1 -1
  170. package/dist/cluster/ShardingConfig.d.ts +72 -6
  171. package/dist/cluster/ShardingConfig.d.ts.map +1 -1
  172. package/dist/cluster/ShardingConfig.js +4 -0
  173. package/dist/cluster/ShardingConfig.js.map +1 -1
  174. package/dist/cluster/SingleRunner.d.ts +3 -3
  175. package/dist/cluster/SingleRunner.d.ts.map +1 -1
  176. package/dist/cluster/SingleRunner.js +1 -1
  177. package/dist/cluster/SqlMessageStorage.d.ts +37 -6
  178. package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
  179. package/dist/cluster/SqlMessageStorage.js +34 -7
  180. package/dist/cluster/SqlMessageStorage.js.map +1 -1
  181. package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
  182. package/dist/cluster/SqlRunnerStorage.js +23 -8
  183. package/dist/cluster/SqlRunnerStorage.js.map +1 -1
  184. package/dist/crypto/Aead.d.ts +322 -0
  185. package/dist/crypto/Aead.d.ts.map +1 -0
  186. package/dist/crypto/Aead.js +331 -0
  187. package/dist/crypto/Aead.js.map +1 -0
  188. package/dist/crypto/Cipher.d.ts +235 -0
  189. package/dist/crypto/Cipher.d.ts.map +1 -0
  190. package/dist/crypto/Cipher.js +233 -0
  191. package/dist/crypto/Cipher.js.map +1 -0
  192. package/dist/crypto/CryptoError.d.ts +212 -0
  193. package/dist/crypto/CryptoError.d.ts.map +1 -0
  194. package/dist/crypto/CryptoError.js +202 -0
  195. package/dist/crypto/CryptoError.js.map +1 -0
  196. package/dist/crypto/Digest.d.ts +143 -0
  197. package/dist/crypto/Digest.d.ts.map +1 -0
  198. package/dist/crypto/Digest.js +146 -0
  199. package/dist/crypto/Digest.js.map +1 -0
  200. package/dist/crypto/Kdf.d.ts +220 -0
  201. package/dist/crypto/Kdf.d.ts.map +1 -0
  202. package/dist/crypto/Kdf.js +212 -0
  203. package/dist/crypto/Kdf.js.map +1 -0
  204. package/dist/crypto/KeyAgreement.d.ts +323 -0
  205. package/dist/crypto/KeyAgreement.d.ts.map +1 -0
  206. package/dist/crypto/KeyAgreement.js +303 -0
  207. package/dist/crypto/KeyAgreement.js.map +1 -0
  208. package/dist/crypto/KeyFormat.d.ts +309 -0
  209. package/dist/crypto/KeyFormat.d.ts.map +1 -0
  210. package/dist/crypto/KeyFormat.js +556 -0
  211. package/dist/crypto/KeyFormat.js.map +1 -0
  212. package/dist/crypto/KeyWrap.d.ts +389 -0
  213. package/dist/crypto/KeyWrap.d.ts.map +1 -0
  214. package/dist/crypto/KeyWrap.js +381 -0
  215. package/dist/crypto/KeyWrap.js.map +1 -0
  216. package/dist/crypto/Mac.d.ts +277 -0
  217. package/dist/crypto/Mac.d.ts.map +1 -0
  218. package/dist/crypto/Mac.js +288 -0
  219. package/dist/crypto/Mac.js.map +1 -0
  220. package/dist/crypto/SecureRandom.d.ts +340 -0
  221. package/dist/crypto/SecureRandom.d.ts.map +1 -0
  222. package/dist/crypto/SecureRandom.js +257 -0
  223. package/dist/crypto/SecureRandom.js.map +1 -0
  224. package/dist/crypto/Signature.d.ts +448 -0
  225. package/dist/crypto/Signature.d.ts.map +1 -0
  226. package/dist/crypto/Signature.js +484 -0
  227. package/dist/crypto/Signature.js.map +1 -0
  228. package/dist/crypto/WebCrypto.d.ts +61 -0
  229. package/dist/crypto/WebCrypto.d.ts.map +1 -0
  230. package/dist/crypto/WebCrypto.js +63 -0
  231. package/dist/crypto/WebCrypto.js.map +1 -0
  232. package/dist/crypto/index.d.ts +65 -0
  233. package/dist/crypto/index.d.ts.map +1 -0
  234. package/dist/crypto/index.js +66 -0
  235. package/dist/crypto/index.js.map +1 -0
  236. package/dist/crypto/internal/asymmetric.d.ts +2 -0
  237. package/dist/crypto/internal/asymmetric.d.ts.map +1 -0
  238. package/dist/crypto/internal/asymmetric.js +210 -0
  239. package/dist/crypto/internal/asymmetric.js.map +1 -0
  240. package/dist/crypto/internal/chacha.d.ts +46 -0
  241. package/dist/crypto/internal/chacha.d.ts.map +1 -0
  242. package/dist/crypto/internal/chacha.js +885 -0
  243. package/dist/crypto/internal/chacha.js.map +1 -0
  244. package/dist/crypto/internal/der.d.ts +6 -0
  245. package/dist/crypto/internal/der.d.ts.map +1 -0
  246. package/dist/crypto/internal/der.js +86 -0
  247. package/dist/crypto/internal/der.js.map +1 -0
  248. package/dist/crypto/internal/digest.d.ts +2 -0
  249. package/dist/crypto/internal/digest.d.ts.map +1 -0
  250. package/dist/crypto/internal/digest.js +15 -0
  251. package/dist/crypto/internal/digest.js.map +1 -0
  252. package/dist/crypto/internal/key.d.ts +2 -0
  253. package/dist/crypto/internal/key.d.ts.map +1 -0
  254. package/dist/crypto/internal/key.js +170 -0
  255. package/dist/crypto/internal/key.js.map +1 -0
  256. package/dist/crypto/internal/md5.d.ts +39 -0
  257. package/dist/crypto/internal/md5.d.ts.map +1 -0
  258. package/dist/crypto/internal/md5.js +179 -0
  259. package/dist/crypto/internal/md5.js.map +1 -0
  260. package/dist/crypto/internal/webCrypto.d.ts +2 -0
  261. package/dist/crypto/internal/webCrypto.d.ts.map +1 -0
  262. package/dist/crypto/internal/webCrypto.js +111 -0
  263. package/dist/crypto/internal/webCrypto.js.map +1 -0
  264. package/dist/encoding/Base64Url.d.ts.map +1 -1
  265. package/dist/encoding/Base64Url.js +3 -2
  266. package/dist/encoding/Base64Url.js.map +1 -1
  267. package/dist/encoding/Csv.d.ts +608 -0
  268. package/dist/encoding/Csv.d.ts.map +1 -0
  269. package/dist/encoding/Csv.js +718 -0
  270. package/dist/encoding/Csv.js.map +1 -0
  271. package/dist/encoding/Hex.d.ts +3 -2
  272. package/dist/encoding/Hex.d.ts.map +1 -1
  273. package/dist/encoding/Hex.js +3 -2
  274. package/dist/encoding/Hex.js.map +1 -1
  275. package/dist/encoding/SchemaBinary.d.ts.map +1 -1
  276. package/dist/encoding/SchemaBinary.js +42 -4
  277. package/dist/encoding/SchemaBinary.js.map +1 -1
  278. package/dist/encoding/Toml.d.ts +17 -3
  279. package/dist/encoding/Toml.d.ts.map +1 -1
  280. package/dist/encoding/Toml.js +104 -16
  281. package/dist/encoding/Toml.js.map +1 -1
  282. package/dist/encoding/Yaml.d.ts +8 -1
  283. package/dist/encoding/Yaml.d.ts.map +1 -1
  284. package/dist/encoding/Yaml.js +54 -18
  285. package/dist/encoding/Yaml.js.map +1 -1
  286. package/dist/encoding/index.d.ts +5 -0
  287. package/dist/encoding/index.d.ts.map +1 -1
  288. package/dist/encoding/index.js +5 -0
  289. package/dist/encoding/index.js.map +1 -1
  290. package/dist/eventlog/EventJournal.d.ts.map +1 -1
  291. package/dist/eventlog/EventJournal.js +6 -3
  292. package/dist/eventlog/EventJournal.js.map +1 -1
  293. package/dist/eventlog/EventLog.d.ts +119 -4
  294. package/dist/eventlog/EventLog.d.ts.map +1 -1
  295. package/dist/eventlog/EventLog.js +200 -12
  296. package/dist/eventlog/EventLog.js.map +1 -1
  297. package/dist/eventlog/EventLogEncryption.d.ts +41 -4
  298. package/dist/eventlog/EventLogEncryption.d.ts.map +1 -1
  299. package/dist/eventlog/EventLogEncryption.js +83 -64
  300. package/dist/eventlog/EventLogEncryption.js.map +1 -1
  301. package/dist/eventlog/EventLogMessage.d.ts +279 -0
  302. package/dist/eventlog/EventLogMessage.d.ts.map +1 -1
  303. package/dist/eventlog/EventLogMessage.js +217 -1
  304. package/dist/eventlog/EventLogMessage.js.map +1 -1
  305. package/dist/eventlog/EventLogRemote.d.ts +200 -28
  306. package/dist/eventlog/EventLogRemote.d.ts.map +1 -1
  307. package/dist/eventlog/EventLogRemote.js +186 -16
  308. package/dist/eventlog/EventLogRemote.js.map +1 -1
  309. package/dist/eventlog/EventLogServer.d.ts +3 -0
  310. package/dist/eventlog/EventLogServer.d.ts.map +1 -1
  311. package/dist/eventlog/EventLogServer.js +18 -10
  312. package/dist/eventlog/EventLogServer.js.map +1 -1
  313. package/dist/eventlog/EventLogServerEncrypted.d.ts +326 -5
  314. package/dist/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  315. package/dist/eventlog/EventLogServerEncrypted.js +769 -14
  316. package/dist/eventlog/EventLogServerEncrypted.js.map +1 -1
  317. package/dist/eventlog/EventLogSessionAuth.d.ts +5 -3
  318. package/dist/eventlog/EventLogSessionAuth.d.ts.map +1 -1
  319. package/dist/eventlog/EventLogSessionAuth.js +41 -64
  320. package/dist/eventlog/EventLogSessionAuth.js.map +1 -1
  321. package/dist/eventlog/EventRow.d.ts +4 -0
  322. package/dist/eventlog/EventRow.d.ts.map +1 -1
  323. package/dist/eventlog/EventRow.js +12 -2
  324. package/dist/eventlog/EventRow.js.map +1 -1
  325. package/dist/eventlog/SqlEventJournal.js +2 -2
  326. package/dist/eventlog/SqlEventJournal.js.map +1 -1
  327. package/dist/eventlog/SqlEventLogServerEncrypted.d.ts +21 -5
  328. package/dist/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
  329. package/dist/eventlog/SqlEventLogServerEncrypted.js +1048 -113
  330. package/dist/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  331. package/dist/eventlog/SqlEventLogServerUnencrypted.js +2 -2
  332. package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  333. package/dist/eventlog/internal/batches.d.ts +12 -0
  334. package/dist/eventlog/internal/batches.d.ts.map +1 -0
  335. package/dist/eventlog/internal/batches.js +26 -0
  336. package/dist/eventlog/internal/batches.js.map +1 -0
  337. package/dist/eventlog/internal/compaction.d.ts +38 -0
  338. package/dist/eventlog/internal/compaction.d.ts.map +1 -0
  339. package/dist/eventlog/internal/compaction.js +33 -0
  340. package/dist/eventlog/internal/compaction.js.map +1 -0
  341. package/dist/eventlog/internal/identityRootSecretDerivation.js +66 -67
  342. package/dist/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
  343. package/dist/eventlog/internal/remoteCompaction.d.ts +31 -0
  344. package/dist/eventlog/internal/remoteCompaction.d.ts.map +1 -0
  345. package/dist/eventlog/internal/remoteCompaction.js +76 -0
  346. package/dist/eventlog/internal/remoteCompaction.js.map +1 -0
  347. package/dist/http/Cookies.d.ts +172 -0
  348. package/dist/http/Cookies.d.ts.map +1 -1
  349. package/dist/http/Cookies.js +143 -1
  350. package/dist/http/Cookies.js.map +1 -1
  351. package/dist/http/FetchHttpClient.d.ts +26 -2
  352. package/dist/http/FetchHttpClient.d.ts.map +1 -1
  353. package/dist/http/FetchHttpClient.js +78 -15
  354. package/dist/http/FetchHttpClient.js.map +1 -1
  355. package/dist/http/HttpClient.d.ts +79 -8
  356. package/dist/http/HttpClient.d.ts.map +1 -1
  357. package/dist/http/HttpClient.js +65 -5
  358. package/dist/http/HttpClient.js.map +1 -1
  359. package/dist/http/HttpClientRequest.d.ts +9 -5
  360. package/dist/http/HttpClientRequest.d.ts.map +1 -1
  361. package/dist/http/HttpClientRequest.js +2 -3
  362. package/dist/http/HttpClientRequest.js.map +1 -1
  363. package/dist/http/HttpClientResponse.d.ts.map +1 -1
  364. package/dist/http/HttpClientResponse.js +3 -2
  365. package/dist/http/HttpClientResponse.js.map +1 -1
  366. package/dist/http/HttpMethod.d.ts +7 -1
  367. package/dist/http/HttpMethod.d.ts.map +1 -1
  368. package/dist/http/HttpMethod.js +3 -8
  369. package/dist/http/HttpMethod.js.map +1 -1
  370. package/dist/http/HttpServerRequest.d.ts +5 -2
  371. package/dist/http/HttpServerRequest.d.ts.map +1 -1
  372. package/dist/http/HttpServerRequest.js +6 -17
  373. package/dist/http/HttpServerRequest.js.map +1 -1
  374. package/dist/http/HttpServerResponse.d.ts.map +1 -1
  375. package/dist/http/HttpServerResponse.js +3 -2
  376. package/dist/http/HttpServerResponse.js.map +1 -1
  377. package/dist/http/HttpTraceContext.d.ts +2 -1
  378. package/dist/http/HttpTraceContext.d.ts.map +1 -1
  379. package/dist/http/HttpTraceContext.js +7 -5
  380. package/dist/http/HttpTraceContext.js.map +1 -1
  381. package/dist/http/ProblemDetails.d.ts +96 -0
  382. package/dist/http/ProblemDetails.d.ts.map +1 -0
  383. package/dist/http/ProblemDetails.js +98 -0
  384. package/dist/http/ProblemDetails.js.map +1 -0
  385. package/dist/http/index.d.ts +5 -0
  386. package/dist/http/index.d.ts.map +1 -1
  387. package/dist/http/index.js +5 -0
  388. package/dist/http/index.js.map +1 -1
  389. package/dist/http/internal/decompression.js +3 -2
  390. package/dist/http/internal/decompression.js.map +1 -1
  391. package/dist/http/internal/urlParams.js +8 -0
  392. package/dist/http/internal/urlParams.js.map +1 -1
  393. package/dist/http-api/HttpApiBuilder.js +19 -5
  394. package/dist/http-api/HttpApiBuilder.js.map +1 -1
  395. package/dist/http-api/HttpApiClient.d.ts +63 -0
  396. package/dist/http-api/HttpApiClient.d.ts.map +1 -1
  397. package/dist/http-api/HttpApiClient.js +51 -0
  398. package/dist/http-api/HttpApiClient.js.map +1 -1
  399. package/dist/http-api/HttpApiEndpoint.d.ts.map +1 -1
  400. package/dist/http-api/HttpApiEndpoint.js +14 -5
  401. package/dist/http-api/HttpApiEndpoint.js.map +1 -1
  402. package/dist/http-api/HttpApiError.d.ts +185 -13
  403. package/dist/http-api/HttpApiError.d.ts.map +1 -1
  404. package/dist/http-api/HttpApiError.js +128 -0
  405. package/dist/http-api/HttpApiError.js.map +1 -1
  406. package/dist/http-api/HttpApiMiddleware.d.ts +64 -17
  407. package/dist/http-api/HttpApiMiddleware.d.ts.map +1 -1
  408. package/dist/http-api/HttpApiMiddleware.js +85 -1
  409. package/dist/http-api/HttpApiMiddleware.js.map +1 -1
  410. package/dist/http-api/HttpApiSchema.d.ts +76 -14
  411. package/dist/http-api/HttpApiSchema.d.ts.map +1 -1
  412. package/dist/http-api/HttpApiSchema.js +53 -0
  413. package/dist/http-api/HttpApiSchema.js.map +1 -1
  414. package/dist/index.d.ts +5 -5
  415. package/dist/index.d.ts.map +1 -1
  416. package/dist/index.js +5 -5
  417. package/dist/index.js.map +1 -1
  418. package/dist/internal/effect.js +25 -14
  419. package/dist/internal/effect.js.map +1 -1
  420. package/dist/internal/glob.d.ts +2 -0
  421. package/dist/internal/glob.d.ts.map +1 -0
  422. package/dist/internal/glob.js +630 -0
  423. package/dist/internal/glob.js.map +1 -0
  424. package/dist/internal/matcher.js +10 -0
  425. package/dist/internal/matcher.js.map +1 -1
  426. package/dist/internal/persistence.js +9 -0
  427. package/dist/internal/persistence.js.map +1 -1
  428. package/dist/internal/rcRef.js +4 -1
  429. package/dist/internal/rcRef.js.map +1 -1
  430. package/dist/internal/schema/toCodeDocument.js +6 -3
  431. package/dist/internal/schema/toCodeDocument.js.map +1 -1
  432. package/dist/internal/trie.js +42 -13
  433. package/dist/internal/trie.js.map +1 -1
  434. package/dist/internal/ulid.js +41 -0
  435. package/dist/internal/ulid.js.map +1 -1
  436. package/dist/internal/uuid.js +52 -8
  437. package/dist/internal/uuid.js.map +1 -1
  438. package/dist/internal/version.js +1 -1
  439. package/dist/observability/Otlp.d.ts +15 -4
  440. package/dist/observability/Otlp.d.ts.map +1 -1
  441. package/dist/observability/Otlp.js +10 -0
  442. package/dist/observability/Otlp.js.map +1 -1
  443. package/dist/observability/OtlpResource.d.ts +7 -0
  444. package/dist/observability/OtlpResource.d.ts.map +1 -1
  445. package/dist/observability/OtlpResource.js +11 -1
  446. package/dist/observability/OtlpResource.js.map +1 -1
  447. package/dist/persistence/KeyValueStore.d.ts +47 -2
  448. package/dist/persistence/KeyValueStore.d.ts.map +1 -1
  449. package/dist/persistence/KeyValueStore.js +129 -18
  450. package/dist/persistence/KeyValueStore.js.map +1 -1
  451. package/dist/persistence/PersistedQueue.d.ts +9 -0
  452. package/dist/persistence/PersistedQueue.d.ts.map +1 -1
  453. package/dist/persistence/PersistedQueue.js +94 -52
  454. package/dist/persistence/PersistedQueue.js.map +1 -1
  455. package/dist/persistence/Persistence.d.ts +10 -4
  456. package/dist/persistence/Persistence.d.ts.map +1 -1
  457. package/dist/persistence/Persistence.js +18 -11
  458. package/dist/persistence/Persistence.js.map +1 -1
  459. package/dist/process/ChildProcess.d.ts +207 -67
  460. package/dist/process/ChildProcess.d.ts.map +1 -1
  461. package/dist/process/ChildProcess.js +56 -158
  462. package/dist/process/ChildProcess.js.map +1 -1
  463. package/dist/process/ChildProcessSpawner.d.ts +5 -0
  464. package/dist/process/ChildProcessSpawner.d.ts.map +1 -1
  465. package/dist/process/ChildProcessSpawner.js.map +1 -1
  466. package/dist/process/CommandLine.d.ts +294 -0
  467. package/dist/process/CommandLine.d.ts.map +1 -0
  468. package/dist/process/CommandLine.js +481 -0
  469. package/dist/process/CommandLine.js.map +1 -0
  470. package/dist/process/index.d.ts +5 -0
  471. package/dist/process/index.d.ts.map +1 -1
  472. package/dist/process/index.js +5 -0
  473. package/dist/process/index.js.map +1 -1
  474. package/dist/reactivity/Atom.d.ts +2 -1
  475. package/dist/reactivity/Atom.d.ts.map +1 -1
  476. package/dist/reactivity/Atom.js +3 -4
  477. package/dist/reactivity/Atom.js.map +1 -1
  478. package/dist/reactivity/AtomRegistry.js.map +1 -1
  479. package/dist/rpc/RpcClient.d.ts +16 -1
  480. package/dist/rpc/RpcClient.d.ts.map +1 -1
  481. package/dist/rpc/RpcClient.js +50 -16
  482. package/dist/rpc/RpcClient.js.map +1 -1
  483. package/dist/rpc/RpcMessage.d.ts +10 -1
  484. package/dist/rpc/RpcMessage.d.ts.map +1 -1
  485. package/dist/rpc/RpcMessage.js +1 -0
  486. package/dist/rpc/RpcMessage.js.map +1 -1
  487. package/dist/rpc/RpcSerialization.d.ts.map +1 -1
  488. package/dist/rpc/RpcSerialization.js +6 -0
  489. package/dist/rpc/RpcSerialization.js.map +1 -1
  490. package/dist/rpc/RpcServer.d.ts +31 -0
  491. package/dist/rpc/RpcServer.d.ts.map +1 -1
  492. package/dist/rpc/RpcServer.js +139 -66
  493. package/dist/rpc/RpcServer.js.map +1 -1
  494. package/dist/schema/Model.d.ts +14 -0
  495. package/dist/schema/Model.d.ts.map +1 -1
  496. package/dist/schema/Model.js +18 -3
  497. package/dist/schema/Model.js.map +1 -1
  498. package/dist/sql/Migrator.d.ts +0 -19
  499. package/dist/sql/Migrator.d.ts.map +1 -1
  500. package/dist/sql/Migrator.js +3 -48
  501. package/dist/sql/Migrator.js.map +1 -1
  502. package/dist/sql/MigratorFileSystem.d.ts +21 -0
  503. package/dist/sql/MigratorFileSystem.d.ts.map +1 -0
  504. package/dist/sql/MigratorFileSystem.js +57 -0
  505. package/dist/sql/MigratorFileSystem.js.map +1 -0
  506. package/dist/sql/SqlClient.d.ts.map +1 -1
  507. package/dist/sql/SqlClient.js +5 -9
  508. package/dist/sql/SqlClient.js.map +1 -1
  509. package/dist/sql/Statement.d.ts +20 -6
  510. package/dist/sql/Statement.d.ts.map +1 -1
  511. package/dist/sql/Statement.js +0 -13
  512. package/dist/sql/Statement.js.map +1 -1
  513. package/dist/sql/index.js +1 -1
  514. package/dist/testing/index.d.ts +0 -5
  515. package/dist/testing/index.d.ts.map +1 -1
  516. package/dist/testing/index.js +0 -5
  517. package/dist/testing/index.js.map +1 -1
  518. package/dist/workflow/internal/crypto.js +9 -8
  519. package/dist/workflow/internal/crypto.js.map +1 -1
  520. package/package.json +3 -1
  521. package/src/BigDecimal.ts +3 -0
  522. package/src/Channel.ts +17 -11
  523. package/src/Config.ts +7 -1
  524. package/src/Context.ts +34 -10
  525. package/src/Cron.ts +178 -29
  526. package/src/Duration.ts +140 -0
  527. package/src/Effect.ts +914 -85
  528. package/src/FileSystem.ts +65 -4
  529. package/src/Glob.ts +205 -0
  530. package/src/Match.ts +127 -0
  531. package/src/Pool.ts +73 -15
  532. package/src/Random.ts +3 -3
  533. package/src/RcMap.ts +5 -1
  534. package/src/Schedule.ts +26 -3
  535. package/src/Schema.ts +1189 -62
  536. package/src/SchemaGetter.ts +27 -11
  537. package/src/SchemaRepresentation.ts +19 -0
  538. package/src/SchemaTransformation.ts +8 -3
  539. package/src/ScopedCache.ts +5 -9
  540. package/src/Semaphore.ts +141 -0
  541. package/src/Stream.ts +15 -6
  542. package/src/Terminal.ts +19 -1
  543. package/src/ai/AiError.ts +56 -80
  544. package/src/ai/Decision.ts +257 -6
  545. package/src/ai/DecisionModel.ts +171 -28
  546. package/src/ai/McpServer.ts +1269 -286
  547. package/src/ai/McpTest.ts +380 -0
  548. package/src/ai/Response.ts +2 -22
  549. package/src/ai/Tool.ts +27 -8
  550. package/src/ai/index.ts +6 -0
  551. package/src/ai/internal/mcpCore.ts +78 -44
  552. package/src/ai/internal/mcpProtocol/v2024_11_05.ts +4 -7
  553. package/src/ai/internal/mcpProtocol/v2025_03_26.ts +4 -7
  554. package/src/ai/internal/mcpProtocol/v2025_06_18.ts +4 -7
  555. package/src/ai/internal/mcpProtocol/v2025_11_25.ts +4 -7
  556. package/src/ai/internal/mcpProtocol/v2026_07_28.ts +15 -10
  557. package/src/ai/internal/mcpProtocol.ts +29 -0
  558. package/src/ai/internal/mcpRuntime.ts +9 -5
  559. package/src/ai/internal/mcpStatefulRuntime.ts +14 -2
  560. package/src/cli/Argument.ts +6 -0
  561. package/src/cli/CliOutput.ts +117 -49
  562. package/src/cli/Command.ts +23 -0
  563. package/src/cli/Flag.ts +107 -0
  564. package/src/cli/HelpDoc.ts +18 -1
  565. package/src/cli/Param.ts +6 -0
  566. package/src/cli/Primitive.ts +16 -1
  567. package/src/cli/Prompt.ts +1 -0
  568. package/src/cli/internal/help.ts +21 -9
  569. package/src/cluster/Sharding.ts +93 -26
  570. package/src/cluster/ShardingConfig.ts +41 -3
  571. package/src/cluster/SingleRunner.ts +3 -3
  572. package/src/cluster/SqlMessageStorage.ts +49 -17
  573. package/src/cluster/SqlRunnerStorage.ts +37 -27
  574. package/src/crypto/Aead.ts +517 -0
  575. package/src/crypto/Cipher.ts +326 -0
  576. package/src/crypto/CryptoError.ts +242 -0
  577. package/src/crypto/Digest.ts +167 -0
  578. package/src/crypto/Kdf.ts +315 -0
  579. package/src/crypto/KeyAgreement.ts +489 -0
  580. package/src/crypto/KeyFormat.ts +712 -0
  581. package/src/crypto/KeyWrap.ts +639 -0
  582. package/src/crypto/Mac.ts +386 -0
  583. package/src/crypto/SecureRandom.ts +459 -0
  584. package/src/crypto/Signature.ts +673 -0
  585. package/src/crypto/WebCrypto.ts +64 -0
  586. package/src/crypto/index.ts +78 -0
  587. package/src/crypto/internal/asymmetric.ts +329 -0
  588. package/src/crypto/internal/chacha.ts +1088 -0
  589. package/src/crypto/internal/der.ts +110 -0
  590. package/src/crypto/internal/digest.ts +16 -0
  591. package/src/crypto/internal/key.ts +235 -0
  592. package/src/crypto/internal/md5.ts +170 -0
  593. package/src/crypto/internal/webCrypto.ts +150 -0
  594. package/src/encoding/Base64Url.ts +5 -2
  595. package/src/encoding/Csv.ts +1298 -0
  596. package/src/encoding/Hex.ts +3 -2
  597. package/src/encoding/SchemaBinary.ts +40 -4
  598. package/src/encoding/Toml.ts +85 -20
  599. package/src/encoding/Yaml.ts +61 -18
  600. package/src/encoding/index.ts +6 -0
  601. package/src/eventlog/EventJournal.ts +4 -3
  602. package/src/eventlog/EventLog.ts +340 -15
  603. package/src/eventlog/EventLogEncryption.ts +118 -110
  604. package/src/eventlog/EventLogMessage.ts +273 -1
  605. package/src/eventlog/EventLogRemote.ts +367 -23
  606. package/src/eventlog/EventLogServer.ts +23 -8
  607. package/src/eventlog/EventLogServerEncrypted.ts +1130 -67
  608. package/src/eventlog/EventLogSessionAuth.ts +56 -70
  609. package/src/eventlog/EventRow.ts +12 -3
  610. package/src/eventlog/SqlEventJournal.ts +2 -2
  611. package/src/eventlog/SqlEventLogServerEncrypted.ts +1244 -136
  612. package/src/eventlog/SqlEventLogServerUnencrypted.ts +2 -2
  613. package/src/eventlog/internal/batches.ts +30 -0
  614. package/src/eventlog/internal/compaction.ts +64 -0
  615. package/src/eventlog/internal/identityRootSecretDerivation.ts +93 -123
  616. package/src/eventlog/internal/remoteCompaction.ts +92 -0
  617. package/src/http/Cookies.ts +281 -1
  618. package/src/http/FetchHttpClient.ts +88 -16
  619. package/src/http/HttpClient.ts +89 -22
  620. package/src/http/HttpClientRequest.ts +12 -9
  621. package/src/http/HttpClientResponse.ts +3 -2
  622. package/src/http/HttpMethod.ts +10 -2
  623. package/src/http/HttpServerRequest.ts +15 -30
  624. package/src/http/HttpServerResponse.ts +3 -2
  625. package/src/http/HttpTraceContext.ts +7 -4
  626. package/src/http/ProblemDetails.ts +149 -0
  627. package/src/http/index.ts +6 -0
  628. package/src/http/internal/decompression.ts +4 -4
  629. package/src/http/internal/urlParams.ts +8 -0
  630. package/src/http-api/HttpApiBuilder.ts +24 -12
  631. package/src/http-api/HttpApiClient.ts +67 -1
  632. package/src/http-api/HttpApiEndpoint.ts +14 -5
  633. package/src/http-api/HttpApiError.ts +250 -0
  634. package/src/http-api/HttpApiMiddleware.ts +95 -1
  635. package/src/http-api/HttpApiSchema.ts +105 -14
  636. package/src/index.ts +6 -6
  637. package/src/internal/effect.ts +34 -18
  638. package/src/internal/glob.ts +736 -0
  639. package/src/internal/matcher.ts +17 -0
  640. package/src/internal/persistence.ts +11 -0
  641. package/src/internal/rcRef.ts +4 -1
  642. package/src/internal/schema/toCodeDocument.ts +7 -3
  643. package/src/internal/trie.ts +43 -14
  644. package/src/internal/ulid.ts +44 -0
  645. package/src/internal/uuid.ts +57 -16
  646. package/src/internal/version.ts +1 -1
  647. package/src/observability/Otlp.ts +21 -4
  648. package/src/observability/OtlpResource.ts +9 -1
  649. package/src/persistence/KeyValueStore.ts +219 -22
  650. package/src/persistence/PersistedQueue.ts +128 -59
  651. package/src/persistence/Persistence.ts +20 -13
  652. package/src/process/ChildProcess.ts +255 -260
  653. package/src/process/ChildProcessSpawner.ts +5 -0
  654. package/src/process/CommandLine.ts +630 -0
  655. package/src/process/index.ts +6 -0
  656. package/src/reactivity/Atom.ts +5 -5
  657. package/src/reactivity/AtomRegistry.ts +1 -1
  658. package/src/rpc/RpcClient.ts +62 -26
  659. package/src/rpc/RpcMessage.ts +10 -1
  660. package/src/rpc/RpcSerialization.ts +3 -0
  661. package/src/rpc/RpcServer.ts +176 -78
  662. package/src/schema/Model.ts +26 -3
  663. package/src/sql/Migrator.ts +4 -63
  664. package/src/sql/MigratorFileSystem.ts +71 -0
  665. package/src/sql/SqlClient.ts +2 -16
  666. package/src/sql/Statement.ts +8 -7
  667. package/src/sql/index.ts +1 -1
  668. package/src/testing/index.ts +0 -6
  669. package/src/workflow/internal/crypto.ts +15 -11
  670. package/dist/Crypto.d.ts +0 -244
  671. package/dist/Crypto.d.ts.map +0 -1
  672. package/dist/Crypto.js +0 -139
  673. package/dist/Crypto.js.map +0 -1
  674. package/dist/testing/TestCrypto.d.ts +0 -73
  675. package/dist/testing/TestCrypto.d.ts.map +0 -1
  676. package/dist/testing/TestCrypto.js +0 -87
  677. package/dist/testing/TestCrypto.js.map +0 -1
  678. package/src/Crypto.ts +0 -347
  679. package/src/testing/TestCrypto.ts +0 -94
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/crypto/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;;GAGG;AACH,OAAO,KAAK,IAAI,MAAM,WAAW,CAAA;AAEjC;;;GAGG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;;GAGG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;;GAGG;AACH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC;;;GAGG;AACH,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B;;;GAGG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD;;;GAGG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;;GAGG;AACH,OAAO,KAAK,OAAO,MAAM,cAAc,CAAA;AAEvC;;;GAGG;AACH,OAAO,KAAK,GAAG,MAAM,UAAU,CAAA;AAE/B;;;GAGG;AACH,OAAO,KAAK,YAAY,MAAM,mBAAmB,CAAA;AAEjD;;;GAGG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;;GAGG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * @stability unstable
3
+ * @since 4.0.0
4
+ */
5
+ // @barrel: Auto-generated exports. Do not edit manually.
6
+ /**
7
+ * @stability unstable
8
+ * @since 4.0.0
9
+ */
10
+ export * as Aead from "./Aead.js";
11
+ /**
12
+ * @stability unstable
13
+ * @since 4.0.0
14
+ */
15
+ export * as Cipher from "./Cipher.js";
16
+ /**
17
+ * @stability unstable
18
+ * @since 4.0.0
19
+ */
20
+ export * as CryptoError from "./CryptoError.js";
21
+ /**
22
+ * @stability unstable
23
+ * @since 4.0.0
24
+ */
25
+ export * as Digest from "./Digest.js";
26
+ /**
27
+ * @stability unstable
28
+ * @since 4.0.0
29
+ */
30
+ export * as Kdf from "./Kdf.js";
31
+ /**
32
+ * @stability unstable
33
+ * @since 4.0.0
34
+ */
35
+ export * as KeyAgreement from "./KeyAgreement.js";
36
+ /**
37
+ * @stability unstable
38
+ * @since 4.0.0
39
+ */
40
+ export * as KeyFormat from "./KeyFormat.js";
41
+ /**
42
+ * @stability unstable
43
+ * @since 4.0.0
44
+ */
45
+ export * as KeyWrap from "./KeyWrap.js";
46
+ /**
47
+ * @stability unstable
48
+ * @since 4.0.0
49
+ */
50
+ export * as Mac from "./Mac.js";
51
+ /**
52
+ * @stability unstable
53
+ * @since 4.0.0
54
+ */
55
+ export * as SecureRandom from "./SecureRandom.js";
56
+ /**
57
+ * @stability unstable
58
+ * @since 4.0.0
59
+ */
60
+ export * as Signature from "./Signature.js";
61
+ /**
62
+ * @stability unstable
63
+ * @since 4.0.0
64
+ */
65
+ export * as WebCrypto from "./WebCrypto.js";
66
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../src/crypto/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;AAKA;AAEA;;;;AAIA,OAAO,KAAK,IAAI,MAAM,WAAW;AAEjC;;;;AAIA,OAAO,KAAK,MAAM,MAAM,aAAa;AAErC;;;;AAIA,OAAO,KAAK,WAAW,MAAM,kBAAkB;AAE/C;;;;AAIA,OAAO,KAAK,MAAM,MAAM,aAAa;AAErC;;;;AAIA,OAAO,KAAK,GAAG,MAAM,UAAU;AAE/B;;;;AAIA,OAAO,KAAK,YAAY,MAAM,mBAAmB;AAEjD;;;;AAIA,OAAO,KAAK,SAAS,MAAM,gBAAgB;AAE3C;;;;AAIA,OAAO,KAAK,OAAO,MAAM,cAAc;AAEvC;;;;AAIA,OAAO,KAAK,GAAG,MAAM,UAAU;AAE/B;;;;AAIA,OAAO,KAAK,YAAY,MAAM,mBAAmB;AAEjD;;;;AAIA,OAAO,KAAK,SAAS,MAAM,gBAAgB;AAE3C;;;;AAIA,OAAO,KAAK,SAAS,MAAM,gBAAgB","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=asymmetric.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asymmetric.d.ts","sourceRoot":"","sources":["../../../src/crypto/internal/asymmetric.ts"],"names":[],"mappings":""}
@@ -0,0 +1,210 @@
1
+ import * as Effect from "../../Effect.js";
2
+ import * as Predicate from "../../Predicate.js";
3
+ import * as CryptoError from "../CryptoError.js";
4
+ import * as KeyModel from "./key.js";
5
+ import * as internal from "./webCrypto.js";
6
+ // RFC 8410: the PKCS#8 encoding of a 32-byte Ed25519 or X25519 private key is
7
+ // this prefix, ending in the algorithm's OID byte, followed by the key.
8
+ const seedPrefix = oid => Uint8Array.of(48, 46, 2, 1, 0, 48, 5, 6, 3, 43, 101, oid, 4, 34, 4, 32);
9
+ /** @internal */
10
+ export const ed25519Prefix = /*#__PURE__*/seedPrefix(112);
11
+ /** @internal */
12
+ export const x25519Prefix = /*#__PURE__*/seedPrefix(110);
13
+ const seedLength = 32;
14
+ /**
15
+ * Coordinate sizes in bytes, which are also the sizes of an ECDSA signature's
16
+ * `r` and `s` and of an ECDH shared secret.
17
+ *
18
+ * @internal
19
+ */
20
+ export const coordinateSizes = {
21
+ "P-256": 32,
22
+ "P-384": 48,
23
+ "P-521": 66
24
+ };
25
+ /**
26
+ * Checks raw Ed25519 or X25519 key length, with guidance for 64-byte seeds.
27
+ *
28
+ * @internal
29
+ */
30
+ export const checkSeedLength = (name, role) => bytes => {
31
+ if (bytes.length === seedLength) return undefined;
32
+ if (role === "private" && bytes.length === 64) {
33
+ return `Expected the 32-byte ${name} seed, not the 64-byte seed‖public key form: pass its first 32 bytes`;
34
+ }
35
+ return `Expected a ${seedLength}-byte ${name} ${role} key, not ${bytes.length} bytes`;
36
+ };
37
+ /**
38
+ * Checks the encoding of a raw EC public key: an uncompressed SEC1 point,
39
+ * `0x04` followed by both coordinates. Whether the point is on the curve is
40
+ * checked when the key is first used.
41
+ *
42
+ * @internal
43
+ */
44
+ export const checkPoint = curve => bytes => {
45
+ const length = 1 + 2 * coordinateSizes[curve];
46
+ if (bytes.length !== length) return `Expected a ${length}-byte uncompressed ${curve} point, not ${bytes.length} bytes`;
47
+ return bytes[0] === 4 ? undefined : `Expected an uncompressed ${curve} point, starting with 0x04`;
48
+ };
49
+ /** @internal */
50
+ export const checkNamedCurve = curve => algorithm => {
51
+ const namedCurve = algorithm.namedCurve;
52
+ return namedCurve === curve ? undefined : `Expected a ${curve} key, not ${namedCurve}`;
53
+ };
54
+ /** @internal */
55
+ export const checkHash = hash => algorithm => {
56
+ const keyHash = algorithm.hash?.name;
57
+ return keyHash === hash ? undefined : `Expected a key for ${hash}, not ${keyHash}`;
58
+ };
59
+ /** @internal */
60
+ export const rsaGenerateParams = (spec, modulusLength) => ({
61
+ ...spec.importParams,
62
+ modulusLength,
63
+ publicExponent: Uint8Array.of(1, 0, 1)
64
+ });
65
+ /**
66
+ * Synchronously validates and wraps a `CryptoKey`.
67
+ *
68
+ * @internal
69
+ */
70
+ export const fromCryptoKey = (family, method, algorithm, role, cryptoKey) => {
71
+ const spec = family.specOf(algorithm);
72
+ return KeyModel.fromCryptoKey(family.module, method, role === "private" ? family.privateKeyProto : family.publicKeyProto, algorithm, cryptoKey, {
73
+ type: role,
74
+ name: spec.name,
75
+ usages: role === "private" ? spec.privateUsages : spec.publicUsages,
76
+ usagePolicy: "all",
77
+ check: spec.check
78
+ });
79
+ };
80
+ const concat = (prefix, bytes) => {
81
+ const out = new Uint8Array(prefix.length + bytes.length);
82
+ out.set(prefix);
83
+ out.set(bytes, prefix.length);
84
+ return out;
85
+ };
86
+ /** @internal */
87
+ export const importPrivate = (subtle, bytes, spec, extractable) => subtle.importKey("pkcs8", spec.seedPrefix === undefined ? bytes : concat(spec.seedPrefix, bytes), spec.importParams, extractable, spec.privateUsages);
88
+ /** @internal */
89
+ export const importPublic = (subtle, bytes, spec) => subtle.importKey(spec.publicFormat, bytes, spec.importParams, true, spec.publicUsages);
90
+ /**
91
+ * Exports a private `CryptoKey` to its stored form: the seed for Ed25519 and
92
+ * X25519, PKCS#8 otherwise. A seed export in another PKCS#8 form is one the
93
+ * layer cannot read, so it fails with `Unsupported`.
94
+ */
95
+ const exportPrivate = async (subtle, cryptoKey, spec) => {
96
+ const pkcs8 = new Uint8Array(await subtle.exportKey("pkcs8", cryptoKey));
97
+ const prefix = spec.seedPrefix;
98
+ if (prefix === undefined) return pkcs8;
99
+ if (pkcs8.length !== prefix.length + seedLength || !prefix.every((byte, i) => pkcs8[i] === byte)) {
100
+ throw new internal.Failure(new CryptoError.Unsupported({
101
+ description: `${spec.name} private key was exported in an unexpected PKCS#8 form`
102
+ }));
103
+ }
104
+ return pkcs8.slice(prefix.length);
105
+ };
106
+ const exportPublic = async (subtle, cryptoKey, spec) => new Uint8Array(await subtle.exportKey(spec.publicFormat, cryptoKey));
107
+ /** @internal */
108
+ export const exportKey = (subtle, cryptoKey, spec, role) => role === "private" ? exportPrivate(subtle, cryptoKey, spec) : exportPublic(subtle, cryptoKey, spec);
109
+ /**
110
+ * Exports a key's stored representation as fresh bytes, reading the
111
+ * `WebCrypto` reference for `CryptoKey`-backed keys.
112
+ *
113
+ * @internal
114
+ */
115
+ export const toBytes = (family, key) => KeyModel.toBytes(family.module, key, (subtle, cryptoKey) => exportKey(subtle, cryptoKey, family.specOf(key.algorithm), family.isPrivateKey(key) ? "private" : "public"));
116
+ /**
117
+ * Per-layer caches for imported byte-backed keys.
118
+ *
119
+ * @internal
120
+ */
121
+ export const makeCaches = family => ({
122
+ privateKey: KeyModel.makeCache((subtle, bytes, algorithm) => importPrivate(subtle, bytes, family.specOf(algorithm), false)),
123
+ publicKey: KeyModel.makeCache((subtle, bytes, algorithm) => importPublic(subtle, bytes, family.specOf(algorithm)))
124
+ });
125
+ /**
126
+ * Computes the stored public key of an extractable private `CryptoKey`.
127
+ *
128
+ * WebCrypto cannot derive a public key directly, but a private key's JWK
129
+ * export carries the public members, which import as a public key.
130
+ */
131
+ const publicOf = async (subtle, privateKey, spec) => {
132
+ const {
133
+ d,
134
+ p,
135
+ q,
136
+ dp,
137
+ dq,
138
+ qi,
139
+ oth,
140
+ key_ops,
141
+ ext,
142
+ alg,
143
+ ...jwk
144
+ } = await subtle.exportKey("jwk", privateKey);
145
+ const publicKey = await subtle.importKey("jwk", jwk, spec.importParams, true, spec.publicUsages);
146
+ return exportPublic(subtle, publicKey, spec);
147
+ };
148
+ /**
149
+ * Generates a key pair in its stored forms. Ed25519 and X25519 private keys
150
+ * are 32 bytes from `SecureRandom`, so a seeded `SecureRandom` reproduces
151
+ * them. EC and RSA keys come from WebCrypto's own randomness.
152
+ *
153
+ * @internal
154
+ */
155
+ export const generateKeyPair = (family, crypto, random, algorithm, params) => {
156
+ const spec = family.specOf(algorithm);
157
+ const generate = async (subtle, seed) => {
158
+ if (seed !== undefined) {
159
+ const privateKey = await importPrivate(subtle, seed, spec, true);
160
+ return {
161
+ privateKey: seed,
162
+ publicKey: await publicOf(subtle, privateKey, spec)
163
+ };
164
+ }
165
+ const usages = [...new Set([...spec.privateUsages, ...spec.publicUsages])];
166
+ const pair = await subtle.generateKey(params, true, usages);
167
+ return {
168
+ privateKey: await exportPrivate(subtle, pair.privateKey, spec),
169
+ publicKey: await exportPublic(subtle, pair.publicKey, spec)
170
+ };
171
+ };
172
+ return Effect.flatMap(spec.seedPrefix === undefined ? Effect.undefined : random.randomBytes(seedLength), seed => Effect.map(internal.run(family.module, "generateKeyPair", algorithm.name, crypto, subtle => generate(subtle, seed)), ({
173
+ privateKey,
174
+ publicKey
175
+ }) => ({
176
+ privateKey: KeyModel.makeBytes(family.privateKeyProto, algorithm, privateKey),
177
+ publicKey: KeyModel.makeBytes(family.publicKeyProto, algorithm, publicKey)
178
+ })));
179
+ };
180
+ /**
181
+ * Computes the public key of a private key, failing with `NotExtractable`
182
+ * for a non-extractable `CryptoKey`, whose public members cannot be read.
183
+ *
184
+ * @internal
185
+ */
186
+ export const publicKeyOf = (family, crypto, privateKey) => Effect.suspend(() => {
187
+ const stored = KeyModel.material(privateKey);
188
+ if (stored._tag === "CryptoKey" && !stored.cryptoKey.extractable) {
189
+ return internal.notExtractable(family.module, "publicKeyOf");
190
+ }
191
+ const spec = family.specOf(privateKey.algorithm);
192
+ return Effect.map(internal.run(family.module, "publicKeyOf", privateKey.algorithm.name, crypto, async subtle => publicOf(subtle, stored._tag === "CryptoKey" ? stored.cryptoKey : await importPrivate(subtle, stored.bytes, spec, true), spec)), bytes => KeyModel.makeBytes(family.publicKeyProto, privateKey.algorithm, bytes));
193
+ });
194
+ /**
195
+ * Deno imports raw EC points that are not on the curve and rejects them with
196
+ * a `TypeError` when the key is used. For a byte-backed public key only the
197
+ * key can cause that, so it is `InvalidKey`. Any other `TypeError`, such as a
198
+ * `CryptoKey` from another `Crypto` object, stays a defect.
199
+ *
200
+ * @internal
201
+ */
202
+ export const publicKeyError = (module, method, publicKey, cause) => KeyModel.material(publicKey)._tag === "Bytes" && Predicate.hasProperty(cause, "name") && cause.name === "TypeError" ? new CryptoError.CryptoError({
203
+ module,
204
+ method,
205
+ reason: new CryptoError.InvalidKey({
206
+ description: "Invalid public key",
207
+ cause
208
+ })
209
+ }) : internal.webCryptoError(module, method, publicKey.algorithm.name, cause);
210
+ //# sourceMappingURL=asymmetric.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"asymmetric.js","names":[],"sources":["../../../src/crypto/internal/asymmetric.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,46 @@
1
+ /**
2
+ * ChaCha20-Poly1305 (RFC 8439) and XChaCha20-Poly1305
3
+ * (draft-irtf-cfrg-xchacha-03), vendored from `@noble/ciphers`.
4
+ *
5
+ * Upstream: https://github.com/paulmillr/noble-ciphers
6
+ * Version: 2.4.0, commit d9e8a6a599e7ed729d9be03854c46a3c73bd9a79
7
+ * Files: `src/chacha.ts` (`chachaCore`, `hchacha`, `chacha20`, `xchacha20`,
8
+ * `_poly1305_aead`), `src/_arx.ts` (`createCipher`), `src/_poly1305.ts`
9
+ * (`Poly1305`), and the helpers they use from `src/utils.ts`. `@noble/ciphers`
10
+ * 1.0.0 was audited by Cure53 in 2024.
11
+ *
12
+ * Changes from upstream: merged into one file, removed the `TArg`/`TRet` type
13
+ * helpers, `@example` blocks, the reduced-round and original ChaCha variants,
14
+ * the PRGs, and the `wrapCipher` argument wrapper, whose checks the `Aead`
15
+ * layers run before calling this code. `Poly1305` is constructed directly
16
+ * instead of through `wrapMacConstructor`, and `decrypt` returns `undefined`
17
+ * on a tag mismatch instead of throwing, so any exception is a bug. The
18
+ * cipher core, Poly1305 arithmetic, and AEAD construction are unchanged.
19
+ *
20
+ * The MIT License (MIT)
21
+ *
22
+ * Copyright (c) 2022 Paul Miller (https://paulmillr.com)
23
+ * Copyright (c) 2016 Thomas Pornin <pornin@bolet.org>
24
+ *
25
+ * Permission is hereby granted, free of charge, to any person obtaining a copy
26
+ * of this software and associated documentation files (the "Software"), to deal
27
+ * in the Software without restriction, including without limitation the rights
28
+ * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
29
+ * copies of the Software, and to permit persons to whom the Software is
30
+ * furnished to do so, subject to the following conditions:
31
+ *
32
+ * The above copyright notice and this permission notice shall be included in
33
+ * all copies or substantial portions of the Software.
34
+ *
35
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
36
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
37
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
38
+ * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
39
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
40
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
41
+ * THE SOFTWARE.
42
+ *
43
+ * @internal
44
+ */
45
+ export {};
46
+ //# sourceMappingURL=chacha.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chacha.d.ts","sourceRoot":"","sources":["../../../src/crypto/internal/chacha.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2CG"}