effect 4.0.6 → 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 (978) hide show
  1. package/README.md +1 -1
  2. package/dist/Arbitrary.d.ts +10 -2
  3. package/dist/Arbitrary.d.ts.map +1 -1
  4. package/dist/Arbitrary.js +2 -1
  5. package/dist/Arbitrary.js.map +1 -1
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +3 -0
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/Channel.d.ts +12 -6
  10. package/dist/Channel.d.ts.map +1 -1
  11. package/dist/Channel.js +30 -9
  12. package/dist/Channel.js.map +1 -1
  13. package/dist/Config.d.ts +7 -1
  14. package/dist/Config.d.ts.map +1 -1
  15. package/dist/Config.js.map +1 -1
  16. package/dist/Context.d.ts +18 -1
  17. package/dist/Context.d.ts.map +1 -1
  18. package/dist/Context.js +27 -8
  19. package/dist/Context.js.map +1 -1
  20. package/dist/Cron.d.ts +81 -11
  21. package/dist/Cron.d.ts.map +1 -1
  22. package/dist/Cron.js +101 -26
  23. package/dist/Cron.js.map +1 -1
  24. package/dist/Data.d.ts +54 -235
  25. package/dist/Data.d.ts.map +1 -1
  26. package/dist/Data.js.map +1 -1
  27. package/dist/Duration.d.ts +78 -0
  28. package/dist/Duration.d.ts.map +1 -1
  29. package/dist/Duration.js +123 -0
  30. package/dist/Duration.js.map +1 -1
  31. package/dist/Effect.d.ts +165 -8
  32. package/dist/Effect.d.ts.map +1 -1
  33. package/dist/Effect.js +12 -2
  34. package/dist/Effect.js.map +1 -1
  35. package/dist/Equal.d.ts.map +1 -1
  36. package/dist/Equal.js +8 -1
  37. package/dist/Equal.js.map +1 -1
  38. package/dist/Exit.d.ts +3 -3
  39. package/dist/Exit.d.ts.map +1 -1
  40. package/dist/Exit.js.map +1 -1
  41. package/dist/FileSystem.d.ts +59 -4
  42. package/dist/FileSystem.d.ts.map +1 -1
  43. package/dist/FileSystem.js +9 -2
  44. package/dist/FileSystem.js.map +1 -1
  45. package/dist/Formatter.d.ts.map +1 -1
  46. package/dist/Formatter.js +27 -13
  47. package/dist/Formatter.js.map +1 -1
  48. package/dist/Glob.d.ts +165 -0
  49. package/dist/Glob.d.ts.map +1 -0
  50. package/dist/Glob.js +127 -0
  51. package/dist/Glob.js.map +1 -0
  52. package/dist/Hash.d.ts.map +1 -1
  53. package/dist/Hash.js +4 -1
  54. package/dist/Hash.js.map +1 -1
  55. package/dist/JsonPatch.js +4 -0
  56. package/dist/JsonPatch.js.map +1 -1
  57. package/dist/JsonSchema.d.ts.map +1 -1
  58. package/dist/JsonSchema.js +13 -40
  59. package/dist/JsonSchema.js.map +1 -1
  60. package/dist/Match.d.ts +86 -0
  61. package/dist/Match.d.ts.map +1 -1
  62. package/dist/Match.js +72 -0
  63. package/dist/Match.js.map +1 -1
  64. package/dist/Metric.d.ts +3 -3
  65. package/dist/MutableList.d.ts +5 -2
  66. package/dist/MutableList.d.ts.map +1 -1
  67. package/dist/MutableList.js +7 -5
  68. package/dist/MutableList.js.map +1 -1
  69. package/dist/MutableRef.d.ts.map +1 -1
  70. package/dist/MutableRef.js +7 -0
  71. package/dist/MutableRef.js.map +1 -1
  72. package/dist/PartitionedSemaphore.d.ts +2 -1
  73. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  74. package/dist/PartitionedSemaphore.js +22 -12
  75. package/dist/PartitionedSemaphore.js.map +1 -1
  76. package/dist/Pool.d.ts +51 -0
  77. package/dist/Pool.d.ts.map +1 -1
  78. package/dist/Pool.js +136 -36
  79. package/dist/Pool.js.map +1 -1
  80. package/dist/PubSub.d.ts.map +1 -1
  81. package/dist/PubSub.js +5 -6
  82. package/dist/PubSub.js.map +1 -1
  83. package/dist/Random.d.ts.map +1 -1
  84. package/dist/Random.js +3 -3
  85. package/dist/Random.js.map +1 -1
  86. package/dist/RcMap.d.ts.map +1 -1
  87. package/dist/RcMap.js +8 -2
  88. package/dist/RcMap.js.map +1 -1
  89. package/dist/Ref.d.ts.map +1 -1
  90. package/dist/Ref.js +8 -0
  91. package/dist/Ref.js.map +1 -1
  92. package/dist/Schedule.d.ts +18 -1
  93. package/dist/Schedule.d.ts.map +1 -1
  94. package/dist/Schedule.js +8 -3
  95. package/dist/Schedule.js.map +1 -1
  96. package/dist/Schema.d.ts +690 -49
  97. package/dist/Schema.d.ts.map +1 -1
  98. package/dist/Schema.js +687 -28
  99. package/dist/Schema.js.map +1 -1
  100. package/dist/SchemaAST.d.ts +4 -2
  101. package/dist/SchemaAST.d.ts.map +1 -1
  102. package/dist/SchemaAST.js +14 -17
  103. package/dist/SchemaAST.js.map +1 -1
  104. package/dist/SchemaGetter.d.ts +6 -1
  105. package/dist/SchemaGetter.d.ts.map +1 -1
  106. package/dist/SchemaGetter.js +22 -11
  107. package/dist/SchemaGetter.js.map +1 -1
  108. package/dist/SchemaParser.d.ts.map +1 -1
  109. package/dist/SchemaParser.js +48 -22
  110. package/dist/SchemaParser.js.map +1 -1
  111. package/dist/SchemaRepresentation.d.ts +33 -10
  112. package/dist/SchemaRepresentation.d.ts.map +1 -1
  113. package/dist/SchemaRepresentation.js +39 -13
  114. package/dist/SchemaRepresentation.js.map +1 -1
  115. package/dist/SchemaTransformation.d.ts +12 -4
  116. package/dist/SchemaTransformation.d.ts.map +1 -1
  117. package/dist/SchemaTransformation.js +15 -5
  118. package/dist/SchemaTransformation.js.map +1 -1
  119. package/dist/ScopedCache.d.ts.map +1 -1
  120. package/dist/ScopedCache.js +5 -7
  121. package/dist/ScopedCache.js.map +1 -1
  122. package/dist/Semaphore.d.ts +130 -0
  123. package/dist/Semaphore.d.ts.map +1 -1
  124. package/dist/Semaphore.js +94 -35
  125. package/dist/Semaphore.js.map +1 -1
  126. package/dist/Sink.d.ts.map +1 -1
  127. package/dist/Sink.js +7 -2
  128. package/dist/Sink.js.map +1 -1
  129. package/dist/Stream.d.ts +13 -4
  130. package/dist/Stream.d.ts.map +1 -1
  131. package/dist/Stream.js +31 -10
  132. package/dist/Stream.js.map +1 -1
  133. package/dist/String.d.ts +3 -0
  134. package/dist/String.d.ts.map +1 -1
  135. package/dist/String.js +3 -0
  136. package/dist/String.js.map +1 -1
  137. package/dist/Terminal.d.ts +18 -1
  138. package/dist/Terminal.d.ts.map +1 -1
  139. package/dist/Terminal.js +1 -1
  140. package/dist/Terminal.js.map +1 -1
  141. package/dist/Tracer.d.ts +11 -1
  142. package/dist/Tracer.d.ts.map +1 -1
  143. package/dist/Tracer.js +6 -1
  144. package/dist/Tracer.js.map +1 -1
  145. package/dist/ai/AiError.d.ts +43 -116
  146. package/dist/ai/AiError.d.ts.map +1 -1
  147. package/dist/ai/AiError.js +53 -72
  148. package/dist/ai/AiError.js.map +1 -1
  149. package/dist/ai/Decision.d.ts +196 -15
  150. package/dist/ai/Decision.d.ts.map +1 -1
  151. package/dist/ai/Decision.js +130 -0
  152. package/dist/ai/Decision.js.map +1 -1
  153. package/dist/ai/DecisionModel.d.ts +54 -13
  154. package/dist/ai/DecisionModel.d.ts.map +1 -1
  155. package/dist/ai/DecisionModel.js +123 -12
  156. package/dist/ai/DecisionModel.js.map +1 -1
  157. package/dist/ai/LanguageModel.d.ts.map +1 -1
  158. package/dist/ai/LanguageModel.js +9 -0
  159. package/dist/ai/LanguageModel.js.map +1 -1
  160. package/dist/ai/McpSchema.d.ts +110 -110
  161. package/dist/ai/McpSchema.d.ts.map +1 -1
  162. package/dist/ai/McpServer.d.ts +630 -29
  163. package/dist/ai/McpServer.d.ts.map +1 -1
  164. package/dist/ai/McpServer.js +583 -131
  165. package/dist/ai/McpServer.js.map +1 -1
  166. package/dist/ai/McpTest.d.ts +130 -0
  167. package/dist/ai/McpTest.d.ts.map +1 -0
  168. package/dist/ai/McpTest.js +237 -0
  169. package/dist/ai/McpTest.js.map +1 -0
  170. package/dist/ai/Prompt.d.ts +52 -0
  171. package/dist/ai/Prompt.d.ts.map +1 -1
  172. package/dist/ai/Prompt.js +38 -0
  173. package/dist/ai/Prompt.js.map +1 -1
  174. package/dist/ai/Response.d.ts +17 -28
  175. package/dist/ai/Response.d.ts.map +1 -1
  176. package/dist/ai/Response.js +5 -10
  177. package/dist/ai/Response.js.map +1 -1
  178. package/dist/ai/Tool.d.ts +43 -1
  179. package/dist/ai/Tool.d.ts.map +1 -1
  180. package/dist/ai/Tool.js +5 -2
  181. package/dist/ai/Tool.js.map +1 -1
  182. package/dist/ai/Toolkit.d.ts.map +1 -1
  183. package/dist/ai/Toolkit.js +8 -1
  184. package/dist/ai/Toolkit.js.map +1 -1
  185. package/dist/ai/index.d.ts +5 -0
  186. package/dist/ai/index.d.ts.map +1 -1
  187. package/dist/ai/index.js +5 -0
  188. package/dist/ai/index.js.map +1 -1
  189. package/dist/ai/internal/mcpCore.js +17 -12
  190. package/dist/ai/internal/mcpCore.js.map +1 -1
  191. package/dist/ai/internal/mcpProtocol/v2024_11_05.js +4 -5
  192. package/dist/ai/internal/mcpProtocol/v2024_11_05.js.map +1 -1
  193. package/dist/ai/internal/mcpProtocol/v2025_03_26.js +4 -5
  194. package/dist/ai/internal/mcpProtocol/v2025_03_26.js.map +1 -1
  195. package/dist/ai/internal/mcpProtocol/v2025_06_18.js +4 -5
  196. package/dist/ai/internal/mcpProtocol/v2025_06_18.js.map +1 -1
  197. package/dist/ai/internal/mcpProtocol/v2025_11_25.js +4 -5
  198. package/dist/ai/internal/mcpProtocol/v2025_11_25.js.map +1 -1
  199. package/dist/ai/internal/mcpProtocol/v2026_07_28.js +18 -10
  200. package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
  201. package/dist/ai/internal/mcpProtocol.js +13 -0
  202. package/dist/ai/internal/mcpProtocol.js.map +1 -1
  203. package/dist/ai/internal/mcpRuntime.js +5 -3
  204. package/dist/ai/internal/mcpRuntime.js.map +1 -1
  205. package/dist/ai/internal/mcpStatefulRuntime.js +6 -1
  206. package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
  207. package/dist/cli/Argument.d.ts +21 -0
  208. package/dist/cli/Argument.d.ts.map +1 -1
  209. package/dist/cli/Argument.js +7 -0
  210. package/dist/cli/Argument.js.map +1 -1
  211. package/dist/cli/CliError.d.ts +78 -0
  212. package/dist/cli/CliError.d.ts.map +1 -1
  213. package/dist/cli/CliError.js +65 -3
  214. package/dist/cli/CliError.js.map +1 -1
  215. package/dist/cli/CliOutput.d.ts +220 -7
  216. package/dist/cli/CliOutput.d.ts.map +1 -1
  217. package/dist/cli/CliOutput.js +156 -43
  218. package/dist/cli/CliOutput.js.map +1 -1
  219. package/dist/cli/Command.d.ts +47 -16
  220. package/dist/cli/Command.d.ts.map +1 -1
  221. package/dist/cli/Command.js +67 -29
  222. package/dist/cli/Command.js.map +1 -1
  223. package/dist/cli/Completions.d.ts +58 -0
  224. package/dist/cli/Completions.d.ts.map +1 -1
  225. package/dist/cli/Completions.js +49 -9
  226. package/dist/cli/Completions.js.map +1 -1
  227. package/dist/cli/Flag.d.ts +122 -0
  228. package/dist/cli/Flag.d.ts.map +1 -1
  229. package/dist/cli/Flag.js +42 -0
  230. package/dist/cli/Flag.js.map +1 -1
  231. package/dist/cli/GlobalFlag.d.ts.map +1 -1
  232. package/dist/cli/GlobalFlag.js +15 -7
  233. package/dist/cli/GlobalFlag.js.map +1 -1
  234. package/dist/cli/HelpDoc.d.ts +15 -1
  235. package/dist/cli/HelpDoc.d.ts.map +1 -1
  236. package/dist/cli/Param.d.ts +15 -0
  237. package/dist/cli/Param.d.ts.map +1 -1
  238. package/dist/cli/Param.js +23 -2
  239. package/dist/cli/Param.js.map +1 -1
  240. package/dist/cli/Primitive.d.ts +14 -0
  241. package/dist/cli/Primitive.d.ts.map +1 -1
  242. package/dist/cli/Primitive.js +15 -1
  243. package/dist/cli/Primitive.js.map +1 -1
  244. package/dist/cli/Prompt.d.ts +1 -0
  245. package/dist/cli/Prompt.d.ts.map +1 -1
  246. package/dist/cli/Prompt.js +1 -0
  247. package/dist/cli/Prompt.js.map +1 -1
  248. package/dist/cli/TerminalCapabilities.d.ts +3 -2
  249. package/dist/cli/TerminalCapabilities.d.ts.map +1 -1
  250. package/dist/cli/TerminalCapabilities.js +3 -1
  251. package/dist/cli/TerminalCapabilities.js.map +1 -1
  252. package/dist/cli/internal/completions/bash.js +73 -27
  253. package/dist/cli/internal/completions/bash.js.map +1 -1
  254. package/dist/cli/internal/help.d.ts.map +1 -1
  255. package/dist/cli/internal/help.js +17 -10
  256. package/dist/cli/internal/help.js.map +1 -1
  257. package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  258. package/dist/cluster/ClusterWorkflowEngine.js +45 -10
  259. package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
  260. package/dist/cluster/MessageStorage.d.ts +23 -45
  261. package/dist/cluster/MessageStorage.d.ts.map +1 -1
  262. package/dist/cluster/MessageStorage.js +6 -7
  263. package/dist/cluster/MessageStorage.js.map +1 -1
  264. package/dist/cluster/Sharding.d.ts.map +1 -1
  265. package/dist/cluster/Sharding.js +151 -49
  266. package/dist/cluster/Sharding.js.map +1 -1
  267. package/dist/cluster/ShardingConfig.d.ts +76 -0
  268. package/dist/cluster/ShardingConfig.d.ts.map +1 -1
  269. package/dist/cluster/ShardingConfig.js +4 -0
  270. package/dist/cluster/ShardingConfig.js.map +1 -1
  271. package/dist/cluster/SingleRunner.d.ts +3 -3
  272. package/dist/cluster/SingleRunner.d.ts.map +1 -1
  273. package/dist/cluster/SingleRunner.js +1 -1
  274. package/dist/cluster/Snowflake.d.ts.map +1 -1
  275. package/dist/cluster/Snowflake.js +3 -7
  276. package/dist/cluster/Snowflake.js.map +1 -1
  277. package/dist/cluster/SqlMessageStorage.d.ts +37 -6
  278. package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
  279. package/dist/cluster/SqlMessageStorage.js +34 -7
  280. package/dist/cluster/SqlMessageStorage.js.map +1 -1
  281. package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
  282. package/dist/cluster/SqlRunnerStorage.js +109 -46
  283. package/dist/cluster/SqlRunnerStorage.js.map +1 -1
  284. package/dist/cluster/internal/entityManager.js +54 -20
  285. package/dist/cluster/internal/entityManager.js.map +1 -1
  286. package/dist/crypto/Aead.d.ts +322 -0
  287. package/dist/crypto/Aead.d.ts.map +1 -0
  288. package/dist/crypto/Aead.js +331 -0
  289. package/dist/crypto/Aead.js.map +1 -0
  290. package/dist/crypto/Cipher.d.ts +235 -0
  291. package/dist/crypto/Cipher.d.ts.map +1 -0
  292. package/dist/crypto/Cipher.js +233 -0
  293. package/dist/crypto/Cipher.js.map +1 -0
  294. package/dist/crypto/CryptoError.d.ts +212 -0
  295. package/dist/crypto/CryptoError.d.ts.map +1 -0
  296. package/dist/crypto/CryptoError.js +202 -0
  297. package/dist/crypto/CryptoError.js.map +1 -0
  298. package/dist/crypto/Digest.d.ts +143 -0
  299. package/dist/crypto/Digest.d.ts.map +1 -0
  300. package/dist/crypto/Digest.js +146 -0
  301. package/dist/crypto/Digest.js.map +1 -0
  302. package/dist/crypto/Kdf.d.ts +220 -0
  303. package/dist/crypto/Kdf.d.ts.map +1 -0
  304. package/dist/crypto/Kdf.js +212 -0
  305. package/dist/crypto/Kdf.js.map +1 -0
  306. package/dist/crypto/KeyAgreement.d.ts +323 -0
  307. package/dist/crypto/KeyAgreement.d.ts.map +1 -0
  308. package/dist/crypto/KeyAgreement.js +303 -0
  309. package/dist/crypto/KeyAgreement.js.map +1 -0
  310. package/dist/crypto/KeyFormat.d.ts +309 -0
  311. package/dist/crypto/KeyFormat.d.ts.map +1 -0
  312. package/dist/crypto/KeyFormat.js +556 -0
  313. package/dist/crypto/KeyFormat.js.map +1 -0
  314. package/dist/crypto/KeyWrap.d.ts +389 -0
  315. package/dist/crypto/KeyWrap.d.ts.map +1 -0
  316. package/dist/crypto/KeyWrap.js +381 -0
  317. package/dist/crypto/KeyWrap.js.map +1 -0
  318. package/dist/crypto/Mac.d.ts +277 -0
  319. package/dist/crypto/Mac.d.ts.map +1 -0
  320. package/dist/crypto/Mac.js +288 -0
  321. package/dist/crypto/Mac.js.map +1 -0
  322. package/dist/crypto/SecureRandom.d.ts +340 -0
  323. package/dist/crypto/SecureRandom.d.ts.map +1 -0
  324. package/dist/crypto/SecureRandom.js +257 -0
  325. package/dist/crypto/SecureRandom.js.map +1 -0
  326. package/dist/crypto/Signature.d.ts +448 -0
  327. package/dist/crypto/Signature.d.ts.map +1 -0
  328. package/dist/crypto/Signature.js +484 -0
  329. package/dist/crypto/Signature.js.map +1 -0
  330. package/dist/crypto/WebCrypto.d.ts +61 -0
  331. package/dist/crypto/WebCrypto.d.ts.map +1 -0
  332. package/dist/crypto/WebCrypto.js +63 -0
  333. package/dist/crypto/WebCrypto.js.map +1 -0
  334. package/dist/crypto/index.d.ts +65 -0
  335. package/dist/crypto/index.d.ts.map +1 -0
  336. package/dist/crypto/index.js +66 -0
  337. package/dist/crypto/index.js.map +1 -0
  338. package/dist/crypto/internal/asymmetric.d.ts +2 -0
  339. package/dist/crypto/internal/asymmetric.d.ts.map +1 -0
  340. package/dist/crypto/internal/asymmetric.js +210 -0
  341. package/dist/crypto/internal/asymmetric.js.map +1 -0
  342. package/dist/crypto/internal/chacha.d.ts +46 -0
  343. package/dist/crypto/internal/chacha.d.ts.map +1 -0
  344. package/dist/crypto/internal/chacha.js +885 -0
  345. package/dist/crypto/internal/chacha.js.map +1 -0
  346. package/dist/crypto/internal/der.d.ts +6 -0
  347. package/dist/crypto/internal/der.d.ts.map +1 -0
  348. package/dist/crypto/internal/der.js +86 -0
  349. package/dist/crypto/internal/der.js.map +1 -0
  350. package/dist/crypto/internal/digest.d.ts +2 -0
  351. package/dist/crypto/internal/digest.d.ts.map +1 -0
  352. package/dist/crypto/internal/digest.js +15 -0
  353. package/dist/crypto/internal/digest.js.map +1 -0
  354. package/dist/crypto/internal/key.d.ts +2 -0
  355. package/dist/crypto/internal/key.d.ts.map +1 -0
  356. package/dist/crypto/internal/key.js +170 -0
  357. package/dist/crypto/internal/key.js.map +1 -0
  358. package/dist/crypto/internal/md5.d.ts +39 -0
  359. package/dist/crypto/internal/md5.d.ts.map +1 -0
  360. package/dist/crypto/internal/md5.js +179 -0
  361. package/dist/crypto/internal/md5.js.map +1 -0
  362. package/dist/crypto/internal/webCrypto.d.ts +2 -0
  363. package/dist/crypto/internal/webCrypto.d.ts.map +1 -0
  364. package/dist/crypto/internal/webCrypto.js +111 -0
  365. package/dist/crypto/internal/webCrypto.js.map +1 -0
  366. package/dist/devtools/DevToolsClient.d.ts.map +1 -1
  367. package/dist/devtools/DevToolsClient.js +2 -0
  368. package/dist/devtools/DevToolsClient.js.map +1 -1
  369. package/dist/encoding/Base64.js +36 -0
  370. package/dist/encoding/Base64.js.map +1 -1
  371. package/dist/encoding/Base64Url.d.ts.map +1 -1
  372. package/dist/encoding/Base64Url.js +3 -2
  373. package/dist/encoding/Base64Url.js.map +1 -1
  374. package/dist/encoding/Csv.d.ts +608 -0
  375. package/dist/encoding/Csv.d.ts.map +1 -0
  376. package/dist/encoding/Csv.js +718 -0
  377. package/dist/encoding/Csv.js.map +1 -0
  378. package/dist/encoding/Hex.d.ts +3 -2
  379. package/dist/encoding/Hex.d.ts.map +1 -1
  380. package/dist/encoding/Hex.js +3 -2
  381. package/dist/encoding/Hex.js.map +1 -1
  382. package/dist/encoding/SchemaBinary.d.ts.map +1 -1
  383. package/dist/encoding/SchemaBinary.js +42 -4
  384. package/dist/encoding/SchemaBinary.js.map +1 -1
  385. package/dist/encoding/Sse.d.ts.map +1 -1
  386. package/dist/encoding/Sse.js +3 -3
  387. package/dist/encoding/Sse.js.map +1 -1
  388. package/dist/encoding/Toml.d.ts +17 -3
  389. package/dist/encoding/Toml.d.ts.map +1 -1
  390. package/dist/encoding/Toml.js +124 -31
  391. package/dist/encoding/Toml.js.map +1 -1
  392. package/dist/encoding/Yaml.d.ts +8 -1
  393. package/dist/encoding/Yaml.d.ts.map +1 -1
  394. package/dist/encoding/Yaml.js +54 -18
  395. package/dist/encoding/Yaml.js.map +1 -1
  396. package/dist/encoding/index.d.ts +5 -0
  397. package/dist/encoding/index.d.ts.map +1 -1
  398. package/dist/encoding/index.js +5 -0
  399. package/dist/encoding/index.js.map +1 -1
  400. package/dist/eventlog/EventJournal.d.ts.map +1 -1
  401. package/dist/eventlog/EventJournal.js +6 -3
  402. package/dist/eventlog/EventJournal.js.map +1 -1
  403. package/dist/eventlog/EventLog.d.ts +119 -4
  404. package/dist/eventlog/EventLog.d.ts.map +1 -1
  405. package/dist/eventlog/EventLog.js +200 -12
  406. package/dist/eventlog/EventLog.js.map +1 -1
  407. package/dist/eventlog/EventLogEncryption.d.ts +41 -4
  408. package/dist/eventlog/EventLogEncryption.d.ts.map +1 -1
  409. package/dist/eventlog/EventLogEncryption.js +83 -64
  410. package/dist/eventlog/EventLogEncryption.js.map +1 -1
  411. package/dist/eventlog/EventLogMessage.d.ts +279 -0
  412. package/dist/eventlog/EventLogMessage.d.ts.map +1 -1
  413. package/dist/eventlog/EventLogMessage.js +217 -1
  414. package/dist/eventlog/EventLogMessage.js.map +1 -1
  415. package/dist/eventlog/EventLogRemote.d.ts +200 -28
  416. package/dist/eventlog/EventLogRemote.d.ts.map +1 -1
  417. package/dist/eventlog/EventLogRemote.js +186 -16
  418. package/dist/eventlog/EventLogRemote.js.map +1 -1
  419. package/dist/eventlog/EventLogServer.d.ts +3 -0
  420. package/dist/eventlog/EventLogServer.d.ts.map +1 -1
  421. package/dist/eventlog/EventLogServer.js +18 -10
  422. package/dist/eventlog/EventLogServer.js.map +1 -1
  423. package/dist/eventlog/EventLogServerEncrypted.d.ts +326 -5
  424. package/dist/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  425. package/dist/eventlog/EventLogServerEncrypted.js +769 -14
  426. package/dist/eventlog/EventLogServerEncrypted.js.map +1 -1
  427. package/dist/eventlog/EventLogSessionAuth.d.ts +5 -3
  428. package/dist/eventlog/EventLogSessionAuth.d.ts.map +1 -1
  429. package/dist/eventlog/EventLogSessionAuth.js +41 -64
  430. package/dist/eventlog/EventLogSessionAuth.js.map +1 -1
  431. package/dist/eventlog/EventRow.d.ts +4 -0
  432. package/dist/eventlog/EventRow.d.ts.map +1 -1
  433. package/dist/eventlog/EventRow.js +12 -2
  434. package/dist/eventlog/EventRow.js.map +1 -1
  435. package/dist/eventlog/SqlEventJournal.d.ts.map +1 -1
  436. package/dist/eventlog/SqlEventJournal.js +47 -27
  437. package/dist/eventlog/SqlEventJournal.js.map +1 -1
  438. package/dist/eventlog/SqlEventLogServerEncrypted.d.ts +21 -5
  439. package/dist/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
  440. package/dist/eventlog/SqlEventLogServerEncrypted.js +1048 -113
  441. package/dist/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  442. package/dist/eventlog/SqlEventLogServerUnencrypted.js +2 -2
  443. package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  444. package/dist/eventlog/internal/batches.d.ts +12 -0
  445. package/dist/eventlog/internal/batches.d.ts.map +1 -0
  446. package/dist/eventlog/internal/batches.js +26 -0
  447. package/dist/eventlog/internal/batches.js.map +1 -0
  448. package/dist/eventlog/internal/compaction.d.ts +38 -0
  449. package/dist/eventlog/internal/compaction.d.ts.map +1 -0
  450. package/dist/eventlog/internal/compaction.js +33 -0
  451. package/dist/eventlog/internal/compaction.js.map +1 -0
  452. package/dist/eventlog/internal/conflicts.d.ts +0 -1
  453. package/dist/eventlog/internal/conflicts.d.ts.map +1 -1
  454. package/dist/eventlog/internal/conflicts.js +0 -3
  455. package/dist/eventlog/internal/conflicts.js.map +1 -1
  456. package/dist/eventlog/internal/identityRootSecretDerivation.js +66 -67
  457. package/dist/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
  458. package/dist/eventlog/internal/remoteCompaction.d.ts +31 -0
  459. package/dist/eventlog/internal/remoteCompaction.d.ts.map +1 -0
  460. package/dist/eventlog/internal/remoteCompaction.js +76 -0
  461. package/dist/eventlog/internal/remoteCompaction.js.map +1 -0
  462. package/dist/http/Cookies.d.ts +172 -0
  463. package/dist/http/Cookies.d.ts.map +1 -1
  464. package/dist/http/Cookies.js +153 -10
  465. package/dist/http/Cookies.js.map +1 -1
  466. package/dist/http/FetchHttpClient.d.ts +26 -2
  467. package/dist/http/FetchHttpClient.d.ts.map +1 -1
  468. package/dist/http/FetchHttpClient.js +78 -15
  469. package/dist/http/FetchHttpClient.js.map +1 -1
  470. package/dist/http/HttpClient.d.ts +502 -8
  471. package/dist/http/HttpClient.d.ts.map +1 -1
  472. package/dist/http/HttpClient.js +296 -12
  473. package/dist/http/HttpClient.js.map +1 -1
  474. package/dist/http/HttpClientError.d.ts +8 -1
  475. package/dist/http/HttpClientError.d.ts.map +1 -1
  476. package/dist/http/HttpClientError.js +37 -1
  477. package/dist/http/HttpClientError.js.map +1 -1
  478. package/dist/http/HttpClientRequest.d.ts +9 -5
  479. package/dist/http/HttpClientRequest.d.ts.map +1 -1
  480. package/dist/http/HttpClientRequest.js +3 -4
  481. package/dist/http/HttpClientRequest.js.map +1 -1
  482. package/dist/http/HttpClientResponse.d.ts.map +1 -1
  483. package/dist/http/HttpClientResponse.js +3 -2
  484. package/dist/http/HttpClientResponse.js.map +1 -1
  485. package/dist/http/HttpMethod.d.ts +7 -1
  486. package/dist/http/HttpMethod.d.ts.map +1 -1
  487. package/dist/http/HttpMethod.js +3 -8
  488. package/dist/http/HttpMethod.js.map +1 -1
  489. package/dist/http/HttpMiddleware.d.ts +1 -1
  490. package/dist/http/HttpMiddleware.d.ts.map +1 -1
  491. package/dist/http/HttpMiddleware.js +14 -16
  492. package/dist/http/HttpMiddleware.js.map +1 -1
  493. package/dist/http/HttpRouter.d.ts.map +1 -1
  494. package/dist/http/HttpRouter.js +2 -1
  495. package/dist/http/HttpRouter.js.map +1 -1
  496. package/dist/http/HttpServerError.js +2 -2
  497. package/dist/http/HttpServerError.js.map +1 -1
  498. package/dist/http/HttpServerRequest.d.ts +11 -3
  499. package/dist/http/HttpServerRequest.d.ts.map +1 -1
  500. package/dist/http/HttpServerRequest.js +77 -25
  501. package/dist/http/HttpServerRequest.js.map +1 -1
  502. package/dist/http/HttpServerResponse.d.ts.map +1 -1
  503. package/dist/http/HttpServerResponse.js +3 -2
  504. package/dist/http/HttpServerResponse.js.map +1 -1
  505. package/dist/http/HttpStaticServer.d.ts.map +1 -1
  506. package/dist/http/HttpStaticServer.js +48 -21
  507. package/dist/http/HttpStaticServer.js.map +1 -1
  508. package/dist/http/HttpTraceContext.d.ts +2 -1
  509. package/dist/http/HttpTraceContext.d.ts.map +1 -1
  510. package/dist/http/HttpTraceContext.js +7 -5
  511. package/dist/http/HttpTraceContext.js.map +1 -1
  512. package/dist/http/MultipartParser/internal/contentType.js +3 -3
  513. package/dist/http/ProblemDetails.d.ts +96 -0
  514. package/dist/http/ProblemDetails.d.ts.map +1 -0
  515. package/dist/http/ProblemDetails.js +98 -0
  516. package/dist/http/ProblemDetails.js.map +1 -0
  517. package/dist/http/UrlParams.d.ts +3 -1
  518. package/dist/http/UrlParams.d.ts.map +1 -1
  519. package/dist/http/UrlParams.js +4 -2
  520. package/dist/http/UrlParams.js.map +1 -1
  521. package/dist/http/index.d.ts +5 -0
  522. package/dist/http/index.d.ts.map +1 -1
  523. package/dist/http/index.js +5 -0
  524. package/dist/http/index.js.map +1 -1
  525. package/dist/http/internal/compression.js +4 -5
  526. package/dist/http/internal/compression.js.map +1 -1
  527. package/dist/http/internal/decompression.js +6 -2
  528. package/dist/http/internal/decompression.js.map +1 -1
  529. package/dist/http/internal/httpBody.js +8 -1
  530. package/dist/http/internal/httpBody.js.map +1 -1
  531. package/dist/http/internal/urlParams.js +33 -0
  532. package/dist/http/internal/urlParams.js.map +1 -1
  533. package/dist/http-api/HttpApi.d.ts +3 -6
  534. package/dist/http-api/HttpApi.d.ts.map +1 -1
  535. package/dist/http-api/HttpApi.js +3 -6
  536. package/dist/http-api/HttpApi.js.map +1 -1
  537. package/dist/http-api/HttpApiBuilder.d.ts.map +1 -1
  538. package/dist/http-api/HttpApiBuilder.js +43 -13
  539. package/dist/http-api/HttpApiBuilder.js.map +1 -1
  540. package/dist/http-api/HttpApiClient.d.ts +140 -7
  541. package/dist/http-api/HttpApiClient.d.ts.map +1 -1
  542. package/dist/http-api/HttpApiClient.js +193 -44
  543. package/dist/http-api/HttpApiClient.js.map +1 -1
  544. package/dist/http-api/HttpApiEndpoint.d.ts +24 -7
  545. package/dist/http-api/HttpApiEndpoint.d.ts.map +1 -1
  546. package/dist/http-api/HttpApiEndpoint.js +123 -32
  547. package/dist/http-api/HttpApiEndpoint.js.map +1 -1
  548. package/dist/http-api/HttpApiError.d.ts +185 -13
  549. package/dist/http-api/HttpApiError.d.ts.map +1 -1
  550. package/dist/http-api/HttpApiError.js +128 -0
  551. package/dist/http-api/HttpApiError.js.map +1 -1
  552. package/dist/http-api/HttpApiMiddleware.d.ts +64 -17
  553. package/dist/http-api/HttpApiMiddleware.d.ts.map +1 -1
  554. package/dist/http-api/HttpApiMiddleware.js +85 -1
  555. package/dist/http-api/HttpApiMiddleware.js.map +1 -1
  556. package/dist/http-api/HttpApiSchema.d.ts +142 -33
  557. package/dist/http-api/HttpApiSchema.d.ts.map +1 -1
  558. package/dist/http-api/HttpApiSchema.js +123 -59
  559. package/dist/http-api/HttpApiSchema.js.map +1 -1
  560. package/dist/http-api/HttpApiTest.d.ts.map +1 -1
  561. package/dist/http-api/HttpApiTest.js +3 -2
  562. package/dist/http-api/HttpApiTest.js.map +1 -1
  563. package/dist/http-api/OpenApi.d.ts.map +1 -1
  564. package/dist/http-api/OpenApi.js +25 -16
  565. package/dist/http-api/OpenApi.js.map +1 -1
  566. package/dist/http-api/internal/toCodecHttpProperties.d.ts +2 -0
  567. package/dist/http-api/internal/toCodecHttpProperties.d.ts.map +1 -0
  568. package/dist/http-api/internal/toCodecHttpProperties.js +38 -0
  569. package/dist/http-api/internal/toCodecHttpProperties.js.map +1 -0
  570. package/dist/index.d.ts +5 -5
  571. package/dist/index.d.ts.map +1 -1
  572. package/dist/index.js +5 -5
  573. package/dist/index.js.map +1 -1
  574. package/dist/internal/arbitrary/runner.d.ts.map +1 -1
  575. package/dist/internal/arbitrary/runner.js +120 -44
  576. package/dist/internal/arbitrary/runner.js.map +1 -1
  577. package/dist/internal/core.js +2 -0
  578. package/dist/internal/core.js.map +1 -1
  579. package/dist/internal/effect.js +46 -27
  580. package/dist/internal/effect.js.map +1 -1
  581. package/dist/internal/equal.js +14 -0
  582. package/dist/internal/equal.js.map +1 -1
  583. package/dist/internal/glob.d.ts +2 -0
  584. package/dist/internal/glob.d.ts.map +1 -0
  585. package/dist/internal/glob.js +630 -0
  586. package/dist/internal/glob.js.map +1 -0
  587. package/dist/internal/jsonSchema.d.ts +2 -0
  588. package/dist/internal/jsonSchema.d.ts.map +1 -0
  589. package/dist/internal/jsonSchema.js +28 -0
  590. package/dist/internal/jsonSchema.js.map +1 -0
  591. package/dist/internal/matcher.js +11 -1
  592. package/dist/internal/matcher.js.map +1 -1
  593. package/dist/internal/persistence.js +9 -0
  594. package/dist/internal/persistence.js.map +1 -1
  595. package/dist/internal/rcRef.js +4 -1
  596. package/dist/internal/rcRef.js.map +1 -1
  597. package/dist/internal/schema/compilerRegistry.js +4 -1
  598. package/dist/internal/schema/compilerRegistry.js.map +1 -1
  599. package/dist/internal/schema/content.d.ts +2 -0
  600. package/dist/internal/schema/content.d.ts.map +1 -0
  601. package/dist/internal/schema/content.js +13 -0
  602. package/dist/internal/schema/content.js.map +1 -0
  603. package/dist/internal/schema/fromJsonSchemaDocument.js +173 -185
  604. package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
  605. package/dist/internal/schema/fromRepresentation.js +2 -1
  606. package/dist/internal/schema/fromRepresentation.js.map +1 -1
  607. package/dist/internal/schema/standardSchema.js +8 -2
  608. package/dist/internal/schema/standardSchema.js.map +1 -1
  609. package/dist/internal/schema/toCodeDocument.js +9 -6
  610. package/dist/internal/schema/toCodeDocument.js.map +1 -1
  611. package/dist/internal/schema/toCodec.js +21 -24
  612. package/dist/internal/schema/toCodec.js.map +1 -1
  613. package/dist/internal/schema/toJsonSchemaDocument.js +205 -140
  614. package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
  615. package/dist/internal/schema/toRepresentation.js +107 -129
  616. package/dist/internal/schema/toRepresentation.js.map +1 -1
  617. package/dist/internal/sql.d.ts +2 -0
  618. package/dist/internal/sql.d.ts.map +1 -0
  619. package/dist/internal/sql.js +13 -0
  620. package/dist/internal/sql.js.map +1 -0
  621. package/dist/internal/trie.js +42 -13
  622. package/dist/internal/trie.js.map +1 -1
  623. package/dist/internal/ulid.js +41 -0
  624. package/dist/internal/ulid.js.map +1 -1
  625. package/dist/internal/uuid.js +52 -8
  626. package/dist/internal/uuid.js.map +1 -1
  627. package/dist/internal/version.js +1 -1
  628. package/dist/observability/Otlp.d.ts +15 -4
  629. package/dist/observability/Otlp.d.ts.map +1 -1
  630. package/dist/observability/Otlp.js +10 -0
  631. package/dist/observability/Otlp.js.map +1 -1
  632. package/dist/observability/OtlpProxy.d.ts +154 -0
  633. package/dist/observability/OtlpProxy.d.ts.map +1 -0
  634. package/dist/observability/OtlpProxy.js +235 -0
  635. package/dist/observability/OtlpProxy.js.map +1 -0
  636. package/dist/observability/OtlpResource.d.ts +7 -0
  637. package/dist/observability/OtlpResource.d.ts.map +1 -1
  638. package/dist/observability/OtlpResource.js +11 -1
  639. package/dist/observability/OtlpResource.js.map +1 -1
  640. package/dist/observability/OtlpTracer.d.ts.map +1 -1
  641. package/dist/observability/OtlpTracer.js +4 -0
  642. package/dist/observability/OtlpTracer.js.map +1 -1
  643. package/dist/observability/index.d.ts +5 -0
  644. package/dist/observability/index.d.ts.map +1 -1
  645. package/dist/observability/index.js +5 -0
  646. package/dist/observability/index.js.map +1 -1
  647. package/dist/persistence/CircuitBreaker.d.ts +897 -0
  648. package/dist/persistence/CircuitBreaker.d.ts.map +1 -0
  649. package/dist/persistence/CircuitBreaker.js +1165 -0
  650. package/dist/persistence/CircuitBreaker.js.map +1 -0
  651. package/dist/persistence/KeyValueStore.d.ts +47 -2
  652. package/dist/persistence/KeyValueStore.d.ts.map +1 -1
  653. package/dist/persistence/KeyValueStore.js +129 -18
  654. package/dist/persistence/KeyValueStore.js.map +1 -1
  655. package/dist/persistence/PersistedQueue.d.ts +9 -0
  656. package/dist/persistence/PersistedQueue.d.ts.map +1 -1
  657. package/dist/persistence/PersistedQueue.js +94 -52
  658. package/dist/persistence/PersistedQueue.js.map +1 -1
  659. package/dist/persistence/Persistence.d.ts +10 -4
  660. package/dist/persistence/Persistence.d.ts.map +1 -1
  661. package/dist/persistence/Persistence.js +18 -11
  662. package/dist/persistence/Persistence.js.map +1 -1
  663. package/dist/persistence/Redis.d.ts +78 -2
  664. package/dist/persistence/Redis.d.ts.map +1 -1
  665. package/dist/persistence/Redis.js +62 -7
  666. package/dist/persistence/Redis.js.map +1 -1
  667. package/dist/persistence/index.d.ts +5 -0
  668. package/dist/persistence/index.d.ts.map +1 -1
  669. package/dist/persistence/index.js +5 -0
  670. package/dist/persistence/index.js.map +1 -1
  671. package/dist/process/ChildProcess.d.ts +237 -71
  672. package/dist/process/ChildProcess.d.ts.map +1 -1
  673. package/dist/process/ChildProcess.js +56 -158
  674. package/dist/process/ChildProcess.js.map +1 -1
  675. package/dist/process/ChildProcessSpawner.d.ts +35 -0
  676. package/dist/process/ChildProcessSpawner.d.ts.map +1 -1
  677. package/dist/process/ChildProcessSpawner.js +5 -2
  678. package/dist/process/ChildProcessSpawner.js.map +1 -1
  679. package/dist/process/CommandLine.d.ts +294 -0
  680. package/dist/process/CommandLine.d.ts.map +1 -0
  681. package/dist/process/CommandLine.js +481 -0
  682. package/dist/process/CommandLine.js.map +1 -0
  683. package/dist/process/index.d.ts +5 -0
  684. package/dist/process/index.d.ts.map +1 -1
  685. package/dist/process/index.js +5 -0
  686. package/dist/process/index.js.map +1 -1
  687. package/dist/reactivity/AsyncResult.d.ts +1 -1
  688. package/dist/reactivity/AsyncResult.d.ts.map +1 -1
  689. package/dist/reactivity/Atom.d.ts +2 -1
  690. package/dist/reactivity/Atom.d.ts.map +1 -1
  691. package/dist/reactivity/Atom.js +3 -4
  692. package/dist/reactivity/Atom.js.map +1 -1
  693. package/dist/reactivity/AtomRegistry.js.map +1 -1
  694. package/dist/rpc/RpcClient.d.ts +16 -1
  695. package/dist/rpc/RpcClient.d.ts.map +1 -1
  696. package/dist/rpc/RpcClient.js +59 -24
  697. package/dist/rpc/RpcClient.js.map +1 -1
  698. package/dist/rpc/RpcMessage.d.ts +10 -1
  699. package/dist/rpc/RpcMessage.d.ts.map +1 -1
  700. package/dist/rpc/RpcMessage.js +1 -0
  701. package/dist/rpc/RpcMessage.js.map +1 -1
  702. package/dist/rpc/RpcSerialization.d.ts +14 -0
  703. package/dist/rpc/RpcSerialization.d.ts.map +1 -1
  704. package/dist/rpc/RpcSerialization.js +26 -8
  705. package/dist/rpc/RpcSerialization.js.map +1 -1
  706. package/dist/rpc/RpcServer.d.ts +31 -0
  707. package/dist/rpc/RpcServer.d.ts.map +1 -1
  708. package/dist/rpc/RpcServer.js +139 -56
  709. package/dist/rpc/RpcServer.js.map +1 -1
  710. package/dist/rpc/RpcTest.d.ts +1 -0
  711. package/dist/rpc/RpcTest.d.ts.map +1 -1
  712. package/dist/rpc/RpcTest.js +1 -0
  713. package/dist/rpc/RpcTest.js.map +1 -1
  714. package/dist/schema/Model.d.ts +14 -0
  715. package/dist/schema/Model.d.ts.map +1 -1
  716. package/dist/schema/Model.js +18 -3
  717. package/dist/schema/Model.js.map +1 -1
  718. package/dist/sql/Migrator.d.ts +2 -20
  719. package/dist/sql/Migrator.d.ts.map +1 -1
  720. package/dist/sql/Migrator.js +13 -55
  721. package/dist/sql/Migrator.js.map +1 -1
  722. package/dist/sql/MigratorFileSystem.d.ts +21 -0
  723. package/dist/sql/MigratorFileSystem.d.ts.map +1 -0
  724. package/dist/sql/MigratorFileSystem.js +57 -0
  725. package/dist/sql/MigratorFileSystem.js.map +1 -0
  726. package/dist/sql/SqlClient.d.ts +9 -4
  727. package/dist/sql/SqlClient.d.ts.map +1 -1
  728. package/dist/sql/SqlClient.js +13 -10
  729. package/dist/sql/SqlClient.js.map +1 -1
  730. package/dist/sql/SqlResolver.d.ts +4 -0
  731. package/dist/sql/SqlResolver.d.ts.map +1 -1
  732. package/dist/sql/SqlResolver.js +18 -4
  733. package/dist/sql/SqlResolver.js.map +1 -1
  734. package/dist/sql/Statement.d.ts +27 -6
  735. package/dist/sql/Statement.d.ts.map +1 -1
  736. package/dist/sql/Statement.js +21 -15
  737. package/dist/sql/Statement.js.map +1 -1
  738. package/dist/sql/index.js +1 -1
  739. package/dist/testing/index.d.ts +0 -5
  740. package/dist/testing/index.d.ts.map +1 -1
  741. package/dist/testing/index.js +0 -5
  742. package/dist/testing/index.js.map +1 -1
  743. package/dist/workflow/DurableDeferred.d.ts.map +1 -1
  744. package/dist/workflow/DurableDeferred.js +21 -2
  745. package/dist/workflow/DurableDeferred.js.map +1 -1
  746. package/dist/workflow/internal/crypto.js +9 -8
  747. package/dist/workflow/internal/crypto.js.map +1 -1
  748. package/package.json +3 -1
  749. package/src/Arbitrary.ts +10 -2
  750. package/src/BigDecimal.ts +3 -0
  751. package/src/Channel.ts +64 -29
  752. package/src/Config.ts +7 -1
  753. package/src/Context.ts +34 -10
  754. package/src/Cron.ts +178 -29
  755. package/src/Data.ts +60 -265
  756. package/src/Duration.ts +140 -0
  757. package/src/Effect.ts +915 -86
  758. package/src/Equal.ts +8 -1
  759. package/src/Exit.ts +3 -3
  760. package/src/FileSystem.ts +65 -4
  761. package/src/Formatter.ts +28 -13
  762. package/src/Glob.ts +205 -0
  763. package/src/Hash.ts +4 -1
  764. package/src/JsonPatch.ts +4 -0
  765. package/src/JsonSchema.ts +12 -40
  766. package/src/Match.ts +127 -0
  767. package/src/Metric.ts +3 -3
  768. package/src/MutableList.ts +7 -5
  769. package/src/MutableRef.ts +8 -1
  770. package/src/PartitionedSemaphore.ts +24 -13
  771. package/src/Pool.ts +182 -52
  772. package/src/PubSub.ts +5 -6
  773. package/src/Random.ts +3 -3
  774. package/src/RcMap.ts +5 -1
  775. package/src/Ref.ts +8 -0
  776. package/src/Schedule.ts +27 -4
  777. package/src/Schema.ts +1237 -87
  778. package/src/SchemaAST.ts +20 -20
  779. package/src/SchemaGetter.ts +27 -11
  780. package/src/SchemaParser.ts +51 -18
  781. package/src/SchemaRepresentation.ts +50 -34
  782. package/src/SchemaTransformation.ts +17 -5
  783. package/src/ScopedCache.ts +5 -9
  784. package/src/Semaphore.ts +208 -40
  785. package/src/Sink.ts +15 -2
  786. package/src/Stream.ts +48 -22
  787. package/src/String.ts +3 -0
  788. package/src/Terminal.ts +19 -1
  789. package/src/Tracer.ts +15 -1
  790. package/src/ai/AiError.ts +56 -80
  791. package/src/ai/Decision.ts +257 -6
  792. package/src/ai/DecisionModel.ts +171 -28
  793. package/src/ai/LanguageModel.ts +9 -0
  794. package/src/ai/McpServer.ts +1283 -299
  795. package/src/ai/McpTest.ts +380 -0
  796. package/src/ai/Prompt.ts +65 -0
  797. package/src/ai/Response.ts +36 -31
  798. package/src/ai/Tool.ts +65 -10
  799. package/src/ai/Toolkit.ts +4 -1
  800. package/src/ai/index.ts +6 -0
  801. package/src/ai/internal/mcpCore.ts +78 -44
  802. package/src/ai/internal/mcpProtocol/v2024_11_05.ts +4 -7
  803. package/src/ai/internal/mcpProtocol/v2025_03_26.ts +4 -7
  804. package/src/ai/internal/mcpProtocol/v2025_06_18.ts +4 -7
  805. package/src/ai/internal/mcpProtocol/v2025_11_25.ts +4 -7
  806. package/src/ai/internal/mcpProtocol/v2026_07_28.ts +15 -10
  807. package/src/ai/internal/mcpProtocol.ts +29 -0
  808. package/src/ai/internal/mcpRuntime.ts +9 -5
  809. package/src/ai/internal/mcpStatefulRuntime.ts +14 -2
  810. package/src/cli/Argument.ts +21 -0
  811. package/src/cli/CliError.ts +90 -3
  812. package/src/cli/CliOutput.ts +300 -55
  813. package/src/cli/Command.ts +76 -41
  814. package/src/cli/Completions.ts +51 -0
  815. package/src/cli/Flag.ts +122 -0
  816. package/src/cli/GlobalFlag.ts +6 -7
  817. package/src/cli/HelpDoc.ts +18 -1
  818. package/src/cli/Param.ts +35 -6
  819. package/src/cli/Primitive.ts +16 -1
  820. package/src/cli/Prompt.ts +1 -0
  821. package/src/cli/TerminalCapabilities.ts +6 -3
  822. package/src/cli/internal/completions/bash.ts +79 -29
  823. package/src/cli/internal/help.ts +21 -9
  824. package/src/cluster/ClusterWorkflowEngine.ts +46 -16
  825. package/src/cluster/MessageStorage.ts +19 -14
  826. package/src/cluster/Sharding.ts +176 -47
  827. package/src/cluster/ShardingConfig.ts +43 -0
  828. package/src/cluster/SingleRunner.ts +3 -3
  829. package/src/cluster/Snowflake.ts +3 -7
  830. package/src/cluster/SqlMessageStorage.ts +49 -17
  831. package/src/cluster/SqlRunnerStorage.ts +143 -70
  832. package/src/cluster/internal/entityManager.ts +75 -22
  833. package/src/crypto/Aead.ts +517 -0
  834. package/src/crypto/Cipher.ts +326 -0
  835. package/src/crypto/CryptoError.ts +242 -0
  836. package/src/crypto/Digest.ts +167 -0
  837. package/src/crypto/Kdf.ts +315 -0
  838. package/src/crypto/KeyAgreement.ts +489 -0
  839. package/src/crypto/KeyFormat.ts +712 -0
  840. package/src/crypto/KeyWrap.ts +639 -0
  841. package/src/crypto/Mac.ts +386 -0
  842. package/src/crypto/SecureRandom.ts +459 -0
  843. package/src/crypto/Signature.ts +673 -0
  844. package/src/crypto/WebCrypto.ts +64 -0
  845. package/src/crypto/index.ts +78 -0
  846. package/src/crypto/internal/asymmetric.ts +329 -0
  847. package/src/crypto/internal/chacha.ts +1088 -0
  848. package/src/crypto/internal/der.ts +110 -0
  849. package/src/crypto/internal/digest.ts +16 -0
  850. package/src/crypto/internal/key.ts +235 -0
  851. package/src/crypto/internal/md5.ts +170 -0
  852. package/src/crypto/internal/webCrypto.ts +150 -0
  853. package/src/devtools/DevToolsClient.ts +2 -0
  854. package/src/encoding/Base64.ts +38 -0
  855. package/src/encoding/Base64Url.ts +5 -2
  856. package/src/encoding/Csv.ts +1298 -0
  857. package/src/encoding/Hex.ts +3 -2
  858. package/src/encoding/SchemaBinary.ts +40 -4
  859. package/src/encoding/Sse.ts +4 -3
  860. package/src/encoding/Toml.ts +117 -35
  861. package/src/encoding/Yaml.ts +61 -18
  862. package/src/encoding/index.ts +6 -0
  863. package/src/eventlog/EventJournal.ts +4 -3
  864. package/src/eventlog/EventLog.ts +340 -15
  865. package/src/eventlog/EventLogEncryption.ts +118 -110
  866. package/src/eventlog/EventLogMessage.ts +273 -1
  867. package/src/eventlog/EventLogRemote.ts +367 -23
  868. package/src/eventlog/EventLogServer.ts +23 -8
  869. package/src/eventlog/EventLogServerEncrypted.ts +1130 -67
  870. package/src/eventlog/EventLogSessionAuth.ts +56 -70
  871. package/src/eventlog/EventRow.ts +12 -3
  872. package/src/eventlog/SqlEventJournal.ts +68 -45
  873. package/src/eventlog/SqlEventLogServerEncrypted.ts +1244 -136
  874. package/src/eventlog/SqlEventLogServerUnencrypted.ts +2 -2
  875. package/src/eventlog/internal/batches.ts +30 -0
  876. package/src/eventlog/internal/compaction.ts +64 -0
  877. package/src/eventlog/internal/conflicts.ts +0 -4
  878. package/src/eventlog/internal/identityRootSecretDerivation.ts +93 -123
  879. package/src/eventlog/internal/remoteCompaction.ts +92 -0
  880. package/src/http/Cookies.ts +291 -12
  881. package/src/http/FetchHttpClient.ts +88 -16
  882. package/src/http/HttpClient.ts +636 -29
  883. package/src/http/HttpClientError.ts +35 -1
  884. package/src/http/HttpClientRequest.ts +21 -10
  885. package/src/http/HttpClientResponse.ts +3 -2
  886. package/src/http/HttpMethod.ts +10 -2
  887. package/src/http/HttpMiddleware.ts +15 -18
  888. package/src/http/HttpRouter.ts +2 -1
  889. package/src/http/HttpServerError.ts +2 -2
  890. package/src/http/HttpServerRequest.ts +101 -30
  891. package/src/http/HttpServerResponse.ts +3 -2
  892. package/src/http/HttpStaticServer.ts +51 -22
  893. package/src/http/HttpTraceContext.ts +7 -4
  894. package/src/http/MultipartParser/internal/contentType.ts +3 -3
  895. package/src/http/ProblemDetails.ts +149 -0
  896. package/src/http/UrlParams.ts +6 -1
  897. package/src/http/index.ts +6 -0
  898. package/src/http/internal/compression.ts +4 -5
  899. package/src/http/internal/decompression.ts +10 -4
  900. package/src/http/internal/httpBody.ts +10 -2
  901. package/src/http/internal/urlParams.ts +37 -0
  902. package/src/http-api/HttpApi.ts +3 -6
  903. package/src/http-api/HttpApiBuilder.ts +61 -19
  904. package/src/http-api/HttpApiClient.ts +284 -72
  905. package/src/http-api/HttpApiEndpoint.ts +135 -35
  906. package/src/http-api/HttpApiError.ts +250 -0
  907. package/src/http-api/HttpApiMiddleware.ts +95 -1
  908. package/src/http-api/HttpApiSchema.ts +236 -52
  909. package/src/http-api/HttpApiTest.ts +3 -2
  910. package/src/http-api/OpenApi.ts +20 -17
  911. package/src/http-api/internal/toCodecHttpProperties.ts +56 -0
  912. package/src/index.ts +6 -6
  913. package/src/internal/arbitrary/runner.ts +133 -36
  914. package/src/internal/core.ts +2 -0
  915. package/src/internal/effect.ts +58 -34
  916. package/src/internal/equal.ts +17 -0
  917. package/src/internal/glob.ts +736 -0
  918. package/src/internal/jsonSchema.ts +27 -0
  919. package/src/internal/matcher.ts +18 -1
  920. package/src/internal/persistence.ts +11 -0
  921. package/src/internal/rcRef.ts +4 -1
  922. package/src/internal/schema/compilerRegistry.ts +6 -1
  923. package/src/internal/schema/content.ts +18 -0
  924. package/src/internal/schema/fromJsonSchemaDocument.ts +228 -190
  925. package/src/internal/schema/fromRepresentation.ts +2 -1
  926. package/src/internal/schema/standardSchema.ts +2 -2
  927. package/src/internal/schema/toCodeDocument.ts +11 -7
  928. package/src/internal/schema/toCodec.ts +26 -22
  929. package/src/internal/schema/toJsonSchemaDocument.ts +189 -167
  930. package/src/internal/schema/toRepresentation.ts +122 -140
  931. package/src/internal/sql.ts +14 -0
  932. package/src/internal/trie.ts +43 -14
  933. package/src/internal/ulid.ts +44 -0
  934. package/src/internal/uuid.ts +57 -16
  935. package/src/internal/version.ts +1 -1
  936. package/src/observability/Otlp.ts +21 -4
  937. package/src/observability/OtlpProxy.ts +314 -0
  938. package/src/observability/OtlpResource.ts +9 -1
  939. package/src/observability/OtlpTracer.ts +4 -0
  940. package/src/observability/index.ts +6 -0
  941. package/src/persistence/CircuitBreaker.ts +1678 -0
  942. package/src/persistence/KeyValueStore.ts +219 -22
  943. package/src/persistence/PersistedQueue.ts +128 -59
  944. package/src/persistence/Persistence.ts +20 -13
  945. package/src/persistence/Redis.ts +129 -8
  946. package/src/persistence/index.ts +6 -0
  947. package/src/process/ChildProcess.ts +285 -264
  948. package/src/process/ChildProcessSpawner.ts +46 -2
  949. package/src/process/CommandLine.ts +630 -0
  950. package/src/process/index.ts +6 -0
  951. package/src/reactivity/AsyncResult.ts +1 -1
  952. package/src/reactivity/Atom.ts +5 -5
  953. package/src/reactivity/AtomRegistry.ts +1 -1
  954. package/src/rpc/RpcClient.ts +75 -36
  955. package/src/rpc/RpcMessage.ts +10 -1
  956. package/src/rpc/RpcSerialization.ts +35 -9
  957. package/src/rpc/RpcServer.ts +176 -63
  958. package/src/rpc/RpcTest.ts +3 -0
  959. package/src/schema/Model.ts +26 -3
  960. package/src/sql/Migrator.ts +15 -69
  961. package/src/sql/MigratorFileSystem.ts +71 -0
  962. package/src/sql/SqlClient.ts +13 -20
  963. package/src/sql/SqlResolver.ts +23 -9
  964. package/src/sql/Statement.ts +38 -9
  965. package/src/sql/index.ts +1 -1
  966. package/src/testing/index.ts +0 -6
  967. package/src/workflow/DurableDeferred.ts +23 -6
  968. package/src/workflow/internal/crypto.ts +15 -11
  969. package/dist/Crypto.d.ts +0 -244
  970. package/dist/Crypto.d.ts.map +0 -1
  971. package/dist/Crypto.js +0 -139
  972. package/dist/Crypto.js.map +0 -1
  973. package/dist/testing/TestCrypto.d.ts +0 -73
  974. package/dist/testing/TestCrypto.d.ts.map +0 -1
  975. package/dist/testing/TestCrypto.js +0 -87
  976. package/dist/testing/TestCrypto.js.map +0 -1
  977. package/src/Crypto.ts +0 -347
  978. package/src/testing/TestCrypto.ts +0 -94
package/dist/Schema.d.ts CHANGED
@@ -17,6 +17,13 @@ import type * as Brand from "./Brand.ts";
17
17
  import * as ByteSize_ from "./ByteSize.ts";
18
18
  import * as Cause_ from "./Cause.ts";
19
19
  import * as Chunk_ from "./Chunk.ts";
20
+ import * as Aead_ from "./crypto/Aead.ts";
21
+ import * as Cipher_ from "./crypto/Cipher.ts";
22
+ import * as KeyAgreement_ from "./crypto/KeyAgreement.ts";
23
+ import * as KeyFormat_ from "./crypto/KeyFormat.ts";
24
+ import * as KeyWrap_ from "./crypto/KeyWrap.ts";
25
+ import * as Mac_ from "./crypto/Mac.ts";
26
+ import * as Signature_ from "./crypto/Signature.ts";
20
27
  import * as DateTime from "./DateTime.ts";
21
28
  import type { Differ } from "./Differ.ts";
22
29
  import * as Duration_ from "./Duration.ts";
@@ -3315,11 +3322,18 @@ export interface $Record<Key extends Record.Key, Value extends Constraint> exten
3315
3322
  *
3316
3323
  * **Gotchas**
3317
3324
  *
3325
+ * Dynamic records reject value schemas wrapped with {@link optionalKey} or
3326
+ * {@link optional}. Index signatures already allow keys to be absent; use
3327
+ * {@link UndefinedOr} when existing entries may contain `undefined`. Optional
3328
+ * value schemas remain valid for finite literal keys, which become declared
3329
+ * properties.
3330
+ *
3318
3331
  * When decoded or encoded key transformations produce the same property key,
3319
3332
  * sequential parsing applies selected own properties in selection order, so
3320
3333
  * the later selected property overwrites the earlier value. Dynamic key
3321
- * selection always examines own properties. Finite literal keys are declared
3322
- * fields and may therefore be inherited. Output key order is not guaranteed.
3334
+ * selection always examines own properties. Finite literal and enum keys are
3335
+ * declared fields and may therefore be inherited. Output key order is not
3336
+ * guaranteed.
3323
3337
  *
3324
3338
  * **Example** (Defining a string-keyed record of numbers)
3325
3339
  *
@@ -5151,7 +5165,27 @@ type Flatten<Schemas> = Schemas extends readonly [infer Head, ...infer Tail] ? H
5151
5165
  type MatchCasesResult<Cases> = {
5152
5166
  [K in keyof Cases]-?: NonNullable<Cases[K]> extends (...args: Array<any>) => infer R ? R : never;
5153
5167
  }[keyof Cases];
5154
- type MatchOrElseResult<Cases, OrElse extends (...args: Array<any>) => any> = Unify<MatchCasesResult<Cases> | ReturnType<OrElse>>;
5168
+ type MatchOrElseResult<Cases, OrElse> = Unify<MatchCasesResult<Cases> | (OrElse extends (...args: Array<any>) => infer R ? R : never)>;
5169
+ type TaggedUnionMatch<Cases extends Record<PropertyKey, Constraint>, Value> = {
5170
+ <Handlers extends {
5171
+ [K in keyof Cases]: (value: Cases[K]["Type"]) => any;
5172
+ }>(value: Value, cases: Handlers): Unify<ReturnType<Handlers[keyof Cases]>>;
5173
+ <Handlers extends {
5174
+ [K in keyof Cases]: (value: Cases[K]["Type"]) => any;
5175
+ }>(cases: Handlers): (value: Value) => Unify<ReturnType<Handlers[keyof Cases]>>;
5176
+ };
5177
+ type TaggedUnionMatchOrElse<Cases extends Record<PropertyKey, Constraint>, Value, Tag extends PropertyKey> = {
5178
+ <Handlers, OrElse>(value: Value, cases: Handlers & {
5179
+ [K in keyof Cases]?: (value: Cases[K]["Type"]) => any;
5180
+ } & (Exclude<keyof Handlers, keyof Cases> extends never ? unknown : never), orElse: OrElse & ((value: Exclude<Value, {
5181
+ readonly [K in Tag]: keyof Handlers;
5182
+ }>) => any)): MatchOrElseResult<Handlers, OrElse>;
5183
+ <Handlers, OrElse>(cases: Handlers & {
5184
+ [K in keyof Cases]?: (value: Cases[K]["Type"]) => any;
5185
+ } & (Exclude<keyof Handlers, keyof Cases> extends never ? unknown : never), orElse: OrElse & ((value: Exclude<Value, {
5186
+ readonly [K in Tag]: keyof Handlers;
5187
+ }>) => any)): (value: Value) => MatchOrElseResult<Handlers, OrElse>;
5188
+ };
5155
5189
  type TaggedUnionUtils<Tag extends PropertyKey, Members extends ReadonlyArray<Constraint & {
5156
5190
  readonly Type: {
5157
5191
  readonly [K in Tag]: PropertyKey;
@@ -5180,30 +5214,12 @@ type TaggedUnionUtils<Tag extends PropertyKey, Members extends ReadonlyArray<Con
5180
5214
  readonly guards: {
5181
5215
  [M in Flattened[number] as M["Type"][Tag]]: (u: unknown) => u is M["Type"];
5182
5216
  };
5183
- readonly match: {
5184
- <Cases extends {
5185
- [M in Flattened[number] as M["Type"][Tag]]: (value: M["Type"]) => any;
5186
- }>(value: Members[number]["Type"], cases: Cases): Cases[keyof Cases] extends (value: any) => infer R ? Unify<R> : never;
5187
- <Cases extends {
5188
- [M in Flattened[number] as M["Type"][Tag]]: (value: M["Type"]) => any;
5189
- }>(cases: Cases): (value: Members[number]["Type"]) => Cases[keyof Cases] extends (value: any) => infer R ? Unify<R> : never;
5190
- };
5191
- readonly matchOrElse: {
5192
- <Cases extends {
5193
- [M in Flattened[number] as M["Type"][Tag]]+?: (value: M["Type"]) => any;
5194
- } & {
5195
- [K in Exclude<keyof Cases, Flattened[number]["Type"][Tag]>]: never;
5196
- }, OrElse extends (value: Exclude<Members[number]["Type"], {
5197
- readonly [K in Tag]: keyof Cases;
5198
- }>) => any>(value: Members[number]["Type"], cases: Cases, orElse: OrElse): MatchOrElseResult<Cases, OrElse>;
5199
- <Cases extends {
5200
- [M in Flattened[number] as M["Type"][Tag]]+?: (value: M["Type"]) => any;
5201
- } & {
5202
- [K in Exclude<keyof Cases, Flattened[number]["Type"][Tag]>]: never;
5203
- }, OrElse extends (value: Exclude<Members[number]["Type"], {
5204
- readonly [K in Tag]: keyof Cases;
5205
- }>) => any>(cases: Cases, orElse: OrElse): (value: Members[number]["Type"]) => MatchOrElseResult<Cases, OrElse>;
5206
- };
5217
+ readonly match: TaggedUnionMatch<{
5218
+ readonly [M in Flattened[number] as M["Type"][Tag]]: M;
5219
+ }, Members[number]["Type"]>;
5220
+ readonly matchOrElse: TaggedUnionMatchOrElse<{
5221
+ readonly [M in Flattened[number] as M["Type"][Tag]]: M;
5222
+ }, Members[number]["Type"], Tag>;
5207
5223
  };
5208
5224
  /**
5209
5225
  * Type-level representation returned by {@link toTaggedUnion}.
@@ -5290,22 +5306,8 @@ export interface TaggedUnion<Cases extends Record<string, Constraint>> extends B
5290
5306
  readonly guards: {
5291
5307
  [K in keyof Cases]: (u: unknown) => u is Cases[K]["Type"];
5292
5308
  };
5293
- readonly match: {
5294
- <Output>(cases: {
5295
- [K in keyof Cases]: (value: Cases[K]["Type"]) => Output;
5296
- }): (value: Cases[keyof Cases]["Type"]) => Output;
5297
- <Output>(value: Cases[keyof Cases]["Type"], cases: {
5298
- [K in keyof Cases]: (value: Cases[K]["Type"]) => Output;
5299
- }): Output;
5300
- };
5301
- readonly matchOrElse: {
5302
- <Output>(value: Cases[keyof Cases]["Type"], cases: {
5303
- [K in keyof Cases]?: (value: Cases[K]["Type"]) => Output;
5304
- }, orElse: (value: Cases[keyof Cases]["Type"]) => Output): Output;
5305
- <Output>(cases: {
5306
- [K in keyof Cases]?: (value: Cases[K]["Type"]) => Output;
5307
- }, orElse: (value: Cases[keyof Cases]["Type"]) => Output): (value: Cases[keyof Cases]["Type"]) => Output;
5308
- };
5309
+ readonly match: TaggedUnionMatch<Cases, Cases[keyof Cases]["Type"]>;
5310
+ readonly matchOrElse: TaggedUnionMatchOrElse<Cases, Cases[keyof Cases]["Type"], "_tag">;
5309
5311
  }
5310
5312
  /**
5311
5313
  * Builds a discriminated union from a record of field sets, one per variant.
@@ -5451,9 +5453,8 @@ export declare function link<T>(): <To extends Constraint>(encodeTo: To, transfo
5451
5453
  * )
5452
5454
  *
5453
5455
  * const result = Schema.decodeUnknownResult(schema)({ password: "123456", confirmPassword: "1234567" })
5454
- * if (Result.isFailure(result) && result.failure.issue._tag === "Filter" && result.failure.issue.issue._tag === "Pointer") {
5455
- * result.failure.issue.issue.path // => ["password"]
5456
- * }
5456
+ * const message = Result.isFailure(result) ? result.failure.message : ""
5457
+ * message // => "password and confirmPassword must match\n at [\"password\"]"
5457
5458
  * ```
5458
5459
  *
5459
5460
  * **Example** (Reporting multiple failures at once)
@@ -5473,9 +5474,8 @@ export declare function link<T>(): <To extends Constraint>(encodeTo: To, transfo
5473
5474
  * )
5474
5475
  *
5475
5476
  * const result = Schema.decodeUnknownResult(schema)({ a: 1, b: 0, c: 0 })
5476
- * if (Result.isFailure(result) && result.failure.issue._tag === "Filter" && result.failure.issue.issue._tag === "Composite") {
5477
- * result.failure.issue.issue.issues.map((issue) => issue._tag === "Pointer" ? issue.path : []) // => [["b"], ["c"]]
5478
- * }
5477
+ * const message = Result.isFailure(result) ? result.failure.message : ""
5478
+ * message // => "b must be greater than 0\n at [\"b\"]\nc must be greater than 0\n at [\"c\"]"
5479
5479
  * ```
5480
5480
  *
5481
5481
  * @stability stable
@@ -5699,6 +5699,9 @@ export declare function isGUID(annotations?: Annotations.Filter): SchemaAST.Filt
5699
5699
  *
5700
5700
  * **Details**
5701
5701
  *
5702
+ * Accepts uppercase and lowercase characters. The first character must be
5703
+ * between `0` and `7` so the value fits in 128 bits.
5704
+ *
5702
5705
  * JSON Schema:
5703
5706
  *
5704
5707
  * This check corresponds to a `pattern` constraint in JSON Schema that matches
@@ -5714,6 +5717,35 @@ export declare function isGUID(annotations?: Annotations.Filter): SchemaAST.Filt
5714
5717
  * @since 4.0.0
5715
5718
  */
5716
5719
  export declare function isULID(annotations?: Annotations.Filter): SchemaAST.Filter<string>;
5720
+ /**
5721
+ * Validates that a string contains only ASCII characters.
5722
+ *
5723
+ * **When to use**
5724
+ *
5725
+ * Use when a value must stay within the 7-bit ASCII range, for example
5726
+ * identifiers, protocol tokens, or data sent to systems that reject
5727
+ * non-ASCII input.
5728
+ *
5729
+ * **Details**
5730
+ *
5731
+ * This check accepts strings whose characters are all in the range `U+0000`
5732
+ * to `U+007F`, including control characters and the empty string.
5733
+ *
5734
+ * JSON Schema:
5735
+ *
5736
+ * This check corresponds to a `pattern` constraint in JSON Schema that matches
5737
+ * ASCII-only strings.
5738
+ *
5739
+ * Arbitrary:
5740
+ *
5741
+ * During arbitrary generation, this applies a `patterns`
5742
+ * constraint to ensure generated strings match the ASCII pattern.
5743
+ *
5744
+ * @stability unstable
5745
+ * @category validation
5746
+ * @since 4.0.6
5747
+ */
5748
+ export declare function isAscii(annotations?: Annotations.Filter): SchemaAST.Filter<string>;
5717
5749
  /**
5718
5750
  * Validates that a string is valid Base64 encoded data.
5719
5751
  *
@@ -9868,6 +9900,38 @@ export interface DurationFromMillis extends decodeTo<Duration, Number> {
9868
9900
  * @since 3.10.0
9869
9901
  */
9870
9902
  export declare const DurationFromMillis: DurationFromMillis;
9903
+ /**
9904
+ * Type-level representation of {@link DurationFromIsoString}.
9905
+ *
9906
+ * @stability stable
9907
+ * @category models
9908
+ * @since 4.1.0
9909
+ */
9910
+ export interface DurationFromIsoString extends decodeTo<Duration, String> {
9911
+ readonly "Rebuild": DurationFromIsoString;
9912
+ }
9913
+ /**
9914
+ * Schema that decodes an ISO 8601 duration string into a `Duration`.
9915
+ *
9916
+ * **Details**
9917
+ *
9918
+ * Decoding:
9919
+ * - A string accepted by `Duration.fromIso` is decoded as a `Duration`, such
9920
+ * as `"PT1H30M"`, `"P1W2D"`, or `"-PT0.5S"`. Years and months are rejected
9921
+ * because they have no fixed length.
9922
+ *
9923
+ * Encoding:
9924
+ * - A finite `Duration` is encoded with `Duration.formatIso`, using days,
9925
+ * hours, minutes, and seconds. Encoding fails for `Duration.infinity` and
9926
+ * `Duration.negativeInfinity`.
9927
+ *
9928
+ * @see {@link DurationFromString} for the `"5 seconds"` string format
9929
+ *
9930
+ * @stability stable
9931
+ * @category schemas
9932
+ * @since 4.1.0
9933
+ */
9934
+ export declare const DurationFromIsoString: DurationFromIsoString;
9871
9935
  /**
9872
9936
  * Type-level representation of {@link DnsRecordType}.
9873
9937
  *
@@ -10146,6 +10210,575 @@ export interface DnsRecord extends Union<readonly [
10146
10210
  * @since 4.0.0
10147
10211
  */
10148
10212
  export declare const DnsRecord: DnsRecord;
10213
+ type CryptoKeyOptions = {
10214
+ readonly allowEncode?: boolean | undefined;
10215
+ };
10216
+ /**
10217
+ * Type-level representation of {@link MacKey}.
10218
+ *
10219
+ * @stability unstable
10220
+ * @category models
10221
+ * @since 4.0.0
10222
+ */
10223
+ export interface MacKey<A extends Mac_.Algorithm = Mac_.Algorithm> extends declare<Mac_.Key<A>> {
10224
+ readonly "Rebuild": MacKey<A>;
10225
+ }
10226
+ /**
10227
+ * Schema for live `Mac.Key` values of an algorithm.
10228
+ *
10229
+ * **Details**
10230
+ *
10231
+ * Decoding checks the key's algorithm and returns the key itself. The key has
10232
+ * no JSON form: `toCodecJson` fails with a `Forbidden` issue, so use
10233
+ * {@link MacKeyFromFormat} or {@link MacKeyFromBytes} to read and write keys.
10234
+ * Keys display redacted, compare by reference, and have no `Arbitrary`.
10235
+ *
10236
+ * @stability unstable
10237
+ * @category crypto
10238
+ * @since 4.0.0
10239
+ */
10240
+ export declare const MacKey: <A extends Mac_.Algorithm>(algorithm: A) => MacKey<A>;
10241
+ /**
10242
+ * Schema that decodes raw key bytes into a `Mac.Key`.
10243
+ *
10244
+ * **Details**
10245
+ *
10246
+ * Decoding runs `Mac.key`, which is synchronous, so the schema works with
10247
+ * `Schema.decodeSync`. Under `Config.schema` the bytes are read as base64. A
10248
+ * `CryptoError` becomes an `InvalidValue` issue whose `cause` is the error.
10249
+ * Encoding fails with a `Forbidden` issue unless `allowEncode` is `true`.
10250
+ *
10251
+ * **Example** (Reading an HMAC key from the environment)
10252
+ *
10253
+ * ```ts import.meta.vitest
10254
+ * import { Config, ConfigProvider, Effect, Schema } from "effect"
10255
+ * import { Mac } from "effect/crypto"
10256
+ *
10257
+ * const config = Config.schema(Schema.MacKeyFromBytes(Mac.hmacSha256), "HMAC_KEY")
10258
+ * const provider = ConfigProvider.fromEnv({ env: { HMAC_KEY: "A".repeat(43) + "=" } })
10259
+ * const key = await Effect.runPromise(Effect.provide(config, ConfigProvider.layer(provider)))
10260
+ * key.algorithm.name // => "hmacSha256"
10261
+ * ```
10262
+ *
10263
+ * @stability unstable
10264
+ * @category crypto
10265
+ * @since 4.0.0
10266
+ */
10267
+ export declare const MacKeyFromBytes: <A extends Mac_.Algorithm>(algorithm: A, options?: CryptoKeyOptions) => decodeTo<MacKey<A>, Uint8Array>;
10268
+ /**
10269
+ * Schema that decodes a `Mac.Key` from a JWK with `KeyFormat.decodeSecret`.
10270
+ *
10271
+ * **Details**
10272
+ *
10273
+ * Decoding returns an Effect, so use the async decoding functions:
10274
+ * `Schema.decodeSync` throws. A `CryptoError` becomes an `InvalidValue` issue
10275
+ * whose `cause` is the error. Encoding fails with a `Forbidden` issue unless
10276
+ * `allowEncode` is `true`.
10277
+ *
10278
+ * @stability unstable
10279
+ * @category crypto
10280
+ * @since 4.0.0
10281
+ */
10282
+ export declare const MacKeyFromFormat: <A extends Mac_.Algorithm, Data>(format: KeyFormat_.Format<"secret", "decode", Data>, algorithm: A, options?: CryptoKeyOptions) => decodeTo<MacKey<A>, Codec<Data>>;
10283
+ /**
10284
+ * Type-level representation of {@link AeadKey}.
10285
+ *
10286
+ * @stability unstable
10287
+ * @category models
10288
+ * @since 4.0.0
10289
+ */
10290
+ export interface AeadKey<A extends Aead_.Algorithm = Aead_.Algorithm> extends declare<Aead_.Key<A>> {
10291
+ readonly "Rebuild": AeadKey<A>;
10292
+ }
10293
+ /**
10294
+ * Schema for live `Aead.Key` values of an algorithm.
10295
+ *
10296
+ * **Details**
10297
+ *
10298
+ * Decoding checks the key's algorithm and returns the key itself. The key has
10299
+ * no JSON form: `toCodecJson` fails with a `Forbidden` issue, so use
10300
+ * {@link AeadKeyFromFormat} or {@link AeadKeyFromBytes} to read and write
10301
+ * keys. Keys display redacted, compare by reference, and have no `Arbitrary`.
10302
+ *
10303
+ * @stability unstable
10304
+ * @category crypto
10305
+ * @since 4.0.0
10306
+ */
10307
+ export declare const AeadKey: <A extends Aead_.Algorithm>(algorithm: A) => AeadKey<A>;
10308
+ /**
10309
+ * Schema that decodes raw key bytes into an `Aead.Key`.
10310
+ *
10311
+ * **Details**
10312
+ *
10313
+ * Decoding runs `Aead.key`, which is synchronous, so the schema works with
10314
+ * `Schema.decodeSync`. Under `Config.schema` the bytes are read as base64. A
10315
+ * `CryptoError` becomes an `InvalidValue` issue whose `cause` is the error.
10316
+ * Encoding fails with a `Forbidden` issue unless `allowEncode` is `true`.
10317
+ *
10318
+ * @stability unstable
10319
+ * @category crypto
10320
+ * @since 4.0.0
10321
+ */
10322
+ export declare const AeadKeyFromBytes: <A extends Aead_.Algorithm>(algorithm: A, options?: CryptoKeyOptions) => decodeTo<AeadKey<A>, Uint8Array>;
10323
+ /**
10324
+ * Schema that decodes an `Aead.Key` from a JWK with `KeyFormat.decodeSecret`.
10325
+ *
10326
+ * **Details**
10327
+ *
10328
+ * Decoding returns an Effect, so use the async decoding functions:
10329
+ * `Schema.decodeSync` throws. A `CryptoError` becomes an `InvalidValue` issue
10330
+ * whose `cause` is the error. Encoding fails with a `Forbidden` issue unless
10331
+ * `allowEncode` is `true`.
10332
+ *
10333
+ * @stability unstable
10334
+ * @category crypto
10335
+ * @since 4.0.0
10336
+ */
10337
+ export declare const AeadKeyFromFormat: <A extends Aead_.Algorithm, Data>(format: KeyFormat_.Format<"secret", "decode", Data>, algorithm: A, options?: CryptoKeyOptions) => decodeTo<AeadKey<A>, Codec<Data>>;
10338
+ /**
10339
+ * Type-level representation of {@link CipherKey}.
10340
+ *
10341
+ * @stability unstable
10342
+ * @category models
10343
+ * @since 4.0.0
10344
+ */
10345
+ export interface CipherKey<A extends Cipher_.Algorithm = Cipher_.Algorithm> extends declare<Cipher_.Key<A>> {
10346
+ readonly "Rebuild": CipherKey<A>;
10347
+ }
10348
+ /**
10349
+ * Schema for live `Cipher.Key` values of an algorithm.
10350
+ *
10351
+ * **Details**
10352
+ *
10353
+ * Decoding checks the key's algorithm and returns the key itself. The key has
10354
+ * no JSON form: `toCodecJson` fails with a `Forbidden` issue, so use
10355
+ * {@link CipherKeyFromFormat} or {@link CipherKeyFromBytes} to read and
10356
+ * write keys. Keys display redacted, compare by reference, and have no
10357
+ * `Arbitrary`.
10358
+ *
10359
+ * @stability unstable
10360
+ * @category crypto
10361
+ * @since 4.0.0
10362
+ */
10363
+ export declare const CipherKey: <A extends Cipher_.Algorithm>(algorithm: A) => CipherKey<A>;
10364
+ /**
10365
+ * Schema that decodes raw key bytes into a `Cipher.Key`.
10366
+ *
10367
+ * **Details**
10368
+ *
10369
+ * Decoding runs `Cipher.key`, which is synchronous, so the schema works with
10370
+ * `Schema.decodeSync`. Under `Config.schema` the bytes are read as base64. A
10371
+ * `CryptoError` becomes an `InvalidValue` issue whose `cause` is the error.
10372
+ * Encoding fails with a `Forbidden` issue unless `allowEncode` is `true`.
10373
+ *
10374
+ * @stability unstable
10375
+ * @category crypto
10376
+ * @since 4.0.0
10377
+ */
10378
+ export declare const CipherKeyFromBytes: <A extends Cipher_.Algorithm>(algorithm: A, options?: CryptoKeyOptions) => decodeTo<CipherKey<A>, Uint8Array>;
10379
+ /**
10380
+ * Schema that decodes a `Cipher.Key` from a JWK with
10381
+ * `KeyFormat.decodeSecret`.
10382
+ *
10383
+ * **Details**
10384
+ *
10385
+ * Decoding returns an Effect, so use the async decoding functions:
10386
+ * `Schema.decodeSync` throws. A `CryptoError` becomes an `InvalidValue` issue
10387
+ * whose `cause` is the error. Encoding fails with a `Forbidden` issue unless
10388
+ * `allowEncode` is `true`.
10389
+ *
10390
+ * @stability unstable
10391
+ * @category crypto
10392
+ * @since 4.0.0
10393
+ */
10394
+ export declare const CipherKeyFromFormat: <A extends Cipher_.Algorithm, Data>(format: KeyFormat_.Format<"secret", "decode", Data>, algorithm: A, options?: CryptoKeyOptions) => decodeTo<CipherKey<A>, Codec<Data>>;
10395
+ /**
10396
+ * Type-level representation of {@link SignaturePublicKey}.
10397
+ *
10398
+ * @stability unstable
10399
+ * @category models
10400
+ * @since 4.0.0
10401
+ */
10402
+ export interface SignaturePublicKey<A extends Signature_.Algorithm = Signature_.Algorithm> extends declare<Signature_.PublicKey<A>> {
10403
+ readonly "Rebuild": SignaturePublicKey<A>;
10404
+ }
10405
+ /**
10406
+ * Schema for live `Signature.PublicKey` values of an algorithm.
10407
+ *
10408
+ * **Details**
10409
+ *
10410
+ * Decoding checks the key's algorithm and returns the key itself. The key has
10411
+ * no JSON form: `toCodecJson` fails with a `Forbidden` issue, so use
10412
+ * {@link SignaturePublicKeyFromFormat} or {@link SignaturePublicKeyFromBytes}
10413
+ * to read and write keys. Keys compare by reference and have no `Arbitrary`.
10414
+ *
10415
+ * @stability unstable
10416
+ * @category crypto
10417
+ * @since 4.0.0
10418
+ */
10419
+ export declare const SignaturePublicKey: <A extends Signature_.Algorithm>(algorithm: A) => SignaturePublicKey<A>;
10420
+ /**
10421
+ * Schema that decodes a raw public key into a `Signature.PublicKey`: 32 bytes
10422
+ * for Ed25519, or an uncompressed SEC1 point for ECDSA.
10423
+ *
10424
+ * **Details**
10425
+ *
10426
+ * Decoding runs `Signature.publicKey`, which is synchronous, so the schema
10427
+ * works with `Schema.decodeSync`. Under `Config.schema` the bytes are read as
10428
+ * base64. A `CryptoError` becomes an `InvalidValue` issue whose `cause` is
10429
+ * the error. RSA public keys have no raw form, so passing an RSA algorithm is
10430
+ * a type error.
10431
+ *
10432
+ * @stability unstable
10433
+ * @category crypto
10434
+ * @since 4.0.0
10435
+ */
10436
+ export declare const SignaturePublicKeyFromBytes: <A extends Signature_.Ed25519 | Signature_.Ecdsa>(algorithm: A) => decodeTo<SignaturePublicKey<A>, Uint8Array>;
10437
+ /**
10438
+ * Schema that decodes a `Signature.PublicKey` with
10439
+ * `KeyFormat.decodePublic` and encodes it with `KeyFormat.encode`.
10440
+ *
10441
+ * **Details**
10442
+ *
10443
+ * The format must hold public keys: `KeyFormat.spki`, `KeyFormat.jwk`, or
10444
+ * `KeyFormat.pem(KeyFormat.spki)`. A format for another role is a type
10445
+ * error. Decoding runs the runtime's key import, so use the async decoding
10446
+ * functions: `Schema.decodeSync` throws. A `CryptoError` becomes an
10447
+ * `InvalidValue` issue whose `cause` is the error.
10448
+ *
10449
+ * @stability unstable
10450
+ * @category crypto
10451
+ * @since 4.0.0
10452
+ */
10453
+ export declare const SignaturePublicKeyFromFormat: <A extends Signature_.Algorithm, Data>(format: KeyFormat_.Format<"public", "decode", Data>, algorithm: A) => decodeTo<SignaturePublicKey<A>, Codec<Data>>;
10454
+ /**
10455
+ * Type-level representation of {@link SignaturePrivateKey}.
10456
+ *
10457
+ * @stability unstable
10458
+ * @category models
10459
+ * @since 4.0.0
10460
+ */
10461
+ export interface SignaturePrivateKey<A extends Signature_.Algorithm = Signature_.Algorithm> extends declare<Signature_.PrivateKey<A>> {
10462
+ readonly "Rebuild": SignaturePrivateKey<A>;
10463
+ }
10464
+ /**
10465
+ * Schema for live `Signature.PrivateKey` values of an algorithm.
10466
+ *
10467
+ * **Details**
10468
+ *
10469
+ * Decoding checks the key's algorithm and returns the key itself. The key has
10470
+ * no JSON form: `toCodecJson` fails with a `Forbidden` issue, so use
10471
+ * {@link SignaturePrivateKeyFromFormat} or
10472
+ * {@link SignaturePrivateKeyFromBytes} to read and write keys. Keys display
10473
+ * redacted, compare by reference, and have no `Arbitrary`.
10474
+ *
10475
+ * @stability unstable
10476
+ * @category crypto
10477
+ * @since 4.0.0
10478
+ */
10479
+ export declare const SignaturePrivateKey: <A extends Signature_.Algorithm>(algorithm: A) => SignaturePrivateKey<A>;
10480
+ /**
10481
+ * Schema that decodes an Ed25519 seed into a `Signature.PrivateKey`.
10482
+ *
10483
+ * **Details**
10484
+ *
10485
+ * Decoding runs `Signature.privateKey`, which is synchronous, so the schema
10486
+ * works with `Schema.decodeSync`. Under `Config.schema` the bytes are read as
10487
+ * base64. A `CryptoError` becomes an `InvalidValue` issue whose `cause` is
10488
+ * the error. ECDSA and RSA private keys have no raw form, so passing them is
10489
+ * a type error. Encoding fails with a `Forbidden` issue unless `allowEncode`
10490
+ * is `true`.
10491
+ *
10492
+ * @stability unstable
10493
+ * @category crypto
10494
+ * @since 4.0.0
10495
+ */
10496
+ export declare const SignaturePrivateKeyFromBytes: <A extends Signature_.Ed25519>(algorithm: A, options?: CryptoKeyOptions) => decodeTo<SignaturePrivateKey<A>, Uint8Array>;
10497
+ /**
10498
+ * Schema that decodes a `Signature.PrivateKey` with
10499
+ * `KeyFormat.decodePrivate`.
10500
+ *
10501
+ * **Details**
10502
+ *
10503
+ * The format must hold private keys: `KeyFormat.pkcs8`, `KeyFormat.jwk`,
10504
+ * `KeyFormat.pkcs1`, `KeyFormat.sec1`, or their PEM forms. A format for
10505
+ * another role is a type error. Decoding runs the runtime's key import, so
10506
+ * use the async decoding functions: `Schema.decodeSync` throws. A
10507
+ * `CryptoError` becomes an `InvalidValue` issue whose `cause` is the error.
10508
+ * Encoding fails with a `Forbidden` issue unless `allowEncode` is `true`,
10509
+ * and always for the read-only PKCS#1 and SEC1 formats.
10510
+ *
10511
+ * @stability unstable
10512
+ * @category crypto
10513
+ * @since 4.0.0
10514
+ */
10515
+ export declare const SignaturePrivateKeyFromFormat: <A extends Signature_.Algorithm, Data>(format: KeyFormat_.Format<"private", "decode", Data>, algorithm: A, options?: CryptoKeyOptions) => decodeTo<SignaturePrivateKey<A>, Codec<Data>>;
10516
+ /**
10517
+ * Type-level representation of {@link KeyAgreementPublicKey}.
10518
+ *
10519
+ * @stability unstable
10520
+ * @category models
10521
+ * @since 4.0.0
10522
+ */
10523
+ export interface KeyAgreementPublicKey<A extends KeyAgreement_.Algorithm = KeyAgreement_.Algorithm> extends declare<KeyAgreement_.PublicKey<A>> {
10524
+ readonly "Rebuild": KeyAgreementPublicKey<A>;
10525
+ }
10526
+ /**
10527
+ * Schema for live `KeyAgreement.PublicKey` values of an algorithm.
10528
+ *
10529
+ * **Details**
10530
+ *
10531
+ * Decoding checks the key's algorithm and returns the key itself. The key has
10532
+ * no JSON form: `toCodecJson` fails with a `Forbidden` issue, so use
10533
+ * {@link KeyAgreementPublicKeyFromFormat} or
10534
+ * {@link KeyAgreementPublicKeyFromBytes} to read and write keys. Keys compare
10535
+ * by reference and have no `Arbitrary`.
10536
+ *
10537
+ * @stability unstable
10538
+ * @category crypto
10539
+ * @since 4.0.0
10540
+ */
10541
+ export declare const KeyAgreementPublicKey: <A extends KeyAgreement_.Algorithm>(algorithm: A) => KeyAgreementPublicKey<A>;
10542
+ /**
10543
+ * Schema that decodes a raw public key into a `KeyAgreement.PublicKey`: 32
10544
+ * bytes for X25519, or an uncompressed SEC1 point for ECDH.
10545
+ *
10546
+ * **Details**
10547
+ *
10548
+ * Decoding runs `KeyAgreement.publicKey`, which is synchronous, so the schema
10549
+ * works with `Schema.decodeSync`. Under `Config.schema` the bytes are read as
10550
+ * base64. A `CryptoError` becomes an `InvalidValue` issue whose `cause` is
10551
+ * the error.
10552
+ *
10553
+ * @stability unstable
10554
+ * @category crypto
10555
+ * @since 4.0.0
10556
+ */
10557
+ export declare const KeyAgreementPublicKeyFromBytes: <A extends KeyAgreement_.Algorithm>(algorithm: A) => decodeTo<KeyAgreementPublicKey<A>, Uint8Array>;
10558
+ /**
10559
+ * Schema that decodes a `KeyAgreement.PublicKey` with
10560
+ * `KeyFormat.decodePublic` and encodes it with `KeyFormat.encode`.
10561
+ *
10562
+ * **Details**
10563
+ *
10564
+ * The format must hold public keys: `KeyFormat.spki`, `KeyFormat.jwk`, or
10565
+ * `KeyFormat.pem(KeyFormat.spki)`. A format for another role is a type
10566
+ * error. Decoding runs the runtime's key import, so use the async decoding
10567
+ * functions: `Schema.decodeSync` throws. A `CryptoError` becomes an
10568
+ * `InvalidValue` issue whose `cause` is the error.
10569
+ *
10570
+ * @stability unstable
10571
+ * @category crypto
10572
+ * @since 4.0.0
10573
+ */
10574
+ export declare const KeyAgreementPublicKeyFromFormat: <A extends KeyAgreement_.Algorithm, Data>(format: KeyFormat_.Format<"public", "decode", Data>, algorithm: A) => decodeTo<KeyAgreementPublicKey<A>, Codec<Data>>;
10575
+ /**
10576
+ * Type-level representation of {@link KeyAgreementPrivateKey}.
10577
+ *
10578
+ * @stability unstable
10579
+ * @category models
10580
+ * @since 4.0.0
10581
+ */
10582
+ export interface KeyAgreementPrivateKey<A extends KeyAgreement_.Algorithm = KeyAgreement_.Algorithm> extends declare<KeyAgreement_.PrivateKey<A>> {
10583
+ readonly "Rebuild": KeyAgreementPrivateKey<A>;
10584
+ }
10585
+ /**
10586
+ * Schema for live `KeyAgreement.PrivateKey` values of an algorithm.
10587
+ *
10588
+ * **Details**
10589
+ *
10590
+ * Decoding checks the key's algorithm and returns the key itself. The key has
10591
+ * no JSON form: `toCodecJson` fails with a `Forbidden` issue, so use
10592
+ * {@link KeyAgreementPrivateKeyFromFormat} or
10593
+ * {@link KeyAgreementPrivateKeyFromBytes} to read and write keys. Keys
10594
+ * display redacted, compare by reference, and have no `Arbitrary`.
10595
+ *
10596
+ * @stability unstable
10597
+ * @category crypto
10598
+ * @since 4.0.0
10599
+ */
10600
+ export declare const KeyAgreementPrivateKey: <A extends KeyAgreement_.Algorithm>(algorithm: A) => KeyAgreementPrivateKey<A>;
10601
+ /**
10602
+ * Schema that decodes an X25519 private key into a
10603
+ * `KeyAgreement.PrivateKey`.
10604
+ *
10605
+ * **Details**
10606
+ *
10607
+ * Decoding runs `KeyAgreement.privateKey`, which is synchronous, so the
10608
+ * schema works with `Schema.decodeSync`. Under `Config.schema` the bytes are
10609
+ * read as base64. A `CryptoError` becomes an `InvalidValue` issue whose
10610
+ * `cause` is the error. ECDH private keys have no raw form, so passing them
10611
+ * is a type error. Encoding fails with a `Forbidden` issue unless
10612
+ * `allowEncode` is `true`.
10613
+ *
10614
+ * @stability unstable
10615
+ * @category crypto
10616
+ * @since 4.0.0
10617
+ */
10618
+ export declare const KeyAgreementPrivateKeyFromBytes: <A extends KeyAgreement_.X25519>(algorithm: A, options?: CryptoKeyOptions) => decodeTo<KeyAgreementPrivateKey<A>, Uint8Array>;
10619
+ /**
10620
+ * Schema that decodes a `KeyAgreement.PrivateKey` with
10621
+ * `KeyFormat.decodePrivate`.
10622
+ *
10623
+ * **Details**
10624
+ *
10625
+ * The format must hold private keys: `KeyFormat.pkcs8`, `KeyFormat.jwk`,
10626
+ * `KeyFormat.sec1`, or their PEM forms. A format for another role is a type
10627
+ * error. Decoding runs the runtime's key import, so use the async decoding
10628
+ * functions: `Schema.decodeSync` throws. A `CryptoError` becomes an
10629
+ * `InvalidValue` issue whose `cause` is the error. Encoding fails with a
10630
+ * `Forbidden` issue unless `allowEncode` is `true`, and always for the
10631
+ * read-only PKCS#1 and SEC1 formats.
10632
+ *
10633
+ * @stability unstable
10634
+ * @category crypto
10635
+ * @since 4.0.0
10636
+ */
10637
+ export declare const KeyAgreementPrivateKeyFromFormat: <A extends KeyAgreement_.Algorithm, Data>(format: KeyFormat_.Format<"private", "decode", Data>, algorithm: A, options?: CryptoKeyOptions) => decodeTo<KeyAgreementPrivateKey<A>, Codec<Data>>;
10638
+ /**
10639
+ * Type-level representation of {@link KeyWrapKey}.
10640
+ *
10641
+ * @stability unstable
10642
+ * @category models
10643
+ * @since 4.0.0
10644
+ */
10645
+ export interface KeyWrapKey<A extends KeyWrap_.AesKw = KeyWrap_.AesKw> extends declare<KeyWrap_.Key<A>> {
10646
+ readonly "Rebuild": KeyWrapKey<A>;
10647
+ }
10648
+ /**
10649
+ * Schema for live AES-KW `KeyWrap.Key` values of an algorithm.
10650
+ *
10651
+ * **Details**
10652
+ *
10653
+ * Decoding checks the key's algorithm and returns the key itself. The key has
10654
+ * no JSON form: `toCodecJson` fails with a `Forbidden` issue, so use
10655
+ * {@link KeyWrapKeyFromFormat} or {@link KeyWrapKeyFromBytes} to read and
10656
+ * write keys. Keys display redacted, compare by reference, and have no
10657
+ * `Arbitrary`.
10658
+ *
10659
+ * @stability unstable
10660
+ * @category crypto
10661
+ * @since 4.0.0
10662
+ */
10663
+ export declare const KeyWrapKey: <A extends KeyWrap_.AesKw>(algorithm: A) => KeyWrapKey<A>;
10664
+ /**
10665
+ * Schema that decodes raw key bytes into an AES-KW `KeyWrap.Key`.
10666
+ *
10667
+ * **Details**
10668
+ *
10669
+ * Decoding runs `KeyWrap.key`, which is synchronous, so the schema works with
10670
+ * `Schema.decodeSync`. Under `Config.schema` the bytes are read as base64. A
10671
+ * `CryptoError` becomes an `InvalidValue` issue whose `cause` is the error.
10672
+ * Encoding fails with a `Forbidden` issue unless `allowEncode` is `true`.
10673
+ *
10674
+ * @stability unstable
10675
+ * @category crypto
10676
+ * @since 4.0.0
10677
+ */
10678
+ export declare const KeyWrapKeyFromBytes: <A extends KeyWrap_.AesKw>(algorithm: A, options?: CryptoKeyOptions) => decodeTo<KeyWrapKey<A>, Uint8Array>;
10679
+ /**
10680
+ * Schema that decodes an AES-KW `KeyWrap.Key` from a JWK with
10681
+ * `KeyFormat.decodeSecret`.
10682
+ *
10683
+ * **Details**
10684
+ *
10685
+ * Decoding returns an Effect, so use the async decoding functions:
10686
+ * `Schema.decodeSync` throws. A `CryptoError` becomes an `InvalidValue` issue
10687
+ * whose `cause` is the error. Encoding fails with a `Forbidden` issue unless
10688
+ * `allowEncode` is `true`.
10689
+ *
10690
+ * @stability unstable
10691
+ * @category crypto
10692
+ * @since 4.0.0
10693
+ */
10694
+ export declare const KeyWrapKeyFromFormat: <A extends KeyWrap_.AesKw, Data>(format: KeyFormat_.Format<"secret", "decode", Data>, algorithm: A, options?: CryptoKeyOptions) => decodeTo<KeyWrapKey<A>, Codec<Data>>;
10695
+ /**
10696
+ * Type-level representation of {@link KeyWrapPublicKey}.
10697
+ *
10698
+ * @stability unstable
10699
+ * @category models
10700
+ * @since 4.0.0
10701
+ */
10702
+ export interface KeyWrapPublicKey<A extends KeyWrap_.RsaOaep = KeyWrap_.RsaOaep> extends declare<KeyWrap_.PublicKey<A>> {
10703
+ readonly "Rebuild": KeyWrapPublicKey<A>;
10704
+ }
10705
+ /**
10706
+ * Schema for live RSA-OAEP `KeyWrap.PublicKey` values of an algorithm.
10707
+ *
10708
+ * **Details**
10709
+ *
10710
+ * Decoding checks the key's algorithm and returns the key itself. The key has
10711
+ * no JSON form: `toCodecJson` fails with a `Forbidden` issue, so use
10712
+ * {@link KeyWrapPublicKeyFromFormat} to read and write keys. RSA-OAEP keys
10713
+ * have no raw form. Keys compare by reference and have no `Arbitrary`.
10714
+ *
10715
+ * @stability unstable
10716
+ * @category crypto
10717
+ * @since 4.0.0
10718
+ */
10719
+ export declare const KeyWrapPublicKey: <A extends KeyWrap_.RsaOaep>(algorithm: A) => KeyWrapPublicKey<A>;
10720
+ /**
10721
+ * Schema that decodes an RSA-OAEP `KeyWrap.PublicKey` with
10722
+ * `KeyFormat.decodePublic` and encodes it with `KeyFormat.encode`.
10723
+ *
10724
+ * **Details**
10725
+ *
10726
+ * The format must hold public keys: `KeyFormat.spki`, `KeyFormat.jwk`, or
10727
+ * `KeyFormat.pem(KeyFormat.spki)`. A format for another role is a type
10728
+ * error. Decoding runs the runtime's key import, so use the async decoding
10729
+ * functions: `Schema.decodeSync` throws. A `CryptoError` becomes an
10730
+ * `InvalidValue` issue whose `cause` is the error.
10731
+ *
10732
+ * @stability unstable
10733
+ * @category crypto
10734
+ * @since 4.0.0
10735
+ */
10736
+ export declare const KeyWrapPublicKeyFromFormat: <A extends KeyWrap_.RsaOaep, Data>(format: KeyFormat_.Format<"public", "decode", Data>, algorithm: A) => decodeTo<KeyWrapPublicKey<A>, Codec<Data>>;
10737
+ /**
10738
+ * Type-level representation of {@link KeyWrapPrivateKey}.
10739
+ *
10740
+ * @stability unstable
10741
+ * @category models
10742
+ * @since 4.0.0
10743
+ */
10744
+ export interface KeyWrapPrivateKey<A extends KeyWrap_.RsaOaep = KeyWrap_.RsaOaep> extends declare<KeyWrap_.PrivateKey<A>> {
10745
+ readonly "Rebuild": KeyWrapPrivateKey<A>;
10746
+ }
10747
+ /**
10748
+ * Schema for live RSA-OAEP `KeyWrap.PrivateKey` values of an algorithm.
10749
+ *
10750
+ * **Details**
10751
+ *
10752
+ * Decoding checks the key's algorithm and returns the key itself. The key has
10753
+ * no JSON form: `toCodecJson` fails with a `Forbidden` issue, so use
10754
+ * {@link KeyWrapPrivateKeyFromFormat} to read and write keys. RSA-OAEP keys
10755
+ * have no raw form. Keys display redacted, compare by reference, and have no
10756
+ * `Arbitrary`.
10757
+ *
10758
+ * @stability unstable
10759
+ * @category crypto
10760
+ * @since 4.0.0
10761
+ */
10762
+ export declare const KeyWrapPrivateKey: <A extends KeyWrap_.RsaOaep>(algorithm: A) => KeyWrapPrivateKey<A>;
10763
+ /**
10764
+ * Schema that decodes an RSA-OAEP `KeyWrap.PrivateKey` with
10765
+ * `KeyFormat.decodePrivate`.
10766
+ *
10767
+ * **Details**
10768
+ *
10769
+ * The format must hold private keys: `KeyFormat.pkcs8`, `KeyFormat.jwk`,
10770
+ * `KeyFormat.pkcs1`, or their PEM forms. A format for another role is a type
10771
+ * error. Decoding runs the runtime's key import, so use the async decoding
10772
+ * functions: `Schema.decodeSync` throws. A `CryptoError` becomes an
10773
+ * `InvalidValue` issue whose `cause` is the error. Encoding fails with a
10774
+ * `Forbidden` issue unless `allowEncode` is `true`, and always for the
10775
+ * read-only PKCS#1 format.
10776
+ *
10777
+ * @stability unstable
10778
+ * @category crypto
10779
+ * @since 4.0.0
10780
+ */
10781
+ export declare const KeyWrapPrivateKeyFromFormat: <A extends KeyWrap_.RsaOaep, Data>(format: KeyFormat_.Format<"private", "decode", Data>, algorithm: A, options?: CryptoKeyOptions) => decodeTo<KeyWrapPrivateKey<A>, Codec<Data>>;
10149
10782
  /**
10150
10783
  * Type-level representation returned by {@link Exit}.
10151
10784
  *
@@ -11057,6 +11690,10 @@ type MissingSelfGeneric<Usage extends string> = `Missing \`Self\` generic - use
11057
11690
  *
11058
11691
  * **Gotchas**
11059
11692
  *
11693
+ * To subclass a `Schema.Class`, use `Base.extend<Self>(...)`, even when only
11694
+ * adding methods or getters. Pass `{}` for the fields when none are added.
11695
+ * Plain `class Child extends Base` is unsupported.
11696
+ *
11060
11697
  * Passing `disableChecks: true` skips filters and checks, not parsing of types
11061
11698
  * and structure. Wrong types and shapes are still rejected, and constructor
11062
11699
  * defaults still apply.
@@ -11130,6 +11767,10 @@ export declare const Class: {
11130
11767
  *
11131
11768
  * **Gotchas**
11132
11769
  *
11770
+ * To subclass a `Schema.Class`, use `Base.extend<Self>(...)`, even when only
11771
+ * adding methods or getters. Pass `{}` for the fields when none are added.
11772
+ * Plain `class Child extends Base` is unsupported.
11773
+ *
11133
11774
  * Passing `disableChecks: true` skips filters and checks, not parsing of types
11134
11775
  * and structure. Wrong types and shapes are still rejected, and constructor
11135
11776
  * defaults still apply.