effect 4.0.0-beta.6 → 4.0.0-beta.62

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 (1475) 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 +53 -22
  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 +176 -87
  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 +189 -29
  41. package/dist/Config.d.ts.map +1 -1
  42. package/dist/Config.js +85 -35
  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 +533 -365
  60. package/dist/Data.d.ts.map +1 -1
  61. package/dist/Data.js +125 -73
  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 +74 -40
  72. package/dist/Duration.d.ts.map +1 -1
  73. package/dist/Duration.js +126 -87
  74. package/dist/Duration.js.map +1 -1
  75. package/dist/Effect.d.ts +1435 -927
  76. package/dist/Effect.d.ts.map +1 -1
  77. package/dist/Effect.js +516 -328
  78. package/dist/Effect.js.map +1 -1
  79. package/dist/Effectable.d.ts +29 -0
  80. package/dist/Effectable.d.ts.map +1 -0
  81. package/dist/Effectable.js +31 -0
  82. package/dist/Effectable.js.map +1 -0
  83. package/dist/Encoding.d.ts +1 -1
  84. package/dist/Equal.d.ts +276 -109
  85. package/dist/Equal.d.ts.map +1 -1
  86. package/dist/Equal.js +140 -48
  87. package/dist/Equal.js.map +1 -1
  88. package/dist/Equivalence.d.ts +60 -3
  89. package/dist/Equivalence.d.ts.map +1 -1
  90. package/dist/Equivalence.js +70 -13
  91. package/dist/Equivalence.js.map +1 -1
  92. package/dist/ErrorReporter.d.ts +374 -0
  93. package/dist/ErrorReporter.d.ts.map +1 -0
  94. package/dist/ErrorReporter.js +245 -0
  95. package/dist/ErrorReporter.js.map +1 -0
  96. package/dist/ExecutionPlan.d.ts +6 -6
  97. package/dist/ExecutionPlan.d.ts.map +1 -1
  98. package/dist/ExecutionPlan.js +4 -4
  99. package/dist/ExecutionPlan.js.map +1 -1
  100. package/dist/Exit.d.ts +24 -12
  101. package/dist/Exit.d.ts.map +1 -1
  102. package/dist/Exit.js +8 -4
  103. package/dist/Exit.js.map +1 -1
  104. package/dist/Fiber.d.ts +10 -8
  105. package/dist/Fiber.d.ts.map +1 -1
  106. package/dist/Fiber.js.map +1 -1
  107. package/dist/FiberHandle.d.ts +11 -10
  108. package/dist/FiberHandle.d.ts.map +1 -1
  109. package/dist/FiberHandle.js +12 -11
  110. package/dist/FiberHandle.js.map +1 -1
  111. package/dist/FiberMap.d.ts +22 -21
  112. package/dist/FiberMap.d.ts.map +1 -1
  113. package/dist/FiberMap.js +10 -10
  114. package/dist/FiberMap.js.map +1 -1
  115. package/dist/FiberSet.d.ts +2 -2
  116. package/dist/FiberSet.d.ts.map +1 -1
  117. package/dist/FiberSet.js +4 -4
  118. package/dist/FiberSet.js.map +1 -1
  119. package/dist/FileSystem.d.ts +20 -19
  120. package/dist/FileSystem.d.ts.map +1 -1
  121. package/dist/FileSystem.js +15 -11
  122. package/dist/FileSystem.js.map +1 -1
  123. package/dist/Filter.d.ts +4 -37
  124. package/dist/Filter.d.ts.map +1 -1
  125. package/dist/Filter.js +0 -13
  126. package/dist/Filter.js.map +1 -1
  127. package/dist/Formatter.d.ts +131 -47
  128. package/dist/Formatter.d.ts.map +1 -1
  129. package/dist/Formatter.js +243 -55
  130. package/dist/Formatter.js.map +1 -1
  131. package/dist/Function.d.ts +1 -9
  132. package/dist/Function.d.ts.map +1 -1
  133. package/dist/Function.js +2 -10
  134. package/dist/Function.js.map +1 -1
  135. package/dist/Graph.d.ts +65 -65
  136. package/dist/Graph.d.ts.map +1 -1
  137. package/dist/Graph.js +58 -60
  138. package/dist/Graph.js.map +1 -1
  139. package/dist/Hash.js +1 -1
  140. package/dist/Hash.js.map +1 -1
  141. package/dist/HashMap.d.ts +26 -19
  142. package/dist/HashMap.d.ts.map +1 -1
  143. package/dist/HashMap.js +7 -5
  144. package/dist/HashMap.js.map +1 -1
  145. package/dist/Inspectable.d.ts +0 -4
  146. package/dist/Inspectable.d.ts.map +1 -1
  147. package/dist/Inspectable.js +4 -13
  148. package/dist/Inspectable.js.map +1 -1
  149. package/dist/Iterable.d.ts +50 -50
  150. package/dist/Iterable.d.ts.map +1 -1
  151. package/dist/Iterable.js +106 -34
  152. package/dist/Iterable.js.map +1 -1
  153. package/dist/JsonSchema.d.ts +299 -10
  154. package/dist/JsonSchema.d.ts.map +1 -1
  155. package/dist/JsonSchema.js +323 -4
  156. package/dist/JsonSchema.js.map +1 -1
  157. package/dist/Latch.d.ts +69 -3
  158. package/dist/Latch.d.ts.map +1 -1
  159. package/dist/Latch.js +58 -0
  160. package/dist/Latch.js.map +1 -1
  161. package/dist/Layer.d.ts +599 -379
  162. package/dist/Layer.d.ts.map +1 -1
  163. package/dist/Layer.js +249 -180
  164. package/dist/Layer.js.map +1 -1
  165. package/dist/LayerMap.d.ts +27 -26
  166. package/dist/LayerMap.d.ts.map +1 -1
  167. package/dist/LayerMap.js +21 -18
  168. package/dist/LayerMap.js.map +1 -1
  169. package/dist/LogLevel.d.ts +32 -0
  170. package/dist/LogLevel.d.ts.map +1 -1
  171. package/dist/LogLevel.js +28 -100
  172. package/dist/LogLevel.js.map +1 -1
  173. package/dist/Logger.d.ts +31 -97
  174. package/dist/Logger.d.ts.map +1 -1
  175. package/dist/Logger.js +2 -3
  176. package/dist/Logger.js.map +1 -1
  177. package/dist/ManagedRuntime.d.ts +8 -8
  178. package/dist/ManagedRuntime.d.ts.map +1 -1
  179. package/dist/ManagedRuntime.js +34 -25
  180. package/dist/ManagedRuntime.js.map +1 -1
  181. package/dist/Metric.d.ts +23 -25
  182. package/dist/Metric.d.ts.map +1 -1
  183. package/dist/Metric.js +24 -26
  184. package/dist/Metric.js.map +1 -1
  185. package/dist/MutableHashMap.d.ts +7 -0
  186. package/dist/MutableHashMap.d.ts.map +1 -1
  187. package/dist/MutableHashMap.js +8 -0
  188. package/dist/MutableHashMap.js.map +1 -1
  189. package/dist/MutableHashSet.d.ts +7 -0
  190. package/dist/MutableHashSet.d.ts.map +1 -1
  191. package/dist/MutableHashSet.js +8 -0
  192. package/dist/MutableHashSet.js.map +1 -1
  193. package/dist/MutableList.d.ts.map +1 -1
  194. package/dist/MutableList.js +3 -0
  195. package/dist/MutableList.js.map +1 -1
  196. package/dist/Newtype.d.ts +291 -0
  197. package/dist/Newtype.d.ts.map +1 -0
  198. package/dist/Newtype.js +161 -0
  199. package/dist/Newtype.js.map +1 -0
  200. package/dist/Number.d.ts +74 -18
  201. package/dist/Number.d.ts.map +1 -1
  202. package/dist/Number.js +46 -18
  203. package/dist/Number.js.map +1 -1
  204. package/dist/Optic.d.ts +947 -18
  205. package/dist/Optic.d.ts.map +1 -1
  206. package/dist/Optic.js +454 -5
  207. package/dist/Optic.js.map +1 -1
  208. package/dist/Option.d.ts +25 -16
  209. package/dist/Option.d.ts.map +1 -1
  210. package/dist/Option.js +15 -9
  211. package/dist/Option.js.map +1 -1
  212. package/dist/Order.d.ts +6 -1
  213. package/dist/Order.d.ts.map +1 -1
  214. package/dist/Order.js +19 -14
  215. package/dist/Order.js.map +1 -1
  216. package/dist/PartitionedSemaphore.d.ts +183 -0
  217. package/dist/PartitionedSemaphore.d.ts.map +1 -0
  218. package/dist/PartitionedSemaphore.js +231 -0
  219. package/dist/PartitionedSemaphore.js.map +1 -0
  220. package/dist/Path.d.ts +2 -2
  221. package/dist/Path.d.ts.map +1 -1
  222. package/dist/Path.js +2 -2
  223. package/dist/Path.js.map +1 -1
  224. package/dist/PlatformError.d.ts +2 -2
  225. package/dist/Pool.d.ts +1 -1
  226. package/dist/Pool.d.ts.map +1 -1
  227. package/dist/Pool.js +5 -5
  228. package/dist/Pool.js.map +1 -1
  229. package/dist/Predicate.d.ts +1 -1
  230. package/dist/Predicate.d.ts.map +1 -1
  231. package/dist/PubSub.d.ts +5 -4
  232. package/dist/PubSub.d.ts.map +1 -1
  233. package/dist/PubSub.js +15 -8
  234. package/dist/PubSub.js.map +1 -1
  235. package/dist/Pull.d.ts.map +1 -1
  236. package/dist/Pull.js +1 -1
  237. package/dist/Pull.js.map +1 -1
  238. package/dist/Queue.d.ts +9 -6
  239. package/dist/Queue.d.ts.map +1 -1
  240. package/dist/Queue.js +7 -5
  241. package/dist/Queue.js.map +1 -1
  242. package/dist/Random.d.ts +36 -2
  243. package/dist/Random.d.ts.map +1 -1
  244. package/dist/Random.js +46 -35
  245. package/dist/Random.js.map +1 -1
  246. package/dist/RcMap.d.ts +4 -4
  247. package/dist/RcMap.d.ts.map +1 -1
  248. package/dist/RcMap.js +13 -13
  249. package/dist/RcMap.js.map +1 -1
  250. package/dist/RcRef.d.ts +1 -1
  251. package/dist/RcRef.d.ts.map +1 -1
  252. package/dist/Record.d.ts +63 -160
  253. package/dist/Record.d.ts.map +1 -1
  254. package/dist/Record.js +37 -56
  255. package/dist/Record.js.map +1 -1
  256. package/dist/Redactable.d.ts +139 -62
  257. package/dist/Redactable.d.ts.map +1 -1
  258. package/dist/Redactable.js +59 -55
  259. package/dist/Redactable.js.map +1 -1
  260. package/dist/Reducer.d.ts +166 -7
  261. package/dist/Reducer.d.ts.map +1 -1
  262. package/dist/Reducer.js +135 -1
  263. package/dist/Reducer.js.map +1 -1
  264. package/dist/References.d.ts +257 -229
  265. package/dist/References.d.ts.map +1 -1
  266. package/dist/References.js +240 -259
  267. package/dist/References.js.map +1 -1
  268. package/dist/Request.d.ts +5 -5
  269. package/dist/Request.d.ts.map +1 -1
  270. package/dist/Request.js.map +1 -1
  271. package/dist/RequestResolver.d.ts +25 -25
  272. package/dist/RequestResolver.d.ts.map +1 -1
  273. package/dist/RequestResolver.js +15 -16
  274. package/dist/RequestResolver.js.map +1 -1
  275. package/dist/Resource.d.ts +0 -3
  276. package/dist/Resource.d.ts.map +1 -1
  277. package/dist/Resource.js +5 -4
  278. package/dist/Resource.js.map +1 -1
  279. package/dist/Result.d.ts +1 -1
  280. package/dist/Result.d.ts.map +1 -1
  281. package/dist/Result.js +1 -2
  282. package/dist/Result.js.map +1 -1
  283. package/dist/Runtime.d.ts +66 -0
  284. package/dist/Runtime.d.ts.map +1 -1
  285. package/dist/Runtime.js +79 -6
  286. package/dist/Runtime.js.map +1 -1
  287. package/dist/Schedule.d.ts +174 -291
  288. package/dist/Schedule.d.ts.map +1 -1
  289. package/dist/Schedule.js +132 -120
  290. package/dist/Schedule.js.map +1 -1
  291. package/dist/Scheduler.d.ts +36 -125
  292. package/dist/Scheduler.d.ts.map +1 -1
  293. package/dist/Scheduler.js +37 -126
  294. package/dist/Scheduler.js.map +1 -1
  295. package/dist/Schema.d.ts +3213 -392
  296. package/dist/Schema.d.ts.map +1 -1
  297. package/dist/Schema.js +2058 -252
  298. package/dist/Schema.js.map +1 -1
  299. package/dist/SchemaAST.d.ts +13 -2
  300. package/dist/SchemaAST.d.ts.map +1 -1
  301. package/dist/SchemaAST.js +340 -257
  302. package/dist/SchemaAST.js.map +1 -1
  303. package/dist/SchemaGetter.d.ts +55 -13
  304. package/dist/SchemaGetter.d.ts.map +1 -1
  305. package/dist/SchemaGetter.js +73 -11
  306. package/dist/SchemaGetter.js.map +1 -1
  307. package/dist/SchemaIssue.d.ts.map +1 -1
  308. package/dist/SchemaIssue.js +29 -11
  309. package/dist/SchemaIssue.js.map +1 -1
  310. package/dist/SchemaParser.d.ts +44 -54
  311. package/dist/SchemaParser.d.ts.map +1 -1
  312. package/dist/SchemaParser.js +69 -4
  313. package/dist/SchemaParser.js.map +1 -1
  314. package/dist/SchemaRepresentation.d.ts +2 -2
  315. package/dist/SchemaRepresentation.d.ts.map +1 -1
  316. package/dist/SchemaRepresentation.js +63 -39
  317. package/dist/SchemaRepresentation.js.map +1 -1
  318. package/dist/SchemaTransformation.d.ts +245 -3
  319. package/dist/SchemaTransformation.d.ts.map +1 -1
  320. package/dist/SchemaTransformation.js +297 -33
  321. package/dist/SchemaTransformation.js.map +1 -1
  322. package/dist/Scope.d.ts +2 -2
  323. package/dist/Scope.d.ts.map +1 -1
  324. package/dist/Scope.js.map +1 -1
  325. package/dist/ScopedCache.d.ts +2 -2
  326. package/dist/ScopedCache.d.ts.map +1 -1
  327. package/dist/ScopedCache.js +5 -5
  328. package/dist/ScopedCache.js.map +1 -1
  329. package/dist/Semaphore.d.ts +148 -52
  330. package/dist/Semaphore.d.ts.map +1 -1
  331. package/dist/Semaphore.js +135 -117
  332. package/dist/Semaphore.js.map +1 -1
  333. package/dist/Sink.d.ts +22 -19
  334. package/dist/Sink.d.ts.map +1 -1
  335. package/dist/Sink.js +54 -7
  336. package/dist/Sink.js.map +1 -1
  337. package/dist/Stdio.d.ts +18 -6
  338. package/dist/Stdio.d.ts.map +1 -1
  339. package/dist/Stdio.js +20 -2
  340. package/dist/Stdio.js.map +1 -1
  341. package/dist/Stream.d.ts +465 -542
  342. package/dist/Stream.d.ts.map +1 -1
  343. package/dist/Stream.js +329 -145
  344. package/dist/Stream.js.map +1 -1
  345. package/dist/String.d.ts +114 -47
  346. package/dist/String.d.ts.map +1 -1
  347. package/dist/String.js +29 -47
  348. package/dist/String.js.map +1 -1
  349. package/dist/Struct.d.ts +7 -7
  350. package/dist/Struct.d.ts.map +1 -1
  351. package/dist/SubscriptionRef.d.ts +1 -2
  352. package/dist/SubscriptionRef.d.ts.map +1 -1
  353. package/dist/SubscriptionRef.js +83 -116
  354. package/dist/SubscriptionRef.js.map +1 -1
  355. package/dist/Terminal.d.ts +5 -4
  356. package/dist/Terminal.d.ts.map +1 -1
  357. package/dist/Terminal.js +2 -2
  358. package/dist/Terminal.js.map +1 -1
  359. package/dist/Tracer.d.ts +21 -20
  360. package/dist/Tracer.d.ts.map +1 -1
  361. package/dist/Tracer.js +13 -9
  362. package/dist/Tracer.js.map +1 -1
  363. package/dist/Trie.d.ts +44 -31
  364. package/dist/Trie.d.ts.map +1 -1
  365. package/dist/Trie.js +13 -9
  366. package/dist/Trie.js.map +1 -1
  367. package/dist/TxChunk.d.ts +4 -4
  368. package/dist/TxChunk.d.ts.map +1 -1
  369. package/dist/TxChunk.js +4 -4
  370. package/dist/TxChunk.js.map +1 -1
  371. package/dist/TxDeferred.d.ts +328 -0
  372. package/dist/TxDeferred.d.ts.map +1 -0
  373. package/dist/TxDeferred.js +197 -0
  374. package/dist/TxDeferred.js.map +1 -0
  375. package/dist/TxHashMap.d.ts +105 -86
  376. package/dist/TxHashMap.d.ts.map +1 -1
  377. package/dist/TxHashMap.js +51 -44
  378. package/dist/TxHashMap.js.map +1 -1
  379. package/dist/TxHashSet.d.ts +2 -2
  380. package/dist/TxHashSet.d.ts.map +1 -1
  381. package/dist/TxHashSet.js +16 -15
  382. package/dist/TxHashSet.js.map +1 -1
  383. package/dist/TxPriorityQueue.d.ts +609 -0
  384. package/dist/TxPriorityQueue.d.ts.map +1 -0
  385. package/dist/TxPriorityQueue.js +416 -0
  386. package/dist/TxPriorityQueue.js.map +1 -0
  387. package/dist/TxPubSub.d.ts +585 -0
  388. package/dist/TxPubSub.d.ts.map +1 -0
  389. package/dist/TxPubSub.js +521 -0
  390. package/dist/TxPubSub.js.map +1 -0
  391. package/dist/TxQueue.d.ts +1 -1
  392. package/dist/TxQueue.d.ts.map +1 -1
  393. package/dist/TxQueue.js +42 -57
  394. package/dist/TxQueue.js.map +1 -1
  395. package/dist/TxReentrantLock.d.ts +500 -0
  396. package/dist/TxReentrantLock.d.ts.map +1 -0
  397. package/dist/TxReentrantLock.js +481 -0
  398. package/dist/TxReentrantLock.js.map +1 -0
  399. package/dist/TxRef.d.ts +14 -20
  400. package/dist/TxRef.d.ts.map +1 -1
  401. package/dist/TxRef.js +8 -10
  402. package/dist/TxRef.js.map +1 -1
  403. package/dist/TxSemaphore.d.ts +162 -2
  404. package/dist/TxSemaphore.d.ts.map +1 -1
  405. package/dist/TxSemaphore.js +25 -10
  406. package/dist/TxSemaphore.js.map +1 -1
  407. package/dist/TxSubscriptionRef.d.ts +508 -0
  408. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  409. package/dist/TxSubscriptionRef.js +293 -0
  410. package/dist/TxSubscriptionRef.js.map +1 -0
  411. package/dist/Types.d.ts +80 -22
  412. package/dist/Types.d.ts.map +1 -1
  413. package/dist/Unify.d.ts +8 -2
  414. package/dist/Unify.d.ts.map +1 -1
  415. package/dist/Unify.js.map +1 -1
  416. package/dist/Utils.d.ts +137 -65
  417. package/dist/Utils.d.ts.map +1 -1
  418. package/dist/Utils.js +38 -66
  419. package/dist/Utils.js.map +1 -1
  420. package/dist/index.d.ts +886 -71
  421. package/dist/index.d.ts.map +1 -1
  422. package/dist/index.js +886 -71
  423. package/dist/index.js.map +1 -1
  424. package/dist/internal/core.js.map +1 -1
  425. package/dist/internal/dateTime.js +77 -71
  426. package/dist/internal/dateTime.js.map +1 -1
  427. package/dist/internal/effect.js +502 -326
  428. package/dist/internal/effect.js.map +1 -1
  429. package/dist/internal/hashMap.js +7 -5
  430. package/dist/internal/hashMap.js.map +1 -1
  431. package/dist/internal/layer.js +3 -3
  432. package/dist/internal/layer.js.map +1 -1
  433. package/dist/internal/option.js +6 -0
  434. package/dist/internal/option.js.map +1 -1
  435. package/dist/internal/random.d.ts +2 -0
  436. package/dist/internal/random.d.ts.map +1 -0
  437. package/dist/internal/random.js +13 -0
  438. package/dist/internal/random.js.map +1 -0
  439. package/dist/internal/rcRef.js +9 -9
  440. package/dist/internal/rcRef.js.map +1 -1
  441. package/dist/internal/references.d.ts +2 -0
  442. package/dist/internal/references.d.ts.map +1 -0
  443. package/dist/internal/references.js +51 -0
  444. package/dist/internal/references.js.map +1 -0
  445. package/dist/internal/request.js +6 -6
  446. package/dist/internal/request.js.map +1 -1
  447. package/dist/internal/schedule.js +1 -1
  448. package/dist/internal/schedule.js.map +1 -1
  449. package/dist/internal/schema/annotations.js +2 -0
  450. package/dist/internal/schema/annotations.js.map +1 -1
  451. package/dist/internal/schema/representation.js +87 -109
  452. package/dist/internal/schema/representation.js.map +1 -1
  453. package/dist/internal/schema/schema.d.ts +10 -1
  454. package/dist/internal/schema/schema.d.ts.map +1 -1
  455. package/dist/internal/schema/schema.js +59 -1
  456. package/dist/internal/schema/schema.js.map +1 -1
  457. package/dist/internal/trie.js +8 -7
  458. package/dist/internal/trie.js.map +1 -1
  459. package/dist/testing/TestClock.d.ts +5 -5
  460. package/dist/testing/TestClock.d.ts.map +1 -1
  461. package/dist/testing/TestClock.js +2 -2
  462. package/dist/testing/TestClock.js.map +1 -1
  463. package/dist/testing/TestSchema.d.ts +267 -33
  464. package/dist/testing/TestSchema.d.ts.map +1 -1
  465. package/dist/testing/TestSchema.js +296 -23
  466. package/dist/testing/TestSchema.js.map +1 -1
  467. package/dist/testing/index.d.ts +64 -1
  468. package/dist/testing/index.d.ts.map +1 -1
  469. package/dist/testing/index.js +64 -1
  470. package/dist/testing/index.js.map +1 -1
  471. package/dist/unstable/ai/AiError.d.ts +127 -45
  472. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  473. package/dist/unstable/ai/AiError.js +29 -23
  474. package/dist/unstable/ai/AiError.js.map +1 -1
  475. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  476. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  477. package/dist/unstable/ai/AnthropicStructuredOutput.js +9 -2
  478. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  479. package/dist/unstable/ai/Chat.d.ts +39 -11
  480. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  481. package/dist/unstable/ai/Chat.js +40 -47
  482. package/dist/unstable/ai/Chat.js.map +1 -1
  483. package/dist/unstable/ai/EmbeddingModel.d.ts +130 -0
  484. package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -0
  485. package/dist/unstable/ai/EmbeddingModel.js +127 -0
  486. package/dist/unstable/ai/EmbeddingModel.js.map +1 -0
  487. package/dist/unstable/ai/IdGenerator.d.ts +2 -2
  488. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  489. package/dist/unstable/ai/IdGenerator.js +2 -2
  490. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  491. package/dist/unstable/ai/LanguageModel.d.ts +119 -49
  492. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  493. package/dist/unstable/ai/LanguageModel.js +260 -61
  494. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  495. package/dist/unstable/ai/McpSchema.d.ts +207 -112
  496. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  497. package/dist/unstable/ai/McpSchema.js +71 -19
  498. package/dist/unstable/ai/McpSchema.js.map +1 -1
  499. package/dist/unstable/ai/McpServer.d.ts +68 -15
  500. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  501. package/dist/unstable/ai/McpServer.js +225 -73
  502. package/dist/unstable/ai/McpServer.js.map +1 -1
  503. package/dist/unstable/ai/Model.d.ts +27 -9
  504. package/dist/unstable/ai/Model.d.ts.map +1 -1
  505. package/dist/unstable/ai/Model.js +25 -9
  506. package/dist/unstable/ai/Model.js.map +1 -1
  507. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  508. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  509. package/dist/unstable/ai/OpenAiStructuredOutput.js +9 -1
  510. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  511. package/dist/unstable/ai/Prompt.d.ts +17 -17
  512. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  513. package/dist/unstable/ai/Prompt.js +6 -9
  514. package/dist/unstable/ai/Prompt.js.map +1 -1
  515. package/dist/unstable/ai/Response.d.ts +24 -24
  516. package/dist/unstable/ai/Response.d.ts.map +1 -1
  517. package/dist/unstable/ai/Response.js +7 -8
  518. package/dist/unstable/ai/Response.js.map +1 -1
  519. package/dist/unstable/ai/ResponseIdTracker.d.ts +38 -0
  520. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -0
  521. package/dist/unstable/ai/ResponseIdTracker.js +68 -0
  522. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -0
  523. package/dist/unstable/ai/Telemetry.d.ts +35 -2
  524. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  525. package/dist/unstable/ai/Telemetry.js +2 -2
  526. package/dist/unstable/ai/Telemetry.js.map +1 -1
  527. package/dist/unstable/ai/Tokenizer.d.ts +2 -2
  528. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  529. package/dist/unstable/ai/Tokenizer.js +2 -2
  530. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  531. package/dist/unstable/ai/Tool.d.ts +46 -16
  532. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  533. package/dist/unstable/ai/Tool.js +68 -22
  534. package/dist/unstable/ai/Tool.js.map +1 -1
  535. package/dist/unstable/ai/Toolkit.d.ts +4 -4
  536. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  537. package/dist/unstable/ai/Toolkit.js +14 -21
  538. package/dist/unstable/ai/Toolkit.js.map +1 -1
  539. package/dist/unstable/ai/index.d.ts +22 -1
  540. package/dist/unstable/ai/index.d.ts.map +1 -1
  541. package/dist/unstable/ai/index.js +22 -1
  542. package/dist/unstable/ai/index.js.map +1 -1
  543. package/dist/unstable/ai/internal/codec-transformer.js +5 -7
  544. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  545. package/dist/unstable/cli/Argument.d.ts +4 -7
  546. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  547. package/dist/unstable/cli/Argument.js +1 -3
  548. package/dist/unstable/cli/Argument.js.map +1 -1
  549. package/dist/unstable/cli/CliError.d.ts +51 -63
  550. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  551. package/dist/unstable/cli/CliError.js +32 -57
  552. package/dist/unstable/cli/CliError.js.map +1 -1
  553. package/dist/unstable/cli/CliOutput.d.ts +5 -4
  554. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  555. package/dist/unstable/cli/CliOutput.js +67 -12
  556. package/dist/unstable/cli/CliOutput.js.map +1 -1
  557. package/dist/unstable/cli/Command.d.ts +372 -59
  558. package/dist/unstable/cli/Command.d.ts.map +1 -1
  559. package/dist/unstable/cli/Command.js +328 -66
  560. package/dist/unstable/cli/Command.js.map +1 -1
  561. package/dist/unstable/cli/Completions.d.ts +97 -0
  562. package/dist/unstable/cli/Completions.d.ts.map +1 -0
  563. package/dist/unstable/cli/Completions.js +25 -0
  564. package/dist/unstable/cli/Completions.js.map +1 -0
  565. package/dist/unstable/cli/Flag.d.ts +4 -5
  566. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  567. package/dist/unstable/cli/Flag.js +1 -1
  568. package/dist/unstable/cli/Flag.js.map +1 -1
  569. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  570. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  571. package/dist/unstable/cli/GlobalFlag.js +118 -0
  572. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  573. package/dist/unstable/cli/HelpDoc.d.ts +81 -11
  574. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  575. package/dist/unstable/cli/Param.d.ts +34 -6
  576. package/dist/unstable/cli/Param.d.ts.map +1 -1
  577. package/dist/unstable/cli/Param.js +24 -14
  578. package/dist/unstable/cli/Param.js.map +1 -1
  579. package/dist/unstable/cli/Primitive.d.ts +2 -2
  580. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  581. package/dist/unstable/cli/Primitive.js +1 -1
  582. package/dist/unstable/cli/Primitive.js.map +1 -1
  583. package/dist/unstable/cli/Prompt.js +266 -86
  584. package/dist/unstable/cli/Prompt.js.map +1 -1
  585. package/dist/unstable/cli/index.d.ts +10 -0
  586. package/dist/unstable/cli/index.d.ts.map +1 -1
  587. package/dist/unstable/cli/index.js +10 -0
  588. package/dist/unstable/cli/index.js.map +1 -1
  589. package/dist/unstable/cli/internal/command.d.ts +41 -15
  590. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  591. package/dist/unstable/cli/internal/command.js +84 -47
  592. package/dist/unstable/cli/internal/command.js.map +1 -1
  593. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  594. package/dist/unstable/cli/internal/completions/descriptor.d.ts +2 -0
  595. package/dist/unstable/cli/internal/completions/descriptor.d.ts.map +1 -0
  596. package/dist/unstable/cli/internal/completions/{CommandDescriptor.js → descriptor.js} +17 -5
  597. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -0
  598. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  599. package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
  600. package/dist/unstable/cli/internal/config.js +42 -0
  601. package/dist/unstable/cli/internal/config.js.map +1 -1
  602. package/dist/unstable/cli/internal/help.d.ts +33 -0
  603. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  604. package/dist/unstable/cli/internal/help.js +125 -0
  605. package/dist/unstable/cli/internal/help.js.map +1 -0
  606. package/dist/unstable/cli/internal/parser.js +155 -58
  607. package/dist/unstable/cli/internal/parser.js.map +1 -1
  608. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  609. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  610. package/dist/unstable/cluster/ClusterCron.js +1 -1
  611. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  612. package/dist/unstable/cluster/ClusterError.d.ts +7 -7
  613. package/dist/unstable/cluster/ClusterSchema.d.ts +28 -7
  614. package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
  615. package/dist/unstable/cluster/ClusterSchema.js +28 -8
  616. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  617. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +4 -2
  618. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  619. package/dist/unstable/cluster/ClusterWorkflowEngine.js +96 -63
  620. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  621. package/dist/unstable/cluster/DeliverAt.js +1 -1
  622. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  623. package/dist/unstable/cluster/Entity.d.ts +17 -16
  624. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  625. package/dist/unstable/cluster/Entity.js +31 -25
  626. package/dist/unstable/cluster/Entity.js.map +1 -1
  627. package/dist/unstable/cluster/EntityAddress.d.ts +2 -2
  628. package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
  629. package/dist/unstable/cluster/EntityAddress.js +1 -1
  630. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  631. package/dist/unstable/cluster/EntityProxy.js +3 -3
  632. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  633. package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
  634. package/dist/unstable/cluster/EntityProxyServer.js +6 -6
  635. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  636. package/dist/unstable/cluster/EntityResource.d.ts +4 -4
  637. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  638. package/dist/unstable/cluster/EntityResource.js +2 -2
  639. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  640. package/dist/unstable/cluster/Envelope.d.ts +3 -3
  641. package/dist/unstable/cluster/HttpRunner.js +2 -2
  642. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  643. package/dist/unstable/cluster/K8sHttpClient.d.ts +5 -5
  644. package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
  645. package/dist/unstable/cluster/K8sHttpClient.js +7 -7
  646. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  647. package/dist/unstable/cluster/Message.d.ts +16 -10
  648. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  649. package/dist/unstable/cluster/Message.js +16 -8
  650. package/dist/unstable/cluster/Message.js.map +1 -1
  651. package/dist/unstable/cluster/MessageStorage.d.ts +46 -23
  652. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  653. package/dist/unstable/cluster/MessageStorage.js +40 -25
  654. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  655. package/dist/unstable/cluster/Reply.d.ts +7 -6
  656. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  657. package/dist/unstable/cluster/Reply.js +8 -7
  658. package/dist/unstable/cluster/Reply.js.map +1 -1
  659. package/dist/unstable/cluster/Runner.d.ts +1 -1
  660. package/dist/unstable/cluster/Runner.d.ts.map +1 -1
  661. package/dist/unstable/cluster/Runner.js +1 -1
  662. package/dist/unstable/cluster/Runner.js.map +1 -1
  663. package/dist/unstable/cluster/RunnerAddress.d.ts +1 -1
  664. package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
  665. package/dist/unstable/cluster/RunnerAddress.js +1 -1
  666. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  667. package/dist/unstable/cluster/RunnerHealth.d.ts +2 -2
  668. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  669. package/dist/unstable/cluster/RunnerHealth.js +2 -2
  670. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  671. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  672. package/dist/unstable/cluster/RunnerServer.js +10 -9
  673. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  674. package/dist/unstable/cluster/RunnerStorage.d.ts +12 -12
  675. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  676. package/dist/unstable/cluster/RunnerStorage.js +3 -3
  677. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  678. package/dist/unstable/cluster/Runners.d.ts +5 -4
  679. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  680. package/dist/unstable/cluster/Runners.js +16 -14
  681. package/dist/unstable/cluster/Runners.js.map +1 -1
  682. package/dist/unstable/cluster/ShardId.d.ts +35 -49
  683. package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
  684. package/dist/unstable/cluster/ShardId.js +65 -67
  685. package/dist/unstable/cluster/ShardId.js.map +1 -1
  686. package/dist/unstable/cluster/Sharding.d.ts +4 -4
  687. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  688. package/dist/unstable/cluster/Sharding.js +59 -49
  689. package/dist/unstable/cluster/Sharding.js.map +1 -1
  690. package/dist/unstable/cluster/ShardingConfig.d.ts +28 -27
  691. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  692. package/dist/unstable/cluster/ShardingConfig.js +27 -27
  693. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  694. package/dist/unstable/cluster/SingletonAddress.d.ts +2 -2
  695. package/dist/unstable/cluster/Snowflake.d.ts +2 -2
  696. package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
  697. package/dist/unstable/cluster/Snowflake.js +2 -2
  698. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  699. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  700. package/dist/unstable/cluster/SqlMessageStorage.js +24 -20
  701. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  702. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  703. package/dist/unstable/cluster/SqlRunnerStorage.js +7 -7
  704. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  705. package/dist/unstable/cluster/internal/entityManager.js +30 -24
  706. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  707. package/dist/unstable/cluster/internal/entityReaper.js +2 -2
  708. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  709. package/dist/unstable/cluster/internal/resourceMap.js +3 -3
  710. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  711. package/dist/unstable/devtools/DevToolsClient.d.ts +2 -2
  712. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  713. package/dist/unstable/devtools/DevToolsClient.js +9 -8
  714. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  715. package/dist/unstable/devtools/DevToolsSchema.d.ts +4 -4
  716. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  717. package/dist/unstable/devtools/DevToolsSchema.js +9 -2
  718. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  719. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  720. package/dist/unstable/encoding/Ndjson.d.ts +9 -9
  721. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  722. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  723. package/dist/unstable/encoding/Sse.d.ts +3 -3
  724. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  725. package/dist/unstable/encoding/Sse.js +1 -1
  726. package/dist/unstable/encoding/Sse.js.map +1 -1
  727. package/dist/unstable/eventlog/Event.d.ts +0 -6
  728. package/dist/unstable/eventlog/Event.d.ts.map +1 -1
  729. package/dist/unstable/eventlog/Event.js +0 -5
  730. package/dist/unstable/eventlog/Event.js.map +1 -1
  731. package/dist/unstable/eventlog/EventGroup.d.ts +0 -2
  732. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  733. package/dist/unstable/eventlog/EventGroup.js +0 -2
  734. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  735. package/dist/unstable/eventlog/EventJournal.d.ts +27 -10
  736. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  737. package/dist/unstable/eventlog/EventJournal.js +130 -71
  738. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  739. package/dist/unstable/eventlog/EventLog.d.ts +94 -37
  740. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  741. package/dist/unstable/eventlog/EventLog.js +225 -151
  742. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  743. package/dist/unstable/eventlog/EventLogEncryption.d.ts +11 -9
  744. package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
  745. package/dist/unstable/eventlog/EventLogEncryption.js +15 -17
  746. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  747. package/dist/unstable/eventlog/EventLogMessage.d.ts +228 -0
  748. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -0
  749. package/dist/unstable/eventlog/EventLogMessage.js +214 -0
  750. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -0
  751. package/dist/unstable/eventlog/EventLogRemote.d.ts +112 -194
  752. package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
  753. package/dist/unstable/eventlog/EventLogRemote.js +168 -322
  754. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  755. package/dist/unstable/eventlog/EventLogServer.d.ts +26 -48
  756. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  757. package/dist/unstable/eventlog/EventLogServer.js +128 -199
  758. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  759. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +60 -0
  760. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -0
  761. package/dist/unstable/eventlog/EventLogServerEncrypted.js +166 -0
  762. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -0
  763. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +183 -0
  764. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -0
  765. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +461 -0
  766. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -0
  767. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +117 -0
  768. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -0
  769. package/dist/unstable/eventlog/EventLogSessionAuth.js +284 -0
  770. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -0
  771. package/dist/unstable/eventlog/{SqlEventLogJournal.d.ts → SqlEventJournal.d.ts} +2 -2
  772. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -0
  773. package/dist/unstable/eventlog/{SqlEventLogJournal.js → SqlEventJournal.js} +28 -21
  774. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -0
  775. package/dist/unstable/eventlog/{SqlEventLogServer.d.ts → SqlEventLogServerEncrypted.d.ts} +5 -5
  776. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -0
  777. package/dist/unstable/eventlog/{SqlEventLogServer.js → SqlEventLogServerEncrypted.js} +69 -27
  778. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -0
  779. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +25 -0
  780. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -0
  781. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +355 -0
  782. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -0
  783. package/dist/unstable/eventlog/index.d.ts +22 -2
  784. package/dist/unstable/eventlog/index.d.ts.map +1 -1
  785. package/dist/unstable/eventlog/index.js +22 -2
  786. package/dist/unstable/eventlog/index.js.map +1 -1
  787. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts +2 -0
  788. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.d.ts.map +1 -0
  789. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js +89 -0
  790. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -0
  791. package/dist/unstable/http/Cookies.d.ts +51 -6
  792. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  793. package/dist/unstable/http/Cookies.js +27 -6
  794. package/dist/unstable/http/Cookies.js.map +1 -1
  795. package/dist/unstable/http/Etag.d.ts +2 -2
  796. package/dist/unstable/http/Etag.d.ts.map +1 -1
  797. package/dist/unstable/http/Etag.js +7 -3
  798. package/dist/unstable/http/Etag.js.map +1 -1
  799. package/dist/unstable/http/FetchHttpClient.d.ts +6 -3
  800. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  801. package/dist/unstable/http/FetchHttpClient.js +5 -5
  802. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  803. package/dist/unstable/http/Headers.d.ts +24 -4
  804. package/dist/unstable/http/Headers.d.ts.map +1 -1
  805. package/dist/unstable/http/Headers.js +42 -13
  806. package/dist/unstable/http/Headers.js.map +1 -1
  807. package/dist/unstable/http/HttpBody.d.ts +1 -1
  808. package/dist/unstable/http/HttpClient.d.ts +125 -21
  809. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  810. package/dist/unstable/http/HttpClient.js +197 -19
  811. package/dist/unstable/http/HttpClient.js.map +1 -1
  812. package/dist/unstable/http/HttpClientError.d.ts +8 -8
  813. package/dist/unstable/http/HttpClientRequest.d.ts +43 -15
  814. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  815. package/dist/unstable/http/HttpClientRequest.js +131 -21
  816. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  817. package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
  818. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  819. package/dist/unstable/http/HttpClientResponse.js +18 -3
  820. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  821. package/dist/unstable/http/HttpEffect.d.ts +13 -11
  822. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  823. package/dist/unstable/http/HttpEffect.js +51 -51
  824. package/dist/unstable/http/HttpEffect.js.map +1 -1
  825. package/dist/unstable/http/HttpIncomingMessage.d.ts +5 -4
  826. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  827. package/dist/unstable/http/HttpIncomingMessage.js +6 -10
  828. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  829. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  830. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  831. package/dist/unstable/http/HttpMethod.js +3 -3
  832. package/dist/unstable/http/HttpMethod.js.map +1 -1
  833. package/dist/unstable/http/HttpMiddleware.d.ts +4 -9
  834. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  835. package/dist/unstable/http/HttpMiddleware.js +47 -43
  836. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  837. package/dist/unstable/http/HttpPlatform.d.ts +2 -2
  838. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  839. package/dist/unstable/http/HttpPlatform.js +5 -4
  840. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  841. package/dist/unstable/http/HttpRouter.d.ts +9 -8
  842. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  843. package/dist/unstable/http/HttpRouter.js +36 -36
  844. package/dist/unstable/http/HttpRouter.js.map +1 -1
  845. package/dist/unstable/http/HttpServer.d.ts +2 -2
  846. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  847. package/dist/unstable/http/HttpServer.js +4 -4
  848. package/dist/unstable/http/HttpServer.js.map +1 -1
  849. package/dist/unstable/http/HttpServerError.d.ts +22 -34
  850. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  851. package/dist/unstable/http/HttpServerError.js +39 -45
  852. package/dist/unstable/http/HttpServerError.js.map +1 -1
  853. package/dist/unstable/http/HttpServerRequest.d.ts +19 -7
  854. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  855. package/dist/unstable/http/HttpServerRequest.js +307 -13
  856. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  857. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  858. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  859. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  860. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  861. package/dist/unstable/http/HttpServerResponse.d.ts +52 -5
  862. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  863. package/dist/unstable/http/HttpServerResponse.js +240 -5
  864. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  865. package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
  866. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
  867. package/dist/unstable/http/HttpStaticServer.js +353 -0
  868. package/dist/unstable/http/HttpStaticServer.js.map +1 -0
  869. package/dist/unstable/http/HttpTraceContext.d.ts +3 -2
  870. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  871. package/dist/unstable/http/HttpTraceContext.js +27 -15
  872. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  873. package/dist/unstable/http/Multipart.d.ts +7 -7
  874. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  875. package/dist/unstable/http/Multipart.js +7 -7
  876. package/dist/unstable/http/Multipart.js.map +1 -1
  877. package/dist/unstable/http/Url.d.ts +604 -0
  878. package/dist/unstable/http/Url.d.ts.map +1 -0
  879. package/dist/unstable/http/Url.js +256 -0
  880. package/dist/unstable/http/Url.js.map +1 -0
  881. package/dist/unstable/http/UrlParams.d.ts +18 -9
  882. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  883. package/dist/unstable/http/UrlParams.js +6 -7
  884. package/dist/unstable/http/UrlParams.js.map +1 -1
  885. package/dist/unstable/http/index.d.ts +8 -0
  886. package/dist/unstable/http/index.d.ts.map +1 -1
  887. package/dist/unstable/http/index.js +8 -0
  888. package/dist/unstable/http/index.js.map +1 -1
  889. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  890. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  891. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  892. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  893. package/dist/unstable/httpapi/HttpApi.d.ts +11 -11
  894. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  895. package/dist/unstable/httpapi/HttpApi.js +8 -8
  896. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  897. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +12 -9
  898. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  899. package/dist/unstable/httpapi/HttpApiBuilder.js +73 -48
  900. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  901. package/dist/unstable/httpapi/HttpApiClient.d.ts +82 -7
  902. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  903. package/dist/unstable/httpapi/HttpApiClient.js +79 -11
  904. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  905. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +210 -105
  906. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  907. package/dist/unstable/httpapi/HttpApiEndpoint.js +52 -47
  908. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  909. package/dist/unstable/httpapi/HttpApiError.d.ts +66 -29
  910. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  911. package/dist/unstable/httpapi/HttpApiError.js +138 -32
  912. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  913. package/dist/unstable/httpapi/HttpApiGroup.d.ts +9 -8
  914. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  915. package/dist/unstable/httpapi/HttpApiGroup.js +4 -4
  916. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  917. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +49 -17
  918. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  919. package/dist/unstable/httpapi/HttpApiMiddleware.js +38 -8
  920. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  921. package/dist/unstable/httpapi/HttpApiSchema.d.ts +88 -9
  922. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  923. package/dist/unstable/httpapi/HttpApiSchema.js +86 -11
  924. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  925. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +9 -6
  926. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  927. package/dist/unstable/httpapi/HttpApiSecurity.js +6 -6
  928. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  929. package/dist/unstable/httpapi/OpenApi.d.ts +17 -25
  930. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  931. package/dist/unstable/httpapi/OpenApi.js +59 -60
  932. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  933. package/dist/unstable/observability/Otlp.d.ts +12 -12
  934. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  935. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  936. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  937. package/dist/unstable/observability/OtlpExporter.js +8 -8
  938. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  939. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  940. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  941. package/dist/unstable/observability/OtlpLogger.js +7 -4
  942. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  943. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  944. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  945. package/dist/unstable/observability/OtlpMetrics.js +2 -2
  946. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  947. package/dist/unstable/observability/OtlpSerialization.d.ts +2 -2
  948. package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
  949. package/dist/unstable/observability/OtlpSerialization.js +2 -2
  950. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  951. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  952. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  953. package/dist/unstable/observability/OtlpTracer.js +7 -3
  954. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  955. package/dist/unstable/observability/PrometheusMetrics.d.ts +3 -3
  956. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  957. package/dist/unstable/observability/PrometheusMetrics.js +4 -33
  958. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  959. package/dist/unstable/observability/internal/protobuf.js +4 -4
  960. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  961. package/dist/unstable/persistence/KeyValueStore.d.ts +24 -3
  962. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  963. package/dist/unstable/persistence/KeyValueStore.js +144 -2
  964. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  965. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  966. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  967. package/dist/unstable/persistence/Persistable.js +1 -1
  968. package/dist/unstable/persistence/Persistable.js.map +1 -1
  969. package/dist/unstable/persistence/PersistedCache.d.ts +1 -2
  970. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  971. package/dist/unstable/persistence/PersistedCache.js +10 -11
  972. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  973. package/dist/unstable/persistence/PersistedQueue.d.ts +16 -16
  974. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  975. package/dist/unstable/persistence/PersistedQueue.js +9 -9
  976. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  977. package/dist/unstable/persistence/Persistence.d.ts +5 -5
  978. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  979. package/dist/unstable/persistence/Persistence.js +5 -5
  980. package/dist/unstable/persistence/Persistence.js.map +1 -1
  981. package/dist/unstable/persistence/RateLimiter.d.ts +9 -9
  982. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  983. package/dist/unstable/persistence/RateLimiter.js +4 -4
  984. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  985. package/dist/unstable/persistence/Redis.d.ts +3 -3
  986. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  987. package/dist/unstable/persistence/Redis.js +2 -2
  988. package/dist/unstable/persistence/Redis.js.map +1 -1
  989. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  990. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  991. package/dist/unstable/process/ChildProcess.js +1 -65
  992. package/dist/unstable/process/ChildProcess.js.map +1 -1
  993. package/dist/unstable/process/ChildProcessSpawner.d.ts +83 -8
  994. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  995. package/dist/unstable/process/ChildProcessSpawner.js +22 -2
  996. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  997. package/dist/unstable/reactivity/AsyncResult.d.ts +37 -17
  998. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  999. package/dist/unstable/reactivity/AsyncResult.js +9 -0
  1000. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1001. package/dist/unstable/reactivity/Atom.d.ts +108 -47
  1002. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1003. package/dist/unstable/reactivity/Atom.js +105 -25
  1004. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1005. package/dist/unstable/reactivity/AtomHttpApi.d.ts +25 -20
  1006. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1007. package/dist/unstable/reactivity/AtomHttpApi.js +58 -26
  1008. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1009. package/dist/unstable/reactivity/AtomRegistry.d.ts +8 -2
  1010. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  1011. package/dist/unstable/reactivity/AtomRegistry.js +57 -14
  1012. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1013. package/dist/unstable/reactivity/AtomRpc.d.ts +12 -12
  1014. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1015. package/dist/unstable/reactivity/AtomRpc.js +59 -31
  1016. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1017. package/dist/unstable/reactivity/Reactivity.d.ts +2 -2
  1018. package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
  1019. package/dist/unstable/reactivity/Reactivity.js +6 -6
  1020. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1021. package/dist/unstable/rpc/Rpc.d.ts +137 -19
  1022. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1023. package/dist/unstable/rpc/Rpc.js +99 -7
  1024. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1025. package/dist/unstable/rpc/RpcClient.d.ts +26 -47
  1026. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1027. package/dist/unstable/rpc/RpcClient.js +117 -75
  1028. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1029. package/dist/unstable/rpc/RpcClientError.d.ts +2 -2
  1030. package/dist/unstable/rpc/RpcGroup.d.ts +15 -11
  1031. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  1032. package/dist/unstable/rpc/RpcGroup.js +30 -20
  1033. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1034. package/dist/unstable/rpc/RpcMiddleware.d.ts +12 -12
  1035. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  1036. package/dist/unstable/rpc/RpcMiddleware.js +5 -5
  1037. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1038. package/dist/unstable/rpc/RpcSchema.d.ts +14 -1
  1039. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  1040. package/dist/unstable/rpc/RpcSchema.js +17 -2
  1041. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1042. package/dist/unstable/rpc/RpcSerialization.d.ts +13 -2
  1043. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1044. package/dist/unstable/rpc/RpcSerialization.js +60 -27
  1045. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1046. package/dist/unstable/rpc/RpcServer.d.ts +8 -12
  1047. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  1048. package/dist/unstable/rpc/RpcServer.js +73 -43
  1049. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1050. package/dist/unstable/rpc/RpcWorker.d.ts +2 -2
  1051. package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
  1052. package/dist/unstable/rpc/RpcWorker.js +4 -4
  1053. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1054. package/dist/unstable/rpc/Utils.d.ts +6 -3
  1055. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  1056. package/dist/unstable/rpc/Utils.js +46 -5
  1057. package/dist/unstable/rpc/Utils.js.map +1 -1
  1058. package/dist/unstable/schema/Model.d.ts +24 -3
  1059. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1060. package/dist/unstable/schema/Model.js +17 -4
  1061. package/dist/unstable/schema/Model.js.map +1 -1
  1062. package/dist/unstable/schema/VariantSchema.d.ts +7 -7
  1063. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  1064. package/dist/unstable/schema/VariantSchema.js +7 -18
  1065. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1066. package/dist/unstable/socket/Socket.d.ts +35 -15
  1067. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1068. package/dist/unstable/socket/Socket.js +34 -27
  1069. package/dist/unstable/socket/Socket.js.map +1 -1
  1070. package/dist/unstable/socket/SocketServer.d.ts +8 -5
  1071. package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
  1072. package/dist/unstable/socket/SocketServer.js +2 -2
  1073. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1074. package/dist/unstable/sql/Migrator.d.ts +1 -1
  1075. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  1076. package/dist/unstable/sql/Migrator.js +2 -2
  1077. package/dist/unstable/sql/Migrator.js.map +1 -1
  1078. package/dist/unstable/sql/SqlClient.d.ts +24 -6
  1079. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1080. package/dist/unstable/sql/SqlClient.js +37 -32
  1081. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1082. package/dist/unstable/sql/SqlConnection.d.ts +2 -2
  1083. package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
  1084. package/dist/unstable/sql/SqlConnection.js +5 -2
  1085. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1086. package/dist/unstable/sql/SqlError.d.ts +237 -17
  1087. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  1088. package/dist/unstable/sql/SqlError.js +260 -4
  1089. package/dist/unstable/sql/SqlError.js.map +1 -1
  1090. package/dist/unstable/sql/SqlModel.d.ts +8 -9
  1091. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  1092. package/dist/unstable/sql/SqlModel.js +12 -38
  1093. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1094. package/dist/unstable/sql/SqlResolver.js +24 -17
  1095. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1096. package/dist/unstable/sql/SqlSchema.d.ts +17 -6
  1097. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  1098. package/dist/unstable/sql/SqlSchema.js +17 -7
  1099. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1100. package/dist/unstable/sql/Statement.d.ts +3 -5
  1101. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  1102. package/dist/unstable/sql/Statement.js +14 -13
  1103. package/dist/unstable/sql/Statement.js.map +1 -1
  1104. package/dist/unstable/workers/Transferable.d.ts +4 -4
  1105. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  1106. package/dist/unstable/workers/Transferable.js +7 -7
  1107. package/dist/unstable/workers/Transferable.js.map +1 -1
  1108. package/dist/unstable/workers/Worker.d.ts +3 -3
  1109. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  1110. package/dist/unstable/workers/Worker.js +6 -3
  1111. package/dist/unstable/workers/Worker.js.map +1 -1
  1112. package/dist/unstable/workers/WorkerError.d.ts +5 -5
  1113. package/dist/unstable/workers/WorkerRunner.d.ts +2 -2
  1114. package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
  1115. package/dist/unstable/workers/WorkerRunner.js +5 -2
  1116. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1117. package/dist/unstable/workflow/Activity.d.ts +8 -3
  1118. package/dist/unstable/workflow/Activity.d.ts.map +1 -1
  1119. package/dist/unstable/workflow/Activity.js +25 -11
  1120. package/dist/unstable/workflow/Activity.js.map +1 -1
  1121. package/dist/unstable/workflow/DurableClock.d.ts +3 -6
  1122. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  1123. package/dist/unstable/workflow/DurableClock.js +6 -6
  1124. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1125. package/dist/unstable/workflow/DurableDeferred.d.ts +2 -5
  1126. package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
  1127. package/dist/unstable/workflow/DurableDeferred.js +33 -15
  1128. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1129. package/dist/unstable/workflow/Workflow.d.ts +12 -14
  1130. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1131. package/dist/unstable/workflow/Workflow.js +30 -26
  1132. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1133. package/dist/unstable/workflow/WorkflowEngine.d.ts +24 -7
  1134. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  1135. package/dist/unstable/workflow/WorkflowEngine.js +165 -16
  1136. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1137. package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
  1138. package/dist/unstable/workflow/WorkflowProxyServer.js +4 -4
  1139. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1140. package/package.json +11 -10
  1141. package/src/Array.ts +304 -447
  1142. package/src/BigDecimal.ts +137 -82
  1143. package/src/BigInt.ts +53 -45
  1144. package/src/Brand.ts +3 -5
  1145. package/src/Cache.ts +27 -54
  1146. package/src/Cause.ts +57 -22
  1147. package/src/Channel.ts +687 -220
  1148. package/src/Chunk.ts +149 -331
  1149. package/src/Clock.ts +2 -2
  1150. package/src/Combiner.ts +280 -13
  1151. package/src/Config.ts +214 -52
  1152. package/src/ConfigProvider.ts +5 -5
  1153. package/src/Console.ts +2 -2
  1154. package/src/Context.ts +1454 -0
  1155. package/src/Cron.ts +155 -63
  1156. package/src/Data.ts +530 -368
  1157. package/src/DateTime.ts +77 -258
  1158. package/src/Deferred.ts +15 -6
  1159. package/src/Duration.ts +151 -81
  1160. package/src/Effect.ts +1633 -1055
  1161. package/src/Effectable.ts +47 -0
  1162. package/src/Equal.ts +293 -109
  1163. package/src/Equivalence.ts +114 -52
  1164. package/src/ErrorReporter.ts +458 -0
  1165. package/src/ExecutionPlan.ts +8 -9
  1166. package/src/Exit.ts +24 -12
  1167. package/src/Fiber.ts +17 -8
  1168. package/src/FiberHandle.ts +15 -14
  1169. package/src/FiberMap.ts +27 -27
  1170. package/src/FiberSet.ts +5 -5
  1171. package/src/FileSystem.ts +30 -26
  1172. package/src/Filter.ts +4 -62
  1173. package/src/Formatter.ts +268 -60
  1174. package/src/Function.ts +2 -10
  1175. package/src/Graph.ts +123 -112
  1176. package/src/Hash.ts +2 -2
  1177. package/src/HashMap.ts +26 -19
  1178. package/src/Inspectable.ts +2 -22
  1179. package/src/Iterable.ts +117 -63
  1180. package/src/JsonSchema.ts +383 -10
  1181. package/src/Latch.ts +85 -3
  1182. package/src/Layer.ts +728 -441
  1183. package/src/LayerMap.ts +38 -35
  1184. package/src/LogLevel.ts +37 -0
  1185. package/src/Logger.ts +35 -102
  1186. package/src/ManagedRuntime.ts +61 -48
  1187. package/src/Metric.ts +64 -66
  1188. package/src/MutableHashMap.ts +9 -0
  1189. package/src/MutableHashSet.ts +9 -0
  1190. package/src/MutableList.ts +3 -0
  1191. package/src/Newtype.ts +308 -0
  1192. package/src/Number.ts +98 -29
  1193. package/src/Optic.ts +948 -19
  1194. package/src/Option.ts +34 -24
  1195. package/src/Order.ts +39 -32
  1196. package/src/PartitionedSemaphore.ts +414 -0
  1197. package/src/Path.ts +2 -2
  1198. package/src/Pool.ts +9 -9
  1199. package/src/Predicate.ts +1 -1
  1200. package/src/PubSub.ts +20 -11
  1201. package/src/Pull.ts +1 -1
  1202. package/src/Queue.ts +11 -9
  1203. package/src/Random.ts +51 -14
  1204. package/src/RcMap.ts +19 -19
  1205. package/src/RcRef.ts +1 -1
  1206. package/src/Record.ts +94 -199
  1207. package/src/Redactable.ts +146 -72
  1208. package/src/Reducer.ts +166 -7
  1209. package/src/References.ts +283 -287
  1210. package/src/Request.ts +5 -5
  1211. package/src/RequestResolver.ts +34 -35
  1212. package/src/Resource.ts +6 -5
  1213. package/src/Result.ts +2 -4
  1214. package/src/Runtime.ts +102 -6
  1215. package/src/Schedule.ts +243 -336
  1216. package/src/Scheduler.ts +52 -129
  1217. package/src/Schema.ts +3769 -597
  1218. package/src/SchemaAST.ts +480 -302
  1219. package/src/SchemaGetter.ts +80 -24
  1220. package/src/SchemaIssue.ts +28 -15
  1221. package/src/SchemaParser.ts +100 -29
  1222. package/src/SchemaRepresentation.ts +57 -33
  1223. package/src/SchemaTransformation.ts +321 -32
  1224. package/src/Scope.ts +2 -2
  1225. package/src/ScopedCache.ts +8 -8
  1226. package/src/Semaphore.ts +268 -182
  1227. package/src/Sink.ts +89 -34
  1228. package/src/Stdio.ts +29 -6
  1229. package/src/Stream.ts +908 -752
  1230. package/src/String.ts +122 -69
  1231. package/src/Struct.ts +7 -7
  1232. package/src/SubscriptionRef.ts +98 -118
  1233. package/src/Terminal.ts +5 -4
  1234. package/src/Tracer.ts +23 -22
  1235. package/src/Trie.ts +44 -31
  1236. package/src/TxChunk.ts +26 -16
  1237. package/src/TxDeferred.ts +391 -0
  1238. package/src/TxHashMap.ts +347 -291
  1239. package/src/TxHashSet.ts +54 -61
  1240. package/src/TxPriorityQueue.ts +762 -0
  1241. package/src/TxPubSub.ts +787 -0
  1242. package/src/TxQueue.ts +221 -245
  1243. package/src/TxReentrantLock.ts +729 -0
  1244. package/src/TxRef.ts +31 -31
  1245. package/src/TxSemaphore.ts +203 -31
  1246. package/src/TxSubscriptionRef.ts +637 -0
  1247. package/src/Types.ts +75 -23
  1248. package/src/Unify.ts +26 -2
  1249. package/src/Utils.ts +137 -111
  1250. package/src/index.ts +896 -73
  1251. package/src/internal/core.ts +9 -10
  1252. package/src/internal/dateTime.ts +91 -96
  1253. package/src/internal/effect.ts +1179 -614
  1254. package/src/internal/hashMap.ts +12 -10
  1255. package/src/internal/layer.ts +7 -7
  1256. package/src/internal/option.ts +7 -0
  1257. package/src/internal/random.ts +20 -0
  1258. package/src/internal/rcRef.ts +12 -12
  1259. package/src/internal/references.ts +72 -0
  1260. package/src/internal/request.ts +8 -8
  1261. package/src/internal/schedule.ts +3 -1
  1262. package/src/internal/schema/annotations.ts +2 -0
  1263. package/src/internal/schema/representation.ts +82 -97
  1264. package/src/internal/schema/schema.ts +68 -1
  1265. package/src/internal/trie.ts +21 -15
  1266. package/src/testing/TestClock.ts +6 -6
  1267. package/src/testing/TestSchema.ts +333 -36
  1268. package/src/testing/index.ts +64 -1
  1269. package/src/unstable/ai/AiError.ts +111 -53
  1270. package/src/unstable/ai/AnthropicStructuredOutput.ts +7 -3
  1271. package/src/unstable/ai/Chat.ts +136 -88
  1272. package/src/unstable/ai/EmbeddingModel.ts +209 -0
  1273. package/src/unstable/ai/IdGenerator.ts +2 -2
  1274. package/src/unstable/ai/LanguageModel.ts +685 -255
  1275. package/src/unstable/ai/McpSchema.ts +84 -22
  1276. package/src/unstable/ai/McpServer.ts +307 -87
  1277. package/src/unstable/ai/Model.ts +44 -13
  1278. package/src/unstable/ai/OpenAiStructuredOutput.ts +9 -2
  1279. package/src/unstable/ai/Prompt.ts +23 -29
  1280. package/src/unstable/ai/Response.ts +29 -31
  1281. package/src/unstable/ai/ResponseIdTracker.ts +95 -0
  1282. package/src/unstable/ai/Telemetry.ts +2 -2
  1283. package/src/unstable/ai/Tokenizer.ts +2 -2
  1284. package/src/unstable/ai/Tool.ts +62 -36
  1285. package/src/unstable/ai/Toolkit.ts +17 -26
  1286. package/src/unstable/ai/index.ts +24 -1
  1287. package/src/unstable/ai/internal/codec-transformer.ts +3 -9
  1288. package/src/unstable/cli/Argument.ts +5 -8
  1289. package/src/unstable/cli/CliError.ts +67 -66
  1290. package/src/unstable/cli/CliOutput.ts +87 -15
  1291. package/src/unstable/cli/Command.ts +808 -193
  1292. package/src/unstable/cli/Completions.ts +107 -0
  1293. package/src/unstable/cli/Flag.ts +5 -6
  1294. package/src/unstable/cli/GlobalFlag.ts +242 -0
  1295. package/src/unstable/cli/HelpDoc.ts +91 -11
  1296. package/src/unstable/cli/Param.ts +54 -27
  1297. package/src/unstable/cli/Primitive.ts +2 -2
  1298. package/src/unstable/cli/Prompt.ts +275 -104
  1299. package/src/unstable/cli/index.ts +12 -0
  1300. package/src/unstable/cli/internal/command.ts +125 -64
  1301. package/src/unstable/cli/internal/completions/bash.ts +7 -7
  1302. package/src/unstable/cli/internal/completions/{CommandDescriptor.ts → descriptor.ts} +16 -58
  1303. package/src/unstable/cli/internal/completions/fish.ts +7 -7
  1304. package/src/unstable/cli/internal/completions/zsh.ts +8 -14
  1305. package/src/unstable/cli/internal/config.ts +49 -0
  1306. package/src/unstable/cli/internal/help.ts +171 -0
  1307. package/src/unstable/cli/internal/parser.ts +201 -84
  1308. package/src/unstable/cluster/ClusterCron.ts +2 -2
  1309. package/src/unstable/cluster/ClusterSchema.ts +38 -10
  1310. package/src/unstable/cluster/ClusterWorkflowEngine.ts +142 -80
  1311. package/src/unstable/cluster/DeliverAt.ts +1 -1
  1312. package/src/unstable/cluster/Entity.ts +58 -45
  1313. package/src/unstable/cluster/EntityAddress.ts +1 -1
  1314. package/src/unstable/cluster/EntityProxy.ts +3 -3
  1315. package/src/unstable/cluster/EntityProxyServer.ts +6 -6
  1316. package/src/unstable/cluster/EntityResource.ts +6 -6
  1317. package/src/unstable/cluster/HttpRunner.ts +2 -2
  1318. package/src/unstable/cluster/K8sHttpClient.ts +10 -10
  1319. package/src/unstable/cluster/Message.ts +30 -17
  1320. package/src/unstable/cluster/MessageStorage.ts +74 -45
  1321. package/src/unstable/cluster/Reply.ts +13 -10
  1322. package/src/unstable/cluster/Runner.ts +1 -1
  1323. package/src/unstable/cluster/RunnerAddress.ts +1 -1
  1324. package/src/unstable/cluster/RunnerHealth.ts +2 -2
  1325. package/src/unstable/cluster/RunnerServer.ts +11 -14
  1326. package/src/unstable/cluster/RunnerStorage.ts +9 -9
  1327. package/src/unstable/cluster/Runners.ts +22 -18
  1328. package/src/unstable/cluster/ShardId.ts +84 -74
  1329. package/src/unstable/cluster/Sharding.ts +75 -60
  1330. package/src/unstable/cluster/ShardingConfig.ts +39 -40
  1331. package/src/unstable/cluster/Snowflake.ts +2 -2
  1332. package/src/unstable/cluster/SqlMessageStorage.ts +29 -20
  1333. package/src/unstable/cluster/SqlRunnerStorage.ts +13 -7
  1334. package/src/unstable/cluster/internal/entityManager.ts +60 -41
  1335. package/src/unstable/cluster/internal/entityReaper.ts +2 -2
  1336. package/src/unstable/cluster/internal/resourceMap.ts +3 -3
  1337. package/src/unstable/devtools/DevToolsClient.ts +26 -21
  1338. package/src/unstable/devtools/DevToolsSchema.ts +16 -3
  1339. package/src/unstable/encoding/Ndjson.ts +17 -17
  1340. package/src/unstable/encoding/Sse.ts +3 -5
  1341. package/src/unstable/eventlog/Event.ts +0 -8
  1342. package/src/unstable/eventlog/EventGroup.ts +0 -4
  1343. package/src/unstable/eventlog/EventJournal.ts +148 -80
  1344. package/src/unstable/eventlog/EventLog.ts +360 -234
  1345. package/src/unstable/eventlog/EventLogEncryption.ts +18 -32
  1346. package/src/unstable/eventlog/EventLogMessage.ts +277 -0
  1347. package/src/unstable/eventlog/EventLogRemote.ts +264 -410
  1348. package/src/unstable/eventlog/EventLogServer.ts +183 -275
  1349. package/src/unstable/eventlog/EventLogServerEncrypted.ts +206 -0
  1350. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +749 -0
  1351. package/src/unstable/eventlog/EventLogSessionAuth.ts +437 -0
  1352. package/src/unstable/eventlog/{SqlEventLogJournal.ts → SqlEventJournal.ts} +38 -22
  1353. package/src/unstable/eventlog/{SqlEventLogServer.ts → SqlEventLogServerEncrypted.ts} +110 -43
  1354. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +506 -0
  1355. package/src/unstable/eventlog/index.ts +27 -2
  1356. package/src/unstable/eventlog/internal/identityRootSecretDerivation.ts +153 -0
  1357. package/src/unstable/http/Cookies.ts +94 -11
  1358. package/src/unstable/http/Etag.ts +7 -5
  1359. package/src/unstable/http/FetchHttpClient.ts +5 -5
  1360. package/src/unstable/http/Headers.ts +70 -20
  1361. package/src/unstable/http/HttpClient.ts +385 -42
  1362. package/src/unstable/http/HttpClientRequest.ts +151 -39
  1363. package/src/unstable/http/HttpClientResponse.ts +24 -8
  1364. package/src/unstable/http/HttpEffect.ts +71 -77
  1365. package/src/unstable/http/HttpIncomingMessage.ts +9 -8
  1366. package/src/unstable/http/HttpMethod.ts +16 -4
  1367. package/src/unstable/http/HttpMiddleware.ts +50 -50
  1368. package/src/unstable/http/HttpPlatform.ts +5 -4
  1369. package/src/unstable/http/HttpRouter.ts +46 -46
  1370. package/src/unstable/http/HttpServer.ts +5 -11
  1371. package/src/unstable/http/HttpServerError.ts +45 -47
  1372. package/src/unstable/http/HttpServerRequest.ts +414 -23
  1373. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  1374. package/src/unstable/http/HttpServerResponse.ts +351 -13
  1375. package/src/unstable/http/HttpStaticServer.ts +456 -0
  1376. package/src/unstable/http/HttpTraceContext.ts +31 -17
  1377. package/src/unstable/http/Multipart.ts +8 -8
  1378. package/src/unstable/http/Url.ts +650 -0
  1379. package/src/unstable/http/UrlParams.ts +30 -18
  1380. package/src/unstable/http/index.ts +10 -0
  1381. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  1382. package/src/unstable/httpapi/HttpApi.ts +22 -22
  1383. package/src/unstable/httpapi/HttpApiBuilder.ts +156 -66
  1384. package/src/unstable/httpapi/HttpApiClient.ts +185 -34
  1385. package/src/unstable/httpapi/HttpApiEndpoint.ts +225 -114
  1386. package/src/unstable/httpapi/HttpApiError.ts +129 -30
  1387. package/src/unstable/httpapi/HttpApiGroup.ts +18 -17
  1388. package/src/unstable/httpapi/HttpApiMiddleware.ts +95 -32
  1389. package/src/unstable/httpapi/HttpApiSchema.ts +106 -11
  1390. package/src/unstable/httpapi/HttpApiSecurity.ts +13 -13
  1391. package/src/unstable/httpapi/OpenApi.ts +74 -73
  1392. package/src/unstable/observability/Otlp.ts +12 -12
  1393. package/src/unstable/observability/OtlpExporter.ts +14 -10
  1394. package/src/unstable/observability/OtlpLogger.ts +13 -9
  1395. package/src/unstable/observability/OtlpMetrics.ts +6 -6
  1396. package/src/unstable/observability/OtlpSerialization.ts +2 -2
  1397. package/src/unstable/observability/OtlpTracer.ts +14 -10
  1398. package/src/unstable/observability/PrometheusMetrics.ts +5 -5
  1399. package/src/unstable/observability/internal/protobuf.ts +4 -4
  1400. package/src/unstable/persistence/KeyValueStore.ts +226 -3
  1401. package/src/unstable/persistence/Persistable.ts +3 -3
  1402. package/src/unstable/persistence/PersistedCache.ts +20 -17
  1403. package/src/unstable/persistence/PersistedQueue.ts +21 -21
  1404. package/src/unstable/persistence/Persistence.ts +7 -7
  1405. package/src/unstable/persistence/RateLimiter.ts +7 -7
  1406. package/src/unstable/persistence/Redis.ts +2 -2
  1407. package/src/unstable/process/ChildProcess.ts +6 -208
  1408. package/src/unstable/process/ChildProcessSpawner.ts +114 -15
  1409. package/src/unstable/reactivity/AsyncResult.ts +59 -17
  1410. package/src/unstable/reactivity/Atom.ts +280 -124
  1411. package/src/unstable/reactivity/AtomHttpApi.ts +127 -61
  1412. package/src/unstable/reactivity/AtomRegistry.ts +70 -16
  1413. package/src/unstable/reactivity/AtomRpc.ts +82 -37
  1414. package/src/unstable/reactivity/Reactivity.ts +6 -6
  1415. package/src/unstable/rpc/Rpc.ts +212 -32
  1416. package/src/unstable/rpc/RpcClient.ts +161 -142
  1417. package/src/unstable/rpc/RpcGroup.ts +51 -34
  1418. package/src/unstable/rpc/RpcMiddleware.ts +28 -22
  1419. package/src/unstable/rpc/RpcSchema.ts +24 -6
  1420. package/src/unstable/rpc/RpcSerialization.ts +97 -54
  1421. package/src/unstable/rpc/RpcServer.ts +91 -65
  1422. package/src/unstable/rpc/RpcWorker.ts +5 -5
  1423. package/src/unstable/rpc/Utils.ts +63 -4
  1424. package/src/unstable/schema/Model.ts +35 -6
  1425. package/src/unstable/schema/VariantSchema.ts +14 -27
  1426. package/src/unstable/socket/Socket.ts +102 -62
  1427. package/src/unstable/socket/SocketServer.ts +2 -2
  1428. package/src/unstable/sql/Migrator.ts +7 -5
  1429. package/src/unstable/sql/SqlClient.ts +48 -19
  1430. package/src/unstable/sql/SqlConnection.ts +2 -2
  1431. package/src/unstable/sql/SqlError.ts +365 -11
  1432. package/src/unstable/sql/SqlModel.ts +57 -85
  1433. package/src/unstable/sql/SqlResolver.ts +28 -20
  1434. package/src/unstable/sql/SqlSchema.ts +42 -26
  1435. package/src/unstable/sql/Statement.ts +21 -25
  1436. package/src/unstable/workers/Transferable.ts +17 -19
  1437. package/src/unstable/workers/Worker.ts +4 -4
  1438. package/src/unstable/workers/WorkerRunner.ts +2 -2
  1439. package/src/unstable/workflow/Activity.ts +36 -13
  1440. package/src/unstable/workflow/DurableClock.ts +11 -11
  1441. package/src/unstable/workflow/DurableDeferred.ts +36 -18
  1442. package/src/unstable/workflow/Workflow.ts +46 -35
  1443. package/src/unstable/workflow/WorkflowEngine.ts +236 -23
  1444. package/src/unstable/workflow/WorkflowProxyServer.ts +4 -4
  1445. package/dist/NullOr.d.ts +0 -149
  1446. package/dist/NullOr.d.ts.map +0 -1
  1447. package/dist/NullOr.js +0 -152
  1448. package/dist/NullOr.js.map +0 -1
  1449. package/dist/ServiceMap.d.ts +0 -1126
  1450. package/dist/ServiceMap.d.ts.map +0 -1
  1451. package/dist/ServiceMap.js.map +0 -1
  1452. package/dist/internal/schema/to-codec.d.ts +0 -2
  1453. package/dist/internal/schema/to-codec.d.ts.map +0 -1
  1454. package/dist/internal/schema/to-codec.js +0 -129
  1455. package/dist/internal/schema/to-codec.js.map +0 -1
  1456. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  1457. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  1458. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  1459. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  1460. package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts +0 -2
  1461. package/dist/unstable/cli/internal/completions/CommandDescriptor.d.ts.map +0 -1
  1462. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +0 -1
  1463. package/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
  1464. package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
  1465. package/dist/unstable/cli/internal/completions/Completions.js +0 -23
  1466. package/dist/unstable/cli/internal/completions/Completions.js.map +0 -1
  1467. package/dist/unstable/eventlog/SqlEventLogJournal.d.ts.map +0 -1
  1468. package/dist/unstable/eventlog/SqlEventLogJournal.js.map +0 -1
  1469. package/dist/unstable/eventlog/SqlEventLogServer.d.ts.map +0 -1
  1470. package/dist/unstable/eventlog/SqlEventLogServer.js.map +0 -1
  1471. package/src/NullOr.ts +0 -204
  1472. package/src/ServiceMap.ts +0 -1410
  1473. package/src/internal/schema/to-codec.ts +0 -148
  1474. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
  1475. package/src/unstable/cli/internal/completions/Completions.ts +0 -31
package/src/Optic.ts CHANGED
@@ -1,9 +1,98 @@
1
1
  /**
2
- * Design: "pretty good" persistency.
3
- * Real updates copy only the path; unrelated branches keep referential identity.
4
- * No-op updates may still allocate a new root/parents — callers must not rely on identity for no-ops.
2
+ * Composable, immutable accessors for reading and updating nested data
3
+ * structures without mutation.
4
+ *
5
+ * **Mental model**
6
+ *
7
+ * - **Optic** — a first-class reference to a piece inside a larger structure.
8
+ * Compose optics to reach deeply nested values.
9
+ * - **Iso** — lossless two-way conversion (`get`/`set`) between `S` and `A`.
10
+ * Extends both {@link Lens} and {@link Prism}.
11
+ * - **Lens** — focuses on exactly one part of `S`. `get` always succeeds;
12
+ * `replace` needs the original `S` to produce the updated whole.
13
+ * - **Prism** — focuses on a part that may not be present (e.g. a union
14
+ * variant). `getResult` can fail; `set` builds a new `S` from `A` alone.
15
+ * - **Optional** — the most general optic: both reading and writing can fail.
16
+ * - **Traversal** — focuses on zero or more elements of an array-like
17
+ * structure. Technically `Optional<S, ReadonlyArray<A>>`.
18
+ * - **Hierarchy** (strongest → weakest):
19
+ * `Iso > Lens | Prism > Optional`. Composing a weaker optic with any other
20
+ * produces the weaker kind.
21
+ *
22
+ * **Common tasks**
23
+ *
24
+ * - Start a chain → {@link id} (identity iso)
25
+ * - Drill into a struct key → `.key("name")` / `.optionalKey("name")`
26
+ * - Drill into a key that may not exist → `.at("name")`
27
+ * - Narrow a tagged union → `.tag("MyVariant")`
28
+ * - Narrow by type guard → `.refine(guard)`
29
+ * - Add validation → `.check(Schema.isGreaterThan(0))`
30
+ * - Filter out `undefined` → `.notUndefined()`
31
+ * - Pick/omit struct keys → `.pick(["a","b"])` / `.omit(["c"])`
32
+ * - Traverse array elements → `.forEach(el => el.key("field"))`
33
+ * - Build an iso → {@link makeIso}
34
+ * - Build a lens → {@link makeLens}
35
+ * - Build a prism → {@link makePrism}, {@link fromChecks}
36
+ * - Build an optional → {@link makeOptional}
37
+ * - Focus into `Option.Some` → {@link some}
38
+ * - Focus into `Result.Success`/`Failure` → {@link success}, {@link failure}
39
+ * - Convert record ↔ entries → {@link entries}
40
+ * - Extract all traversal elements → {@link getAll}
41
+ *
42
+ * **Gotchas**
43
+ *
44
+ * - Updates are structurally persistent: only nodes on the path are cloned.
45
+ * Unrelated branches keep referential identity. However, **no-op updates
46
+ * may still allocate** a new root — do not rely on reference identity to
47
+ * detect no-ops.
48
+ * - `replace` silently returns the original `S` when the optic cannot focus
49
+ * (e.g. wrong tag). Use `replaceResult` for explicit failure.
50
+ * - `modify` also returns the original `S` on focus failure — it never throws.
51
+ * - `.key()` and `.optionalKey()` do not work on union types (compile error).
52
+ * - Only plain objects (`Object.prototype` or `null` prototype) and arrays can
53
+ * be cloned. Class instances cause a runtime error on `replace`/`modify`.
54
+ *
55
+ * **Quickstart**
56
+ *
57
+ * **Example** (reading and updating nested state)
58
+ *
59
+ * ```ts
60
+ * import { Optic } from "effect"
61
+ *
62
+ * type State = { user: { name: string; age: number } }
63
+ *
64
+ * const _age = Optic.id<State>().key("user").key("age")
65
+ *
66
+ * const s1: State = { user: { name: "Alice", age: 30 } }
67
+ *
68
+ * // Read
69
+ * console.log(_age.get(s1))
70
+ * // Output: 30
71
+ *
72
+ * // Update immutably
73
+ * const s2 = _age.replace(31, s1)
74
+ * console.log(s2)
75
+ * // Output: { user: { name: "Alice", age: 31 } }
76
+ *
77
+ * // Modify with a function
78
+ * const s3 = _age.modify((n) => n + 1)(s1)
79
+ * console.log(s3)
80
+ * // Output: { user: { name: "Alice", age: 31 } }
81
+ *
82
+ * // Referential identity is preserved for unrelated branches
83
+ * console.log(s2.user !== s1.user)
84
+ * // Output: true (on the path)
85
+ * ```
86
+ *
87
+ * **See also**
88
+ *
89
+ * - {@link id} — entry point for optic chains
90
+ * - {@link Lens} / {@link Prism} / {@link Optional} — core optic types
91
+ * - {@link Traversal} / {@link getAll} — multi-focus optics
92
+ * - {@link some} / {@link success} / {@link failure} — built-in prisms
5
93
  *
6
94
  * @since 4.0.0
95
+ * @module
7
96
  */
8
97
 
9
98
  import { format } from "./Formatter.ts"
@@ -18,12 +107,77 @@ import * as Struct from "./Struct.ts"
18
107
  import type { IsUnion } from "./Types.ts"
19
108
 
20
109
  /**
110
+ * A lossless, reversible conversion between types `S` and `A`.
111
+ *
112
+ * When to use:
113
+ * - You have a pair of functions that convert back and forth without losing
114
+ * information (e.g. `Record ↔ entries`, `Celsius ↔ Fahrenheit`).
115
+ * - You want the strongest optic that can be composed with any other.
116
+ *
117
+ * Behavior:
118
+ * - `get(s)` always succeeds and returns an `A`.
119
+ * - `set(a)` always succeeds and returns an `S`.
120
+ * - `get(set(a)) === a` and `set(get(s))` equals `s` (round-trip laws).
121
+ * - Extends both {@link Lens} and {@link Prism}.
122
+ *
123
+ * **Example** (Celsius ↔ Fahrenheit)
124
+ *
125
+ * ```ts
126
+ * import { Optic } from "effect"
127
+ *
128
+ * const fahrenheit = Optic.makeIso<number, number>(
129
+ * (c) => c * 9 / 5 + 32,
130
+ * (f) => (f - 32) * 5 / 9
131
+ * )
132
+ *
133
+ * console.log(fahrenheit.get(100))
134
+ * // Output: 212
135
+ *
136
+ * console.log(fahrenheit.set(32))
137
+ * // Output: 0
138
+ * ```
139
+ *
140
+ * @see {@link makeIso} — constructor
141
+ * @see {@link Lens} — when you only need a one-directional focus into a whole
142
+ * @see {@link Prism} — when the focus may not be present
143
+ *
21
144
  * @category Iso
22
145
  * @since 4.0.0
23
146
  */
24
147
  export interface Iso<in out S, in out A> extends Lens<S, A>, Prism<S, A> {}
25
148
 
26
149
  /**
150
+ * Creates an {@link Iso} from a pair of conversion functions.
151
+ *
152
+ * When to use:
153
+ * - You have two pure functions that form a lossless round-trip between `S`
154
+ * and `A`.
155
+ *
156
+ * Behavior:
157
+ * - Does not mutate inputs.
158
+ * - The returned optic can be composed with any other optic.
159
+ *
160
+ * **Example** (wrapping/unwrapping a branded type)
161
+ *
162
+ * ```ts
163
+ * import { Optic } from "effect"
164
+ *
165
+ * type Meters = { readonly value: number }
166
+ * const meters = Optic.makeIso<Meters, number>(
167
+ * (m) => m.value,
168
+ * (n) => ({ value: n })
169
+ * )
170
+ *
171
+ * console.log(meters.get({ value: 100 }))
172
+ * // Output: 100
173
+ *
174
+ * console.log(meters.set(42))
175
+ * // Output: { value: 42 }
176
+ * ```
177
+ *
178
+ * @see {@link Iso} — the type this function returns
179
+ * @see {@link id} — identity iso (no conversion)
180
+ *
27
181
  * @category Constructors
28
182
  * @since 4.0.0
29
183
  */
@@ -32,6 +186,37 @@ export function makeIso<S, A>(get: (s: S) => A, set: (a: A) => S): Iso<S, A> {
32
186
  }
33
187
 
34
188
  /**
189
+ * Focuses on exactly one part `A` inside a whole `S`.
190
+ *
191
+ * When to use:
192
+ * - You always have a value to read (the part exists unconditionally).
193
+ * - You need the original `S` to produce the updated whole (unlike
194
+ * {@link Iso}).
195
+ *
196
+ * Behavior:
197
+ * - `get(s)` always succeeds and returns `A`.
198
+ * - `replace(a, s)` returns a new `S` with the focused part replaced.
199
+ * - Extends {@link Optional}.
200
+ * - Composing a Lens with a {@link Prism} or {@link Optional} produces an
201
+ * {@link Optional}.
202
+ *
203
+ * **Example** (focusing on a struct field)
204
+ *
205
+ * ```ts
206
+ * import { Optic } from "effect"
207
+ *
208
+ * type Person = { readonly name: string; readonly age: number }
209
+ *
210
+ * const _name = Optic.id<Person>().key("name")
211
+ *
212
+ * console.log(_name.get({ name: "Alice", age: 30 }))
213
+ * // Output: "Alice"
214
+ * ```
215
+ *
216
+ * @see {@link makeLens} — constructor
217
+ * @see {@link Iso} — when conversion is lossless in both directions
218
+ * @see {@link Optional} — when reading can also fail
219
+ *
35
220
  * @category Lens
36
221
  * @since 4.0.0
37
222
  */
@@ -40,6 +225,37 @@ export interface Lens<in out S, in out A> extends Optional<S, A> {
40
225
  }
41
226
 
42
227
  /**
228
+ * Creates a {@link Lens} from a getter and a replacer.
229
+ *
230
+ * When to use:
231
+ * - You can always extract `A` from `S` and produce a new `S` by
232
+ * substituting a new `A`.
233
+ *
234
+ * Behavior:
235
+ * - Does not mutate inputs.
236
+ * - `replace(a, s)` should return a structurally new `S` with `a` in place
237
+ * of the old focus.
238
+ *
239
+ * **Example** (lens into the first element of a pair)
240
+ *
241
+ * ```ts
242
+ * import { Optic } from "effect"
243
+ *
244
+ * const _first = Optic.makeLens<readonly [string, number], string>(
245
+ * (pair) => pair[0],
246
+ * (s, pair) => [s, pair[1]]
247
+ * )
248
+ *
249
+ * console.log(_first.get(["hello", 42]))
250
+ * // Output: "hello"
251
+ *
252
+ * console.log(_first.replace("world", ["hello", 42]))
253
+ * // Output: ["world", 42]
254
+ * ```
255
+ *
256
+ * @see {@link Lens} — the type this function returns
257
+ * @see {@link makeIso} — when no original `S` is needed for `set`
258
+ *
43
259
  * @category Constructors
44
260
  * @since 4.0.0
45
261
  */
@@ -48,6 +264,44 @@ export function makeLens<S, A>(get: (s: S) => A, replace: (a: A, s: S) => S): Le
48
264
  }
49
265
 
50
266
  /**
267
+ * Focuses on a part `A` of `S` that may not be present (e.g. a union
268
+ * variant or a validated subset).
269
+ *
270
+ * When to use:
271
+ * - The focus is conditional — reading can fail (wrong variant, failed
272
+ * validation).
273
+ * - Building a new `S` from `A` does **not** require the original `S`.
274
+ *
275
+ * Behavior:
276
+ * - `getResult(s)` returns `Result.Success<A>` when the focus matches, or
277
+ * `Result.Failure<string>` with an error message.
278
+ * - `set(a)` always succeeds and returns a new `S`.
279
+ * - Extends {@link Optional}.
280
+ * - Composing two Prisms produces a Prism; composing a Prism with a
281
+ * {@link Lens} produces an {@link Optional}.
282
+ *
283
+ * **Example** (narrowing a tagged union)
284
+ *
285
+ * ```ts
286
+ * import { Optic, Result } from "effect"
287
+ *
288
+ * type Shape =
289
+ * | { readonly _tag: "Circle"; readonly radius: number }
290
+ * | { readonly _tag: "Rect"; readonly width: number }
291
+ *
292
+ * const _circle = Optic.id<Shape>().tag("Circle")
293
+ *
294
+ * console.log(Result.isSuccess(_circle.getResult({ _tag: "Circle", radius: 5 })))
295
+ * // Output: true
296
+ *
297
+ * console.log(Result.isFailure(_circle.getResult({ _tag: "Rect", width: 10 })))
298
+ * // Output: true
299
+ * ```
300
+ *
301
+ * @see {@link makePrism} — constructor
302
+ * @see {@link fromChecks} — build a Prism from schema checks
303
+ * @see {@link Lens} — when reading always succeeds
304
+ *
51
305
  * @category Prism
52
306
  * @since 4.0.0
53
307
  */
@@ -56,6 +310,39 @@ export interface Prism<in out S, in out A> extends Optional<S, A> {
56
310
  }
57
311
 
58
312
  /**
313
+ * Creates a {@link Prism} from a fallible getter and an infallible setter.
314
+ *
315
+ * When to use:
316
+ * - Reading can fail (the part may not exist in `S`), but building `S`
317
+ * from `A` always succeeds.
318
+ *
319
+ * Behavior:
320
+ * - Does not mutate inputs.
321
+ * - `getResult` should return `Result.fail(message)` on mismatch.
322
+ *
323
+ * **Example** (parsing a string to a number)
324
+ *
325
+ * ```ts
326
+ * import { Optic, Result } from "effect"
327
+ *
328
+ * const numeric = Optic.makePrism<string, number>(
329
+ * (s) => {
330
+ * const n = Number(s)
331
+ * return Number.isNaN(n) ? Result.fail("not a number") : Result.succeed(n)
332
+ * },
333
+ * String
334
+ * )
335
+ *
336
+ * console.log(Result.isSuccess(numeric.getResult("42")))
337
+ * // Output: true
338
+ *
339
+ * console.log(numeric.set(42))
340
+ * // Output: "42"
341
+ * ```
342
+ *
343
+ * @see {@link Prism} — the type this function returns
344
+ * @see {@link fromChecks} — build from `Schema` checks instead
345
+ *
59
346
  * @category Constructors
60
347
  * @since 4.0.0
61
348
  */
@@ -64,6 +351,39 @@ export function makePrism<S, A>(getResult: (s: S) => Result.Result<A, string>, s
64
351
  }
65
352
 
66
353
  /**
354
+ * Creates a {@link Prism} from one or more `Schema` validation checks.
355
+ *
356
+ * When to use:
357
+ * - You want to narrow `T` to the subset that passes certain validation
358
+ * rules (e.g. positive integer).
359
+ * - You already have `Schema.isGreaterThan`, `Schema.isInt`, etc.
360
+ *
361
+ * Behavior:
362
+ * - `getResult` runs all checks; fails with a combined error message when
363
+ * any check fails.
364
+ * - `set` is identity — the value passes through unchanged.
365
+ * - Does not mutate inputs.
366
+ *
367
+ * **Example** (positive integer prism)
368
+ *
369
+ * ```ts
370
+ * import { Optic, Result, Schema } from "effect"
371
+ *
372
+ * const posInt = Optic.fromChecks<number>(
373
+ * Schema.isGreaterThan(0),
374
+ * Schema.isInt()
375
+ * )
376
+ *
377
+ * console.log(Result.isSuccess(posInt.getResult(3)))
378
+ * // Output: true
379
+ *
380
+ * console.log(Result.isFailure(posInt.getResult(-1)))
381
+ * // Output: true
382
+ * ```
383
+ *
384
+ * @see {@link makePrism} — constructor with custom getter/setter
385
+ * @see {@link Prism} — the type this function returns
386
+ *
67
387
  * @category Constructors
68
388
  * @since 4.0.0
69
389
  */
@@ -209,21 +529,127 @@ function compose(a: Node, b: Node): Node {
209
529
  type ForbidUnion<A, Message extends string> = IsUnion<A> extends true ? [Message] : []
210
530
 
211
531
  /**
532
+ * The most general optic — both reading and writing can fail.
533
+ *
534
+ * When to use:
535
+ * - The focus may not exist in `S` **and** writing a new `A` back may also
536
+ * fail (e.g. the source no longer matches the expected shape).
537
+ * - As the base type: every optic ({@link Iso}, {@link Lens}, {@link Prism},
538
+ * {@link Traversal}) extends `Optional`.
539
+ *
540
+ * Behavior:
541
+ * - `getResult(s)` returns `Result.Success<A>` or `Result.Failure<string>`.
542
+ * - `replaceResult(a, s)` returns `Result.Success<S>` or
543
+ * `Result.Failure<string>`.
544
+ * - `replace(a, s)` returns the original `s` on failure (never throws).
545
+ * - `modify(f)` returns the original `s` on failure (never throws).
546
+ * - All operations are pure; inputs are never mutated.
547
+ *
548
+ * **Example** (record key that may be absent)
549
+ *
550
+ * ```ts
551
+ * import { Optic, Result } from "effect"
552
+ *
553
+ * type Env = { [key: string]: string }
554
+ * const _home = Optic.id<Env>().at("HOME")
555
+ *
556
+ * console.log(Result.isSuccess(_home.getResult({ HOME: "/root" })))
557
+ * // Output: true
558
+ *
559
+ * console.log(Result.isFailure(_home.getResult({ PATH: "/bin" })))
560
+ * // Output: true
561
+ *
562
+ * // replace returns original on failure
563
+ * console.log(_home.replace("/new", { PATH: "/bin" }))
564
+ * // Output: { PATH: "/bin" }
565
+ * ```
566
+ *
567
+ * @see {@link makeOptional} — constructor
568
+ * @see {@link Lens} — when reading always succeeds
569
+ * @see {@link Prism} — when writing always succeeds
570
+ *
212
571
  * @category Optional
213
572
  * @since 4.0.0
214
573
  */
215
574
  export interface Optional<in out S, in out A> {
216
575
  readonly node: Node
576
+ /**
577
+ * Attempts to read the focus `A` from the whole `S`.
578
+ *
579
+ * Returns `Result.Success<A>` when the focus exists, or
580
+ * `Result.Failure<string>` with a descriptive error otherwise.
581
+ */
217
582
  readonly getResult: (s: S) => Result.Result<A, string>
583
+ /**
584
+ * Replaces the focus in `S` with a new `A`. Returns the original `s`
585
+ * unchanged when the optic cannot focus (never throws).
586
+ */
218
587
  readonly replace: (a: A, s: S) => S
588
+ /**
589
+ * Like {@link replace}, but returns an explicit `Result` so callers can
590
+ * detect and handle failure.
591
+ */
219
592
  readonly replaceResult: (a: A, s: S) => Result.Result<S, string>
593
+ /**
594
+ * Composes this optic with another. The result type is the weakest of
595
+ * the two: Iso + Iso = Iso, Lens + Prism = Optional, etc.
596
+ *
597
+ * **Example** (composing a lens with a prism)
598
+ *
599
+ * ```ts
600
+ * import { Optic, Option } from "effect"
601
+ *
602
+ * type State = { value: Option.Option<number> }
603
+ *
604
+ * const _inner = Optic.id<State>().key("value").compose(Optic.some())
605
+ * // _inner is Optional<State, number>
606
+ * ```
607
+ *
608
+ * @see {@link id} — start a composition chain
609
+ */
220
610
  compose<B>(this: Iso<S, A>, that: Iso<A, B>): Iso<S, B>
221
611
  compose<B>(this: Lens<S, A>, that: Lens<A, B>): Lens<S, B>
222
612
  compose<B>(this: Prism<S, A>, that: Prism<A, B>): Prism<S, B>
223
613
  compose<B>(this: Optional<S, A>, that: Optional<A, B>): Optional<S, B>
224
614
 
615
+ /**
616
+ * Returns a function `(s: S) => S` that applies `f` to the focused value.
617
+ * If the optic cannot focus, the original `s` is returned unchanged.
618
+ *
619
+ * **Example** (incrementing a nested field)
620
+ *
621
+ * ```ts
622
+ * import { Optic } from "effect"
623
+ *
624
+ * type S = { readonly a: { readonly b: number } }
625
+ * const _b = Optic.id<S>().key("a").key("b")
626
+ *
627
+ * const inc = _b.modify((n) => n + 1)
628
+ * console.log(inc({ a: { b: 1 } }))
629
+ * // Output: { a: { b: 2 } }
630
+ * ```
631
+ */
225
632
  modify(f: (a: A) => A): (s: S) => S
226
633
 
634
+ /**
635
+ * Focuses on a property of the current struct/tuple focus.
636
+ *
637
+ * - On a {@link Lens}, returns a Lens.
638
+ * - On an {@link Optional}, returns an Optional.
639
+ * - Does **not** work on union types (compile error).
640
+ *
641
+ * **Example** (drilling into nested structs)
642
+ *
643
+ * ```ts
644
+ * import { Optic } from "effect"
645
+ *
646
+ * type S = { readonly a: { readonly b: number } }
647
+ * const _b = Optic.id<S>().key("a").key("b")
648
+ *
649
+ * console.log(_b.get({ a: { b: 42 } }))
650
+ * // Output: 42
651
+ * ```
652
+ */
227
653
  key<S, A extends object, Key extends keyof A>(
228
654
  this: Lens<S, A>,
229
655
  key: Key,
@@ -235,6 +661,28 @@ export interface Optional<in out S, in out A> {
235
661
  ..._err: ForbidUnion<A, "cannot use `key` on a union type">
236
662
  ): Optional<S, A[Key]>
237
663
 
664
+ /**
665
+ * Focuses on a key where setting `undefined` **removes** the key from the
666
+ * struct (or splices the element from an array/tuple).
667
+ *
668
+ * - The focus type becomes `A[Key] | undefined`.
669
+ * - Does **not** work on union types (compile error).
670
+ *
671
+ * **Example** (deleting an optional key)
672
+ *
673
+ * ```ts
674
+ * import { Optic } from "effect"
675
+ *
676
+ * type S = { readonly a?: number }
677
+ * const _a = Optic.id<S>().optionalKey("a")
678
+ *
679
+ * console.log(_a.replace(undefined, { a: 1 }))
680
+ * // Output: {}
681
+ *
682
+ * console.log(_a.replace(2, {}))
683
+ * // Output: { a: 2 }
684
+ * ```
685
+ */
238
686
  optionalKey<S, A extends object, Key extends keyof A>(
239
687
  this: Lens<S, A>,
240
688
  key: Key,
@@ -246,9 +694,58 @@ export interface Optional<in out S, in out A> {
246
694
  ..._err: ForbidUnion<A, "cannot use `optionalKey` on a union type">
247
695
  ): Optional<S, A[Key] | undefined>
248
696
 
697
+ /**
698
+ * Adds one or more `Schema` validation checks to the optic chain.
699
+ * `getResult` fails when any check fails; `set` passes through unchanged.
700
+ *
701
+ * - On a {@link Prism}, returns a Prism.
702
+ * - On an {@link Optional}, returns an Optional.
703
+ *
704
+ * **Example** (only focus positive numbers)
705
+ *
706
+ * ```ts
707
+ * import { Optic, Result, Schema } from "effect"
708
+ *
709
+ * const _pos = Optic.id<number>().check(Schema.isGreaterThan(0))
710
+ *
711
+ * console.log(Result.isSuccess(_pos.getResult(5)))
712
+ * // Output: true
713
+ *
714
+ * console.log(Result.isFailure(_pos.getResult(-1)))
715
+ * // Output: true
716
+ * ```
717
+ *
718
+ * @see {@link fromChecks} — standalone prism from checks
719
+ */
249
720
  check<S, A>(this: Prism<S, A>, ...checks: readonly [AST.Check<A>, ...Array<AST.Check<A>>]): Prism<S, A>
250
721
  check<S, A>(this: Optional<S, A>, ...checks: readonly [AST.Check<A>, ...Array<AST.Check<A>>]): Optional<S, A>
251
722
 
723
+ /**
724
+ * Narrows the focus to a subtype `B` using a type guard.
725
+ *
726
+ * - On a {@link Prism}, returns a Prism.
727
+ * - On an {@link Optional}, returns an Optional.
728
+ * - Pass optional `annotations` to customize the error message.
729
+ *
730
+ * **Example** (narrowing a union)
731
+ *
732
+ * ```ts
733
+ * import { Optic, Result } from "effect"
734
+ *
735
+ * type B = { readonly _tag: "b"; readonly b: number }
736
+ * type S = { readonly _tag: "a"; readonly a: string } | B
737
+ *
738
+ * const _b = Optic.id<S>().refine(
739
+ * (s: S): s is B => s._tag === "b",
740
+ * { expected: `"b" tag` }
741
+ * )
742
+ *
743
+ * console.log(Result.isSuccess(_b.getResult({ _tag: "b", b: 1 })))
744
+ * // Output: true
745
+ * ```
746
+ *
747
+ * @see `.tag()` — shorthand for narrowing by `_tag`
748
+ */
252
749
  refine<S, A, B extends A>(
253
750
  this: Prism<S, A>,
254
751
  refinement: (a: A) => a is B,
@@ -260,6 +757,34 @@ export interface Optional<in out S, in out A> {
260
757
  annotations?: Schema.Annotations.Filter
261
758
  ): Optional<S, B>
262
759
 
760
+ /**
761
+ * Narrows the focus to the variant of a tagged union with the given
762
+ * `_tag` value.
763
+ *
764
+ * - On a {@link Prism}, returns a Prism.
765
+ * - On an {@link Optional}, returns an Optional.
766
+ * - Shorthand for `.refine(s => s._tag === tag)`.
767
+ *
768
+ * **Example** (focusing a tagged variant)
769
+ *
770
+ * ```ts
771
+ * import { Optic, Result } from "effect"
772
+ *
773
+ * type Shape =
774
+ * | { readonly _tag: "Circle"; readonly radius: number }
775
+ * | { readonly _tag: "Rect"; readonly width: number }
776
+ *
777
+ * const _radius = Optic.id<Shape>().tag("Circle").key("radius")
778
+ *
779
+ * console.log(Result.isSuccess(_radius.getResult({ _tag: "Circle", radius: 5 })))
780
+ * // Output: true
781
+ *
782
+ * console.log(Result.isFailure(_radius.getResult({ _tag: "Rect", width: 10 })))
783
+ * // Output: true
784
+ * ```
785
+ *
786
+ * @see `.refine()` — for arbitrary type guards
787
+ */
263
788
  tag<S, A extends { readonly _tag: AST.LiteralValue }, Tag extends A["_tag"]>(
264
789
  this: Prism<S, A>,
265
790
  tag: Tag
@@ -269,6 +794,33 @@ export interface Optional<in out S, in out A> {
269
794
  tag: Tag
270
795
  ): Optional<S, Extract<A, { readonly _tag: Tag }>>
271
796
 
797
+ /**
798
+ * Focuses on a key only if it exists (`Object.hasOwn`). Both
799
+ * `getResult` and `replaceResult` fail when the key is absent.
800
+ *
801
+ * Unlike `.key()`, which always succeeds on the read side, `.at()` is
802
+ * useful for Records or arrays where the key/index may not be present.
803
+ *
804
+ * - Always returns an {@link Optional}.
805
+ * - Does **not** work on union types (compile error).
806
+ *
807
+ * **Example** (safe record access)
808
+ *
809
+ * ```ts
810
+ * import { Optic, Result } from "effect"
811
+ *
812
+ * type Env = { [key: string]: number }
813
+ * const _x = Optic.id<Env>().at("x")
814
+ *
815
+ * console.log(Result.isSuccess(_x.getResult({ x: 1 })))
816
+ * // Output: true
817
+ *
818
+ * console.log(Result.isFailure(_x.getResult({ y: 2 })))
819
+ * // Output: true
820
+ * ```
821
+ *
822
+ * @see `.key()` — when the key is always present
823
+ */
272
824
  at<S, A extends object, Key extends keyof A>(
273
825
  this: Optional<S, A>,
274
826
  key: Key,
@@ -276,7 +828,26 @@ export interface Optional<in out S, in out A> {
276
828
  ): Optional<S, A[Key]>
277
829
 
278
830
  /**
279
- * An optic that accesses a group of keys of a struct.
831
+ * Focuses on a subset of keys of the current struct focus.
832
+ *
833
+ * - On a {@link Lens}, returns a Lens.
834
+ * - On an {@link Optional}, returns an Optional.
835
+ * - Does **not** work on union types (compile error).
836
+ *
837
+ * **Example** (picking keys)
838
+ *
839
+ * ```ts
840
+ * import { Optic } from "effect"
841
+ *
842
+ * type S = { readonly a: string; readonly b: number; readonly c: boolean }
843
+ *
844
+ * const _ac = Optic.id<S>().pick(["a", "c"])
845
+ *
846
+ * console.log(_ac.get({ a: "hi", b: 1, c: true }))
847
+ * // Output: { a: "hi", c: true }
848
+ * ```
849
+ *
850
+ * @see `.omit()` — the inverse operation
280
851
  */
281
852
  pick<S, A, Keys extends ReadonlyArray<keyof A>>(
282
853
  this: Lens<S, A>,
@@ -290,7 +861,26 @@ export interface Optional<in out S, in out A> {
290
861
  ): Optional<S, Pick<A, Keys[number]>>
291
862
 
292
863
  /**
293
- * An optic that excludes a group of keys of a struct.
864
+ * Focuses on all keys **except** the specified ones.
865
+ *
866
+ * - On a {@link Lens}, returns a Lens.
867
+ * - On an {@link Optional}, returns an Optional.
868
+ * - Does **not** work on union types (compile error).
869
+ *
870
+ * **Example** (omitting keys)
871
+ *
872
+ * ```ts
873
+ * import { Optic } from "effect"
874
+ *
875
+ * type S = { readonly a: string; readonly b: number; readonly c: boolean }
876
+ *
877
+ * const _ac = Optic.id<S>().omit(["b"])
878
+ *
879
+ * console.log(_ac.get({ a: "hi", b: 1, c: true }))
880
+ * // Output: { a: "hi", c: true }
881
+ * ```
882
+ *
883
+ * @see `.pick()` — the inverse operation
294
884
  *
295
885
  * @since 1.0.0
296
886
  */
@@ -306,7 +896,23 @@ export interface Optional<in out S, in out A> {
306
896
  ): Optional<S, Omit<A, Keys[number]>>
307
897
 
308
898
  /**
309
- * Omits `undefined` values.
899
+ * Filters out `undefined` from the focus, producing a {@link Prism}.
900
+ *
901
+ * `getResult` fails when the focus is `undefined`.
902
+ *
903
+ * **Example** (filtering undefined)
904
+ *
905
+ * ```ts
906
+ * import { Optic, Result } from "effect"
907
+ *
908
+ * const _defined = Optic.id<number | undefined>().notUndefined()
909
+ *
910
+ * console.log(Result.isSuccess(_defined.getResult(42)))
911
+ * // Output: true
912
+ *
913
+ * console.log(Result.isFailure(_defined.getResult(undefined)))
914
+ * // Output: true
915
+ * ```
310
916
  *
311
917
  * @since 4.0.0
312
918
  */
@@ -314,24 +920,117 @@ export interface Optional<in out S, in out A> {
314
920
  notUndefined(): Optional<S, Exclude<A, undefined>>
315
921
 
316
922
  /**
317
- * Focuses **all elements** of an array-like focus and then narrows to a
318
- * **subset** using an element-level optic.
319
- *
320
- * Semantics:
321
- * - **getResult**: collects the values focused by `f(id<A>())` for each
322
- * element, returning them as a `ReadonlyArray<B>` (non-focusable elements
323
- * are skipped).
324
- * - **setResult**: expects exactly as many `B`s as were collected by
325
- * `getResult` and writes them back **in order** to the corresponding
326
- * elements; other elements are left unchanged. If the counts differ, it
327
- * fails with a length-mismatch error.
923
+ * Focuses **all elements** of an array-like focus and optionally narrows
924
+ * to a subset using an element-level optic.
925
+ *
926
+ * Available only on {@link Traversal} (i.e. when `A` is
927
+ * `ReadonlyArray<Element>`). Returns a new Traversal focused on the
928
+ * selected elements.
929
+ *
930
+ * Behavior:
931
+ * - **getResult** collects the values focused by `f(id<A>())` for each
932
+ * element. Non-focusable elements are skipped.
933
+ * - **replaceResult** expects exactly as many values as were collected by
934
+ * `getResult` and writes them back in order. Fails with a
935
+ * length-mismatch error if counts differ.
936
+ *
937
+ * **Example** (incrementing liked posts)
938
+ *
939
+ * ```ts
940
+ * import { Optic, Schema } from "effect"
941
+ *
942
+ * type Post = { title: string; likes: number }
943
+ * type S = { user: { posts: ReadonlyArray<Post> } }
944
+ *
945
+ * const _likes = Optic.id<S>()
946
+ * .key("user")
947
+ * .key("posts")
948
+ * .forEach((post) => post.key("likes").check(Schema.isGreaterThan(0)))
949
+ *
950
+ * const addLike = _likes.modifyAll((n) => n + 1)
951
+ *
952
+ * console.log(
953
+ * addLike({
954
+ * user: { posts: [{ title: "a", likes: 0 }, { title: "b", likes: 1 }] }
955
+ * })
956
+ * )
957
+ * // Output: { user: { posts: [{ title: "a", likes: 0 }, { title: "b", likes: 2 }] } }
958
+ * ```
959
+ *
960
+ * @see {@link getAll} — extract all focused elements as an array
961
+ * @see `.modifyAll()` — apply a function to every focused element
328
962
  */
329
963
  forEach<S, A, B>(this: Traversal<S, A>, f: (iso: Iso<A, A>) => Optional<A, B>): Traversal<S, B>
330
964
 
965
+ /**
966
+ * Applies a function to **every** element focused by the traversal.
967
+ *
968
+ * Available only on {@link Traversal}. Returns a function `(s: S) => S`.
969
+ * If the traversal cannot focus, the original `s` is returned unchanged.
970
+ *
971
+ * Unlike `.modify()`, which operates on the whole array, `modifyAll`
972
+ * maps `f` over each individual element.
973
+ *
974
+ * **Example** (doubling all focused values)
975
+ *
976
+ * ```ts
977
+ * import { Optic, Schema } from "effect"
978
+ *
979
+ * type S = { readonly items: ReadonlyArray<number> }
980
+ *
981
+ * const _positive = Optic.id<S>()
982
+ * .key("items")
983
+ * .forEach((n) => n.check(Schema.isGreaterThan(0)))
984
+ *
985
+ * const doubled = _positive.modifyAll((n) => n * 2)
986
+ *
987
+ * console.log(doubled({ items: [1, -2, 3] }))
988
+ * // Output: { items: [2, -2, 6] }
989
+ * ```
990
+ *
991
+ * @see `.forEach()` — create a sub-traversal
992
+ * @see {@link getAll} — extract focused elements
993
+ */
331
994
  modifyAll<S, A>(this: Traversal<S, A>, f: (a: A) => A): (s: S) => S
332
995
  }
333
996
 
334
997
  /**
998
+ * Creates an {@link Optional} from a fallible getter and a fallible setter.
999
+ *
1000
+ * When to use:
1001
+ * - Both reading and writing can fail.
1002
+ *
1003
+ * Behavior:
1004
+ * - Does not mutate inputs.
1005
+ * - `getResult` should return `Result.fail(message)` on mismatch.
1006
+ * - `set` should return `Result.fail(message)` when the update cannot be
1007
+ * applied.
1008
+ *
1009
+ * **Example** (safe record key access)
1010
+ *
1011
+ * ```ts
1012
+ * import { Optic, Result } from "effect"
1013
+ *
1014
+ * const atKey = (key: string) =>
1015
+ * Optic.makeOptional<Record<string, number>, number>(
1016
+ * (s) =>
1017
+ * Object.hasOwn(s, key)
1018
+ * ? Result.succeed(s[key])
1019
+ * : Result.fail(`Key "${key}" not found`),
1020
+ * (a, s) =>
1021
+ * Object.hasOwn(s, key)
1022
+ * ? Result.succeed({ ...s, [key]: a })
1023
+ * : Result.fail(`Key "${key}" not found`)
1024
+ * )
1025
+ *
1026
+ * console.log(Result.isSuccess(atKey("x").getResult({ x: 1 })))
1027
+ * // Output: true
1028
+ * ```
1029
+ *
1030
+ * @see {@link Optional} — the type this function returns
1031
+ * @see {@link makeLens} — when reading always succeeds
1032
+ * @see {@link makePrism} — when writing always succeeds
1033
+ *
335
1034
  * @category Constructors
336
1035
  * @since 4.0.0
337
1036
  */
@@ -343,6 +1042,40 @@ export function makeOptional<S, A>(
343
1042
  }
344
1043
 
345
1044
  /**
1045
+ * An optic that focuses on **zero or more** elements of type `A` inside `S`.
1046
+ *
1047
+ * When to use:
1048
+ * - You want to read/update multiple elements at once (e.g. all items in
1049
+ * an array, or a filtered subset).
1050
+ *
1051
+ * Behavior:
1052
+ * - Technically `Optional<S, ReadonlyArray<A>>` — the focused value is an
1053
+ * array of all matched elements.
1054
+ * - Use `.forEach()` to add per-element sub-optics (filtering, drilling
1055
+ * deeper).
1056
+ * - Use `.modifyAll(f)` to map a function over every focused element.
1057
+ * - Use {@link getAll} to extract all focused elements as a plain array.
1058
+ *
1059
+ * **Example** (traversing array elements with a filter)
1060
+ *
1061
+ * ```ts
1062
+ * import { Optic, Schema } from "effect"
1063
+ *
1064
+ * type S = { readonly items: ReadonlyArray<number> }
1065
+ *
1066
+ * const _positive = Optic.id<S>()
1067
+ * .key("items")
1068
+ * .forEach((n) => n.check(Schema.isGreaterThan(0)))
1069
+ *
1070
+ * const getPositive = Optic.getAll(_positive)
1071
+ *
1072
+ * console.log(getPositive({ items: [1, -2, 3] }))
1073
+ * // Output: [1, 3]
1074
+ * ```
1075
+ *
1076
+ * @see {@link getAll} — extract focused elements
1077
+ * @see {@link Optional} — the base type
1078
+ *
346
1079
  * @category Traversal
347
1080
  * @since 4.0.0
348
1081
  */
@@ -700,7 +1433,39 @@ function getCompositionTag(a: Op["_tag"], b: Op["_tag"]): Op["_tag"] {
700
1433
  // ---------------------------------------------
701
1434
 
702
1435
  /**
703
- * Returns all the elements focused by the traversal.
1436
+ * Returns a function that extracts all elements focused by a
1437
+ * {@link Traversal} as a plain mutable array.
1438
+ *
1439
+ * When to use:
1440
+ * - You need the focused values as a simple `Array<A>` for further
1441
+ * processing.
1442
+ *
1443
+ * Behavior:
1444
+ * - Returns an empty array when the traversal cannot focus.
1445
+ * - Always returns a fresh array (safe to mutate).
1446
+ * - Does not mutate the source.
1447
+ *
1448
+ * **Example** (collecting positive numbers)
1449
+ *
1450
+ * ```ts
1451
+ * import { Optic, Schema } from "effect"
1452
+ *
1453
+ * type S = { readonly values: ReadonlyArray<number> }
1454
+ *
1455
+ * const _pos = Optic.id<S>()
1456
+ * .key("values")
1457
+ * .forEach((n) => n.check(Schema.isGreaterThan(0)))
1458
+ *
1459
+ * const getPositive = Optic.getAll(_pos)
1460
+ *
1461
+ * console.log(getPositive({ values: [3, -1, 5] }))
1462
+ * // Output: [3, 5]
1463
+ *
1464
+ * console.log(getPositive({ values: [-1, -2] }))
1465
+ * // Output: []
1466
+ * ```
1467
+ *
1468
+ * @see {@link Traversal} — the optic type this operates on
704
1469
  *
705
1470
  * @category Traversal
706
1471
  * @since 4.0.0
@@ -720,7 +1485,31 @@ export function getAll<S, A>(traversal: Traversal<S, A>): (s: S) => Array<A> {
720
1485
  const identityIso = make(identityNode)
721
1486
 
722
1487
  /**
723
- * The identity optic.
1488
+ * The identity {@link Iso}. Focuses on the whole value unchanged.
1489
+ *
1490
+ * When to use:
1491
+ * - As the starting point of an optic chain: `Optic.id<S>().key("x")...`
1492
+ * - Anywhere an `Iso<S, S>` is needed.
1493
+ *
1494
+ * Behavior:
1495
+ * - `get(s)` returns `s`.
1496
+ * - `set(a)` returns `a`.
1497
+ * - Singleton — every call returns the same instance.
1498
+ *
1499
+ * **Example** (starting an optic chain)
1500
+ *
1501
+ * ```ts
1502
+ * import { Optic } from "effect"
1503
+ *
1504
+ * type S = { readonly x: number }
1505
+ *
1506
+ * const _x = Optic.id<S>().key("x")
1507
+ *
1508
+ * console.log(_x.get({ x: 42 }))
1509
+ * // Output: 42
1510
+ * ```
1511
+ *
1512
+ * @see {@link Iso} — the type this function returns
724
1513
  *
725
1514
  * @category Iso
726
1515
  * @since 4.0.0
@@ -730,6 +1519,35 @@ export function id<S>(): Iso<S, S> {
730
1519
  }
731
1520
 
732
1521
  /**
1522
+ * An {@link Iso} that converts a `Record<string, A>` to an array of
1523
+ * `[key, value]` entries and back.
1524
+ *
1525
+ * When to use:
1526
+ * - You want to traverse or manipulate record entries as an array (e.g.
1527
+ * with `.forEach()`).
1528
+ *
1529
+ * Behavior:
1530
+ * - `get` uses `Object.entries`.
1531
+ * - `set` uses `Object.fromEntries`.
1532
+ * - Round-trip is lossless for `Record<string, A>`.
1533
+ *
1534
+ * **Example** (traversing record values)
1535
+ *
1536
+ * ```ts
1537
+ * import { Optic, Schema } from "effect"
1538
+ *
1539
+ * const _positiveValues = Optic.entries<number>()
1540
+ * .forEach((entry) => entry.key(1).check(Schema.isGreaterThan(0)))
1541
+ *
1542
+ * const inc = _positiveValues.modifyAll((n) => n + 1)
1543
+ *
1544
+ * console.log(inc({ a: 0, b: 3, c: -1 }))
1545
+ * // Output: { a: 0, b: 4, c: -1 }
1546
+ * ```
1547
+ *
1548
+ * @see {@link Iso} — the type this function returns
1549
+ * @see {@link id} — identity iso
1550
+ *
733
1551
  * @category Iso
734
1552
  * @since 4.0.0
735
1553
  */
@@ -738,6 +1556,36 @@ export function entries<A>(): Iso<Record<string, A>, ReadonlyArray<readonly [str
738
1556
  }
739
1557
 
740
1558
  /**
1559
+ * A {@link Prism} that focuses on the value inside `Option.Some`.
1560
+ *
1561
+ * When to use:
1562
+ * - You have an `Option<A>` and want to read/update the inner value only
1563
+ * when it is `Some`.
1564
+ *
1565
+ * Behavior:
1566
+ * - `getResult` fails with an error message when the option is `None`.
1567
+ * - `set(a)` wraps `a` in `Option.some(a)`.
1568
+ *
1569
+ * **Example** (accessing Some value)
1570
+ *
1571
+ * ```ts
1572
+ * import { Optic, Option, Result } from "effect"
1573
+ *
1574
+ * const _some = Optic.id<Option.Option<number>>().compose(Optic.some())
1575
+ *
1576
+ * console.log(Result.isSuccess(_some.getResult(Option.some(42))))
1577
+ * // Output: true
1578
+ *
1579
+ * console.log(Result.isFailure(_some.getResult(Option.none())))
1580
+ * // Output: true
1581
+ *
1582
+ * console.log(_some.set(10))
1583
+ * // Output: { _tag: "Some", value: 10 }
1584
+ * ```
1585
+ *
1586
+ * @see {@link none} — focuses on `None` instead
1587
+ * @see {@link Prism} — the type this function returns
1588
+ *
741
1589
  * @category Prism
742
1590
  * @since 4.0.0
743
1591
  */
@@ -754,6 +1602,33 @@ export function some<A>(): Prism<Option.Option<A>, A> {
754
1602
  }
755
1603
 
756
1604
  /**
1605
+ * A {@link Prism} that focuses on `Option.None`, exposing `undefined`.
1606
+ *
1607
+ * When to use:
1608
+ * - You want to match or construct `None` values within an optic chain.
1609
+ *
1610
+ * Behavior:
1611
+ * - `getResult` succeeds with `undefined` when the option is `None`.
1612
+ * - `getResult` fails when the option is `Some`.
1613
+ * - `set(undefined)` produces `Option.none()`.
1614
+ *
1615
+ * **Example** (matching None)
1616
+ *
1617
+ * ```ts
1618
+ * import { Optic, Option, Result } from "effect"
1619
+ *
1620
+ * const _none = Optic.id<Option.Option<number>>().compose(Optic.none())
1621
+ *
1622
+ * console.log(Result.isSuccess(_none.getResult(Option.none())))
1623
+ * // Output: true
1624
+ *
1625
+ * console.log(Result.isFailure(_none.getResult(Option.some(1))))
1626
+ * // Output: true
1627
+ * ```
1628
+ *
1629
+ * @see {@link some} — focuses on `Some` instead
1630
+ * @see {@link Prism} — the type this function returns
1631
+ *
757
1632
  * @category Prism
758
1633
  * @since 4.0.0
759
1634
  */
@@ -770,6 +1645,33 @@ export function none<A>(): Prism<Option.Option<A>, undefined> {
770
1645
  }
771
1646
 
772
1647
  /**
1648
+ * A {@link Prism} that focuses on the success value of a `Result`.
1649
+ *
1650
+ * When to use:
1651
+ * - You have a `Result<A, E>` and want to read/update `A` only when it
1652
+ * is a `Success`.
1653
+ *
1654
+ * Behavior:
1655
+ * - `getResult` fails when the result is a `Failure`.
1656
+ * - `set(a)` produces `Result.succeed(a)`.
1657
+ *
1658
+ * **Example** (accessing success)
1659
+ *
1660
+ * ```ts
1661
+ * import { Optic, Result } from "effect"
1662
+ *
1663
+ * const _ok = Optic.id<Result.Result<number, string>>().compose(Optic.success())
1664
+ *
1665
+ * console.log(Result.isSuccess(_ok.getResult(Result.succeed(42))))
1666
+ * // Output: true
1667
+ *
1668
+ * console.log(Result.isFailure(_ok.getResult(Result.fail("err"))))
1669
+ * // Output: true
1670
+ * ```
1671
+ *
1672
+ * @see {@link failure} — focuses on the failure side
1673
+ * @see {@link Prism} — the type this function returns
1674
+ *
773
1675
  * @category Prism
774
1676
  * @since 4.0.0
775
1677
  */
@@ -786,6 +1688,33 @@ export function success<A, E>(): Prism<Result.Result<A, E>, A> {
786
1688
  }
787
1689
 
788
1690
  /**
1691
+ * A {@link Prism} that focuses on the failure value of a `Result`.
1692
+ *
1693
+ * When to use:
1694
+ * - You have a `Result<A, E>` and want to read/update `E` only when it
1695
+ * is a `Failure`.
1696
+ *
1697
+ * Behavior:
1698
+ * - `getResult` fails when the result is a `Success`.
1699
+ * - `set(e)` produces `Result.fail(e)`.
1700
+ *
1701
+ * **Example** (accessing failure)
1702
+ *
1703
+ * ```ts
1704
+ * import { Optic, Result } from "effect"
1705
+ *
1706
+ * const _err = Optic.id<Result.Result<number, string>>().compose(Optic.failure())
1707
+ *
1708
+ * console.log(Result.isSuccess(_err.getResult(Result.fail("oops"))))
1709
+ * // Output: true
1710
+ *
1711
+ * console.log(Result.isFailure(_err.getResult(Result.succeed(42))))
1712
+ * // Output: true
1713
+ * ```
1714
+ *
1715
+ * @see {@link success} — focuses on the success side
1716
+ * @see {@link Prism} — the type this function returns
1717
+ *
789
1718
  * @category Prism
790
1719
  * @since 4.0.0
791
1720
  */