effect 4.0.0-beta.5 → 4.0.0-beta.51

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 (1512) hide show
  1. package/dist/Array.d.ts +213 -385
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +149 -102
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +82 -45
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +105 -52
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +39 -32
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +36 -33
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Brand.d.ts +3 -5
  14. package/dist/Brand.d.ts.map +1 -1
  15. package/dist/Brand.js +1 -1
  16. package/dist/Brand.js.map +1 -1
  17. package/dist/Cache.d.ts +14 -45
  18. package/dist/Cache.d.ts.map +1 -1
  19. package/dist/Cache.js +21 -47
  20. package/dist/Cache.js.map +1 -1
  21. package/dist/Cause.d.ts +54 -23
  22. package/dist/Cause.d.ts.map +1 -1
  23. package/dist/Cause.js +108 -10
  24. package/dist/Cause.js.map +1 -1
  25. package/dist/Channel.d.ts +166 -48
  26. package/dist/Channel.d.ts.map +1 -1
  27. package/dist/Channel.js +182 -91
  28. package/dist/Channel.js.map +1 -1
  29. package/dist/Chunk.d.ts +112 -304
  30. package/dist/Chunk.d.ts.map +1 -1
  31. package/dist/Chunk.js +56 -88
  32. package/dist/Chunk.js.map +1 -1
  33. package/dist/Clock.d.ts +2 -2
  34. package/dist/Clock.d.ts.map +1 -1
  35. package/dist/Clock.js.map +1 -1
  36. package/dist/Combiner.d.ts +280 -13
  37. package/dist/Combiner.d.ts.map +1 -1
  38. package/dist/Combiner.js +198 -7
  39. package/dist/Combiner.js.map +1 -1
  40. package/dist/Config.d.ts +171 -11
  41. package/dist/Config.d.ts.map +1 -1
  42. package/dist/Config.js +69 -11
  43. package/dist/Config.js.map +1 -1
  44. package/dist/ConfigProvider.d.ts +6 -6
  45. package/dist/ConfigProvider.d.ts.map +1 -1
  46. package/dist/ConfigProvider.js +5 -5
  47. package/dist/ConfigProvider.js.map +1 -1
  48. package/dist/Console.d.ts +2 -2
  49. package/dist/Console.d.ts.map +1 -1
  50. package/dist/Console.js.map +1 -1
  51. package/dist/Context.d.ts +1150 -0
  52. package/dist/Context.d.ts.map +1 -0
  53. package/dist/{ServiceMap.js → Context.js} +181 -165
  54. package/dist/Context.js.map +1 -0
  55. package/dist/Cron.d.ts +11 -7
  56. package/dist/Cron.d.ts.map +1 -1
  57. package/dist/Cron.js +120 -63
  58. package/dist/Cron.js.map +1 -1
  59. package/dist/Data.d.ts +535 -366
  60. package/dist/Data.d.ts.map +1 -1
  61. package/dist/Data.js +132 -79
  62. package/dist/Data.js.map +1 -1
  63. package/dist/DateTime.d.ts +74 -255
  64. package/dist/DateTime.d.ts.map +1 -1
  65. package/dist/DateTime.js +17 -62
  66. package/dist/DateTime.js.map +1 -1
  67. package/dist/Deferred.d.ts +12 -5
  68. package/dist/Deferred.d.ts.map +1 -1
  69. package/dist/Deferred.js +13 -5
  70. package/dist/Deferred.js.map +1 -1
  71. package/dist/Duration.d.ts +62 -32
  72. package/dist/Duration.d.ts.map +1 -1
  73. package/dist/Duration.js +109 -79
  74. package/dist/Duration.js.map +1 -1
  75. package/dist/Effect.d.ts +1377 -1147
  76. package/dist/Effect.d.ts.map +1 -1
  77. package/dist/Effect.js +465 -446
  78. package/dist/Effect.js.map +1 -1
  79. package/dist/Encoding.d.ts +194 -0
  80. package/dist/Encoding.d.ts.map +1 -0
  81. package/dist/Encoding.js +352 -0
  82. package/dist/Encoding.js.map +1 -0
  83. package/dist/Equal.d.ts +276 -109
  84. package/dist/Equal.d.ts.map +1 -1
  85. package/dist/Equal.js +140 -48
  86. package/dist/Equal.js.map +1 -1
  87. package/dist/Equivalence.d.ts +60 -3
  88. package/dist/Equivalence.d.ts.map +1 -1
  89. package/dist/Equivalence.js +70 -13
  90. package/dist/Equivalence.js.map +1 -1
  91. package/dist/ErrorReporter.d.ts +374 -0
  92. package/dist/ErrorReporter.d.ts.map +1 -0
  93. package/dist/ErrorReporter.js +245 -0
  94. package/dist/ErrorReporter.js.map +1 -0
  95. package/dist/ExecutionPlan.d.ts +6 -6
  96. package/dist/ExecutionPlan.d.ts.map +1 -1
  97. package/dist/ExecutionPlan.js +4 -4
  98. package/dist/ExecutionPlan.js.map +1 -1
  99. package/dist/Exit.d.ts +24 -12
  100. package/dist/Exit.d.ts.map +1 -1
  101. package/dist/Exit.js +8 -4
  102. package/dist/Exit.js.map +1 -1
  103. package/dist/Fiber.d.ts +10 -8
  104. package/dist/Fiber.d.ts.map +1 -1
  105. package/dist/Fiber.js.map +1 -1
  106. package/dist/FiberHandle.d.ts +11 -10
  107. package/dist/FiberHandle.d.ts.map +1 -1
  108. package/dist/FiberHandle.js +12 -11
  109. package/dist/FiberHandle.js.map +1 -1
  110. package/dist/FiberMap.d.ts +22 -21
  111. package/dist/FiberMap.d.ts.map +1 -1
  112. package/dist/FiberMap.js +10 -10
  113. package/dist/FiberMap.js.map +1 -1
  114. package/dist/FiberSet.d.ts +2 -2
  115. package/dist/FiberSet.d.ts.map +1 -1
  116. package/dist/FiberSet.js +4 -4
  117. package/dist/FiberSet.js.map +1 -1
  118. package/dist/FileSystem.d.ts +20 -19
  119. package/dist/FileSystem.d.ts.map +1 -1
  120. package/dist/FileSystem.js +17 -13
  121. package/dist/FileSystem.js.map +1 -1
  122. package/dist/Filter.d.ts +4 -37
  123. package/dist/Filter.d.ts.map +1 -1
  124. package/dist/Filter.js +0 -13
  125. package/dist/Filter.js.map +1 -1
  126. package/dist/Formatter.d.ts +131 -47
  127. package/dist/Formatter.d.ts.map +1 -1
  128. package/dist/Formatter.js +229 -51
  129. package/dist/Formatter.js.map +1 -1
  130. package/dist/Function.d.ts +1 -9
  131. package/dist/Function.d.ts.map +1 -1
  132. package/dist/Function.js +2 -10
  133. package/dist/Function.js.map +1 -1
  134. package/dist/Graph.d.ts +65 -65
  135. package/dist/Graph.d.ts.map +1 -1
  136. package/dist/Graph.js +60 -62
  137. package/dist/Graph.js.map +1 -1
  138. package/dist/Hash.js +1 -1
  139. package/dist/Hash.js.map +1 -1
  140. package/dist/HashMap.d.ts +26 -19
  141. package/dist/HashMap.d.ts.map +1 -1
  142. package/dist/HashMap.js +7 -5
  143. package/dist/HashMap.js.map +1 -1
  144. package/dist/Iterable.d.ts +50 -50
  145. package/dist/Iterable.d.ts.map +1 -1
  146. package/dist/Iterable.js +106 -34
  147. package/dist/Iterable.js.map +1 -1
  148. package/dist/JsonSchema.d.ts +299 -10
  149. package/dist/JsonSchema.d.ts.map +1 -1
  150. package/dist/JsonSchema.js +323 -4
  151. package/dist/JsonSchema.js.map +1 -1
  152. package/dist/Latch.d.ts +175 -0
  153. package/dist/Latch.d.ts.map +1 -0
  154. package/dist/Latch.js +130 -0
  155. package/dist/Latch.js.map +1 -0
  156. package/dist/Layer.d.ts +599 -379
  157. package/dist/Layer.d.ts.map +1 -1
  158. package/dist/Layer.js +249 -180
  159. package/dist/Layer.js.map +1 -1
  160. package/dist/LayerMap.d.ts +27 -26
  161. package/dist/LayerMap.d.ts.map +1 -1
  162. package/dist/LayerMap.js +21 -18
  163. package/dist/LayerMap.js.map +1 -1
  164. package/dist/LogLevel.d.ts +32 -0
  165. package/dist/LogLevel.d.ts.map +1 -1
  166. package/dist/LogLevel.js +28 -100
  167. package/dist/LogLevel.js.map +1 -1
  168. package/dist/Logger.d.ts +31 -97
  169. package/dist/Logger.d.ts.map +1 -1
  170. package/dist/Logger.js +2 -3
  171. package/dist/Logger.js.map +1 -1
  172. package/dist/ManagedRuntime.d.ts +8 -8
  173. package/dist/ManagedRuntime.d.ts.map +1 -1
  174. package/dist/ManagedRuntime.js +34 -25
  175. package/dist/ManagedRuntime.js.map +1 -1
  176. package/dist/Metric.d.ts +23 -25
  177. package/dist/Metric.d.ts.map +1 -1
  178. package/dist/Metric.js +24 -26
  179. package/dist/Metric.js.map +1 -1
  180. package/dist/MutableHashMap.d.ts +7 -0
  181. package/dist/MutableHashMap.d.ts.map +1 -1
  182. package/dist/MutableHashMap.js +8 -0
  183. package/dist/MutableHashMap.js.map +1 -1
  184. package/dist/MutableHashSet.d.ts +7 -0
  185. package/dist/MutableHashSet.d.ts.map +1 -1
  186. package/dist/MutableHashSet.js +8 -0
  187. package/dist/MutableHashSet.js.map +1 -1
  188. package/dist/MutableList.d.ts.map +1 -1
  189. package/dist/MutableList.js +3 -0
  190. package/dist/MutableList.js.map +1 -1
  191. package/dist/Newtype.d.ts +291 -0
  192. package/dist/Newtype.d.ts.map +1 -0
  193. package/dist/Newtype.js +161 -0
  194. package/dist/Newtype.js.map +1 -0
  195. package/dist/Number.d.ts +74 -18
  196. package/dist/Number.d.ts.map +1 -1
  197. package/dist/Number.js +46 -18
  198. package/dist/Number.js.map +1 -1
  199. package/dist/Optic.d.ts +947 -18
  200. package/dist/Optic.d.ts.map +1 -1
  201. package/dist/Optic.js +454 -5
  202. package/dist/Optic.js.map +1 -1
  203. package/dist/Option.d.ts +25 -16
  204. package/dist/Option.d.ts.map +1 -1
  205. package/dist/Option.js +15 -9
  206. package/dist/Option.js.map +1 -1
  207. package/dist/Order.d.ts +6 -1
  208. package/dist/Order.d.ts.map +1 -1
  209. package/dist/Order.js +19 -14
  210. package/dist/Order.js.map +1 -1
  211. package/dist/PartitionedSemaphore.d.ts +146 -15
  212. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  213. package/dist/PartitionedSemaphore.js +174 -61
  214. package/dist/PartitionedSemaphore.js.map +1 -1
  215. package/dist/Path.d.ts +2 -2
  216. package/dist/Path.d.ts.map +1 -1
  217. package/dist/Path.js +2 -2
  218. package/dist/Path.js.map +1 -1
  219. package/dist/Pipeable.d.ts +17 -0
  220. package/dist/Pipeable.d.ts.map +1 -1
  221. package/dist/Pipeable.js +19 -1
  222. package/dist/Pipeable.js.map +1 -1
  223. package/dist/PlatformError.d.ts +2 -2
  224. package/dist/Pool.d.ts +6 -4
  225. package/dist/Pool.d.ts.map +1 -1
  226. package/dist/Pool.js +11 -9
  227. package/dist/Pool.js.map +1 -1
  228. package/dist/PubSub.d.ts +8 -6
  229. package/dist/PubSub.d.ts.map +1 -1
  230. package/dist/PubSub.js +18 -10
  231. package/dist/PubSub.js.map +1 -1
  232. package/dist/Pull.d.ts.map +1 -1
  233. package/dist/Pull.js +1 -1
  234. package/dist/Pull.js.map +1 -1
  235. package/dist/Queue.d.ts +9 -6
  236. package/dist/Queue.d.ts.map +1 -1
  237. package/dist/Queue.js +7 -5
  238. package/dist/Queue.js.map +1 -1
  239. package/dist/Random.d.ts +36 -2
  240. package/dist/Random.d.ts.map +1 -1
  241. package/dist/Random.js +46 -35
  242. package/dist/Random.js.map +1 -1
  243. package/dist/RcMap.d.ts +4 -4
  244. package/dist/RcMap.d.ts.map +1 -1
  245. package/dist/RcMap.js +13 -13
  246. package/dist/RcMap.js.map +1 -1
  247. package/dist/RcRef.d.ts +1 -1
  248. package/dist/RcRef.d.ts.map +1 -1
  249. package/dist/Record.d.ts +63 -160
  250. package/dist/Record.d.ts.map +1 -1
  251. package/dist/Record.js +37 -56
  252. package/dist/Record.js.map +1 -1
  253. package/dist/Redactable.d.ts +139 -62
  254. package/dist/Redactable.d.ts.map +1 -1
  255. package/dist/Redactable.js +59 -55
  256. package/dist/Redactable.js.map +1 -1
  257. package/dist/Reducer.d.ts +166 -7
  258. package/dist/Reducer.d.ts.map +1 -1
  259. package/dist/Reducer.js +135 -1
  260. package/dist/Reducer.js.map +1 -1
  261. package/dist/References.d.ts +257 -229
  262. package/dist/References.d.ts.map +1 -1
  263. package/dist/References.js +240 -259
  264. package/dist/References.js.map +1 -1
  265. package/dist/Request.d.ts +6 -6
  266. package/dist/Request.d.ts.map +1 -1
  267. package/dist/Request.js +2 -1
  268. package/dist/Request.js.map +1 -1
  269. package/dist/RequestResolver.d.ts +25 -45
  270. package/dist/RequestResolver.d.ts.map +1 -1
  271. package/dist/RequestResolver.js +15 -36
  272. package/dist/RequestResolver.js.map +1 -1
  273. package/dist/Resource.d.ts +0 -3
  274. package/dist/Resource.d.ts.map +1 -1
  275. package/dist/Resource.js +5 -4
  276. package/dist/Resource.js.map +1 -1
  277. package/dist/Result.d.ts +1 -1
  278. package/dist/Result.d.ts.map +1 -1
  279. package/dist/Result.js +1 -2
  280. package/dist/Result.js.map +1 -1
  281. package/dist/Runtime.d.ts +66 -0
  282. package/dist/Runtime.d.ts.map +1 -1
  283. package/dist/Runtime.js +79 -6
  284. package/dist/Runtime.js.map +1 -1
  285. package/dist/Schedule.d.ts +176 -293
  286. package/dist/Schedule.d.ts.map +1 -1
  287. package/dist/Schedule.js +162 -136
  288. package/dist/Schedule.js.map +1 -1
  289. package/dist/Scheduler.d.ts +36 -125
  290. package/dist/Scheduler.d.ts.map +1 -1
  291. package/dist/Scheduler.js +37 -126
  292. package/dist/Scheduler.js.map +1 -1
  293. package/dist/Schema.d.ts +3326 -383
  294. package/dist/Schema.d.ts.map +1 -1
  295. package/dist/Schema.js +2315 -283
  296. package/dist/Schema.js.map +1 -1
  297. package/dist/SchemaAST.d.ts +13 -2
  298. package/dist/SchemaAST.d.ts.map +1 -1
  299. package/dist/SchemaAST.js +340 -257
  300. package/dist/SchemaAST.js.map +1 -1
  301. package/dist/SchemaGetter.d.ts +57 -15
  302. package/dist/SchemaGetter.d.ts.map +1 -1
  303. package/dist/SchemaGetter.js +85 -25
  304. package/dist/SchemaGetter.js.map +1 -1
  305. package/dist/SchemaIssue.d.ts.map +1 -1
  306. package/dist/SchemaIssue.js +29 -11
  307. package/dist/SchemaIssue.js.map +1 -1
  308. package/dist/SchemaParser.d.ts +44 -54
  309. package/dist/SchemaParser.d.ts.map +1 -1
  310. package/dist/SchemaParser.js +69 -4
  311. package/dist/SchemaParser.js.map +1 -1
  312. package/dist/SchemaRepresentation.d.ts +46 -45
  313. package/dist/SchemaRepresentation.d.ts.map +1 -1
  314. package/dist/SchemaRepresentation.js +65 -38
  315. package/dist/SchemaRepresentation.js.map +1 -1
  316. package/dist/SchemaTransformation.d.ts +252 -3
  317. package/dist/SchemaTransformation.d.ts.map +1 -1
  318. package/dist/SchemaTransformation.js +319 -13
  319. package/dist/SchemaTransformation.js.map +1 -1
  320. package/dist/Scope.d.ts +2 -2
  321. package/dist/Scope.d.ts.map +1 -1
  322. package/dist/Scope.js.map +1 -1
  323. package/dist/ScopedCache.d.ts +2 -2
  324. package/dist/ScopedCache.d.ts.map +1 -1
  325. package/dist/ScopedCache.js +5 -5
  326. package/dist/ScopedCache.js.map +1 -1
  327. package/dist/Semaphore.d.ts +307 -0
  328. package/dist/Semaphore.d.ts.map +1 -0
  329. package/dist/Semaphore.js +220 -0
  330. package/dist/Semaphore.js.map +1 -0
  331. package/dist/Sink.d.ts +22 -19
  332. package/dist/Sink.d.ts.map +1 -1
  333. package/dist/Sink.js +54 -7
  334. package/dist/Sink.js.map +1 -1
  335. package/dist/Stdio.d.ts +18 -6
  336. package/dist/Stdio.d.ts.map +1 -1
  337. package/dist/Stdio.js +20 -2
  338. package/dist/Stdio.js.map +1 -1
  339. package/dist/Stream.d.ts +465 -542
  340. package/dist/Stream.d.ts.map +1 -1
  341. package/dist/Stream.js +321 -144
  342. package/dist/Stream.js.map +1 -1
  343. package/dist/String.d.ts +114 -47
  344. package/dist/String.d.ts.map +1 -1
  345. package/dist/String.js +29 -47
  346. package/dist/String.js.map +1 -1
  347. package/dist/Struct.d.ts +23 -7
  348. package/dist/Struct.d.ts.map +1 -1
  349. package/dist/Struct.js +22 -0
  350. package/dist/Struct.js.map +1 -1
  351. package/dist/SubscriptionRef.d.ts +3 -3
  352. package/dist/SubscriptionRef.d.ts.map +1 -1
  353. package/dist/SubscriptionRef.js +85 -117
  354. package/dist/SubscriptionRef.js.map +1 -1
  355. package/dist/SynchronizedRef.d.ts +2 -1
  356. package/dist/SynchronizedRef.d.ts.map +1 -1
  357. package/dist/SynchronizedRef.js +2 -1
  358. package/dist/SynchronizedRef.js.map +1 -1
  359. package/dist/Terminal.d.ts +5 -4
  360. package/dist/Terminal.d.ts.map +1 -1
  361. package/dist/Terminal.js +2 -2
  362. package/dist/Terminal.js.map +1 -1
  363. package/dist/Tracer.d.ts +21 -20
  364. package/dist/Tracer.d.ts.map +1 -1
  365. package/dist/Tracer.js +13 -9
  366. package/dist/Tracer.js.map +1 -1
  367. package/dist/Trie.d.ts +44 -31
  368. package/dist/Trie.d.ts.map +1 -1
  369. package/dist/Trie.js +13 -9
  370. package/dist/Trie.js.map +1 -1
  371. package/dist/TxChunk.d.ts +4 -4
  372. package/dist/TxChunk.d.ts.map +1 -1
  373. package/dist/TxChunk.js +4 -4
  374. package/dist/TxChunk.js.map +1 -1
  375. package/dist/TxDeferred.d.ts +328 -0
  376. package/dist/TxDeferred.d.ts.map +1 -0
  377. package/dist/TxDeferred.js +197 -0
  378. package/dist/TxDeferred.js.map +1 -0
  379. package/dist/TxHashMap.d.ts +105 -86
  380. package/dist/TxHashMap.d.ts.map +1 -1
  381. package/dist/TxHashMap.js +51 -44
  382. package/dist/TxHashMap.js.map +1 -1
  383. package/dist/TxHashSet.d.ts +2 -2
  384. package/dist/TxHashSet.d.ts.map +1 -1
  385. package/dist/TxHashSet.js +16 -15
  386. package/dist/TxHashSet.js.map +1 -1
  387. package/dist/TxPriorityQueue.d.ts +609 -0
  388. package/dist/TxPriorityQueue.d.ts.map +1 -0
  389. package/dist/TxPriorityQueue.js +416 -0
  390. package/dist/TxPriorityQueue.js.map +1 -0
  391. package/dist/TxPubSub.d.ts +585 -0
  392. package/dist/TxPubSub.d.ts.map +1 -0
  393. package/dist/TxPubSub.js +521 -0
  394. package/dist/TxPubSub.js.map +1 -0
  395. package/dist/TxQueue.d.ts +1 -1
  396. package/dist/TxQueue.d.ts.map +1 -1
  397. package/dist/TxQueue.js +42 -57
  398. package/dist/TxQueue.js.map +1 -1
  399. package/dist/TxReentrantLock.d.ts +500 -0
  400. package/dist/TxReentrantLock.d.ts.map +1 -0
  401. package/dist/TxReentrantLock.js +481 -0
  402. package/dist/TxReentrantLock.js.map +1 -0
  403. package/dist/TxRef.d.ts +14 -20
  404. package/dist/TxRef.d.ts.map +1 -1
  405. package/dist/TxRef.js +8 -10
  406. package/dist/TxRef.js.map +1 -1
  407. package/dist/TxSemaphore.d.ts +162 -2
  408. package/dist/TxSemaphore.d.ts.map +1 -1
  409. package/dist/TxSemaphore.js +25 -10
  410. package/dist/TxSemaphore.js.map +1 -1
  411. package/dist/TxSubscriptionRef.d.ts +508 -0
  412. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  413. package/dist/TxSubscriptionRef.js +293 -0
  414. package/dist/TxSubscriptionRef.js.map +1 -0
  415. package/dist/Types.d.ts +83 -17
  416. package/dist/Types.d.ts.map +1 -1
  417. package/dist/Unify.d.ts +8 -2
  418. package/dist/Unify.d.ts.map +1 -1
  419. package/dist/Unify.js.map +1 -1
  420. package/dist/Utils.d.ts +137 -65
  421. package/dist/Utils.d.ts.map +1 -1
  422. package/dist/Utils.js +38 -66
  423. package/dist/Utils.js.map +1 -1
  424. package/dist/index.d.ts +888 -71
  425. package/dist/index.d.ts.map +1 -1
  426. package/dist/index.js +888 -71
  427. package/dist/index.js.map +1 -1
  428. package/dist/internal/core.js +11 -3
  429. package/dist/internal/core.js.map +1 -1
  430. package/dist/internal/dateTime.js +77 -71
  431. package/dist/internal/dateTime.js.map +1 -1
  432. package/dist/internal/effect.js +485 -325
  433. package/dist/internal/effect.js.map +1 -1
  434. package/dist/internal/hashMap.js +7 -5
  435. package/dist/internal/hashMap.js.map +1 -1
  436. package/dist/internal/layer.js +3 -3
  437. package/dist/internal/layer.js.map +1 -1
  438. package/dist/internal/option.js +6 -0
  439. package/dist/internal/option.js.map +1 -1
  440. package/dist/internal/random.d.ts +2 -0
  441. package/dist/internal/random.d.ts.map +1 -0
  442. package/dist/internal/random.js +13 -0
  443. package/dist/internal/random.js.map +1 -0
  444. package/dist/internal/rcRef.js +11 -10
  445. package/dist/internal/rcRef.js.map +1 -1
  446. package/dist/internal/references.d.ts +2 -0
  447. package/dist/internal/references.d.ts.map +1 -0
  448. package/dist/internal/references.js +51 -0
  449. package/dist/internal/references.js.map +1 -0
  450. package/dist/internal/request.js +6 -6
  451. package/dist/internal/request.js.map +1 -1
  452. package/dist/internal/schedule.js +1 -1
  453. package/dist/internal/schedule.js.map +1 -1
  454. package/dist/internal/schema/annotations.js +2 -0
  455. package/dist/internal/schema/annotations.js.map +1 -1
  456. package/dist/internal/schema/representation.js +86 -107
  457. package/dist/internal/schema/representation.js.map +1 -1
  458. package/dist/internal/schema/schema.d.ts +10 -1
  459. package/dist/internal/schema/schema.d.ts.map +1 -1
  460. package/dist/internal/schema/schema.js +22 -1
  461. package/dist/internal/schema/schema.js.map +1 -1
  462. package/dist/internal/schema/to-codec.js +7 -10
  463. package/dist/internal/schema/to-codec.js.map +1 -1
  464. package/dist/internal/trie.js +8 -7
  465. package/dist/internal/trie.js.map +1 -1
  466. package/dist/testing/TestClock.d.ts +8 -7
  467. package/dist/testing/TestClock.d.ts.map +1 -1
  468. package/dist/testing/TestClock.js +6 -4
  469. package/dist/testing/TestClock.js.map +1 -1
  470. package/dist/testing/TestSchema.d.ts +267 -33
  471. package/dist/testing/TestSchema.d.ts.map +1 -1
  472. package/dist/testing/TestSchema.js +296 -23
  473. package/dist/testing/TestSchema.js.map +1 -1
  474. package/dist/testing/index.d.ts +64 -1
  475. package/dist/testing/index.d.ts.map +1 -1
  476. package/dist/testing/index.js +64 -1
  477. package/dist/testing/index.js.map +1 -1
  478. package/dist/unstable/ai/AiError.d.ts +155 -73
  479. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  480. package/dist/unstable/ai/AiError.js +29 -23
  481. package/dist/unstable/ai/AiError.js.map +1 -1
  482. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  483. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  484. package/dist/unstable/ai/AnthropicStructuredOutput.js +9 -2
  485. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  486. package/dist/unstable/ai/Chat.d.ts +39 -11
  487. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  488. package/dist/unstable/ai/Chat.js +41 -47
  489. package/dist/unstable/ai/Chat.js.map +1 -1
  490. package/dist/unstable/ai/EmbeddingModel.d.ts +130 -0
  491. package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -0
  492. package/dist/unstable/ai/EmbeddingModel.js +127 -0
  493. package/dist/unstable/ai/EmbeddingModel.js.map +1 -0
  494. package/dist/unstable/ai/IdGenerator.d.ts +2 -2
  495. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  496. package/dist/unstable/ai/IdGenerator.js +2 -2
  497. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  498. package/dist/unstable/ai/LanguageModel.d.ts +119 -49
  499. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  500. package/dist/unstable/ai/LanguageModel.js +260 -61
  501. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  502. package/dist/unstable/ai/McpSchema.d.ts +236 -141
  503. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  504. package/dist/unstable/ai/McpSchema.js +71 -19
  505. package/dist/unstable/ai/McpSchema.js.map +1 -1
  506. package/dist/unstable/ai/McpServer.d.ts +68 -15
  507. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  508. package/dist/unstable/ai/McpServer.js +218 -73
  509. package/dist/unstable/ai/McpServer.js.map +1 -1
  510. package/dist/unstable/ai/Model.d.ts +27 -9
  511. package/dist/unstable/ai/Model.d.ts.map +1 -1
  512. package/dist/unstable/ai/Model.js +25 -9
  513. package/dist/unstable/ai/Model.js.map +1 -1
  514. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  515. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  516. package/dist/unstable/ai/OpenAiStructuredOutput.js +9 -1
  517. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  518. package/dist/unstable/ai/Prompt.d.ts +20 -20
  519. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  520. package/dist/unstable/ai/Prompt.js +6 -9
  521. package/dist/unstable/ai/Prompt.js.map +1 -1
  522. package/dist/unstable/ai/Response.d.ts +27 -27
  523. package/dist/unstable/ai/Response.d.ts.map +1 -1
  524. package/dist/unstable/ai/Response.js +7 -8
  525. package/dist/unstable/ai/Response.js.map +1 -1
  526. package/dist/unstable/ai/ResponseIdTracker.d.ts +38 -0
  527. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -0
  528. package/dist/unstable/ai/ResponseIdTracker.js +68 -0
  529. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -0
  530. package/dist/unstable/ai/Telemetry.d.ts +35 -2
  531. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  532. package/dist/unstable/ai/Telemetry.js +2 -2
  533. package/dist/unstable/ai/Telemetry.js.map +1 -1
  534. package/dist/unstable/ai/Tokenizer.d.ts +2 -2
  535. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  536. package/dist/unstable/ai/Tokenizer.js +2 -2
  537. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  538. package/dist/unstable/ai/Tool.d.ts +46 -16
  539. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  540. package/dist/unstable/ai/Tool.js +68 -22
  541. package/dist/unstable/ai/Tool.js.map +1 -1
  542. package/dist/unstable/ai/Toolkit.d.ts +4 -4
  543. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  544. package/dist/unstable/ai/Toolkit.js +14 -21
  545. package/dist/unstable/ai/Toolkit.js.map +1 -1
  546. package/dist/unstable/ai/index.d.ts +22 -1
  547. package/dist/unstable/ai/index.d.ts.map +1 -1
  548. package/dist/unstable/ai/index.js +22 -1
  549. package/dist/unstable/ai/index.js.map +1 -1
  550. package/dist/unstable/ai/internal/codec-transformer.js +5 -7
  551. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  552. package/dist/unstable/cli/Argument.d.ts +4 -7
  553. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  554. package/dist/unstable/cli/Argument.js +1 -3
  555. package/dist/unstable/cli/Argument.js.map +1 -1
  556. package/dist/unstable/cli/CliError.d.ts +55 -67
  557. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  558. package/dist/unstable/cli/CliError.js +32 -57
  559. package/dist/unstable/cli/CliError.js.map +1 -1
  560. package/dist/unstable/cli/CliOutput.d.ts +5 -4
  561. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  562. package/dist/unstable/cli/CliOutput.js +67 -12
  563. package/dist/unstable/cli/CliOutput.js.map +1 -1
  564. package/dist/unstable/cli/Command.d.ts +372 -59
  565. package/dist/unstable/cli/Command.d.ts.map +1 -1
  566. package/dist/unstable/cli/Command.js +328 -66
  567. package/dist/unstable/cli/Command.js.map +1 -1
  568. package/dist/unstable/cli/Completions.d.ts +97 -0
  569. package/dist/unstable/cli/Completions.d.ts.map +1 -0
  570. package/dist/unstable/cli/Completions.js +25 -0
  571. package/dist/unstable/cli/Completions.js.map +1 -0
  572. package/dist/unstable/cli/Flag.d.ts +4 -5
  573. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  574. package/dist/unstable/cli/Flag.js +1 -1
  575. package/dist/unstable/cli/Flag.js.map +1 -1
  576. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  577. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  578. package/dist/unstable/cli/GlobalFlag.js +118 -0
  579. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  580. package/dist/unstable/cli/HelpDoc.d.ts +81 -11
  581. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  582. package/dist/unstable/cli/Param.d.ts +34 -6
  583. package/dist/unstable/cli/Param.d.ts.map +1 -1
  584. package/dist/unstable/cli/Param.js +24 -14
  585. package/dist/unstable/cli/Param.js.map +1 -1
  586. package/dist/unstable/cli/Primitive.d.ts +2 -2
  587. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  588. package/dist/unstable/cli/Primitive.js +1 -1
  589. package/dist/unstable/cli/Primitive.js.map +1 -1
  590. package/dist/unstable/cli/Prompt.js +266 -86
  591. package/dist/unstable/cli/Prompt.js.map +1 -1
  592. package/dist/unstable/cli/index.d.ts +8 -0
  593. package/dist/unstable/cli/index.d.ts.map +1 -1
  594. package/dist/unstable/cli/index.js +8 -0
  595. package/dist/unstable/cli/index.js.map +1 -1
  596. package/dist/unstable/cli/internal/command.d.ts +41 -15
  597. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  598. package/dist/unstable/cli/internal/command.js +84 -47
  599. package/dist/unstable/cli/internal/command.js.map +1 -1
  600. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  601. package/dist/unstable/cli/internal/completions/descriptor.d.ts +2 -0
  602. package/dist/unstable/cli/internal/completions/descriptor.d.ts.map +1 -0
  603. package/dist/unstable/cli/internal/completions/{CommandDescriptor.js → descriptor.js} +17 -5
  604. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -0
  605. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  606. package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
  607. package/dist/unstable/cli/internal/config.js +42 -0
  608. package/dist/unstable/cli/internal/config.js.map +1 -1
  609. package/dist/unstable/cli/internal/help.d.ts +33 -0
  610. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  611. package/dist/unstable/cli/internal/help.js +125 -0
  612. package/dist/unstable/cli/internal/help.js.map +1 -0
  613. package/dist/unstable/cli/internal/parser.js +155 -58
  614. package/dist/unstable/cli/internal/parser.js.map +1 -1
  615. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  616. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  617. package/dist/unstable/cluster/ClusterCron.js +1 -1
  618. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  619. package/dist/unstable/cluster/ClusterError.d.ts +7 -7
  620. package/dist/unstable/cluster/ClusterSchema.d.ts +28 -7
  621. package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
  622. package/dist/unstable/cluster/ClusterSchema.js +28 -8
  623. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  624. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +4 -2
  625. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  626. package/dist/unstable/cluster/ClusterWorkflowEngine.js +97 -63
  627. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  628. package/dist/unstable/cluster/DeliverAt.js +1 -1
  629. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  630. package/dist/unstable/cluster/Entity.d.ts +18 -16
  631. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  632. package/dist/unstable/cluster/Entity.js +31 -25
  633. package/dist/unstable/cluster/Entity.js.map +1 -1
  634. package/dist/unstable/cluster/EntityAddress.d.ts +2 -2
  635. package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
  636. package/dist/unstable/cluster/EntityAddress.js +1 -1
  637. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  638. package/dist/unstable/cluster/EntityProxy.js +3 -3
  639. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  640. package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
  641. package/dist/unstable/cluster/EntityProxyServer.js +4 -4
  642. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  643. package/dist/unstable/cluster/EntityResource.d.ts +4 -4
  644. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  645. package/dist/unstable/cluster/EntityResource.js +2 -2
  646. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  647. package/dist/unstable/cluster/Envelope.d.ts +4 -4
  648. package/dist/unstable/cluster/HttpRunner.js +2 -2
  649. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  650. package/dist/unstable/cluster/K8sHttpClient.d.ts +5 -5
  651. package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
  652. package/dist/unstable/cluster/K8sHttpClient.js +6 -6
  653. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  654. package/dist/unstable/cluster/Message.d.ts +21 -15
  655. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  656. package/dist/unstable/cluster/Message.js +16 -8
  657. package/dist/unstable/cluster/Message.js.map +1 -1
  658. package/dist/unstable/cluster/MessageStorage.d.ts +46 -23
  659. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  660. package/dist/unstable/cluster/MessageStorage.js +42 -26
  661. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  662. package/dist/unstable/cluster/Reply.d.ts +10 -9
  663. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  664. package/dist/unstable/cluster/Reply.js +8 -7
  665. package/dist/unstable/cluster/Reply.js.map +1 -1
  666. package/dist/unstable/cluster/Runner.d.ts +2 -2
  667. package/dist/unstable/cluster/Runner.d.ts.map +1 -1
  668. package/dist/unstable/cluster/Runner.js +1 -1
  669. package/dist/unstable/cluster/Runner.js.map +1 -1
  670. package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
  671. package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
  672. package/dist/unstable/cluster/RunnerAddress.js +1 -1
  673. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  674. package/dist/unstable/cluster/RunnerHealth.d.ts +2 -2
  675. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  676. package/dist/unstable/cluster/RunnerHealth.js +2 -2
  677. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  678. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  679. package/dist/unstable/cluster/RunnerServer.js +10 -9
  680. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  681. package/dist/unstable/cluster/RunnerStorage.d.ts +12 -12
  682. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  683. package/dist/unstable/cluster/RunnerStorage.js +3 -3
  684. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  685. package/dist/unstable/cluster/Runners.d.ts +5 -4
  686. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  687. package/dist/unstable/cluster/Runners.js +20 -17
  688. package/dist/unstable/cluster/Runners.js.map +1 -1
  689. package/dist/unstable/cluster/ShardId.d.ts +35 -49
  690. package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
  691. package/dist/unstable/cluster/ShardId.js +65 -67
  692. package/dist/unstable/cluster/ShardId.js.map +1 -1
  693. package/dist/unstable/cluster/Sharding.d.ts +4 -4
  694. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  695. package/dist/unstable/cluster/Sharding.js +66 -54
  696. package/dist/unstable/cluster/Sharding.js.map +1 -1
  697. package/dist/unstable/cluster/ShardingConfig.d.ts +28 -27
  698. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  699. package/dist/unstable/cluster/ShardingConfig.js +27 -27
  700. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  701. package/dist/unstable/cluster/SingletonAddress.d.ts +2 -2
  702. package/dist/unstable/cluster/Snowflake.d.ts +2 -2
  703. package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
  704. package/dist/unstable/cluster/Snowflake.js +2 -2
  705. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  706. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  707. package/dist/unstable/cluster/SqlMessageStorage.js +24 -20
  708. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  709. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  710. package/dist/unstable/cluster/SqlRunnerStorage.js +7 -7
  711. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  712. package/dist/unstable/cluster/internal/entityManager.js +34 -27
  713. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  714. package/dist/unstable/cluster/internal/entityReaper.js +4 -3
  715. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  716. package/dist/unstable/cluster/internal/resourceMap.js +3 -3
  717. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  718. package/dist/unstable/cluster/internal/resourceRef.js +2 -1
  719. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  720. package/dist/unstable/devtools/DevToolsClient.d.ts +2 -2
  721. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  722. package/dist/unstable/devtools/DevToolsClient.js +9 -8
  723. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  724. package/dist/unstable/devtools/DevToolsSchema.d.ts +40 -40
  725. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  726. package/dist/unstable/devtools/DevToolsSchema.js +9 -2
  727. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  728. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  729. package/dist/unstable/encoding/Ndjson.d.ts +9 -9
  730. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  731. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  732. package/dist/unstable/encoding/Sse.d.ts +4 -4
  733. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  734. package/dist/unstable/encoding/Sse.js +1 -1
  735. package/dist/unstable/encoding/Sse.js.map +1 -1
  736. package/dist/unstable/eventlog/Event.d.ts +0 -6
  737. package/dist/unstable/eventlog/Event.d.ts.map +1 -1
  738. package/dist/unstable/eventlog/Event.js +0 -5
  739. package/dist/unstable/eventlog/Event.js.map +1 -1
  740. package/dist/unstable/eventlog/EventGroup.d.ts +0 -2
  741. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  742. package/dist/unstable/eventlog/EventGroup.js +0 -2
  743. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  744. package/dist/unstable/eventlog/EventJournal.d.ts +28 -11
  745. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  746. package/dist/unstable/eventlog/EventJournal.js +130 -71
  747. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  748. package/dist/unstable/eventlog/EventLog.d.ts +94 -37
  749. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  750. package/dist/unstable/eventlog/EventLog.js +225 -150
  751. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  752. package/dist/unstable/eventlog/EventLogEncryption.d.ts +11 -9
  753. package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
  754. package/dist/unstable/eventlog/EventLogEncryption.js +15 -17
  755. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  756. package/dist/unstable/eventlog/EventLogMessage.d.ts +228 -0
  757. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -0
  758. package/dist/unstable/eventlog/EventLogMessage.js +214 -0
  759. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -0
  760. package/dist/unstable/eventlog/EventLogRemote.d.ts +112 -194
  761. package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
  762. package/dist/unstable/eventlog/EventLogRemote.js +168 -322
  763. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  764. package/dist/unstable/eventlog/EventLogServer.d.ts +26 -48
  765. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  766. package/dist/unstable/eventlog/EventLogServer.js +128 -199
  767. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  768. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +60 -0
  769. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -0
  770. package/dist/unstable/eventlog/EventLogServerEncrypted.js +166 -0
  771. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -0
  772. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +183 -0
  773. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -0
  774. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +461 -0
  775. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -0
  776. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +117 -0
  777. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -0
  778. package/dist/unstable/eventlog/EventLogSessionAuth.js +284 -0
  779. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -0
  780. package/dist/unstable/eventlog/{SqlEventLogJournal.d.ts → SqlEventJournal.d.ts} +2 -2
  781. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -0
  782. package/dist/unstable/eventlog/{SqlEventLogJournal.js → SqlEventJournal.js} +28 -21
  783. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -0
  784. package/dist/unstable/eventlog/{SqlEventLogServer.d.ts → SqlEventLogServerEncrypted.d.ts} +5 -5
  785. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -0
  786. package/dist/unstable/eventlog/{SqlEventLogServer.js → SqlEventLogServerEncrypted.js} +69 -27
  787. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -0
  788. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +25 -0
  789. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -0
  790. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +355 -0
  791. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -0
  792. package/dist/unstable/eventlog/index.d.ts +22 -2
  793. package/dist/unstable/eventlog/index.d.ts.map +1 -1
  794. package/dist/unstable/eventlog/index.js +22 -2
  795. package/dist/unstable/eventlog/index.js.map +1 -1
  796. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts +2 -0
  797. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts.map +1 -0
  798. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js +89 -0
  799. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -0
  800. package/dist/unstable/http/Cookies.d.ts +52 -7
  801. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  802. package/dist/unstable/http/Cookies.js +27 -6
  803. package/dist/unstable/http/Cookies.js.map +1 -1
  804. package/dist/unstable/http/Etag.d.ts +2 -2
  805. package/dist/unstable/http/Etag.d.ts.map +1 -1
  806. package/dist/unstable/http/Etag.js +7 -3
  807. package/dist/unstable/http/Etag.js.map +1 -1
  808. package/dist/unstable/http/FetchHttpClient.d.ts +6 -3
  809. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  810. package/dist/unstable/http/FetchHttpClient.js +5 -5
  811. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  812. package/dist/unstable/http/Headers.d.ts +24 -4
  813. package/dist/unstable/http/Headers.d.ts.map +1 -1
  814. package/dist/unstable/http/Headers.js +42 -13
  815. package/dist/unstable/http/Headers.js.map +1 -1
  816. package/dist/unstable/http/HttpBody.d.ts +1 -1
  817. package/dist/unstable/http/HttpClient.d.ts +125 -21
  818. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  819. package/dist/unstable/http/HttpClient.js +197 -19
  820. package/dist/unstable/http/HttpClient.js.map +1 -1
  821. package/dist/unstable/http/HttpClientError.d.ts +8 -8
  822. package/dist/unstable/http/HttpClientRequest.d.ts +43 -15
  823. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  824. package/dist/unstable/http/HttpClientRequest.js +131 -21
  825. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  826. package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
  827. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  828. package/dist/unstable/http/HttpClientResponse.js +6 -1
  829. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  830. package/dist/unstable/http/HttpEffect.d.ts +13 -11
  831. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  832. package/dist/unstable/http/HttpEffect.js +67 -75
  833. package/dist/unstable/http/HttpEffect.js.map +1 -1
  834. package/dist/unstable/http/HttpIncomingMessage.d.ts +5 -4
  835. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  836. package/dist/unstable/http/HttpIncomingMessage.js +2 -2
  837. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  838. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  839. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  840. package/dist/unstable/http/HttpMethod.js +3 -3
  841. package/dist/unstable/http/HttpMethod.js.map +1 -1
  842. package/dist/unstable/http/HttpMiddleware.d.ts +4 -9
  843. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  844. package/dist/unstable/http/HttpMiddleware.js +47 -43
  845. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  846. package/dist/unstable/http/HttpPlatform.d.ts +2 -2
  847. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  848. package/dist/unstable/http/HttpPlatform.js +5 -4
  849. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  850. package/dist/unstable/http/HttpRouter.d.ts +9 -8
  851. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  852. package/dist/unstable/http/HttpRouter.js +36 -36
  853. package/dist/unstable/http/HttpRouter.js.map +1 -1
  854. package/dist/unstable/http/HttpServer.d.ts +2 -2
  855. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  856. package/dist/unstable/http/HttpServer.js +4 -4
  857. package/dist/unstable/http/HttpServer.js.map +1 -1
  858. package/dist/unstable/http/HttpServerError.d.ts +22 -34
  859. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  860. package/dist/unstable/http/HttpServerError.js +39 -45
  861. package/dist/unstable/http/HttpServerError.js.map +1 -1
  862. package/dist/unstable/http/HttpServerRequest.d.ts +19 -7
  863. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  864. package/dist/unstable/http/HttpServerRequest.js +307 -13
  865. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  866. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  867. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  868. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  869. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  870. package/dist/unstable/http/HttpServerResponse.d.ts +52 -5
  871. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  872. package/dist/unstable/http/HttpServerResponse.js +240 -5
  873. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  874. package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
  875. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
  876. package/dist/unstable/http/HttpStaticServer.js +353 -0
  877. package/dist/unstable/http/HttpStaticServer.js.map +1 -0
  878. package/dist/unstable/http/HttpTraceContext.d.ts +3 -2
  879. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  880. package/dist/unstable/http/HttpTraceContext.js +27 -15
  881. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  882. package/dist/unstable/http/Multipart.d.ts +9 -9
  883. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  884. package/dist/unstable/http/Multipart.js +7 -7
  885. package/dist/unstable/http/Multipart.js.map +1 -1
  886. package/dist/unstable/http/Url.d.ts +604 -0
  887. package/dist/unstable/http/Url.d.ts.map +1 -0
  888. package/dist/unstable/http/Url.js +256 -0
  889. package/dist/unstable/http/Url.js.map +1 -0
  890. package/dist/unstable/http/UrlParams.d.ts +19 -10
  891. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  892. package/dist/unstable/http/UrlParams.js +6 -7
  893. package/dist/unstable/http/UrlParams.js.map +1 -1
  894. package/dist/unstable/http/index.d.ts +8 -0
  895. package/dist/unstable/http/index.d.ts.map +1 -1
  896. package/dist/unstable/http/index.js +8 -0
  897. package/dist/unstable/http/index.js.map +1 -1
  898. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  899. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  900. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  901. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  902. package/dist/unstable/httpapi/HttpApi.d.ts +11 -11
  903. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  904. package/dist/unstable/httpapi/HttpApi.js +8 -8
  905. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  906. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +12 -9
  907. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  908. package/dist/unstable/httpapi/HttpApiBuilder.js +53 -39
  909. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  910. package/dist/unstable/httpapi/HttpApiClient.d.ts +83 -7
  911. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  912. package/dist/unstable/httpapi/HttpApiClient.js +79 -11
  913. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  914. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +211 -105
  915. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  916. package/dist/unstable/httpapi/HttpApiEndpoint.js +53 -47
  917. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  918. package/dist/unstable/httpapi/HttpApiError.d.ts +43 -26
  919. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  920. package/dist/unstable/httpapi/HttpApiError.js +125 -32
  921. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  922. package/dist/unstable/httpapi/HttpApiGroup.d.ts +9 -8
  923. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  924. package/dist/unstable/httpapi/HttpApiGroup.js +4 -4
  925. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  926. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +49 -18
  927. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  928. package/dist/unstable/httpapi/HttpApiMiddleware.js +38 -8
  929. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  930. package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
  931. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  932. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  933. package/dist/unstable/httpapi/HttpApiSchema.d.ts +88 -9
  934. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  935. package/dist/unstable/httpapi/HttpApiSchema.js +86 -11
  936. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  937. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +9 -6
  938. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  939. package/dist/unstable/httpapi/HttpApiSecurity.js +6 -6
  940. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  941. package/dist/unstable/httpapi/OpenApi.d.ts +17 -25
  942. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  943. package/dist/unstable/httpapi/OpenApi.js +59 -60
  944. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  945. package/dist/unstable/observability/Otlp.d.ts +12 -12
  946. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  947. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  948. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  949. package/dist/unstable/observability/OtlpExporter.js +8 -8
  950. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  951. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  952. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  953. package/dist/unstable/observability/OtlpLogger.js +7 -4
  954. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  955. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  956. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  957. package/dist/unstable/observability/OtlpMetrics.js +2 -2
  958. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  959. package/dist/unstable/observability/OtlpSerialization.d.ts +2 -2
  960. package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
  961. package/dist/unstable/observability/OtlpSerialization.js +2 -2
  962. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  963. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  964. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  965. package/dist/unstable/observability/OtlpTracer.js +7 -3
  966. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  967. package/dist/unstable/observability/PrometheusMetrics.d.ts +3 -3
  968. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  969. package/dist/unstable/observability/PrometheusMetrics.js +4 -33
  970. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  971. package/dist/unstable/observability/internal/protobuf.js +4 -4
  972. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  973. package/dist/unstable/persistence/KeyValueStore.d.ts +24 -3
  974. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  975. package/dist/unstable/persistence/KeyValueStore.js +148 -6
  976. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  977. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  978. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  979. package/dist/unstable/persistence/Persistable.js +1 -1
  980. package/dist/unstable/persistence/Persistable.js.map +1 -1
  981. package/dist/unstable/persistence/PersistedCache.d.ts +6 -6
  982. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  983. package/dist/unstable/persistence/PersistedCache.js +12 -12
  984. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  985. package/dist/unstable/persistence/PersistedQueue.d.ts +16 -16
  986. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  987. package/dist/unstable/persistence/PersistedQueue.js +15 -14
  988. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  989. package/dist/unstable/persistence/Persistence.d.ts +5 -5
  990. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  991. package/dist/unstable/persistence/Persistence.js +5 -5
  992. package/dist/unstable/persistence/Persistence.js.map +1 -1
  993. package/dist/unstable/persistence/RateLimiter.d.ts +9 -9
  994. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  995. package/dist/unstable/persistence/RateLimiter.js +4 -4
  996. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  997. package/dist/unstable/persistence/Redis.d.ts +3 -3
  998. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  999. package/dist/unstable/persistence/Redis.js +2 -2
  1000. package/dist/unstable/persistence/Redis.js.map +1 -1
  1001. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  1002. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1003. package/dist/unstable/process/ChildProcess.js +1 -65
  1004. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1005. package/dist/unstable/process/ChildProcessSpawner.d.ts +89 -8
  1006. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1007. package/dist/unstable/process/ChildProcessSpawner.js +22 -2
  1008. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1009. package/dist/unstable/reactivity/Atom.d.ts +108 -47
  1010. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1011. package/dist/unstable/reactivity/Atom.js +105 -25
  1012. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1013. package/dist/unstable/reactivity/AtomHttpApi.d.ts +22 -20
  1014. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1015. package/dist/unstable/reactivity/AtomHttpApi.js +58 -26
  1016. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1017. package/dist/unstable/reactivity/AtomRegistry.d.ts +8 -2
  1018. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  1019. package/dist/unstable/reactivity/AtomRegistry.js +57 -14
  1020. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1021. package/dist/unstable/reactivity/AtomRpc.d.ts +12 -12
  1022. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1023. package/dist/unstable/reactivity/AtomRpc.js +59 -31
  1024. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1025. package/dist/unstable/reactivity/Reactivity.d.ts +2 -2
  1026. package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
  1027. package/dist/unstable/reactivity/Reactivity.js +6 -6
  1028. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1029. package/dist/unstable/reactivity/index.d.ts +2 -2
  1030. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  1031. package/dist/unstable/reactivity/index.js +2 -2
  1032. package/dist/unstable/reactivity/index.js.map +1 -1
  1033. package/dist/unstable/rpc/Rpc.d.ts +47 -19
  1034. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1035. package/dist/unstable/rpc/Rpc.js +39 -7
  1036. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1037. package/dist/unstable/rpc/RpcClient.d.ts +26 -47
  1038. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1039. package/dist/unstable/rpc/RpcClient.js +120 -77
  1040. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1041. package/dist/unstable/rpc/RpcClientError.d.ts +2 -2
  1042. package/dist/unstable/rpc/RpcGroup.d.ts +15 -11
  1043. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  1044. package/dist/unstable/rpc/RpcGroup.js +30 -20
  1045. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1046. package/dist/unstable/rpc/RpcMiddleware.d.ts +12 -12
  1047. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  1048. package/dist/unstable/rpc/RpcMiddleware.js +5 -5
  1049. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1050. package/dist/unstable/rpc/RpcSchema.d.ts +14 -1
  1051. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  1052. package/dist/unstable/rpc/RpcSchema.js +17 -2
  1053. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1054. package/dist/unstable/rpc/RpcSerialization.d.ts +13 -2
  1055. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1056. package/dist/unstable/rpc/RpcSerialization.js +60 -27
  1057. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1058. package/dist/unstable/rpc/RpcServer.d.ts +8 -12
  1059. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  1060. package/dist/unstable/rpc/RpcServer.js +78 -46
  1061. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1062. package/dist/unstable/rpc/RpcWorker.d.ts +2 -2
  1063. package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
  1064. package/dist/unstable/rpc/RpcWorker.js +4 -4
  1065. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1066. package/dist/unstable/rpc/Utils.d.ts +6 -3
  1067. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  1068. package/dist/unstable/rpc/Utils.js +48 -6
  1069. package/dist/unstable/rpc/Utils.js.map +1 -1
  1070. package/dist/unstable/schema/Model.d.ts +24 -3
  1071. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1072. package/dist/unstable/schema/Model.js +17 -4
  1073. package/dist/unstable/schema/Model.js.map +1 -1
  1074. package/dist/unstable/schema/VariantSchema.d.ts +7 -7
  1075. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  1076. package/dist/unstable/schema/VariantSchema.js +7 -18
  1077. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1078. package/dist/unstable/socket/Socket.d.ts +16 -15
  1079. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1080. package/dist/unstable/socket/Socket.js +22 -19
  1081. package/dist/unstable/socket/Socket.js.map +1 -1
  1082. package/dist/unstable/socket/SocketServer.d.ts +8 -5
  1083. package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
  1084. package/dist/unstable/socket/SocketServer.js +2 -2
  1085. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1086. package/dist/unstable/sql/Migrator.d.ts +1 -1
  1087. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  1088. package/dist/unstable/sql/Migrator.js +2 -2
  1089. package/dist/unstable/sql/Migrator.js.map +1 -1
  1090. package/dist/unstable/sql/SqlClient.d.ts +5 -5
  1091. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1092. package/dist/unstable/sql/SqlClient.js +7 -7
  1093. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1094. package/dist/unstable/sql/SqlConnection.d.ts +2 -2
  1095. package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
  1096. package/dist/unstable/sql/SqlConnection.js +5 -2
  1097. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1098. package/dist/unstable/sql/SqlError.d.ts +237 -17
  1099. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  1100. package/dist/unstable/sql/SqlError.js +260 -4
  1101. package/dist/unstable/sql/SqlError.js.map +1 -1
  1102. package/dist/unstable/sql/SqlModel.d.ts +8 -9
  1103. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  1104. package/dist/unstable/sql/SqlModel.js +12 -38
  1105. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1106. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  1107. package/dist/unstable/sql/SqlResolver.js +26 -17
  1108. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1109. package/dist/unstable/sql/SqlSchema.d.ts +17 -6
  1110. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  1111. package/dist/unstable/sql/SqlSchema.js +17 -7
  1112. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1113. package/dist/unstable/sql/Statement.d.ts +2 -2
  1114. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  1115. package/dist/unstable/sql/Statement.js +2 -3
  1116. package/dist/unstable/sql/Statement.js.map +1 -1
  1117. package/dist/unstable/workers/Transferable.d.ts +4 -4
  1118. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  1119. package/dist/unstable/workers/Transferable.js +7 -7
  1120. package/dist/unstable/workers/Transferable.js.map +1 -1
  1121. package/dist/unstable/workers/Worker.d.ts +3 -3
  1122. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  1123. package/dist/unstable/workers/Worker.js +8 -4
  1124. package/dist/unstable/workers/Worker.js.map +1 -1
  1125. package/dist/unstable/workers/WorkerError.d.ts +5 -5
  1126. package/dist/unstable/workers/WorkerRunner.d.ts +2 -2
  1127. package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
  1128. package/dist/unstable/workers/WorkerRunner.js +5 -2
  1129. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1130. package/dist/unstable/workflow/Activity.d.ts +7 -2
  1131. package/dist/unstable/workflow/Activity.d.ts.map +1 -1
  1132. package/dist/unstable/workflow/Activity.js +17 -4
  1133. package/dist/unstable/workflow/Activity.js.map +1 -1
  1134. package/dist/unstable/workflow/DurableClock.d.ts +3 -6
  1135. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  1136. package/dist/unstable/workflow/DurableClock.js +6 -6
  1137. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1138. package/dist/unstable/workflow/DurableDeferred.d.ts +1 -1
  1139. package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
  1140. package/dist/unstable/workflow/DurableDeferred.js +15 -15
  1141. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1142. package/dist/unstable/workflow/Workflow.d.ts +13 -12
  1143. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1144. package/dist/unstable/workflow/Workflow.js +18 -18
  1145. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1146. package/dist/unstable/workflow/WorkflowEngine.d.ts +26 -8
  1147. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  1148. package/dist/unstable/workflow/WorkflowEngine.js +167 -17
  1149. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1150. package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
  1151. package/dist/unstable/workflow/WorkflowProxyServer.js +4 -4
  1152. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1153. package/package.json +11 -11
  1154. package/src/Array.ts +304 -447
  1155. package/src/BigDecimal.ts +137 -82
  1156. package/src/BigInt.ts +53 -45
  1157. package/src/Brand.ts +3 -5
  1158. package/src/Cache.ts +27 -54
  1159. package/src/Cause.ts +58 -23
  1160. package/src/Channel.ts +693 -224
  1161. package/src/Chunk.ts +149 -331
  1162. package/src/Clock.ts +2 -2
  1163. package/src/Combiner.ts +280 -13
  1164. package/src/Config.ts +197 -27
  1165. package/src/ConfigProvider.ts +5 -5
  1166. package/src/Console.ts +2 -2
  1167. package/src/Context.ts +1454 -0
  1168. package/src/Cron.ts +155 -63
  1169. package/src/Data.ts +539 -376
  1170. package/src/DateTime.ts +77 -258
  1171. package/src/Deferred.ts +15 -6
  1172. package/src/Duration.ts +123 -67
  1173. package/src/Effect.ts +1629 -1355
  1174. package/src/Encoding.ts +879 -0
  1175. package/src/Equal.ts +295 -111
  1176. package/src/Equivalence.ts +114 -52
  1177. package/src/ErrorReporter.ts +458 -0
  1178. package/src/ExecutionPlan.ts +8 -9
  1179. package/src/Exit.ts +24 -12
  1180. package/src/Fiber.ts +17 -8
  1181. package/src/FiberHandle.ts +15 -14
  1182. package/src/FiberMap.ts +27 -27
  1183. package/src/FiberSet.ts +5 -5
  1184. package/src/FileSystem.ts +34 -30
  1185. package/src/Filter.ts +4 -62
  1186. package/src/Formatter.ts +253 -51
  1187. package/src/Function.ts +2 -10
  1188. package/src/Graph.ts +131 -117
  1189. package/src/Hash.ts +2 -2
  1190. package/src/HashMap.ts +26 -19
  1191. package/src/Iterable.ts +117 -63
  1192. package/src/JsonSchema.ts +383 -10
  1193. package/src/Latch.ts +194 -0
  1194. package/src/Layer.ts +728 -441
  1195. package/src/LayerMap.ts +38 -35
  1196. package/src/LogLevel.ts +37 -0
  1197. package/src/Logger.ts +35 -102
  1198. package/src/ManagedRuntime.ts +61 -48
  1199. package/src/Metric.ts +64 -66
  1200. package/src/MutableHashMap.ts +9 -0
  1201. package/src/MutableHashSet.ts +9 -0
  1202. package/src/MutableList.ts +3 -0
  1203. package/src/Newtype.ts +308 -0
  1204. package/src/Number.ts +98 -29
  1205. package/src/Optic.ts +948 -19
  1206. package/src/Option.ts +34 -24
  1207. package/src/Order.ts +39 -32
  1208. package/src/PartitionedSemaphore.ts +288 -56
  1209. package/src/Path.ts +2 -2
  1210. package/src/Pipeable.ts +32 -1
  1211. package/src/Pool.ts +18 -16
  1212. package/src/PubSub.ts +30 -20
  1213. package/src/Pull.ts +1 -1
  1214. package/src/Queue.ts +11 -9
  1215. package/src/Random.ts +51 -14
  1216. package/src/RcMap.ts +19 -19
  1217. package/src/RcRef.ts +1 -1
  1218. package/src/Record.ts +94 -199
  1219. package/src/Redactable.ts +146 -72
  1220. package/src/Reducer.ts +166 -7
  1221. package/src/References.ts +283 -287
  1222. package/src/Request.ts +8 -7
  1223. package/src/RequestResolver.ts +34 -55
  1224. package/src/Resource.ts +6 -5
  1225. package/src/Result.ts +2 -4
  1226. package/src/Runtime.ts +102 -6
  1227. package/src/Schedule.ts +460 -451
  1228. package/src/Scheduler.ts +52 -129
  1229. package/src/Schema.ts +4267 -752
  1230. package/src/SchemaAST.ts +480 -302
  1231. package/src/SchemaGetter.ts +92 -38
  1232. package/src/SchemaIssue.ts +28 -15
  1233. package/src/SchemaParser.ts +100 -29
  1234. package/src/SchemaRepresentation.ts +59 -32
  1235. package/src/SchemaTransformation.ts +364 -13
  1236. package/src/Scope.ts +2 -2
  1237. package/src/ScopedCache.ts +8 -8
  1238. package/src/Semaphore.ts +442 -0
  1239. package/src/Sink.ts +89 -34
  1240. package/src/Stdio.ts +29 -6
  1241. package/src/Stream.ts +898 -752
  1242. package/src/String.ts +122 -69
  1243. package/src/Struct.ts +33 -7
  1244. package/src/SubscriptionRef.ts +101 -120
  1245. package/src/SynchronizedRef.ts +3 -2
  1246. package/src/Terminal.ts +5 -4
  1247. package/src/Tracer.ts +23 -22
  1248. package/src/Trie.ts +44 -31
  1249. package/src/TxChunk.ts +26 -16
  1250. package/src/TxDeferred.ts +391 -0
  1251. package/src/TxHashMap.ts +347 -291
  1252. package/src/TxHashSet.ts +54 -61
  1253. package/src/TxPriorityQueue.ts +762 -0
  1254. package/src/TxPubSub.ts +787 -0
  1255. package/src/TxQueue.ts +221 -245
  1256. package/src/TxReentrantLock.ts +729 -0
  1257. package/src/TxRef.ts +31 -31
  1258. package/src/TxSemaphore.ts +203 -31
  1259. package/src/TxSubscriptionRef.ts +637 -0
  1260. package/src/Types.ts +78 -17
  1261. package/src/Unify.ts +26 -2
  1262. package/src/Utils.ts +137 -111
  1263. package/src/index.ts +898 -72
  1264. package/src/internal/core.ts +19 -12
  1265. package/src/internal/dateTime.ts +91 -96
  1266. package/src/internal/effect.ts +1150 -611
  1267. package/src/internal/hashMap.ts +12 -10
  1268. package/src/internal/layer.ts +7 -7
  1269. package/src/internal/option.ts +7 -0
  1270. package/src/internal/random.ts +20 -0
  1271. package/src/internal/rcRef.ts +14 -13
  1272. package/src/internal/references.ts +72 -0
  1273. package/src/internal/request.ts +8 -8
  1274. package/src/internal/schedule.ts +3 -1
  1275. package/src/internal/schema/annotations.ts +2 -0
  1276. package/src/internal/schema/representation.ts +81 -95
  1277. package/src/internal/schema/schema.ts +25 -1
  1278. package/src/internal/schema/to-codec.ts +7 -17
  1279. package/src/internal/trie.ts +21 -15
  1280. package/src/testing/TestClock.ts +13 -11
  1281. package/src/testing/TestSchema.ts +333 -36
  1282. package/src/testing/index.ts +64 -1
  1283. package/src/unstable/ai/AiError.ts +112 -54
  1284. package/src/unstable/ai/AnthropicStructuredOutput.ts +7 -3
  1285. package/src/unstable/ai/Chat.ts +137 -88
  1286. package/src/unstable/ai/EmbeddingModel.ts +209 -0
  1287. package/src/unstable/ai/IdGenerator.ts +2 -2
  1288. package/src/unstable/ai/LanguageModel.ts +685 -255
  1289. package/src/unstable/ai/McpSchema.ts +84 -22
  1290. package/src/unstable/ai/McpServer.ts +299 -87
  1291. package/src/unstable/ai/Model.ts +44 -13
  1292. package/src/unstable/ai/OpenAiStructuredOutput.ts +9 -2
  1293. package/src/unstable/ai/Prompt.ts +43 -49
  1294. package/src/unstable/ai/Response.ts +31 -33
  1295. package/src/unstable/ai/ResponseIdTracker.ts +95 -0
  1296. package/src/unstable/ai/Telemetry.ts +2 -2
  1297. package/src/unstable/ai/Tokenizer.ts +2 -2
  1298. package/src/unstable/ai/Tool.ts +62 -36
  1299. package/src/unstable/ai/Toolkit.ts +17 -26
  1300. package/src/unstable/ai/index.ts +24 -1
  1301. package/src/unstable/ai/internal/codec-transformer.ts +3 -9
  1302. package/src/unstable/cli/Argument.ts +5 -8
  1303. package/src/unstable/cli/CliError.ts +67 -66
  1304. package/src/unstable/cli/CliOutput.ts +87 -15
  1305. package/src/unstable/cli/Command.ts +808 -193
  1306. package/src/unstable/cli/Completions.ts +107 -0
  1307. package/src/unstable/cli/Flag.ts +5 -6
  1308. package/src/unstable/cli/GlobalFlag.ts +242 -0
  1309. package/src/unstable/cli/HelpDoc.ts +91 -11
  1310. package/src/unstable/cli/Param.ts +54 -27
  1311. package/src/unstable/cli/Primitive.ts +2 -2
  1312. package/src/unstable/cli/Prompt.ts +275 -104
  1313. package/src/unstable/cli/index.ts +10 -0
  1314. package/src/unstable/cli/internal/command.ts +125 -64
  1315. package/src/unstable/cli/internal/completions/bash.ts +7 -7
  1316. package/src/unstable/cli/internal/completions/{CommandDescriptor.ts → descriptor.ts} +16 -58
  1317. package/src/unstable/cli/internal/completions/fish.ts +7 -7
  1318. package/src/unstable/cli/internal/completions/zsh.ts +8 -14
  1319. package/src/unstable/cli/internal/config.ts +49 -0
  1320. package/src/unstable/cli/internal/help.ts +171 -0
  1321. package/src/unstable/cli/internal/parser.ts +201 -84
  1322. package/src/unstable/cluster/ClusterCron.ts +2 -2
  1323. package/src/unstable/cluster/ClusterSchema.ts +38 -10
  1324. package/src/unstable/cluster/ClusterWorkflowEngine.ts +144 -81
  1325. package/src/unstable/cluster/DeliverAt.ts +1 -1
  1326. package/src/unstable/cluster/Entity.ts +59 -45
  1327. package/src/unstable/cluster/EntityAddress.ts +1 -1
  1328. package/src/unstable/cluster/EntityProxy.ts +3 -3
  1329. package/src/unstable/cluster/EntityProxyServer.ts +4 -4
  1330. package/src/unstable/cluster/EntityResource.ts +6 -6
  1331. package/src/unstable/cluster/Envelope.ts +1 -1
  1332. package/src/unstable/cluster/HttpRunner.ts +2 -2
  1333. package/src/unstable/cluster/K8sHttpClient.ts +7 -7
  1334. package/src/unstable/cluster/Message.ts +30 -17
  1335. package/src/unstable/cluster/MessageStorage.ts +76 -46
  1336. package/src/unstable/cluster/Reply.ts +13 -10
  1337. package/src/unstable/cluster/Runner.ts +1 -1
  1338. package/src/unstable/cluster/RunnerAddress.ts +1 -1
  1339. package/src/unstable/cluster/RunnerHealth.ts +2 -2
  1340. package/src/unstable/cluster/RunnerServer.ts +11 -14
  1341. package/src/unstable/cluster/RunnerStorage.ts +9 -9
  1342. package/src/unstable/cluster/Runners.ts +28 -23
  1343. package/src/unstable/cluster/ShardId.ts +84 -74
  1344. package/src/unstable/cluster/Sharding.ts +83 -66
  1345. package/src/unstable/cluster/ShardingConfig.ts +39 -40
  1346. package/src/unstable/cluster/Snowflake.ts +2 -2
  1347. package/src/unstable/cluster/SqlMessageStorage.ts +29 -20
  1348. package/src/unstable/cluster/SqlRunnerStorage.ts +13 -7
  1349. package/src/unstable/cluster/internal/entityManager.ts +66 -46
  1350. package/src/unstable/cluster/internal/entityReaper.ts +4 -3
  1351. package/src/unstable/cluster/internal/resourceMap.ts +3 -3
  1352. package/src/unstable/cluster/internal/resourceRef.ts +2 -1
  1353. package/src/unstable/devtools/DevToolsClient.ts +26 -21
  1354. package/src/unstable/devtools/DevToolsSchema.ts +16 -3
  1355. package/src/unstable/encoding/Ndjson.ts +17 -17
  1356. package/src/unstable/encoding/Sse.ts +3 -5
  1357. package/src/unstable/eventlog/Event.ts +0 -8
  1358. package/src/unstable/eventlog/EventGroup.ts +0 -4
  1359. package/src/unstable/eventlog/EventJournal.ts +148 -80
  1360. package/src/unstable/eventlog/EventLog.ts +360 -233
  1361. package/src/unstable/eventlog/EventLogEncryption.ts +18 -32
  1362. package/src/unstable/eventlog/EventLogMessage.ts +277 -0
  1363. package/src/unstable/eventlog/EventLogRemote.ts +264 -410
  1364. package/src/unstable/eventlog/EventLogServer.ts +183 -275
  1365. package/src/unstable/eventlog/EventLogServerEncrypted.ts +206 -0
  1366. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +749 -0
  1367. package/src/unstable/eventlog/EventLogSessionAuth.ts +437 -0
  1368. package/src/unstable/eventlog/{SqlEventLogJournal.ts → SqlEventJournal.ts} +38 -22
  1369. package/src/unstable/eventlog/{SqlEventLogServer.ts → SqlEventLogServerEncrypted.ts} +110 -43
  1370. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +506 -0
  1371. package/src/unstable/eventlog/index.ts +27 -2
  1372. package/src/unstable/eventlog/internal/identityRootSecretDerivation.ts +153 -0
  1373. package/src/unstable/http/Cookies.ts +94 -11
  1374. package/src/unstable/http/Etag.ts +7 -5
  1375. package/src/unstable/http/FetchHttpClient.ts +5 -5
  1376. package/src/unstable/http/Headers.ts +70 -20
  1377. package/src/unstable/http/HttpClient.ts +385 -42
  1378. package/src/unstable/http/HttpClientRequest.ts +151 -39
  1379. package/src/unstable/http/HttpClientResponse.ts +12 -6
  1380. package/src/unstable/http/HttpEffect.ts +86 -100
  1381. package/src/unstable/http/HttpIncomingMessage.ts +5 -4
  1382. package/src/unstable/http/HttpMethod.ts +16 -4
  1383. package/src/unstable/http/HttpMiddleware.ts +50 -50
  1384. package/src/unstable/http/HttpPlatform.ts +5 -4
  1385. package/src/unstable/http/HttpRouter.ts +46 -46
  1386. package/src/unstable/http/HttpServer.ts +5 -11
  1387. package/src/unstable/http/HttpServerError.ts +45 -47
  1388. package/src/unstable/http/HttpServerRequest.ts +414 -23
  1389. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  1390. package/src/unstable/http/HttpServerResponse.ts +351 -13
  1391. package/src/unstable/http/HttpStaticServer.ts +456 -0
  1392. package/src/unstable/http/HttpTraceContext.ts +31 -17
  1393. package/src/unstable/http/Multipart.ts +10 -10
  1394. package/src/unstable/http/Url.ts +650 -0
  1395. package/src/unstable/http/UrlParams.ts +31 -19
  1396. package/src/unstable/http/index.ts +10 -0
  1397. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  1398. package/src/unstable/httpapi/HttpApi.ts +21 -21
  1399. package/src/unstable/httpapi/HttpApiBuilder.ts +128 -55
  1400. package/src/unstable/httpapi/HttpApiClient.ts +186 -34
  1401. package/src/unstable/httpapi/HttpApiEndpoint.ts +225 -113
  1402. package/src/unstable/httpapi/HttpApiError.ts +108 -30
  1403. package/src/unstable/httpapi/HttpApiGroup.ts +18 -17
  1404. package/src/unstable/httpapi/HttpApiMiddleware.ts +95 -33
  1405. package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
  1406. package/src/unstable/httpapi/HttpApiSchema.ts +106 -11
  1407. package/src/unstable/httpapi/HttpApiSecurity.ts +13 -13
  1408. package/src/unstable/httpapi/OpenApi.ts +73 -72
  1409. package/src/unstable/observability/Otlp.ts +12 -12
  1410. package/src/unstable/observability/OtlpExporter.ts +14 -10
  1411. package/src/unstable/observability/OtlpLogger.ts +13 -9
  1412. package/src/unstable/observability/OtlpMetrics.ts +6 -6
  1413. package/src/unstable/observability/OtlpSerialization.ts +2 -2
  1414. package/src/unstable/observability/OtlpTracer.ts +14 -10
  1415. package/src/unstable/observability/PrometheusMetrics.ts +5 -5
  1416. package/src/unstable/observability/internal/protobuf.ts +4 -4
  1417. package/src/unstable/persistence/KeyValueStore.ts +230 -7
  1418. package/src/unstable/persistence/Persistable.ts +3 -3
  1419. package/src/unstable/persistence/PersistedCache.ts +35 -21
  1420. package/src/unstable/persistence/PersistedQueue.ts +28 -27
  1421. package/src/unstable/persistence/Persistence.ts +7 -7
  1422. package/src/unstable/persistence/RateLimiter.ts +7 -7
  1423. package/src/unstable/persistence/Redis.ts +2 -2
  1424. package/src/unstable/process/ChildProcess.ts +6 -208
  1425. package/src/unstable/process/ChildProcessSpawner.ts +120 -15
  1426. package/src/unstable/reactivity/Atom.ts +280 -124
  1427. package/src/unstable/reactivity/AtomHttpApi.ts +115 -59
  1428. package/src/unstable/reactivity/AtomRegistry.ts +70 -16
  1429. package/src/unstable/reactivity/AtomRpc.ts +82 -37
  1430. package/src/unstable/reactivity/Reactivity.ts +6 -6
  1431. package/src/unstable/reactivity/index.ts +2 -2
  1432. package/src/unstable/rpc/Rpc.ts +77 -32
  1433. package/src/unstable/rpc/RpcClient.ts +165 -145
  1434. package/src/unstable/rpc/RpcGroup.ts +51 -34
  1435. package/src/unstable/rpc/RpcMiddleware.ts +28 -22
  1436. package/src/unstable/rpc/RpcSchema.ts +24 -6
  1437. package/src/unstable/rpc/RpcSerialization.ts +97 -54
  1438. package/src/unstable/rpc/RpcServer.ts +97 -69
  1439. package/src/unstable/rpc/RpcWorker.ts +5 -5
  1440. package/src/unstable/rpc/Utils.ts +65 -5
  1441. package/src/unstable/schema/Model.ts +35 -6
  1442. package/src/unstable/schema/VariantSchema.ts +14 -27
  1443. package/src/unstable/socket/Socket.ts +42 -38
  1444. package/src/unstable/socket/SocketServer.ts +2 -2
  1445. package/src/unstable/sql/Migrator.ts +7 -5
  1446. package/src/unstable/sql/SqlClient.ts +13 -11
  1447. package/src/unstable/sql/SqlConnection.ts +2 -2
  1448. package/src/unstable/sql/SqlError.ts +365 -11
  1449. package/src/unstable/sql/SqlModel.ts +57 -85
  1450. package/src/unstable/sql/SqlResolver.ts +26 -16
  1451. package/src/unstable/sql/SqlSchema.ts +42 -26
  1452. package/src/unstable/sql/Statement.ts +2 -3
  1453. package/src/unstable/workers/Transferable.ts +17 -19
  1454. package/src/unstable/workers/Worker.ts +6 -5
  1455. package/src/unstable/workers/WorkerRunner.ts +2 -2
  1456. package/src/unstable/workflow/Activity.ts +27 -4
  1457. package/src/unstable/workflow/DurableClock.ts +11 -11
  1458. package/src/unstable/workflow/DurableDeferred.ts +16 -16
  1459. package/src/unstable/workflow/Workflow.ts +32 -25
  1460. package/src/unstable/workflow/WorkflowEngine.ts +239 -25
  1461. package/src/unstable/workflow/WorkflowProxyServer.ts +4 -4
  1462. package/dist/NullOr.d.ts +0 -149
  1463. package/dist/NullOr.d.ts.map +0 -1
  1464. package/dist/NullOr.js +0 -152
  1465. package/dist/NullOr.js.map +0 -1
  1466. package/dist/ServiceMap.d.ts +0 -1126
  1467. package/dist/ServiceMap.d.ts.map +0 -1
  1468. package/dist/ServiceMap.js.map +0 -1
  1469. package/dist/encoding/Base64.d.ts +0 -67
  1470. package/dist/encoding/Base64.d.ts.map +0 -1
  1471. package/dist/encoding/Base64.js +0 -146
  1472. package/dist/encoding/Base64.js.map +0 -1
  1473. package/dist/encoding/Base64Url.d.ts +0 -60
  1474. package/dist/encoding/Base64Url.d.ts.map +0 -1
  1475. package/dist/encoding/Base64Url.js +0 -89
  1476. package/dist/encoding/Base64Url.js.map +0 -1
  1477. package/dist/encoding/EncodingError.d.ts +0 -31
  1478. package/dist/encoding/EncodingError.d.ts.map +0 -1
  1479. package/dist/encoding/EncodingError.js +0 -22
  1480. package/dist/encoding/EncodingError.js.map +0 -1
  1481. package/dist/encoding/Hex.d.ts +0 -61
  1482. package/dist/encoding/Hex.d.ts.map +0 -1
  1483. package/dist/encoding/Hex.js +0 -115
  1484. package/dist/encoding/Hex.js.map +0 -1
  1485. package/dist/encoding/index.d.ts +0 -26
  1486. package/dist/encoding/index.d.ts.map +0 -1
  1487. package/dist/encoding/index.js +0 -27
  1488. package/dist/encoding/index.js.map +0 -1
  1489. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  1490. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  1491. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  1492. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  1493. package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts +0 -2
  1494. package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts.map +0 -1
  1495. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +0 -1
  1496. package/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
  1497. package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
  1498. package/dist/unstable/cli/internal/completions/Completions.js +0 -23
  1499. package/dist/unstable/cli/internal/completions/Completions.js.map +0 -1
  1500. package/dist/unstable/eventlog/SqlEventLogJournal.d.ts.map +0 -1
  1501. package/dist/unstable/eventlog/SqlEventLogJournal.js.map +0 -1
  1502. package/dist/unstable/eventlog/SqlEventLogServer.d.ts.map +0 -1
  1503. package/dist/unstable/eventlog/SqlEventLogServer.js.map +0 -1
  1504. package/src/NullOr.ts +0 -204
  1505. package/src/ServiceMap.ts +0 -1410
  1506. package/src/encoding/Base64.ts +0 -366
  1507. package/src/encoding/Base64Url.ts +0 -104
  1508. package/src/encoding/EncodingError.ts +0 -35
  1509. package/src/encoding/Hex.ts +0 -390
  1510. package/src/encoding/index.ts +0 -31
  1511. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
  1512. package/src/unstable/cli/internal/completions/Completions.ts +0 -31
package/dist/index.d.ts CHANGED
@@ -9,7 +9,7 @@ absurd,
9
9
  /**
10
10
  * @since 2.0.0
11
11
  */
12
- coerceUnsafe,
12
+ cast,
13
13
  /**
14
14
  * @since 2.0.0
15
15
  */
@@ -428,6 +428,65 @@ export * as Chunk from "./Chunk.ts";
428
428
  */
429
429
  export * as Clock from "./Clock.ts";
430
430
  /**
431
+ * A module for combining two values of the same type into one.
432
+ *
433
+ * A `Combiner<A>` wraps a single binary function `(self: A, that: A) => A`.
434
+ * It describes *how* two values merge but carries no initial/empty value
435
+ * (for that, see {@link Reducer} which extends `Combiner` with an
436
+ * `initialValue`).
437
+ *
438
+ * ## Mental model
439
+ *
440
+ * - **Combiner** – an object with a `combine(self, that)` method that returns
441
+ * a value of the same type.
442
+ * - **Argument order** – `self` is the "left" / accumulator side, `that` is
443
+ * the "right" / incoming side.
444
+ * - **No identity element** – unlike a monoid, a `Combiner` does not require
445
+ * a neutral element. Use {@link Reducer} when you need one.
446
+ * - **Purity** – all combiners produced by this module are pure; they never
447
+ * mutate their arguments.
448
+ * - **Composability** – combiners can be lifted into `Option`, `Struct`,
449
+ * `Tuple`, and other container types via helpers in those modules.
450
+ *
451
+ * ## Common tasks
452
+ *
453
+ * - Create a combiner from any binary function → {@link make}
454
+ * - Swap argument order → {@link flip}
455
+ * - Pick the smaller / larger of two values → {@link min} / {@link max}
456
+ * - Always keep the first or last value → {@link first} / {@link last}
457
+ * - Ignore both values and return a fixed result → {@link constant}
458
+ * - Insert a separator between combined values → {@link intercalate}
459
+ *
460
+ * ## Gotchas
461
+ *
462
+ * - `min` and `max` require an `Order<A>`, not a raw comparator. Import from
463
+ * e.g. `Number.Order` or `String.Order`.
464
+ * - `intercalate` is curried: call it with the separator first, then pass the
465
+ * base combiner.
466
+ * - A `Reducer` (which adds `initialValue`) is also a valid `Combiner` — you
467
+ * can pass a `Reducer` anywhere a `Combiner` is expected.
468
+ *
469
+ * ## Quickstart
470
+ *
471
+ * **Example** (combining strings with a separator)
472
+ *
473
+ * ```ts
474
+ * import { Combiner, String } from "effect"
475
+ *
476
+ * const csv = Combiner.intercalate(",")(String.ReducerConcat)
477
+ *
478
+ * console.log(csv.combine("a", "b"))
479
+ * // Output: "a,b"
480
+ *
481
+ * console.log(csv.combine(csv.combine("a", "b"), "c"))
482
+ * // Output: "a,b,c"
483
+ * ```
484
+ *
485
+ * ## See also
486
+ *
487
+ * - {@link make} – the primary constructor
488
+ * - {@link Combiner} – the core interface
489
+ *
431
490
  * @since 4.0.0
432
491
  */
433
492
  export * as Combiner from "./Combiner.ts";
@@ -447,7 +506,7 @@ export * as Combiner from "./Combiner.ts";
447
506
  * - **parse** – instance method on every `Config` that takes a provider and
448
507
  * returns `Effect<T, ConfigError>`.
449
508
  * - **Yieldable** – every `Config` can be yielded inside `Effect.gen`. It
450
- * automatically resolves the current `ConfigProvider` from the service map.
509
+ * automatically resolves the current `ConfigProvider` from the context.
451
510
  *
452
511
  * ## Common tasks
453
512
  *
@@ -519,7 +578,7 @@ export * as Config from "./Config.ts";
519
578
  * (e.g. `["database", "host"]`).
520
579
  * - **ConfigProvider** – an object with a `load(path)` method that resolves a
521
580
  * path to a `Node | undefined`. Providers can be composed and transformed.
522
- * - **ServiceMap.Reference** – `ConfigProvider` is registered as a reference
581
+ * - **Context.Reference** – `ConfigProvider` is registered as a reference
523
582
  * service that defaults to `fromEnv()`, so it works without explicit
524
583
  * provision.
525
584
  * - **SourceError** – the typed error returned when a backing store is
@@ -658,20 +717,93 @@ export * as ConfigProvider from "./ConfigProvider.ts";
658
717
  * @since 2.0.0
659
718
  */
660
719
  export * as Console from "./Console.ts";
720
+ /**
721
+ * This module provides a data structure called `Context` that can be used
722
+ * for dependency injection in effectful programs. It is essentially a table
723
+ * mapping `Service`s identifiers to their implementations, and can be used to
724
+ * manage dependencies in a type-safe way. The `Context` data structure is
725
+ * essentially a way of providing access to a set of related services that can
726
+ * be passed around as a single unit. This module provides functions to create,
727
+ * modify, and query the contents of a `Context`, as well as a number of
728
+ * utility types for working with a `Context`.
729
+ *
730
+ * @since 4.0.0
731
+ */
732
+ export * as Context from "./Context.ts";
661
733
  /**
662
734
  * @since 2.0.0
663
735
  */
664
736
  export * as Cron from "./Cron.ts";
665
737
  /**
666
- * This module provides utilities for creating data types with structural equality
667
- * semantics. Unlike regular JavaScript objects, `Data` types support value-based
668
- * equality comparison using the `Equal` module.
738
+ * Immutable data constructors with discriminated-union support.
739
+ *
740
+ * The `Data` module provides base classes and factory functions for creating
741
+ * immutable value types with a `_tag` field for discriminated unions.
742
+ * It is the recommended way to define domain models, error types, and
743
+ * lightweight ADTs in Effect applications.
744
+ *
745
+ * ## Mental model
746
+ *
747
+ * - **`Class`** — base class for plain immutable data. Extend it with a type
748
+ * parameter to declare the fields. Instances are `Pipeable`.
749
+ * - **`TaggedClass`** — like `Class` but automatically adds a `readonly _tag`
750
+ * string literal field. Useful for single-variant types or ad-hoc tagged
751
+ * values.
752
+ * - **`TaggedEnum`** (type) + **`taggedEnum`** (value) — define a multi-variant
753
+ * discriminated union from a simple record. `taggedEnum()` returns per-variant
754
+ * constructors plus `$is` / `$match` helpers.
755
+ * - **`Error`** — like `Class` but extends `Cause.YieldableError`, so instances
756
+ * can be yielded inside `Effect.gen` to fail the effect.
757
+ * - **`TaggedError`** — like `TaggedClass` but extends `Cause.YieldableError`.
758
+ * Works with `Effect.catchTag` for tag-based error recovery.
759
+ *
760
+ * ## Common tasks
761
+ *
762
+ * - Define a simple value class → {@link Class}
763
+ * - Define a value class with a `_tag` → {@link TaggedClass}
764
+ * - Define a discriminated union with constructors → {@link TaggedEnum} + {@link taggedEnum}
765
+ * - Define a yieldable error → {@link Error}
766
+ * - Define a yieldable tagged error → {@link TaggedError}
767
+ * - Type-guard a tagged value → `$is` from {@link taggedEnum}
768
+ * - Pattern-match on a tagged union → `$match` from {@link taggedEnum}
769
+ *
770
+ * ## Gotchas
771
+ *
772
+ * - Variant records passed to `TaggedEnum` must **not** contain a `_tag` key;
773
+ * the `_tag` is added automatically from the record key.
774
+ * - When a class has no fields, the constructor argument is optional (`void`).
775
+ * - `taggedEnum()` creates **plain objects**, not class instances. If you need
776
+ * class-based variants, use `TaggedClass` or `TaggedError` instead.
777
+ * - `TaggedEnum.WithGenerics` supports up to 4 generic type parameters.
669
778
  *
670
- * The main benefits of using `Data` types are:
671
- * - **Structural equality**: Two `Data` objects are equal if their contents are equal
672
- * - **Immutability**: `Data` types are designed to be immutable
673
- * - **Type safety**: Constructors ensure type safety and consistency
674
- * - **Effect integration**: Error types work seamlessly with Effect's error handling
779
+ * ## Quickstart
780
+ *
781
+ * **Example** (tagged union with pattern matching)
782
+ *
783
+ * ```ts
784
+ * import { Data } from "effect"
785
+ *
786
+ * type Shape = Data.TaggedEnum<{
787
+ * Circle: { readonly radius: number }
788
+ * Rect: { readonly width: number; readonly height: number }
789
+ * }>
790
+ * const { Circle, Rect, $match } = Data.taggedEnum<Shape>()
791
+ *
792
+ * const area = $match({
793
+ * Circle: ({ radius }) => Math.PI * radius ** 2,
794
+ * Rect: ({ width, height }) => width * height
795
+ * })
796
+ *
797
+ * console.log(area(Circle({ radius: 5 })))
798
+ * // 78.53981633974483
799
+ * console.log(area(Rect({ width: 3, height: 4 })))
800
+ * // 12
801
+ * ```
802
+ *
803
+ * @see {@link Class} — plain immutable data class
804
+ * @see {@link TaggedEnum} — discriminated union type
805
+ * @see {@link taggedEnum} — discriminated union constructors
806
+ * @see {@link TaggedError} — yieldable tagged error class
675
807
  *
676
808
  * @since 2.0.0
677
809
  */
@@ -811,12 +943,14 @@ export * as Duration from "./Duration.ts";
811
943
  *
812
944
  * @example
813
945
  * ```ts
814
- * import { Effect } from "effect"
946
+ * import { Data, Effect } from "effect"
947
+ *
948
+ * class DiscountRateError extends Data.TaggedError("DiscountRateError")<{}> {}
815
949
  *
816
950
  * // Effect that may fail
817
951
  * const divide = (a: number, b: number) =>
818
952
  * b === 0
819
- * ? Effect.fail(new Error("Division by zero"))
953
+ * ? Effect.fail(new DiscountRateError())
820
954
  * : Effect.succeed(a / b)
821
955
  *
822
956
  * // Error handling
@@ -839,9 +973,79 @@ export * as Duration from "./Duration.ts";
839
973
  */
840
974
  export * as Effect from "./Effect.ts";
841
975
  /**
842
- * This module provides functionality for defining and working with equality between values.
843
- * It includes the `Equal` interface for types that can determine equality with other values
844
- * of the same type, and utilities for comparing values.
976
+ * Encoding & decoding for Base64 (RFC4648), Base64Url, and Hex.
977
+ *
978
+ * @since 4.0.0
979
+ */
980
+ export * as Encoding from "./Encoding.ts";
981
+ /**
982
+ * Structural and custom equality for Effect values.
983
+ *
984
+ * The `Equal` module provides deep structural comparison for primitives, plain
985
+ * objects, arrays, Maps, Sets, Dates, and RegExps. Types that implement the
986
+ * {@link Equal} interface can supply their own comparison logic while staying
987
+ * compatible with the rest of the ecosystem (HashMap, HashSet, etc.).
988
+ *
989
+ * ## Mental model
990
+ *
991
+ * - **Structural equality** — two values are equal when their contents match,
992
+ * not when they share the same reference.
993
+ * - **Hash-first shortcut** — before comparing fields, the module checks
994
+ * {@link Hash.hash}. If the hashes differ the objects are unequal without
995
+ * further traversal.
996
+ * - **Equal interface** — any object that implements both {@link symbol} (the
997
+ * equality method) and `Hash.symbol` (the hash method) can define custom
998
+ * comparison logic.
999
+ * - **Caching** — comparison results for object pairs are cached in a WeakMap.
1000
+ * This makes repeated checks fast but **requires immutability** after the
1001
+ * first comparison.
1002
+ * - **By-reference opt-out** — {@link byReference} and {@link byReferenceUnsafe}
1003
+ * let you switch individual objects back to reference equality when you need
1004
+ * mutable identity semantics.
1005
+ *
1006
+ * ## Common tasks
1007
+ *
1008
+ * - Compare two values → {@link equals}
1009
+ * - Check if a value implements `Equal` → {@link isEqual}
1010
+ * - Use `equals` where an `Equivalence` is expected → {@link asEquivalence}
1011
+ * - Implement custom equality on a class → implement {@link Equal} (see
1012
+ * example on the interface)
1013
+ * - Opt an object out of structural equality → {@link byReference} /
1014
+ * {@link byReferenceUnsafe}
1015
+ *
1016
+ * ## Gotchas
1017
+ *
1018
+ * - Objects **must be treated as immutable** after their first equality check.
1019
+ * Results are cached; mutating an object afterwards yields stale results.
1020
+ * - `NaN` is considered equal to `NaN` (unlike `===`).
1021
+ * - Functions without an `Equal` implementation are compared by reference.
1022
+ * - Map and Set comparisons are order-independent but O(n²) in size.
1023
+ * - If only one of two objects implements `Equal`, they are never equal.
1024
+ *
1025
+ * ## Quickstart
1026
+ *
1027
+ * **Example** (basic structural comparison)
1028
+ *
1029
+ * ```ts
1030
+ * import { Equal } from "effect"
1031
+ *
1032
+ * // Primitives
1033
+ * console.log(Equal.equals(1, 1)) // true
1034
+ * console.log(Equal.equals("a", "b")) // false
1035
+ *
1036
+ * // Objects and arrays
1037
+ * console.log(Equal.equals({ x: 1 }, { x: 1 })) // true
1038
+ * console.log(Equal.equals([1, 2], [1, 2])) // true
1039
+ *
1040
+ * // Curried form
1041
+ * const is42 = Equal.equals(42)
1042
+ * console.log(is42(42)) // true
1043
+ * console.log(is42(0)) // false
1044
+ * ```
1045
+ *
1046
+ * @see {@link equals} — the main comparison function
1047
+ * @see {@link Equal} — the interface for custom equality
1048
+ * @see {@link Hash} — the companion hashing module
845
1049
  *
846
1050
  * @since 2.0.0
847
1051
  */
@@ -866,7 +1070,7 @@ export * as Equal from "./Equal.ts";
866
1070
  * - Using strict equality (`===`) → {@link strictEqual}
867
1071
  * - Combining multiple equivalences (AND logic) → {@link combine}, {@link combineAll}
868
1072
  * - Transforming input before comparison → {@link mapInput}
869
- * - Creating equivalences for structured types → {@link Struct}, {@link Tuple}, {@link Array}, {@link Record}
1073
+ * - Creating equivalences for structured types → {@link Struct}, {@link Tuple}, {@link Array_}, {@link Record}
870
1074
  *
871
1075
  * ## Gotchas
872
1076
  *
@@ -894,12 +1098,63 @@ export * as Equal from "./Equal.ts";
894
1098
  * ## See also
895
1099
  *
896
1100
  * - {@link Equal} - For structural equality (can convert to Equivalence)
897
- * - {@link Array.dedupeWith} - Remove duplicates using an equivalence
1101
+ * - {@link Array_.dedupeWith} - Remove duplicates using an equivalence
898
1102
  * - {@link Chunk} - Collections that use equivalences for operations
899
1103
  *
900
1104
  * @since 2.0.0
901
1105
  */
902
1106
  export * as Equivalence from "./Equivalence.ts";
1107
+ /**
1108
+ * Pluggable error reporting for Effect programs.
1109
+ *
1110
+ * Reporting is triggered by `Effect.withErrorReporting`,
1111
+ * `ErrorReporter.report`, or built-in reporting boundaries in the HTTP and
1112
+ * RPC server modules.
1113
+ *
1114
+ * Each reporter receives a structured callback with the failing `Cause`, a
1115
+ * pretty-printed `Error`, severity, and any extra attributes attached to the
1116
+ * original error — making it straightforward to forward failures to Sentry,
1117
+ * Datadog, or a custom logging backend.
1118
+ *
1119
+ * Use the annotation symbols (`ignore`, `severity`, `attributes`) on your
1120
+ * error classes to control reporting behavior per-error.
1121
+ *
1122
+ * @example
1123
+ * ```ts
1124
+ * import { Data, Effect, ErrorReporter } from "effect"
1125
+ *
1126
+ * // A reporter that logs to the console
1127
+ * const consoleReporter = ErrorReporter.make(({ error, severity }) => {
1128
+ * console.error(`[${severity}]`, error.message)
1129
+ * })
1130
+ *
1131
+ * // An error that should be ignored by reporters
1132
+ * class NotFoundError extends Data.TaggedError("NotFoundError")<{}> {
1133
+ * readonly [ErrorReporter.ignore] = true
1134
+ * }
1135
+ *
1136
+ * // An error with custom severity and attributes
1137
+ * class RateLimitError extends Data.TaggedError("RateLimitError")<{
1138
+ * readonly retryAfter: number
1139
+ * }> {
1140
+ * readonly [ErrorReporter.severity] = "Warn" as const
1141
+ * readonly [ErrorReporter.attributes] = {
1142
+ * retryAfter: this.retryAfter
1143
+ * }
1144
+ * }
1145
+ *
1146
+ * // Opt in to error reporting with Effect.withErrorReporting
1147
+ * const program = Effect.gen(function*() {
1148
+ * return yield* new RateLimitError({ retryAfter: 60 })
1149
+ * }).pipe(
1150
+ * Effect.withErrorReporting,
1151
+ * Effect.provide(ErrorReporter.layer([consoleReporter]))
1152
+ * )
1153
+ * ```
1154
+ *
1155
+ * @since 4.0.0
1156
+ */
1157
+ export * as ErrorReporter from "./ErrorReporter.ts";
903
1158
  /**
904
1159
  * @since 3.16.0
905
1160
  */
@@ -1093,6 +1348,57 @@ export * as FileSystem from "./FileSystem.ts";
1093
1348
  */
1094
1349
  export * as Filter from "./Filter.ts";
1095
1350
  /**
1351
+ * Utilities for converting arbitrary JavaScript values into human-readable
1352
+ * strings, with support for circular references, redaction, and common JS
1353
+ * types that `JSON.stringify` handles poorly.
1354
+ *
1355
+ * Mental model:
1356
+ * - A `Formatter<Value, Format>` is a callable `(value: Value) => Format`.
1357
+ * - {@link format} is the general-purpose pretty-printer: it handles
1358
+ * primitives, arrays, objects, `BigInt`, `Symbol`, `Date`, `RegExp`,
1359
+ * `Set`, `Map`, class instances, and circular references.
1360
+ * - {@link formatJson} is a safe `JSON.stringify` wrapper that silently
1361
+ * drops circular references and applies redaction.
1362
+ * - Both functions accept a `space` option for indentation control.
1363
+ *
1364
+ * Common tasks:
1365
+ * - Pretty-print any value for debugging / logging -> {@link format}
1366
+ * - Serialize to JSON safely (no circular throws) -> {@link formatJson}
1367
+ * - Format a single object property key -> {@link formatPropertyKey}
1368
+ * - Format a property path like `["a"]["b"]` -> {@link formatPath}
1369
+ * - Format a `Date` to ISO string safely -> {@link formatDate}
1370
+ *
1371
+ * Gotchas:
1372
+ * - {@link format} output is **not** valid JSON; use {@link formatJson} when
1373
+ * you need parseable JSON.
1374
+ * - {@link format} calls `toString()` on objects by default; pass
1375
+ * `ignoreToString: true` to disable.
1376
+ * - {@link formatJson} silently omits circular references (the key is
1377
+ * dropped from the output).
1378
+ * - Values implementing the `Redactable` protocol are automatically
1379
+ * redacted by both {@link format} and {@link formatJson}.
1380
+ *
1381
+ * **Example** (Pretty-print a value)
1382
+ *
1383
+ * ```ts
1384
+ * import { Formatter } from "effect"
1385
+ *
1386
+ * const obj = { name: "Alice", scores: [100, 97] }
1387
+ * console.log(Formatter.format(obj))
1388
+ * // {"name":"Alice","scores":[100,97]}
1389
+ *
1390
+ * console.log(Formatter.format(obj, { space: 2 }))
1391
+ * // {
1392
+ * // "name": "Alice",
1393
+ * // "scores": [
1394
+ * // 100,
1395
+ * // 97
1396
+ * // ]
1397
+ * // }
1398
+ * ```
1399
+ *
1400
+ * See also: {@link Formatter}, {@link format}, {@link formatJson}
1401
+ *
1096
1402
  * @since 4.0.0
1097
1403
  */
1098
1404
  export * as Formatter from "./Formatter.ts";
@@ -1217,7 +1523,7 @@ export * as Inspectable from "./Inspectable.ts";
1217
1523
  *
1218
1524
  * @example
1219
1525
  * ```ts
1220
- * import { Iterable } from "effect"
1526
+ * import { Iterable, Option } from "effect"
1221
1527
  *
1222
1528
  * // Create iterables
1223
1529
  * const numbers = Iterable.range(1, 5)
@@ -1227,7 +1533,7 @@ export * as Inspectable from "./Inspectable.ts";
1227
1533
  * console.log(Array.from(filtered)) // [6, 8, 10]
1228
1534
  *
1229
1535
  * // Infinite iterables
1230
- * const fibonacci = Iterable.unfold([0, 1], ([a, b]) => [a, [b, a + b]])
1536
+ * const fibonacci = Iterable.unfold([0, 1], ([a, b]) => Option.some([a, [b, a + b]]))
1231
1537
  * const first10 = Iterable.take(fibonacci, 10)
1232
1538
  * console.log(Array.from(first10)) // [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]
1233
1539
  * ```
@@ -1345,9 +1651,96 @@ export * as JsonPatch from "./JsonPatch.ts";
1345
1651
  */
1346
1652
  export * as JsonPointer from "./JsonPointer.ts";
1347
1653
  /**
1654
+ * Convert JSON Schema documents between dialects (Draft-07, Draft-2020-12,
1655
+ * OpenAPI 3.0, OpenAPI 3.1). All dialects are normalized to an internal
1656
+ * `Document<"draft-2020-12">` representation before optional conversion to
1657
+ * an output dialect.
1658
+ *
1659
+ * ## Mental model
1660
+ *
1661
+ * - **JsonSchema** — a plain object with string keys; represents any single
1662
+ * JSON Schema node.
1663
+ * - **Dialect** — one of `"draft-07"`, `"draft-2020-12"`, `"openapi-3.1"`,
1664
+ * or `"openapi-3.0"`.
1665
+ * - **Document** — a structured container holding a root `schema`, its
1666
+ * companion `definitions`, and the target `dialect`. Definitions are
1667
+ * stored separately from the root schema so they can be relocated when
1668
+ * converting between dialects.
1669
+ * - **MultiDocument** — same as `Document` but carries multiple root
1670
+ * schemas (at least one). Useful when generating several schemas that
1671
+ * share a single definitions pool.
1672
+ * - **Definitions** — a `Record<string, JsonSchema>` keyed by definition
1673
+ * name. The ref pointer prefix depends on the dialect.
1674
+ * - **`from*` functions** — parse a raw JSON Schema object into the
1675
+ * canonical `Document<"draft-2020-12">`.
1676
+ * - **`to*` functions** — convert from the canonical representation to a
1677
+ * specific output dialect.
1678
+ *
1679
+ * ## Common tasks
1680
+ *
1681
+ * - Parse a Draft-07 schema → {@link fromSchemaDraft07}
1682
+ * - Parse a Draft-2020-12 schema → {@link fromSchemaDraft2020_12}
1683
+ * - Parse an OpenAPI 3.1 schema → {@link fromSchemaOpenApi3_1}
1684
+ * - Parse an OpenAPI 3.0 schema → {@link fromSchemaOpenApi3_0}
1685
+ * - Convert to Draft-07 output → {@link toDocumentDraft07}
1686
+ * - Convert to OpenAPI 3.1 output → {@link toMultiDocumentOpenApi3_1}
1687
+ * - Resolve a `$ref` against definitions → {@link resolve$ref}
1688
+ * - Inline the root `$ref` of a document → {@link resolveTopLevel$ref}
1689
+ *
1690
+ * ## Gotchas
1691
+ *
1692
+ * - All `from*` functions normalize to `Document<"draft-2020-12">`
1693
+ * regardless of the input dialect.
1694
+ * - Unsupported or unrecognized JSON Schema keywords are silently dropped
1695
+ * during conversion.
1696
+ * - Draft-07 tuple syntax (`items` as array + `additionalItems`) is
1697
+ * converted to 2020-12 form (`prefixItems` + `items`), and vice-versa.
1698
+ * - OpenAPI 3.0 `nullable: true` is expanded into `type` arrays or
1699
+ * `anyOf` unions. The `nullable` keyword is removed.
1700
+ * - OpenAPI 3.0 singular `example` is converted to `examples` (array).
1701
+ * - {@link resolve$ref} only looks up the last segment of the ref path in
1702
+ * the definitions map; it does not follow arbitrary JSON Pointer paths.
1703
+ *
1704
+ * ## Quickstart
1705
+ *
1706
+ * **Example** (Parse a Draft-07 schema and convert to Draft-07 output)
1707
+ *
1708
+ * ```ts
1709
+ * import { JsonSchema } from "effect"
1710
+ *
1711
+ * const raw: JsonSchema.JsonSchema = {
1712
+ * type: "object",
1713
+ * properties: {
1714
+ * name: { type: "string" }
1715
+ * },
1716
+ * required: ["name"]
1717
+ * }
1718
+ *
1719
+ * // Parse into canonical form
1720
+ * const doc = JsonSchema.fromSchemaDraft07(raw)
1721
+ *
1722
+ * // Convert back to Draft-07
1723
+ * const draft07 = JsonSchema.toDocumentDraft07(doc)
1724
+ *
1725
+ * console.log(draft07.dialect) // "draft-07"
1726
+ * console.log(draft07.schema) // { type: "object", properties: { name: { type: "string" } }, required: ["name"] }
1727
+ * ```
1728
+ *
1729
+ * ## See also
1730
+ *
1731
+ * - {@link Document}
1732
+ * - {@link MultiDocument}
1733
+ * - {@link fromSchemaDraft07}
1734
+ * - {@link toDocumentDraft07}
1735
+ * - {@link resolve$ref}
1736
+ *
1348
1737
  * @since 4.0.0
1349
1738
  */
1350
1739
  export * as JsonSchema from "./JsonSchema.ts";
1740
+ /**
1741
+ * @since 3.8.0
1742
+ */
1743
+ export * as Latch from "./Latch.ts";
1351
1744
  /**
1352
1745
  * A `Layer<ROut, E, RIn>` describes how to build one or more services in your
1353
1746
  * application. Services can be injected into effects via
@@ -1870,6 +2263,72 @@ export * as MutableList from "./MutableList.ts";
1870
2263
  * @category data-structures
1871
2264
  */
1872
2265
  export * as MutableRef from "./MutableRef.ts";
2266
+ /**
2267
+ * Lightweight wrapper types that prevent accidental mixing of structurally
2268
+ * identical values (e.g. `UserId` vs `OrderId`, both `string` at runtime).
2269
+ *
2270
+ * **Mental model**
2271
+ *
2272
+ * - **Newtype** — a compile-time wrapper around a **carrier** type (the
2273
+ * underlying primitive or object). At runtime the value is unchanged; the
2274
+ * tag exists only in the type system.
2275
+ * - **Key** — a unique string literal that distinguishes one newtype from
2276
+ * another (e.g. `"Label"`, `"UserId"`).
2277
+ * - **Carrier** — the underlying type the newtype wraps (e.g. `string`,
2278
+ * `number`).
2279
+ * - **Iso** — a lossless two-way conversion between a newtype and its carrier,
2280
+ * created with {@link makeIso}. Use `iso.set(carrier)` to wrap and
2281
+ * `iso.get(newtype)` to unwrap.
2282
+ *
2283
+ * **Common tasks**
2284
+ *
2285
+ * - Define a newtype → declare an `interface` extending
2286
+ * `Newtype.Newtype<Key, Carrier>`
2287
+ * - Wrap / unwrap values → {@link makeIso} (returns an `Optic.Iso`)
2288
+ * - Unwrap only → {@link value}
2289
+ * - Lift an `Equivalence` → {@link makeEquivalence}
2290
+ * - Lift an `Order` → {@link makeOrder}
2291
+ * - Lift a `Combiner` → {@link makeCombiner}
2292
+ * - Lift a `Reducer` → {@link makeReducer}
2293
+ *
2294
+ * **Gotchas**
2295
+ *
2296
+ * - Newtypes are **purely compile-time**. There is zero runtime overhead;
2297
+ * `value` and `makeIso` use identity casts.
2298
+ * - Two newtypes sharing the same key string will be assignable to each other.
2299
+ * Choose unique key strings.
2300
+ * - A newtype value is **not** assignable to its carrier type without
2301
+ * explicitly unwrapping via {@link value} or an iso.
2302
+ *
2303
+ * **Quickstart**
2304
+ *
2305
+ * **Example** (defining and using a newtype)
2306
+ *
2307
+ * ```ts
2308
+ * import { Newtype } from "effect"
2309
+ *
2310
+ * // 1. Define a newtype
2311
+ * interface Label extends Newtype.Newtype<"Label", string> {}
2312
+ *
2313
+ * // 2. Create an iso for wrapping/unwrapping
2314
+ * const labelIso = Newtype.makeIso<Label>()
2315
+ *
2316
+ * // 3. Wrap a raw string
2317
+ * const myLabel: Label = labelIso.set("hello")
2318
+ *
2319
+ * // 4. Unwrap back to string
2320
+ * const raw: string = labelIso.get(myLabel) // "hello"
2321
+ * ```
2322
+ *
2323
+ * **See also**
2324
+ *
2325
+ * - {@link Newtype} (the tagged interface)
2326
+ * - {@link makeIso} (wrap and unwrap)
2327
+ * - {@link value} (unwrap only)
2328
+ *
2329
+ * @since 4.0.0
2330
+ */
2331
+ export * as Newtype from "./Newtype.ts";
1873
2332
  /**
1874
2333
  * @since 2.0.0
1875
2334
  *
@@ -2001,36 +2460,6 @@ export * as MutableRef from "./MutableRef.ts";
2001
2460
  * ```
2002
2461
  */
2003
2462
  export * as NonEmptyIterable from "./NonEmptyIterable.ts";
2004
- /**
2005
- * This module provides small, allocation-free utilities for working with values of type
2006
- * `A | null`, where `null` means "no value".
2007
- *
2008
- * Why not `Option<A>`?
2009
- * In TypeScript, `Option<A>` is often unnecessary. If `null` already models absence
2010
- * in your domain, using `A | null` keeps types simple, avoids extra wrappers, and
2011
- * reduces overhead. The key is that `A` itself must not include `null`; in this
2012
- * module `null` is reserved to mean "no value".
2013
- *
2014
- * When to use `A | null`:
2015
- * - Absence can be represented by `null` in your domain model.
2016
- * - You do not need to distinguish between "no value" and "value is null".
2017
- * - You want straightforward ergonomics and zero extra allocations.
2018
- *
2019
- * When to prefer `Option<A>`:
2020
- * - You must distinguish `None` from `Some(null)` (that is, `null` is a valid
2021
- * payload and carries meaning on its own).
2022
- * - You need a tagged representation for serialization or pattern matching across
2023
- * boundaries where `null` would be ambiguous.
2024
- * - You want the richer `Option` API and are comfortable with the extra wrapper.
2025
- *
2026
- * Lawfulness note:
2027
- * All helpers treat `null` as absence. Do not use these utilities with payloads
2028
- * where `A` can itself be `null`, or you will lose information. If you need to
2029
- * carry `null` as a valid payload, use `Option<A>` instead.
2030
- *
2031
- * @since 4.0.0
2032
- */
2033
- export * as NullOr from "./NullOr.ts";
2034
2463
  /**
2035
2464
  * This module provides utility functions and type class instances for working with the `number` type in TypeScript.
2036
2465
  * It includes functions for basic arithmetic operations.
@@ -2039,11 +2468,100 @@ export * as NullOr from "./NullOr.ts";
2039
2468
  */
2040
2469
  export * as Number from "./Number.ts";
2041
2470
  /**
2042
- * Design: "pretty good" persistency.
2043
- * Real updates copy only the path; unrelated branches keep referential identity.
2044
- * No-op updates may still allocate a new root/parents — callers must not rely on identity for no-ops.
2471
+ * Composable, immutable accessors for reading and updating nested data
2472
+ * structures without mutation.
2473
+ *
2474
+ * **Mental model**
2475
+ *
2476
+ * - **Optic** — a first-class reference to a piece inside a larger structure.
2477
+ * Compose optics to reach deeply nested values.
2478
+ * - **Iso** — lossless two-way conversion (`get`/`set`) between `S` and `A`.
2479
+ * Extends both {@link Lens} and {@link Prism}.
2480
+ * - **Lens** — focuses on exactly one part of `S`. `get` always succeeds;
2481
+ * `replace` needs the original `S` to produce the updated whole.
2482
+ * - **Prism** — focuses on a part that may not be present (e.g. a union
2483
+ * variant). `getResult` can fail; `set` builds a new `S` from `A` alone.
2484
+ * - **Optional** — the most general optic: both reading and writing can fail.
2485
+ * - **Traversal** — focuses on zero or more elements of an array-like
2486
+ * structure. Technically `Optional<S, ReadonlyArray<A>>`.
2487
+ * - **Hierarchy** (strongest → weakest):
2488
+ * `Iso > Lens | Prism > Optional`. Composing a weaker optic with any other
2489
+ * produces the weaker kind.
2490
+ *
2491
+ * **Common tasks**
2492
+ *
2493
+ * - Start a chain → {@link id} (identity iso)
2494
+ * - Drill into a struct key → `.key("name")` / `.optionalKey("name")`
2495
+ * - Drill into a key that may not exist → `.at("name")`
2496
+ * - Narrow a tagged union → `.tag("MyVariant")`
2497
+ * - Narrow by type guard → `.refine(guard)`
2498
+ * - Add validation → `.check(Schema.isGreaterThan(0))`
2499
+ * - Filter out `undefined` → `.notUndefined()`
2500
+ * - Pick/omit struct keys → `.pick(["a","b"])` / `.omit(["c"])`
2501
+ * - Traverse array elements → `.forEach(el => el.key("field"))`
2502
+ * - Build an iso → {@link makeIso}
2503
+ * - Build a lens → {@link makeLens}
2504
+ * - Build a prism → {@link makePrism}, {@link fromChecks}
2505
+ * - Build an optional → {@link makeOptional}
2506
+ * - Focus into `Option.Some` → {@link some}
2507
+ * - Focus into `Result.Success`/`Failure` → {@link success}, {@link failure}
2508
+ * - Convert record ↔ entries → {@link entries}
2509
+ * - Extract all traversal elements → {@link getAll}
2510
+ *
2511
+ * **Gotchas**
2512
+ *
2513
+ * - Updates are structurally persistent: only nodes on the path are cloned.
2514
+ * Unrelated branches keep referential identity. However, **no-op updates
2515
+ * may still allocate** a new root — do not rely on reference identity to
2516
+ * detect no-ops.
2517
+ * - `replace` silently returns the original `S` when the optic cannot focus
2518
+ * (e.g. wrong tag). Use `replaceResult` for explicit failure.
2519
+ * - `modify` also returns the original `S` on focus failure — it never throws.
2520
+ * - `.key()` and `.optionalKey()` do not work on union types (compile error).
2521
+ * - Only plain objects (`Object.prototype` or `null` prototype) and arrays can
2522
+ * be cloned. Class instances cause a runtime error on `replace`/`modify`.
2523
+ *
2524
+ * **Quickstart**
2525
+ *
2526
+ * **Example** (reading and updating nested state)
2527
+ *
2528
+ * ```ts
2529
+ * import { Optic } from "effect"
2530
+ *
2531
+ * type State = { user: { name: string; age: number } }
2532
+ *
2533
+ * const _age = Optic.id<State>().key("user").key("age")
2534
+ *
2535
+ * const s1: State = { user: { name: "Alice", age: 30 } }
2536
+ *
2537
+ * // Read
2538
+ * console.log(_age.get(s1))
2539
+ * // Output: 30
2540
+ *
2541
+ * // Update immutably
2542
+ * const s2 = _age.replace(31, s1)
2543
+ * console.log(s2)
2544
+ * // Output: { user: { name: "Alice", age: 31 } }
2545
+ *
2546
+ * // Modify with a function
2547
+ * const s3 = _age.modify((n) => n + 1)(s1)
2548
+ * console.log(s3)
2549
+ * // Output: { user: { name: "Alice", age: 31 } }
2550
+ *
2551
+ * // Referential identity is preserved for unrelated branches
2552
+ * console.log(s2.user !== s1.user)
2553
+ * // Output: true (on the path)
2554
+ * ```
2555
+ *
2556
+ * **See also**
2557
+ *
2558
+ * - {@link id} — entry point for optic chains
2559
+ * - {@link Lens} / {@link Prism} / {@link Optional} — core optic types
2560
+ * - {@link Traversal} / {@link getAll} — multi-focus optics
2561
+ * - {@link some} / {@link success} / {@link failure} — built-in prisms
2045
2562
  *
2046
2563
  * @since 4.0.0
2564
+ * @module
2047
2565
  */
2048
2566
  export * as Optic from "./Optic.ts";
2049
2567
  /**
@@ -2079,7 +2597,7 @@ export * as Optic from "./Optic.ts";
2079
2597
  * **Gotchas**
2080
2598
  *
2081
2599
  * - `Option.some(null)` is a valid `Some`; use {@link fromNullishOr} to treat `null`/`undefined` as `None`
2082
- * - {@link filterMap} is an alias for {@link flatMap}
2600
+ * - {@link filterMap} uses a `Filter` callback that returns `Result`
2083
2601
  * - {@link getOrThrow} throws a generic `Error`; prefer {@link getOrThrowWith} for custom errors
2084
2602
  * - `None` is a singleton; compare with {@link isNone}, not `===`
2085
2603
  * - When yielded in `Effect.gen`, a `None` becomes a `NoSuchElementError` defect
@@ -2202,8 +2720,7 @@ export * as Order from "./Order.ts";
2202
2720
  */
2203
2721
  export * as Ordering from "./Ordering.ts";
2204
2722
  /**
2205
- * @since 3.19.4
2206
- * @experimental
2723
+ * @since 4.0.0
2207
2724
  */
2208
2725
  export * as PartitionedSemaphore from "./PartitionedSemaphore.ts";
2209
2726
  /**
@@ -2354,6 +2871,71 @@ export * as RcRef from "./RcRef.ts";
2354
2871
  */
2355
2872
  export * as Record from "./Record.ts";
2356
2873
  /**
2874
+ * Context-aware redaction for sensitive values.
2875
+ *
2876
+ * The `Redactable` module provides a protocol for objects that need to present
2877
+ * alternative representations of themselves depending on the runtime context.
2878
+ * Typical use cases include masking secrets, tokens, or personal data in logs, traces,
2879
+ * and serialized output.
2880
+ *
2881
+ * ## Mental model
2882
+ *
2883
+ * - **Redactable** - an object that implements `[symbolRedactable]`, a method
2884
+ * that receives the current `Context` and returns a replacement value.
2885
+ * - **symbolRedactable** - the well-known `Symbol` key that marks an object as
2886
+ * redactable.
2887
+ * - **redact** - the primary entry point: pass any value and get back either its
2888
+ * redacted form (if it is `Redactable`) or the original value unchanged.
2889
+ * - **getRedacted** - lower-level helper that calls `[symbolRedactable]` directly
2890
+ * on a value already known to be `Redactable`.
2891
+ * - The `Context` passed to `[symbolRedactable]` comes from the current fiber.
2892
+ * If no fiber is active, an empty `Context` is used.
2893
+ *
2894
+ * ## Common tasks
2895
+ *
2896
+ * - **Make a value redactable**: implement the {@link Redactable} interface by
2897
+ * adding a `[symbolRedactable]` method.
2898
+ * - **Redact an unknown value**: call {@link redact} - it returns the original
2899
+ * value when it is not redactable.
2900
+ * - **Check if a value is redactable**: use {@link isRedactable}.
2901
+ * - **Get the redacted form of a known `Redactable`**: use {@link getRedacted}.
2902
+ *
2903
+ * ## Gotchas
2904
+ *
2905
+ * - `[symbolRedactable]` receives the fiber's `Context` as its argument.
2906
+ * - Outside of an Effect runtime (no current fiber), `getRedacted` still works
2907
+ * but passes an empty `Context`, so service lookups will not find anything.
2908
+ * - `redact` is not recursive: if a redactable object contains nested
2909
+ * redactable values, only the outermost redaction is applied.
2910
+ *
2911
+ * ## Quickstart
2912
+ *
2913
+ * **Example** (Masking an API key)
2914
+ *
2915
+ * ```ts
2916
+ * import { Context, Redactable } from "effect"
2917
+ *
2918
+ * class ApiKey {
2919
+ * constructor(readonly raw: string) {}
2920
+ *
2921
+ * [Redactable.symbolRedactable](_ctx: Context.Context<never>) {
2922
+ * return this.raw.slice(0, 4) + "..."
2923
+ * }
2924
+ * }
2925
+ *
2926
+ * const key = new ApiKey("sk-1234567890abcdef")
2927
+ *
2928
+ * console.log(Redactable.isRedactable(key)) // true
2929
+ * console.log(Redactable.redact(key)) // "sk-1..."
2930
+ * console.log(Redactable.redact("plain")) // "plain"
2931
+ * ```
2932
+ *
2933
+ * ## See also
2934
+ *
2935
+ * - {@link Redactable} - the interface to implement
2936
+ * - {@link symbolRedactable} - the symbol key
2937
+ * - {@link redact} - the main redaction entry point
2938
+ *
2357
2939
  * @since 4.0.0
2358
2940
  */
2359
2941
  export * as Redactable from "./Redactable.ts";
@@ -2367,6 +2949,71 @@ export * as Redactable from "./Redactable.ts";
2367
2949
  */
2368
2950
  export * as Redacted from "./Redacted.ts";
2369
2951
  /**
2952
+ * A module for reducing collections of values into a single result.
2953
+ *
2954
+ * A `Reducer<A>` extends {@link Combiner.Combiner} by adding an
2955
+ * `initialValue` (identity element) and a `combineAll` method that folds an
2956
+ * entire collection. Think `Array.prototype.reduce`, but packaged as a
2957
+ * reusable, composable value.
2958
+ *
2959
+ * ## Mental model
2960
+ *
2961
+ * - **Reducer** – a {@link Combiner.Combiner} plus an `initialValue` and a
2962
+ * `combineAll` method.
2963
+ * - **initialValue** – the neutral/identity element. Combining any value with
2964
+ * `initialValue` should return the original value unchanged (e.g. `0` for
2965
+ * addition, `""` for string concatenation).
2966
+ * - **combineAll** – folds an `Iterable<A>` starting from `initialValue`.
2967
+ * When omitted from {@link make}, a default left-to-right fold is used.
2968
+ * - **Purity** – all reducers produced by this module are pure; they never
2969
+ * mutate their arguments.
2970
+ * - **Composability** – reducers can be lifted into `Option`, `Struct`,
2971
+ * `Tuple`, `Record`, and other container types via helpers in those modules.
2972
+ * - **Subtype of Combiner** – every `Reducer` is also a valid
2973
+ * `Combiner`, so you can pass a `Reducer` anywhere a `Combiner` is
2974
+ * expected.
2975
+ *
2976
+ * ## Common tasks
2977
+ *
2978
+ * - Create a reducer from a combine function and initial value → {@link make}
2979
+ * - Swap argument order → {@link flip}
2980
+ * - Combine two values without an initial value → use {@link Combiner.Combiner}
2981
+ * instead
2982
+ *
2983
+ * ## Gotchas
2984
+ *
2985
+ * - `combineAll` on an empty iterable returns `initialValue`, not an error.
2986
+ * - The default `combineAll` folds left-to-right. If your `combine` is not
2987
+ * associative, order matters. Pass a custom `combineAll` to {@link make} if
2988
+ * you need different traversal or short-circuiting.
2989
+ * - A `Reducer` is also a valid `Combiner` — but a `Combiner` is *not* a
2990
+ * `Reducer` (it lacks `initialValue`).
2991
+ *
2992
+ * ## Quickstart
2993
+ *
2994
+ * **Example** (summing a list of numbers)
2995
+ *
2996
+ * ```ts
2997
+ * import { Reducer } from "effect"
2998
+ *
2999
+ * const Sum = Reducer.make<number>((a, b) => a + b, 0)
3000
+ *
3001
+ * console.log(Sum.combine(3, 4))
3002
+ * // Output: 7
3003
+ *
3004
+ * console.log(Sum.combineAll([1, 2, 3, 4]))
3005
+ * // Output: 10
3006
+ *
3007
+ * console.log(Sum.combineAll([]))
3008
+ * // Output: 0
3009
+ * ```
3010
+ *
3011
+ * ## See also
3012
+ *
3013
+ * - {@link make} – the primary constructor
3014
+ * - {@link Reducer} – the core interface
3015
+ * - {@link Combiner.Combiner} – the parent interface (no `initialValue`)
3016
+ *
2370
3017
  * @since 4.0.0
2371
3018
  */
2372
3019
  export * as Reducer from "./Reducer.ts";
@@ -2557,7 +3204,7 @@ export * as Runtime from "./Runtime.ts";
2557
3204
  *
2558
3205
  * // Retry with exponential backoff
2559
3206
  * const retryPolicy = Schedule.exponential("100 millis", 2.0)
2560
- * .pipe(Schedule.compose(Schedule.recurs(3)))
3207
+ * .pipe(Schedule.both(Schedule.recurs(3)))
2561
3208
  *
2562
3209
  * const program = Effect.gen(function*() {
2563
3210
  * // This will retry up to 3 times with exponential backoff
@@ -2580,6 +3227,88 @@ export * as Schedule from "./Schedule.ts";
2580
3227
  */
2581
3228
  export * as Scheduler from "./Scheduler.ts";
2582
3229
  /**
3230
+ * Define data shapes, validate unknown input, and transform values between formats.
3231
+ *
3232
+ * ## Mental model
3233
+ *
3234
+ * - **Schema** — a description of a data shape. Every schema carries a decoded
3235
+ * *Type* (the value you work with) and an *Encoded* representation (the
3236
+ * serialized form, e.g. JSON).
3237
+ * - **Decoding** — turning unknown external data (API responses, form
3238
+ * submissions, config files) into typed, validated values.
3239
+ * - **Encoding** — turning typed values back into a serializable format.
3240
+ * - **Codec** — a schema that tracks both Type and Encoded, so it can decode
3241
+ * *and* encode. Most concrete schemas are Codecs.
3242
+ * - **Check / Filter** — a constraint attached to a schema (e.g. `isMinLength`,
3243
+ * `isGreaterThan`). Attach them with `.check(...)`.
3244
+ * - **Transformation** — a pair of functions (decode + encode) that convert
3245
+ * values between two schemas. Created with {@link decodeTo} / {@link encodeTo}.
3246
+ * - **Annotation** — metadata attached to a schema (title, description, custom
3247
+ * keys). Attach with `.annotate(...)`.
3248
+ *
3249
+ * ## Common tasks
3250
+ *
3251
+ * - Define a struct: {@link Struct}
3252
+ * - Define a union: {@link Union}, {@link TaggedUnion}, {@link Literals}
3253
+ * - Define an array: {@link ArraySchema}, {@link NonEmptyArray}
3254
+ * - Define a record: {@link Record}
3255
+ * - Define a tuple: {@link Tuple}, {@link TupleWithRest}
3256
+ * - Validate unknown data synchronously: {@link decodeUnknownSync}
3257
+ * - Validate unknown data (Effect): {@link decodeUnknownEffect}
3258
+ * - Encode a value: {@link encodeUnknownSync}, {@link encodeUnknownEffect}
3259
+ * - Type guard: {@link is}
3260
+ * - Assertion: {@link asserts}
3261
+ * - Add constraints: `.check(...)` with filters like {@link isMinLength},
3262
+ * {@link isGreaterThan}, {@link isPattern}, {@link isUUID}
3263
+ * - Transform between schemas: {@link decodeTo}, {@link encodeTo}
3264
+ * - Add a default for missing keys: {@link withDecodingDefault}, {@link withDecodingDefaultKey}
3265
+ * - Create branded types: {@link brand}
3266
+ * - Define classes with validation: {@link Class}, {@link TaggedClass}
3267
+ * - Define error classes: {@link ErrorClass}, {@link TaggedErrorClass}
3268
+ * - Generate JSON Schema: {@link toJsonSchemaDocument}
3269
+ * - Generate test data: {@link toArbitrary}
3270
+ * - Derive equivalence: {@link toEquivalence}
3271
+ *
3272
+ * ## Gotchas
3273
+ *
3274
+ * - `Schema.optional` creates `T | undefined` (key can be missing *or*
3275
+ * `undefined`). Use `Schema.optionalKey` for exact optional properties.
3276
+ * - `decodeTo` is curried: use `from.pipe(Schema.decodeTo(to, ...))`.
3277
+ * - `decodeUnknownSync` throws on failure. Use `decodeUnknownExit` or
3278
+ * `decodeUnknownOption` for non-throwing alternatives.
3279
+ * - Filters do not change the TypeScript type. Use {@link refine} or
3280
+ * {@link brand} to narrow the type.
3281
+ * - Recursive schemas require {@link suspend} to avoid infinite loops.
3282
+ *
3283
+ * ## Quickstart
3284
+ *
3285
+ * **Example** (Validate a user object)
3286
+ *
3287
+ * ```ts
3288
+ * import { Schema } from "effect"
3289
+ *
3290
+ * const User = Schema.Struct({
3291
+ * name: Schema.String.check(Schema.isMinLength(1)),
3292
+ * age: Schema.Number.check(Schema.isGreaterThanOrEqualTo(0)),
3293
+ * email: Schema.optionalKey(Schema.String)
3294
+ * })
3295
+ *
3296
+ * // Decode unknown input — throws on failure
3297
+ * const user = Schema.decodeUnknownSync(User)({
3298
+ * name: "Alice",
3299
+ * age: 30
3300
+ * })
3301
+ *
3302
+ * console.log(user)
3303
+ * // { name: "Alice", age: 30 }
3304
+ * ```
3305
+ *
3306
+ * @see {@link Schema} — type-level view tracking only the decoded Type
3307
+ * @see {@link Codec} — type-level view tracking both Type and Encoded
3308
+ * @see {@link Struct} — define object shapes
3309
+ * @see {@link decodeUnknownSync} — synchronous validation
3310
+ * @see {@link decodeTo} — schema transformations
3311
+ *
2583
3312
  * @since 4.0.0
2584
3313
  */
2585
3314
  export * as Schema from "./Schema.ts";
@@ -2956,6 +3685,7 @@ export * as SchemaRepresentation from "./SchemaRepresentation.ts";
2956
3685
  * - Trim/case strings → {@link trim}, {@link toLowerCase}, {@link toUpperCase}, {@link capitalize}, {@link uncapitalize}, {@link snakeToCamel}
2957
3686
  * - Parse key-value strings → {@link splitKeyValue}
2958
3687
  * - Coerce string ↔ number/bigint → {@link numberFromString}, {@link bigintFromString}
3688
+ * - Coerce string ↔ Date → {@link dateFromString}
2959
3689
  * - Decode durations → {@link durationFromNanos}, {@link durationFromMillis}
2960
3690
  * - Wrap nullable/optional as Option → {@link optionFromNullOr}, {@link optionFromOptionalKey}, {@link optionFromOptional}
2961
3691
  * - Parse URLs → {@link urlFromString}
@@ -3032,18 +3762,9 @@ export * as ScopedCache from "./ScopedCache.ts";
3032
3762
  */
3033
3763
  export * as ScopedRef from "./ScopedRef.ts";
3034
3764
  /**
3035
- * This module provides a data structure called `ServiceMap` that can be used
3036
- * for dependency injection in effectful programs. It is essentially a table
3037
- * mapping `Service`s identifiers to their implementations, and can be used to
3038
- * manage dependencies in a type-safe way. The `ServiceMap` data structure is
3039
- * essentially a way of providing access to a set of related services that can
3040
- * be passed around as a single unit. This module provides functions to create,
3041
- * modify, and query the contents of a `ServiceMap`, as well as a number of
3042
- * utility types for working with a `ServiceMap`.
3043
- *
3044
- * @since 4.0.0
3765
+ * @since 2.0.0
3045
3766
  */
3046
- export * as ServiceMap from "./ServiceMap.ts";
3767
+ export * as Semaphore from "./Semaphore.ts";
3047
3768
  /**
3048
3769
  * @since 2.0.0
3049
3770
  */
@@ -3260,11 +3981,18 @@ export * as Tuple from "./Tuple.ts";
3260
3981
  *
3261
3982
  * Accessed values are tracked by the transaction in order to detect conflicts and to track changes.
3262
3983
  * A transaction will retry whenever a conflict is detected or whenever the transaction explicitly
3263
- * calls `Effect.retryTransaction` and any of the accessed TxChunk values change.
3984
+ * calls `Effect.txRetry` and any of the accessed TxChunk values change.
3264
3985
  *
3265
3986
  * @since 4.0.0
3266
3987
  */
3267
3988
  export * as TxChunk from "./TxChunk.ts";
3989
+ /**
3990
+ * A transactional deferred value — a write-once cell that can be read within transactions.
3991
+ * Readers retry until a value is set; once set, the value is immutable.
3992
+ *
3993
+ * @since 4.0.0
3994
+ */
3995
+ export * as TxDeferred from "./TxDeferred.ts";
3268
3996
  /**
3269
3997
  * @since 2.0.0
3270
3998
  */
@@ -3273,6 +4001,23 @@ export * as TxHashMap from "./TxHashMap.ts";
3273
4001
  * @since 2.0.0
3274
4002
  */
3275
4003
  export * as TxHashSet from "./TxHashSet.ts";
4004
+ /**
4005
+ * A transactional priority queue. Elements are dequeued in order determined by the
4006
+ * provided `Order` instance. All operations participate in the STM transaction system.
4007
+ *
4008
+ * @since 4.0.0
4009
+ */
4010
+ export * as TxPriorityQueue from "./TxPriorityQueue.ts";
4011
+ /**
4012
+ * TxPubSub is a transactional publish/subscribe hub that provides Software Transactional Memory
4013
+ * (STM) semantics for message broadcasting. Publishers broadcast messages to all current
4014
+ * subscribers, with each subscriber receiving its own copy of every published message.
4015
+ *
4016
+ * Supports multiple queue strategies: bounded, unbounded, dropping, and sliding.
4017
+ *
4018
+ * @since 4.0.0
4019
+ */
4020
+ export * as TxPubSub from "./TxPubSub.ts";
3276
4021
  /**
3277
4022
  * TxQueue is a transactional queue data structure that provides Software Transactional Memory (STM)
3278
4023
  * semantics for queue operations. It uses TxRef for transactional state management and supports
@@ -3280,17 +4025,26 @@ export * as TxHashSet from "./TxHashSet.ts";
3280
4025
  *
3281
4026
  * Accessed values are tracked by the transaction in order to detect conflicts and to track changes.
3282
4027
  * A transaction will retry whenever a conflict is detected or whenever the transaction explicitly
3283
- * calls `Effect.retryTransaction` and any of the accessed TxQueue values change.
4028
+ * calls `Effect.txRetry` and any of the accessed TxQueue values change.
3284
4029
  *
3285
4030
  * @since 4.0.0
3286
4031
  */
3287
4032
  export * as TxQueue from "./TxQueue.ts";
4033
+ /**
4034
+ * TxReentrantLock is a transactional read/write lock with reentrant semantics using Software
4035
+ * Transactional Memory (STM). Multiple readers can hold the lock concurrently, OR a single
4036
+ * writer can hold exclusive access. A fiber holding a write lock may acquire additional
4037
+ * read or write locks (reentrancy).
4038
+ *
4039
+ * @since 4.0.0
4040
+ */
4041
+ export * as TxReentrantLock from "./TxReentrantLock.ts";
3288
4042
  /**
3289
4043
  * TxRef is a transactional value, it can be read and modified within the body of a transaction.
3290
4044
  *
3291
4045
  * Accessed values are tracked by the transaction in order to detect conflicts and in order to
3292
4046
  * track changes, a transaction will retry whenever a conflict is detected or whenever the
3293
- * transaction explicitely calls to `Effect.retryTransaction` and any of the accessed TxRef values
4047
+ * transaction explicitely calls to `Effect.txRetry` and any of the accessed TxRef values
3294
4048
  * change.
3295
4049
  *
3296
4050
  * @since 4.0.0
@@ -3300,6 +4054,13 @@ export * as TxRef from "./TxRef.ts";
3300
4054
  * @since 4.0.0
3301
4055
  */
3302
4056
  export * as TxSemaphore from "./TxSemaphore.ts";
4057
+ /**
4058
+ * TxSubscriptionRef is a TxRef that allows subscribing to all committed changes. Subscribers
4059
+ * receive the current value followed by every subsequent update via a transactional queue.
4060
+ *
4061
+ * @since 4.0.0
4062
+ */
4063
+ export * as TxSubscriptionRef from "./TxSubscriptionRef.ts";
3303
4064
  /**
3304
4065
  * Type-level utility types for TypeScript.
3305
4066
  *
@@ -3390,6 +4151,62 @@ export * as UndefinedOr from "./UndefinedOr.ts";
3390
4151
  */
3391
4152
  export * as Unify from "./Unify.ts";
3392
4153
  /**
4154
+ * Internal utilities for the Effect ecosystem's generator-based syntax and
4155
+ * higher-kinded type machinery.
4156
+ *
4157
+ * ## Mental model
4158
+ *
4159
+ * - **SingleShotGen** — an `IterableIterator` wrapper that yields its value
4160
+ * exactly once. Used internally by `[Symbol.iterator]()` on Effect, Option,
4161
+ * Result, and other yieldable types so they work inside generator functions.
4162
+ * - **Gen** — a type-level signature for generator-based monadic composition
4163
+ * (`gen` functions). Parametric over any `TypeLambda` so each module
4164
+ * (Effect, Option, Result, ...) can expose its own `gen` with correct types.
4165
+ * - **Variance** — a type-level marker that encodes the variance (covariant,
4166
+ * contravariant, invariant) of a `TypeLambda`'s type parameters.
4167
+ * Used by {@link Gen} for type inference.
4168
+ *
4169
+ * ## Common tasks
4170
+ *
4171
+ * - Make a type yieldable in generators -> implement `[Symbol.iterator]()` returning a {@link SingleShotGen}
4172
+ * - Define a generator-based API for a new TypeLambda -> type it as {@link Gen}`<MyTypeLambda>`
4173
+ * - Encode variance for a higher-kinded type -> use {@link Variance}
4174
+ *
4175
+ * ## Gotchas
4176
+ *
4177
+ * - {@link SingleShotGen} yields its value only on the first `.next()` call.
4178
+ * Calling `.next()` again returns `{ done: true }`. Iterating the same
4179
+ * instance twice will skip the value on the second pass; call
4180
+ * `[Symbol.iterator]()` to get a fresh iterator.
4181
+ * - {@link Gen} and {@link Variance} are pure type-level constructs — they
4182
+ * have no runtime representation.
4183
+ *
4184
+ * ## Quickstart
4185
+ *
4186
+ * **Example** (Using SingleShotGen to make a type yieldable)
4187
+ *
4188
+ * ```ts
4189
+ * import { Utils } from "effect"
4190
+ *
4191
+ * class MyWrapper<A> {
4192
+ * constructor(readonly value: A) {}
4193
+ * [Symbol.iterator]() {
4194
+ * return new Utils.SingleShotGen<MyWrapper<A>, A>(this)
4195
+ * }
4196
+ * }
4197
+ *
4198
+ * const w = new MyWrapper(42)
4199
+ * const iter = w[Symbol.iterator]()
4200
+ * console.log(iter.next(undefined as any))
4201
+ * // { value: MyWrapper { value: 42 }, done: false }
4202
+ * console.log(iter.next(42))
4203
+ * // { value: 42, done: true }
4204
+ * ```
4205
+ *
4206
+ * @see {@link SingleShotGen}
4207
+ * @see {@link Gen}
4208
+ * @see {@link Variance}
4209
+ *
3393
4210
  * @since 2.0.0
3394
4211
  */
3395
4212
  export * as Utils from "./Utils.ts";