effect 4.0.0-beta.74 → 4.0.0-beta.75

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 (796) hide show
  1. package/dist/Array.d.ts +729 -611
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +273 -213
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +37 -30
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +19 -16
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +34 -40
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +16 -16
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Boolean.d.ts +8 -8
  14. package/dist/Boolean.js +4 -4
  15. package/dist/Brand.d.ts +13 -11
  16. package/dist/Brand.d.ts.map +1 -1
  17. package/dist/Brand.js +10 -8
  18. package/dist/Brand.js.map +1 -1
  19. package/dist/Cause.d.ts +21 -23
  20. package/dist/Cause.d.ts.map +1 -1
  21. package/dist/Cause.js +21 -23
  22. package/dist/Cause.js.map +1 -1
  23. package/dist/Channel.d.ts +219 -9
  24. package/dist/Channel.d.ts.map +1 -1
  25. package/dist/Channel.js +83 -3
  26. package/dist/Channel.js.map +1 -1
  27. package/dist/ChannelSchema.d.ts +11 -11
  28. package/dist/ChannelSchema.js +5 -5
  29. package/dist/Chunk.d.ts +69 -16
  30. package/dist/Chunk.d.ts.map +1 -1
  31. package/dist/Chunk.js +43 -8
  32. package/dist/Chunk.js.map +1 -1
  33. package/dist/Clock.d.ts +3 -3
  34. package/dist/Clock.js +3 -3
  35. package/dist/Combiner.d.ts +9 -13
  36. package/dist/Combiner.d.ts.map +1 -1
  37. package/dist/Combiner.js +9 -13
  38. package/dist/Combiner.js.map +1 -1
  39. package/dist/Config.d.ts +49 -56
  40. package/dist/Config.d.ts.map +1 -1
  41. package/dist/Config.js +40 -43
  42. package/dist/Config.js.map +1 -1
  43. package/dist/ConfigProvider.d.ts +34 -44
  44. package/dist/ConfigProvider.d.ts.map +1 -1
  45. package/dist/ConfigProvider.js +24 -32
  46. package/dist/ConfigProvider.js.map +1 -1
  47. package/dist/Console.d.ts +2 -2
  48. package/dist/Console.js +2 -2
  49. package/dist/Context.d.ts +60 -72
  50. package/dist/Context.d.ts.map +1 -1
  51. package/dist/Context.js +28 -32
  52. package/dist/Context.js.map +1 -1
  53. package/dist/Cron.d.ts +2 -2
  54. package/dist/Cron.js +2 -2
  55. package/dist/Crypto.d.ts +4 -4
  56. package/dist/Crypto.js +4 -4
  57. package/dist/Data.d.ts +21 -15
  58. package/dist/Data.d.ts.map +1 -1
  59. package/dist/Data.js +7 -7
  60. package/dist/Data.js.map +1 -1
  61. package/dist/DateTime.d.ts +35 -16
  62. package/dist/DateTime.d.ts.map +1 -1
  63. package/dist/DateTime.js +35 -8
  64. package/dist/DateTime.js.map +1 -1
  65. package/dist/Deferred.d.ts +24 -15
  66. package/dist/Deferred.d.ts.map +1 -1
  67. package/dist/Deferred.js +8 -5
  68. package/dist/Deferred.js.map +1 -1
  69. package/dist/Duration.d.ts +44 -31
  70. package/dist/Duration.d.ts.map +1 -1
  71. package/dist/Duration.js +22 -11
  72. package/dist/Duration.js.map +1 -1
  73. package/dist/Effect.d.ts +516 -416
  74. package/dist/Effect.d.ts.map +1 -1
  75. package/dist/Effect.js +234 -174
  76. package/dist/Effect.js.map +1 -1
  77. package/dist/Encoding.d.ts +5 -0
  78. package/dist/Encoding.d.ts.map +1 -1
  79. package/dist/Encoding.js +5 -0
  80. package/dist/Encoding.js.map +1 -1
  81. package/dist/Equal.d.ts +26 -39
  82. package/dist/Equal.d.ts.map +1 -1
  83. package/dist/Equal.js +10 -17
  84. package/dist/Equal.js.map +1 -1
  85. package/dist/Equivalence.d.ts +71 -99
  86. package/dist/Equivalence.d.ts.map +1 -1
  87. package/dist/Equivalence.js +53 -73
  88. package/dist/Equivalence.js.map +1 -1
  89. package/dist/ErrorReporter.d.ts +1 -1
  90. package/dist/ErrorReporter.js +1 -1
  91. package/dist/Exit.d.ts +79 -96
  92. package/dist/Exit.d.ts.map +1 -1
  93. package/dist/Exit.js +57 -64
  94. package/dist/Exit.js.map +1 -1
  95. package/dist/Fiber.d.ts +8 -6
  96. package/dist/Fiber.d.ts.map +1 -1
  97. package/dist/Fiber.js +8 -6
  98. package/dist/Fiber.js.map +1 -1
  99. package/dist/FiberHandle.d.ts +25 -0
  100. package/dist/FiberHandle.d.ts.map +1 -1
  101. package/dist/FiberHandle.js +15 -0
  102. package/dist/FiberHandle.js.map +1 -1
  103. package/dist/FiberMap.d.ts +35 -0
  104. package/dist/FiberMap.d.ts.map +1 -1
  105. package/dist/FiberMap.js +15 -0
  106. package/dist/FiberMap.js.map +1 -1
  107. package/dist/FiberSet.d.ts +20 -0
  108. package/dist/FiberSet.d.ts.map +1 -1
  109. package/dist/FiberSet.js +10 -0
  110. package/dist/FiberSet.js.map +1 -1
  111. package/dist/Filter.d.ts +4 -4
  112. package/dist/Filter.js +4 -4
  113. package/dist/Formatter.d.ts +14 -19
  114. package/dist/Formatter.d.ts.map +1 -1
  115. package/dist/Formatter.js +14 -19
  116. package/dist/Formatter.js.map +1 -1
  117. package/dist/Function.d.ts +15 -16
  118. package/dist/Function.d.ts.map +1 -1
  119. package/dist/Function.js +9 -10
  120. package/dist/Function.js.map +1 -1
  121. package/dist/Graph.d.ts +2 -2
  122. package/dist/Graph.js +2 -2
  123. package/dist/HKT.d.ts +2 -2
  124. package/dist/Hash.d.ts +2 -1
  125. package/dist/Hash.d.ts.map +1 -1
  126. package/dist/Hash.js +2 -1
  127. package/dist/Hash.js.map +1 -1
  128. package/dist/HashMap.d.ts +15 -0
  129. package/dist/HashMap.d.ts.map +1 -1
  130. package/dist/HashMap.js +5 -0
  131. package/dist/HashMap.js.map +1 -1
  132. package/dist/HashRing.d.ts +9 -9
  133. package/dist/HashRing.js +3 -3
  134. package/dist/Iterable.d.ts +24 -12
  135. package/dist/Iterable.d.ts.map +1 -1
  136. package/dist/Iterable.js +16 -6
  137. package/dist/Iterable.js.map +1 -1
  138. package/dist/JsonPatch.d.ts +2 -3
  139. package/dist/JsonPatch.d.ts.map +1 -1
  140. package/dist/JsonPatch.js +2 -3
  141. package/dist/JsonPatch.js.map +1 -1
  142. package/dist/JsonPointer.d.ts +2 -6
  143. package/dist/JsonPointer.d.ts.map +1 -1
  144. package/dist/JsonPointer.js +2 -6
  145. package/dist/JsonPointer.js.map +1 -1
  146. package/dist/JsonSchema.d.ts +17 -13
  147. package/dist/JsonSchema.d.ts.map +1 -1
  148. package/dist/JsonSchema.js +17 -13
  149. package/dist/JsonSchema.js.map +1 -1
  150. package/dist/Latch.d.ts +4 -3
  151. package/dist/Latch.d.ts.map +1 -1
  152. package/dist/Latch.js +4 -3
  153. package/dist/Latch.js.map +1 -1
  154. package/dist/Layer.d.ts +92 -114
  155. package/dist/Layer.d.ts.map +1 -1
  156. package/dist/Layer.js +38 -46
  157. package/dist/Layer.js.map +1 -1
  158. package/dist/Logger.d.ts +11 -14
  159. package/dist/Logger.d.ts.map +1 -1
  160. package/dist/Logger.js +11 -14
  161. package/dist/Logger.js.map +1 -1
  162. package/dist/Match.d.ts +2 -2
  163. package/dist/Match.js +2 -2
  164. package/dist/Metric.d.ts +89 -109
  165. package/dist/Metric.d.ts.map +1 -1
  166. package/dist/Metric.js +51 -61
  167. package/dist/Metric.js.map +1 -1
  168. package/dist/MutableHashMap.d.ts +21 -12
  169. package/dist/MutableHashMap.d.ts.map +1 -1
  170. package/dist/MutableHashMap.js +7 -4
  171. package/dist/MutableHashMap.js.map +1 -1
  172. package/dist/MutableList.d.ts +15 -0
  173. package/dist/MutableList.d.ts.map +1 -1
  174. package/dist/MutableList.js +15 -0
  175. package/dist/MutableList.js.map +1 -1
  176. package/dist/MutableRef.d.ts +56 -42
  177. package/dist/MutableRef.d.ts.map +1 -1
  178. package/dist/MutableRef.js +28 -22
  179. package/dist/MutableRef.js.map +1 -1
  180. package/dist/Newtype.d.ts +10 -7
  181. package/dist/Newtype.d.ts.map +1 -1
  182. package/dist/Newtype.js +10 -7
  183. package/dist/Newtype.js.map +1 -1
  184. package/dist/Number.d.ts +23 -11
  185. package/dist/Number.d.ts.map +1 -1
  186. package/dist/Number.js +9 -5
  187. package/dist/Number.js.map +1 -1
  188. package/dist/Optic.d.ts +16 -16
  189. package/dist/Optic.d.ts.map +1 -1
  190. package/dist/Optic.js +10 -9
  191. package/dist/Optic.js.map +1 -1
  192. package/dist/Option.d.ts +196 -168
  193. package/dist/Option.d.ts.map +1 -1
  194. package/dist/Option.js +96 -79
  195. package/dist/Option.js.map +1 -1
  196. package/dist/Order.d.ts +118 -179
  197. package/dist/Order.d.ts.map +1 -1
  198. package/dist/Order.js +92 -144
  199. package/dist/Order.js.map +1 -1
  200. package/dist/PartitionedSemaphore.d.ts +14 -14
  201. package/dist/PartitionedSemaphore.js +6 -6
  202. package/dist/Path.d.ts +2 -2
  203. package/dist/Path.js +2 -2
  204. package/dist/Pipeable.d.ts +2 -2
  205. package/dist/Pipeable.js +2 -2
  206. package/dist/PlatformError.d.ts +4 -4
  207. package/dist/PlatformError.js +4 -4
  208. package/dist/Pool.d.ts +7 -11
  209. package/dist/Pool.d.ts.map +1 -1
  210. package/dist/Pool.js +3 -5
  211. package/dist/Pool.js.map +1 -1
  212. package/dist/Predicate.d.ts +274 -263
  213. package/dist/Predicate.d.ts.map +1 -1
  214. package/dist/Predicate.js +128 -123
  215. package/dist/Predicate.js.map +1 -1
  216. package/dist/PubSub.d.ts +24 -14
  217. package/dist/PubSub.d.ts.map +1 -1
  218. package/dist/PubSub.js +16 -6
  219. package/dist/PubSub.js.map +1 -1
  220. package/dist/Pull.d.ts +4 -4
  221. package/dist/Pull.js +4 -4
  222. package/dist/Queue.d.ts +46 -7
  223. package/dist/Queue.d.ts.map +1 -1
  224. package/dist/Queue.js +46 -7
  225. package/dist/Queue.js.map +1 -1
  226. package/dist/RcRef.d.ts +0 -4
  227. package/dist/RcRef.d.ts.map +1 -1
  228. package/dist/RcRef.js.map +1 -1
  229. package/dist/Redactable.d.ts +2 -2
  230. package/dist/Redactable.js +2 -2
  231. package/dist/Redacted.d.ts +3 -3
  232. package/dist/Redacted.js +3 -3
  233. package/dist/Reducer.d.ts +2 -3
  234. package/dist/Reducer.d.ts.map +1 -1
  235. package/dist/Reducer.js +2 -3
  236. package/dist/Reducer.js.map +1 -1
  237. package/dist/Ref.d.ts +17 -16
  238. package/dist/Ref.d.ts.map +1 -1
  239. package/dist/Ref.js +15 -14
  240. package/dist/Ref.js.map +1 -1
  241. package/dist/References.d.ts +4 -4
  242. package/dist/References.js +4 -4
  243. package/dist/Request.d.ts +18 -18
  244. package/dist/Request.js +6 -6
  245. package/dist/Resource.d.ts +2 -2
  246. package/dist/Resource.js +2 -2
  247. package/dist/Result.d.ts +77 -33
  248. package/dist/Result.d.ts.map +1 -1
  249. package/dist/Result.js +42 -19
  250. package/dist/Result.js.map +1 -1
  251. package/dist/Runtime.d.ts +11 -8
  252. package/dist/Runtime.d.ts.map +1 -1
  253. package/dist/Runtime.js +11 -8
  254. package/dist/Runtime.js.map +1 -1
  255. package/dist/Schedule.d.ts +107 -45
  256. package/dist/Schedule.d.ts.map +1 -1
  257. package/dist/Schedule.js +41 -29
  258. package/dist/Schedule.js.map +1 -1
  259. package/dist/Scheduler.d.ts +6 -4
  260. package/dist/Scheduler.d.ts.map +1 -1
  261. package/dist/Scheduler.js +6 -4
  262. package/dist/Scheduler.js.map +1 -1
  263. package/dist/Schema.d.ts +443 -371
  264. package/dist/Schema.d.ts.map +1 -1
  265. package/dist/Schema.js +518 -427
  266. package/dist/Schema.js.map +1 -1
  267. package/dist/SchemaAST.d.ts +42 -21
  268. package/dist/SchemaAST.d.ts.map +1 -1
  269. package/dist/SchemaAST.js +80 -59
  270. package/dist/SchemaAST.js.map +1 -1
  271. package/dist/SchemaGetter.d.ts +126 -106
  272. package/dist/SchemaGetter.d.ts.map +1 -1
  273. package/dist/SchemaGetter.js +121 -101
  274. package/dist/SchemaGetter.js.map +1 -1
  275. package/dist/SchemaIssue.d.ts +37 -39
  276. package/dist/SchemaIssue.d.ts.map +1 -1
  277. package/dist/SchemaIssue.js +16 -17
  278. package/dist/SchemaIssue.js.map +1 -1
  279. package/dist/SchemaParser.d.ts +72 -153
  280. package/dist/SchemaParser.d.ts.map +1 -1
  281. package/dist/SchemaParser.js +72 -145
  282. package/dist/SchemaParser.js.map +1 -1
  283. package/dist/SchemaRepresentation.d.ts +30 -21
  284. package/dist/SchemaRepresentation.d.ts.map +1 -1
  285. package/dist/SchemaRepresentation.js +26 -22
  286. package/dist/SchemaRepresentation.js.map +1 -1
  287. package/dist/SchemaTransformation.d.ts +169 -145
  288. package/dist/SchemaTransformation.d.ts.map +1 -1
  289. package/dist/SchemaTransformation.js +183 -159
  290. package/dist/SchemaTransformation.js.map +1 -1
  291. package/dist/SchemaUtils.js +2 -2
  292. package/dist/SchemaUtils.js.map +1 -1
  293. package/dist/Scope.d.ts +15 -0
  294. package/dist/Scope.d.ts.map +1 -1
  295. package/dist/Scope.js +15 -0
  296. package/dist/Scope.js.map +1 -1
  297. package/dist/ScopedCache.d.ts +1 -1
  298. package/dist/ScopedCache.js +1 -1
  299. package/dist/ScopedRef.d.ts +14 -18
  300. package/dist/ScopedRef.d.ts.map +1 -1
  301. package/dist/ScopedRef.js +6 -8
  302. package/dist/ScopedRef.js.map +1 -1
  303. package/dist/Semaphore.d.ts +9 -9
  304. package/dist/Semaphore.js +3 -3
  305. package/dist/Sink.d.ts +13 -13
  306. package/dist/Sink.d.ts.map +1 -1
  307. package/dist/Sink.js +9 -9
  308. package/dist/Sink.js.map +1 -1
  309. package/dist/Stdio.d.ts +4 -5
  310. package/dist/Stdio.d.ts.map +1 -1
  311. package/dist/Stdio.js +4 -5
  312. package/dist/Stdio.js.map +1 -1
  313. package/dist/Stream.d.ts +321 -44
  314. package/dist/Stream.d.ts.map +1 -1
  315. package/dist/Stream.js +137 -22
  316. package/dist/Stream.js.map +1 -1
  317. package/dist/String.d.ts +6 -9
  318. package/dist/String.d.ts.map +1 -1
  319. package/dist/String.js +2 -3
  320. package/dist/String.js.map +1 -1
  321. package/dist/Struct.d.ts +15 -13
  322. package/dist/Struct.d.ts.map +1 -1
  323. package/dist/Struct.js +11 -9
  324. package/dist/Struct.js.map +1 -1
  325. package/dist/SubscriptionRef.d.ts +24 -19
  326. package/dist/SubscriptionRef.d.ts.map +1 -1
  327. package/dist/SubscriptionRef.js +12 -7
  328. package/dist/SubscriptionRef.js.map +1 -1
  329. package/dist/SynchronizedRef.d.ts +88 -63
  330. package/dist/SynchronizedRef.d.ts.map +1 -1
  331. package/dist/SynchronizedRef.js +32 -23
  332. package/dist/SynchronizedRef.js.map +1 -1
  333. package/dist/Tracer.d.ts +4 -4
  334. package/dist/Tracer.js +4 -4
  335. package/dist/Trie.d.ts +15 -0
  336. package/dist/Trie.d.ts.map +1 -1
  337. package/dist/Trie.js +5 -0
  338. package/dist/Trie.js.map +1 -1
  339. package/dist/Tuple.d.ts +25 -19
  340. package/dist/Tuple.d.ts.map +1 -1
  341. package/dist/Tuple.js +17 -13
  342. package/dist/Tuple.js.map +1 -1
  343. package/dist/TxReentrantLock.d.ts +6 -3
  344. package/dist/TxReentrantLock.d.ts.map +1 -1
  345. package/dist/TxReentrantLock.js +2 -1
  346. package/dist/TxReentrantLock.js.map +1 -1
  347. package/dist/TxRef.d.ts +16 -16
  348. package/dist/TxRef.js +8 -8
  349. package/dist/TxSubscriptionRef.d.ts +43 -27
  350. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  351. package/dist/TxSubscriptionRef.js +19 -13
  352. package/dist/TxSubscriptionRef.js.map +1 -1
  353. package/dist/Types.d.ts +12 -38
  354. package/dist/Types.d.ts.map +1 -1
  355. package/dist/Types.js +0 -2
  356. package/dist/UndefinedOr.d.ts +15 -14
  357. package/dist/UndefinedOr.d.ts.map +1 -1
  358. package/dist/UndefinedOr.js +11 -10
  359. package/dist/UndefinedOr.js.map +1 -1
  360. package/dist/Unify.d.ts +2 -2
  361. package/dist/internal/schema/annotations.js.map +1 -1
  362. package/dist/internal/schema/arbitrary.js +9 -9
  363. package/dist/internal/schema/arbitrary.js.map +1 -1
  364. package/dist/internal/schema/equivalence.js +9 -9
  365. package/dist/internal/schema/equivalence.js.map +1 -1
  366. package/dist/internal/schema/representation.js +14 -14
  367. package/dist/internal/schema/representation.js.map +1 -1
  368. package/dist/internal/schema/schema.js +11 -11
  369. package/dist/internal/schema/schema.js.map +1 -1
  370. package/dist/testing/TestSchema.d.ts +10 -10
  371. package/dist/testing/TestSchema.d.ts.map +1 -1
  372. package/dist/testing/TestSchema.js +9 -9
  373. package/dist/testing/TestSchema.js.map +1 -1
  374. package/dist/unstable/ai/AiError.d.ts +4 -2
  375. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  376. package/dist/unstable/ai/AiError.js +4 -2
  377. package/dist/unstable/ai/AiError.js.map +1 -1
  378. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +17 -20
  379. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  380. package/dist/unstable/ai/AnthropicStructuredOutput.js +36 -39
  381. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  382. package/dist/unstable/ai/Chat.d.ts +4 -5
  383. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  384. package/dist/unstable/ai/Chat.js +4 -5
  385. package/dist/unstable/ai/Chat.js.map +1 -1
  386. package/dist/unstable/ai/EmbeddingModel.d.ts +4 -4
  387. package/dist/unstable/ai/EmbeddingModel.js +4 -4
  388. package/dist/unstable/ai/IdGenerator.d.ts +2 -3
  389. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  390. package/dist/unstable/ai/IdGenerator.js +2 -3
  391. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  392. package/dist/unstable/ai/LanguageModel.d.ts +3 -2
  393. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  394. package/dist/unstable/ai/LanguageModel.js +5 -4
  395. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  396. package/dist/unstable/ai/McpSchema.d.ts +14 -12
  397. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  398. package/dist/unstable/ai/McpSchema.js +19 -17
  399. package/dist/unstable/ai/McpSchema.js.map +1 -1
  400. package/dist/unstable/ai/McpServer.d.ts +11 -4
  401. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  402. package/dist/unstable/ai/McpServer.js +8 -5
  403. package/dist/unstable/ai/McpServer.js.map +1 -1
  404. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +20 -18
  405. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  406. package/dist/unstable/ai/OpenAiStructuredOutput.js +45 -43
  407. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  408. package/dist/unstable/ai/Prompt.d.ts +2 -2
  409. package/dist/unstable/ai/Prompt.js +3 -3
  410. package/dist/unstable/ai/Prompt.js.map +1 -1
  411. package/dist/unstable/ai/ResponseIdTracker.d.ts +3 -2
  412. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
  413. package/dist/unstable/ai/ResponseIdTracker.js +3 -2
  414. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  415. package/dist/unstable/ai/Telemetry.d.ts +21 -6
  416. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  417. package/dist/unstable/ai/Telemetry.js +7 -2
  418. package/dist/unstable/ai/Telemetry.js.map +1 -1
  419. package/dist/unstable/ai/Tool.d.ts +7 -6
  420. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  421. package/dist/unstable/ai/Tool.js +8 -7
  422. package/dist/unstable/ai/Tool.js.map +1 -1
  423. package/dist/unstable/ai/Toolkit.d.ts +2 -2
  424. package/dist/unstable/ai/Toolkit.js +2 -2
  425. package/dist/unstable/cli/Command.d.ts +37 -16
  426. package/dist/unstable/cli/Command.d.ts.map +1 -1
  427. package/dist/unstable/cli/Command.js +15 -8
  428. package/dist/unstable/cli/Command.js.map +1 -1
  429. package/dist/unstable/cli/Completions.d.ts +1 -1
  430. package/dist/unstable/cli/Completions.js +1 -1
  431. package/dist/unstable/cli/Flag.d.ts +7 -6
  432. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  433. package/dist/unstable/cli/Flag.js +7 -6
  434. package/dist/unstable/cli/Flag.js.map +1 -1
  435. package/dist/unstable/cli/GlobalFlag.d.ts +6 -1
  436. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
  437. package/dist/unstable/cli/GlobalFlag.js +7 -2
  438. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  439. package/dist/unstable/cli/Param.d.ts +3 -3
  440. package/dist/unstable/cli/Param.d.ts.map +1 -1
  441. package/dist/unstable/cli/Param.js +13 -10
  442. package/dist/unstable/cli/Param.js.map +1 -1
  443. package/dist/unstable/cli/Primitive.d.ts +3 -2
  444. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  445. package/dist/unstable/cli/Primitive.js +3 -2
  446. package/dist/unstable/cli/Primitive.js.map +1 -1
  447. package/dist/unstable/cluster/ClusterCron.d.ts +1 -2
  448. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  449. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  450. package/dist/unstable/cluster/ClusterMetrics.d.ts +5 -0
  451. package/dist/unstable/cluster/ClusterMetrics.d.ts.map +1 -1
  452. package/dist/unstable/cluster/ClusterMetrics.js +5 -0
  453. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  454. package/dist/unstable/cluster/ClusterSchema.d.ts +3 -3
  455. package/dist/unstable/cluster/ClusterSchema.js +3 -3
  456. package/dist/unstable/cluster/ClusterWorkflowEngine.js +15 -15
  457. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  458. package/dist/unstable/cluster/EntityResource.d.ts +10 -0
  459. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  460. package/dist/unstable/cluster/EntityResource.js +10 -0
  461. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  462. package/dist/unstable/cluster/Envelope.d.ts +2 -2
  463. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  464. package/dist/unstable/cluster/Envelope.js +2 -2
  465. package/dist/unstable/cluster/Envelope.js.map +1 -1
  466. package/dist/unstable/cluster/Reply.d.ts +2 -2
  467. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  468. package/dist/unstable/cluster/Reply.js +12 -12
  469. package/dist/unstable/cluster/Reply.js.map +1 -1
  470. package/dist/unstable/cluster/RunnerHealth.d.ts +2 -1
  471. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  472. package/dist/unstable/cluster/RunnerHealth.js +2 -1
  473. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  474. package/dist/unstable/cluster/RunnerServer.d.ts +2 -2
  475. package/dist/unstable/cluster/RunnerServer.js +2 -2
  476. package/dist/unstable/cluster/Runners.d.ts +3 -3
  477. package/dist/unstable/cluster/Runners.js +3 -3
  478. package/dist/unstable/cluster/ShardId.js +3 -3
  479. package/dist/unstable/cluster/ShardId.js.map +1 -1
  480. package/dist/unstable/cluster/Sharding.d.ts +3 -3
  481. package/dist/unstable/cluster/Sharding.js +3 -3
  482. package/dist/unstable/cluster/ShardingConfig.d.ts +4 -4
  483. package/dist/unstable/cluster/ShardingConfig.js +4 -4
  484. package/dist/unstable/cluster/Snowflake.d.ts +1 -1
  485. package/dist/unstable/cluster/Snowflake.js +3 -3
  486. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  487. package/dist/unstable/cluster/internal/entityManager.js +2 -2
  488. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  489. package/dist/unstable/encoding/Msgpack.d.ts +2 -2
  490. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  491. package/dist/unstable/encoding/Msgpack.js +5 -5
  492. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  493. package/dist/unstable/encoding/Ndjson.d.ts +5 -0
  494. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  495. package/dist/unstable/encoding/Ndjson.js +5 -0
  496. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  497. package/dist/unstable/encoding/Sse.d.ts +2 -2
  498. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  499. package/dist/unstable/encoding/Sse.js +2 -2
  500. package/dist/unstable/encoding/Sse.js.map +1 -1
  501. package/dist/unstable/eventlog/EventGroup.d.ts +2 -1
  502. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  503. package/dist/unstable/eventlog/EventGroup.js +2 -1
  504. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  505. package/dist/unstable/eventlog/EventJournal.d.ts +10 -0
  506. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  507. package/dist/unstable/eventlog/EventJournal.js +10 -0
  508. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  509. package/dist/unstable/eventlog/EventLog.d.ts +3 -3
  510. package/dist/unstable/eventlog/EventLog.js +3 -3
  511. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +2 -3
  512. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  513. package/dist/unstable/eventlog/EventLogServerEncrypted.js +2 -3
  514. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  515. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -7
  516. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  517. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +5 -7
  518. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  519. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +4 -4
  520. package/dist/unstable/eventlog/EventLogSessionAuth.js +4 -4
  521. package/dist/unstable/http/Cookies.js +4 -4
  522. package/dist/unstable/http/Cookies.js.map +1 -1
  523. package/dist/unstable/http/Etag.d.ts +2 -3
  524. package/dist/unstable/http/Etag.d.ts.map +1 -1
  525. package/dist/unstable/http/Etag.js +2 -3
  526. package/dist/unstable/http/Etag.js.map +1 -1
  527. package/dist/unstable/http/Headers.js +2 -2
  528. package/dist/unstable/http/Headers.js.map +1 -1
  529. package/dist/unstable/http/HttpBody.js +2 -2
  530. package/dist/unstable/http/HttpBody.js.map +1 -1
  531. package/dist/unstable/http/HttpClient.d.ts +2 -2
  532. package/dist/unstable/http/HttpClient.js +2 -2
  533. package/dist/unstable/http/HttpClientRequest.d.ts +30 -3
  534. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  535. package/dist/unstable/http/HttpClientRequest.js +10 -1
  536. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  537. package/dist/unstable/http/HttpRouter.d.ts +1 -1
  538. package/dist/unstable/http/HttpRouter.js +1 -1
  539. package/dist/unstable/http/HttpServerResponse.d.ts +25 -20
  540. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  541. package/dist/unstable/http/HttpServerResponse.js +13 -8
  542. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  543. package/dist/unstable/http/Multipart.js +3 -3
  544. package/dist/unstable/http/Multipart.js.map +1 -1
  545. package/dist/unstable/http/UrlParams.d.ts +30 -0
  546. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  547. package/dist/unstable/http/UrlParams.js +16 -6
  548. package/dist/unstable/http/UrlParams.js.map +1 -1
  549. package/dist/unstable/httpapi/HttpApi.d.ts +3 -2
  550. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  551. package/dist/unstable/httpapi/HttpApi.js +3 -2
  552. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  553. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  554. package/dist/unstable/httpapi/HttpApiBuilder.js +10 -8
  555. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  556. package/dist/unstable/httpapi/HttpApiClient.js +15 -15
  557. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  558. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +3 -3
  559. package/dist/unstable/httpapi/HttpApiMiddleware.js +3 -3
  560. package/dist/unstable/httpapi/HttpApiSchema.d.ts +2 -2
  561. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  562. package/dist/unstable/httpapi/HttpApiSchema.js +9 -9
  563. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  564. package/dist/unstable/httpapi/OpenApi.js +11 -11
  565. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  566. package/dist/unstable/observability/OtlpResource.d.ts +5 -0
  567. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  568. package/dist/unstable/observability/OtlpResource.js +5 -0
  569. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  570. package/dist/unstable/observability/PrometheusMetrics.d.ts +4 -2
  571. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  572. package/dist/unstable/observability/PrometheusMetrics.js +4 -2
  573. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  574. package/dist/unstable/reactivity/Atom.d.ts +3 -3
  575. package/dist/unstable/reactivity/Atom.js +3 -3
  576. package/dist/unstable/rpc/RpcSchema.d.ts +2 -2
  577. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  578. package/dist/unstable/rpc/RpcSerialization.d.ts +2 -2
  579. package/dist/unstable/rpc/RpcSerialization.js +2 -2
  580. package/dist/unstable/schema/Model.js +5 -5
  581. package/dist/unstable/schema/Model.js.map +1 -1
  582. package/dist/unstable/schema/VariantSchema.d.ts +2 -2
  583. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  584. package/dist/unstable/sql/SqlSchema.d.ts +4 -4
  585. package/dist/unstable/sql/SqlSchema.js +4 -4
  586. package/dist/unstable/workers/Transferable.d.ts +2 -2
  587. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  588. package/dist/unstable/workers/Transferable.js +5 -5
  589. package/dist/unstable/workers/Transferable.js.map +1 -1
  590. package/dist/unstable/workflow/DurableDeferred.js +7 -7
  591. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  592. package/dist/unstable/workflow/DurableQueue.d.ts +1 -2
  593. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  594. package/dist/unstable/workflow/DurableQueue.js +1 -2
  595. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  596. package/dist/unstable/workflow/Workflow.d.ts +35 -15
  597. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  598. package/dist/unstable/workflow/Workflow.js +94 -72
  599. package/dist/unstable/workflow/Workflow.js.map +1 -1
  600. package/dist/unstable/workflow/WorkflowEngine.d.ts +10 -2
  601. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  602. package/dist/unstable/workflow/WorkflowEngine.js +16 -8
  603. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  604. package/dist/unstable/workflow/WorkflowProxy.d.ts +2 -4
  605. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  606. package/dist/unstable/workflow/WorkflowProxy.js +9 -11
  607. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  608. package/dist/unstable/workflow/WorkflowProxyServer.js +7 -7
  609. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  610. package/package.json +1 -1
  611. package/src/Array.ts +729 -611
  612. package/src/BigDecimal.ts +37 -30
  613. package/src/BigInt.ts +34 -40
  614. package/src/Boolean.ts +8 -8
  615. package/src/Brand.ts +16 -14
  616. package/src/Cause.ts +21 -23
  617. package/src/Channel.ts +249 -9
  618. package/src/ChannelSchema.ts +11 -11
  619. package/src/Chunk.ts +69 -16
  620. package/src/Clock.ts +3 -3
  621. package/src/Combiner.ts +9 -13
  622. package/src/Config.ts +60 -67
  623. package/src/ConfigProvider.ts +34 -44
  624. package/src/Console.ts +2 -2
  625. package/src/Context.ts +60 -72
  626. package/src/Cron.ts +2 -2
  627. package/src/Crypto.ts +4 -4
  628. package/src/Data.ts +21 -15
  629. package/src/DateTime.ts +35 -16
  630. package/src/Deferred.ts +24 -15
  631. package/src/Duration.ts +44 -31
  632. package/src/Effect.ts +516 -416
  633. package/src/Encoding.ts +5 -0
  634. package/src/Equal.ts +26 -39
  635. package/src/Equivalence.ts +71 -99
  636. package/src/ErrorReporter.ts +1 -1
  637. package/src/Exit.ts +79 -96
  638. package/src/Fiber.ts +8 -6
  639. package/src/FiberHandle.ts +25 -0
  640. package/src/FiberMap.ts +35 -0
  641. package/src/FiberSet.ts +20 -0
  642. package/src/Filter.ts +4 -4
  643. package/src/Formatter.ts +14 -19
  644. package/src/Function.ts +15 -16
  645. package/src/Graph.ts +2 -2
  646. package/src/HKT.ts +2 -2
  647. package/src/Hash.ts +2 -1
  648. package/src/HashMap.ts +15 -0
  649. package/src/HashRing.ts +9 -9
  650. package/src/Iterable.ts +24 -12
  651. package/src/JsonPatch.ts +2 -3
  652. package/src/JsonPointer.ts +2 -6
  653. package/src/JsonSchema.ts +17 -13
  654. package/src/Latch.ts +4 -3
  655. package/src/Layer.ts +92 -114
  656. package/src/Logger.ts +15 -18
  657. package/src/Match.ts +2 -2
  658. package/src/Metric.ts +109 -137
  659. package/src/MutableHashMap.ts +35 -20
  660. package/src/MutableList.ts +15 -0
  661. package/src/MutableRef.ts +56 -42
  662. package/src/Newtype.ts +10 -7
  663. package/src/Number.ts +23 -11
  664. package/src/Optic.ts +25 -22
  665. package/src/Option.ts +196 -168
  666. package/src/Order.ts +118 -179
  667. package/src/PartitionedSemaphore.ts +14 -14
  668. package/src/Path.ts +2 -2
  669. package/src/Pipeable.ts +2 -2
  670. package/src/PlatformError.ts +4 -4
  671. package/src/Pool.ts +7 -11
  672. package/src/Predicate.ts +274 -263
  673. package/src/PubSub.ts +24 -14
  674. package/src/Pull.ts +4 -4
  675. package/src/Queue.ts +46 -7
  676. package/src/RcRef.ts +0 -4
  677. package/src/Redactable.ts +2 -2
  678. package/src/Redacted.ts +3 -3
  679. package/src/Reducer.ts +2 -3
  680. package/src/Ref.ts +43 -40
  681. package/src/References.ts +4 -4
  682. package/src/Request.ts +18 -18
  683. package/src/Resource.ts +2 -2
  684. package/src/Result.ts +87 -33
  685. package/src/Runtime.ts +11 -8
  686. package/src/Schedule.ts +112 -45
  687. package/src/Scheduler.ts +6 -4
  688. package/src/Schema.ts +843 -649
  689. package/src/SchemaAST.ts +148 -117
  690. package/src/SchemaGetter.ts +142 -121
  691. package/src/SchemaIssue.ts +39 -41
  692. package/src/SchemaParser.ts +173 -229
  693. package/src/SchemaRepresentation.ts +38 -28
  694. package/src/SchemaTransformation.ts +233 -207
  695. package/src/SchemaUtils.ts +2 -2
  696. package/src/Scope.ts +15 -0
  697. package/src/ScopedCache.ts +1 -1
  698. package/src/ScopedRef.ts +14 -18
  699. package/src/Semaphore.ts +9 -9
  700. package/src/Sink.ts +13 -13
  701. package/src/Stdio.ts +4 -5
  702. package/src/Stream.ts +354 -57
  703. package/src/String.ts +6 -9
  704. package/src/Struct.ts +15 -13
  705. package/src/SubscriptionRef.ts +24 -19
  706. package/src/SynchronizedRef.ts +88 -63
  707. package/src/Tracer.ts +4 -4
  708. package/src/Trie.ts +15 -0
  709. package/src/Tuple.ts +25 -19
  710. package/src/TxReentrantLock.ts +6 -3
  711. package/src/TxRef.ts +16 -16
  712. package/src/TxSubscriptionRef.ts +43 -27
  713. package/src/Types.ts +12 -39
  714. package/src/UndefinedOr.ts +15 -14
  715. package/src/Unify.ts +2 -2
  716. package/src/internal/schema/annotations.ts +4 -4
  717. package/src/internal/schema/arbitrary.ts +16 -16
  718. package/src/internal/schema/equivalence.ts +11 -11
  719. package/src/internal/schema/representation.ts +23 -23
  720. package/src/internal/schema/schema.ts +17 -17
  721. package/src/testing/TestSchema.ts +20 -20
  722. package/src/unstable/ai/AiError.ts +4 -2
  723. package/src/unstable/ai/AnthropicStructuredOutput.ts +59 -56
  724. package/src/unstable/ai/Chat.ts +4 -5
  725. package/src/unstable/ai/EmbeddingModel.ts +4 -4
  726. package/src/unstable/ai/IdGenerator.ts +2 -3
  727. package/src/unstable/ai/LanguageModel.ts +5 -4
  728. package/src/unstable/ai/McpSchema.ts +19 -17
  729. package/src/unstable/ai/McpServer.ts +14 -7
  730. package/src/unstable/ai/OpenAiStructuredOutput.ts +72 -61
  731. package/src/unstable/ai/Prompt.ts +5 -5
  732. package/src/unstable/ai/ResponseIdTracker.ts +3 -2
  733. package/src/unstable/ai/Telemetry.ts +21 -6
  734. package/src/unstable/ai/Tool.ts +11 -10
  735. package/src/unstable/ai/Toolkit.ts +2 -2
  736. package/src/unstable/cli/Command.ts +37 -16
  737. package/src/unstable/cli/Completions.ts +1 -1
  738. package/src/unstable/cli/Flag.ts +7 -6
  739. package/src/unstable/cli/GlobalFlag.ts +7 -1
  740. package/src/unstable/cli/Param.ts +23 -18
  741. package/src/unstable/cli/Primitive.ts +3 -2
  742. package/src/unstable/cluster/ClusterCron.ts +1 -2
  743. package/src/unstable/cluster/ClusterMetrics.ts +5 -0
  744. package/src/unstable/cluster/ClusterSchema.ts +3 -3
  745. package/src/unstable/cluster/ClusterWorkflowEngine.ts +15 -15
  746. package/src/unstable/cluster/EntityResource.ts +10 -0
  747. package/src/unstable/cluster/Envelope.ts +3 -3
  748. package/src/unstable/cluster/Reply.ts +14 -12
  749. package/src/unstable/cluster/RunnerHealth.ts +2 -1
  750. package/src/unstable/cluster/RunnerServer.ts +2 -2
  751. package/src/unstable/cluster/Runners.ts +3 -3
  752. package/src/unstable/cluster/ShardId.ts +3 -3
  753. package/src/unstable/cluster/Sharding.ts +3 -3
  754. package/src/unstable/cluster/ShardingConfig.ts +4 -4
  755. package/src/unstable/cluster/Snowflake.ts +3 -3
  756. package/src/unstable/cluster/internal/entityManager.ts +2 -2
  757. package/src/unstable/encoding/Msgpack.ts +6 -6
  758. package/src/unstable/encoding/Ndjson.ts +5 -0
  759. package/src/unstable/encoding/Sse.ts +2 -2
  760. package/src/unstable/eventlog/EventGroup.ts +2 -1
  761. package/src/unstable/eventlog/EventJournal.ts +10 -0
  762. package/src/unstable/eventlog/EventLog.ts +3 -3
  763. package/src/unstable/eventlog/EventLogServerEncrypted.ts +2 -3
  764. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +5 -7
  765. package/src/unstable/eventlog/EventLogSessionAuth.ts +4 -4
  766. package/src/unstable/http/Cookies.ts +4 -4
  767. package/src/unstable/http/Etag.ts +2 -3
  768. package/src/unstable/http/Headers.ts +2 -2
  769. package/src/unstable/http/HttpBody.ts +2 -2
  770. package/src/unstable/http/HttpClient.ts +2 -2
  771. package/src/unstable/http/HttpClientRequest.ts +30 -3
  772. package/src/unstable/http/HttpRouter.ts +1 -1
  773. package/src/unstable/http/HttpServerResponse.ts +25 -20
  774. package/src/unstable/http/Multipart.ts +3 -3
  775. package/src/unstable/http/UrlParams.ts +36 -6
  776. package/src/unstable/httpapi/HttpApi.ts +5 -4
  777. package/src/unstable/httpapi/HttpApiBuilder.ts +14 -13
  778. package/src/unstable/httpapi/HttpApiClient.ts +16 -16
  779. package/src/unstable/httpapi/HttpApiMiddleware.ts +3 -3
  780. package/src/unstable/httpapi/HttpApiSchema.ts +15 -15
  781. package/src/unstable/httpapi/OpenApi.ts +18 -18
  782. package/src/unstable/observability/OtlpResource.ts +5 -0
  783. package/src/unstable/observability/PrometheusMetrics.ts +4 -2
  784. package/src/unstable/reactivity/Atom.ts +3 -3
  785. package/src/unstable/rpc/RpcSchema.ts +2 -2
  786. package/src/unstable/rpc/RpcSerialization.ts +2 -2
  787. package/src/unstable/schema/Model.ts +5 -5
  788. package/src/unstable/schema/VariantSchema.ts +2 -2
  789. package/src/unstable/sql/SqlSchema.ts +4 -4
  790. package/src/unstable/workers/Transferable.ts +6 -6
  791. package/src/unstable/workflow/DurableDeferred.ts +7 -7
  792. package/src/unstable/workflow/DurableQueue.ts +1 -2
  793. package/src/unstable/workflow/Workflow.ts +159 -114
  794. package/src/unstable/workflow/WorkflowEngine.ts +16 -8
  795. package/src/unstable/workflow/WorkflowProxy.ts +9 -11
  796. package/src/unstable/workflow/WorkflowProxyServer.ts +7 -7
package/src/SchemaAST.ts CHANGED
@@ -89,10 +89,10 @@ import * as Predicate from "./Predicate.ts"
89
89
  import * as RegEx from "./RegExp.ts"
90
90
  import * as Result from "./Result.ts"
91
91
  import type * as Schema from "./Schema.ts"
92
- import * as Getter from "./SchemaGetter.ts"
93
- import * as Issue from "./SchemaIssue.ts"
94
- import type * as Parser from "./SchemaParser.ts"
95
- import * as Transformation from "./SchemaTransformation.ts"
92
+ import * as SchemaGetter from "./SchemaGetter.ts"
93
+ import * as SchemaIssue from "./SchemaIssue.ts"
94
+ import type * as SchemaParser from "./SchemaParser.ts"
95
+ import * as SchemaTransformation from "./SchemaTransformation.ts"
96
96
 
97
97
  /**
98
98
  * Discriminated union of all AST node types.
@@ -238,7 +238,7 @@ export const isNever = makeGuard("Never")
238
238
  *
239
239
  * **When to use**
240
240
  *
241
- * Use when inspecting a schema AST and you need to handle the `Unknown` node
241
+ * Use when you need to inspect a schema AST and handle the `Unknown` node
242
242
  * variant specifically.
243
243
  *
244
244
  * @see {@link isAny} for the guard for the `Any` node, whose parsed result is typed as `any` rather than `unknown`
@@ -253,7 +253,7 @@ export const isUnknown = makeGuard("Unknown")
253
253
  *
254
254
  * **When to use**
255
255
  *
256
- * Use when inspecting a schema AST and you need to handle the `Any` node
256
+ * Use when you need to inspect a schema AST and handle the `Any` node
257
257
  * variant specifically.
258
258
  *
259
259
  * @see {@link isUnknown} for the guard for the `Unknown` node, whose parsed result is typed as `unknown` rather than `any`
@@ -268,8 +268,8 @@ export const isAny = makeGuard("Any")
268
268
  *
269
269
  * **When to use**
270
270
  *
271
- * Use to detect schema AST nodes that match any string value while inspecting or
272
- * transforming an AST.
271
+ * Use to detect schema AST nodes that match any string value while inspecting
272
+ * or transforming a Schema AST.
273
273
  *
274
274
  * @see {@link String} for the AST node class narrowed by this guard
275
275
  * @see {@link string} for the singleton `String` AST instance
@@ -368,7 +368,7 @@ export const isUniqueSymbol = makeGuard("UniqueSymbol")
368
368
  * **When to use**
369
369
  *
370
370
  * Use to identify the AST node for the TypeScript `object` keyword when
371
- * inspecting or transforming a schema AST.
371
+ * inspecting or transforming a Schema AST.
372
372
  *
373
373
  * @see {@link ObjectKeyword} for the AST node matched by this guard
374
374
  * @see {@link objectKeyword} for the singleton `ObjectKeyword` AST instance
@@ -463,14 +463,14 @@ export const isSuspend = makeGuard("Suspend")
463
463
  export class Link {
464
464
  readonly to: AST
465
465
  readonly transformation:
466
- | Transformation.Transformation<any, any, any, any>
467
- | Transformation.Middleware<any, any, any, any, any, any>
466
+ | SchemaTransformation.Transformation<any, any, any, any>
467
+ | SchemaTransformation.Middleware<any, any, any, any, any, any>
468
468
 
469
469
  constructor(
470
470
  to: AST,
471
471
  transformation:
472
- | Transformation.Transformation<any, any, any, any>
473
- | Transformation.Middleware<any, any, any, any, any, any>
472
+ | SchemaTransformation.Transformation<any, any, any, any>
473
+ | SchemaTransformation.Middleware<any, any, any, any, any, any>
474
474
  ) {
475
475
  this.to = to
476
476
  this.transformation = transformation
@@ -693,14 +693,15 @@ export abstract class Base {
693
693
  *
694
694
  * **When to use**
695
695
  *
696
- * Use when none of the built-in AST nodes fit. The `run` function receives
697
- * `typeParameters` and returns a parser that validates/transforms raw input.
696
+ * Use when you need a custom schema AST node because none of the built-in
697
+ * nodes fit.
698
698
  *
699
699
  * **Details**
700
700
  *
701
701
  * - `typeParameters` — inner schemas this declaration is parameterized over
702
702
  * (e.g. the element type for a custom collection).
703
- * - `run` — factory producing the actual parse function.
703
+ * - `run` — factory that receives `typeParameters` and returns a parser that
704
+ * validates or transforms raw input.
704
705
  *
705
706
  * @see {@link isDeclaration}
706
707
  * @category models
@@ -711,13 +712,13 @@ export class Declaration extends Base {
711
712
  readonly typeParameters: ReadonlyArray<AST>
712
713
  readonly run: (
713
714
  typeParameters: ReadonlyArray<AST>
714
- ) => (input: unknown, self: Declaration, options: ParseOptions) => Effect.Effect<any, Issue.Issue, any>
715
+ ) => (input: unknown, self: Declaration, options: ParseOptions) => Effect.Effect<any, SchemaIssue.Issue, any>
715
716
 
716
717
  constructor(
717
718
  typeParameters: ReadonlyArray<AST>,
718
719
  run: (
719
720
  typeParameters: ReadonlyArray<AST>
720
- ) => (input: unknown, self: Declaration, options: ParseOptions) => Effect.Effect<any, Issue.Issue, any>,
721
+ ) => (input: unknown, self: Declaration, options: ParseOptions) => Effect.Effect<any, SchemaIssue.Issue, any>,
721
722
  annotations?: Schema.Annotations.Annotations,
722
723
  checks?: Checks,
723
724
  encoding?: Encoding,
@@ -728,7 +729,7 @@ export class Declaration extends Base {
728
729
  this.run = run
729
730
  }
730
731
  /** @internal */
731
- getParser(): Parser.Parser {
732
+ getParser(): SchemaParser.Parser {
732
733
  const run = this.run(this.typeParameters)
733
734
  return (oinput, options) => {
734
735
  if (Option.isNone(oinput)) return Effect.succeedNone
@@ -820,9 +821,9 @@ export class Undefined extends Base {
820
821
 
821
822
  const undefinedToNull = new Link(
822
823
  null_,
823
- new Transformation.Transformation(
824
- Getter.transform(() => undefined),
825
- Getter.transform(() => null)
824
+ new SchemaTransformation.Transformation(
825
+ SchemaGetter.transform(() => undefined),
826
+ SchemaGetter.transform(() => null)
826
827
  )
827
828
  )
828
829
 
@@ -1087,9 +1088,9 @@ export class Enum extends Base {
1087
1088
  return replaceEncoding(this, [
1088
1089
  new Link(
1089
1090
  new Union(Object.keys(coercions).map((k) => new Literal(k)), "anyOf"),
1090
- new Transformation.Transformation(
1091
- Getter.transform((s) => coercions[s]),
1092
- Getter.String()
1091
+ new SchemaTransformation.Transformation(
1092
+ SchemaGetter.transform((s) => coercions[s]),
1093
+ SchemaGetter.String()
1093
1094
  )
1094
1095
  )
1095
1096
  ])
@@ -1166,12 +1167,12 @@ export class TemplateLiteral extends Base {
1166
1167
  this.encodedParts = encodedParts
1167
1168
  }
1168
1169
  /** @internal */
1169
- getParser(recur: (ast: AST) => Parser.Parser): Parser.Parser {
1170
+ getParser(recur: (ast: AST) => SchemaParser.Parser): SchemaParser.Parser {
1170
1171
  const parser = recur(this.asTemplateLiteralParser())
1171
1172
  return (oinput: Option.Option<unknown>, options: ParseOptions) =>
1172
1173
  Effect.mapBothEager(parser(oinput, options), {
1173
1174
  onSuccess: () => oinput,
1174
- onFailure: (issue) => new Issue.Composite(this, oinput, [issue])
1175
+ onFailure: (issue) => new SchemaIssue.Composite(this, oinput, [issue])
1175
1176
  })
1176
1177
  }
1177
1178
  /** @internal */
@@ -1185,17 +1186,17 @@ export class TemplateLiteral extends Base {
1185
1186
  return decodeTo(
1186
1187
  string,
1187
1188
  tuple,
1188
- new Transformation.Transformation(
1189
- Getter.transformOrFail((s: string) => {
1189
+ new SchemaTransformation.Transformation(
1190
+ SchemaGetter.transformOrFail((s: string) => {
1190
1191
  const match = regExp.exec(s)
1191
1192
  if (match) return Effect.succeed(match.slice(1, this.parts.length + 1))
1192
1193
  return Effect.fail(
1193
- new Issue.InvalidValue(Option.some(s), {
1194
+ new SchemaIssue.InvalidValue(Option.some(s), {
1194
1195
  message: `Expected a value matching ${regExp.source}, got ${format(s)}`
1195
1196
  })
1196
1197
  )
1197
1198
  }),
1198
- Getter.transform((parts) => parts.join(""))
1199
+ SchemaGetter.transform((parts) => parts.join(""))
1199
1200
  )
1200
1201
  )
1201
1202
  }
@@ -1315,9 +1316,9 @@ function literalToString(ast: Literal): Literal {
1315
1316
  return replaceEncoding(ast, [
1316
1317
  new Link(
1317
1318
  new Literal(literalAsString),
1318
- new Transformation.Transformation(
1319
- Getter.transform(() => ast.literal),
1320
- Getter.transform(() => literalAsString)
1319
+ new SchemaTransformation.Transformation(
1320
+ SchemaGetter.transform(() => ast.literal),
1321
+ SchemaGetter.transform(() => literalAsString)
1321
1322
  )
1322
1323
  )
1323
1324
  ])
@@ -1474,8 +1475,8 @@ export const boolean = new Boolean()
1474
1475
  *
1475
1476
  * **When to use**
1476
1477
  *
1477
- * Use when defining or inspecting the AST node class for schemas that match any
1478
- * JavaScript symbol value.
1478
+ * Use when you need the AST node class for schemas that match any JavaScript
1479
+ * symbol value.
1479
1480
  *
1480
1481
  * **Details**
1481
1482
  *
@@ -1571,6 +1572,11 @@ export const bigInt = new BigInt()
1571
1572
  /**
1572
1573
  * AST node for array-like types — both tuples and arrays.
1573
1574
  *
1575
+ * **When to use**
1576
+ *
1577
+ * Use when constructing or inspecting AST nodes for tuple or array-like schemas,
1578
+ * including rest elements.
1579
+ *
1574
1580
  * **Details**
1575
1581
  *
1576
1582
  * - `elements` — positional element types (tuple elements). An element is
@@ -1638,7 +1644,7 @@ export class Arrays extends Base {
1638
1644
  }
1639
1645
  }
1640
1646
  /** @internal */
1641
- getParser(recur: (ast: AST) => Parser.Parser): Parser.Parser {
1647
+ getParser(recur: (ast: AST) => SchemaParser.Parser): SchemaParser.Parser {
1642
1648
  // oxlint-disable-next-line @typescript-eslint/no-this-alias
1643
1649
  const ast = this
1644
1650
  const elements = ast.elements.map((ast) => ({ ast, parser: recur(ast) }))
@@ -1648,7 +1654,10 @@ export class Arrays extends Base {
1648
1654
  const [head, ...tail] = rest
1649
1655
  const tailLen = tail.length
1650
1656
 
1651
- function getParser(tailThreshold: number, index: number): { readonly ast: AST; readonly parser: Parser.Parser } {
1657
+ function getParser(
1658
+ tailThreshold: number,
1659
+ index: number
1660
+ ): { readonly ast: AST; readonly parser: SchemaParser.Parser } {
1652
1661
  if (index < elementLen) {
1653
1662
  return elements[index]
1654
1663
  } else if (index >= tailThreshold) {
@@ -1665,7 +1674,7 @@ export class Arrays extends Base {
1665
1674
 
1666
1675
  // If the input is not an array, return early with an error
1667
1676
  if (!Array.isArray(input)) {
1668
- return yield* Effect.fail(new Issue.InvalidType(ast, oinput))
1677
+ return yield* Effect.fail(new SchemaIssue.InvalidType(ast, oinput))
1669
1678
  }
1670
1679
 
1671
1680
  const len = input.length
@@ -1676,7 +1685,7 @@ export class Arrays extends Base {
1676
1685
  len,
1677
1686
  tailThreshold: resolveTailThreshold(len, elementLen, tailLen),
1678
1687
  output: new globalThis.Array(len),
1679
- issues: undefined as Arr.NonEmptyArray<Issue.Issue> | undefined,
1688
+ issues: undefined as Arr.NonEmptyArray<SchemaIssue.Issue> | undefined,
1680
1689
  options
1681
1690
  }
1682
1691
  const concurrency = resolveConcurrency(options?.concurrency)
@@ -1691,17 +1700,17 @@ export class Arrays extends Base {
1691
1700
  // ---------------------------------------------
1692
1701
  if (ast.rest.length === 0 && len > elementLen) {
1693
1702
  for (let i = elementLen; i <= len - 1; i++) {
1694
- const issue = new Issue.Pointer([i], new Issue.UnexpectedKey(ast, input[i]))
1703
+ const issue = new SchemaIssue.Pointer([i], new SchemaIssue.UnexpectedKey(ast, input[i]))
1695
1704
  if (options.errors === "all") {
1696
1705
  if (state.issues) state.issues.push(issue)
1697
1706
  else state.issues = [issue]
1698
1707
  } else {
1699
- return yield* Effect.fail(new Issue.Composite(ast, oinput, [issue]))
1708
+ return yield* Effect.fail(new SchemaIssue.Composite(ast, oinput, [issue]))
1700
1709
  }
1701
1710
  }
1702
1711
  }
1703
1712
  if (state.issues) {
1704
- return yield* Effect.fail(new Issue.Composite(ast, oinput, state.issues))
1713
+ return yield* Effect.fail(new SchemaIssue.Composite(ast, oinput, state.issues))
1705
1714
  }
1706
1715
  return Option.some(state.output)
1707
1716
  })
@@ -1723,11 +1732,14 @@ const parseArray = iterateEager<{
1723
1732
  readonly ast: AST
1724
1733
  readonly oinput: Option.Option<unknown>
1725
1734
  readonly len: number
1726
- readonly getParser: (tailThreshold: number, index: number) => { readonly ast: AST; readonly parser: Parser.Parser }
1735
+ readonly getParser: (
1736
+ tailThreshold: number,
1737
+ index: number
1738
+ ) => { readonly ast: AST; readonly parser: SchemaParser.Parser }
1727
1739
  readonly tailThreshold: number
1728
1740
  readonly options: ParseOptions
1729
1741
  readonly output: Array<unknown>
1730
- issues: Array<Issue.Issue> | undefined
1742
+ issues: Array<SchemaIssue.Issue> | undefined
1731
1743
  }, unknown>()({
1732
1744
  onItem(s, item, i) {
1733
1745
  const value = i < s.len ? Option.some(item) : Option.none()
@@ -1741,12 +1753,12 @@ const parseArray = iterateEager<{
1741
1753
  } else {
1742
1754
  const p = s.getParser(s.tailThreshold, i)
1743
1755
  if (isOptional(p.ast)) return
1744
- const issue = new Issue.Pointer([i], new Issue.MissingKey(p.ast.context?.annotations))
1756
+ const issue = new SchemaIssue.Pointer([i], new SchemaIssue.MissingKey(p.ast.context?.annotations))
1745
1757
  if (s.options.errors === "all") {
1746
1758
  if (s.issues) s.issues.push(issue)
1747
1759
  else s.issues = [issue]
1748
1760
  } else {
1749
- return Exit.fail(new Issue.Composite(s.ast, s.oinput, [issue]))
1761
+ return Exit.fail(new SchemaIssue.Composite(s.ast, s.oinput, [issue]))
1750
1762
  }
1751
1763
  }
1752
1764
  }
@@ -1769,22 +1781,22 @@ const wrapPropertyKeyIssue = (
1769
1781
  s: {
1770
1782
  readonly oinput: Option.Option<unknown>
1771
1783
  readonly options: ParseOptions
1772
- issues: Array<Issue.Issue> | undefined
1784
+ issues: Array<SchemaIssue.Issue> | undefined
1773
1785
  },
1774
1786
  ast: AST,
1775
1787
  key: PropertyKey,
1776
- exit: Exit.Failure<any, Issue.Issue>
1788
+ exit: Exit.Failure<any, SchemaIssue.Issue>
1777
1789
  ) => {
1778
1790
  const issueResult = Cause.findError(exit.cause)
1779
1791
  if (Result.isFailure(issueResult)) {
1780
1792
  return exit
1781
1793
  }
1782
- const issue = new Issue.Pointer([key], issueResult.success)
1794
+ const issue = new SchemaIssue.Pointer([key], issueResult.success)
1783
1795
  if (s.options.errors === "all") {
1784
1796
  if (s.issues) s.issues.push(issue)
1785
1797
  else s.issues = [issue]
1786
1798
  } else {
1787
- return Exit.fail(new Issue.Composite(ast, s.oinput, [issue]))
1799
+ return Exit.fail(new SchemaIssue.Composite(ast, s.oinput, [issue]))
1788
1800
  }
1789
1801
  }
1790
1802
 
@@ -1883,11 +1895,16 @@ export class KeyValueCombiner {
1883
1895
  /**
1884
1896
  * Represents an index signature entry within an {@link Objects} node.
1885
1897
  *
1898
+ * **When to use**
1899
+ *
1900
+ * Use when constructing or inspecting object AST entries for record-like keys
1901
+ * and values.
1902
+ *
1886
1903
  * **Details**
1887
1904
  *
1888
1905
  * - `parameter` — the key type AST (e.g. {@link String} for `string` keys,
1889
1906
  * {@link TemplateLiteral} for patterned keys).
1890
- * - `type` — the value type AST.
1907
+ * - `type` — the value type SchemaAST.
1891
1908
  * - `merge` — optional {@link KeyValueCombiner} for handling duplicate keys.
1892
1909
  *
1893
1910
  * **Gotchas**
@@ -1922,6 +1939,11 @@ export class IndexSignature {
1922
1939
  /**
1923
1940
  * AST node for object-like schemas, including structs and records.
1924
1941
  *
1942
+ * **When to use**
1943
+ *
1944
+ * Use when constructing or inspecting AST nodes for structs or records rather
1945
+ * than array-like schemas.
1946
+ *
1925
1947
  * **Details**
1926
1948
  *
1927
1949
  * - `propertySignatures` — named properties with their types (struct fields).
@@ -1983,14 +2005,14 @@ export class Objects extends Base {
1983
2005
  }
1984
2006
  }
1985
2007
  /** @internal */
1986
- getParser(recur: (ast: AST) => Parser.Parser): Parser.Parser {
2008
+ getParser(recur: (ast: AST) => SchemaParser.Parser): SchemaParser.Parser {
1987
2009
  // oxlint-disable-next-line @typescript-eslint/no-this-alias
1988
2010
  const ast = this
1989
2011
  const expectedKeys: Array<PropertyKey> = []
1990
2012
  const expectedKeysSet = new Set<PropertyKey>()
1991
2013
  const properties: Array<{
1992
2014
  readonly ps: PropertySignature | IndexSignature
1993
- readonly parser: Parser.Parser
2015
+ readonly parser: SchemaParser.Parser
1994
2016
  readonly name: PropertyKey
1995
2017
  readonly type: AST
1996
2018
  }> = []
@@ -2018,7 +2040,7 @@ export class Objects extends Base {
2018
2040
  readonly input: Record<PropertyKey, unknown>
2019
2041
  readonly options: ParseOptions
2020
2042
  readonly out: Record<PropertyKey, unknown>
2021
- issues: Array<Issue.Issue> | undefined
2043
+ issues: Array<SchemaIssue.Issue> | undefined
2022
2044
  }, [key: PropertyKey, is: IndexSignature]>()({
2023
2045
  onItem: Effect.fnUntracedEager(function*(
2024
2046
  s,
@@ -2028,7 +2050,7 @@ export class Objects extends Base {
2028
2050
  const effKey = parserKey(Option.some(key), s.options)
2029
2051
  const exitKey = (effectIsExit(effKey) ? effKey : yield* Effect.exit(effKey)) as Exit.Exit<
2030
2052
  Option.Option<PropertyKey>,
2031
- Issue.Issue
2053
+ SchemaIssue.Issue
2032
2054
  >
2033
2055
  if (exitKey._tag === "Failure") {
2034
2056
  const eff = wrapPropertyKeyIssue(s, ast, key, exitKey)
@@ -2055,7 +2077,7 @@ export class Objects extends Base {
2055
2077
  }
2056
2078
  }
2057
2079
  }),
2058
- step: (_s, _, exit: Exit.Exit<void, Issue.Issue>) => exit._tag === "Failure" ? exit : undefined
2080
+ step: (_s, _, exit: Exit.Exit<void, SchemaIssue.Issue>) => exit._tag === "Failure" ? exit : undefined
2059
2081
  }) :
2060
2082
  undefined
2061
2083
 
@@ -2067,7 +2089,7 @@ export class Objects extends Base {
2067
2089
 
2068
2090
  // If the input is not a record, return early with an error
2069
2091
  if (!(typeof input === "object" && input !== null && !Array.isArray(input))) {
2070
- return yield* Effect.fail(new Issue.InvalidType(ast, oinput))
2092
+ return yield* Effect.fail(new SchemaIssue.InvalidType(ast, oinput))
2071
2093
  }
2072
2094
 
2073
2095
  const out: Record<PropertyKey, unknown> = {}
@@ -2076,7 +2098,7 @@ export class Objects extends Base {
2076
2098
  oinput,
2077
2099
  input,
2078
2100
  out,
2079
- issues: undefined as Arr.NonEmptyArray<Issue.Issue> | undefined,
2101
+ issues: undefined as Arr.NonEmptyArray<SchemaIssue.Issue> | undefined,
2080
2102
  options
2081
2103
  }
2082
2104
  const errorsAllOption = options.errors === "all"
@@ -2094,7 +2116,7 @@ export class Objects extends Base {
2094
2116
  if (!expectedKeysSet.has(key)) {
2095
2117
  // key is unexpected
2096
2118
  if (onExcessPropertyError) {
2097
- const issue = new Issue.Pointer([key], new Issue.UnexpectedKey(ast, input[key]))
2119
+ const issue = new SchemaIssue.Pointer([key], new SchemaIssue.UnexpectedKey(ast, input[key]))
2098
2120
  if (errorsAllOption) {
2099
2121
  if (state.issues) {
2100
2122
  state.issues.push(issue)
@@ -2103,7 +2125,7 @@ export class Objects extends Base {
2103
2125
  }
2104
2126
  continue
2105
2127
  } else {
2106
- return yield* Effect.fail(new Issue.Composite(ast, oinput, [issue]))
2128
+ return yield* Effect.fail(new SchemaIssue.Composite(ast, oinput, [issue]))
2107
2129
  }
2108
2130
  } else {
2109
2131
  // preserve key
@@ -2139,7 +2161,7 @@ export class Objects extends Base {
2139
2161
  }
2140
2162
 
2141
2163
  if (state.issues) {
2142
- return yield* Effect.fail(new Issue.Composite(ast, oinput, state.issues))
2164
+ return yield* Effect.fail(new SchemaIssue.Composite(ast, oinput, state.issues))
2143
2165
  }
2144
2166
  if (options.propertyOrder === "original") {
2145
2167
  // preserve input keys order
@@ -2194,7 +2216,7 @@ export class Objects extends Base {
2194
2216
 
2195
2217
  type ParsedProperty = {
2196
2218
  readonly ps: PropertySignature | IndexSignature
2197
- readonly parser: Parser.Parser
2219
+ readonly parser: SchemaParser.Parser
2198
2220
  readonly name: PropertyKey
2199
2221
  readonly type: AST
2200
2222
  }
@@ -2205,7 +2227,7 @@ const parseProperties = iterateEager<{
2205
2227
  readonly input: Record<PropertyKey, unknown>
2206
2228
  readonly options: ParseOptions
2207
2229
  readonly out: Record<PropertyKey, unknown>
2208
- issues: Array<Issue.Issue> | undefined
2230
+ issues: Array<SchemaIssue.Issue> | undefined
2209
2231
  }, ParsedProperty>()({
2210
2232
  onItem(
2211
2233
  s: {
@@ -2213,7 +2235,7 @@ const parseProperties = iterateEager<{
2213
2235
  readonly input: Record<PropertyKey, unknown>
2214
2236
  readonly options: ParseOptions
2215
2237
  readonly out: Record<PropertyKey, unknown>
2216
- issues: Array<Issue.Issue> | undefined
2238
+ issues: Array<SchemaIssue.Issue> | undefined
2217
2239
  },
2218
2240
  p
2219
2241
  ) {
@@ -2228,14 +2250,14 @@ const parseProperties = iterateEager<{
2228
2250
  } else if (exit.value._tag === "Some") {
2229
2251
  internalRecord.set(s.out, p.name, exit.value.value)
2230
2252
  } else if (!isOptional(p.type)) {
2231
- const issue = new Issue.Pointer([p.name], new Issue.MissingKey(p.type.context?.annotations))
2253
+ const issue = new SchemaIssue.Pointer([p.name], new SchemaIssue.MissingKey(p.type.context?.annotations))
2232
2254
  if (s.options.errors === "all") {
2233
2255
  if (s.issues) s.issues.push(issue)
2234
2256
  else s.issues = [issue]
2235
2257
  return
2236
2258
  } else {
2237
2259
  return Exit.fail(
2238
- new Issue.Composite(s.ast, s.oinput, [issue])
2260
+ new SchemaIssue.Composite(s.ast, s.oinput, [issue])
2239
2261
  )
2240
2262
  }
2241
2263
  }
@@ -2545,7 +2567,7 @@ export class Union<A extends AST = AST> extends Base {
2545
2567
  this.mode = mode
2546
2568
  }
2547
2569
  /** @internal */
2548
- getParser(recur: (ast: AST) => Parser.Parser): Parser.Parser {
2570
+ getParser(recur: (ast: AST) => SchemaParser.Parser): SchemaParser.Parser {
2549
2571
  // oxlint-disable-next-line @typescript-eslint/no-this-alias
2550
2572
  const ast = this
2551
2573
 
@@ -2563,16 +2585,20 @@ export class Union<A extends AST = AST> extends Base {
2563
2585
  input,
2564
2586
  out: undefined,
2565
2587
  successes: [],
2566
- issues: undefined as Arr.NonEmptyArray<Issue.Issue> | undefined,
2588
+ issues: undefined as Arr.NonEmptyArray<SchemaIssue.Issue> | undefined,
2567
2589
  options
2568
2590
  }
2569
2591
  const concurrency = resolveConcurrency(options?.concurrency)
2570
2592
  const eff = parseUnion(state, candidates, concurrency)
2571
2593
  if (!eff) {
2572
- return state.out ? Effect.succeed(state.out) : Effect.fail(new Issue.AnyOf(ast, input, state.issues ?? []))
2594
+ return state.out
2595
+ ? Effect.succeed(state.out)
2596
+ : Effect.fail(new SchemaIssue.AnyOf(ast, input, state.issues ?? []))
2573
2597
  }
2574
2598
  return Effect.flatMap(eff, (_) => {
2575
- return state.out ? Effect.succeed(state.out) : Effect.fail(new Issue.AnyOf(ast, input, state.issues ?? []))
2599
+ return state.out
2600
+ ? Effect.succeed(state.out)
2601
+ : Effect.fail(new SchemaIssue.AnyOf(ast, input, state.issues ?? []))
2576
2602
  })
2577
2603
  }
2578
2604
  }
@@ -2623,14 +2649,14 @@ export class Union<A extends AST = AST> extends Base {
2623
2649
  }
2624
2650
 
2625
2651
  const parseUnion = iterateEager<{
2626
- readonly recur: (ast: AST) => Parser.Parser
2652
+ readonly recur: (ast: AST) => SchemaParser.Parser
2627
2653
  readonly ast: Union
2628
2654
  readonly oinput: Option.Option<unknown>
2629
2655
  readonly input: unknown
2630
2656
  readonly options: ParseOptions
2631
2657
  out: Option.Option<unknown> | undefined
2632
2658
  successes: Array<AST>
2633
- issues: Array<Issue.Issue> | undefined
2659
+ issues: Array<SchemaIssue.Issue> | undefined
2634
2660
  }, AST>()({
2635
2661
  onItem(s, ast) {
2636
2662
  const parser = s.recur(ast)
@@ -2647,7 +2673,7 @@ const parseUnion = iterateEager<{
2647
2673
  } else {
2648
2674
  if (s.out && s.ast.mode === "oneOf") {
2649
2675
  s.successes.push(candidate)
2650
- return Exit.fail(new Issue.OneOf(s.ast, s.input, s.successes))
2676
+ return Exit.fail(new SchemaIssue.OneOf(s.ast, s.input, s.successes))
2651
2677
  }
2652
2678
  s.out = exit.value
2653
2679
  s.successes.push(candidate)
@@ -2666,9 +2692,9 @@ const nonFiniteLiterals = new Union([
2666
2692
 
2667
2693
  const numberToJson = new Link(
2668
2694
  new Union([number, nonFiniteLiterals], "anyOf"),
2669
- new Transformation.Transformation(
2670
- Getter.Number(),
2671
- Getter.transform((n) => globalThis.Number.isFinite(n) ? n : globalThis.String(n))
2695
+ new SchemaTransformation.Transformation(
2696
+ SchemaGetter.Number(),
2697
+ SchemaGetter.transform((n) => globalThis.Number.isFinite(n) ? n : globalThis.String(n))
2672
2698
  )
2673
2699
  )
2674
2700
 
@@ -2740,7 +2766,7 @@ export class Suspend extends Base {
2740
2766
  this.thunk = memoizeThunk(thunk)
2741
2767
  }
2742
2768
  /** @internal */
2743
- getParser(recur: (ast: AST) => Parser.Parser): Parser.Parser {
2769
+ getParser(recur: (ast: AST) => SchemaParser.Parser): SchemaParser.Parser {
2744
2770
  return recur(this.thunk())
2745
2771
  }
2746
2772
  /** @internal */
@@ -2780,7 +2806,7 @@ export class Suspend extends Base {
2780
2806
  */
2781
2807
  export class Filter<in E> extends Pipeable.Class {
2782
2808
  readonly _tag = "Filter"
2783
- readonly run: (input: E, self: AST, options: ParseOptions) => Issue.Issue | undefined
2809
+ readonly run: (input: E, self: AST, options: ParseOptions) => SchemaIssue.Issue | undefined
2784
2810
  readonly annotations: Schema.Annotations.Filter | undefined
2785
2811
  /**
2786
2812
  * Whether the parsing process should be aborted after this check has failed.
@@ -2788,7 +2814,7 @@ export class Filter<in E> extends Pipeable.Class {
2788
2814
  readonly aborted: boolean
2789
2815
 
2790
2816
  constructor(
2791
- run: (input: E, self: AST, options: ParseOptions) => Issue.Issue | undefined,
2817
+ run: (input: E, self: AST, options: ParseOptions) => SchemaIssue.Issue | undefined,
2792
2818
  annotations: Schema.Annotations.Filter | undefined = undefined,
2793
2819
  /**
2794
2820
  * Whether the parsing process should be aborted after this check has failed.
@@ -2870,7 +2896,7 @@ export function makeFilter<T>(
2870
2896
  aborted: boolean = false
2871
2897
  ): Filter<T> {
2872
2898
  return new Filter(
2873
- (input, ast, options) => Issue.make(input, ast, filter(input, ast, options)),
2899
+ (input, ast, options) => SchemaIssue.make(input, ast, filter(input, ast, options)),
2874
2900
  annotations,
2875
2901
  aborted
2876
2902
  )
@@ -2882,7 +2908,7 @@ export function makeFilterByGuard<T extends E, E>(
2882
2908
  annotations?: Schema.Annotations.Filter
2883
2909
  ): Filter<any> {
2884
2910
  return new Filter(
2885
- (input: E) => is(input) ? undefined : new Issue.InvalidValue(Option.some(input)),
2911
+ (input: E) => is(input) ? undefined : new SchemaIssue.InvalidValue(Option.some(input)),
2886
2912
  annotations,
2887
2913
  true // after a guard, we always want to abort
2888
2914
  )
@@ -2891,6 +2917,11 @@ export function makeFilterByGuard<T extends E, E>(
2891
2917
  /**
2892
2918
  * Creates a {@link Filter} that validates strings by running `RegExp.test`.
2893
2919
  *
2920
+ * **When to use**
2921
+ *
2922
+ * Use when string validation should be represented as a schema `Filter` backed
2923
+ * by a regular expression.
2924
+ *
2894
2925
  * **Details**
2895
2926
  *
2896
2927
  * The filter can be used with `Schema.filter` or attached directly to a
@@ -3015,7 +3046,7 @@ export function applyToLastLink(f: (ast: AST) => AST) {
3015
3046
  /** @internal */
3016
3047
  export function middlewareDecoding(
3017
3048
  ast: AST,
3018
- middleware: Transformation.Middleware<any, any, any, any, any, any>
3049
+ middleware: SchemaTransformation.Middleware<any, any, any, any, any, any>
3019
3050
  ): AST {
3020
3051
  return appendTransformation(ast, middleware, toType(ast))
3021
3052
  }
@@ -3023,7 +3054,7 @@ export function middlewareDecoding(
3023
3054
  /** @internal */
3024
3055
  export function middlewareEncoding(
3025
3056
  ast: AST,
3026
- middleware: Transformation.Middleware<any, any, any, any, any, any>
3057
+ middleware: SchemaTransformation.Middleware<any, any, any, any, any, any>
3027
3058
  ): AST {
3028
3059
  return appendTransformation(toEncoded(ast), middleware, ast)
3029
3060
  }
@@ -3031,8 +3062,8 @@ export function middlewareEncoding(
3031
3062
  function appendTransformation<A extends AST>(
3032
3063
  from: AST,
3033
3064
  transformation:
3034
- | Transformation.Transformation<any, any, any, any>
3035
- | Transformation.Middleware<any, any, any, any, any, any>,
3065
+ | SchemaTransformation.Transformation<any, any, any, any>
3066
+ | SchemaTransformation.Middleware<any, any, any, any, any, any>,
3036
3067
  to: A
3037
3068
  ): A {
3038
3069
  const link = new Link(from, transformation)
@@ -3120,11 +3151,11 @@ export function mutableKey<A extends AST>(ast: A): A {
3120
3151
  /** @internal */
3121
3152
  export function withConstructorDefault<A extends AST>(
3122
3153
  ast: A,
3123
- defaultValue: Effect.Effect<unknown, Issue.Issue>
3154
+ defaultValue: Effect.Effect<unknown, SchemaIssue.Issue>
3124
3155
  ): A {
3125
- const transformation = new Transformation.Transformation(
3126
- Getter.withDefault(defaultValue),
3127
- Getter.passthrough()
3156
+ const transformation = new SchemaTransformation.Transformation(
3157
+ SchemaGetter.withDefault(defaultValue),
3158
+ SchemaGetter.passthrough()
3128
3159
  )
3129
3160
  const encoding: Encoding = [new Link(unknown, transformation)]
3130
3161
  const context = ast.context ?
@@ -3154,7 +3185,7 @@ export function withConstructorDefault<A extends AST>(
3154
3185
  export function decodeTo<A extends AST>(
3155
3186
  from: AST,
3156
3187
  to: A,
3157
- transformation: Transformation.Transformation<any, any, any, any>
3188
+ transformation: SchemaTransformation.Transformation<any, any, any, any>
3158
3189
  ): A {
3159
3190
  return appendTransformation(from, transformation, to)
3160
3191
  }
@@ -3321,7 +3352,7 @@ function flipEncoding(ast: AST, encoding: Encoding): AST {
3321
3352
  *
3322
3353
  * After flipping, what was decoding becomes encoding and vice versa. This is
3323
3354
  * the core operation behind `Schema.encode` — encoding a value is decoding
3324
- * with a flipped AST.
3355
+ * with a flipped SchemaAST.
3325
3356
  *
3326
3357
  * - Memoized: same input reference → same output reference.
3327
3358
  * - Recursively walks composite nodes.
@@ -3393,7 +3424,7 @@ function handleTemplateLiteralASTPartParens(part: TemplateLiteralPart, s: string
3393
3424
  function fromConst<const T>(
3394
3425
  ast: AST,
3395
3426
  value: T
3396
- ): Parser.Parser {
3427
+ ): SchemaParser.Parser {
3397
3428
  const succeed = Effect.succeedSome(value)
3398
3429
  return (oinput) => {
3399
3430
  if (oinput._tag === "None") {
@@ -3401,21 +3432,21 @@ function fromConst<const T>(
3401
3432
  }
3402
3433
  return oinput.value === value
3403
3434
  ? succeed
3404
- : Effect.fail(new Issue.InvalidType(ast, oinput))
3435
+ : Effect.fail(new SchemaIssue.InvalidType(ast, oinput))
3405
3436
  }
3406
3437
  }
3407
3438
 
3408
3439
  function fromRefinement<T>(
3409
3440
  ast: AST,
3410
3441
  refinement: (input: unknown) => input is T
3411
- ): Parser.Parser {
3442
+ ): SchemaParser.Parser {
3412
3443
  return (oinput) => {
3413
3444
  if (oinput._tag === "None") {
3414
3445
  return Effect.succeedNone
3415
3446
  }
3416
3447
  return refinement(oinput.value)
3417
3448
  ? Effect.succeed(oinput)
3418
- : Effect.fail(new Issue.InvalidType(ast, oinput))
3449
+ : Effect.fail(new SchemaIssue.InvalidType(ast, oinput))
3419
3450
  }
3420
3451
  }
3421
3452
 
@@ -3489,12 +3520,12 @@ const finiteString = appendChecks(string, [isStringFinite()])
3489
3520
 
3490
3521
  const finiteToString = new Link(
3491
3522
  finiteString,
3492
- Transformation.numberFromString
3523
+ SchemaTransformation.numberFromString
3493
3524
  )
3494
3525
 
3495
3526
  const numberToString = new Link(
3496
3527
  new Union([finiteString, nonFiniteLiterals], "anyOf"),
3497
- Transformation.numberFromString
3528
+ SchemaTransformation.numberFromString
3498
3529
  )
3499
3530
 
3500
3531
  /**
@@ -3526,7 +3557,7 @@ export const bigIntString = appendChecks(string, [isStringBigInt({
3526
3557
 
3527
3558
  const bigIntToString = new Link(
3528
3559
  bigIntString,
3529
- Transformation.bigintFromString
3560
+ SchemaTransformation.bigintFromString
3530
3561
  )
3531
3562
 
3532
3563
  const REGEXP_PATTERN = "Symbol\\((.*)\\)"
@@ -3541,15 +3572,15 @@ export const symbolString = appendChecks(string, [isStringSymbol()])
3541
3572
  */
3542
3573
  const symbolToString = new Link(
3543
3574
  symbolString,
3544
- new Transformation.Transformation(
3545
- Getter.transform((description) => globalThis.Symbol.for(isStringSymbolRegExp.exec(description)![1])),
3546
- Getter.transformOrFail((sym: symbol) => {
3575
+ new SchemaTransformation.Transformation(
3576
+ SchemaGetter.transform((description) => globalThis.Symbol.for(isStringSymbolRegExp.exec(description)![1])),
3577
+ SchemaGetter.transformOrFail((sym: symbol) => {
3547
3578
  const key = globalThis.Symbol.keyFor(sym)
3548
3579
  if (key !== undefined) {
3549
3580
  return Effect.succeed(globalThis.String(sym))
3550
3581
  }
3551
3582
  return Effect.fail(
3552
- new Issue.Forbidden(Option.some(sym), { message: "cannot serialize to string, Symbol is not registered" })
3583
+ new SchemaIssue.Forbidden(Option.some(sym), { message: "cannot serialize to string, Symbol is not registered" })
3553
3584
  )
3554
3585
  })
3555
3586
  )
@@ -3574,7 +3605,7 @@ export function isStringSymbol(annotations?: Schema.Annotations.Filter) {
3574
3605
  export function collectIssues<T>(
3575
3606
  checks: ReadonlyArray<Check<T>>,
3576
3607
  value: T,
3577
- issues: Array<Issue.Issue>,
3608
+ issues: Array<SchemaIssue.Issue>,
3578
3609
  ast: AST,
3579
3610
  options: ParseOptions
3580
3611
  ) {
@@ -3585,7 +3616,7 @@ export function collectIssues<T>(
3585
3616
  } else {
3586
3617
  const issue = check.run(value, ast, options)
3587
3618
  if (issue) {
3588
- issues.push(new Issue.Filter(value, check, issue))
3619
+ issues.push(new SchemaIssue.Filter(value, check, issue))
3589
3620
  if (check.aborted || options?.errors !== "all") {
3590
3621
  return
3591
3622
  }
@@ -3598,11 +3629,11 @@ export function collectIssues<T>(
3598
3629
  export function runChecks<T>(
3599
3630
  checks: readonly [Check<T>, ...Array<Check<T>>],
3600
3631
  s: T
3601
- ): Result.Result<T, Issue.Issue> {
3602
- const issues: Array<Issue.Issue> = []
3632
+ ): Result.Result<T, SchemaIssue.Issue> {
3633
+ const issues: Array<SchemaIssue.Issue> = []
3603
3634
  collectIssues(checks, s, issues, unknown, { errors: "all" })
3604
3635
  if (Arr.isArrayNonEmpty(issues)) {
3605
- const issue = new Issue.Composite(unknown, Option.some(s), issues)
3636
+ const issue = new SchemaIssue.Composite(unknown, Option.some(s), issues)
3606
3637
  return Result.fail(issue)
3607
3638
  }
3608
3639
  return Result.succeed(s)
@@ -3749,7 +3780,7 @@ export const Json = new Declaration(
3749
3780
  () => (input, ast) =>
3750
3781
  isJson(input) ?
3751
3782
  Effect.succeed(input) :
3752
- Effect.fail(new Issue.InvalidType(ast, Option.some(input))),
3783
+ Effect.fail(new SchemaIssue.InvalidType(ast, Option.some(input))),
3753
3784
  {
3754
3785
  typeConstructor: {
3755
3786
  _tag: "effect/Json"
@@ -3759,7 +3790,7 @@ export const Json = new Declaration(
3759
3790
  Type: `Schema.Json`
3760
3791
  },
3761
3792
  expected: "JSON value",
3762
- toCodecJson: () => new Link(unknown, Transformation.passthrough())
3793
+ toCodecJson: () => new Link(unknown, SchemaTransformation.passthrough())
3763
3794
  }
3764
3795
  )
3765
3796
 
@@ -3777,16 +3808,16 @@ export const MutableJson = annotate(Json, {
3777
3808
  /** @internal */
3778
3809
  export const unknownToNull = new Link(
3779
3810
  null_,
3780
- new Transformation.Transformation(
3781
- Getter.passthrough(),
3782
- Getter.transform(() => null)
3811
+ new SchemaTransformation.Transformation(
3812
+ SchemaGetter.passthrough(),
3813
+ SchemaGetter.transform(() => null)
3783
3814
  )
3784
3815
  )
3785
3816
 
3786
3817
  /** @internal */
3787
3818
  export const unknownToJson = new Link(
3788
3819
  Json,
3789
- Transformation.passthrough()
3820
+ SchemaTransformation.passthrough()
3790
3821
  )
3791
3822
 
3792
3823
  /**
@@ -3823,15 +3854,15 @@ const StringTree = new Declaration(
3823
3854
  () => (input, ast) =>
3824
3855
  isStringTree(input) ?
3825
3856
  Effect.succeed(input) :
3826
- Effect.fail(new Issue.InvalidType(ast, Option.some(input))),
3857
+ Effect.fail(new SchemaIssue.InvalidType(ast, Option.some(input))),
3827
3858
  {
3828
3859
  expected: "StringTree",
3829
- toCodecStringTree: () => new Link(unknown, Transformation.passthrough())
3860
+ toCodecStringTree: () => new Link(unknown, SchemaTransformation.passthrough())
3830
3861
  }
3831
3862
  )
3832
3863
 
3833
3864
  /** @internal */
3834
3865
  export const unknownToStringTree = new Link(
3835
3866
  StringTree,
3836
- Transformation.passthrough()
3867
+ SchemaTransformation.passthrough()
3837
3868
  )