effect 4.0.0-beta.3 → 4.0.0-beta.31

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 (1008) hide show
  1. package/dist/Array.d.ts +126 -299
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +102 -62
  4. package/dist/Array.js.map +1 -1
  5. package/dist/Brand.d.ts +1 -1
  6. package/dist/Brand.d.ts.map +1 -1
  7. package/dist/Brand.js +1 -1
  8. package/dist/Brand.js.map +1 -1
  9. package/dist/Cache.d.ts +2 -2
  10. package/dist/Cache.d.ts.map +1 -1
  11. package/dist/Cache.js +6 -5
  12. package/dist/Cache.js.map +1 -1
  13. package/dist/Cause.d.ts +2 -2
  14. package/dist/Cause.d.ts.map +1 -1
  15. package/dist/Channel.d.ts +118 -32
  16. package/dist/Channel.d.ts.map +1 -1
  17. package/dist/Channel.js +82 -37
  18. package/dist/Channel.js.map +1 -1
  19. package/dist/Chunk.d.ts +54 -247
  20. package/dist/Chunk.d.ts.map +1 -1
  21. package/dist/Chunk.js +36 -67
  22. package/dist/Chunk.js.map +1 -1
  23. package/dist/Combiner.d.ts +280 -13
  24. package/dist/Combiner.d.ts.map +1 -1
  25. package/dist/Combiner.js +198 -7
  26. package/dist/Combiner.js.map +1 -1
  27. package/dist/Config.d.ts +165 -9
  28. package/dist/Config.d.ts.map +1 -1
  29. package/dist/Config.js +65 -10
  30. package/dist/Config.js.map +1 -1
  31. package/dist/ConfigProvider.d.ts +1 -1
  32. package/dist/Cron.d.ts +1 -1
  33. package/dist/Cron.js +3 -3
  34. package/dist/Cron.js.map +1 -1
  35. package/dist/Data.d.ts +535 -366
  36. package/dist/Data.d.ts.map +1 -1
  37. package/dist/Data.js +132 -79
  38. package/dist/Data.js.map +1 -1
  39. package/dist/DateTime.d.ts +56 -238
  40. package/dist/DateTime.d.ts.map +1 -1
  41. package/dist/DateTime.js +7 -52
  42. package/dist/DateTime.js.map +1 -1
  43. package/dist/Duration.d.ts +39 -11
  44. package/dist/Duration.d.ts.map +1 -1
  45. package/dist/Duration.js +88 -59
  46. package/dist/Duration.js.map +1 -1
  47. package/dist/Effect.d.ts +1206 -924
  48. package/dist/Effect.d.ts.map +1 -1
  49. package/dist/Effect.js +390 -329
  50. package/dist/Effect.js.map +1 -1
  51. package/dist/Encoding.d.ts +194 -0
  52. package/dist/Encoding.d.ts.map +1 -0
  53. package/dist/Encoding.js +352 -0
  54. package/dist/Encoding.js.map +1 -0
  55. package/dist/Equal.d.ts +276 -109
  56. package/dist/Equal.d.ts.map +1 -1
  57. package/dist/Equal.js +124 -48
  58. package/dist/Equal.js.map +1 -1
  59. package/dist/ErrorReporter.d.ts +374 -0
  60. package/dist/ErrorReporter.d.ts.map +1 -0
  61. package/dist/ErrorReporter.js +244 -0
  62. package/dist/ErrorReporter.js.map +1 -0
  63. package/dist/Exit.d.ts +24 -12
  64. package/dist/Exit.d.ts.map +1 -1
  65. package/dist/Exit.js +8 -4
  66. package/dist/Exit.js.map +1 -1
  67. package/dist/Fiber.d.ts +3 -2
  68. package/dist/Fiber.d.ts.map +1 -1
  69. package/dist/Fiber.js.map +1 -1
  70. package/dist/FileSystem.d.ts +1 -1
  71. package/dist/FileSystem.d.ts.map +1 -1
  72. package/dist/FileSystem.js +5 -5
  73. package/dist/FileSystem.js.map +1 -1
  74. package/dist/Filter.d.ts +34 -38
  75. package/dist/Filter.d.ts.map +1 -1
  76. package/dist/Filter.js +15 -13
  77. package/dist/Filter.js.map +1 -1
  78. package/dist/Formatter.d.ts +131 -47
  79. package/dist/Formatter.d.ts.map +1 -1
  80. package/dist/Formatter.js +229 -51
  81. package/dist/Formatter.js.map +1 -1
  82. package/dist/Function.d.ts +1 -9
  83. package/dist/Function.d.ts.map +1 -1
  84. package/dist/Function.js +2 -10
  85. package/dist/Function.js.map +1 -1
  86. package/dist/Graph.d.ts +1 -1
  87. package/dist/Graph.d.ts.map +1 -1
  88. package/dist/Graph.js +5 -8
  89. package/dist/Graph.js.map +1 -1
  90. package/dist/HashMap.d.ts +15 -14
  91. package/dist/HashMap.d.ts.map +1 -1
  92. package/dist/HashMap.js +4 -4
  93. package/dist/HashMap.js.map +1 -1
  94. package/dist/Iterable.d.ts +39 -39
  95. package/dist/Iterable.d.ts.map +1 -1
  96. package/dist/Iterable.js +94 -22
  97. package/dist/Iterable.js.map +1 -1
  98. package/dist/JsonSchema.d.ts +299 -10
  99. package/dist/JsonSchema.d.ts.map +1 -1
  100. package/dist/JsonSchema.js +323 -4
  101. package/dist/JsonSchema.js.map +1 -1
  102. package/dist/Latch.d.ts +109 -0
  103. package/dist/Latch.d.ts.map +1 -0
  104. package/dist/Latch.js +72 -0
  105. package/dist/Latch.js.map +1 -0
  106. package/dist/Layer.d.ts +217 -127
  107. package/dist/Layer.d.ts.map +1 -1
  108. package/dist/Layer.js +51 -46
  109. package/dist/Layer.js.map +1 -1
  110. package/dist/LayerMap.d.ts +8 -8
  111. package/dist/LayerMap.d.ts.map +1 -1
  112. package/dist/LayerMap.js +3 -3
  113. package/dist/LogLevel.d.ts +32 -0
  114. package/dist/LogLevel.d.ts.map +1 -1
  115. package/dist/LogLevel.js +28 -100
  116. package/dist/LogLevel.js.map +1 -1
  117. package/dist/Logger.d.ts +29 -95
  118. package/dist/Logger.d.ts.map +1 -1
  119. package/dist/Logger.js +2 -3
  120. package/dist/Logger.js.map +1 -1
  121. package/dist/ManagedRuntime.d.ts +2 -2
  122. package/dist/ManagedRuntime.js +2 -2
  123. package/dist/Metric.d.ts +4 -6
  124. package/dist/Metric.d.ts.map +1 -1
  125. package/dist/Metric.js +3 -5
  126. package/dist/Metric.js.map +1 -1
  127. package/dist/Newtype.d.ts +291 -0
  128. package/dist/Newtype.d.ts.map +1 -0
  129. package/dist/Newtype.js +161 -0
  130. package/dist/Newtype.js.map +1 -0
  131. package/dist/Optic.d.ts +947 -18
  132. package/dist/Optic.d.ts.map +1 -1
  133. package/dist/Optic.js +454 -5
  134. package/dist/Optic.js.map +1 -1
  135. package/dist/Option.d.ts +23 -16
  136. package/dist/Option.d.ts.map +1 -1
  137. package/dist/Option.js +15 -9
  138. package/dist/Option.js.map +1 -1
  139. package/dist/Pipeable.d.ts +17 -0
  140. package/dist/Pipeable.d.ts.map +1 -1
  141. package/dist/Pipeable.js +19 -1
  142. package/dist/Pipeable.js.map +1 -1
  143. package/dist/PlatformError.d.ts +10 -9
  144. package/dist/PlatformError.d.ts.map +1 -1
  145. package/dist/PlatformError.js +2 -2
  146. package/dist/PlatformError.js.map +1 -1
  147. package/dist/Pool.d.ts +6 -4
  148. package/dist/Pool.d.ts.map +1 -1
  149. package/dist/Pool.js +7 -5
  150. package/dist/Pool.js.map +1 -1
  151. package/dist/PubSub.d.ts +3 -2
  152. package/dist/PubSub.d.ts.map +1 -1
  153. package/dist/PubSub.js +3 -2
  154. package/dist/PubSub.js.map +1 -1
  155. package/dist/Pull.d.ts.map +1 -1
  156. package/dist/Pull.js +1 -1
  157. package/dist/Pull.js.map +1 -1
  158. package/dist/Queue.d.ts.map +1 -1
  159. package/dist/Queue.js +0 -1
  160. package/dist/Queue.js.map +1 -1
  161. package/dist/Random.d.ts +35 -1
  162. package/dist/Random.d.ts.map +1 -1
  163. package/dist/Random.js +46 -12
  164. package/dist/Random.js.map +1 -1
  165. package/dist/RcMap.d.ts +2 -2
  166. package/dist/RcMap.d.ts.map +1 -1
  167. package/dist/RcMap.js +1 -1
  168. package/dist/RcMap.js.map +1 -1
  169. package/dist/RcRef.d.ts +1 -1
  170. package/dist/RcRef.d.ts.map +1 -1
  171. package/dist/Record.d.ts +23 -120
  172. package/dist/Record.d.ts.map +1 -1
  173. package/dist/Record.js +21 -41
  174. package/dist/Record.js.map +1 -1
  175. package/dist/Reducer.d.ts +166 -7
  176. package/dist/Reducer.d.ts.map +1 -1
  177. package/dist/Reducer.js +135 -1
  178. package/dist/Reducer.js.map +1 -1
  179. package/dist/References.d.ts +9 -4
  180. package/dist/References.d.ts.map +1 -1
  181. package/dist/References.js +6 -1
  182. package/dist/References.js.map +1 -1
  183. package/dist/Request.d.ts +1 -1
  184. package/dist/Request.d.ts.map +1 -1
  185. package/dist/Request.js +2 -1
  186. package/dist/Request.js.map +1 -1
  187. package/dist/RequestResolver.d.ts +25 -45
  188. package/dist/RequestResolver.d.ts.map +1 -1
  189. package/dist/RequestResolver.js +10 -30
  190. package/dist/RequestResolver.js.map +1 -1
  191. package/dist/Result.d.ts +1 -1
  192. package/dist/Result.d.ts.map +1 -1
  193. package/dist/Result.js +1 -2
  194. package/dist/Result.js.map +1 -1
  195. package/dist/Runtime.d.ts +66 -0
  196. package/dist/Runtime.d.ts.map +1 -1
  197. package/dist/Runtime.js +79 -6
  198. package/dist/Runtime.js.map +1 -1
  199. package/dist/Schedule.d.ts +191 -102
  200. package/dist/Schedule.d.ts.map +1 -1
  201. package/dist/Schedule.js +152 -66
  202. package/dist/Schedule.js.map +1 -1
  203. package/dist/Scheduler.d.ts +9 -0
  204. package/dist/Scheduler.d.ts.map +1 -1
  205. package/dist/Scheduler.js +11 -0
  206. package/dist/Scheduler.js.map +1 -1
  207. package/dist/Schema.d.ts +2647 -224
  208. package/dist/Schema.d.ts.map +1 -1
  209. package/dist/Schema.js +1863 -209
  210. package/dist/Schema.js.map +1 -1
  211. package/dist/SchemaAST.d.ts +2 -2
  212. package/dist/SchemaAST.d.ts.map +1 -1
  213. package/dist/SchemaAST.js +131 -25
  214. package/dist/SchemaAST.js.map +1 -1
  215. package/dist/SchemaGetter.d.ts +5 -5
  216. package/dist/SchemaGetter.d.ts.map +1 -1
  217. package/dist/SchemaGetter.js +12 -14
  218. package/dist/SchemaGetter.js.map +1 -1
  219. package/dist/SchemaParser.d.ts +5 -0
  220. package/dist/SchemaParser.d.ts.map +1 -1
  221. package/dist/SchemaParser.js +10 -0
  222. package/dist/SchemaParser.js.map +1 -1
  223. package/dist/SchemaRepresentation.d.ts +46 -45
  224. package/dist/SchemaRepresentation.d.ts.map +1 -1
  225. package/dist/SchemaRepresentation.js +49 -24
  226. package/dist/SchemaRepresentation.js.map +1 -1
  227. package/dist/SchemaTransformation.d.ts +107 -3
  228. package/dist/SchemaTransformation.d.ts.map +1 -1
  229. package/dist/SchemaTransformation.js +159 -4
  230. package/dist/SchemaTransformation.js.map +1 -1
  231. package/dist/ScopedCache.d.ts +2 -2
  232. package/dist/ScopedCache.d.ts.map +1 -1
  233. package/dist/ScopedCache.js +1 -1
  234. package/dist/ScopedCache.js.map +1 -1
  235. package/dist/Semaphore.d.ts +211 -0
  236. package/dist/Semaphore.d.ts.map +1 -0
  237. package/dist/{PartitionedSemaphore.js → Semaphore.js} +97 -13
  238. package/dist/Semaphore.js.map +1 -0
  239. package/dist/ServiceMap.d.ts +41 -31
  240. package/dist/ServiceMap.d.ts.map +1 -1
  241. package/dist/ServiceMap.js +3 -3
  242. package/dist/ServiceMap.js.map +1 -1
  243. package/dist/Sink.d.ts +13 -13
  244. package/dist/Sink.d.ts.map +1 -1
  245. package/dist/Sink.js +53 -6
  246. package/dist/Sink.js.map +1 -1
  247. package/dist/Stdio.d.ts +16 -4
  248. package/dist/Stdio.d.ts.map +1 -1
  249. package/dist/Stdio.js +18 -0
  250. package/dist/Stdio.js.map +1 -1
  251. package/dist/Stream.d.ts +250 -428
  252. package/dist/Stream.d.ts.map +1 -1
  253. package/dist/Stream.js +137 -82
  254. package/dist/Stream.js.map +1 -1
  255. package/dist/Struct.d.ts +16 -0
  256. package/dist/Struct.d.ts.map +1 -1
  257. package/dist/Struct.js +22 -0
  258. package/dist/Struct.js.map +1 -1
  259. package/dist/SubscriptionRef.d.ts +2 -1
  260. package/dist/SubscriptionRef.d.ts.map +1 -1
  261. package/dist/SubscriptionRef.js +2 -1
  262. package/dist/SubscriptionRef.js.map +1 -1
  263. package/dist/SynchronizedRef.d.ts +2 -1
  264. package/dist/SynchronizedRef.d.ts.map +1 -1
  265. package/dist/SynchronizedRef.js +2 -1
  266. package/dist/SynchronizedRef.js.map +1 -1
  267. package/dist/Trie.d.ts +18 -17
  268. package/dist/Trie.d.ts.map +1 -1
  269. package/dist/Trie.js +5 -5
  270. package/dist/Trie.js.map +1 -1
  271. package/dist/TxChunk.d.ts +37 -37
  272. package/dist/TxChunk.d.ts.map +1 -1
  273. package/dist/TxChunk.js +3 -3
  274. package/dist/TxChunk.js.map +1 -1
  275. package/dist/TxDeferred.d.ts +328 -0
  276. package/dist/TxDeferred.d.ts.map +1 -0
  277. package/dist/TxDeferred.js +196 -0
  278. package/dist/TxDeferred.js.map +1 -0
  279. package/dist/TxHashMap.d.ts +84 -83
  280. package/dist/TxHashMap.d.ts.map +1 -1
  281. package/dist/TxHashMap.js +24 -24
  282. package/dist/TxHashMap.js.map +1 -1
  283. package/dist/TxHashSet.d.ts +35 -35
  284. package/dist/TxHashSet.d.ts.map +1 -1
  285. package/dist/TxHashSet.js +14 -14
  286. package/dist/TxHashSet.js.map +1 -1
  287. package/dist/TxPriorityQueue.d.ts +609 -0
  288. package/dist/TxPriorityQueue.d.ts.map +1 -0
  289. package/dist/TxPriorityQueue.js +415 -0
  290. package/dist/TxPriorityQueue.js.map +1 -0
  291. package/dist/TxPubSub.d.ts +585 -0
  292. package/dist/TxPubSub.d.ts.map +1 -0
  293. package/dist/TxPubSub.js +521 -0
  294. package/dist/TxPubSub.js.map +1 -0
  295. package/dist/TxQueue.d.ts +32 -32
  296. package/dist/TxQueue.d.ts.map +1 -1
  297. package/dist/TxQueue.js +26 -26
  298. package/dist/TxQueue.js.map +1 -1
  299. package/dist/TxReentrantLock.d.ts +523 -0
  300. package/dist/TxReentrantLock.d.ts.map +1 -0
  301. package/dist/TxReentrantLock.js +504 -0
  302. package/dist/TxReentrantLock.js.map +1 -0
  303. package/dist/TxRef.d.ts +34 -34
  304. package/dist/TxRef.d.ts.map +1 -1
  305. package/dist/TxRef.js +21 -14
  306. package/dist/TxRef.js.map +1 -1
  307. package/dist/TxSemaphore.d.ts +8 -8
  308. package/dist/TxSemaphore.d.ts.map +1 -1
  309. package/dist/TxSemaphore.js +7 -7
  310. package/dist/TxSemaphore.js.map +1 -1
  311. package/dist/TxSubscriptionRef.d.ts +508 -0
  312. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  313. package/dist/TxSubscriptionRef.js +293 -0
  314. package/dist/TxSubscriptionRef.js.map +1 -0
  315. package/dist/Types.d.ts +80 -23
  316. package/dist/Types.d.ts.map +1 -1
  317. package/dist/Utils.d.ts +137 -65
  318. package/dist/Utils.d.ts.map +1 -1
  319. package/dist/Utils.js +38 -66
  320. package/dist/Utils.js.map +1 -1
  321. package/dist/index.d.ts +718 -23
  322. package/dist/index.d.ts.map +1 -1
  323. package/dist/index.js +718 -23
  324. package/dist/index.js.map +1 -1
  325. package/dist/internal/core.js +11 -3
  326. package/dist/internal/core.js.map +1 -1
  327. package/dist/internal/dateTime.js +60 -61
  328. package/dist/internal/dateTime.js.map +1 -1
  329. package/dist/internal/effect.js +265 -127
  330. package/dist/internal/effect.js.map +1 -1
  331. package/dist/internal/hashMap.js +5 -4
  332. package/dist/internal/hashMap.js.map +1 -1
  333. package/dist/internal/random.d.ts +2 -0
  334. package/dist/internal/random.d.ts.map +1 -0
  335. package/dist/internal/random.js +13 -0
  336. package/dist/internal/random.js.map +1 -0
  337. package/dist/internal/rcRef.js +3 -2
  338. package/dist/internal/rcRef.js.map +1 -1
  339. package/dist/internal/request.js +2 -2
  340. package/dist/internal/request.js.map +1 -1
  341. package/dist/internal/schema/annotations.js +2 -0
  342. package/dist/internal/schema/annotations.js.map +1 -1
  343. package/dist/internal/schema/representation.js +47 -106
  344. package/dist/internal/schema/representation.js.map +1 -1
  345. package/dist/internal/schema/schema.js +1 -0
  346. package/dist/internal/schema/schema.js.map +1 -1
  347. package/dist/internal/schema/to-codec.js +7 -10
  348. package/dist/internal/schema/to-codec.js.map +1 -1
  349. package/dist/internal/trie.js +5 -4
  350. package/dist/internal/trie.js.map +1 -1
  351. package/dist/testing/TestClock.d.ts +8 -7
  352. package/dist/testing/TestClock.d.ts.map +1 -1
  353. package/dist/testing/TestClock.js +6 -4
  354. package/dist/testing/TestClock.js.map +1 -1
  355. package/dist/testing/TestSchema.d.ts +266 -32
  356. package/dist/testing/TestSchema.d.ts.map +1 -1
  357. package/dist/testing/TestSchema.js +296 -23
  358. package/dist/testing/TestSchema.js.map +1 -1
  359. package/dist/testing/index.d.ts +64 -1
  360. package/dist/testing/index.d.ts.map +1 -1
  361. package/dist/testing/index.js +64 -1
  362. package/dist/testing/index.js.map +1 -1
  363. package/dist/unstable/ai/AiError.d.ts +134 -51
  364. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  365. package/dist/unstable/ai/AiError.js +19 -16
  366. package/dist/unstable/ai/AiError.js.map +1 -1
  367. package/dist/unstable/ai/Chat.d.ts +7 -8
  368. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  369. package/dist/unstable/ai/Chat.js +38 -44
  370. package/dist/unstable/ai/Chat.js.map +1 -1
  371. package/dist/unstable/ai/LanguageModel.d.ts +45 -45
  372. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  373. package/dist/unstable/ai/LanguageModel.js +107 -124
  374. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  375. package/dist/unstable/ai/McpSchema.d.ts +183 -88
  376. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  377. package/dist/unstable/ai/McpSchema.js +57 -12
  378. package/dist/unstable/ai/McpSchema.js.map +1 -1
  379. package/dist/unstable/ai/McpServer.d.ts +66 -13
  380. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  381. package/dist/unstable/ai/McpServer.js +193 -51
  382. package/dist/unstable/ai/McpServer.js.map +1 -1
  383. package/dist/unstable/ai/Model.d.ts +25 -7
  384. package/dist/unstable/ai/Model.d.ts.map +1 -1
  385. package/dist/unstable/ai/Model.js +22 -6
  386. package/dist/unstable/ai/Model.js.map +1 -1
  387. package/dist/unstable/ai/Prompt.d.ts +20 -20
  388. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  389. package/dist/unstable/ai/Response.d.ts +26 -26
  390. package/dist/unstable/ai/Response.d.ts.map +1 -1
  391. package/dist/unstable/ai/Response.js +1 -1
  392. package/dist/unstable/ai/Response.js.map +1 -1
  393. package/dist/unstable/ai/Tool.d.ts +20 -4
  394. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  395. package/dist/unstable/ai/Tool.js +14 -9
  396. package/dist/unstable/ai/Tool.js.map +1 -1
  397. package/dist/unstable/ai/Toolkit.d.ts +1 -1
  398. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  399. package/dist/unstable/ai/Toolkit.js +4 -11
  400. package/dist/unstable/ai/Toolkit.js.map +1 -1
  401. package/dist/unstable/ai/index.d.ts +1 -1
  402. package/dist/unstable/ai/index.js +1 -1
  403. package/dist/unstable/ai/internal/codec-transformer.js +0 -5
  404. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  405. package/dist/unstable/cli/CliError.d.ts +27 -60
  406. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  407. package/dist/unstable/cli/CliError.js +25 -57
  408. package/dist/unstable/cli/CliError.js.map +1 -1
  409. package/dist/unstable/cli/CliOutput.js +59 -6
  410. package/dist/unstable/cli/CliOutput.js.map +1 -1
  411. package/dist/unstable/cli/Command.d.ts +368 -56
  412. package/dist/unstable/cli/Command.d.ts.map +1 -1
  413. package/dist/unstable/cli/Command.js +325 -64
  414. package/dist/unstable/cli/Command.js.map +1 -1
  415. package/dist/unstable/cli/Completions.d.ts +16 -0
  416. package/dist/unstable/cli/Completions.d.ts.map +1 -0
  417. package/dist/unstable/cli/Completions.js +23 -0
  418. package/dist/unstable/cli/Completions.js.map +1 -0
  419. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  420. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  421. package/dist/unstable/cli/GlobalFlag.js +118 -0
  422. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  423. package/dist/unstable/cli/HelpDoc.d.ts +70 -2
  424. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  425. package/dist/unstable/cli/Primitive.d.ts +1 -1
  426. package/dist/unstable/cli/Primitive.js +1 -1
  427. package/dist/unstable/cli/Prompt.js +35 -8
  428. package/dist/unstable/cli/Prompt.js.map +1 -1
  429. package/dist/unstable/cli/index.d.ts +8 -0
  430. package/dist/unstable/cli/index.d.ts.map +1 -1
  431. package/dist/unstable/cli/index.js +8 -0
  432. package/dist/unstable/cli/index.js.map +1 -1
  433. package/dist/unstable/cli/internal/command.d.ts +40 -14
  434. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  435. package/dist/unstable/cli/internal/command.js +72 -46
  436. package/dist/unstable/cli/internal/command.js.map +1 -1
  437. package/dist/unstable/cli/internal/completions/CommandDescriptor.js +7 -2
  438. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
  439. package/dist/unstable/cli/internal/config.js +42 -0
  440. package/dist/unstable/cli/internal/config.js.map +1 -1
  441. package/dist/unstable/cli/internal/help.d.ts +33 -0
  442. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  443. package/dist/unstable/cli/internal/help.js +125 -0
  444. package/dist/unstable/cli/internal/help.js.map +1 -0
  445. package/dist/unstable/cli/internal/parser.js +55 -42
  446. package/dist/unstable/cli/internal/parser.js.map +1 -1
  447. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  448. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  449. package/dist/unstable/cluster/ClusterCron.js +1 -1
  450. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  451. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  452. package/dist/unstable/cluster/ClusterWorkflowEngine.js +5 -4
  453. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  454. package/dist/unstable/cluster/DeliverAt.js +1 -1
  455. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  456. package/dist/unstable/cluster/Entity.d.ts +7 -6
  457. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  458. package/dist/unstable/cluster/Entity.js.map +1 -1
  459. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  460. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  461. package/dist/unstable/cluster/Envelope.d.ts +1 -1
  462. package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
  463. package/dist/unstable/cluster/K8sHttpClient.js +4 -4
  464. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  465. package/dist/unstable/cluster/Message.d.ts +10 -10
  466. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  467. package/dist/unstable/cluster/MessageStorage.js +2 -1
  468. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  469. package/dist/unstable/cluster/Reply.d.ts +6 -6
  470. package/dist/unstable/cluster/Runner.d.ts +1 -1
  471. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  472. package/dist/unstable/cluster/Runners.js +4 -3
  473. package/dist/unstable/cluster/Runners.js.map +1 -1
  474. package/dist/unstable/cluster/Sharding.d.ts +2 -2
  475. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  476. package/dist/unstable/cluster/Sharding.js +9 -7
  477. package/dist/unstable/cluster/Sharding.js.map +1 -1
  478. package/dist/unstable/cluster/ShardingConfig.d.ts +21 -21
  479. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  480. package/dist/unstable/cluster/ShardingConfig.js +20 -20
  481. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  482. package/dist/unstable/cluster/SqlRunnerStorage.js +1 -1
  483. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  484. package/dist/unstable/cluster/internal/entityManager.js +5 -4
  485. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  486. package/dist/unstable/cluster/internal/entityReaper.js +2 -1
  487. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  488. package/dist/unstable/cluster/internal/resourceRef.js +2 -1
  489. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  490. package/dist/unstable/devtools/DevToolsSchema.d.ts +36 -36
  491. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  492. package/dist/unstable/encoding/Ndjson.d.ts +9 -9
  493. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  494. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  495. package/dist/unstable/encoding/Sse.d.ts +4 -4
  496. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  497. package/dist/unstable/encoding/Sse.js +1 -1
  498. package/dist/unstable/encoding/Sse.js.map +1 -1
  499. package/dist/unstable/eventlog/EventJournal.d.ts +2 -2
  500. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  501. package/dist/unstable/eventlog/EventLog.js +2 -1
  502. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  503. package/dist/unstable/eventlog/EventLogRemote.d.ts +6 -6
  504. package/dist/unstable/http/Cookies.d.ts +47 -3
  505. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  506. package/dist/unstable/http/Cookies.js +24 -2
  507. package/dist/unstable/http/Cookies.js.map +1 -1
  508. package/dist/unstable/http/Headers.d.ts +16 -0
  509. package/dist/unstable/http/Headers.d.ts.map +1 -1
  510. package/dist/unstable/http/Headers.js +38 -10
  511. package/dist/unstable/http/Headers.js.map +1 -1
  512. package/dist/unstable/http/HttpBody.d.ts +3 -3
  513. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  514. package/dist/unstable/http/HttpBody.js +6 -6
  515. package/dist/unstable/http/HttpBody.js.map +1 -1
  516. package/dist/unstable/http/HttpClient.d.ts +117 -15
  517. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  518. package/dist/unstable/http/HttpClient.js +189 -12
  519. package/dist/unstable/http/HttpClient.js.map +1 -1
  520. package/dist/unstable/http/HttpClientError.d.ts +7 -7
  521. package/dist/unstable/http/HttpClientRequest.d.ts +16 -11
  522. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  523. package/dist/unstable/http/HttpClientRequest.js +31 -20
  524. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  525. package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
  526. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  527. package/dist/unstable/http/HttpClientResponse.js +4 -0
  528. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  529. package/dist/unstable/http/HttpEffect.d.ts +7 -5
  530. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  531. package/dist/unstable/http/HttpEffect.js +46 -54
  532. package/dist/unstable/http/HttpEffect.js.map +1 -1
  533. package/dist/unstable/http/HttpIncomingMessage.d.ts +1 -1
  534. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  535. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  536. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  537. package/dist/unstable/http/HttpMethod.js +3 -3
  538. package/dist/unstable/http/HttpMethod.js.map +1 -1
  539. package/dist/unstable/http/HttpMiddleware.d.ts +1 -6
  540. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  541. package/dist/unstable/http/HttpMiddleware.js +8 -17
  542. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  543. package/dist/unstable/http/HttpServerError.d.ts +20 -33
  544. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  545. package/dist/unstable/http/HttpServerError.js +37 -44
  546. package/dist/unstable/http/HttpServerError.js.map +1 -1
  547. package/dist/unstable/http/HttpServerRequest.d.ts +12 -1
  548. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  549. package/dist/unstable/http/HttpServerRequest.js +291 -1
  550. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  551. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  552. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  553. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  554. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  555. package/dist/unstable/http/HttpServerResponse.d.ts +50 -3
  556. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  557. package/dist/unstable/http/HttpServerResponse.js +234 -1
  558. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  559. package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
  560. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
  561. package/dist/unstable/http/HttpStaticServer.js +353 -0
  562. package/dist/unstable/http/HttpStaticServer.js.map +1 -0
  563. package/dist/unstable/http/Multipart.d.ts +3 -3
  564. package/dist/unstable/http/UrlParams.d.ts +14 -6
  565. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  566. package/dist/unstable/http/UrlParams.js +1 -1
  567. package/dist/unstable/http/UrlParams.js.map +1 -1
  568. package/dist/unstable/http/index.d.ts +4 -0
  569. package/dist/unstable/http/index.d.ts.map +1 -1
  570. package/dist/unstable/http/index.js +4 -0
  571. package/dist/unstable/http/index.js.map +1 -1
  572. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  573. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  574. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  575. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  576. package/dist/unstable/httpapi/HttpApi.d.ts +4 -4
  577. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  578. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  579. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +11 -5
  580. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  581. package/dist/unstable/httpapi/HttpApiBuilder.js +28 -18
  582. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  583. package/dist/unstable/httpapi/HttpApiClient.d.ts +66 -6
  584. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  585. package/dist/unstable/httpapi/HttpApiClient.js +40 -3
  586. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  587. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +41 -54
  588. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  589. package/dist/unstable/httpapi/HttpApiEndpoint.js +17 -26
  590. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  591. package/dist/unstable/httpapi/HttpApiError.d.ts +16 -14
  592. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  593. package/dist/unstable/httpapi/HttpApiError.js +44 -29
  594. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  595. package/dist/unstable/httpapi/HttpApiGroup.d.ts +4 -3
  596. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  597. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  598. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +4 -4
  599. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  600. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  601. package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
  602. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  603. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  604. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +2 -2
  605. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  606. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  607. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  608. package/dist/unstable/httpapi/OpenApi.js +32 -21
  609. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  610. package/dist/unstable/observability/Otlp.d.ts +12 -12
  611. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  612. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  613. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  614. package/dist/unstable/observability/OtlpExporter.js +1 -1
  615. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  616. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  617. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  618. package/dist/unstable/observability/OtlpLogger.js +7 -4
  619. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  620. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  621. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  622. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  623. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  624. package/dist/unstable/persistence/KeyValueStore.d.ts +1 -1
  625. package/dist/unstable/persistence/KeyValueStore.js +6 -6
  626. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  627. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  628. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  629. package/dist/unstable/persistence/Persistable.js +1 -1
  630. package/dist/unstable/persistence/Persistable.js.map +1 -1
  631. package/dist/unstable/persistence/PersistedCache.d.ts +6 -5
  632. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  633. package/dist/unstable/persistence/PersistedCache.js +2 -1
  634. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  635. package/dist/unstable/persistence/PersistedQueue.d.ts +12 -12
  636. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  637. package/dist/unstable/persistence/PersistedQueue.js +12 -11
  638. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  639. package/dist/unstable/persistence/Persistence.d.ts +1 -1
  640. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  641. package/dist/unstable/persistence/Persistence.js +2 -2
  642. package/dist/unstable/persistence/Persistence.js.map +1 -1
  643. package/dist/unstable/persistence/RateLimiter.d.ts +3 -3
  644. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  645. package/dist/unstable/persistence/RateLimiter.js +1 -1
  646. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  647. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  648. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  649. package/dist/unstable/process/ChildProcess.js +1 -65
  650. package/dist/unstable/process/ChildProcess.js.map +1 -1
  651. package/dist/unstable/process/ChildProcessSpawner.d.ts +45 -7
  652. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  653. package/dist/unstable/process/ChildProcessSpawner.js +21 -1
  654. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  655. package/dist/unstable/reactivity/Atom.d.ts +73 -12
  656. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  657. package/dist/unstable/reactivity/Atom.js +107 -20
  658. package/dist/unstable/reactivity/Atom.js.map +1 -1
  659. package/dist/unstable/reactivity/AtomHttpApi.d.ts +10 -12
  660. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  661. package/dist/unstable/reactivity/AtomHttpApi.js +42 -12
  662. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  663. package/dist/unstable/reactivity/AtomRegistry.d.ts +6 -0
  664. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  665. package/dist/unstable/reactivity/AtomRegistry.js +50 -9
  666. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  667. package/dist/unstable/reactivity/AtomRpc.d.ts +9 -9
  668. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  669. package/dist/unstable/reactivity/AtomRpc.js +47 -21
  670. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  671. package/dist/unstable/reactivity/Hydration.d.ts +39 -0
  672. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -0
  673. package/dist/unstable/reactivity/Hydration.js +76 -0
  674. package/dist/unstable/reactivity/Hydration.js.map +1 -0
  675. package/dist/unstable/reactivity/index.d.ts +4 -0
  676. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  677. package/dist/unstable/reactivity/index.js +4 -0
  678. package/dist/unstable/reactivity/index.js.map +1 -1
  679. package/dist/unstable/rpc/Rpc.d.ts +5 -5
  680. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  681. package/dist/unstable/rpc/Rpc.js.map +1 -1
  682. package/dist/unstable/rpc/RpcClient.d.ts +5 -26
  683. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  684. package/dist/unstable/rpc/RpcClient.js +6 -13
  685. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  686. package/dist/unstable/rpc/RpcGroup.d.ts +3 -5
  687. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  688. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  689. package/dist/unstable/rpc/RpcMiddleware.d.ts +8 -8
  690. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  691. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  692. package/dist/unstable/rpc/RpcSchema.d.ts +13 -0
  693. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  694. package/dist/unstable/rpc/RpcSchema.js +14 -0
  695. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  696. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  697. package/dist/unstable/rpc/RpcSerialization.js +34 -9
  698. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  699. package/dist/unstable/rpc/RpcServer.d.ts +5 -9
  700. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  701. package/dist/unstable/rpc/RpcServer.js +17 -17
  702. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  703. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  704. package/dist/unstable/rpc/Utils.js +3 -2
  705. package/dist/unstable/rpc/Utils.js.map +1 -1
  706. package/dist/unstable/schema/Model.d.ts +22 -1
  707. package/dist/unstable/schema/Model.d.ts.map +1 -1
  708. package/dist/unstable/schema/Model.js +15 -0
  709. package/dist/unstable/schema/Model.js.map +1 -1
  710. package/dist/unstable/schema/VariantSchema.d.ts +5 -5
  711. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  712. package/dist/unstable/schema/VariantSchema.js +6 -6
  713. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  714. package/dist/unstable/socket/Socket.d.ts +4 -4
  715. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  716. package/dist/unstable/socket/Socket.js +6 -5
  717. package/dist/unstable/socket/Socket.js.map +1 -1
  718. package/dist/unstable/socket/SocketServer.d.ts +3 -3
  719. package/dist/unstable/sql/Migrator.d.ts +1 -1
  720. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  721. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  722. package/dist/unstable/sql/SqlError.d.ts +14 -14
  723. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  724. package/dist/unstable/sql/SqlError.js +9 -3
  725. package/dist/unstable/sql/SqlError.js.map +1 -1
  726. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  727. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  728. package/dist/unstable/sql/SqlModel.js +3 -3
  729. package/dist/unstable/sql/SqlModel.js.map +1 -1
  730. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  731. package/dist/unstable/sql/SqlResolver.js +17 -8
  732. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  733. package/dist/unstable/sql/SqlSchema.d.ts +17 -6
  734. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  735. package/dist/unstable/sql/SqlSchema.js +17 -7
  736. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  737. package/dist/unstable/sql/Statement.js +0 -1
  738. package/dist/unstable/sql/Statement.js.map +1 -1
  739. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  740. package/dist/unstable/workers/Worker.js +2 -1
  741. package/dist/unstable/workers/Worker.js.map +1 -1
  742. package/dist/unstable/workflow/DurableClock.d.ts +3 -3
  743. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  744. package/dist/unstable/workflow/DurableClock.js +3 -3
  745. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  746. package/dist/unstable/workflow/DurableDeferred.js +2 -2
  747. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  748. package/dist/unstable/workflow/Workflow.d.ts +3 -3
  749. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  750. package/dist/unstable/workflow/Workflow.js +1 -1
  751. package/dist/unstable/workflow/Workflow.js.map +1 -1
  752. package/dist/unstable/workflow/WorkflowEngine.d.ts +12 -1
  753. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  754. package/dist/unstable/workflow/WorkflowEngine.js +137 -1
  755. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  756. package/package.json +2 -2
  757. package/src/Array.ts +192 -342
  758. package/src/Brand.ts +1 -1
  759. package/src/Cache.ts +9 -8
  760. package/src/Cause.ts +2 -2
  761. package/src/Channel.ts +557 -141
  762. package/src/Chunk.ts +81 -268
  763. package/src/Combiner.ts +280 -13
  764. package/src/Config.ts +186 -24
  765. package/src/Cron.ts +3 -3
  766. package/src/Data.ts +539 -376
  767. package/src/DateTime.ts +59 -241
  768. package/src/Duration.ts +91 -36
  769. package/src/Effect.ts +1477 -1126
  770. package/src/Encoding.ts +879 -0
  771. package/src/Equal.ts +278 -111
  772. package/src/ErrorReporter.ts +457 -0
  773. package/src/Exit.ts +24 -12
  774. package/src/Fiber.ts +10 -2
  775. package/src/FileSystem.ts +7 -8
  776. package/src/Filter.ts +52 -63
  777. package/src/Formatter.ts +253 -51
  778. package/src/Function.ts +2 -10
  779. package/src/Graph.ts +24 -11
  780. package/src/HashMap.ts +15 -14
  781. package/src/Iterable.ts +104 -50
  782. package/src/JsonSchema.ts +383 -10
  783. package/src/Latch.ts +112 -0
  784. package/src/Layer.ts +245 -150
  785. package/src/LayerMap.ts +9 -9
  786. package/src/LogLevel.ts +37 -0
  787. package/src/Logger.ts +33 -100
  788. package/src/ManagedRuntime.ts +2 -2
  789. package/src/Metric.ts +6 -8
  790. package/src/Newtype.ts +308 -0
  791. package/src/Optic.ts +948 -19
  792. package/src/Option.ts +32 -24
  793. package/src/Pipeable.ts +32 -1
  794. package/src/PlatformError.ts +5 -5
  795. package/src/Pool.ts +13 -11
  796. package/src/PubSub.ts +10 -9
  797. package/src/Pull.ts +1 -1
  798. package/src/Queue.ts +0 -1
  799. package/src/Random.ts +51 -14
  800. package/src/RcMap.ts +5 -5
  801. package/src/RcRef.ts +1 -1
  802. package/src/Record.ts +42 -152
  803. package/src/Reducer.ts +166 -7
  804. package/src/References.ts +10 -5
  805. package/src/Request.ts +3 -2
  806. package/src/RequestResolver.ts +29 -49
  807. package/src/Result.ts +2 -4
  808. package/src/Runtime.ts +102 -6
  809. package/src/Schedule.ts +462 -242
  810. package/src/Scheduler.ts +12 -0
  811. package/src/Schema.ts +3116 -312
  812. package/src/SchemaAST.ts +166 -33
  813. package/src/SchemaGetter.ts +15 -17
  814. package/src/SchemaParser.ts +11 -0
  815. package/src/SchemaRepresentation.ts +51 -26
  816. package/src/SchemaTransformation.ts +189 -4
  817. package/src/ScopedCache.ts +3 -3
  818. package/src/Semaphore.ts +356 -0
  819. package/src/ServiceMap.ts +50 -40
  820. package/src/Sink.ts +78 -26
  821. package/src/Stdio.ts +27 -4
  822. package/src/Stream.ts +586 -608
  823. package/src/Struct.ts +26 -0
  824. package/src/SubscriptionRef.ts +3 -2
  825. package/src/SynchronizedRef.ts +3 -2
  826. package/src/Trie.ts +18 -17
  827. package/src/TxChunk.ts +72 -53
  828. package/src/TxDeferred.ts +394 -0
  829. package/src/TxHashMap.ts +332 -285
  830. package/src/TxHashSet.ts +111 -116
  831. package/src/TxPriorityQueue.ts +767 -0
  832. package/src/TxPubSub.ts +789 -0
  833. package/src/TxQueue.ts +241 -251
  834. package/src/TxReentrantLock.ts +753 -0
  835. package/src/TxRef.ts +50 -38
  836. package/src/TxSemaphore.ts +29 -32
  837. package/src/TxSubscriptionRef.ts +639 -0
  838. package/src/Types.ts +73 -19
  839. package/src/Utils.ts +137 -111
  840. package/src/index.ts +728 -24
  841. package/src/internal/core.ts +12 -5
  842. package/src/internal/dateTime.ts +69 -81
  843. package/src/internal/effect.ts +775 -302
  844. package/src/internal/hashMap.ts +8 -7
  845. package/src/internal/random.ts +20 -0
  846. package/src/internal/rcRef.ts +4 -3
  847. package/src/internal/request.ts +2 -2
  848. package/src/internal/schema/annotations.ts +2 -0
  849. package/src/internal/schema/representation.ts +45 -94
  850. package/src/internal/schema/schema.ts +1 -0
  851. package/src/internal/schema/to-codec.ts +7 -17
  852. package/src/internal/trie.ts +15 -9
  853. package/src/testing/TestClock.ts +13 -11
  854. package/src/testing/TestSchema.ts +332 -35
  855. package/src/testing/index.ts +64 -1
  856. package/src/unstable/ai/AiError.ts +105 -48
  857. package/src/unstable/ai/Chat.ts +58 -74
  858. package/src/unstable/ai/LanguageModel.ts +294 -158
  859. package/src/unstable/ai/McpSchema.ts +73 -13
  860. package/src/unstable/ai/McpServer.ts +271 -61
  861. package/src/unstable/ai/Model.ts +40 -9
  862. package/src/unstable/ai/Prompt.ts +37 -37
  863. package/src/unstable/ai/Response.ts +25 -25
  864. package/src/unstable/ai/Tool.ts +20 -14
  865. package/src/unstable/ai/Toolkit.ts +5 -14
  866. package/src/unstable/ai/index.ts +1 -1
  867. package/src/unstable/ai/internal/codec-transformer.ts +0 -7
  868. package/src/unstable/cli/CliError.ts +47 -59
  869. package/src/unstable/cli/CliOutput.ts +75 -6
  870. package/src/unstable/cli/Command.ts +796 -187
  871. package/src/unstable/cli/Completions.ts +36 -0
  872. package/src/unstable/cli/GlobalFlag.ts +242 -0
  873. package/src/unstable/cli/HelpDoc.ts +80 -2
  874. package/src/unstable/cli/Primitive.ts +1 -1
  875. package/src/unstable/cli/Prompt.ts +31 -9
  876. package/src/unstable/cli/index.ts +10 -0
  877. package/src/unstable/cli/internal/command.ts +109 -63
  878. package/src/unstable/cli/internal/completions/CommandDescriptor.ts +7 -2
  879. package/src/unstable/cli/internal/config.ts +49 -0
  880. package/src/unstable/cli/internal/help.ts +171 -0
  881. package/src/unstable/cli/internal/parser.ts +66 -61
  882. package/src/unstable/cluster/ClusterCron.ts +2 -2
  883. package/src/unstable/cluster/ClusterWorkflowEngine.ts +6 -5
  884. package/src/unstable/cluster/DeliverAt.ts +1 -1
  885. package/src/unstable/cluster/Entity.ts +11 -10
  886. package/src/unstable/cluster/EntityResource.ts +4 -4
  887. package/src/unstable/cluster/Envelope.ts +1 -1
  888. package/src/unstable/cluster/K8sHttpClient.ts +5 -5
  889. package/src/unstable/cluster/MessageStorage.ts +3 -5
  890. package/src/unstable/cluster/Runners.ts +6 -5
  891. package/src/unstable/cluster/Sharding.ts +12 -10
  892. package/src/unstable/cluster/ShardingConfig.ts +30 -31
  893. package/src/unstable/cluster/SqlRunnerStorage.ts +1 -1
  894. package/src/unstable/cluster/internal/entityManager.ts +9 -8
  895. package/src/unstable/cluster/internal/entityReaper.ts +2 -1
  896. package/src/unstable/cluster/internal/resourceRef.ts +2 -1
  897. package/src/unstable/encoding/Ndjson.ts +17 -17
  898. package/src/unstable/encoding/Sse.ts +3 -5
  899. package/src/unstable/eventlog/EventLog.ts +2 -1
  900. package/src/unstable/http/Cookies.ts +87 -3
  901. package/src/unstable/http/Headers.ts +62 -13
  902. package/src/unstable/http/HttpBody.ts +6 -6
  903. package/src/unstable/http/HttpClient.ts +374 -33
  904. package/src/unstable/http/HttpClientRequest.ts +38 -30
  905. package/src/unstable/http/HttpClientResponse.ts +9 -4
  906. package/src/unstable/http/HttpEffect.ts +54 -68
  907. package/src/unstable/http/HttpIncomingMessage.ts +1 -1
  908. package/src/unstable/http/HttpMethod.ts +16 -4
  909. package/src/unstable/http/HttpMiddleware.ts +9 -24
  910. package/src/unstable/http/HttpServerError.ts +42 -45
  911. package/src/unstable/http/HttpServerRequest.ts +391 -4
  912. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  913. package/src/unstable/http/HttpServerResponse.ts +337 -4
  914. package/src/unstable/http/HttpStaticServer.ts +456 -0
  915. package/src/unstable/http/Multipart.ts +2 -2
  916. package/src/unstable/http/UrlParams.ts +20 -5
  917. package/src/unstable/http/index.ts +5 -0
  918. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  919. package/src/unstable/httpapi/HttpApi.ts +6 -6
  920. package/src/unstable/httpapi/HttpApiBuilder.ts +83 -30
  921. package/src/unstable/httpapi/HttpApiClient.ts +100 -11
  922. package/src/unstable/httpapi/HttpApiEndpoint.ts +71 -87
  923. package/src/unstable/httpapi/HttpApiError.ts +51 -28
  924. package/src/unstable/httpapi/HttpApiGroup.ts +7 -6
  925. package/src/unstable/httpapi/HttpApiMiddleware.ts +4 -4
  926. package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
  927. package/src/unstable/httpapi/HttpApiSecurity.ts +3 -3
  928. package/src/unstable/httpapi/OpenApi.ts +41 -23
  929. package/src/unstable/observability/Otlp.ts +12 -12
  930. package/src/unstable/observability/OtlpExporter.ts +3 -3
  931. package/src/unstable/observability/OtlpLogger.ts +13 -9
  932. package/src/unstable/observability/OtlpMetrics.ts +4 -4
  933. package/src/unstable/observability/OtlpTracer.ts +4 -4
  934. package/src/unstable/persistence/KeyValueStore.ts +6 -6
  935. package/src/unstable/persistence/Persistable.ts +3 -3
  936. package/src/unstable/persistence/PersistedCache.ts +20 -9
  937. package/src/unstable/persistence/PersistedQueue.ts +25 -24
  938. package/src/unstable/persistence/Persistence.ts +3 -3
  939. package/src/unstable/persistence/RateLimiter.ts +4 -4
  940. package/src/unstable/process/ChildProcess.ts +6 -208
  941. package/src/unstable/process/ChildProcessSpawner.ts +75 -14
  942. package/src/unstable/reactivity/Atom.ts +211 -50
  943. package/src/unstable/reactivity/AtomHttpApi.ts +66 -31
  944. package/src/unstable/reactivity/AtomRegistry.ts +61 -9
  945. package/src/unstable/reactivity/AtomRpc.ts +51 -20
  946. package/src/unstable/reactivity/Hydration.ts +112 -0
  947. package/src/unstable/reactivity/index.ts +5 -0
  948. package/src/unstable/rpc/Rpc.ts +7 -9
  949. package/src/unstable/rpc/RpcClient.ts +12 -54
  950. package/src/unstable/rpc/RpcGroup.ts +7 -7
  951. package/src/unstable/rpc/RpcMiddleware.ts +15 -9
  952. package/src/unstable/rpc/RpcSchema.ts +17 -0
  953. package/src/unstable/rpc/RpcSerialization.ts +44 -9
  954. package/src/unstable/rpc/RpcServer.ts +28 -32
  955. package/src/unstable/rpc/Utils.ts +3 -2
  956. package/src/unstable/schema/Model.ts +31 -0
  957. package/src/unstable/schema/VariantSchema.ts +9 -9
  958. package/src/unstable/socket/Socket.ts +16 -17
  959. package/src/unstable/sql/SqlClient.ts +1 -1
  960. package/src/unstable/sql/SqlError.ts +11 -9
  961. package/src/unstable/sql/SqlModel.ts +5 -5
  962. package/src/unstable/sql/SqlResolver.ts +17 -7
  963. package/src/unstable/sql/SqlSchema.ts +42 -26
  964. package/src/unstable/sql/Statement.ts +0 -1
  965. package/src/unstable/workers/Worker.ts +2 -1
  966. package/src/unstable/workflow/DurableClock.ts +8 -8
  967. package/src/unstable/workflow/DurableDeferred.ts +2 -2
  968. package/src/unstable/workflow/Workflow.ts +6 -2
  969. package/src/unstable/workflow/WorkflowEngine.ts +185 -2
  970. package/dist/PartitionedSemaphore.d.ts +0 -52
  971. package/dist/PartitionedSemaphore.d.ts.map +0 -1
  972. package/dist/PartitionedSemaphore.js.map +0 -1
  973. package/dist/encoding/Base64.d.ts +0 -67
  974. package/dist/encoding/Base64.d.ts.map +0 -1
  975. package/dist/encoding/Base64.js +0 -146
  976. package/dist/encoding/Base64.js.map +0 -1
  977. package/dist/encoding/Base64Url.d.ts +0 -60
  978. package/dist/encoding/Base64Url.d.ts.map +0 -1
  979. package/dist/encoding/Base64Url.js +0 -89
  980. package/dist/encoding/Base64Url.js.map +0 -1
  981. package/dist/encoding/EncodingError.d.ts +0 -31
  982. package/dist/encoding/EncodingError.d.ts.map +0 -1
  983. package/dist/encoding/EncodingError.js +0 -22
  984. package/dist/encoding/EncodingError.js.map +0 -1
  985. package/dist/encoding/Hex.d.ts +0 -61
  986. package/dist/encoding/Hex.d.ts.map +0 -1
  987. package/dist/encoding/Hex.js +0 -115
  988. package/dist/encoding/Hex.js.map +0 -1
  989. package/dist/encoding/index.d.ts +0 -26
  990. package/dist/encoding/index.d.ts.map +0 -1
  991. package/dist/encoding/index.js +0 -27
  992. package/dist/encoding/index.js.map +0 -1
  993. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  994. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  995. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  996. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  997. package/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
  998. package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
  999. package/dist/unstable/cli/internal/completions/Completions.js +0 -23
  1000. package/dist/unstable/cli/internal/completions/Completions.js.map +0 -1
  1001. package/src/PartitionedSemaphore.ts +0 -182
  1002. package/src/encoding/Base64.ts +0 -366
  1003. package/src/encoding/Base64Url.ts +0 -104
  1004. package/src/encoding/EncodingError.ts +0 -35
  1005. package/src/encoding/Hex.ts +0 -390
  1006. package/src/encoding/index.ts +0 -31
  1007. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
  1008. package/src/unstable/cli/internal/completions/Completions.ts +0 -31
@@ -1,5 +1,68 @@
1
1
  /**
2
- * Testing utilities for Schema validation and assertions.
2
+ * Testing utilities for asserting Schema decoding, encoding, make, and
3
+ * arbitrary-generation behavior. Used in unit tests to verify that schemas
4
+ * accept, reject, and round-trip values correctly.
5
+ *
6
+ * ## Mental model
7
+ *
8
+ * - **Asserts** – entry point: wraps a schema and exposes helpers grouped by
9
+ * operation (decoding, encoding, make, arbitrary, round-trip).
10
+ * - **Decoding** – returned by `asserts.decoding()`; has `succeed` / `fail`
11
+ * helpers that run the schema's decoder and compare the result.
12
+ * - **Encoding** – returned by `asserts.encoding()`; mirrors {@link Decoding}
13
+ * but exercises the encoder direction.
14
+ * - Every assertion is async (`Promise<void>`) because parsing may involve
15
+ * effectful schemas.
16
+ * - `succeed` with one argument asserts identity (output equals input);
17
+ * with two arguments asserts a specific expected output.
18
+ * - `fail` always takes the input and the expected error message string.
19
+ *
20
+ * ## Common tasks
21
+ *
22
+ * - Assert decoding succeeds / fails → `new Asserts(schema).decoding().succeed(…)` / `.fail(…)`
23
+ * - Assert encoding succeeds / fails → `new Asserts(schema).encoding().succeed(…)` / `.fail(…)`
24
+ * - Assert make succeeds / fails → `new Asserts(schema).make().succeed(…)` / `.fail(…)`
25
+ * - Verify round-trip (encode then decode) → `new Asserts(schema).verifyLosslessTransformation()`
26
+ * - Verify arbitrary generation → `new Asserts(schema).arbitrary().verifyGeneration()`
27
+ * - Compare AST of struct fields → `Asserts.ast.fields.equals(a, b)`
28
+ * - Provide a service dependency for decoding → `asserts.decoding().provide(key, impl)`
29
+ *
30
+ * ## Gotchas
31
+ *
32
+ * - `succeed` uses `assert.deepStrictEqual`, so reference equality is not
33
+ * required but structural equality is.
34
+ * - `fail` compares against the stringified `Issue`, not the `Issue` object
35
+ * itself. Pass the exact multiline string the issue produces.
36
+ * - `verifyLosslessTransformation` and `arbitrary().verifyGeneration` run
37
+ * property-based tests via FastCheck; default run count is 20 for
38
+ * `verifyGeneration`.
39
+ *
40
+ * ## Quickstart
41
+ *
42
+ * **Example** (Basic decoding and encoding assertions)
43
+ *
44
+ * ```ts
45
+ * import { Schema } from "effect"
46
+ * import { TestSchema } from "effect/testing"
47
+ *
48
+ * const schema = Schema.NumberFromString
49
+ * const asserts = new TestSchema.Asserts(schema)
50
+ *
51
+ * // decoding
52
+ * const decoding = asserts.decoding()
53
+ * await decoding.succeed("1", 1)
54
+ * await decoding.fail(null, "Expected string, got null")
55
+ *
56
+ * // encoding
57
+ * const encoding = asserts.encoding()
58
+ * await encoding.succeed(1, "1")
59
+ * ```
60
+ *
61
+ * ## See also
62
+ *
63
+ * - {@link Asserts}
64
+ * - {@link Decoding}
65
+ * - {@link Encoding}
3
66
  *
4
67
  * @since 4.0.0
5
68
  */
@@ -12,20 +75,63 @@ import * as AST from "../SchemaAST.js";
12
75
  import * as Parser from "../SchemaParser.js";
13
76
  import * as FastCheck from "../testing/FastCheck.js";
14
77
  /**
15
- * The `Asserts` class provides a comprehensive testing framework for schema validation,
16
- * encoding/decoding operations, and property-based testing.
78
+ * Entry point for schema test assertions. Wraps a schema and exposes
79
+ * operation-specific helpers: {@link Decoding}, {@link Encoding}, make,
80
+ * arbitrary generation, and round-trip verification.
81
+ *
82
+ * When to use:
83
+ * - You are writing unit tests for a schema's decoding, encoding, or
84
+ * construction behavior.
85
+ * - You want property-based round-trip or generation checks.
86
+ *
87
+ * **Example** (Decoding and encoding a struct)
88
+ *
89
+ * ```ts
90
+ * import { Schema } from "effect"
91
+ * import { TestSchema } from "effect/testing"
92
+ *
93
+ * const schema = Schema.Struct({ name: Schema.String })
94
+ * const asserts = new TestSchema.Asserts(schema)
95
+ *
96
+ * // decoding
97
+ * await asserts.decoding().succeed({ name: "Alice" })
98
+ *
99
+ * // encoding
100
+ * await asserts.encoding().succeed({ name: "Alice" })
101
+ * ```
102
+ *
103
+ * @see {@link Decoding}
104
+ * @see {@link Encoding}
17
105
  *
18
106
  * @since 4.0.0
19
107
  */
20
108
  export class Asserts {
109
+ /**
110
+ * Static helpers for comparing schema AST structures. Useful when you need
111
+ * to assert that two field or element definitions produce the same AST.
112
+ *
113
+ * - `ast.fields.equals(a, b)` – compares struct field ASTs via
114
+ * `assert.deepStrictEqual`.
115
+ * - `ast.elements.equals(a, b)` – compares tuple element ASTs via
116
+ * `assert.deepStrictEqual`.
117
+ *
118
+ * **Example** (Comparing struct fields)
119
+ *
120
+ * ```ts
121
+ * import { Schema } from "effect"
122
+ * import { TestSchema } from "effect/testing"
123
+ *
124
+ * const fieldsA = { name: Schema.String }
125
+ * const fieldsB = { name: Schema.String }
126
+ * TestSchema.Asserts.ast.fields.equals(fieldsA, fieldsB) // no error
127
+ * ```
128
+ */
21
129
  static ast = {
22
- /** Asserts that two struct field definitions are equal by comparing their AST representations. */
23
130
  fields: {
24
131
  equals: (a, b) => {
25
132
  assert.deepStrictEqual(Record.map(a, AST.getAST), Record.map(b, AST.getAST));
26
133
  }
27
134
  },
28
- /** Asserts that two tuple element definitions are equal by comparing their AST representations. */
29
135
  elements: {
30
136
  equals: (a, b) => {
31
137
  assert.deepStrictEqual(a.map(AST.getAST), b.map(AST.getAST));
@@ -37,7 +143,23 @@ export class Asserts {
37
143
  this.schema = schema;
38
144
  }
39
145
  /**
40
- * Provides make operation testing utilities.
146
+ * Returns an object with `succeed` and `fail` helpers for testing the
147
+ * schema's `make` operation.
148
+ *
149
+ * - `succeed(input)` – asserts make returns the input unchanged.
150
+ * - `succeed(input, expected)` – asserts make returns `expected`.
151
+ * - `fail(input, message)` – asserts make fails with `message`.
152
+ *
153
+ * **Example** (Testing make)
154
+ *
155
+ * ```ts
156
+ * import { Schema } from "effect"
157
+ * import { TestSchema } from "effect/testing"
158
+ *
159
+ * const schema = Schema.String
160
+ * const asserts = new TestSchema.Asserts(schema)
161
+ * await asserts.make().succeed("hello")
162
+ * ```
41
163
  */
42
164
  make(options) {
43
165
  const makeEffect = Parser.makeEffect(this.schema);
@@ -48,9 +170,6 @@ export class Asserts {
48
170
  }
49
171
  return {
50
172
  succeed,
51
- /**
52
- * Asserts that make operation fails with the expected error message.
53
- */
54
173
  async fail(input, message) {
55
174
  const r = await Effect.runPromise(makeEffect(input, options).pipe(Effect.mapError(issue => issue.toString()), Effect.result));
56
175
  assert.deepStrictEqual(r, Result.fail(message));
@@ -58,7 +177,23 @@ export class Asserts {
58
177
  };
59
178
  }
60
179
  /**
61
- * Verifies that encoding values produces the same type after decoding (round-trip).
180
+ * Runs a property-based test that encodes arbitrary values and then decodes
181
+ * them, asserting the decoded value equals the original. Useful for verifying
182
+ * that a codec is lossless (encode followed by decode is identity).
183
+ *
184
+ * - Uses FastCheck to generate arbitrary values matching the schema's Type.
185
+ * - Fails the test if any generated value does not round-trip.
186
+ * - Pass `options.params` to control FastCheck parameters (e.g. `numRuns`).
187
+ *
188
+ * **Example** (Round-trip verification)
189
+ *
190
+ * ```ts
191
+ * import { Schema } from "effect"
192
+ * import { TestSchema } from "effect/testing"
193
+ *
194
+ * const asserts = new TestSchema.Asserts(Schema.NumberFromString)
195
+ * await asserts.verifyLosslessTransformation()
196
+ * ```
62
197
  */
63
198
  verifyLosslessTransformation(options) {
64
199
  const decodeUnknownEffect = Parser.decodeUnknownEffect(this.schema);
@@ -70,27 +205,71 @@ export class Asserts {
70
205
  }), options?.params);
71
206
  }
72
207
  /**
73
- * Provides decoding testing utilities.
208
+ * Returns a {@link Decoding} instance for this schema, providing `succeed`
209
+ * and `fail` helpers to test decoding behavior.
210
+ *
211
+ * - Pass `parseOptions` to control error reporting (e.g. `{ errors: "all" }`).
212
+ *
213
+ * **Example** (Decoding assertions)
214
+ *
215
+ * ```ts
216
+ * import { Schema } from "effect"
217
+ * import { TestSchema } from "effect/testing"
218
+ *
219
+ * const asserts = new TestSchema.Asserts(Schema.NumberFromString)
220
+ * const decoding = asserts.decoding()
221
+ * await decoding.succeed("42", 42)
222
+ * await decoding.fail(null, "Expected string, got null")
223
+ * ```
224
+ *
225
+ * @see {@link Decoding}
74
226
  */
75
227
  decoding(options) {
76
228
  return new Decoding(this.schema, options);
77
229
  }
78
230
  /**
79
- * Provides encoding testing utilities.
231
+ * Returns an {@link Encoding} instance for this schema, providing `succeed`
232
+ * and `fail` helpers to test encoding behavior.
233
+ *
234
+ * - Pass `parseOptions` to control error reporting (e.g. `{ errors: "all" }`).
235
+ *
236
+ * **Example** (Encoding assertions)
237
+ *
238
+ * ```ts
239
+ * import { Schema } from "effect"
240
+ * import { TestSchema } from "effect/testing"
241
+ *
242
+ * const asserts = new TestSchema.Asserts(Schema.NumberFromString)
243
+ * const encoding = asserts.encoding()
244
+ * await encoding.succeed(42, "42")
245
+ * ```
246
+ *
247
+ * @see {@link Encoding}
80
248
  */
81
249
  encoding(options) {
82
250
  return new Encoding(this.schema, options);
83
251
  }
84
252
  /**
85
- * Provides property-based testing utilities for schema validation.
253
+ * Returns an object with property-based testing helpers for the schema's
254
+ * arbitrary generator.
255
+ *
256
+ * - `verifyGeneration()` – generates arbitrary values and asserts each
257
+ * satisfies the schema's `is` predicate. Defaults to 20 runs.
258
+ * - Pass `options.params` to override FastCheck parameters.
259
+ *
260
+ * **Example** (Verifying arbitrary generation)
261
+ *
262
+ * ```ts
263
+ * import { Schema } from "effect"
264
+ * import { TestSchema } from "effect/testing"
265
+ *
266
+ * const asserts = new TestSchema.Asserts(Schema.String)
267
+ * asserts.arbitrary().verifyGeneration()
268
+ * ```
86
269
  */
87
270
  arbitrary() {
88
271
  const schema = this.schema;
89
272
  return {
90
- /**
91
- * Verifies that the schema generates valid arbitrary values that satisfy
92
- * the schema constraints.
93
- */
94
273
  verifyGeneration(options) {
95
274
  const params = options?.params;
96
275
  const is = Schema.is(schema);
@@ -104,6 +283,37 @@ export class Asserts {
104
283
  }
105
284
  }
106
285
  /**
286
+ * Decoding test helper. Wraps a schema and exposes `succeed` and `fail`
287
+ * methods that run the schema's decoder and compare the result.
288
+ *
289
+ * When to use:
290
+ * - You want to assert that specific inputs decode to expected values.
291
+ * - You want to assert that invalid inputs produce specific error messages.
292
+ * - You need to provide services required by the schema's decoding pipeline.
293
+ *
294
+ * Behavior:
295
+ * - All assertions are async and use `assert.deepStrictEqual` internally.
296
+ * - `succeed(input)` asserts the decoded output equals `input` (identity).
297
+ * - `succeed(input, expected)` asserts the decoded output equals `expected`.
298
+ * - `fail(input, message)` asserts decoding fails and the stringified issue
299
+ * equals `message`.
300
+ * - `provide(key, impl)` returns a new `Decoding` with the service injected
301
+ * into the decoding context.
302
+ *
303
+ * **Example** (Decoding with service provision)
304
+ *
305
+ * ```ts
306
+ * import { Schema } from "effect"
307
+ * import { TestSchema } from "effect/testing"
308
+ *
309
+ * const asserts = new TestSchema.Asserts(Schema.String)
310
+ * const decoding = asserts.decoding()
311
+ * await decoding.succeed("hello")
312
+ * ```
313
+ *
314
+ * @see {@link Asserts}
315
+ * @see {@link Encoding}
316
+ *
107
317
  * @since 4.0.0
108
318
  */
109
319
  export class Decoding {
@@ -121,21 +331,68 @@ export class Decoding {
121
331
  assert.deepStrictEqual(r, Result.succeed(expected));
122
332
  }
123
333
  /**
124
- * Asserts that decoding fails with the expected error message.
334
+ * Asserts that decoding `input` fails and the stringified issue equals
335
+ * `message`.
336
+ *
337
+ * **Example** (Asserting a decoding failure)
338
+ *
339
+ * ```ts
340
+ * import { Schema } from "effect"
341
+ * import { TestSchema } from "effect/testing"
342
+ *
343
+ * const decoding = new TestSchema.Asserts(Schema.String).decoding()
344
+ * await decoding.fail(42, "Expected string, got 42")
345
+ * ```
125
346
  */
126
347
  async fail(input, message) {
127
348
  const r = await Effect.runPromise(this.decodeUnknownEffect(input, this.options?.parseOptions).pipe(Effect.mapError(issue => issue.toString()), Effect.result));
128
349
  assert.deepStrictEqual(r, Result.fail(message));
129
350
  }
130
351
  /**
131
- * Creates a new Decoding instance with the provided service available in the
132
- * decoding context.
352
+ * Returns a new {@link Decoding} instance with the given service injected
353
+ * into the decoding effect context. Use this when the schema's decoder
354
+ * requires a service dependency.
355
+ *
356
+ * - Does not mutate the current instance; returns a new one.
357
+ *
358
+ * @see {@link Encoding.provide}
133
359
  */
134
360
  provide(service, implementation) {
135
361
  return new Decoding(this.schema.pipe(Schema.middlewareDecoding(Effect.provideService(service, implementation))), this.options);
136
362
  }
137
363
  }
138
364
  /**
365
+ * Encoding test helper. Mirrors {@link Decoding} but exercises the schema's
366
+ * encoder direction.
367
+ *
368
+ * When to use:
369
+ * - You want to assert that specific values encode to expected outputs.
370
+ * - You want to assert that invalid inputs produce specific error messages
371
+ * during encoding.
372
+ * - You need to provide services required by the schema's encoding pipeline.
373
+ *
374
+ * Behavior:
375
+ * - All assertions are async and use `assert.deepStrictEqual` internally.
376
+ * - `succeed(input)` asserts the encoded output equals `input` (identity).
377
+ * - `succeed(input, expected)` asserts the encoded output equals `expected`.
378
+ * - `fail(input, message)` asserts encoding fails and the stringified issue
379
+ * equals `message`.
380
+ * - `provide(key, impl)` returns a new `Encoding` with the service injected
381
+ * into the encoding context.
382
+ *
383
+ * **Example** (Encoding assertions)
384
+ *
385
+ * ```ts
386
+ * import { Schema } from "effect"
387
+ * import { TestSchema } from "effect/testing"
388
+ *
389
+ * const encoding = new TestSchema.Asserts(Schema.NumberFromString).encoding()
390
+ * await encoding.succeed(42, "42")
391
+ * ```
392
+ *
393
+ * @see {@link Asserts}
394
+ * @see {@link Decoding}
395
+ *
139
396
  * @since 4.0.0
140
397
  */
141
398
  class Encoding {
@@ -153,15 +410,31 @@ class Encoding {
153
410
  assert.deepStrictEqual(r, Result.succeed(expected));
154
411
  }
155
412
  /**
156
- * Asserts that encoding fails with the expected error message.
413
+ * Asserts that encoding `input` fails and the stringified issue equals
414
+ * `message`.
415
+ *
416
+ * **Example** (Asserting an encoding failure)
417
+ *
418
+ * ```ts
419
+ * import { Schema } from "effect"
420
+ * import { TestSchema } from "effect/testing"
421
+ *
422
+ * const encoding = new TestSchema.Asserts(Schema.NumberFromString).encoding()
423
+ * await encoding.fail("not-a-number", "Expected number, got \"not-a-number\"")
424
+ * ```
157
425
  */
158
426
  async fail(input, message) {
159
427
  const r = await Effect.runPromise(this.encodeUnknownEffect(input, this.options?.parseOptions).pipe(Effect.mapError(issue => issue.toString()), Effect.result));
160
428
  assert.deepStrictEqual(r, Result.fail(message));
161
429
  }
162
430
  /**
163
- * Creates a new Encoding instance with the provided service available in the
164
- * encoding context.
431
+ * Returns a new {@link Encoding} instance with the given service injected
432
+ * into the encoding effect context. Use this when the schema's encoder
433
+ * requires a service dependency.
434
+ *
435
+ * - Does not mutate the current instance; returns a new one.
436
+ *
437
+ * @see {@link Decoding.provide}
165
438
  */
166
439
  provide(service, implementation) {
167
440
  return new Encoding(this.schema.pipe(Schema.middlewareEncoding(Effect.provideService(service, implementation))), this.options);
@@ -1 +1 @@
1
- {"version":3,"file":"TestSchema.js","names":["assert","Effect","Record","Result","Schema","AST","Parser","FastCheck","Asserts","ast","fields","equals","a","b","deepStrictEqual","map","getAST","elements","schema","constructor","make","options","makeEffect","succeed","input","expected","r","runPromise","pipe","mapError","issue","toString","result","arguments","length","fail","message","verifyLosslessTransformation","decodeUnknownEffect","encodeEffect","arbitrary","toArbitrary","asyncProperty","t","flatMap","e","params","decoding","Decoding","encoding","Encoding","verifyGeneration","is","arb","property","numRuns","parseOptions","provide","service","implementation","middlewareDecoding","provideService","encodeUnknownEffect","middlewareEncoding"],"sources":["../../src/testing/TestSchema.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"TestSchema.js","names":["assert","Effect","Record","Result","Schema","AST","Parser","FastCheck","Asserts","ast","fields","equals","a","b","deepStrictEqual","map","getAST","elements","schema","constructor","make","options","makeEffect","succeed","input","expected","r","runPromise","pipe","mapError","issue","toString","result","arguments","length","fail","message","verifyLosslessTransformation","decodeUnknownEffect","encodeEffect","arbitrary","toArbitrary","asyncProperty","t","flatMap","e","params","decoding","Decoding","encoding","Encoding","verifyGeneration","is","arb","property","numRuns","parseOptions","provide","service","implementation","middlewareDecoding","provideService","encodeUnknownEffect","middlewareEncoding"],"sources":["../../src/testing/TestSchema.ts"],"sourcesContent":[null],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoEA,OAAO,KAAKA,MAAM,MAAM,aAAa;AACrC,OAAO,KAAKC,MAAM,MAAM,cAAc;AACtC,OAAO,KAAKC,MAAM,MAAM,cAAc;AACtC,OAAO,KAAKC,MAAM,MAAM,cAAc;AACtC,OAAO,KAAKC,MAAM,MAAM,cAAc;AACtC,OAAO,KAAKC,GAAG,MAAM,iBAAiB;AAEtC,OAAO,KAAKC,MAAM,MAAM,oBAAoB;AAE5C,OAAO,KAAKC,SAAS,MAAM,yBAAyB;AAEpD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA+BA,OAAM,MAAOC,OAAO;EAClB;;;;;;;;;;;;;;;;;;;;EAoBA,OAAOC,GAAG,GAAG;IACXC,MAAM,EAAE;MACNC,MAAM,EAAEA,CAACC,CAAuB,EAAEC,CAAuB,KAAI;QAC3Db,MAAM,CAACc,eAAe,CAACZ,MAAM,CAACa,GAAG,CAACH,CAAC,EAAEP,GAAG,CAACW,MAAM,CAAC,EAAEd,MAAM,CAACa,GAAG,CAACF,CAAC,EAAER,GAAG,CAACW,MAAM,CAAC,CAAC;MAC9E;KACD;IACDC,QAAQ,EAAE;MACRN,MAAM,EAAEA,CAACC,CAAwB,EAAEC,CAAwB,KAAI;QAC7Db,MAAM,CAACc,eAAe,CAACF,CAAC,CAACG,GAAG,CAACV,GAAG,CAACW,MAAM,CAAC,EAAEH,CAAC,CAACE,GAAG,CAACV,GAAG,CAACW,MAAM,CAAC,CAAC;MAC9D;;GAEM;EAEDE,MAAM;EACfC,YAAYD,MAAS;IACnB,IAAI,CAACA,MAAM,GAAGA,MAAM;EACtB;EACA;;;;;;;;;;;;;;;;;;;EAmBAE,IAAIA,CAACC,OAA4B;IAC/B,MAAMC,UAAU,GAAGhB,MAAM,CAACgB,UAAU,CAAC,IAAI,CAACJ,MAAM,CAAC;IAGjD,eAAeK,OAAOA,CAACC,KAAyB,EAAEC,QAAoB;MACpE,MAAMC,CAAC,GAAG,MAAMzB,MAAM,CAAC0B,UAAU,CAC/BL,UAAU,CAACE,KAAK,EAAEH,OAAO,CAAC,CAACO,IAAI,CAC7B3B,MAAM,CAAC4B,QAAQ,CAAEC,KAAK,IAAKA,KAAK,CAACC,QAAQ,EAAE,CAAC,EAC5C9B,MAAM,CAAC+B,MAAM,CACd,CACF;MACDP,QAAQ,GAAGQ,SAAS,CAACC,MAAM,KAAK,CAAC,GAAGV,KAAK,GAAGC,QAAQ;MACpDzB,MAAM,CAACc,eAAe,CAACY,CAAC,EAAEvB,MAAM,CAACoB,OAAO,CAACE,QAAQ,CAAC,CAAC;IACrD;IACA,OAAO;MACLF,OAAO;MACP,MAAMY,IAAIA,CAACX,KAAc,EAAEY,OAAe;QACxC,MAAMV,CAAC,GAAG,MAAMzB,MAAM,CAAC0B,UAAU,CAC/BL,UAAU,CAACE,KAAK,EAAEH,OAAO,CAAC,CAACO,IAAI,CAC7B3B,MAAM,CAAC4B,QAAQ,CAAEC,KAAK,IAAKA,KAAK,CAACC,QAAQ,EAAE,CAAC,EAC5C9B,MAAM,CAAC+B,MAAM,CACd,CACF;QACDhC,MAAM,CAACc,eAAe,CAACY,CAAC,EAAEvB,MAAM,CAACgC,IAAI,CAACC,OAAO,CAAC,CAAC;MACjD;KACD;EACH;EACA;;;;;;;;;;;;;;;;;;;EAmBAC,4BAA4BA,CAA6DhB,OAExF;IACC,MAAMiB,mBAAmB,GAAGhC,MAAM,CAACgC,mBAAmB,CAAC,IAAI,CAACpB,MAAM,CAAC;IACnE,MAAMqB,YAAY,GAAGjC,MAAM,CAACiC,YAAY,CAAC,IAAI,CAACrB,MAAM,CAAC;IACrD,MAAMsB,SAAS,GAAGpC,MAAM,CAACqC,WAAW,CAAC,IAAI,CAACvB,MAAM,CAAC;IACjD,OAAOX,SAAS,CAACP,MAAM,CACrBO,SAAS,CAACmC,aAAa,CAACF,SAAS,EAAE,MAAOG,CAAC,IAAI;MAC7C,MAAMjB,CAAC,GAAG,MAAMzB,MAAM,CAAC0B,UAAU,CAC/BY,YAAY,CAACI,CAAC,CAAC,CAACf,IAAI,CAClB3B,MAAM,CAAC2C,OAAO,CAAEC,CAAC,IAAKP,mBAAmB,CAACO,CAAC,CAAC,CAAC,EAC7C5C,MAAM,CAAC4B,QAAQ,CAAEC,KAAK,IAAKA,KAAK,CAACC,QAAQ,EAAE,CAAC,EAC5C9B,MAAM,CAAC+B,MAAM,CACd,CACF;MACDhC,MAAM,CAACc,eAAe,CAACY,CAAC,EAAEvB,MAAM,CAACoB,OAAO,CAACoB,CAAC,CAAC,CAAC;IAC9C,CAAC,CAAC,EACFtB,OAAO,EAAEyB,MAAM,CAChB;EACH;EACA;;;;;;;;;;;;;;;;;;;;EAoBAC,QAAQA,CAAC1B,OAER;IACC,OAAO,IAAI2B,QAAQ,CAAC,IAAI,CAAC9B,MAAM,EAAEG,OAAO,CAAC;EAC3C;EACA;;;;;;;;;;;;;;;;;;;EAmBA4B,QAAQA,CAAC5B,OAER;IACC,OAAO,IAAI6B,QAAQ,CAAC,IAAI,CAAChC,MAAM,EAAEG,OAAO,CAAC;EAC3C;EACA;;;;;;;;;;;;;;;;;;EAkBAmB,SAASA,CAAA;IACP,MAAMtB,MAAM,GAAG,IAAI,CAACA,MAAM;IAC1B,OAAO;MACLiC,gBAAgBA,CAAC9B,OAEhB;QACC,MAAMyB,MAAM,GAAGzB,OAAO,EAAEyB,MAAM;QAC9B,MAAMM,EAAE,GAAGhD,MAAM,CAACgD,EAAE,CAAClC,MAAM,CAAC;QAC5B,MAAMmC,GAAG,GAAGjD,MAAM,CAACqC,WAAW,CAACvB,MAAM,CAAC;QACtCX,SAAS,CAACP,MAAM,CAACO,SAAS,CAAC+C,QAAQ,CAACD,GAAG,EAAGzC,CAAC,IAAKwC,EAAE,CAACxC,CAAC,CAAC,CAAC,EAAE;UAAE2C,OAAO,EAAE,EAAE;UAAE,GAAGT;QAAM,CAAE,CAAC;MACrF;KACD;EACH;;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCA,OAAM,MAAOE,QAAQ;EACV9B,MAAM;EACNoB,mBAAmB;EAInBjB,OAAO;EAGhBF,YAAYD,MAAS,EAAEG,OAEtB;IACC,IAAI,CAACH,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACoB,mBAAmB,GAAGhC,MAAM,CAACgC,mBAAmB,CAACpB,MAAM,CAAC;IAC7D,IAAI,CAACG,OAAO,GAAGA,OAAO;EACxB;EAyBA,MAAME,OAAOA,CAEXC,KAAc,EACdC,QAAoB;IAEpB,MAAMC,CAAC,GAAG,MAAMzB,MAAM,CAAC0B,UAAU,CAC/B,IAAI,CAACW,mBAAmB,CAACd,KAAK,EAAE,IAAI,CAACH,OAAO,EAAEmC,YAAY,CAAC,CAAC5B,IAAI,CAC9D3B,MAAM,CAAC4B,QAAQ,CAAEC,KAAK,IAAKA,KAAK,CAACC,QAAQ,EAAE,CAAC,EAC5C9B,MAAM,CAAC+B,MAAM,CACd,CACF;IACDP,QAAQ,GAAGQ,SAAS,CAACC,MAAM,KAAK,CAAC,GAAGV,KAAK,GAAGC,QAAQ;IACpDzB,MAAM,CAACc,eAAe,CAACY,CAAC,EAAEvB,MAAM,CAACoB,OAAO,CAACE,QAAQ,CAAC,CAAC;EACrD;EACA;;;;;;;;;;;;;;EAcA,MAAMU,IAAIA,CAERX,KAAc,EACdY,OAAe;IAEf,MAAMV,CAAC,GAAG,MAAMzB,MAAM,CAAC0B,UAAU,CAC/B,IAAI,CAACW,mBAAmB,CAACd,KAAK,EAAE,IAAI,CAACH,OAAO,EAAEmC,YAAY,CAAC,CAAC5B,IAAI,CAC9D3B,MAAM,CAAC4B,QAAQ,CAAEC,KAAK,IAAKA,KAAK,CAACC,QAAQ,EAAE,CAAC,EAC5C9B,MAAM,CAAC+B,MAAM,CACd,CACF;IACDhC,MAAM,CAACc,eAAe,CAACY,CAAC,EAAEvB,MAAM,CAACgC,IAAI,CAACC,OAAO,CAAC,CAAC;EACjD;EACA;;;;;;;;;EASAqB,OAAOA,CACLC,OAAoC,EACpCC,cAAuB;IAEvB,OAAO,IAAIX,QAAQ,CACjB,IAAI,CAAC9B,MAAM,CAACU,IAAI,CAACxB,MAAM,CAACwD,kBAAkB,CAAC3D,MAAM,CAAC4D,cAAc,CAACH,OAAO,EAAEC,cAAc,CAAC,CAAC,CAAC,EAC3F,IAAI,CAACtC,OAAO,CACb;EACH;;AAGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkCA,MAAM6B,QAAQ;EACHhC,MAAM;EACN4C,mBAAmB;EAInBzC,OAAO;EAGhBF,YAAYD,MAAS,EAAEG,OAEtB;IACC,IAAI,CAACH,MAAM,GAAGA,MAAM;IACpB,IAAI,CAAC4C,mBAAmB,GAAGxD,MAAM,CAACwD,mBAAmB,CAAC5C,MAAM,CAAC;IAC7D,IAAI,CAACG,OAAO,GAAGA,OAAO;EACxB;EAyBA,MAAME,OAAOA,CAEXC,KAAc,EACdC,QAAuB;IAEvB,MAAMC,CAAC,GAAG,MAAMzB,MAAM,CAAC0B,UAAU,CAC/B,IAAI,CAACmC,mBAAmB,CAACtC,KAAK,EAAE,IAAI,CAACH,OAAO,EAAEmC,YAAY,CAAC,CAAC5B,IAAI,CAC9D3B,MAAM,CAAC4B,QAAQ,CAAEC,KAAK,IAAKA,KAAK,CAACC,QAAQ,EAAE,CAAC,EAC5C9B,MAAM,CAAC+B,MAAM,CACd,CACF;IACDP,QAAQ,GAAGQ,SAAS,CAACC,MAAM,KAAK,CAAC,GAAGV,KAAK,GAAGC,QAAQ;IACpDzB,MAAM,CAACc,eAAe,CAACY,CAAC,EAAEvB,MAAM,CAACoB,OAAO,CAACE,QAAQ,CAAC,CAAC;EACrD;EACA;;;;;;;;;;;;;;EAcA,MAAMU,IAAIA,CAERX,KAAc,EACdY,OAAe;IAEf,MAAMV,CAAC,GAAG,MAAMzB,MAAM,CAAC0B,UAAU,CAC/B,IAAI,CAACmC,mBAAmB,CAACtC,KAAK,EAAE,IAAI,CAACH,OAAO,EAAEmC,YAAY,CAAC,CAAC5B,IAAI,CAC9D3B,MAAM,CAAC4B,QAAQ,CAAEC,KAAK,IAAKA,KAAK,CAACC,QAAQ,EAAE,CAAC,EAC5C9B,MAAM,CAAC+B,MAAM,CACd,CACF;IACDhC,MAAM,CAACc,eAAe,CAACY,CAAC,EAAEvB,MAAM,CAACgC,IAAI,CAACC,OAAO,CAAC,CAAC;EACjD;EACA;;;;;;;;;EASAqB,OAAOA,CACLC,OAAoC,EACpCC,cAAuB;IAEvB,OAAO,IAAIT,QAAQ,CACjB,IAAI,CAAChC,MAAM,CAACU,IAAI,CAACxB,MAAM,CAAC2D,kBAAkB,CAAC9D,MAAM,CAAC4D,cAAc,CAACH,OAAO,EAAEC,cAAc,CAAC,CAAC,CAAC,EAC3F,IAAI,CAACtC,OAAO,CACb;EACH","ignoreList":[]}
@@ -22,7 +22,70 @@ export * as TestClock from "./TestClock.ts";
22
22
  */
23
23
  export * as TestConsole from "./TestConsole.ts";
24
24
  /**
25
- * Testing utilities for Schema validation and assertions.
25
+ * Testing utilities for asserting Schema decoding, encoding, make, and
26
+ * arbitrary-generation behavior. Used in unit tests to verify that schemas
27
+ * accept, reject, and round-trip values correctly.
28
+ *
29
+ * ## Mental model
30
+ *
31
+ * - **Asserts** – entry point: wraps a schema and exposes helpers grouped by
32
+ * operation (decoding, encoding, make, arbitrary, round-trip).
33
+ * - **Decoding** – returned by `asserts.decoding()`; has `succeed` / `fail`
34
+ * helpers that run the schema's decoder and compare the result.
35
+ * - **Encoding** – returned by `asserts.encoding()`; mirrors {@link Decoding}
36
+ * but exercises the encoder direction.
37
+ * - Every assertion is async (`Promise<void>`) because parsing may involve
38
+ * effectful schemas.
39
+ * - `succeed` with one argument asserts identity (output equals input);
40
+ * with two arguments asserts a specific expected output.
41
+ * - `fail` always takes the input and the expected error message string.
42
+ *
43
+ * ## Common tasks
44
+ *
45
+ * - Assert decoding succeeds / fails → `new Asserts(schema).decoding().succeed(…)` / `.fail(…)`
46
+ * - Assert encoding succeeds / fails → `new Asserts(schema).encoding().succeed(…)` / `.fail(…)`
47
+ * - Assert make succeeds / fails → `new Asserts(schema).make().succeed(…)` / `.fail(…)`
48
+ * - Verify round-trip (encode then decode) → `new Asserts(schema).verifyLosslessTransformation()`
49
+ * - Verify arbitrary generation → `new Asserts(schema).arbitrary().verifyGeneration()`
50
+ * - Compare AST of struct fields → `Asserts.ast.fields.equals(a, b)`
51
+ * - Provide a service dependency for decoding → `asserts.decoding().provide(key, impl)`
52
+ *
53
+ * ## Gotchas
54
+ *
55
+ * - `succeed` uses `assert.deepStrictEqual`, so reference equality is not
56
+ * required but structural equality is.
57
+ * - `fail` compares against the stringified `Issue`, not the `Issue` object
58
+ * itself. Pass the exact multiline string the issue produces.
59
+ * - `verifyLosslessTransformation` and `arbitrary().verifyGeneration` run
60
+ * property-based tests via FastCheck; default run count is 20 for
61
+ * `verifyGeneration`.
62
+ *
63
+ * ## Quickstart
64
+ *
65
+ * **Example** (Basic decoding and encoding assertions)
66
+ *
67
+ * ```ts
68
+ * import { Schema } from "effect"
69
+ * import { TestSchema } from "effect/testing"
70
+ *
71
+ * const schema = Schema.NumberFromString
72
+ * const asserts = new TestSchema.Asserts(schema)
73
+ *
74
+ * // decoding
75
+ * const decoding = asserts.decoding()
76
+ * await decoding.succeed("1", 1)
77
+ * await decoding.fail(null, "Expected string, got null")
78
+ *
79
+ * // encoding
80
+ * const encoding = asserts.encoding()
81
+ * await encoding.succeed(1, "1")
82
+ * ```
83
+ *
84
+ * ## See also
85
+ *
86
+ * - {@link Asserts}
87
+ * - {@link Decoding}
88
+ * - {@link Encoding}
26
89
  *
27
90
  * @since 4.0.0
28
91
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;;;GAUG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;;;GAIG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/testing/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH;;;;;;;;;;GAUG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,SAAS,MAAM,gBAAgB,CAAA;AAE3C;;GAEG;AACH,OAAO,KAAK,WAAW,MAAM,kBAAkB,CAAA;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmEG;AACH,OAAO,KAAK,UAAU,MAAM,iBAAiB,CAAA"}
@@ -23,7 +23,70 @@ export * as TestClock from "./TestClock.js";
23
23
  */
24
24
  export * as TestConsole from "./TestConsole.js";
25
25
  /**
26
- * Testing utilities for Schema validation and assertions.
26
+ * Testing utilities for asserting Schema decoding, encoding, make, and
27
+ * arbitrary-generation behavior. Used in unit tests to verify that schemas
28
+ * accept, reject, and round-trip values correctly.
29
+ *
30
+ * ## Mental model
31
+ *
32
+ * - **Asserts** – entry point: wraps a schema and exposes helpers grouped by
33
+ * operation (decoding, encoding, make, arbitrary, round-trip).
34
+ * - **Decoding** – returned by `asserts.decoding()`; has `succeed` / `fail`
35
+ * helpers that run the schema's decoder and compare the result.
36
+ * - **Encoding** – returned by `asserts.encoding()`; mirrors {@link Decoding}
37
+ * but exercises the encoder direction.
38
+ * - Every assertion is async (`Promise<void>`) because parsing may involve
39
+ * effectful schemas.
40
+ * - `succeed` with one argument asserts identity (output equals input);
41
+ * with two arguments asserts a specific expected output.
42
+ * - `fail` always takes the input and the expected error message string.
43
+ *
44
+ * ## Common tasks
45
+ *
46
+ * - Assert decoding succeeds / fails → `new Asserts(schema).decoding().succeed(…)` / `.fail(…)`
47
+ * - Assert encoding succeeds / fails → `new Asserts(schema).encoding().succeed(…)` / `.fail(…)`
48
+ * - Assert make succeeds / fails → `new Asserts(schema).make().succeed(…)` / `.fail(…)`
49
+ * - Verify round-trip (encode then decode) → `new Asserts(schema).verifyLosslessTransformation()`
50
+ * - Verify arbitrary generation → `new Asserts(schema).arbitrary().verifyGeneration()`
51
+ * - Compare AST of struct fields → `Asserts.ast.fields.equals(a, b)`
52
+ * - Provide a service dependency for decoding → `asserts.decoding().provide(key, impl)`
53
+ *
54
+ * ## Gotchas
55
+ *
56
+ * - `succeed` uses `assert.deepStrictEqual`, so reference equality is not
57
+ * required but structural equality is.
58
+ * - `fail` compares against the stringified `Issue`, not the `Issue` object
59
+ * itself. Pass the exact multiline string the issue produces.
60
+ * - `verifyLosslessTransformation` and `arbitrary().verifyGeneration` run
61
+ * property-based tests via FastCheck; default run count is 20 for
62
+ * `verifyGeneration`.
63
+ *
64
+ * ## Quickstart
65
+ *
66
+ * **Example** (Basic decoding and encoding assertions)
67
+ *
68
+ * ```ts
69
+ * import { Schema } from "effect"
70
+ * import { TestSchema } from "effect/testing"
71
+ *
72
+ * const schema = Schema.NumberFromString
73
+ * const asserts = new TestSchema.Asserts(schema)
74
+ *
75
+ * // decoding
76
+ * const decoding = asserts.decoding()
77
+ * await decoding.succeed("1", 1)
78
+ * await decoding.fail(null, "Expected string, got null")
79
+ *
80
+ * // encoding
81
+ * const encoding = asserts.encoding()
82
+ * await encoding.succeed(1, "1")
83
+ * ```
84
+ *
85
+ * ## See also
86
+ *
87
+ * - {@link Asserts}
88
+ * - {@link Decoding}
89
+ * - {@link Encoding}
27
90
  *
28
91
  * @since 4.0.0
29
92
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","names":["FastCheck","TestClock","TestConsole","TestSchema"],"sources":["../../src/testing/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;AAEA;;;;;;;;;;;AAWA,OAAO,KAAKA,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;;;AAKA,OAAO,KAAKC,UAAU,MAAM,iBAAiB","ignoreList":[]}
1
+ {"version":3,"file":"index.js","names":["FastCheck","TestClock","TestConsole","TestSchema"],"sources":["../../src/testing/index.ts"],"sourcesContent":[null],"mappings":"AAAA;;;AAIA;AAEA;;;;;;;;;;;AAWA,OAAO,KAAKA,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,SAAS,MAAM,gBAAgB;AAE3C;;;AAGA,OAAO,KAAKC,WAAW,MAAM,kBAAkB;AAE/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAoEA,OAAO,KAAKC,UAAU,MAAM,iBAAiB","ignoreList":[]}