effect 4.0.0-beta.98 → 4.0.0-rc.108

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 (1848) hide show
  1. package/AGENTS.md +381 -0
  2. package/CLAUDE.md +381 -0
  3. package/README.md +13 -20
  4. package/ai-docs/README.md +44 -0
  5. package/ai-docs/package.json +36 -0
  6. package/ai-docs/src/01_effect/01_basics/01_effect-gen.ts +30 -0
  7. package/ai-docs/src/01_effect/01_basics/02_effect-fn.ts +39 -0
  8. package/ai-docs/src/01_effect/01_basics/10_creating-effects.ts +74 -0
  9. package/ai-docs/src/01_effect/01_basics/index.md +5 -0
  10. package/ai-docs/src/01_effect/02_schema/10_schema-basics.ts +43 -0
  11. package/ai-docs/src/01_effect/02_schema/index.md +7 -0
  12. package/ai-docs/src/01_effect/03_services/01_service.ts +45 -0
  13. package/ai-docs/src/01_effect/03_services/10_reference.ts +10 -0
  14. package/ai-docs/src/01_effect/03_services/20_layer-composition.ts +70 -0
  15. package/ai-docs/src/01_effect/03_services/20_layer-unwrap.ts +66 -0
  16. package/ai-docs/src/01_effect/03_services/index.md +5 -0
  17. package/ai-docs/src/01_effect/04_errors/01_error-handling.ts +30 -0
  18. package/ai-docs/src/01_effect/04_errors/10_catch-tags.ts +24 -0
  19. package/ai-docs/src/01_effect/04_errors/20_reason-errors.ts +64 -0
  20. package/ai-docs/src/01_effect/04_errors/index.md +1 -0
  21. package/ai-docs/src/01_effect/05_resources/10_acquire-release.ts +105 -0
  22. package/ai-docs/src/01_effect/05_resources/20_layer-side-effects.ts +31 -0
  23. package/ai-docs/src/01_effect/05_resources/30_layer-map.ts +86 -0
  24. package/ai-docs/src/01_effect/05_resources/index.md +3 -0
  25. package/ai-docs/src/01_effect/06_running/10_run-main.ts +30 -0
  26. package/ai-docs/src/01_effect/06_running/20_layer-launch.ts +27 -0
  27. package/ai-docs/src/01_effect/06_running/index.md +1 -0
  28. package/ai-docs/src/01_effect/07_pubsub/10_pubsub.ts +56 -0
  29. package/ai-docs/src/01_effect/07_pubsub/index.md +3 -0
  30. package/ai-docs/src/03_stream/10_creating-streams.ts +103 -0
  31. package/ai-docs/src/03_stream/20_consuming-streams.ts +137 -0
  32. package/ai-docs/src/03_stream/30_encoding.ts +165 -0
  33. package/ai-docs/src/03_stream/index.md +4 -0
  34. package/ai-docs/src/04_integration/10_managed-runtime.ts +129 -0
  35. package/ai-docs/src/04_integration/index.md +5 -0
  36. package/ai-docs/src/05_batching/10_request-resolver.ts +89 -0
  37. package/ai-docs/src/05_batching/index.md +3 -0
  38. package/ai-docs/src/06_schedule/10_schedules.ts +110 -0
  39. package/ai-docs/src/06_schedule/index.md +3 -0
  40. package/ai-docs/src/07_datetime/10_creating-and-formatting.ts +30 -0
  41. package/ai-docs/src/07_datetime/20_time-zones.ts +44 -0
  42. package/ai-docs/src/07_datetime/index.md +5 -0
  43. package/ai-docs/src/08_observability/10_logging.ts +66 -0
  44. package/ai-docs/src/08_observability/20_otlp-tracing.ts +95 -0
  45. package/ai-docs/src/08_observability/index.md +7 -0
  46. package/ai-docs/src/09_testing/10_effect-tests.ts +55 -0
  47. package/ai-docs/src/09_testing/20_layer-tests.ts +138 -0
  48. package/ai-docs/src/09_testing/index.md +1 -0
  49. package/ai-docs/src/10_predicate/01_basics.ts +14 -0
  50. package/ai-docs/src/10_predicate/index.md +9 -0
  51. package/ai-docs/src/50_http-client/10_basics.ts +102 -0
  52. package/ai-docs/src/50_http-client/index.md +3 -0
  53. package/ai-docs/src/51_http-server/10_basics.ts +116 -0
  54. package/ai-docs/src/51_http-server/fixtures/api/Api.ts +14 -0
  55. package/ai-docs/src/51_http-server/fixtures/api/Authorization.ts +36 -0
  56. package/ai-docs/src/51_http-server/fixtures/api/System.ts +10 -0
  57. package/ai-docs/src/51_http-server/fixtures/api/Users.ts +91 -0
  58. package/ai-docs/src/51_http-server/fixtures/domain/User.ts +12 -0
  59. package/ai-docs/src/51_http-server/fixtures/domain/UserErrors.ts +22 -0
  60. package/ai-docs/src/51_http-server/fixtures/server/Authorization.ts +36 -0
  61. package/ai-docs/src/51_http-server/fixtures/server/Users/http.ts +71 -0
  62. package/ai-docs/src/51_http-server/fixtures/server/Users.ts +62 -0
  63. package/ai-docs/src/51_http-server/index.md +3 -0
  64. package/ai-docs/src/60_child-process/10_working-with-child-processes.ts +117 -0
  65. package/ai-docs/src/60_child-process/index.md +3 -0
  66. package/ai-docs/src/70_cli/10_basics.ts +136 -0
  67. package/ai-docs/src/70_cli/index.md +5 -0
  68. package/ai-docs/src/71_ai/10_language-model.ts +156 -0
  69. package/ai-docs/src/71_ai/20_tools.ts +226 -0
  70. package/ai-docs/src/71_ai/30_chat.ts +158 -0
  71. package/ai-docs/src/71_ai/fixtures/domain/LaunchPlan.ts +9 -0
  72. package/ai-docs/src/71_ai/index.md +5 -0
  73. package/ai-docs/src/80_cluster/10_entities.ts +97 -0
  74. package/ai-docs/src/80_cluster/index.md +4 -0
  75. package/ai-docs/src/index.md +10 -0
  76. package/ai-docs/tsconfig.json +24 -0
  77. package/dist/Array.d.ts +971 -1037
  78. package/dist/Array.d.ts.map +1 -1
  79. package/dist/Array.js +463 -413
  80. package/dist/Array.js.map +1 -1
  81. package/dist/BigDecimal.d.ts +433 -756
  82. package/dist/BigDecimal.d.ts.map +1 -1
  83. package/dist/BigDecimal.js +200 -325
  84. package/dist/BigDecimal.js.map +1 -1
  85. package/dist/BigInt.d.ts +207 -267
  86. package/dist/BigInt.d.ts.map +1 -1
  87. package/dist/BigInt.js +107 -135
  88. package/dist/BigInt.js.map +1 -1
  89. package/dist/Boolean.d.ts +146 -188
  90. package/dist/Boolean.d.ts.map +1 -1
  91. package/dist/Boolean.js +64 -84
  92. package/dist/Boolean.js.map +1 -1
  93. package/dist/Brand.d.ts +3 -3
  94. package/dist/Brand.d.ts.map +1 -1
  95. package/dist/Brand.js +4 -3
  96. package/dist/Brand.js.map +1 -1
  97. package/dist/Cache.d.ts +409 -256
  98. package/dist/Cache.d.ts.map +1 -1
  99. package/dist/Cache.js +213 -134
  100. package/dist/Cache.js.map +1 -1
  101. package/dist/Cause.d.ts +167 -277
  102. package/dist/Cause.d.ts.map +1 -1
  103. package/dist/Cause.js +122 -176
  104. package/dist/Cause.js.map +1 -1
  105. package/dist/Channel.d.ts +756 -769
  106. package/dist/Channel.d.ts.map +1 -1
  107. package/dist/Channel.js +588 -449
  108. package/dist/Channel.js.map +1 -1
  109. package/dist/ChannelSchema.d.ts +1 -1
  110. package/dist/ChannelSchema.d.ts.map +1 -1
  111. package/dist/ChannelSchema.js.map +1 -1
  112. package/dist/Chunk.d.ts +834 -1173
  113. package/dist/Chunk.d.ts.map +1 -1
  114. package/dist/Chunk.js +326 -439
  115. package/dist/Chunk.js.map +1 -1
  116. package/dist/Clock.d.ts +180 -49
  117. package/dist/Clock.d.ts.map +1 -1
  118. package/dist/Clock.js +96 -31
  119. package/dist/Clock.js.map +1 -1
  120. package/dist/Combiner.d.ts +20 -33
  121. package/dist/Combiner.d.ts.map +1 -1
  122. package/dist/Combiner.js +18 -30
  123. package/dist/Combiner.js.map +1 -1
  124. package/dist/Config.d.ts +226 -174
  125. package/dist/Config.d.ts.map +1 -1
  126. package/dist/Config.js +361 -267
  127. package/dist/Config.js.map +1 -1
  128. package/dist/ConfigProvider.d.ts +229 -71
  129. package/dist/ConfigProvider.d.ts.map +1 -1
  130. package/dist/ConfigProvider.js +164 -95
  131. package/dist/ConfigProvider.js.map +1 -1
  132. package/dist/Console.d.ts +233 -33
  133. package/dist/Console.d.ts.map +1 -1
  134. package/dist/Console.js +232 -32
  135. package/dist/Console.js.map +1 -1
  136. package/dist/Context.d.ts +153 -277
  137. package/dist/Context.d.ts.map +1 -1
  138. package/dist/Context.js +172 -236
  139. package/dist/Context.js.map +1 -1
  140. package/dist/Cron.d.ts +144 -176
  141. package/dist/Cron.d.ts.map +1 -1
  142. package/dist/Cron.js +227 -162
  143. package/dist/Cron.js.map +1 -1
  144. package/dist/Crypto.d.ts +13 -15
  145. package/dist/Crypto.d.ts.map +1 -1
  146. package/dist/Crypto.js +22 -15
  147. package/dist/Crypto.js.map +1 -1
  148. package/dist/Data.d.ts +60 -80
  149. package/dist/Data.d.ts.map +1 -1
  150. package/dist/Data.js +18 -24
  151. package/dist/Data.js.map +1 -1
  152. package/dist/DateTime.d.ts +562 -660
  153. package/dist/DateTime.d.ts.map +1 -1
  154. package/dist/DateTime.js +307 -362
  155. package/dist/DateTime.js.map +1 -1
  156. package/dist/Deferred.d.ts +253 -256
  157. package/dist/Deferred.d.ts.map +1 -1
  158. package/dist/Deferred.js +110 -98
  159. package/dist/Deferred.js.map +1 -1
  160. package/dist/Duration.d.ts +216 -308
  161. package/dist/Duration.d.ts.map +1 -1
  162. package/dist/Duration.js +157 -188
  163. package/dist/Duration.js.map +1 -1
  164. package/dist/Effect.d.ts +3142 -3345
  165. package/dist/Effect.d.ts.map +1 -1
  166. package/dist/Effect.js +1452 -1570
  167. package/dist/Effect.js.map +1 -1
  168. package/dist/Effectable.js.map +1 -1
  169. package/dist/Encoding.d.ts +22 -40
  170. package/dist/Encoding.d.ts.map +1 -1
  171. package/dist/Encoding.js +22 -40
  172. package/dist/Encoding.js.map +1 -1
  173. package/dist/Equal.d.ts +33 -37
  174. package/dist/Equal.d.ts.map +1 -1
  175. package/dist/Equal.js +39 -23
  176. package/dist/Equal.js.map +1 -1
  177. package/dist/Equivalence.d.ts +103 -105
  178. package/dist/Equivalence.d.ts.map +1 -1
  179. package/dist/Equivalence.js +77 -79
  180. package/dist/Equivalence.js.map +1 -1
  181. package/dist/ErrorReporter.d.ts +51 -27
  182. package/dist/ErrorReporter.d.ts.map +1 -1
  183. package/dist/ErrorReporter.js +50 -26
  184. package/dist/ErrorReporter.js.map +1 -1
  185. package/dist/ExecutionPlan.d.ts +86 -55
  186. package/dist/ExecutionPlan.d.ts.map +1 -1
  187. package/dist/ExecutionPlan.js +8 -29
  188. package/dist/ExecutionPlan.js.map +1 -1
  189. package/dist/Exit.d.ts +116 -192
  190. package/dist/Exit.d.ts.map +1 -1
  191. package/dist/Exit.js +82 -130
  192. package/dist/Exit.js.map +1 -1
  193. package/dist/Fiber.d.ts +83 -147
  194. package/dist/Fiber.d.ts.map +1 -1
  195. package/dist/Fiber.js +48 -87
  196. package/dist/Fiber.js.map +1 -1
  197. package/dist/FiberHandle.d.ts +152 -105
  198. package/dist/FiberHandle.d.ts.map +1 -1
  199. package/dist/FiberHandle.js +109 -75
  200. package/dist/FiberHandle.js.map +1 -1
  201. package/dist/FiberMap.d.ts +213 -168
  202. package/dist/FiberMap.d.ts.map +1 -1
  203. package/dist/FiberMap.js +114 -89
  204. package/dist/FiberMap.js.map +1 -1
  205. package/dist/FiberSet.d.ts +123 -81
  206. package/dist/FiberSet.d.ts.map +1 -1
  207. package/dist/FiberSet.js +86 -60
  208. package/dist/FiberSet.js.map +1 -1
  209. package/dist/FileSystem.d.ts +154 -265
  210. package/dist/FileSystem.d.ts.map +1 -1
  211. package/dist/FileSystem.js +42 -147
  212. package/dist/FileSystem.js.map +1 -1
  213. package/dist/Filter.d.ts +61 -33
  214. package/dist/Filter.d.ts.map +1 -1
  215. package/dist/Filter.js +26 -15
  216. package/dist/Filter.js.map +1 -1
  217. package/dist/Formatter.d.ts +24 -32
  218. package/dist/Formatter.d.ts.map +1 -1
  219. package/dist/Formatter.js +55 -60
  220. package/dist/Formatter.js.map +1 -1
  221. package/dist/Function.d.ts +106 -148
  222. package/dist/Function.d.ts.map +1 -1
  223. package/dist/Function.js +81 -62
  224. package/dist/Function.js.map +1 -1
  225. package/dist/Graph.d.ts +1412 -775
  226. package/dist/Graph.d.ts.map +1 -1
  227. package/dist/Graph.js +1180 -561
  228. package/dist/Graph.js.map +1 -1
  229. package/dist/HKT.d.ts +12 -6
  230. package/dist/HKT.d.ts.map +1 -1
  231. package/dist/Hash.d.ts +47 -83
  232. package/dist/Hash.d.ts.map +1 -1
  233. package/dist/Hash.js +46 -68
  234. package/dist/Hash.js.map +1 -1
  235. package/dist/HashMap.d.ts +319 -411
  236. package/dist/HashMap.d.ts.map +1 -1
  237. package/dist/HashMap.js +122 -166
  238. package/dist/HashMap.js.map +1 -1
  239. package/dist/HashRing.d.ts.map +1 -1
  240. package/dist/HashRing.js +1 -0
  241. package/dist/HashRing.js.map +1 -1
  242. package/dist/HashSet.d.ts +177 -284
  243. package/dist/HashSet.d.ts.map +1 -1
  244. package/dist/HashSet.js +68 -109
  245. package/dist/HashSet.js.map +1 -1
  246. package/dist/Inspectable.d.ts +19 -18
  247. package/dist/Inspectable.d.ts.map +1 -1
  248. package/dist/Inspectable.js +20 -16
  249. package/dist/Inspectable.js.map +1 -1
  250. package/dist/Iterable.d.ts +620 -786
  251. package/dist/Iterable.d.ts.map +1 -1
  252. package/dist/Iterable.js +282 -318
  253. package/dist/Iterable.js.map +1 -1
  254. package/dist/JsonPatch.d.ts +11 -13
  255. package/dist/JsonPatch.d.ts.map +1 -1
  256. package/dist/JsonPatch.js +46 -103
  257. package/dist/JsonPatch.js.map +1 -1
  258. package/dist/JsonPointer.d.ts +8 -8
  259. package/dist/JsonPointer.js +8 -8
  260. package/dist/JsonPointer.js.map +1 -1
  261. package/dist/JsonSchema.d.ts +98 -44
  262. package/dist/JsonSchema.d.ts.map +1 -1
  263. package/dist/JsonSchema.js +319 -241
  264. package/dist/JsonSchema.js.map +1 -1
  265. package/dist/Latch.d.ts +23 -35
  266. package/dist/Latch.d.ts.map +1 -1
  267. package/dist/Latch.js +16 -28
  268. package/dist/Latch.js.map +1 -1
  269. package/dist/Layer.d.ts +359 -260
  270. package/dist/Layer.d.ts.map +1 -1
  271. package/dist/Layer.js +202 -180
  272. package/dist/Layer.js.map +1 -1
  273. package/dist/LayerMap.d.ts +42 -29
  274. package/dist/LayerMap.d.ts.map +1 -1
  275. package/dist/LayerMap.js +31 -21
  276. package/dist/LayerMap.js.map +1 -1
  277. package/dist/LayerRef.d.ts +6 -2
  278. package/dist/LayerRef.d.ts.map +1 -1
  279. package/dist/LayerRef.js +6 -2
  280. package/dist/LayerRef.js.map +1 -1
  281. package/dist/LogLevel.d.ts +114 -214
  282. package/dist/LogLevel.d.ts.map +1 -1
  283. package/dist/LogLevel.js +41 -76
  284. package/dist/LogLevel.js.map +1 -1
  285. package/dist/Logger.d.ts +218 -467
  286. package/dist/Logger.d.ts.map +1 -1
  287. package/dist/Logger.js +208 -453
  288. package/dist/Logger.js.map +1 -1
  289. package/dist/ManagedRuntime.d.ts +16 -5
  290. package/dist/ManagedRuntime.d.ts.map +1 -1
  291. package/dist/ManagedRuntime.js +10 -5
  292. package/dist/ManagedRuntime.js.map +1 -1
  293. package/dist/Match.d.ts +217 -252
  294. package/dist/Match.d.ts.map +1 -1
  295. package/dist/Match.js +150 -183
  296. package/dist/Match.js.map +1 -1
  297. package/dist/Metric.d.ts +442 -993
  298. package/dist/Metric.d.ts.map +1 -1
  299. package/dist/Metric.js +202 -645
  300. package/dist/Metric.js.map +1 -1
  301. package/dist/MutableHashMap.d.ts +144 -173
  302. package/dist/MutableHashMap.d.ts.map +1 -1
  303. package/dist/MutableHashMap.js +68 -79
  304. package/dist/MutableHashMap.js.map +1 -1
  305. package/dist/MutableHashSet.d.ts +84 -89
  306. package/dist/MutableHashSet.d.ts.map +1 -1
  307. package/dist/MutableHashSet.js +44 -47
  308. package/dist/MutableHashSet.js.map +1 -1
  309. package/dist/MutableList.d.ts +71 -370
  310. package/dist/MutableList.d.ts.map +1 -1
  311. package/dist/MutableList.js +63 -284
  312. package/dist/MutableList.js.map +1 -1
  313. package/dist/MutableRef.d.ts +420 -243
  314. package/dist/MutableRef.d.ts.map +1 -1
  315. package/dist/MutableRef.js +209 -120
  316. package/dist/MutableRef.js.map +1 -1
  317. package/dist/Newtype.d.ts +21 -14
  318. package/dist/Newtype.d.ts.map +1 -1
  319. package/dist/Newtype.js +15 -13
  320. package/dist/Newtype.js.map +1 -1
  321. package/dist/NonEmptyIterable.d.ts +7 -137
  322. package/dist/NonEmptyIterable.d.ts.map +1 -1
  323. package/dist/NonEmptyIterable.js +5 -93
  324. package/dist/NonEmptyIterable.js.map +1 -1
  325. package/dist/Number.d.ts +196 -233
  326. package/dist/Number.d.ts.map +1 -1
  327. package/dist/Number.js +90 -109
  328. package/dist/Number.js.map +1 -1
  329. package/dist/Optic.d.ts +132 -210
  330. package/dist/Optic.d.ts.map +1 -1
  331. package/dist/Optic.js +221 -324
  332. package/dist/Optic.js.map +1 -1
  333. package/dist/Option.d.ts +447 -812
  334. package/dist/Option.d.ts.map +1 -1
  335. package/dist/Option.js +213 -393
  336. package/dist/Option.js.map +1 -1
  337. package/dist/Order.d.ts +109 -109
  338. package/dist/Order.js +91 -91
  339. package/dist/Order.js.map +1 -1
  340. package/dist/Ordering.d.ts +20 -23
  341. package/dist/Ordering.d.ts.map +1 -1
  342. package/dist/Ordering.js +8 -9
  343. package/dist/Ordering.js.map +1 -1
  344. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  345. package/dist/PartitionedSemaphore.js +1 -4
  346. package/dist/PartitionedSemaphore.js.map +1 -1
  347. package/dist/Path.d.ts +38 -41
  348. package/dist/Path.d.ts.map +1 -1
  349. package/dist/Path.js +3 -4
  350. package/dist/Path.js.map +1 -1
  351. package/dist/Pipeable.d.ts +6 -5
  352. package/dist/Pipeable.d.ts.map +1 -1
  353. package/dist/Pipeable.js +2 -2
  354. package/dist/Pipeable.js.map +1 -1
  355. package/dist/PlatformError.d.ts +4 -4
  356. package/dist/PlatformError.js +3 -3
  357. package/dist/PlatformError.js.map +1 -1
  358. package/dist/Pool.d.ts +4 -2
  359. package/dist/Pool.d.ts.map +1 -1
  360. package/dist/Pool.js +4 -2
  361. package/dist/Pool.js.map +1 -1
  362. package/dist/Predicate.d.ts +200 -181
  363. package/dist/Predicate.d.ts.map +1 -1
  364. package/dist/Predicate.js +100 -108
  365. package/dist/Predicate.js.map +1 -1
  366. package/dist/PrimaryKey.d.ts +7 -7
  367. package/dist/PrimaryKey.js +5 -5
  368. package/dist/PrimaryKey.js.map +1 -1
  369. package/dist/PubSub.d.ts +425 -494
  370. package/dist/PubSub.d.ts.map +1 -1
  371. package/dist/PubSub.js +373 -362
  372. package/dist/PubSub.js.map +1 -1
  373. package/dist/Pull.d.ts +24 -18
  374. package/dist/Pull.d.ts.map +1 -1
  375. package/dist/Pull.js +11 -9
  376. package/dist/Pull.js.map +1 -1
  377. package/dist/Queue.d.ts +200 -159
  378. package/dist/Queue.d.ts.map +1 -1
  379. package/dist/Queue.js +166 -138
  380. package/dist/Queue.js.map +1 -1
  381. package/dist/Random.d.ts +49 -74
  382. package/dist/Random.d.ts.map +1 -1
  383. package/dist/Random.js +35 -54
  384. package/dist/Random.js.map +1 -1
  385. package/dist/RcMap.d.ts +121 -63
  386. package/dist/RcMap.d.ts.map +1 -1
  387. package/dist/RcMap.js +42 -21
  388. package/dist/RcMap.js.map +1 -1
  389. package/dist/RcRef.d.ts +24 -13
  390. package/dist/RcRef.d.ts.map +1 -1
  391. package/dist/RcRef.js +15 -9
  392. package/dist/RcRef.js.map +1 -1
  393. package/dist/Record.d.ts +361 -466
  394. package/dist/Record.d.ts.map +1 -1
  395. package/dist/Record.js +163 -216
  396. package/dist/Record.js.map +1 -1
  397. package/dist/Redactable.d.ts +6 -2
  398. package/dist/Redactable.d.ts.map +1 -1
  399. package/dist/Redactable.js +7 -2
  400. package/dist/Redactable.js.map +1 -1
  401. package/dist/Redacted.d.ts +25 -25
  402. package/dist/Redacted.d.ts.map +1 -1
  403. package/dist/Redacted.js +19 -20
  404. package/dist/Redacted.js.map +1 -1
  405. package/dist/Reducer.d.ts +8 -15
  406. package/dist/Reducer.d.ts.map +1 -1
  407. package/dist/Reducer.js +6 -12
  408. package/dist/Reducer.js.map +1 -1
  409. package/dist/Ref.d.ts +95 -165
  410. package/dist/Ref.d.ts.map +1 -1
  411. package/dist/Ref.js +75 -122
  412. package/dist/Ref.js.map +1 -1
  413. package/dist/References.d.ts +102 -213
  414. package/dist/References.d.ts.map +1 -1
  415. package/dist/References.js +102 -213
  416. package/dist/References.js.map +1 -1
  417. package/dist/RegExp.d.ts +10 -14
  418. package/dist/RegExp.d.ts.map +1 -1
  419. package/dist/RegExp.js +10 -14
  420. package/dist/RegExp.js.map +1 -1
  421. package/dist/Request.d.ts +31 -21
  422. package/dist/Request.d.ts.map +1 -1
  423. package/dist/Request.js +25 -19
  424. package/dist/Request.js.map +1 -1
  425. package/dist/RequestResolver.d.ts +201 -90
  426. package/dist/RequestResolver.d.ts.map +1 -1
  427. package/dist/RequestResolver.js +87 -41
  428. package/dist/RequestResolver.js.map +1 -1
  429. package/dist/Resource.js.map +1 -1
  430. package/dist/Result.d.ts +302 -470
  431. package/dist/Result.d.ts.map +1 -1
  432. package/dist/Result.js +135 -218
  433. package/dist/Result.js.map +1 -1
  434. package/dist/Runtime.d.ts +50 -75
  435. package/dist/Runtime.d.ts.map +1 -1
  436. package/dist/Runtime.js +39 -60
  437. package/dist/Runtime.js.map +1 -1
  438. package/dist/Schedule.d.ts +292 -1638
  439. package/dist/Schedule.d.ts.map +1 -1
  440. package/dist/Schedule.js +164 -805
  441. package/dist/Schedule.js.map +1 -1
  442. package/dist/Scheduler.d.ts +5 -5
  443. package/dist/Scheduler.d.ts.map +1 -1
  444. package/dist/Scheduler.js +18 -6
  445. package/dist/Scheduler.js.map +1 -1
  446. package/dist/Schema.d.ts +2056 -1269
  447. package/dist/Schema.d.ts.map +1 -1
  448. package/dist/Schema.js +2869 -1136
  449. package/dist/Schema.js.map +1 -1
  450. package/dist/SchemaAST.d.ts +64 -72
  451. package/dist/SchemaAST.d.ts.map +1 -1
  452. package/dist/SchemaAST.js +698 -468
  453. package/dist/SchemaAST.js.map +1 -1
  454. package/dist/SchemaGetter.d.ts +236 -188
  455. package/dist/SchemaGetter.d.ts.map +1 -1
  456. package/dist/SchemaGetter.js +281 -234
  457. package/dist/SchemaGetter.js.map +1 -1
  458. package/dist/SchemaIssue.d.ts +219 -190
  459. package/dist/SchemaIssue.d.ts.map +1 -1
  460. package/dist/SchemaIssue.js +303 -309
  461. package/dist/SchemaIssue.js.map +1 -1
  462. package/dist/SchemaParser.d.ts +32 -2
  463. package/dist/SchemaParser.d.ts.map +1 -1
  464. package/dist/SchemaParser.js +170 -118
  465. package/dist/SchemaParser.js.map +1 -1
  466. package/dist/SchemaRepresentation.d.ts +433 -1511
  467. package/dist/SchemaRepresentation.d.ts.map +1 -1
  468. package/dist/SchemaRepresentation.js +301 -2854
  469. package/dist/SchemaRepresentation.js.map +1 -1
  470. package/dist/SchemaTransformation.d.ts +117 -77
  471. package/dist/SchemaTransformation.d.ts.map +1 -1
  472. package/dist/SchemaTransformation.js +139 -104
  473. package/dist/SchemaTransformation.js.map +1 -1
  474. package/dist/Scope.d.ts +123 -151
  475. package/dist/Scope.d.ts.map +1 -1
  476. package/dist/Scope.js +72 -92
  477. package/dist/Scope.js.map +1 -1
  478. package/dist/ScopedCache.js +1 -1
  479. package/dist/ScopedCache.js.map +1 -1
  480. package/dist/ScopedRef.d.ts +3 -3
  481. package/dist/ScopedRef.d.ts.map +1 -1
  482. package/dist/ScopedRef.js +2 -2
  483. package/dist/ScopedRef.js.map +1 -1
  484. package/dist/Semaphore.d.ts +101 -13
  485. package/dist/Semaphore.d.ts.map +1 -1
  486. package/dist/Semaphore.js +78 -39
  487. package/dist/Semaphore.js.map +1 -1
  488. package/dist/Sink.d.ts +118 -108
  489. package/dist/Sink.d.ts.map +1 -1
  490. package/dist/Sink.js +107 -100
  491. package/dist/Sink.js.map +1 -1
  492. package/dist/Stdio.d.ts +18 -5
  493. package/dist/Stdio.d.ts.map +1 -1
  494. package/dist/Stdio.js +6 -3
  495. package/dist/Stdio.js.map +1 -1
  496. package/dist/Stream.d.ts +2467 -2962
  497. package/dist/Stream.d.ts.map +1 -1
  498. package/dist/Stream.js +1154 -1413
  499. package/dist/Stream.js.map +1 -1
  500. package/dist/String.d.ts +262 -308
  501. package/dist/String.d.ts.map +1 -1
  502. package/dist/String.js +184 -215
  503. package/dist/String.js.map +1 -1
  504. package/dist/Struct.d.ts +109 -114
  505. package/dist/Struct.d.ts.map +1 -1
  506. package/dist/Struct.js +46 -54
  507. package/dist/Struct.js.map +1 -1
  508. package/dist/SubscriptionRef.d.ts +282 -250
  509. package/dist/SubscriptionRef.d.ts.map +1 -1
  510. package/dist/SubscriptionRef.js +104 -92
  511. package/dist/SubscriptionRef.js.map +1 -1
  512. package/dist/Symbol.d.ts +3 -3
  513. package/dist/Symbol.js +3 -3
  514. package/dist/Symbol.js.map +1 -1
  515. package/dist/SynchronizedRef.js +1 -1
  516. package/dist/SynchronizedRef.js.map +1 -1
  517. package/dist/Take.js.map +1 -1
  518. package/dist/Terminal.d.ts +2 -2
  519. package/dist/Terminal.js +2 -2
  520. package/dist/Terminal.js.map +1 -1
  521. package/dist/Tracer.d.ts +100 -54
  522. package/dist/Tracer.d.ts.map +1 -1
  523. package/dist/Tracer.js +41 -24
  524. package/dist/Tracer.js.map +1 -1
  525. package/dist/Trie.d.ts +287 -679
  526. package/dist/Trie.d.ts.map +1 -1
  527. package/dist/Trie.js +109 -251
  528. package/dist/Trie.js.map +1 -1
  529. package/dist/Tuple.d.ts +98 -131
  530. package/dist/Tuple.d.ts.map +1 -1
  531. package/dist/Tuple.js +42 -57
  532. package/dist/Tuple.js.map +1 -1
  533. package/dist/TxChunk.d.ts +201 -121
  534. package/dist/TxChunk.d.ts.map +1 -1
  535. package/dist/TxChunk.js +85 -56
  536. package/dist/TxChunk.js.map +1 -1
  537. package/dist/TxDeferred.d.ts +62 -46
  538. package/dist/TxDeferred.d.ts.map +1 -1
  539. package/dist/TxDeferred.js +30 -22
  540. package/dist/TxDeferred.js.map +1 -1
  541. package/dist/TxHashMap.d.ts +631 -779
  542. package/dist/TxHashMap.d.ts.map +1 -1
  543. package/dist/TxHashMap.js +268 -330
  544. package/dist/TxHashMap.js.map +1 -1
  545. package/dist/TxHashSet.d.ts +297 -236
  546. package/dist/TxHashSet.d.ts.map +1 -1
  547. package/dist/TxHashSet.js +130 -100
  548. package/dist/TxHashSet.js.map +1 -1
  549. package/dist/TxPriorityQueue.d.ts +126 -95
  550. package/dist/TxPriorityQueue.d.ts.map +1 -1
  551. package/dist/TxPriorityQueue.js +74 -56
  552. package/dist/TxPriorityQueue.js.map +1 -1
  553. package/dist/TxPubSub.d.ts +101 -88
  554. package/dist/TxPubSub.d.ts.map +1 -1
  555. package/dist/TxPubSub.js +87 -66
  556. package/dist/TxPubSub.js.map +1 -1
  557. package/dist/TxQueue.d.ts +200 -180
  558. package/dist/TxQueue.d.ts.map +1 -1
  559. package/dist/TxQueue.js +161 -137
  560. package/dist/TxQueue.js.map +1 -1
  561. package/dist/TxReentrantLock.d.ts +89 -114
  562. package/dist/TxReentrantLock.d.ts.map +1 -1
  563. package/dist/TxReentrantLock.js +75 -53
  564. package/dist/TxReentrantLock.js.map +1 -1
  565. package/dist/TxRef.d.ts +51 -32
  566. package/dist/TxRef.d.ts.map +1 -1
  567. package/dist/TxRef.js +23 -15
  568. package/dist/TxRef.js.map +1 -1
  569. package/dist/TxSemaphore.d.ts +129 -95
  570. package/dist/TxSemaphore.d.ts.map +1 -1
  571. package/dist/TxSemaphore.js +85 -70
  572. package/dist/TxSemaphore.js.map +1 -1
  573. package/dist/TxSubscriptionRef.d.ts +97 -70
  574. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  575. package/dist/TxSubscriptionRef.js +44 -34
  576. package/dist/TxSubscriptionRef.js.map +1 -1
  577. package/dist/Types.d.ts +127 -70
  578. package/dist/Types.d.ts.map +1 -1
  579. package/dist/UndefinedOr.js.map +1 -1
  580. package/dist/Unify.d.ts +45 -65
  581. package/dist/Unify.d.ts.map +1 -1
  582. package/dist/Unify.js +6 -9
  583. package/dist/Unify.js.map +1 -1
  584. package/dist/Utils.d.ts +23 -16
  585. package/dist/Utils.d.ts.map +1 -1
  586. package/dist/Utils.js +3 -7
  587. package/dist/Utils.js.map +1 -1
  588. package/dist/index.d.ts +0 -8
  589. package/dist/index.d.ts.map +1 -1
  590. package/dist/index.js +0 -8
  591. package/dist/index.js.map +1 -1
  592. package/dist/internal/array.js.map +1 -1
  593. package/dist/internal/core.js +4 -3
  594. package/dist/internal/core.js.map +1 -1
  595. package/dist/internal/dateTime.js +5 -1
  596. package/dist/internal/dateTime.js.map +1 -1
  597. package/dist/internal/doNotation.js.map +1 -1
  598. package/dist/internal/effect.js +261 -111
  599. package/dist/internal/effect.js.map +1 -1
  600. package/dist/internal/equal.js.map +1 -1
  601. package/dist/internal/errors.js.map +1 -1
  602. package/dist/internal/executionPlan.js +52 -3
  603. package/dist/internal/executionPlan.js.map +1 -1
  604. package/dist/internal/hashMap.js +12 -8
  605. package/dist/internal/hashMap.js.map +1 -1
  606. package/dist/internal/hashSet.js.map +1 -1
  607. package/dist/internal/layer.js.map +1 -1
  608. package/dist/internal/matcher.js +2 -2
  609. package/dist/internal/matcher.js.map +1 -1
  610. package/dist/internal/metric.js.map +1 -1
  611. package/dist/internal/option.js.map +1 -1
  612. package/dist/internal/persistence.d.ts +2 -0
  613. package/dist/internal/persistence.d.ts.map +1 -0
  614. package/dist/internal/persistence.js +3 -0
  615. package/dist/internal/persistence.js.map +1 -0
  616. package/dist/internal/random.js.map +1 -1
  617. package/dist/internal/rcRef.js +18 -13
  618. package/dist/internal/rcRef.js.map +1 -1
  619. package/dist/internal/record.d.ts +0 -3
  620. package/dist/internal/record.d.ts.map +1 -1
  621. package/dist/internal/record.js +10 -5
  622. package/dist/internal/record.js.map +1 -1
  623. package/dist/internal/redacted.js.map +1 -1
  624. package/dist/internal/references.js +3 -4
  625. package/dist/internal/references.js.map +1 -1
  626. package/dist/internal/request.js.map +1 -1
  627. package/dist/internal/result.js.map +1 -1
  628. package/dist/internal/schedule.js.map +1 -1
  629. package/dist/internal/schema/annotations.js +15 -1
  630. package/dist/internal/schema/annotations.js.map +1 -1
  631. package/dist/internal/schema/cause.js.map +1 -1
  632. package/dist/internal/schema/fromJsonSchemaDocument.d.ts +2 -0
  633. package/dist/internal/schema/fromJsonSchemaDocument.d.ts.map +1 -0
  634. package/dist/internal/schema/fromJsonSchemaDocument.js +761 -0
  635. package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -0
  636. package/dist/internal/schema/fromRepresentation.d.ts +2 -0
  637. package/dist/internal/schema/fromRepresentation.d.ts.map +1 -0
  638. package/dist/internal/schema/fromRepresentation.js +245 -0
  639. package/dist/internal/schema/fromRepresentation.js.map +1 -0
  640. package/dist/internal/schema/parser.d.ts +14 -0
  641. package/dist/internal/schema/parser.d.ts.map +1 -0
  642. package/dist/internal/schema/parser.js +13 -0
  643. package/dist/internal/schema/parser.js.map +1 -0
  644. package/dist/internal/schema/schema.js +29 -49
  645. package/dist/internal/schema/schema.js.map +1 -1
  646. package/dist/internal/schema/toArbitrary.d.ts +2 -0
  647. package/dist/internal/schema/toArbitrary.d.ts.map +1 -0
  648. package/dist/internal/schema/{arbitrary.js → toArbitrary.js} +8 -83
  649. package/dist/internal/schema/toArbitrary.js.map +1 -0
  650. package/dist/internal/schema/toCodeDocument.d.ts +2 -0
  651. package/dist/internal/schema/toCodeDocument.d.ts.map +1 -0
  652. package/dist/internal/schema/toCodeDocument.js +438 -0
  653. package/dist/internal/schema/toCodeDocument.js.map +1 -0
  654. package/dist/internal/schema/toEquivalence.d.ts +2 -0
  655. package/dist/internal/schema/toEquivalence.d.ts.map +1 -0
  656. package/dist/internal/schema/{equivalence.js → toEquivalence.js} +15 -13
  657. package/dist/internal/schema/toEquivalence.js.map +1 -0
  658. package/dist/internal/schema/toJsonSchemaDocument.d.ts +2 -0
  659. package/dist/internal/schema/toJsonSchemaDocument.d.ts.map +1 -0
  660. package/dist/internal/schema/toJsonSchemaDocument.js +522 -0
  661. package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -0
  662. package/dist/internal/schema/toRepresentation.d.ts +2 -0
  663. package/dist/internal/schema/toRepresentation.d.ts.map +1 -0
  664. package/dist/internal/schema/toRepresentation.js +351 -0
  665. package/dist/internal/schema/toRepresentation.js.map +1 -0
  666. package/dist/internal/stackTraceLimit.js +3 -6
  667. package/dist/internal/stackTraceLimit.js.map +1 -1
  668. package/dist/internal/stream.js.map +1 -1
  669. package/dist/internal/tracer.js.map +1 -1
  670. package/dist/internal/trie.js +24 -10
  671. package/dist/internal/trie.js.map +1 -1
  672. package/dist/testing/FastCheck.d.ts +8 -7
  673. package/dist/testing/FastCheck.d.ts.map +1 -1
  674. package/dist/testing/FastCheck.js +8 -7
  675. package/dist/testing/FastCheck.js.map +1 -1
  676. package/dist/testing/TestClock.d.ts +57 -28
  677. package/dist/testing/TestClock.d.ts.map +1 -1
  678. package/dist/testing/TestClock.js +65 -20
  679. package/dist/testing/TestClock.js.map +1 -1
  680. package/dist/testing/TestConsole.d.ts +32 -31
  681. package/dist/testing/TestConsole.d.ts.map +1 -1
  682. package/dist/testing/TestConsole.js +24 -22
  683. package/dist/testing/TestConsole.js.map +1 -1
  684. package/dist/testing/TestSchema.d.ts +31 -31
  685. package/dist/testing/TestSchema.d.ts.map +1 -1
  686. package/dist/testing/TestSchema.js +35 -34
  687. package/dist/testing/TestSchema.js.map +1 -1
  688. package/dist/testing/index.js.map +1 -1
  689. package/dist/unstable/ai/AiError.d.ts +121 -144
  690. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  691. package/dist/unstable/ai/AiError.js +118 -140
  692. package/dist/unstable/ai/AiError.js.map +1 -1
  693. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +22 -7
  694. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  695. package/dist/unstable/ai/AnthropicStructuredOutput.js +87 -317
  696. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  697. package/dist/unstable/ai/Chat.d.ts +132 -97
  698. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  699. package/dist/unstable/ai/Chat.js +56 -52
  700. package/dist/unstable/ai/Chat.js.map +1 -1
  701. package/dist/unstable/ai/EmbeddingModel.d.ts +1 -1
  702. package/dist/unstable/ai/EmbeddingModel.js +1 -1
  703. package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
  704. package/dist/unstable/ai/IdGenerator.d.ts +32 -28
  705. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  706. package/dist/unstable/ai/IdGenerator.js +26 -21
  707. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  708. package/dist/unstable/ai/LanguageModel.d.ts +111 -68
  709. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  710. package/dist/unstable/ai/LanguageModel.js +127 -83
  711. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  712. package/dist/unstable/ai/McpProtocol.d.ts +30 -0
  713. package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
  714. package/dist/unstable/ai/McpProtocol.js +20 -0
  715. package/dist/unstable/ai/McpProtocol.js.map +1 -0
  716. package/dist/unstable/ai/McpSchema.d.ts +198 -132
  717. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  718. package/dist/unstable/ai/McpSchema.js +79 -71
  719. package/dist/unstable/ai/McpSchema.js.map +1 -1
  720. package/dist/unstable/ai/McpServer.d.ts +71 -62
  721. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  722. package/dist/unstable/ai/McpServer.js +777 -245
  723. package/dist/unstable/ai/McpServer.js.map +1 -1
  724. package/dist/unstable/ai/Model.d.ts +8 -19
  725. package/dist/unstable/ai/Model.d.ts.map +1 -1
  726. package/dist/unstable/ai/Model.js +9 -20
  727. package/dist/unstable/ai/Model.js.map +1 -1
  728. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +33 -11
  729. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  730. package/dist/unstable/ai/OpenAiStructuredOutput.js +194 -378
  731. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  732. package/dist/unstable/ai/Prompt.d.ts +131 -44
  733. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  734. package/dist/unstable/ai/Prompt.js +100 -36
  735. package/dist/unstable/ai/Prompt.js.map +1 -1
  736. package/dist/unstable/ai/Response.d.ts +47 -33
  737. package/dist/unstable/ai/Response.d.ts.map +1 -1
  738. package/dist/unstable/ai/Response.js +23 -18
  739. package/dist/unstable/ai/Response.js.map +1 -1
  740. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  741. package/dist/unstable/ai/Telemetry.d.ts +46 -13
  742. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  743. package/dist/unstable/ai/Telemetry.js +18 -7
  744. package/dist/unstable/ai/Telemetry.js.map +1 -1
  745. package/dist/unstable/ai/Tokenizer.d.ts +14 -3
  746. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  747. package/dist/unstable/ai/Tokenizer.js +10 -2
  748. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  749. package/dist/unstable/ai/Tool.d.ts +63 -44
  750. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  751. package/dist/unstable/ai/Tool.js +70 -55
  752. package/dist/unstable/ai/Tool.js.map +1 -1
  753. package/dist/unstable/ai/Toolkit.d.ts +35 -9
  754. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  755. package/dist/unstable/ai/Toolkit.js +32 -14
  756. package/dist/unstable/ai/Toolkit.js.map +1 -1
  757. package/dist/unstable/ai/index.d.ts +4 -0
  758. package/dist/unstable/ai/index.d.ts.map +1 -1
  759. package/dist/unstable/ai/index.js +4 -0
  760. package/dist/unstable/ai/index.js.map +1 -1
  761. package/dist/unstable/ai/internal/codec-transformer.js +15 -12
  762. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  763. package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
  764. package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
  765. package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
  766. package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
  767. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
  768. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
  769. package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
  770. package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
  771. package/dist/unstable/ai/internal/structured-output.d.ts +2 -0
  772. package/dist/unstable/ai/internal/structured-output.d.ts.map +1 -0
  773. package/dist/unstable/ai/internal/structured-output.js +315 -0
  774. package/dist/unstable/ai/internal/structured-output.js.map +1 -0
  775. package/dist/unstable/cli/Argument.d.ts +279 -72
  776. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  777. package/dist/unstable/cli/Argument.js +113 -34
  778. package/dist/unstable/cli/Argument.js.map +1 -1
  779. package/dist/unstable/cli/CliConfig.d.ts +76 -0
  780. package/dist/unstable/cli/CliConfig.d.ts.map +1 -0
  781. package/dist/unstable/cli/CliConfig.js +63 -0
  782. package/dist/unstable/cli/CliConfig.js.map +1 -0
  783. package/dist/unstable/cli/CliError.d.ts +126 -76
  784. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  785. package/dist/unstable/cli/CliError.js +138 -75
  786. package/dist/unstable/cli/CliError.js.map +1 -1
  787. package/dist/unstable/cli/CliOutput.d.ts +35 -54
  788. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  789. package/dist/unstable/cli/CliOutput.js +26 -42
  790. package/dist/unstable/cli/CliOutput.js.map +1 -1
  791. package/dist/unstable/cli/Command.d.ts +765 -109
  792. package/dist/unstable/cli/Command.d.ts.map +1 -1
  793. package/dist/unstable/cli/Command.js +335 -52
  794. package/dist/unstable/cli/Command.js.map +1 -1
  795. package/dist/unstable/cli/Completions.js.map +1 -1
  796. package/dist/unstable/cli/Flag.d.ts +418 -138
  797. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  798. package/dist/unstable/cli/Flag.js +197 -71
  799. package/dist/unstable/cli/Flag.js.map +1 -1
  800. package/dist/unstable/cli/GlobalFlag.d.ts +24 -3
  801. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
  802. package/dist/unstable/cli/GlobalFlag.js +20 -4
  803. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  804. package/dist/unstable/cli/HelpDoc.d.ts +12 -4
  805. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  806. package/dist/unstable/cli/Param.d.ts +299 -83
  807. package/dist/unstable/cli/Param.d.ts.map +1 -1
  808. package/dist/unstable/cli/Param.js +152 -62
  809. package/dist/unstable/cli/Param.js.map +1 -1
  810. package/dist/unstable/cli/Primitive.d.ts +370 -149
  811. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  812. package/dist/unstable/cli/Primitive.js +377 -162
  813. package/dist/unstable/cli/Primitive.js.map +1 -1
  814. package/dist/unstable/cli/Prompt.d.ts +23 -14
  815. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  816. package/dist/unstable/cli/Prompt.js +54 -31
  817. package/dist/unstable/cli/Prompt.js.map +1 -1
  818. package/dist/unstable/cli/index.d.ts +4 -0
  819. package/dist/unstable/cli/index.d.ts.map +1 -1
  820. package/dist/unstable/cli/index.js +4 -0
  821. package/dist/unstable/cli/index.js.map +1 -1
  822. package/dist/unstable/cli/internal/ansi.d.ts.map +1 -1
  823. package/dist/unstable/cli/internal/ansi.js +4 -2
  824. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  825. package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
  826. package/dist/unstable/cli/internal/command.d.ts +5 -3
  827. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  828. package/dist/unstable/cli/internal/command.js +21 -13
  829. package/dist/unstable/cli/internal/command.js.map +1 -1
  830. package/dist/unstable/cli/internal/completions/bash.js +69 -9
  831. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  832. package/dist/unstable/cli/internal/completions/descriptor.js +24 -18
  833. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
  834. package/dist/unstable/cli/internal/completions/fish.js +5 -5
  835. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  836. package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
  837. package/dist/unstable/cli/internal/config.d.ts +0 -48
  838. package/dist/unstable/cli/internal/config.d.ts.map +1 -1
  839. package/dist/unstable/cli/internal/config.js +8 -10
  840. package/dist/unstable/cli/internal/config.js.map +1 -1
  841. package/dist/unstable/cli/internal/help.d.ts.map +1 -1
  842. package/dist/unstable/cli/internal/help.js +4 -2
  843. package/dist/unstable/cli/internal/help.js.map +1 -1
  844. package/dist/unstable/cli/internal/lexer.js +17 -7
  845. package/dist/unstable/cli/internal/lexer.js.map +1 -1
  846. package/dist/unstable/cli/internal/parser.js +16 -7
  847. package/dist/unstable/cli/internal/parser.js.map +1 -1
  848. package/dist/unstable/cli/internal/wizard.d.ts +13 -0
  849. package/dist/unstable/cli/internal/wizard.d.ts.map +1 -0
  850. package/dist/unstable/cli/internal/wizard.js +212 -0
  851. package/dist/unstable/cli/internal/wizard.js.map +1 -0
  852. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  853. package/dist/unstable/cluster/ClusterError.js +7 -7
  854. package/dist/unstable/cluster/ClusterError.js.map +1 -1
  855. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  856. package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
  857. package/dist/unstable/cluster/ClusterSchema.js +8 -8
  858. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  859. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  860. package/dist/unstable/cluster/ClusterWorkflowEngine.js +32 -16
  861. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  862. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  863. package/dist/unstable/cluster/Entity.d.ts +12 -12
  864. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  865. package/dist/unstable/cluster/Entity.js +9 -9
  866. package/dist/unstable/cluster/Entity.js.map +1 -1
  867. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  868. package/dist/unstable/cluster/EntityId.js.map +1 -1
  869. package/dist/unstable/cluster/EntityProxy.d.ts +7 -5
  870. package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
  871. package/dist/unstable/cluster/EntityProxy.js +8 -5
  872. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  873. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  874. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  875. package/dist/unstable/cluster/EntityResource.js +2 -2
  876. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  877. package/dist/unstable/cluster/EntityType.js.map +1 -1
  878. package/dist/unstable/cluster/Envelope.d.ts +3 -3
  879. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  880. package/dist/unstable/cluster/Envelope.js +5 -4
  881. package/dist/unstable/cluster/Envelope.js.map +1 -1
  882. package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
  883. package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
  884. package/dist/unstable/cluster/HttpRunner.js +6 -4
  885. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  886. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  887. package/dist/unstable/cluster/MachineId.js.map +1 -1
  888. package/dist/unstable/cluster/Message.d.ts +9 -9
  889. package/dist/unstable/cluster/Message.js +6 -6
  890. package/dist/unstable/cluster/Message.js.map +1 -1
  891. package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
  892. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  893. package/dist/unstable/cluster/MessageStorage.js +13 -6
  894. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  895. package/dist/unstable/cluster/Reply.d.ts +8 -0
  896. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  897. package/dist/unstable/cluster/Reply.js +17 -5
  898. package/dist/unstable/cluster/Reply.js.map +1 -1
  899. package/dist/unstable/cluster/Runner.d.ts +1 -1
  900. package/dist/unstable/cluster/Runner.js +1 -1
  901. package/dist/unstable/cluster/Runner.js.map +1 -1
  902. package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
  903. package/dist/unstable/cluster/RunnerAddress.js +1 -1
  904. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  905. package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
  906. package/dist/unstable/cluster/RunnerHealth.js +1 -1
  907. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  908. package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
  909. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  910. package/dist/unstable/cluster/RunnerServer.js +29 -23
  911. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  912. package/dist/unstable/cluster/RunnerStorage.d.ts +3 -4
  913. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  914. package/dist/unstable/cluster/RunnerStorage.js +9 -8
  915. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  916. package/dist/unstable/cluster/Runners.d.ts +11 -15
  917. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  918. package/dist/unstable/cluster/Runners.js +32 -22
  919. package/dist/unstable/cluster/Runners.js.map +1 -1
  920. package/dist/unstable/cluster/ShardId.js +1 -1
  921. package/dist/unstable/cluster/ShardId.js.map +1 -1
  922. package/dist/unstable/cluster/Sharding.d.ts +2 -2
  923. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  924. package/dist/unstable/cluster/Sharding.js +164 -31
  925. package/dist/unstable/cluster/Sharding.js.map +1 -1
  926. package/dist/unstable/cluster/ShardingConfig.d.ts +13 -5
  927. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  928. package/dist/unstable/cluster/ShardingConfig.js +3 -3
  929. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  930. package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
  931. package/dist/unstable/cluster/SingleRunner.d.ts +4 -2
  932. package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
  933. package/dist/unstable/cluster/SingleRunner.js +2 -1
  934. package/dist/unstable/cluster/SingleRunner.js.map +1 -1
  935. package/dist/unstable/cluster/Singleton.js.map +1 -1
  936. package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
  937. package/dist/unstable/cluster/SingletonAddress.js +1 -1
  938. package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
  939. package/dist/unstable/cluster/Snowflake.d.ts +8 -8
  940. package/dist/unstable/cluster/Snowflake.js +8 -8
  941. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  942. package/dist/unstable/cluster/SocketRunner.js.map +1 -1
  943. package/dist/unstable/cluster/SqlMessageStorage.d.ts +7 -4
  944. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  945. package/dist/unstable/cluster/SqlMessageStorage.js +56 -25
  946. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  947. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  948. package/dist/unstable/cluster/SqlRunnerStorage.js +141 -79
  949. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  950. package/dist/unstable/cluster/TestRunner.js.map +1 -1
  951. package/dist/unstable/cluster/index.js.map +1 -1
  952. package/dist/unstable/cluster/internal/entityManager.js +25 -13
  953. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  954. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  955. package/dist/unstable/cluster/internal/hash.js.map +1 -1
  956. package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
  957. package/dist/unstable/cluster/internal/resourceMap.js +2 -2
  958. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  959. package/dist/unstable/cluster/internal/resourceRef.js +17 -0
  960. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  961. package/dist/unstable/cluster/internal/shardLock.d.ts +2 -0
  962. package/dist/unstable/cluster/internal/shardLock.d.ts.map +1 -0
  963. package/dist/unstable/cluster/internal/shardLock.js +4 -0
  964. package/dist/unstable/cluster/internal/shardLock.js.map +1 -0
  965. package/dist/unstable/devtools/DevTools.js.map +1 -1
  966. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  967. package/dist/unstable/devtools/DevToolsClient.js +7 -2
  968. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  969. package/dist/unstable/devtools/DevToolsSchema.d.ts +20 -20
  970. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  971. package/dist/unstable/devtools/DevToolsSchema.js +8 -5
  972. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  973. package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
  974. package/dist/unstable/devtools/index.js.map +1 -1
  975. package/dist/unstable/encoding/Ini.d.ts +20 -0
  976. package/dist/unstable/encoding/Ini.d.ts.map +1 -0
  977. package/dist/unstable/encoding/Ini.js +153 -0
  978. package/dist/unstable/encoding/Ini.js.map +1 -0
  979. package/dist/unstable/encoding/Msgpack.d.ts +2 -1
  980. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  981. package/dist/unstable/encoding/Msgpack.js +31 -19
  982. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  983. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  984. package/dist/unstable/encoding/Ndjson.js +7 -1
  985. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  986. package/dist/unstable/encoding/Sse.d.ts +72 -8
  987. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  988. package/dist/unstable/encoding/Sse.js +72 -31
  989. package/dist/unstable/encoding/Sse.js.map +1 -1
  990. package/dist/unstable/encoding/Toml.d.ts +19 -0
  991. package/dist/unstable/encoding/Toml.d.ts.map +1 -0
  992. package/dist/unstable/encoding/Toml.js +434 -0
  993. package/dist/unstable/encoding/Toml.js.map +1 -0
  994. package/dist/unstable/encoding/Yaml.d.ts +19 -0
  995. package/dist/unstable/encoding/Yaml.d.ts.map +1 -0
  996. package/dist/unstable/encoding/Yaml.js +461 -0
  997. package/dist/unstable/encoding/Yaml.js.map +1 -0
  998. package/dist/unstable/encoding/index.d.ts +12 -0
  999. package/dist/unstable/encoding/index.d.ts.map +1 -1
  1000. package/dist/unstable/encoding/index.js +12 -0
  1001. package/dist/unstable/encoding/index.js.map +1 -1
  1002. package/dist/unstable/eventlog/Event.d.ts +20 -20
  1003. package/dist/unstable/eventlog/Event.js.map +1 -1
  1004. package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
  1005. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  1006. package/dist/unstable/eventlog/EventJournal.d.ts +17 -17
  1007. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  1008. package/dist/unstable/eventlog/EventJournal.js +27 -19
  1009. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  1010. package/dist/unstable/eventlog/EventLog.d.ts +3 -3
  1011. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  1012. package/dist/unstable/eventlog/EventLog.js +18 -14
  1013. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  1014. package/dist/unstable/eventlog/EventLogEncryption.d.ts +8 -7
  1015. package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
  1016. package/dist/unstable/eventlog/EventLogEncryption.js +16 -14
  1017. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  1018. package/dist/unstable/eventlog/EventLogMessage.d.ts +31 -31
  1019. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
  1020. package/dist/unstable/eventlog/EventLogMessage.js +12 -8
  1021. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  1022. package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
  1023. package/dist/unstable/eventlog/EventLogRemote.js +5 -5
  1024. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  1025. package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
  1026. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  1027. package/dist/unstable/eventlog/EventLogServer.js +45 -21
  1028. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  1029. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
  1030. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  1031. package/dist/unstable/eventlog/EventLogServerEncrypted.js +16 -7
  1032. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  1033. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
  1034. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  1035. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +15 -7
  1036. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  1037. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
  1038. package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
  1039. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
  1040. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
  1041. package/dist/unstable/eventlog/SqlEventJournal.js +3 -6
  1042. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  1043. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +1 -1
  1044. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  1045. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +3 -3
  1046. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  1047. package/dist/unstable/eventlog/index.js.map +1 -1
  1048. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
  1049. package/dist/unstable/http/Cookies.d.ts +2 -2
  1050. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  1051. package/dist/unstable/http/Cookies.js +54 -40
  1052. package/dist/unstable/http/Cookies.js.map +1 -1
  1053. package/dist/unstable/http/Etag.d.ts +1 -1
  1054. package/dist/unstable/http/Etag.js +1 -1
  1055. package/dist/unstable/http/Etag.js.map +1 -1
  1056. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  1057. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  1058. package/dist/unstable/http/FindMyWay/internal/queryString.d.ts +11 -0
  1059. package/dist/unstable/http/FindMyWay/internal/queryString.d.ts.map +1 -0
  1060. package/dist/unstable/http/FindMyWay/internal/queryString.js +259 -0
  1061. package/dist/unstable/http/FindMyWay/internal/queryString.js.map +1 -0
  1062. package/dist/unstable/http/FindMyWay/internal/router.d.ts +2 -0
  1063. package/dist/unstable/http/FindMyWay/internal/router.d.ts.map +1 -0
  1064. package/dist/unstable/http/FindMyWay/internal/router.js +665 -0
  1065. package/dist/unstable/http/FindMyWay/internal/router.js.map +1 -0
  1066. package/dist/unstable/http/FindMyWay.d.ts +33 -8
  1067. package/dist/unstable/http/FindMyWay.d.ts.map +1 -1
  1068. package/dist/unstable/http/FindMyWay.js +4 -7
  1069. package/dist/unstable/http/FindMyWay.js.map +1 -1
  1070. package/dist/unstable/http/Headers.d.ts +2 -2
  1071. package/dist/unstable/http/Headers.js +10 -10
  1072. package/dist/unstable/http/Headers.js.map +1 -1
  1073. package/dist/unstable/http/HttpBody.d.ts +5 -3
  1074. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  1075. package/dist/unstable/http/HttpBody.js +11 -5
  1076. package/dist/unstable/http/HttpBody.js.map +1 -1
  1077. package/dist/unstable/http/HttpClient.d.ts +110 -47
  1078. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  1079. package/dist/unstable/http/HttpClient.js +79 -36
  1080. package/dist/unstable/http/HttpClient.js.map +1 -1
  1081. package/dist/unstable/http/HttpClientError.js +1 -1
  1082. package/dist/unstable/http/HttpClientError.js.map +1 -1
  1083. package/dist/unstable/http/HttpClientRequest.d.ts +44 -0
  1084. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  1085. package/dist/unstable/http/HttpClientRequest.js +16 -12
  1086. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  1087. package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
  1088. package/dist/unstable/http/HttpClientResponse.js +3 -18
  1089. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  1090. package/dist/unstable/http/HttpEffect.d.ts +7 -9
  1091. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  1092. package/dist/unstable/http/HttpEffect.js +7 -8
  1093. package/dist/unstable/http/HttpEffect.js.map +1 -1
  1094. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  1095. package/dist/unstable/http/HttpMethod.d.ts +6 -9
  1096. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  1097. package/dist/unstable/http/HttpMethod.js +6 -9
  1098. package/dist/unstable/http/HttpMethod.js.map +1 -1
  1099. package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
  1100. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  1101. package/dist/unstable/http/HttpMiddleware.js +164 -39
  1102. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  1103. package/dist/unstable/http/HttpPlatform.d.ts +76 -0
  1104. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  1105. package/dist/unstable/http/HttpPlatform.js +53 -3
  1106. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  1107. package/dist/unstable/http/HttpRouter.d.ts +91 -92
  1108. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  1109. package/dist/unstable/http/HttpRouter.js +78 -79
  1110. package/dist/unstable/http/HttpRouter.js.map +1 -1
  1111. package/dist/unstable/http/HttpServer.d.ts +13 -13
  1112. package/dist/unstable/http/HttpServer.js +6 -6
  1113. package/dist/unstable/http/HttpServer.js.map +1 -1
  1114. package/dist/unstable/http/HttpServerError.d.ts +2 -2
  1115. package/dist/unstable/http/HttpServerError.js +2 -2
  1116. package/dist/unstable/http/HttpServerError.js.map +1 -1
  1117. package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
  1118. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  1119. package/dist/unstable/http/HttpServerRequest.js +23 -15
  1120. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  1121. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  1122. package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
  1123. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  1124. package/dist/unstable/http/HttpServerResponse.js +17 -5
  1125. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  1126. package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
  1127. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
  1128. package/dist/unstable/http/HttpStaticServer.js +35 -7
  1129. package/dist/unstable/http/HttpStaticServer.js.map +1 -1
  1130. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  1131. package/dist/unstable/http/Multipart.d.ts +28 -9
  1132. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  1133. package/dist/unstable/http/Multipart.js +68 -36
  1134. package/dist/unstable/http/Multipart.js.map +1 -1
  1135. package/dist/unstable/http/MultipartParser/HeadersParser.d.ts +53 -0
  1136. package/dist/unstable/http/MultipartParser/HeadersParser.d.ts.map +1 -0
  1137. package/dist/unstable/http/MultipartParser/HeadersParser.js +14 -0
  1138. package/dist/unstable/http/MultipartParser/HeadersParser.js.map +1 -0
  1139. package/dist/unstable/http/MultipartParser/Search.d.ts +11 -0
  1140. package/dist/unstable/http/MultipartParser/Search.d.ts.map +1 -0
  1141. package/dist/unstable/http/MultipartParser/Search.js +14 -0
  1142. package/dist/unstable/http/MultipartParser/Search.js.map +1 -0
  1143. package/dist/unstable/http/MultipartParser/internal/contentType.d.ts +5 -0
  1144. package/dist/unstable/http/MultipartParser/internal/contentType.d.ts.map +1 -0
  1145. package/dist/unstable/http/MultipartParser/internal/contentType.js +82 -0
  1146. package/dist/unstable/http/MultipartParser/internal/contentType.js.map +1 -0
  1147. package/dist/unstable/http/MultipartParser/internal/headers.d.ts +3 -0
  1148. package/dist/unstable/http/MultipartParser/internal/headers.d.ts.map +1 -0
  1149. package/dist/unstable/http/MultipartParser/internal/headers.js +208 -0
  1150. package/dist/unstable/http/MultipartParser/internal/headers.js.map +1 -0
  1151. package/dist/unstable/http/MultipartParser/internal/multipart.d.ts +8 -0
  1152. package/dist/unstable/http/MultipartParser/internal/multipart.d.ts.map +1 -0
  1153. package/dist/unstable/http/MultipartParser/internal/multipart.js +241 -0
  1154. package/dist/unstable/http/MultipartParser/internal/multipart.js.map +1 -0
  1155. package/dist/unstable/http/MultipartParser/internal/search.d.ts +5 -0
  1156. package/dist/unstable/http/MultipartParser/internal/search.d.ts.map +1 -0
  1157. package/dist/unstable/http/MultipartParser/internal/search.js +120 -0
  1158. package/dist/unstable/http/MultipartParser/internal/search.js.map +1 -0
  1159. package/dist/unstable/http/MultipartParser.d.ts +98 -0
  1160. package/dist/unstable/http/MultipartParser.d.ts.map +1 -0
  1161. package/dist/unstable/http/MultipartParser.js +23 -0
  1162. package/dist/unstable/http/MultipartParser.js.map +1 -0
  1163. package/dist/unstable/http/Template.d.ts.map +1 -1
  1164. package/dist/unstable/http/Template.js +3 -3
  1165. package/dist/unstable/http/Template.js.map +1 -1
  1166. package/dist/unstable/http/Url.d.ts +33 -63
  1167. package/dist/unstable/http/Url.d.ts.map +1 -1
  1168. package/dist/unstable/http/Url.js +14 -28
  1169. package/dist/unstable/http/Url.js.map +1 -1
  1170. package/dist/unstable/http/UrlParams.d.ts +10 -18
  1171. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  1172. package/dist/unstable/http/UrlParams.js +26 -31
  1173. package/dist/unstable/http/UrlParams.js.map +1 -1
  1174. package/dist/unstable/http/index.d.ts +1 -1
  1175. package/dist/unstable/http/index.d.ts.map +1 -1
  1176. package/dist/unstable/http/index.js +1 -1
  1177. package/dist/unstable/http/index.js.map +1 -1
  1178. package/dist/unstable/http/internal/compression.d.ts +2 -0
  1179. package/dist/unstable/http/internal/compression.d.ts.map +1 -0
  1180. package/dist/unstable/http/internal/compression.js +155 -0
  1181. package/dist/unstable/http/internal/compression.js.map +1 -0
  1182. package/dist/unstable/http/internal/httpBody.d.ts +2 -0
  1183. package/dist/unstable/http/internal/httpBody.d.ts.map +1 -0
  1184. package/dist/unstable/http/internal/httpBody.js +10 -0
  1185. package/dist/unstable/http/internal/httpBody.js.map +1 -0
  1186. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
  1187. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  1188. package/dist/unstable/httpapi/HttpApi.js +9 -9
  1189. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  1190. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +2 -2
  1191. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  1192. package/dist/unstable/httpapi/HttpApiBuilder.js +82 -30
  1193. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  1194. package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
  1195. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  1196. package/dist/unstable/httpapi/HttpApiClient.js +89 -51
  1197. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  1198. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +48 -46
  1199. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  1200. package/dist/unstable/httpapi/HttpApiEndpoint.js +73 -16
  1201. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  1202. package/dist/unstable/httpapi/HttpApiError.d.ts +18 -18
  1203. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  1204. package/dist/unstable/httpapi/HttpApiError.js +30 -30
  1205. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  1206. package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
  1207. package/dist/unstable/httpapi/HttpApiGroup.js +2 -2
  1208. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  1209. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
  1210. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  1211. package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
  1212. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  1213. package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
  1214. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  1215. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  1216. package/dist/unstable/httpapi/HttpApiSchema.d.ts +225 -6
  1217. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  1218. package/dist/unstable/httpapi/HttpApiSchema.js +174 -4
  1219. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  1220. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  1221. package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
  1222. package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
  1223. package/dist/unstable/httpapi/OpenApi.d.ts +21 -13
  1224. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  1225. package/dist/unstable/httpapi/OpenApi.js +110 -57
  1226. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  1227. package/dist/unstable/httpapi/index.js.map +1 -1
  1228. package/dist/unstable/httpapi/internal/html.js.map +1 -1
  1229. package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
  1230. package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
  1231. package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
  1232. package/dist/unstable/observability/Otlp.js.map +1 -1
  1233. package/dist/unstable/observability/OtlpExporter.d.ts +71 -2
  1234. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  1235. package/dist/unstable/observability/OtlpExporter.js +86 -7
  1236. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  1237. package/dist/unstable/observability/OtlpLogger.d.ts +4 -3
  1238. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  1239. package/dist/unstable/observability/OtlpLogger.js +4 -4
  1240. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  1241. package/dist/unstable/observability/OtlpMetrics.d.ts +11 -4
  1242. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  1243. package/dist/unstable/observability/OtlpMetrics.js +31 -15
  1244. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  1245. package/dist/unstable/observability/OtlpResource.d.ts +16 -7
  1246. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  1247. package/dist/unstable/observability/OtlpResource.js +21 -12
  1248. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  1249. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  1250. package/dist/unstable/observability/OtlpTracer.d.ts +4 -3
  1251. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  1252. package/dist/unstable/observability/OtlpTracer.js +3 -3
  1253. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  1254. package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
  1255. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  1256. package/dist/unstable/observability/PrometheusMetrics.js +10 -3
  1257. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  1258. package/dist/unstable/observability/index.js.map +1 -1
  1259. package/dist/unstable/observability/internal/otlpEnv.js +1 -1
  1260. package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
  1261. package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
  1262. package/dist/unstable/observability/internal/protobuf.js +3 -0
  1263. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  1264. package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
  1265. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  1266. package/dist/unstable/persistence/KeyValueStore.js +22 -13
  1267. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  1268. package/dist/unstable/persistence/Persistable.d.ts +8 -8
  1269. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  1270. package/dist/unstable/persistence/Persistable.js +2 -1
  1271. package/dist/unstable/persistence/Persistable.js.map +1 -1
  1272. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  1273. package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
  1274. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  1275. package/dist/unstable/persistence/PersistedQueue.js +15 -15
  1276. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  1277. package/dist/unstable/persistence/Persistence.d.ts +3 -3
  1278. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  1279. package/dist/unstable/persistence/Persistence.js +108 -22
  1280. package/dist/unstable/persistence/Persistence.js.map +1 -1
  1281. package/dist/unstable/persistence/RateLimiter.d.ts +47 -26
  1282. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  1283. package/dist/unstable/persistence/RateLimiter.js +31 -47
  1284. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  1285. package/dist/unstable/persistence/Redis.d.ts +2 -2
  1286. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  1287. package/dist/unstable/persistence/Redis.js +9 -7
  1288. package/dist/unstable/persistence/Redis.js.map +1 -1
  1289. package/dist/unstable/persistence/index.js.map +1 -1
  1290. package/dist/unstable/process/ChildProcess.d.ts +72 -21
  1291. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1292. package/dist/unstable/process/ChildProcess.js +14 -5
  1293. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1294. package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
  1295. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1296. package/dist/unstable/process/ChildProcessSpawner.js +4 -2
  1297. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1298. package/dist/unstable/process/index.js.map +1 -1
  1299. package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
  1300. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  1301. package/dist/unstable/reactivity/AsyncResult.js +14 -13
  1302. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1303. package/dist/unstable/reactivity/Atom.d.ts +131 -30
  1304. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1305. package/dist/unstable/reactivity/Atom.js +53 -34
  1306. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1307. package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
  1308. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1309. package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
  1310. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1311. package/dist/unstable/reactivity/AtomRef.js.map +1 -1
  1312. package/dist/unstable/reactivity/AtomRegistry.js +25 -4
  1313. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1314. package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
  1315. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1316. package/dist/unstable/reactivity/AtomRpc.js +4 -1
  1317. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1318. package/dist/unstable/reactivity/Hydration.d.ts +1 -1
  1319. package/dist/unstable/reactivity/Hydration.js +1 -1
  1320. package/dist/unstable/reactivity/Hydration.js.map +1 -1
  1321. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1322. package/dist/unstable/reactivity/index.js.map +1 -1
  1323. package/dist/unstable/rpc/Rpc.d.ts +35 -33
  1324. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1325. package/dist/unstable/rpc/Rpc.js +4 -2
  1326. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1327. package/dist/unstable/rpc/RpcClient.d.ts +26 -12
  1328. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1329. package/dist/unstable/rpc/RpcClient.js +40 -22
  1330. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1331. package/dist/unstable/rpc/RpcClientError.js +2 -2
  1332. package/dist/unstable/rpc/RpcClientError.js.map +1 -1
  1333. package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
  1334. package/dist/unstable/rpc/RpcGroup.js +1 -1
  1335. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1336. package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
  1337. package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
  1338. package/dist/unstable/rpc/RpcMessage.js +6 -6
  1339. package/dist/unstable/rpc/RpcMessage.js.map +1 -1
  1340. package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
  1341. package/dist/unstable/rpc/RpcMiddleware.js +1 -1
  1342. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1343. package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
  1344. package/dist/unstable/rpc/RpcSchema.js +3 -3
  1345. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1346. package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
  1347. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1348. package/dist/unstable/rpc/RpcSerialization.js +177 -96
  1349. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1350. package/dist/unstable/rpc/RpcServer.d.ts +13 -13
  1351. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  1352. package/dist/unstable/rpc/RpcServer.js +20 -15
  1353. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1354. package/dist/unstable/rpc/RpcTest.js.map +1 -1
  1355. package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
  1356. package/dist/unstable/rpc/RpcWorker.js +4 -4
  1357. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1358. package/dist/unstable/rpc/Utils.js.map +1 -1
  1359. package/dist/unstable/rpc/index.js.map +1 -1
  1360. package/dist/unstable/schema/Model.d.ts +53 -51
  1361. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1362. package/dist/unstable/schema/Model.js +35 -33
  1363. package/dist/unstable/schema/Model.js.map +1 -1
  1364. package/dist/unstable/schema/VariantSchema.d.ts +11 -12
  1365. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  1366. package/dist/unstable/schema/VariantSchema.js +28 -17
  1367. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1368. package/dist/unstable/schema/index.js.map +1 -1
  1369. package/dist/unstable/socket/Socket.d.ts +12 -4
  1370. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1371. package/dist/unstable/socket/Socket.js +38 -17
  1372. package/dist/unstable/socket/Socket.js.map +1 -1
  1373. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1374. package/dist/unstable/socket/index.js.map +1 -1
  1375. package/dist/unstable/sql/Migrator.d.ts +9 -1
  1376. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  1377. package/dist/unstable/sql/Migrator.js +15 -2
  1378. package/dist/unstable/sql/Migrator.js.map +1 -1
  1379. package/dist/unstable/sql/SqlClient.d.ts +2 -3
  1380. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1381. package/dist/unstable/sql/SqlClient.js +8 -4
  1382. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1383. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1384. package/dist/unstable/sql/SqlError.d.ts +2 -2
  1385. package/dist/unstable/sql/SqlError.js +15 -15
  1386. package/dist/unstable/sql/SqlError.js.map +1 -1
  1387. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  1388. package/dist/unstable/sql/SqlModel.js +2 -2
  1389. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1390. package/dist/unstable/sql/SqlResolver.d.ts +5 -5
  1391. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  1392. package/dist/unstable/sql/SqlResolver.js +30 -24
  1393. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1394. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1395. package/dist/unstable/sql/SqlStream.js.map +1 -1
  1396. package/dist/unstable/sql/Statement.d.ts +6 -6
  1397. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  1398. package/dist/unstable/sql/Statement.js +30 -27
  1399. package/dist/unstable/sql/Statement.js.map +1 -1
  1400. package/dist/unstable/sql/index.js.map +1 -1
  1401. package/dist/unstable/workers/Transferable.d.ts +1 -1
  1402. package/dist/unstable/workers/Transferable.js +1 -1
  1403. package/dist/unstable/workers/Transferable.js.map +1 -1
  1404. package/dist/unstable/workers/Worker.d.ts +2 -2
  1405. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  1406. package/dist/unstable/workers/Worker.js +13 -14
  1407. package/dist/unstable/workers/Worker.js.map +1 -1
  1408. package/dist/unstable/workers/WorkerError.d.ts +7 -7
  1409. package/dist/unstable/workers/WorkerError.js +11 -11
  1410. package/dist/unstable/workers/WorkerError.js.map +1 -1
  1411. package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
  1412. package/dist/unstable/workers/WorkerRunner.js +1 -1
  1413. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1414. package/dist/unstable/workers/index.js.map +1 -1
  1415. package/dist/unstable/workflow/Activity.d.ts +2 -2
  1416. package/dist/unstable/workflow/Activity.js +2 -2
  1417. package/dist/unstable/workflow/Activity.js.map +1 -1
  1418. package/dist/unstable/workflow/DurableClock.d.ts +1 -1
  1419. package/dist/unstable/workflow/DurableClock.js +1 -1
  1420. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1421. package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
  1422. package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
  1423. package/dist/unstable/workflow/DurableDeferred.js +13 -8
  1424. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1425. package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
  1426. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  1427. package/dist/unstable/workflow/DurableQueue.js +22 -20
  1428. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  1429. package/dist/unstable/workflow/Workflow.d.ts +21 -21
  1430. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1431. package/dist/unstable/workflow/Workflow.js +13 -14
  1432. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1433. package/dist/unstable/workflow/WorkflowEngine.d.ts +26 -3
  1434. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  1435. package/dist/unstable/workflow/WorkflowEngine.js +72 -6
  1436. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1437. package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
  1438. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  1439. package/dist/unstable/workflow/WorkflowProxy.js +4 -2
  1440. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  1441. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1442. package/dist/unstable/workflow/index.js.map +1 -1
  1443. package/dist/unstable/workflow/internal/crypto.js.map +1 -1
  1444. package/package.json +12 -16
  1445. package/src/Array.ts +1069 -1071
  1446. package/src/BigDecimal.ts +433 -756
  1447. package/src/BigInt.ts +213 -269
  1448. package/src/Boolean.ts +146 -188
  1449. package/src/Brand.ts +4 -4
  1450. package/src/Cache.ts +469 -851
  1451. package/src/Cause.ts +167 -277
  1452. package/src/Channel.ts +982 -831
  1453. package/src/ChannelSchema.ts +1 -1
  1454. package/src/Chunk.ts +841 -1181
  1455. package/src/Clock.ts +181 -49
  1456. package/src/Combiner.ts +20 -33
  1457. package/src/Config.ts +642 -335
  1458. package/src/ConfigProvider.ts +267 -135
  1459. package/src/Console.ts +289 -39
  1460. package/src/Context.ts +323 -404
  1461. package/src/Cron.ts +271 -219
  1462. package/src/Crypto.ts +30 -23
  1463. package/src/Data.ts +63 -82
  1464. package/src/DateTime.ts +564 -660
  1465. package/src/Deferred.ts +259 -258
  1466. package/src/Duration.ts +244 -311
  1467. package/src/Effect.ts +3215 -3394
  1468. package/src/Encoding.ts +22 -40
  1469. package/src/Equal.ts +59 -41
  1470. package/src/Equivalence.ts +103 -105
  1471. package/src/ErrorReporter.ts +51 -27
  1472. package/src/ExecutionPlan.ts +91 -56
  1473. package/src/Exit.ts +116 -192
  1474. package/src/Fiber.ts +82 -149
  1475. package/src/FiberHandle.ts +155 -107
  1476. package/src/FiberMap.ts +225 -174
  1477. package/src/FiberSet.ts +125 -83
  1478. package/src/FileSystem.ts +156 -264
  1479. package/src/Filter.ts +61 -33
  1480. package/src/Formatter.ts +69 -76
  1481. package/src/Function.ts +119 -151
  1482. package/src/Graph.ts +3258 -1102
  1483. package/src/HKT.ts +12 -6
  1484. package/src/Hash.ts +52 -83
  1485. package/src/HashMap.ts +319 -411
  1486. package/src/HashRing.ts +1 -0
  1487. package/src/HashSet.ts +177 -284
  1488. package/src/Inspectable.ts +22 -20
  1489. package/src/Iterable.ts +665 -799
  1490. package/src/JsonPatch.ts +60 -113
  1491. package/src/JsonPointer.ts +8 -8
  1492. package/src/JsonSchema.ts +408 -251
  1493. package/src/Latch.ts +23 -35
  1494. package/src/Layer.ts +366 -265
  1495. package/src/LayerMap.ts +49 -29
  1496. package/src/LayerRef.ts +6 -2
  1497. package/src/LogLevel.ts +114 -214
  1498. package/src/Logger.ts +348 -700
  1499. package/src/ManagedRuntime.ts +20 -5
  1500. package/src/Match.ts +217 -252
  1501. package/src/Metric.ts +520 -1092
  1502. package/src/MutableHashMap.ts +218 -255
  1503. package/src/MutableHashSet.ts +84 -89
  1504. package/src/MutableList.ts +77 -370
  1505. package/src/MutableRef.ts +420 -243
  1506. package/src/Newtype.ts +21 -14
  1507. package/src/NonEmptyIterable.ts +7 -137
  1508. package/src/Number.ts +196 -233
  1509. package/src/Optic.ts +303 -441
  1510. package/src/Option.ts +449 -813
  1511. package/src/Order.ts +109 -109
  1512. package/src/Ordering.ts +20 -23
  1513. package/src/PartitionedSemaphore.ts +1 -4
  1514. package/src/Path.ts +38 -41
  1515. package/src/Pipeable.ts +6 -5
  1516. package/src/PlatformError.ts +4 -4
  1517. package/src/Pool.ts +4 -2
  1518. package/src/Predicate.ts +200 -181
  1519. package/src/PrimaryKey.ts +7 -7
  1520. package/src/PubSub.ts +526 -552
  1521. package/src/Pull.ts +24 -18
  1522. package/src/Queue.ts +204 -165
  1523. package/src/Random.ts +49 -74
  1524. package/src/RcMap.ts +121 -63
  1525. package/src/RcRef.ts +24 -13
  1526. package/src/Record.ts +387 -487
  1527. package/src/Redactable.ts +10 -3
  1528. package/src/Redacted.ts +25 -25
  1529. package/src/Reducer.ts +8 -15
  1530. package/src/Ref.ts +221 -361
  1531. package/src/References.ts +102 -214
  1532. package/src/RegExp.ts +10 -14
  1533. package/src/Request.ts +36 -28
  1534. package/src/RequestResolver.ts +202 -91
  1535. package/src/Result.ts +314 -485
  1536. package/src/Runtime.ts +50 -75
  1537. package/src/Schedule.ts +311 -1737
  1538. package/src/Scheduler.ts +20 -7
  1539. package/src/Schema.ts +3476 -1914
  1540. package/src/SchemaAST.ts +902 -573
  1541. package/src/SchemaGetter.ts +351 -233
  1542. package/src/SchemaIssue.ts +367 -334
  1543. package/src/SchemaParser.ts +254 -148
  1544. package/src/SchemaRepresentation.ts +732 -3414
  1545. package/src/SchemaTransformation.ts +186 -97
  1546. package/src/Scope.ts +123 -151
  1547. package/src/ScopedCache.ts +1 -1
  1548. package/src/ScopedRef.ts +6 -4
  1549. package/src/Semaphore.ts +157 -54
  1550. package/src/Sink.ts +129 -114
  1551. package/src/Stdio.ts +24 -5
  1552. package/src/Stream.ts +2745 -3173
  1553. package/src/String.ts +275 -312
  1554. package/src/Struct.ts +114 -118
  1555. package/src/SubscriptionRef.ts +284 -252
  1556. package/src/Symbol.ts +3 -3
  1557. package/src/SynchronizedRef.ts +1 -1
  1558. package/src/Terminal.ts +3 -3
  1559. package/src/Tracer.ts +102 -55
  1560. package/src/Trie.ts +287 -679
  1561. package/src/Tuple.ts +99 -131
  1562. package/src/TxChunk.ts +201 -121
  1563. package/src/TxDeferred.ts +62 -46
  1564. package/src/TxHashMap.ts +645 -799
  1565. package/src/TxHashSet.ts +443 -356
  1566. package/src/TxPriorityQueue.ts +130 -98
  1567. package/src/TxPubSub.ts +107 -80
  1568. package/src/TxQueue.ts +215 -184
  1569. package/src/TxReentrantLock.ts +136 -101
  1570. package/src/TxRef.ts +51 -32
  1571. package/src/TxSemaphore.ts +129 -95
  1572. package/src/TxSubscriptionRef.ts +97 -70
  1573. package/src/Types.ts +127 -70
  1574. package/src/Unify.ts +45 -65
  1575. package/src/Utils.ts +23 -16
  1576. package/src/index.ts +0 -10
  1577. package/src/internal/core.ts +6 -5
  1578. package/src/internal/dateTime.ts +7 -1
  1579. package/src/internal/effect.ts +313 -137
  1580. package/src/internal/executionPlan.ts +106 -10
  1581. package/src/internal/hashMap.ts +20 -14
  1582. package/src/internal/matcher.ts +3 -3
  1583. package/src/internal/persistence.ts +2 -0
  1584. package/src/internal/rcRef.ts +24 -16
  1585. package/src/internal/record.ts +11 -7
  1586. package/src/internal/references.ts +3 -7
  1587. package/src/internal/schedule.ts +4 -4
  1588. package/src/internal/schema/annotations.ts +48 -1
  1589. package/src/internal/schema/fromJsonSchemaDocument.ts +977 -0
  1590. package/src/internal/schema/fromRepresentation.ts +339 -0
  1591. package/src/internal/schema/parser.ts +22 -0
  1592. package/src/internal/schema/schema.ts +46 -63
  1593. package/src/internal/schema/{arbitrary.ts → toArbitrary.ts} +9 -81
  1594. package/src/internal/schema/toCodeDocument.ts +572 -0
  1595. package/src/internal/schema/{equivalence.ts → toEquivalence.ts} +12 -7
  1596. package/src/internal/schema/toJsonSchemaDocument.ts +549 -0
  1597. package/src/internal/schema/toRepresentation.ts +404 -0
  1598. package/src/internal/stackTraceLimit.ts +3 -7
  1599. package/src/internal/trie.ts +21 -12
  1600. package/src/testing/FastCheck.ts +8 -7
  1601. package/src/testing/TestClock.ts +86 -32
  1602. package/src/testing/TestConsole.ts +32 -31
  1603. package/src/testing/TestSchema.ts +40 -40
  1604. package/src/unstable/ai/AiError.ts +119 -141
  1605. package/src/unstable/ai/AnthropicStructuredOutput.ts +103 -334
  1606. package/src/unstable/ai/Chat.ts +133 -98
  1607. package/src/unstable/ai/EmbeddingModel.ts +1 -1
  1608. package/src/unstable/ai/IdGenerator.ts +32 -28
  1609. package/src/unstable/ai/LanguageModel.ts +141 -97
  1610. package/src/unstable/ai/McpProtocol.ts +48 -0
  1611. package/src/unstable/ai/McpSchema.ts +92 -81
  1612. package/src/unstable/ai/McpServer.ts +1057 -303
  1613. package/src/unstable/ai/Model.ts +9 -20
  1614. package/src/unstable/ai/OpenAiStructuredOutput.ts +231 -396
  1615. package/src/unstable/ai/Prompt.ts +212 -63
  1616. package/src/unstable/ai/Response.ts +52 -38
  1617. package/src/unstable/ai/Telemetry.ts +46 -13
  1618. package/src/unstable/ai/Tokenizer.ts +14 -3
  1619. package/src/unstable/ai/Tool.ts +94 -64
  1620. package/src/unstable/ai/Toolkit.ts +45 -15
  1621. package/src/unstable/ai/index.ts +5 -0
  1622. package/src/unstable/ai/internal/codec-transformer.ts +13 -7
  1623. package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
  1624. package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
  1625. package/src/unstable/ai/internal/structured-output.ts +453 -0
  1626. package/src/unstable/cli/Argument.ts +279 -72
  1627. package/src/unstable/cli/CliConfig.ts +85 -0
  1628. package/src/unstable/cli/CliError.ts +161 -90
  1629. package/src/unstable/cli/CliOutput.ts +44 -58
  1630. package/src/unstable/cli/Command.ts +839 -123
  1631. package/src/unstable/cli/Flag.ts +418 -138
  1632. package/src/unstable/cli/GlobalFlag.ts +34 -6
  1633. package/src/unstable/cli/HelpDoc.ts +12 -4
  1634. package/src/unstable/cli/Param.ts +351 -103
  1635. package/src/unstable/cli/Primitive.ts +383 -156
  1636. package/src/unstable/cli/Prompt.ts +64 -34
  1637. package/src/unstable/cli/index.ts +5 -0
  1638. package/src/unstable/cli/internal/ansi.ts +5 -2
  1639. package/src/unstable/cli/internal/command.ts +28 -15
  1640. package/src/unstable/cli/internal/completions/bash.ts +59 -9
  1641. package/src/unstable/cli/internal/completions/descriptor.ts +14 -20
  1642. package/src/unstable/cli/internal/completions/fish.ts +5 -7
  1643. package/src/unstable/cli/internal/config.ts +8 -10
  1644. package/src/unstable/cli/internal/help.ts +4 -2
  1645. package/src/unstable/cli/internal/lexer.ts +8 -2
  1646. package/src/unstable/cli/internal/parser.ts +19 -7
  1647. package/src/unstable/cli/internal/wizard.ts +283 -0
  1648. package/src/unstable/cluster/ClusterError.ts +7 -7
  1649. package/src/unstable/cluster/ClusterSchema.ts +8 -8
  1650. package/src/unstable/cluster/ClusterWorkflowEngine.ts +36 -20
  1651. package/src/unstable/cluster/Entity.ts +23 -19
  1652. package/src/unstable/cluster/EntityProxy.ts +16 -7
  1653. package/src/unstable/cluster/EntityResource.ts +2 -2
  1654. package/src/unstable/cluster/Envelope.ts +5 -4
  1655. package/src/unstable/cluster/HttpRunner.ts +6 -4
  1656. package/src/unstable/cluster/Message.ts +9 -9
  1657. package/src/unstable/cluster/MessageStorage.ts +24 -20
  1658. package/src/unstable/cluster/Reply.ts +26 -7
  1659. package/src/unstable/cluster/Runner.ts +1 -1
  1660. package/src/unstable/cluster/RunnerAddress.ts +1 -1
  1661. package/src/unstable/cluster/RunnerHealth.ts +1 -1
  1662. package/src/unstable/cluster/RunnerServer.ts +45 -18
  1663. package/src/unstable/cluster/RunnerStorage.ts +12 -10
  1664. package/src/unstable/cluster/Runners.ts +48 -26
  1665. package/src/unstable/cluster/ShardId.ts +1 -1
  1666. package/src/unstable/cluster/Sharding.ts +223 -55
  1667. package/src/unstable/cluster/ShardingConfig.ts +8 -4
  1668. package/src/unstable/cluster/SingleRunner.ts +4 -2
  1669. package/src/unstable/cluster/SingletonAddress.ts +1 -1
  1670. package/src/unstable/cluster/Snowflake.ts +8 -8
  1671. package/src/unstable/cluster/SqlMessageStorage.ts +84 -36
  1672. package/src/unstable/cluster/SqlRunnerStorage.ts +223 -133
  1673. package/src/unstable/cluster/internal/entityManager.ts +43 -26
  1674. package/src/unstable/cluster/internal/resourceMap.ts +5 -2
  1675. package/src/unstable/cluster/internal/resourceRef.ts +27 -5
  1676. package/src/unstable/cluster/internal/shardLock.ts +9 -0
  1677. package/src/unstable/devtools/DevToolsClient.ts +3 -2
  1678. package/src/unstable/devtools/DevToolsSchema.ts +10 -5
  1679. package/src/unstable/encoding/Ini.ts +174 -0
  1680. package/src/unstable/encoding/Msgpack.ts +61 -40
  1681. package/src/unstable/encoding/Ndjson.ts +9 -1
  1682. package/src/unstable/encoding/Sse.ts +109 -37
  1683. package/src/unstable/encoding/Toml.ts +504 -0
  1684. package/src/unstable/encoding/Yaml.ts +541 -0
  1685. package/src/unstable/encoding/index.ts +15 -0
  1686. package/src/unstable/eventlog/Event.ts +20 -20
  1687. package/src/unstable/eventlog/EventGroup.ts +4 -4
  1688. package/src/unstable/eventlog/EventJournal.ts +30 -22
  1689. package/src/unstable/eventlog/EventLog.ts +24 -14
  1690. package/src/unstable/eventlog/EventLogEncryption.ts +17 -18
  1691. package/src/unstable/eventlog/EventLogMessage.ts +15 -9
  1692. package/src/unstable/eventlog/EventLogRemote.ts +5 -5
  1693. package/src/unstable/eventlog/EventLogServer.ts +41 -7
  1694. package/src/unstable/eventlog/EventLogServerEncrypted.ts +15 -7
  1695. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +15 -7
  1696. package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
  1697. package/src/unstable/eventlog/SqlEventJournal.ts +8 -6
  1698. package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +1 -1
  1699. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +6 -3
  1700. package/src/unstable/http/Cookies.ts +64 -45
  1701. package/src/unstable/http/Etag.ts +1 -1
  1702. package/src/unstable/http/FetchHttpClient.ts +3 -1
  1703. package/src/unstable/http/FindMyWay/internal/queryString.ts +420 -0
  1704. package/src/unstable/http/FindMyWay/internal/router.ts +950 -0
  1705. package/src/unstable/http/FindMyWay.ts +65 -6
  1706. package/src/unstable/http/Headers.ts +10 -10
  1707. package/src/unstable/http/HttpBody.ts +20 -5
  1708. package/src/unstable/http/HttpClient.ts +215 -78
  1709. package/src/unstable/http/HttpClientError.ts +1 -1
  1710. package/src/unstable/http/HttpClientRequest.ts +59 -12
  1711. package/src/unstable/http/HttpClientResponse.ts +5 -21
  1712. package/src/unstable/http/HttpEffect.ts +20 -19
  1713. package/src/unstable/http/HttpMethod.ts +6 -9
  1714. package/src/unstable/http/HttpMiddleware.ts +202 -39
  1715. package/src/unstable/http/HttpPlatform.ts +129 -6
  1716. package/src/unstable/http/HttpRouter.ts +109 -101
  1717. package/src/unstable/http/HttpServer.ts +13 -13
  1718. package/src/unstable/http/HttpServerError.ts +2 -2
  1719. package/src/unstable/http/HttpServerRequest.ts +31 -17
  1720. package/src/unstable/http/HttpServerResponse.ts +38 -6
  1721. package/src/unstable/http/HttpStaticServer.ts +35 -7
  1722. package/src/unstable/http/Multipart.ts +70 -37
  1723. package/src/unstable/http/MultipartParser/HeadersParser.ts +68 -0
  1724. package/src/unstable/http/MultipartParser/Search.ts +17 -0
  1725. package/src/unstable/http/MultipartParser/internal/contentType.ts +103 -0
  1726. package/src/unstable/http/MultipartParser/internal/headers.ts +244 -0
  1727. package/src/unstable/http/MultipartParser/internal/multipart.ts +279 -0
  1728. package/src/unstable/http/MultipartParser/internal/search.ts +167 -0
  1729. package/src/unstable/http/MultipartParser.ts +115 -0
  1730. package/src/unstable/http/Template.ts +7 -6
  1731. package/src/unstable/http/Url.ts +33 -63
  1732. package/src/unstable/http/UrlParams.ts +27 -32
  1733. package/src/unstable/http/index.ts +1 -1
  1734. package/src/unstable/http/internal/compression.ts +196 -0
  1735. package/src/unstable/http/internal/httpBody.ts +15 -0
  1736. package/src/unstable/httpapi/HttpApi.ts +10 -11
  1737. package/src/unstable/httpapi/HttpApiBuilder.ts +155 -34
  1738. package/src/unstable/httpapi/HttpApiClient.ts +142 -61
  1739. package/src/unstable/httpapi/HttpApiEndpoint.ts +159 -71
  1740. package/src/unstable/httpapi/HttpApiError.ts +46 -52
  1741. package/src/unstable/httpapi/HttpApiGroup.ts +17 -17
  1742. package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
  1743. package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
  1744. package/src/unstable/httpapi/HttpApiSchema.ts +359 -6
  1745. package/src/unstable/httpapi/OpenApi.ts +153 -62
  1746. package/src/unstable/observability/OtlpExporter.ts +130 -12
  1747. package/src/unstable/observability/OtlpLogger.ts +8 -6
  1748. package/src/unstable/observability/OtlpMetrics.ts +42 -21
  1749. package/src/unstable/observability/OtlpResource.ts +26 -17
  1750. package/src/unstable/observability/OtlpTracer.ts +9 -5
  1751. package/src/unstable/observability/PrometheusMetrics.ts +13 -4
  1752. package/src/unstable/observability/internal/otlpEnv.ts +1 -1
  1753. package/src/unstable/observability/internal/protobuf.ts +3 -0
  1754. package/src/unstable/persistence/KeyValueStore.ts +72 -49
  1755. package/src/unstable/persistence/Persistable.ts +11 -10
  1756. package/src/unstable/persistence/PersistedQueue.ts +18 -15
  1757. package/src/unstable/persistence/Persistence.ts +153 -26
  1758. package/src/unstable/persistence/RateLimiter.ts +79 -45
  1759. package/src/unstable/persistence/Redis.ts +14 -9
  1760. package/src/unstable/process/ChildProcess.ts +72 -21
  1761. package/src/unstable/process/ChildProcessSpawner.ts +22 -11
  1762. package/src/unstable/reactivity/AsyncResult.ts +23 -18
  1763. package/src/unstable/reactivity/Atom.ts +161 -47
  1764. package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
  1765. package/src/unstable/reactivity/AtomRegistry.ts +25 -4
  1766. package/src/unstable/reactivity/AtomRpc.ts +5 -4
  1767. package/src/unstable/reactivity/Hydration.ts +1 -1
  1768. package/src/unstable/rpc/Rpc.ts +35 -33
  1769. package/src/unstable/rpc/RpcClient.ts +65 -29
  1770. package/src/unstable/rpc/RpcClientError.ts +2 -2
  1771. package/src/unstable/rpc/RpcGroup.ts +8 -8
  1772. package/src/unstable/rpc/RpcMessage.ts +31 -30
  1773. package/src/unstable/rpc/RpcMiddleware.ts +10 -10
  1774. package/src/unstable/rpc/RpcSchema.ts +4 -4
  1775. package/src/unstable/rpc/RpcSerialization.ts +167 -68
  1776. package/src/unstable/rpc/RpcServer.ts +22 -17
  1777. package/src/unstable/rpc/RpcWorker.ts +5 -5
  1778. package/src/unstable/schema/Model.ts +52 -50
  1779. package/src/unstable/schema/VariantSchema.ts +51 -43
  1780. package/src/unstable/socket/Socket.ts +42 -19
  1781. package/src/unstable/sql/Migrator.ts +22 -9
  1782. package/src/unstable/sql/SqlClient.ts +65 -58
  1783. package/src/unstable/sql/SqlError.ts +15 -15
  1784. package/src/unstable/sql/SqlModel.ts +2 -2
  1785. package/src/unstable/sql/SqlResolver.ts +41 -31
  1786. package/src/unstable/sql/Statement.ts +44 -37
  1787. package/src/unstable/workers/Transferable.ts +1 -1
  1788. package/src/unstable/workers/Worker.ts +15 -16
  1789. package/src/unstable/workers/WorkerError.ts +12 -12
  1790. package/src/unstable/workers/WorkerRunner.ts +1 -1
  1791. package/src/unstable/workflow/Activity.ts +2 -2
  1792. package/src/unstable/workflow/DurableClock.ts +1 -1
  1793. package/src/unstable/workflow/DurableDeferred.ts +18 -13
  1794. package/src/unstable/workflow/DurableQueue.ts +22 -20
  1795. package/src/unstable/workflow/Workflow.ts +23 -26
  1796. package/src/unstable/workflow/WorkflowEngine.ts +111 -8
  1797. package/src/unstable/workflow/WorkflowProxy.ts +4 -2
  1798. package/dist/SchemaError.d.ts +0 -53
  1799. package/dist/SchemaError.d.ts.map +0 -1
  1800. package/dist/SchemaError.js +0 -61
  1801. package/dist/SchemaError.js.map +0 -1
  1802. package/dist/SchemaUtils.d.ts +0 -28
  1803. package/dist/SchemaUtils.d.ts.map +0 -1
  1804. package/dist/SchemaUtils.js +0 -45
  1805. package/dist/SchemaUtils.js.map +0 -1
  1806. package/dist/internal/schema/arbitrary.d.ts +0 -5
  1807. package/dist/internal/schema/arbitrary.d.ts.map +0 -1
  1808. package/dist/internal/schema/arbitrary.js.map +0 -1
  1809. package/dist/internal/schema/equivalence.d.ts +0 -2
  1810. package/dist/internal/schema/equivalence.d.ts.map +0 -1
  1811. package/dist/internal/schema/equivalence.js.map +0 -1
  1812. package/dist/internal/schema/representation.d.ts +0 -2
  1813. package/dist/internal/schema/representation.d.ts.map +0 -1
  1814. package/dist/internal/schema/representation.js +0 -865
  1815. package/dist/internal/schema/representation.js.map +0 -1
  1816. package/dist/internal/version.d.ts +0 -3
  1817. package/dist/internal/version.d.ts.map +0 -1
  1818. package/dist/internal/version.js +0 -2
  1819. package/dist/internal/version.js.map +0 -1
  1820. package/dist/unstable/http/Multipasta/HeadersParser.d.ts +0 -14
  1821. package/dist/unstable/http/Multipasta/HeadersParser.d.ts.map +0 -1
  1822. package/dist/unstable/http/Multipasta/HeadersParser.js +0 -14
  1823. package/dist/unstable/http/Multipasta/HeadersParser.js.map +0 -1
  1824. package/dist/unstable/http/Multipasta/Node.d.ts +0 -14
  1825. package/dist/unstable/http/Multipasta/Node.d.ts.map +0 -1
  1826. package/dist/unstable/http/Multipasta/Node.js +0 -14
  1827. package/dist/unstable/http/Multipasta/Node.js.map +0 -1
  1828. package/dist/unstable/http/Multipasta/Search.d.ts +0 -14
  1829. package/dist/unstable/http/Multipasta/Search.d.ts.map +0 -1
  1830. package/dist/unstable/http/Multipasta/Search.js +0 -14
  1831. package/dist/unstable/http/Multipasta/Search.js.map +0 -1
  1832. package/dist/unstable/http/Multipasta/Web.d.ts +0 -14
  1833. package/dist/unstable/http/Multipasta/Web.d.ts.map +0 -1
  1834. package/dist/unstable/http/Multipasta/Web.js +0 -14
  1835. package/dist/unstable/http/Multipasta/Web.js.map +0 -1
  1836. package/dist/unstable/http/Multipasta.d.ts +0 -15
  1837. package/dist/unstable/http/Multipasta.d.ts.map +0 -1
  1838. package/dist/unstable/http/Multipasta.js +0 -15
  1839. package/dist/unstable/http/Multipasta.js.map +0 -1
  1840. package/src/SchemaError.ts +0 -64
  1841. package/src/SchemaUtils.ts +0 -51
  1842. package/src/internal/schema/representation.ts +0 -795
  1843. package/src/internal/version.ts +0 -2
  1844. package/src/unstable/http/Multipasta/HeadersParser.ts +0 -14
  1845. package/src/unstable/http/Multipasta/Node.ts +0 -14
  1846. package/src/unstable/http/Multipasta/Search.ts +0 -14
  1847. package/src/unstable/http/Multipasta/Web.ts +0 -14
  1848. package/src/unstable/http/Multipasta.ts +0 -15
package/src/JsonSchema.ts CHANGED
@@ -2,13 +2,14 @@
2
2
  * Helpers for normalizing and converting JSON Schema and OpenAPI schema
3
3
  * documents. Supported inputs include JSON Schema Draft-07, Draft 2020-12,
4
4
  * OpenAPI 3.0, and OpenAPI 3.1; conversions normalize through
5
- * `Document<"draft-2020-12">` before emitting another dialect. The module also
6
- * defines document types, meta-schema constants, OpenAPI component-key helpers,
7
- * and `$ref` resolution utilities.
5
+ * `Document<"draft-2020-12">` before emitting another dialect, including
6
+ * JSON Schema Draft-04. The module also defines document types, meta-schema
7
+ * constants, OpenAPI component-key helpers, and `$ref` resolution utilities.
8
8
  *
9
9
  * @since 4.0.0
10
10
  */
11
11
  import * as Arr from "./Array.ts"
12
+ import * as InternalRecord from "./internal/record.ts"
12
13
  import { unescapeToken } from "./JsonPointer.ts"
13
14
  import * as Predicate from "./Predicate.ts"
14
15
  import * as Rec from "./Record.ts"
@@ -42,9 +43,10 @@ export interface JsonSchema {
42
43
  *
43
44
  * **Details**
44
45
  *
45
- * Supported values are `"draft-07"` for JSON Schema Draft-07,
46
- * `"draft-2020-12"` for JSON Schema Draft 2020-12 and the canonical internal
47
- * form, `"openapi-3.1"` for OpenAPI 3.1, and `"openapi-3.0"` for OpenAPI 3.0.
46
+ * Supported values are `"draft-04"` for JSON Schema Draft-04, `"draft-07"`
47
+ * for JSON Schema Draft-07, `"draft-2020-12"` for JSON Schema Draft 2020-12
48
+ * and the canonical internal form, `"openapi-3.1"` for OpenAPI 3.1, and
49
+ * `"openapi-3.0"` for OpenAPI 3.0.
48
50
  *
49
51
  * @see {@link Document} for a single root schema tagged with a dialect
50
52
  * @see {@link MultiDocument} for multiple root schemas tagged with a dialect
@@ -52,7 +54,7 @@ export interface JsonSchema {
52
54
  * @category models
53
55
  * @since 4.0.0
54
56
  */
55
- export type Dialect = "draft-07" | "draft-2020-12" | "openapi-3.1" | "openapi-3.0"
57
+ export type Dialect = "draft-04" | "draft-07" | "draft-2020-12" | "openapi-3.1" | "openapi-3.0"
56
58
 
57
59
  /**
58
60
  * The JSON Schema primitive type names.
@@ -103,12 +105,12 @@ export interface Definitions extends Record<string, JsonSchema> {}
103
105
  * The `schema` field holds the root schema *without* the definitions
104
106
  * collection. Root definitions are stored separately in `definitions` and
105
107
  * referenced via `#/$defs/<name>` for Draft-2020-12, `#/definitions/<name>`
106
- * for Draft-07, and `#/components/schemas/<name>` for OpenAPI 3.1 and
107
- * OpenAPI 3.0.
108
+ * for Draft-04 and Draft-07, and `#/components/schemas/<name>` for OpenAPI 3.1
109
+ * and OpenAPI 3.0.
108
110
  *
109
111
  * **Example** (Inspecting a parsed document)
110
112
  *
111
- * ```ts
113
+ * ```ts import.meta.vitest
112
114
  * import { JsonSchema } from "effect"
113
115
  *
114
116
  * const raw: JsonSchema.JsonSchema = {
@@ -118,9 +120,9 @@ export interface Definitions extends Record<string, JsonSchema> {}
118
120
  *
119
121
  * const doc = JsonSchema.fromSchemaDraft2020_12(raw)
120
122
  *
121
- * console.log(doc.dialect) // "draft-2020-12"
122
- * console.log(doc.schema) // { type: "string" }
123
- * console.log(doc.definitions) // { Trimmed: { type: "string", minLength: 1 } }
123
+ * doc.dialect // => "draft-2020-12"
124
+ * doc.schema // => { type: "string" }
125
+ * doc.definitions // => { Trimmed: { type: "string", minLength: 1 } }
124
126
  * ```
125
127
  *
126
128
  * @see {@link MultiDocument}
@@ -158,6 +160,20 @@ export interface MultiDocument<D extends Dialect> {
158
160
  readonly definitions: Definitions
159
161
  }
160
162
 
163
+ /**
164
+ * Represents the `$schema` meta-schema URI for JSON Schema Draft-04.
165
+ *
166
+ * **When to use**
167
+ *
168
+ * Use when constructing a Draft-04 JSON Schema document and you need a stable
169
+ * value for the root `$schema` field.
170
+ *
171
+ * @see {@link META_SCHEMA_URI_DRAFT_07} for the Draft-07 `$schema` URI
172
+ * @category constants
173
+ * @since 4.0.0
174
+ */
175
+ export const META_SCHEMA_URI_DRAFT_04 = "http://json-schema.org/draft-04/schema#"
176
+
161
177
  /**
162
178
  * Represents the `$schema` meta-schema URI for JSON Schema Draft-07.
163
179
  *
@@ -169,14 +185,15 @@ export interface MultiDocument<D extends Dialect> {
169
185
  * **Details**
170
186
  *
171
187
  * The exported value is the literal string
172
- * `http://json-schema.org/draft-07/schema`.
188
+ * `http://json-schema.org/draft-07/schema#`.
173
189
  *
190
+ * @see {@link META_SCHEMA_URI_DRAFT_04} for the Draft-04 `$schema` URI
174
191
  * @see {@link META_SCHEMA_URI_DRAFT_2020_12} for the Draft 2020-12 `$schema` URI
175
192
  *
176
193
  * @category constants
177
194
  * @since 4.0.0
178
195
  */
179
- export const META_SCHEMA_URI_DRAFT_07 = "http://json-schema.org/draft-07/schema"
196
+ export const META_SCHEMA_URI_DRAFT_07 = "http://json-schema.org/draft-07/schema#"
180
197
 
181
198
  /**
182
199
  * Represents the `$schema` meta-schema URI for JSON Schema Draft 2020-12.
@@ -202,6 +219,44 @@ const RE_DEFINITIONS = /^#\/definitions(?=\/|$)/
202
219
  const RE_DEFS = /^#\/\$defs(?=\/|$)/
203
220
  const RE_COMPONENTS_SCHEMAS = /^#\/components\/schemas(?=\/|$)/
204
221
 
222
+ const DRAFT_04_COPY_KEYWORDS = new Set([
223
+ "$ref",
224
+ "type",
225
+ "required",
226
+ "enum",
227
+ "title",
228
+ "description",
229
+ "default",
230
+ "format",
231
+ "pattern",
232
+ "minLength",
233
+ "maxLength",
234
+ "minItems",
235
+ "maxItems",
236
+ "minProperties",
237
+ "maxProperties",
238
+ "multipleOf",
239
+ "uniqueItems"
240
+ ])
241
+
242
+ const DRAFT_07_COPY_KEYWORDS = new Set([
243
+ ...DRAFT_04_COPY_KEYWORDS,
244
+ "const",
245
+ "examples",
246
+ "readOnly",
247
+ "writeOnly",
248
+ "minimum",
249
+ "maximum",
250
+ "exclusiveMinimum",
251
+ "exclusiveMaximum"
252
+ ])
253
+
254
+ const DRAFT_04_SINGLE_SUBSCHEMA_KEYWORDS = new Set(["not"])
255
+ const DRAFT_07_SINGLE_SUBSCHEMA_KEYWORDS = new Set(["not", "additionalProperties", "propertyNames"])
256
+
257
+ const MAP_SUBSCHEMA_KEYWORDS = new Set(["properties", "patternProperties"])
258
+ const ARRAY_SUBSCHEMA_KEYWORDS = new Set(["allOf", "anyOf", "oneOf"])
259
+
205
260
  /**
206
261
  * Parses a raw Draft-07 JSON Schema into a `Document<"draft-2020-12">`.
207
262
  *
@@ -223,7 +278,7 @@ const RE_COMPONENTS_SCHEMAS = /^#\/components\/schemas(?=\/|$)/
223
278
  *
224
279
  * **Example** (Parsing a Draft-07 schema)
225
280
  *
226
- * ```ts
281
+ * ```ts import.meta.vitest
227
282
  * import { JsonSchema } from "effect"
228
283
  *
229
284
  * const raw: JsonSchema.JsonSchema = {
@@ -237,8 +292,8 @@ const RE_COMPONENTS_SCHEMAS = /^#\/components\/schemas(?=\/|$)/
237
292
  * }
238
293
  *
239
294
  * const doc = JsonSchema.fromSchemaDraft07(raw)
240
- * console.log(doc.dialect) // "draft-2020-12"
241
- * console.log(doc.schema.properties) // { tags: { type: "array", items: { type: "string" } } }
295
+ * doc.dialect // => "draft-2020-12"
296
+ * doc.schema.properties // => { tags: { type: "array", items: { type: "string" } } }
242
297
  * ```
243
298
  *
244
299
  * @see {@link fromSchemaDraft2020_12}
@@ -258,7 +313,7 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
258
313
  }
259
314
 
260
315
  function walk(node: unknown, isRoot: boolean): unknown {
261
- if (Array.isArray(node)) return node.map((v) => walk(v, false))
316
+ if (Array.isArray(node)) return node.map(walkNested)
262
317
  if (!Predicate.isObject(node)) return node
263
318
 
264
319
  const out: Record<string, unknown> = {}
@@ -269,13 +324,19 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
269
324
  for (const k of Object.keys(node)) {
270
325
  const v = node[k]
271
326
 
272
- switch (k) {
273
- case "$ref":
274
- out.$ref = typeof v === "string" ? v.replace(RE_DEFINITIONS, "#/$defs") : v
275
- break
327
+ if (k === "$ref") {
328
+ out.$ref = typeof v === "string" ? v.replace(RE_DEFINITIONS, "#/$defs") : v
329
+ continue
330
+ }
331
+ if (DRAFT_07_COPY_KEYWORDS.has(k)) {
332
+ out[k] = v
333
+ continue
334
+ }
335
+ if (rewriteSubschemaKeyword(out, k, v, walkNested, DRAFT_07_SINGLE_SUBSCHEMA_KEYWORDS)) continue
276
336
 
337
+ switch (k) {
277
338
  case "definitions": {
278
- const mapped = walk_object(v, walk)
339
+ const mapped = mapObject(v, walkNested)
279
340
  if (isRoot) {
280
341
  definitions = mapped as Definitions | undefined
281
342
  } else {
@@ -291,51 +352,6 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
291
352
  additionalItems = v
292
353
  break
293
354
 
294
- case "properties":
295
- case "patternProperties": {
296
- const mapped = walk_object(v, walk)
297
- out[k] = mapped ?? v
298
- break
299
- }
300
-
301
- case "additionalProperties":
302
- case "propertyNames":
303
- out[k] = walk(v, false)
304
- break
305
-
306
- case "allOf":
307
- case "anyOf":
308
- case "oneOf":
309
- out[k] = Array.isArray(v) ? v.map((x) => walk(x, false)) : v
310
- break
311
-
312
- case "type":
313
- case "required":
314
- case "enum":
315
- case "const":
316
- case "title":
317
- case "description":
318
- case "default":
319
- case "examples":
320
- case "format":
321
- case "readOnly":
322
- case "writeOnly":
323
- case "pattern":
324
- case "minimum":
325
- case "maximum":
326
- case "exclusiveMinimum":
327
- case "exclusiveMaximum":
328
- case "minLength":
329
- case "maxLength":
330
- case "minItems":
331
- case "maxItems":
332
- case "minProperties":
333
- case "maxProperties":
334
- case "multipleOf":
335
- case "uniqueItems":
336
- out[k] = v
337
- break
338
-
339
355
  default:
340
356
  break
341
357
  }
@@ -344,15 +360,19 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
344
360
  // Draft-07 tuples -> 2020-12 tuples
345
361
  if (prefixItems !== undefined) {
346
362
  if (Array.isArray(prefixItems)) {
347
- out.prefixItems = prefixItems.map((x) => walk(x, false))
348
- if (additionalItems !== undefined) out.items = walk(additionalItems, false)
363
+ out.prefixItems = prefixItems.map(walkNested)
364
+ if (additionalItems !== undefined) out.items = walkNested(additionalItems)
349
365
  } else {
350
- out.items = walk(prefixItems, false)
366
+ out.items = walkNested(prefixItems)
351
367
  }
352
368
  }
353
369
 
354
370
  return out
355
371
  }
372
+
373
+ function walkNested(node: unknown): unknown {
374
+ return walk(node, false)
375
+ }
356
376
  }
357
377
 
358
378
  /**
@@ -369,7 +389,7 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
369
389
  *
370
390
  * **Example** (Parsing a Draft-2020-12 schema)
371
391
  *
372
- * ```ts
392
+ * ```ts import.meta.vitest
373
393
  * import { JsonSchema } from "effect"
374
394
  *
375
395
  * const raw: JsonSchema.JsonSchema = {
@@ -379,8 +399,8 @@ export function fromSchemaDraft07(js: JsonSchema): Document<"draft-2020-12"> {
379
399
  * }
380
400
  *
381
401
  * const doc = JsonSchema.fromSchemaDraft2020_12(raw)
382
- * console.log(doc.schema) // { type: "number", minimum: 0 }
383
- * console.log(doc.definitions) // { PositiveInt: { type: "integer", minimum: 1 } }
402
+ * doc.schema // => { type: "number", minimum: 0 }
403
+ * doc.definitions // => { PositiveInt: { type: "integer", minimum: 1 } }
384
404
  * ```
385
405
  *
386
406
  * @see {@link fromSchemaDraft07}
@@ -412,7 +432,7 @@ export function fromSchemaDraft2020_12(js: JsonSchema): Document<"draft-2020-12"
412
432
  *
413
433
  * **Example** (Parsing an OpenAPI 3.1 schema)
414
434
  *
415
- * ```ts
435
+ * ```ts import.meta.vitest
416
436
  * import { JsonSchema } from "effect"
417
437
  *
418
438
  * const raw: JsonSchema.JsonSchema = {
@@ -423,8 +443,7 @@ export function fromSchemaDraft2020_12(js: JsonSchema): Document<"draft-2020-12"
423
443
  * }
424
444
  *
425
445
  * const doc = JsonSchema.fromSchemaOpenApi3_1(raw)
426
- * // $ref is rewritten to Draft-2020-12 form
427
- * console.log(doc.schema.properties) // { user: { $ref: "#/$defs/User" } }
446
+ * doc.schema.properties // => { user: { $ref: "#/$defs/User" } }
428
447
  * ```
429
448
  *
430
449
  * @see {@link fromSchemaOpenApi3_0}
@@ -433,7 +452,7 @@ export function fromSchemaDraft2020_12(js: JsonSchema): Document<"draft-2020-12"
433
452
  * @since 4.0.0
434
453
  */
435
454
  export function fromSchemaOpenApi3_1(js: JsonSchema): Document<"draft-2020-12"> {
436
- const schema = rewrite_refs(js, (ref) => ref.replace(RE_COMPONENTS_SCHEMAS, "#/$defs")) as JsonSchema
455
+ const schema = rewriteRefs(js, (ref) => ref.replace(RE_COMPONENTS_SCHEMAS, "#/$defs"))
437
456
  return fromSchemaDraft2020_12(schema)
438
457
  }
439
458
 
@@ -454,7 +473,7 @@ export function fromSchemaOpenApi3_1(js: JsonSchema): Document<"draft-2020-12">
454
473
  *
455
474
  * **Example** (Parsing an OpenAPI 3.0 nullable schema)
456
475
  *
457
- * ```ts
476
+ * ```ts import.meta.vitest
458
477
  * import { JsonSchema } from "effect"
459
478
  *
460
479
  * const raw: JsonSchema.JsonSchema = {
@@ -463,8 +482,7 @@ export function fromSchemaOpenApi3_1(js: JsonSchema): Document<"draft-2020-12">
463
482
  * }
464
483
  *
465
484
  * const doc = JsonSchema.fromSchemaOpenApi3_0(raw)
466
- * // nullable is expanded into a type array
467
- * console.log(doc.schema.type) // ["string", "null"]
485
+ * doc.schema.type // => ["string", "null"]
468
486
  * ```
469
487
  *
470
488
  * @see {@link fromSchemaOpenApi3_1}
@@ -473,7 +491,7 @@ export function fromSchemaOpenApi3_1(js: JsonSchema): Document<"draft-2020-12">
473
491
  * @since 4.0.0
474
492
  */
475
493
  export function fromSchemaOpenApi3_0(schema: JsonSchema): Document<"draft-2020-12"> {
476
- const normalized = normalize_OpenApi3_0_to_Draft07(schema)
494
+ const normalized = normalizeOpenApi3_0ToDraft07(schema)
477
495
  return fromSchemaDraft07(normalized as JsonSchema)
478
496
  }
479
497
 
@@ -498,7 +516,7 @@ export function fromSchemaOpenApi3_0(schema: JsonSchema): Document<"draft-2020-1
498
516
  *
499
517
  * **Example** (Converting to Draft-07)
500
518
  *
501
- * ```ts
519
+ * ```ts import.meta.vitest
502
520
  * import { JsonSchema } from "effect"
503
521
  *
504
522
  * const doc = JsonSchema.fromSchemaDraft2020_12({
@@ -508,12 +526,13 @@ export function fromSchemaOpenApi3_0(schema: JsonSchema): Document<"draft-2020-1
508
526
  * })
509
527
  *
510
528
  * const draft07 = JsonSchema.toDocumentDraft07(doc)
511
- * console.log(draft07.dialect) // "draft-07"
512
- * console.log(draft07.schema.items) // [{ type: "string" }, { type: "number" }]
513
- * console.log(draft07.schema.additionalItems) // { type: "boolean" }
529
+ * draft07.dialect // => "draft-07"
530
+ * draft07.schema.items // => [{ type: "string" }, { type: "number" }]
531
+ * draft07.schema.additionalItems // => { type: "boolean" }
514
532
  * ```
515
533
  *
516
534
  * @see {@link fromSchemaDraft07}
535
+ * @see {@link toDocumentDraft04} for converting to Draft-04
517
536
  * @see {@link toMultiDocumentOpenApi3_1}
518
537
  * @category encoding
519
538
  * @since 4.0.0
@@ -526,75 +545,165 @@ export function toDocumentDraft07(document: Document<"draft-2020-12">): Document
526
545
  }
527
546
  }
528
547
 
529
- function toSchemaDraft07(schema: JsonSchema): JsonSchema {
530
- return rewrite(schema)
531
-
532
- function rewrite(node: unknown): JsonSchema {
533
- return walk(rewrite_refs(node, (ref) => ref.replace(RE_DEFS, "#/definitions")), true) as JsonSchema
548
+ /**
549
+ * Converts a `Document<"draft-2020-12">` to a `Document<"draft-04">`.
550
+ *
551
+ * **When to use**
552
+ *
553
+ * Use when you need to output a canonical JSON Schema document in Draft-04
554
+ * format.
555
+ *
556
+ * **Details**
557
+ *
558
+ * This rewrites `#/$defs/...` refs to `#/definitions/...`, converts tuple
559
+ * syntax, lowers `const` to `enum`, converts numeric exclusive bounds to the
560
+ * Draft-04 boolean form, and converts both the root schema and all definitions.
561
+ *
562
+ * **Gotchas**
563
+ *
564
+ * Unsupported Draft-2020-12 and Draft-07 keywords are dropped. For example,
565
+ * `propertyNames` has no general Draft-04 equivalent and is omitted.
566
+ *
567
+ * **Example** (Converting exclusive bounds)
568
+ *
569
+ * ```ts import.meta.vitest
570
+ * import { JsonSchema } from "effect"
571
+ *
572
+ * const doc = JsonSchema.fromSchemaDraft2020_12({
573
+ * type: "number",
574
+ * exclusiveMinimum: 0
575
+ * })
576
+ *
577
+ * JsonSchema.toDocumentDraft04(doc).schema // => { type: "number", minimum: 0, exclusiveMinimum: true }
578
+ * ```
579
+ *
580
+ * @see {@link toDocumentDraft07} for converting to Draft-07
581
+ * @category encoding
582
+ * @since 4.0.0
583
+ */
584
+ export function toDocumentDraft04(document: Document<"draft-2020-12">): Document<"draft-04"> {
585
+ const draft07 = toDocumentDraft07(document)
586
+ return {
587
+ dialect: "draft-04",
588
+ schema: toSchemaDraft04(draft07.schema),
589
+ definitions: Rec.map(draft07.definitions, toSchemaDraft04)
534
590
  }
591
+ }
592
+
593
+ function toSchemaDraft04(schema: JsonSchema): JsonSchema {
594
+ return walk(schema) as JsonSchema
535
595
 
536
- function walk(node: unknown, _isRoot: boolean): unknown {
537
- if (Array.isArray(node)) return node.map((v) => walk(v, false))
596
+ function walk(node: unknown): unknown {
597
+ if (node === true) return {}
598
+ if (node === false) return { not: {} }
599
+ if (Array.isArray(node)) return node.map(walk)
538
600
  if (!Predicate.isObject(node)) return node
539
601
 
540
602
  const src = node as Record<string, unknown>
541
603
  const out: Record<string, unknown> = {}
542
604
 
543
- let prefixItems: unknown = undefined
544
- let items: unknown = undefined
605
+ let hasConst = false
606
+ let constValue: unknown = undefined
545
607
 
546
608
  for (const k of Object.keys(src)) {
547
609
  const v = src[k]
548
610
 
611
+ if (DRAFT_04_COPY_KEYWORDS.has(k)) {
612
+ out[k] = v
613
+ continue
614
+ }
615
+ if (rewriteSubschemaKeyword(out, k, v, walk, DRAFT_04_SINGLE_SUBSCHEMA_KEYWORDS)) continue
616
+
549
617
  switch (k) {
550
- // We already rewrote $ref via rewrite_refs, so just copy it through.
551
- case "$ref":
552
- case "type":
553
- case "required":
554
- case "enum":
555
618
  case "const":
556
- case "title":
557
- case "description":
558
- case "default":
559
- case "examples":
560
- case "format":
561
- case "pattern":
619
+ hasConst = true
620
+ constValue = v
621
+ break
622
+
562
623
  case "minimum":
563
624
  case "maximum":
564
625
  case "exclusiveMinimum":
565
626
  case "exclusiveMaximum":
566
- case "minLength":
567
- case "maxLength":
568
- case "minItems":
569
- case "maxItems":
570
- case "minProperties":
571
- case "maxProperties":
572
- case "multipleOf":
573
- case "uniqueItems":
574
- out[k] = v
575
627
  break
576
628
 
577
- // Schema maps
578
- case "properties":
579
- case "patternProperties": {
580
- const mapped = walk_object(v, walk)
581
- out[k] = mapped ?? v
629
+ case "additionalProperties":
630
+ case "additionalItems":
631
+ out[k] = typeof v === "boolean" ? v : walk(v)
582
632
  break
583
- }
584
633
 
585
- // Single subschemas
586
- case "additionalProperties":
587
- case "propertyNames":
588
- out[k] = walk(v, false)
634
+ case "items":
635
+ out.items = Array.isArray(v) ? v.map(walk) : walk(v)
589
636
  break
590
637
 
591
- // Schema arrays
592
- case "allOf":
593
- case "anyOf":
594
- case "oneOf":
595
- out[k] = Array.isArray(v) ? v.map((x) => walk(x, false)) : v
638
+ default:
596
639
  break
640
+ }
641
+ }
642
+
643
+ convertExclusiveBound(src, out, "minimum", "exclusiveMinimum", (bound, exclusive) => bound > exclusive)
644
+ convertExclusiveBound(src, out, "maximum", "exclusiveMaximum", (bound, exclusive) => bound < exclusive)
645
+
646
+ if (hasConst) {
647
+ const constSchema = { enum: [constValue] }
648
+ if (Object.hasOwn(src, "enum")) {
649
+ out.allOf = Array.isArray(out.allOf) ? [...out.allOf, constSchema] : [constSchema]
650
+ } else {
651
+ out.enum = constSchema.enum
652
+ }
653
+ }
654
+
655
+ return out
656
+ }
657
+ }
658
+
659
+ function convertExclusiveBound(
660
+ src: Record<string, unknown>,
661
+ out: Record<string, unknown>,
662
+ boundKey: "minimum" | "maximum",
663
+ exclusiveKey: "exclusiveMinimum" | "exclusiveMaximum",
664
+ isBoundStricter: (bound: number, exclusive: number) => boolean
665
+ ): void {
666
+ const bound = src[boundKey]
667
+ const exclusive = src[exclusiveKey]
668
+
669
+ if (typeof exclusive === "number") {
670
+ if (typeof bound === "number" && isBoundStricter(bound, exclusive)) {
671
+ out[boundKey] = bound
672
+ } else {
673
+ out[boundKey] = exclusive
674
+ out[exclusiveKey] = true
675
+ }
676
+ } else if (bound !== undefined) {
677
+ out[boundKey] = bound
678
+ }
679
+ }
680
+
681
+ function toSchemaDraft07(schema: JsonSchema): JsonSchema {
682
+ return transformSchema(schema, (src) => {
683
+ rewriteSchemaRef(src, (ref) => ref.replace(RE_DEFS, "#/definitions"))
684
+ const out: Record<string, unknown> = {}
685
+
686
+ let prefixItems: unknown = undefined
687
+ let items: unknown = undefined
688
+
689
+ for (const k of Object.keys(src)) {
690
+ const v = src[k]
597
691
 
692
+ if (k === "required" && Array.isArray(v) && v.length === 0) continue
693
+ if (DRAFT_07_COPY_KEYWORDS.has(k)) {
694
+ out[k] = v
695
+ continue
696
+ }
697
+ if (
698
+ MAP_SUBSCHEMA_KEYWORDS.has(k) ||
699
+ ARRAY_SUBSCHEMA_KEYWORDS.has(k) ||
700
+ DRAFT_07_SINGLE_SUBSCHEMA_KEYWORDS.has(k)
701
+ ) {
702
+ out[k] = v
703
+ continue
704
+ }
705
+
706
+ switch (k) {
598
707
  // Tuple handling (2020-12 form)
599
708
  case "prefixItems":
600
709
  prefixItems = v
@@ -612,19 +721,25 @@ function toSchemaDraft07(schema: JsonSchema): JsonSchema {
612
721
  // 2020-12 tuples -> Draft-07 tuples
613
722
  if (prefixItems !== undefined) {
614
723
  if (Array.isArray(prefixItems)) {
615
- out.items = prefixItems.map((x) => walk(x, false))
616
- if (items !== undefined) out.additionalItems = walk(items, false)
724
+ out.items = prefixItems
725
+ if (items !== undefined) out.additionalItems = items
617
726
  } else {
618
727
  // Non-standard, but keep a reasonable behavior
619
- out.items = walk(prefixItems, false)
728
+ out.items = prefixItems
620
729
  }
621
730
  } else if (items !== undefined) {
622
731
  // Regular items schema stays as items
623
- out.items = walk(items, false)
732
+ out.items = items
733
+ }
734
+
735
+ const $ref = out.$ref
736
+ if (typeof $ref === "string" && Object.keys(out).length > 1) {
737
+ delete out.$ref
738
+ out.allOf = [{ $ref }, ...(Array.isArray(out.allOf) ? out.allOf : [])]
624
739
  }
625
740
 
626
741
  return out
627
- }
742
+ }) as JsonSchema
628
743
  }
629
744
 
630
745
  /**
@@ -638,15 +753,21 @@ function toSchemaDraft07(schema: JsonSchema): JsonSchema {
638
753
  *
639
754
  * **Details**
640
755
  *
641
- * This rewrites `#/$defs/...` refs to `#/components/schemas/...`, sanitizes
642
- * definition keys to match the OpenAPI component key pattern
643
- * (`^[a-zA-Z0-9.\-_]+$`) by replacing invalid characters with `_`, updates all
644
- * `$ref` pointers to use the sanitized keys, and converts all schemas and
645
- * definitions in the multi-document.
756
+ * This rewrites local `#/$defs/...` refs to `#/components/schemas/...` and
757
+ * sanitizes definition keys to match the OpenAPI component key pattern
758
+ * (`^[a-zA-Z0-9.\-_]+$`) by replacing invalid characters with `_`. Valid keys
759
+ * are preserved. When sanitized keys collide, the converter appends the first
760
+ * available `_1`, `_2`, and subsequent suffix, with allocation independent of
761
+ * definition insertion order. All local refs are updated to use the allocated
762
+ * keys, including refs to paths within a definition.
763
+ *
764
+ * **Gotchas**
765
+ *
766
+ * External refs and local refs outside `#/$defs` are left unchanged.
646
767
  *
647
768
  * **Example** (Converting to OpenAPI 3.1)
648
769
  *
649
- * ```ts
770
+ * ```ts import.meta.vitest
650
771
  * import { JsonSchema } from "effect"
651
772
  *
652
773
  * const multi: JsonSchema.MultiDocument<"draft-2020-12"> = {
@@ -658,8 +779,8 @@ function toSchemaDraft07(schema: JsonSchema): JsonSchema {
658
779
  * }
659
780
  *
660
781
  * const openapi = JsonSchema.toMultiDocumentOpenApi3_1(multi)
661
- * console.log(openapi.dialect) // "openapi-3.1"
662
- * console.log(openapi.schemas[0]) // { $ref: "#/components/schemas/User" }
782
+ * openapi.dialect // => "openapi-3.1"
783
+ * openapi.schemas[0] // => { $ref: "#/components/schemas/User" }
663
784
  * ```
664
785
  *
665
786
  * @see {@link toDocumentDraft07}
@@ -668,26 +789,39 @@ function toSchemaDraft07(schema: JsonSchema): JsonSchema {
668
789
  * @since 4.0.0
669
790
  */
670
791
  export function toMultiDocumentOpenApi3_1(multiDocument: MultiDocument<"draft-2020-12">): MultiDocument<"openapi-3.1"> {
792
+ const definitionKeys = Object.keys(multiDocument.definitions)
671
793
  const keyMap = new Map<string, string>()
672
- for (const key of Object.keys(multiDocument.definitions)) {
673
- const sanitized = sanitizeOpenApiComponentsSchemasKey(key)
674
- if (sanitized !== key) {
675
- keyMap.set(key, sanitized)
676
- }
794
+ const usedKeys = new Set(definitionKeys.filter((key) => VALID_OPEN_API_COMPONENTS_SCHEMAS_KEY_REGEXP.test(key)))
795
+ const invalidKeys = definitionKeys
796
+ .filter((key) => !VALID_OPEN_API_COMPONENTS_SCHEMAS_KEY_REGEXP.test(key))
797
+ .sort()
798
+ .map((key) => [key, sanitizeOpenApiComponentsSchemasKey(key)] as const)
799
+ for (const [key, base] of invalidKeys) {
800
+ if (usedKeys.has(base)) continue
801
+ usedKeys.add(base)
802
+ keyMap.set(key, base)
803
+ }
804
+ for (const [key, base] of invalidKeys) {
805
+ if (keyMap.has(key)) continue
806
+ let candidate: string
807
+ let suffix = 0
808
+ do candidate = `${base}_${++suffix}`
809
+ while (usedKeys.has(candidate))
810
+ usedKeys.add(candidate)
811
+ keyMap.set(key, candidate)
677
812
  }
678
813
 
679
814
  function rewrite(schema: JsonSchema): JsonSchema {
680
- return rewrite_refs(schema, ($ref) => {
681
- const tokens = $ref.split("/")
682
- if (tokens.length > 0) {
683
- const identifier = unescapeToken(tokens[tokens.length - 1])
684
- const sanitized = keyMap.get(identifier)
685
- if (sanitized !== undefined) {
686
- $ref = tokens.slice(0, -1).join("/") + "/" + sanitized
687
- }
688
- }
689
- return $ref.replace(RE_DEFS, "#/components/schemas")
690
- }) as JsonSchema
815
+ return rewriteRefs(schema, ($ref) => {
816
+ if (!$ref.startsWith("#/$defs/")) return $ref
817
+
818
+ const path = $ref.slice("#/$defs/".length)
819
+ const separatorIndex = path.indexOf("/")
820
+ const token = separatorIndex === -1 ? path : path.slice(0, separatorIndex)
821
+ const rest = separatorIndex === -1 ? "" : path.slice(separatorIndex)
822
+ const key = keyMap.get(unescapeToken(token)) ?? token
823
+ return `#/components/schemas/${key}${rest}`
824
+ })
691
825
  }
692
826
 
693
827
  return {
@@ -710,64 +844,95 @@ export const VALID_OPEN_API_COMPONENTS_SCHEMAS_KEY_REGEXP = /^[a-zA-Z0-9.\-_]+$/
710
844
  * @internal
711
845
  */
712
846
  export function sanitizeOpenApiComponentsSchemasKey(s: string): string {
713
- if (s.length === 0) return "_"
714
- if (VALID_OPEN_API_COMPONENTS_SCHEMAS_KEY_REGEXP.test(s)) return s
715
-
716
- const out: Array<string> = []
717
-
718
- for (const ch of s) {
719
- const code = ch.codePointAt(0)
720
- if (
721
- code !== undefined &&
722
- ((code >= 48 && code <= 57) || // 0-9
723
- (code >= 65 && code <= 90) || // A-Z
724
- (code >= 97 && code <= 122) || // a-z
725
- code === 46 || // .
726
- code === 45 || // -
727
- code === 95) // _
728
- ) {
729
- out.push(ch)
730
- } else {
731
- out.push("_")
732
- }
733
- }
734
-
735
- return out.join("")
847
+ return s.length === 0 ? "_" : s.replace(/[^a-zA-Z0-9._-]/gu, "_");
736
848
  }
737
849
 
738
- function rewrite_refs(node: unknown, f: ($ref: string) => string): unknown {
739
- if (Array.isArray(node)) return node.map((v) => rewrite_refs(v, f))
740
- if (!Predicate.isObject(node)) return node
741
-
742
- const out: Record<string, unknown> = {}
850
+ function transformSchema(
851
+ node: unknown,
852
+ transform: (schema: Record<string, unknown>) => Record<string, unknown>
853
+ ): unknown {
854
+ return walk(node)
743
855
 
744
- for (const k of Object.keys(node)) {
745
- const v = node[k]
856
+ function walk(node: unknown): unknown {
857
+ if (!Predicate.isObject(node)) return node
746
858
 
747
- if (k === "$ref") {
748
- out[k] = typeof v === "string" ? f(v) : v
749
- } else if (Array.isArray(v) || Predicate.isObject(v)) {
750
- out[k] = rewrite_refs(v, f)
751
- } else {
752
- out[k] = v
859
+ const out: Record<string, unknown> = {}
860
+ for (const key of Object.keys(node)) {
861
+ const value = node[key]
862
+ let transformed = value
863
+ switch (key) {
864
+ case "$defs":
865
+ case "properties":
866
+ case "patternProperties":
867
+ case "dependentSchemas":
868
+ transformed = mapObject(value, walk) ?? value
869
+ break
870
+ case "allOf":
871
+ case "anyOf":
872
+ case "oneOf":
873
+ case "prefixItems":
874
+ transformed = Array.isArray(value) ? value.map(walk) : value
875
+ break
876
+ case "not":
877
+ case "additionalProperties":
878
+ case "propertyNames":
879
+ case "unevaluatedProperties":
880
+ case "items":
881
+ case "contains":
882
+ case "unevaluatedItems":
883
+ case "if":
884
+ case "then":
885
+ case "else":
886
+ case "contentSchema":
887
+ transformed = walk(value)
888
+ }
889
+ InternalRecord.assignProperty(out, key, transformed)
753
890
  }
891
+ return transform(out)
892
+ }
893
+ }
894
+
895
+ /** @internal */
896
+ export function rewriteRefs(schema: JsonSchema, rewrite: ($ref: string) => string): JsonSchema {
897
+ return transformSchema(schema, (schema) => rewriteSchemaRef(schema, rewrite)) as JsonSchema
898
+ }
899
+
900
+ function rewriteSchemaRef(
901
+ schema: Record<string, unknown>,
902
+ rewrite: ($ref: string) => string
903
+ ): Record<string, unknown> {
904
+ if (typeof schema.$ref === "string") {
905
+ InternalRecord.assignProperty(schema, "$ref", rewrite(schema.$ref))
754
906
  }
907
+ return schema
908
+ }
755
909
 
756
- return out
910
+ function mapObject(value: unknown, f: (node: unknown) => unknown): Record<string, unknown> | undefined {
911
+ return Predicate.isObject(value) ? Rec.map(value, f) : undefined
757
912
  }
758
913
 
759
- function walk_object(
914
+ function rewriteSubschemaKeyword(
915
+ out: Record<string, unknown>,
916
+ key: string,
760
917
  value: unknown,
761
- walk: (node: unknown, isRoot: boolean) => unknown
762
- ): Record<string, unknown> | undefined {
763
- if (!Predicate.isObject(value)) return undefined
764
- const out: Record<string, unknown> = {}
765
- for (const k of Object.keys(value)) out[k] = walk(value[k], false)
766
- return out
918
+ rewrite: (node: unknown) => unknown,
919
+ singleKeywords: ReadonlySet<string>
920
+ ): boolean {
921
+ if (MAP_SUBSCHEMA_KEYWORDS.has(key)) {
922
+ out[key] = mapObject(value, rewrite) ?? value
923
+ return true
924
+ }
925
+ if (ARRAY_SUBSCHEMA_KEYWORDS.has(key)) {
926
+ out[key] = Array.isArray(value) ? value.map(rewrite) : value
927
+ return true
928
+ }
929
+ if (!singleKeywords.has(key)) return false
930
+ out[key] = rewrite(value)
931
+ return true
767
932
  }
768
933
 
769
- function normalize_OpenApi3_0_to_Draft07(node: unknown): unknown {
770
- if (Array.isArray(node)) return node.map(normalize_OpenApi3_0_to_Draft07)
934
+ function normalizeOpenApi3_0ToDraft07(node: unknown): unknown {
935
+ if (Array.isArray(node)) return node.map(normalizeOpenApi3_0ToDraft07)
771
936
  if (!Predicate.isObject(node)) return node
772
937
 
773
938
  const src = node as Record<string, unknown>
@@ -776,67 +941,67 @@ function normalize_OpenApi3_0_to_Draft07(node: unknown): unknown {
776
941
  for (const k of Object.keys(src)) {
777
942
  const v = src[k]
778
943
  if (k === "$ref" && typeof v === "string") {
779
- out[k] = v.replace(RE_COMPONENTS_SCHEMAS, "#/definitions")
944
+ InternalRecord.assignProperty(out, k, v.replace(RE_COMPONENTS_SCHEMAS, "#/definitions"))
780
945
  } else if (k === "example") {
781
946
  if (src.examples === undefined) {
782
947
  out.examples = [v]
783
948
  }
784
949
  } else if (Array.isArray(v) || Predicate.isObject(v)) {
785
- out[k] = normalize_OpenApi3_0_to_Draft07(v)
950
+ InternalRecord.assignProperty(out, k, normalizeOpenApi3_0ToDraft07(v))
786
951
  } else {
787
- out[k] = v
952
+ InternalRecord.assignProperty(out, k, v)
788
953
  }
789
954
  }
790
955
 
791
956
  // Draft-04-style numeric exclusivity booleans
792
- out = adjust_exclusivity(out)
957
+ out = adjustExclusivity(out)
793
958
 
794
959
  // OpenAPI 3.0 nullable
795
960
  if (out.nullable === true) {
796
- out = apply_nullable(out)
961
+ out = applyNullable(out)
797
962
  }
798
963
  delete out.nullable
799
964
 
800
965
  return out
801
966
  }
802
967
 
803
- function adjust_exclusivity(node: Record<string, unknown>): Record<string, unknown> {
804
- let out = node
805
-
806
- if (typeof out.exclusiveMinimum === "boolean") {
807
- if (out.exclusiveMinimum === true && typeof out.minimum === "number") {
808
- out = { ...out, exclusiveMinimum: out.minimum }
809
- delete out.minimum
810
- } else {
811
- out = { ...out }
812
- delete out.exclusiveMinimum
813
- }
814
- }
968
+ function adjustExclusivity(node: Record<string, unknown>): Record<string, unknown> {
969
+ return adjustExclusiveBound(
970
+ adjustExclusiveBound(node, "minimum", "exclusiveMinimum"),
971
+ "maximum",
972
+ "exclusiveMaximum"
973
+ )
974
+ }
815
975
 
816
- if (typeof out.exclusiveMaximum === "boolean") {
817
- if (out.exclusiveMaximum === true && typeof out.maximum === "number") {
818
- out = { ...out, exclusiveMaximum: out.maximum }
819
- delete out.maximum
820
- } else {
821
- out = { ...out }
822
- delete out.exclusiveMaximum
823
- }
976
+ function adjustExclusiveBound(
977
+ node: Record<string, unknown>,
978
+ boundKey: "minimum" | "maximum",
979
+ exclusiveKey: "exclusiveMinimum" | "exclusiveMaximum"
980
+ ): Record<string, unknown> {
981
+ const exclusive = node[exclusiveKey]
982
+ if (typeof exclusive !== "boolean") return node
983
+
984
+ const out = { ...node }
985
+ if (exclusive && typeof node[boundKey] === "number") {
986
+ out[exclusiveKey] = node[boundKey]
987
+ delete out[boundKey]
988
+ } else {
989
+ delete out[exclusiveKey]
824
990
  }
825
-
826
991
  return out
827
992
  }
828
993
 
829
- function apply_nullable(node: Record<string, unknown>): Record<string, unknown> {
994
+ function applyNullable(node: Record<string, unknown>): Record<string, unknown> {
830
995
  // enum widening
831
996
  if (Array.isArray(node.enum)) {
832
- return widen_type({
997
+ return widenType({
833
998
  ...node,
834
999
  enum: node.enum.includes(null) ? node.enum : [...node.enum, null]
835
1000
  })
836
1001
  }
837
1002
 
838
1003
  // type widening
839
- if (node.type !== undefined) return widen_type(node)
1004
+ if (node.type !== undefined) return widenType(node)
840
1005
 
841
1006
  // const === null
842
1007
  if (node.const === null) return node
@@ -845,7 +1010,7 @@ function apply_nullable(node: Record<string, unknown>): Record<string, unknown>
845
1010
  return { anyOf: [node, { type: "null" }] }
846
1011
  }
847
1012
 
848
- function widen_type(node: Record<string, unknown>): Record<string, unknown> {
1013
+ function widenType(node: Record<string, unknown>): Record<string, unknown> {
849
1014
  const t = node.type
850
1015
  if (typeof t === "string") return t === "null" ? node : { ...node, type: [t, "null"] }
851
1016
  if (Array.isArray(t)) return t.includes("null") ? node : { ...node, type: [...t, "null"] }
@@ -872,18 +1037,15 @@ function widen_type(node: Record<string, unknown>): Record<string, unknown> {
872
1037
  *
873
1038
  * **Example** (Resolving a $ref)
874
1039
  *
875
- * ```ts
1040
+ * ```ts import.meta.vitest
876
1041
  * import { JsonSchema } from "effect"
877
1042
  *
878
1043
  * const definitions: JsonSchema.Definitions = {
879
1044
  * User: { type: "object", properties: { name: { type: "string" } } }
880
1045
  * }
881
1046
  *
882
- * const result = JsonSchema.resolve$ref("#/$defs/User", definitions)
883
- * console.log(result) // { type: "object", properties: { name: { type: "string" } } }
884
- *
885
- * const missing = JsonSchema.resolve$ref("#/$defs/Unknown", definitions)
886
- * console.log(missing) // undefined
1047
+ * JsonSchema.resolve$ref("#/$defs/User", definitions) // => { type: "object", properties: { name: { type: "string" } } }
1048
+ * JsonSchema.resolve$ref("#/$defs/Unknown", definitions) // => undefined
887
1049
  * ```
888
1050
  *
889
1051
  * @see {@link resolveTopLevel$ref}
@@ -893,13 +1055,8 @@ function widen_type(node: Record<string, unknown>): Record<string, unknown> {
893
1055
  */
894
1056
  export function resolve$ref($ref: string, definitions: Definitions): JsonSchema | undefined {
895
1057
  const tokens = $ref.split("/")
896
- if (tokens.length > 0) {
897
- const identifier = unescapeToken(tokens[tokens.length - 1])
898
- const definition = definitions[identifier]
899
- if (definition !== undefined) {
900
- return definition
901
- }
902
- }
1058
+ const identifier = unescapeToken(tokens[tokens.length - 1])
1059
+ if (Object.hasOwn(definitions, identifier)) return definitions[identifier]
903
1060
  }
904
1061
 
905
1062
  /**
@@ -917,7 +1074,7 @@ export function resolve$ref($ref: string, definitions: Definitions): JsonSchema
917
1074
  *
918
1075
  * **Example** (Resolving a top-level $ref)
919
1076
  *
920
- * ```ts
1077
+ * ```ts import.meta.vitest
921
1078
  * import { JsonSchema } from "effect"
922
1079
  *
923
1080
  * const doc: JsonSchema.Document<"draft-2020-12"> = {
@@ -929,7 +1086,7 @@ export function resolve$ref($ref: string, definitions: Definitions): JsonSchema
929
1086
  * }
930
1087
  *
931
1088
  * const resolved = JsonSchema.resolveTopLevel$ref(doc)
932
- * console.log(resolved.schema) // { type: "object", properties: { name: { type: "string" } } }
1089
+ * resolved.schema // => { type: "object", properties: { name: { type: "string" } } }
933
1090
  * ```
934
1091
  *
935
1092
  * @see {@link resolve$ref}