effect 4.0.0-beta.102 → 4.0.0-beta.103

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 (1451) hide show
  1. package/dist/Array.d.ts +971 -1037
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +381 -407
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +433 -756
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +200 -325
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +207 -267
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +107 -135
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Boolean.d.ts +146 -188
  14. package/dist/Boolean.d.ts.map +1 -1
  15. package/dist/Boolean.js +64 -84
  16. package/dist/Boolean.js.map +1 -1
  17. package/dist/Brand.js.map +1 -1
  18. package/dist/Cache.d.ts +405 -254
  19. package/dist/Cache.d.ts.map +1 -1
  20. package/dist/Cache.js +166 -101
  21. package/dist/Cache.js.map +1 -1
  22. package/dist/Cause.d.ts +167 -277
  23. package/dist/Cause.d.ts.map +1 -1
  24. package/dist/Cause.js +122 -176
  25. package/dist/Cause.js.map +1 -1
  26. package/dist/Channel.d.ts +729 -768
  27. package/dist/Channel.d.ts.map +1 -1
  28. package/dist/Channel.js +514 -440
  29. package/dist/Channel.js.map +1 -1
  30. package/dist/ChannelSchema.d.ts +1 -1
  31. package/dist/ChannelSchema.d.ts.map +1 -1
  32. package/dist/ChannelSchema.js.map +1 -1
  33. package/dist/Chunk.d.ts +834 -1173
  34. package/dist/Chunk.d.ts.map +1 -1
  35. package/dist/Chunk.js +326 -439
  36. package/dist/Chunk.js.map +1 -1
  37. package/dist/Clock.d.ts +180 -49
  38. package/dist/Clock.d.ts.map +1 -1
  39. package/dist/Clock.js +96 -31
  40. package/dist/Clock.js.map +1 -1
  41. package/dist/Combiner.d.ts +20 -33
  42. package/dist/Combiner.d.ts.map +1 -1
  43. package/dist/Combiner.js +18 -30
  44. package/dist/Combiner.js.map +1 -1
  45. package/dist/Config.d.ts +225 -173
  46. package/dist/Config.d.ts.map +1 -1
  47. package/dist/Config.js +336 -265
  48. package/dist/Config.js.map +1 -1
  49. package/dist/ConfigProvider.d.ts +194 -68
  50. package/dist/ConfigProvider.d.ts.map +1 -1
  51. package/dist/ConfigProvider.js +115 -80
  52. package/dist/ConfigProvider.js.map +1 -1
  53. package/dist/Console.d.ts +233 -33
  54. package/dist/Console.d.ts.map +1 -1
  55. package/dist/Console.js +232 -32
  56. package/dist/Console.js.map +1 -1
  57. package/dist/Context.d.ts +151 -274
  58. package/dist/Context.d.ts.map +1 -1
  59. package/dist/Context.js +171 -214
  60. package/dist/Context.js.map +1 -1
  61. package/dist/Cron.d.ts +68 -77
  62. package/dist/Cron.d.ts.map +1 -1
  63. package/dist/Cron.js +57 -66
  64. package/dist/Cron.js.map +1 -1
  65. package/dist/Crypto.d.ts +13 -15
  66. package/dist/Crypto.d.ts.map +1 -1
  67. package/dist/Crypto.js +9 -10
  68. package/dist/Crypto.js.map +1 -1
  69. package/dist/Data.d.ts +60 -80
  70. package/dist/Data.d.ts.map +1 -1
  71. package/dist/Data.js +16 -23
  72. package/dist/Data.js.map +1 -1
  73. package/dist/DateTime.d.ts +562 -660
  74. package/dist/DateTime.d.ts.map +1 -1
  75. package/dist/DateTime.js +307 -362
  76. package/dist/DateTime.js.map +1 -1
  77. package/dist/Deferred.d.ts +253 -256
  78. package/dist/Deferred.d.ts.map +1 -1
  79. package/dist/Deferred.js +104 -96
  80. package/dist/Deferred.js.map +1 -1
  81. package/dist/Duration.d.ts +216 -308
  82. package/dist/Duration.d.ts.map +1 -1
  83. package/dist/Duration.js +132 -186
  84. package/dist/Duration.js.map +1 -1
  85. package/dist/Effect.d.ts +2841 -3247
  86. package/dist/Effect.d.ts.map +1 -1
  87. package/dist/Effect.js +1322 -1546
  88. package/dist/Effect.js.map +1 -1
  89. package/dist/Effectable.js.map +1 -1
  90. package/dist/Encoding.d.ts +22 -40
  91. package/dist/Encoding.d.ts.map +1 -1
  92. package/dist/Encoding.js +22 -40
  93. package/dist/Encoding.js.map +1 -1
  94. package/dist/Equal.d.ts +33 -37
  95. package/dist/Equal.d.ts.map +1 -1
  96. package/dist/Equal.js +29 -21
  97. package/dist/Equal.js.map +1 -1
  98. package/dist/Equivalence.d.ts +103 -105
  99. package/dist/Equivalence.d.ts.map +1 -1
  100. package/dist/Equivalence.js +77 -79
  101. package/dist/Equivalence.js.map +1 -1
  102. package/dist/ErrorReporter.d.ts +51 -27
  103. package/dist/ErrorReporter.d.ts.map +1 -1
  104. package/dist/ErrorReporter.js +50 -26
  105. package/dist/ErrorReporter.js.map +1 -1
  106. package/dist/ExecutionPlan.d.ts +13 -55
  107. package/dist/ExecutionPlan.d.ts.map +1 -1
  108. package/dist/ExecutionPlan.js +7 -28
  109. package/dist/ExecutionPlan.js.map +1 -1
  110. package/dist/Exit.d.ts +116 -192
  111. package/dist/Exit.d.ts.map +1 -1
  112. package/dist/Exit.js +82 -130
  113. package/dist/Exit.js.map +1 -1
  114. package/dist/Fiber.d.ts +82 -146
  115. package/dist/Fiber.d.ts.map +1 -1
  116. package/dist/Fiber.js +48 -87
  117. package/dist/Fiber.js.map +1 -1
  118. package/dist/FiberHandle.d.ts +152 -105
  119. package/dist/FiberHandle.d.ts.map +1 -1
  120. package/dist/FiberHandle.js +106 -73
  121. package/dist/FiberHandle.js.map +1 -1
  122. package/dist/FiberMap.d.ts +213 -168
  123. package/dist/FiberMap.d.ts.map +1 -1
  124. package/dist/FiberMap.js +114 -89
  125. package/dist/FiberMap.js.map +1 -1
  126. package/dist/FiberSet.d.ts +123 -81
  127. package/dist/FiberSet.d.ts.map +1 -1
  128. package/dist/FiberSet.js +85 -59
  129. package/dist/FiberSet.js.map +1 -1
  130. package/dist/FileSystem.d.ts +153 -264
  131. package/dist/FileSystem.d.ts.map +1 -1
  132. package/dist/FileSystem.js +42 -147
  133. package/dist/FileSystem.js.map +1 -1
  134. package/dist/Filter.d.ts +61 -33
  135. package/dist/Filter.d.ts.map +1 -1
  136. package/dist/Filter.js +26 -15
  137. package/dist/Filter.js.map +1 -1
  138. package/dist/Formatter.d.ts +25 -33
  139. package/dist/Formatter.d.ts.map +1 -1
  140. package/dist/Formatter.js +48 -49
  141. package/dist/Formatter.js.map +1 -1
  142. package/dist/Function.d.ts +76 -145
  143. package/dist/Function.d.ts.map +1 -1
  144. package/dist/Function.js +40 -57
  145. package/dist/Function.js.map +1 -1
  146. package/dist/Graph.d.ts +360 -714
  147. package/dist/Graph.d.ts.map +1 -1
  148. package/dist/Graph.js +168 -297
  149. package/dist/Graph.js.map +1 -1
  150. package/dist/HKT.d.ts +12 -6
  151. package/dist/HKT.d.ts.map +1 -1
  152. package/dist/Hash.d.ts +47 -83
  153. package/dist/Hash.d.ts.map +1 -1
  154. package/dist/Hash.js +46 -68
  155. package/dist/Hash.js.map +1 -1
  156. package/dist/HashMap.d.ts +319 -411
  157. package/dist/HashMap.d.ts.map +1 -1
  158. package/dist/HashMap.js +122 -166
  159. package/dist/HashMap.js.map +1 -1
  160. package/dist/HashRing.d.ts.map +1 -1
  161. package/dist/HashRing.js +1 -0
  162. package/dist/HashRing.js.map +1 -1
  163. package/dist/HashSet.d.ts +177 -284
  164. package/dist/HashSet.d.ts.map +1 -1
  165. package/dist/HashSet.js +68 -109
  166. package/dist/HashSet.js.map +1 -1
  167. package/dist/Inspectable.d.ts +12 -12
  168. package/dist/Inspectable.js +8 -8
  169. package/dist/Inspectable.js.map +1 -1
  170. package/dist/Iterable.d.ts +620 -786
  171. package/dist/Iterable.d.ts.map +1 -1
  172. package/dist/Iterable.js +228 -306
  173. package/dist/Iterable.js.map +1 -1
  174. package/dist/JsonPatch.d.ts +11 -13
  175. package/dist/JsonPatch.d.ts.map +1 -1
  176. package/dist/JsonPatch.js +44 -102
  177. package/dist/JsonPatch.js.map +1 -1
  178. package/dist/JsonPointer.d.ts +8 -8
  179. package/dist/JsonPointer.js +8 -8
  180. package/dist/JsonPointer.js.map +1 -1
  181. package/dist/JsonSchema.d.ts +98 -44
  182. package/dist/JsonSchema.d.ts.map +1 -1
  183. package/dist/JsonSchema.js +297 -234
  184. package/dist/JsonSchema.js.map +1 -1
  185. package/dist/Latch.d.ts +23 -35
  186. package/dist/Latch.d.ts.map +1 -1
  187. package/dist/Latch.js +16 -28
  188. package/dist/Latch.js.map +1 -1
  189. package/dist/Layer.d.ts +359 -260
  190. package/dist/Layer.d.ts.map +1 -1
  191. package/dist/Layer.js +195 -175
  192. package/dist/Layer.js.map +1 -1
  193. package/dist/LayerMap.d.ts +42 -29
  194. package/dist/LayerMap.d.ts.map +1 -1
  195. package/dist/LayerMap.js +31 -21
  196. package/dist/LayerMap.js.map +1 -1
  197. package/dist/LayerRef.d.ts +6 -2
  198. package/dist/LayerRef.d.ts.map +1 -1
  199. package/dist/LayerRef.js +6 -2
  200. package/dist/LayerRef.js.map +1 -1
  201. package/dist/LogLevel.d.ts +114 -214
  202. package/dist/LogLevel.d.ts.map +1 -1
  203. package/dist/LogLevel.js +41 -76
  204. package/dist/LogLevel.js.map +1 -1
  205. package/dist/Logger.d.ts +218 -467
  206. package/dist/Logger.d.ts.map +1 -1
  207. package/dist/Logger.js +204 -450
  208. package/dist/Logger.js.map +1 -1
  209. package/dist/ManagedRuntime.d.ts +7 -5
  210. package/dist/ManagedRuntime.d.ts.map +1 -1
  211. package/dist/ManagedRuntime.js +7 -5
  212. package/dist/ManagedRuntime.js.map +1 -1
  213. package/dist/Match.d.ts +217 -252
  214. package/dist/Match.d.ts.map +1 -1
  215. package/dist/Match.js +150 -183
  216. package/dist/Match.js.map +1 -1
  217. package/dist/Metric.d.ts +442 -993
  218. package/dist/Metric.d.ts.map +1 -1
  219. package/dist/Metric.js +198 -642
  220. package/dist/Metric.js.map +1 -1
  221. package/dist/MutableHashMap.d.ts +144 -173
  222. package/dist/MutableHashMap.d.ts.map +1 -1
  223. package/dist/MutableHashMap.js +68 -79
  224. package/dist/MutableHashMap.js.map +1 -1
  225. package/dist/MutableHashSet.d.ts +84 -89
  226. package/dist/MutableHashSet.d.ts.map +1 -1
  227. package/dist/MutableHashSet.js +44 -47
  228. package/dist/MutableHashSet.js.map +1 -1
  229. package/dist/MutableList.d.ts +71 -370
  230. package/dist/MutableList.d.ts.map +1 -1
  231. package/dist/MutableList.js +59 -284
  232. package/dist/MutableList.js.map +1 -1
  233. package/dist/MutableRef.d.ts +420 -243
  234. package/dist/MutableRef.d.ts.map +1 -1
  235. package/dist/MutableRef.js +209 -120
  236. package/dist/MutableRef.js.map +1 -1
  237. package/dist/Newtype.d.ts +21 -14
  238. package/dist/Newtype.d.ts.map +1 -1
  239. package/dist/Newtype.js +15 -13
  240. package/dist/Newtype.js.map +1 -1
  241. package/dist/NonEmptyIterable.d.ts +7 -137
  242. package/dist/NonEmptyIterable.d.ts.map +1 -1
  243. package/dist/NonEmptyIterable.js +5 -93
  244. package/dist/NonEmptyIterable.js.map +1 -1
  245. package/dist/Number.d.ts +196 -233
  246. package/dist/Number.d.ts.map +1 -1
  247. package/dist/Number.js +90 -109
  248. package/dist/Number.js.map +1 -1
  249. package/dist/Optic.d.ts +97 -189
  250. package/dist/Optic.d.ts.map +1 -1
  251. package/dist/Optic.js +187 -290
  252. package/dist/Optic.js.map +1 -1
  253. package/dist/Option.d.ts +447 -812
  254. package/dist/Option.d.ts.map +1 -1
  255. package/dist/Option.js +211 -392
  256. package/dist/Option.js.map +1 -1
  257. package/dist/Order.d.ts +109 -109
  258. package/dist/Order.js +91 -91
  259. package/dist/Order.js.map +1 -1
  260. package/dist/Ordering.d.ts +20 -23
  261. package/dist/Ordering.d.ts.map +1 -1
  262. package/dist/Ordering.js +8 -9
  263. package/dist/Ordering.js.map +1 -1
  264. package/dist/PartitionedSemaphore.js.map +1 -1
  265. package/dist/Path.d.ts +38 -41
  266. package/dist/Path.d.ts.map +1 -1
  267. package/dist/Path.js +3 -4
  268. package/dist/Path.js.map +1 -1
  269. package/dist/Pipeable.d.ts +6 -5
  270. package/dist/Pipeable.d.ts.map +1 -1
  271. package/dist/Pipeable.js +2 -2
  272. package/dist/Pipeable.js.map +1 -1
  273. package/dist/PlatformError.d.ts +4 -4
  274. package/dist/PlatformError.js +3 -3
  275. package/dist/PlatformError.js.map +1 -1
  276. package/dist/Pool.d.ts +4 -2
  277. package/dist/Pool.d.ts.map +1 -1
  278. package/dist/Pool.js +4 -2
  279. package/dist/Pool.js.map +1 -1
  280. package/dist/Predicate.d.ts +200 -181
  281. package/dist/Predicate.d.ts.map +1 -1
  282. package/dist/Predicate.js +100 -108
  283. package/dist/Predicate.js.map +1 -1
  284. package/dist/PrimaryKey.d.ts +7 -7
  285. package/dist/PrimaryKey.js +5 -5
  286. package/dist/PrimaryKey.js.map +1 -1
  287. package/dist/PubSub.d.ts +425 -494
  288. package/dist/PubSub.d.ts.map +1 -1
  289. package/dist/PubSub.js +373 -362
  290. package/dist/PubSub.js.map +1 -1
  291. package/dist/Pull.d.ts +24 -18
  292. package/dist/Pull.d.ts.map +1 -1
  293. package/dist/Pull.js +11 -9
  294. package/dist/Pull.js.map +1 -1
  295. package/dist/Queue.d.ts +200 -159
  296. package/dist/Queue.d.ts.map +1 -1
  297. package/dist/Queue.js +162 -132
  298. package/dist/Queue.js.map +1 -1
  299. package/dist/Random.d.ts +49 -74
  300. package/dist/Random.d.ts.map +1 -1
  301. package/dist/Random.js +35 -54
  302. package/dist/Random.js.map +1 -1
  303. package/dist/RcMap.d.ts +121 -63
  304. package/dist/RcMap.d.ts.map +1 -1
  305. package/dist/RcMap.js +42 -21
  306. package/dist/RcMap.js.map +1 -1
  307. package/dist/RcRef.d.ts +24 -13
  308. package/dist/RcRef.d.ts.map +1 -1
  309. package/dist/RcRef.js +15 -9
  310. package/dist/RcRef.js.map +1 -1
  311. package/dist/Record.d.ts +291 -488
  312. package/dist/Record.d.ts.map +1 -1
  313. package/dist/Record.js +111 -202
  314. package/dist/Record.js.map +1 -1
  315. package/dist/Redactable.d.ts +6 -2
  316. package/dist/Redactable.d.ts.map +1 -1
  317. package/dist/Redactable.js +7 -2
  318. package/dist/Redactable.js.map +1 -1
  319. package/dist/Redacted.d.ts +25 -25
  320. package/dist/Redacted.d.ts.map +1 -1
  321. package/dist/Redacted.js +19 -20
  322. package/dist/Redacted.js.map +1 -1
  323. package/dist/Reducer.d.ts +8 -15
  324. package/dist/Reducer.d.ts.map +1 -1
  325. package/dist/Reducer.js +6 -12
  326. package/dist/Reducer.js.map +1 -1
  327. package/dist/Ref.d.ts +95 -165
  328. package/dist/Ref.d.ts.map +1 -1
  329. package/dist/Ref.js +75 -122
  330. package/dist/Ref.js.map +1 -1
  331. package/dist/References.d.ts +102 -168
  332. package/dist/References.d.ts.map +1 -1
  333. package/dist/References.js +102 -168
  334. package/dist/References.js.map +1 -1
  335. package/dist/RegExp.d.ts +10 -14
  336. package/dist/RegExp.d.ts.map +1 -1
  337. package/dist/RegExp.js +10 -14
  338. package/dist/RegExp.js.map +1 -1
  339. package/dist/Request.d.ts +31 -21
  340. package/dist/Request.d.ts.map +1 -1
  341. package/dist/Request.js +16 -13
  342. package/dist/Request.js.map +1 -1
  343. package/dist/RequestResolver.d.ts +201 -90
  344. package/dist/RequestResolver.d.ts.map +1 -1
  345. package/dist/RequestResolver.js +87 -41
  346. package/dist/RequestResolver.js.map +1 -1
  347. package/dist/Resource.js.map +1 -1
  348. package/dist/Result.d.ts +302 -470
  349. package/dist/Result.d.ts.map +1 -1
  350. package/dist/Result.js +133 -217
  351. package/dist/Result.js.map +1 -1
  352. package/dist/Runtime.d.ts +50 -75
  353. package/dist/Runtime.d.ts.map +1 -1
  354. package/dist/Runtime.js +39 -60
  355. package/dist/Runtime.js.map +1 -1
  356. package/dist/Schedule.d.ts +290 -1636
  357. package/dist/Schedule.d.ts.map +1 -1
  358. package/dist/Schedule.js +162 -803
  359. package/dist/Schedule.js.map +1 -1
  360. package/dist/Scheduler.d.ts +5 -5
  361. package/dist/Scheduler.d.ts.map +1 -1
  362. package/dist/Scheduler.js +18 -6
  363. package/dist/Scheduler.js.map +1 -1
  364. package/dist/Schema.d.ts +644 -642
  365. package/dist/Schema.d.ts.map +1 -1
  366. package/dist/Schema.js +491 -527
  367. package/dist/Schema.js.map +1 -1
  368. package/dist/SchemaAST.d.ts +27 -50
  369. package/dist/SchemaAST.d.ts.map +1 -1
  370. package/dist/SchemaAST.js +366 -279
  371. package/dist/SchemaAST.js.map +1 -1
  372. package/dist/SchemaError.d.ts +7 -6
  373. package/dist/SchemaError.d.ts.map +1 -1
  374. package/dist/SchemaError.js +7 -6
  375. package/dist/SchemaError.js.map +1 -1
  376. package/dist/SchemaGetter.d.ts +217 -174
  377. package/dist/SchemaGetter.d.ts.map +1 -1
  378. package/dist/SchemaGetter.js +218 -185
  379. package/dist/SchemaGetter.js.map +1 -1
  380. package/dist/SchemaIssue.d.ts +62 -190
  381. package/dist/SchemaIssue.d.ts.map +1 -1
  382. package/dist/SchemaIssue.js +73 -265
  383. package/dist/SchemaIssue.js.map +1 -1
  384. package/dist/SchemaParser.d.ts +2 -2
  385. package/dist/SchemaParser.d.ts.map +1 -1
  386. package/dist/SchemaParser.js +123 -75
  387. package/dist/SchemaParser.js.map +1 -1
  388. package/dist/SchemaRepresentation.d.ts +22 -36
  389. package/dist/SchemaRepresentation.d.ts.map +1 -1
  390. package/dist/SchemaRepresentation.js +20 -26
  391. package/dist/SchemaRepresentation.js.map +1 -1
  392. package/dist/SchemaTransformation.d.ts +114 -74
  393. package/dist/SchemaTransformation.d.ts.map +1 -1
  394. package/dist/SchemaTransformation.js +120 -85
  395. package/dist/SchemaTransformation.js.map +1 -1
  396. package/dist/Scope.d.ts +123 -151
  397. package/dist/Scope.d.ts.map +1 -1
  398. package/dist/Scope.js +72 -92
  399. package/dist/Scope.js.map +1 -1
  400. package/dist/ScopedCache.js.map +1 -1
  401. package/dist/ScopedRef.d.ts +3 -3
  402. package/dist/ScopedRef.js +2 -2
  403. package/dist/ScopedRef.js.map +1 -1
  404. package/dist/Semaphore.d.ts +96 -10
  405. package/dist/Semaphore.d.ts.map +1 -1
  406. package/dist/Semaphore.js +78 -39
  407. package/dist/Semaphore.js.map +1 -1
  408. package/dist/Sink.d.ts +117 -107
  409. package/dist/Sink.d.ts.map +1 -1
  410. package/dist/Sink.js +107 -100
  411. package/dist/Sink.js.map +1 -1
  412. package/dist/Stdio.d.ts +1 -1
  413. package/dist/Stdio.js.map +1 -1
  414. package/dist/Stream.d.ts +2415 -2949
  415. package/dist/Stream.d.ts.map +1 -1
  416. package/dist/Stream.js +1078 -1381
  417. package/dist/Stream.js.map +1 -1
  418. package/dist/String.d.ts +262 -308
  419. package/dist/String.d.ts.map +1 -1
  420. package/dist/String.js +184 -215
  421. package/dist/String.js.map +1 -1
  422. package/dist/Struct.d.ts +109 -114
  423. package/dist/Struct.d.ts.map +1 -1
  424. package/dist/Struct.js +41 -50
  425. package/dist/Struct.js.map +1 -1
  426. package/dist/SubscriptionRef.d.ts +282 -250
  427. package/dist/SubscriptionRef.d.ts.map +1 -1
  428. package/dist/SubscriptionRef.js +104 -92
  429. package/dist/SubscriptionRef.js.map +1 -1
  430. package/dist/Symbol.d.ts +3 -3
  431. package/dist/Symbol.js +3 -3
  432. package/dist/Symbol.js.map +1 -1
  433. package/dist/SynchronizedRef.js.map +1 -1
  434. package/dist/Take.js.map +1 -1
  435. package/dist/Terminal.d.ts +2 -2
  436. package/dist/Terminal.js +1 -1
  437. package/dist/Terminal.js.map +1 -1
  438. package/dist/Tracer.d.ts +100 -54
  439. package/dist/Tracer.d.ts.map +1 -1
  440. package/dist/Tracer.js +41 -24
  441. package/dist/Tracer.js.map +1 -1
  442. package/dist/Trie.d.ts +287 -679
  443. package/dist/Trie.d.ts.map +1 -1
  444. package/dist/Trie.js +109 -251
  445. package/dist/Trie.js.map +1 -1
  446. package/dist/Tuple.d.ts +92 -127
  447. package/dist/Tuple.d.ts.map +1 -1
  448. package/dist/Tuple.js +42 -57
  449. package/dist/Tuple.js.map +1 -1
  450. package/dist/TxChunk.d.ts +201 -121
  451. package/dist/TxChunk.d.ts.map +1 -1
  452. package/dist/TxChunk.js +85 -56
  453. package/dist/TxChunk.js.map +1 -1
  454. package/dist/TxDeferred.d.ts +62 -46
  455. package/dist/TxDeferred.d.ts.map +1 -1
  456. package/dist/TxDeferred.js +30 -22
  457. package/dist/TxDeferred.js.map +1 -1
  458. package/dist/TxHashMap.d.ts +631 -779
  459. package/dist/TxHashMap.d.ts.map +1 -1
  460. package/dist/TxHashMap.js +268 -330
  461. package/dist/TxHashMap.js.map +1 -1
  462. package/dist/TxHashSet.d.ts +297 -236
  463. package/dist/TxHashSet.d.ts.map +1 -1
  464. package/dist/TxHashSet.js +130 -100
  465. package/dist/TxHashSet.js.map +1 -1
  466. package/dist/TxPriorityQueue.d.ts +126 -95
  467. package/dist/TxPriorityQueue.d.ts.map +1 -1
  468. package/dist/TxPriorityQueue.js +74 -56
  469. package/dist/TxPriorityQueue.js.map +1 -1
  470. package/dist/TxPubSub.d.ts +101 -88
  471. package/dist/TxPubSub.d.ts.map +1 -1
  472. package/dist/TxPubSub.js +87 -66
  473. package/dist/TxPubSub.js.map +1 -1
  474. package/dist/TxQueue.d.ts +200 -180
  475. package/dist/TxQueue.d.ts.map +1 -1
  476. package/dist/TxQueue.js +160 -136
  477. package/dist/TxQueue.js.map +1 -1
  478. package/dist/TxReentrantLock.d.ts +97 -66
  479. package/dist/TxReentrantLock.d.ts.map +1 -1
  480. package/dist/TxReentrantLock.js +67 -45
  481. package/dist/TxReentrantLock.js.map +1 -1
  482. package/dist/TxRef.d.ts +51 -32
  483. package/dist/TxRef.d.ts.map +1 -1
  484. package/dist/TxRef.js +23 -15
  485. package/dist/TxRef.js.map +1 -1
  486. package/dist/TxSemaphore.d.ts +129 -95
  487. package/dist/TxSemaphore.d.ts.map +1 -1
  488. package/dist/TxSemaphore.js +85 -70
  489. package/dist/TxSemaphore.js.map +1 -1
  490. package/dist/TxSubscriptionRef.d.ts +97 -70
  491. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  492. package/dist/TxSubscriptionRef.js +44 -34
  493. package/dist/TxSubscriptionRef.js.map +1 -1
  494. package/dist/Types.d.ts +126 -67
  495. package/dist/Types.d.ts.map +1 -1
  496. package/dist/UndefinedOr.js.map +1 -1
  497. package/dist/Unify.d.ts +45 -65
  498. package/dist/Unify.d.ts.map +1 -1
  499. package/dist/Unify.js +6 -9
  500. package/dist/Unify.js.map +1 -1
  501. package/dist/Utils.d.ts +23 -16
  502. package/dist/Utils.d.ts.map +1 -1
  503. package/dist/Utils.js +3 -7
  504. package/dist/Utils.js.map +1 -1
  505. package/dist/index.js.map +1 -1
  506. package/dist/internal/array.js.map +1 -1
  507. package/dist/internal/core.js +1 -1
  508. package/dist/internal/core.js.map +1 -1
  509. package/dist/internal/dateTime.js +4 -0
  510. package/dist/internal/dateTime.js.map +1 -1
  511. package/dist/internal/doNotation.js.map +1 -1
  512. package/dist/internal/effect.js +77 -40
  513. package/dist/internal/effect.js.map +1 -1
  514. package/dist/internal/equal.js.map +1 -1
  515. package/dist/internal/errors.js.map +1 -1
  516. package/dist/internal/executionPlan.js.map +1 -1
  517. package/dist/internal/hashMap.js.map +1 -1
  518. package/dist/internal/hashSet.js.map +1 -1
  519. package/dist/internal/layer.js.map +1 -1
  520. package/dist/internal/matcher.js.map +1 -1
  521. package/dist/internal/metric.js.map +1 -1
  522. package/dist/internal/option.js.map +1 -1
  523. package/dist/internal/persistence.d.ts +2 -0
  524. package/dist/internal/persistence.d.ts.map +1 -0
  525. package/dist/internal/persistence.js +3 -0
  526. package/dist/internal/persistence.js.map +1 -0
  527. package/dist/internal/random.js.map +1 -1
  528. package/dist/internal/rcRef.js.map +1 -1
  529. package/dist/internal/record.js.map +1 -1
  530. package/dist/internal/redacted.js.map +1 -1
  531. package/dist/internal/references.js +3 -0
  532. package/dist/internal/references.js.map +1 -1
  533. package/dist/internal/request.js.map +1 -1
  534. package/dist/internal/result.js.map +1 -1
  535. package/dist/internal/schedule.js.map +1 -1
  536. package/dist/internal/schema/annotations.js.map +1 -1
  537. package/dist/internal/schema/cause.js.map +1 -1
  538. package/dist/internal/schema/fromJsonSchemaDocument.js +13 -11
  539. package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
  540. package/dist/internal/schema/fromRepresentation.js +8 -15
  541. package/dist/internal/schema/fromRepresentation.js.map +1 -1
  542. package/dist/internal/schema/parser.d.ts +14 -0
  543. package/dist/internal/schema/parser.d.ts.map +1 -0
  544. package/dist/internal/schema/parser.js +13 -0
  545. package/dist/internal/schema/parser.js.map +1 -0
  546. package/dist/internal/schema/schema.js.map +1 -1
  547. package/dist/internal/schema/toArbitrary.js.map +1 -1
  548. package/dist/internal/schema/toCodeDocument.js.map +1 -1
  549. package/dist/internal/schema/toEquivalence.js.map +1 -1
  550. package/dist/internal/schema/toJsonSchemaDocument.js +48 -6
  551. package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
  552. package/dist/internal/schema/toRepresentation.js +87 -107
  553. package/dist/internal/schema/toRepresentation.js.map +1 -1
  554. package/dist/internal/stackTraceLimit.js.map +1 -1
  555. package/dist/internal/stream.js.map +1 -1
  556. package/dist/internal/tracer.js.map +1 -1
  557. package/dist/internal/trie.js +13 -9
  558. package/dist/internal/trie.js.map +1 -1
  559. package/dist/testing/FastCheck.d.ts +8 -7
  560. package/dist/testing/FastCheck.d.ts.map +1 -1
  561. package/dist/testing/FastCheck.js +8 -7
  562. package/dist/testing/FastCheck.js.map +1 -1
  563. package/dist/testing/TestClock.d.ts +57 -28
  564. package/dist/testing/TestClock.d.ts.map +1 -1
  565. package/dist/testing/TestClock.js +50 -18
  566. package/dist/testing/TestClock.js.map +1 -1
  567. package/dist/testing/TestConsole.d.ts +32 -31
  568. package/dist/testing/TestConsole.d.ts.map +1 -1
  569. package/dist/testing/TestConsole.js +24 -22
  570. package/dist/testing/TestConsole.js.map +1 -1
  571. package/dist/testing/TestSchema.d.ts +29 -29
  572. package/dist/testing/TestSchema.js +25 -25
  573. package/dist/testing/TestSchema.js.map +1 -1
  574. package/dist/testing/index.js.map +1 -1
  575. package/dist/unstable/ai/AiError.d.ts +95 -118
  576. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  577. package/dist/unstable/ai/AiError.js +94 -117
  578. package/dist/unstable/ai/AiError.js.map +1 -1
  579. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  580. package/dist/unstable/ai/AnthropicStructuredOutput.js +1 -1
  581. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  582. package/dist/unstable/ai/Chat.d.ts +132 -97
  583. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  584. package/dist/unstable/ai/Chat.js +55 -51
  585. package/dist/unstable/ai/Chat.js.map +1 -1
  586. package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
  587. package/dist/unstable/ai/IdGenerator.d.ts +32 -28
  588. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  589. package/dist/unstable/ai/IdGenerator.js +26 -21
  590. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  591. package/dist/unstable/ai/LanguageModel.d.ts +107 -67
  592. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  593. package/dist/unstable/ai/LanguageModel.js +104 -64
  594. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  595. package/dist/unstable/ai/McpProtocol.d.ts +30 -0
  596. package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
  597. package/dist/unstable/ai/McpProtocol.js +20 -0
  598. package/dist/unstable/ai/McpProtocol.js.map +1 -0
  599. package/dist/unstable/ai/McpSchema.d.ts +141 -75
  600. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  601. package/dist/unstable/ai/McpSchema.js +58 -50
  602. package/dist/unstable/ai/McpSchema.js.map +1 -1
  603. package/dist/unstable/ai/McpServer.d.ts +68 -59
  604. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  605. package/dist/unstable/ai/McpServer.js +694 -241
  606. package/dist/unstable/ai/McpServer.js.map +1 -1
  607. package/dist/unstable/ai/Model.d.ts +8 -19
  608. package/dist/unstable/ai/Model.d.ts.map +1 -1
  609. package/dist/unstable/ai/Model.js +9 -20
  610. package/dist/unstable/ai/Model.js.map +1 -1
  611. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  612. package/dist/unstable/ai/OpenAiStructuredOutput.js +1 -1
  613. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  614. package/dist/unstable/ai/Prompt.d.ts +112 -38
  615. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  616. package/dist/unstable/ai/Prompt.js +53 -17
  617. package/dist/unstable/ai/Prompt.js.map +1 -1
  618. package/dist/unstable/ai/Response.d.ts +28 -14
  619. package/dist/unstable/ai/Response.d.ts.map +1 -1
  620. package/dist/unstable/ai/Response.js +9 -4
  621. package/dist/unstable/ai/Response.js.map +1 -1
  622. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  623. package/dist/unstable/ai/Telemetry.d.ts +46 -13
  624. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  625. package/dist/unstable/ai/Telemetry.js +18 -7
  626. package/dist/unstable/ai/Telemetry.js.map +1 -1
  627. package/dist/unstable/ai/Tokenizer.d.ts +14 -3
  628. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  629. package/dist/unstable/ai/Tokenizer.js +10 -2
  630. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  631. package/dist/unstable/ai/Tool.d.ts +59 -44
  632. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  633. package/dist/unstable/ai/Tool.js +48 -39
  634. package/dist/unstable/ai/Tool.js.map +1 -1
  635. package/dist/unstable/ai/Toolkit.d.ts +26 -8
  636. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  637. package/dist/unstable/ai/Toolkit.js +18 -4
  638. package/dist/unstable/ai/Toolkit.js.map +1 -1
  639. package/dist/unstable/ai/index.d.ts +4 -0
  640. package/dist/unstable/ai/index.d.ts.map +1 -1
  641. package/dist/unstable/ai/index.js +4 -0
  642. package/dist/unstable/ai/index.js.map +1 -1
  643. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  644. package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
  645. package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
  646. package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
  647. package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
  648. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
  649. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
  650. package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
  651. package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
  652. package/dist/unstable/ai/internal/structured-output.js +14 -15
  653. package/dist/unstable/ai/internal/structured-output.js.map +1 -1
  654. package/dist/unstable/cli/Argument.d.ts +273 -69
  655. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  656. package/dist/unstable/cli/Argument.js +111 -33
  657. package/dist/unstable/cli/Argument.js.map +1 -1
  658. package/dist/unstable/cli/CliConfig.js.map +1 -1
  659. package/dist/unstable/cli/CliError.d.ts +69 -76
  660. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  661. package/dist/unstable/cli/CliError.js +57 -61
  662. package/dist/unstable/cli/CliError.js.map +1 -1
  663. package/dist/unstable/cli/CliOutput.d.ts +35 -54
  664. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  665. package/dist/unstable/cli/CliOutput.js +26 -42
  666. package/dist/unstable/cli/CliOutput.js.map +1 -1
  667. package/dist/unstable/cli/Command.d.ts +705 -107
  668. package/dist/unstable/cli/Command.d.ts.map +1 -1
  669. package/dist/unstable/cli/Command.js +238 -42
  670. package/dist/unstable/cli/Command.js.map +1 -1
  671. package/dist/unstable/cli/Completions.js.map +1 -1
  672. package/dist/unstable/cli/Flag.d.ts +418 -138
  673. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  674. package/dist/unstable/cli/Flag.js +197 -71
  675. package/dist/unstable/cli/Flag.js.map +1 -1
  676. package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
  677. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  678. package/dist/unstable/cli/HelpDoc.d.ts +12 -4
  679. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  680. package/dist/unstable/cli/Param.d.ts +292 -78
  681. package/dist/unstable/cli/Param.d.ts.map +1 -1
  682. package/dist/unstable/cli/Param.js +128 -46
  683. package/dist/unstable/cli/Param.js.map +1 -1
  684. package/dist/unstable/cli/Primitive.d.ts +370 -149
  685. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  686. package/dist/unstable/cli/Primitive.js +344 -136
  687. package/dist/unstable/cli/Primitive.js.map +1 -1
  688. package/dist/unstable/cli/Prompt.d.ts +23 -14
  689. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  690. package/dist/unstable/cli/Prompt.js +23 -14
  691. package/dist/unstable/cli/Prompt.js.map +1 -1
  692. package/dist/unstable/cli/index.js.map +1 -1
  693. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  694. package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
  695. package/dist/unstable/cli/internal/command.js.map +1 -1
  696. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  697. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
  698. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  699. package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
  700. package/dist/unstable/cli/internal/config.js.map +1 -1
  701. package/dist/unstable/cli/internal/help.js.map +1 -1
  702. package/dist/unstable/cli/internal/lexer.js +17 -7
  703. package/dist/unstable/cli/internal/lexer.js.map +1 -1
  704. package/dist/unstable/cli/internal/parser.js +2 -2
  705. package/dist/unstable/cli/internal/parser.js.map +1 -1
  706. package/dist/unstable/cli/internal/wizard.js.map +1 -1
  707. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  708. package/dist/unstable/cluster/ClusterError.js.map +1 -1
  709. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  710. package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
  711. package/dist/unstable/cluster/ClusterSchema.js +8 -8
  712. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  713. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  714. package/dist/unstable/cluster/ClusterWorkflowEngine.js +5 -1
  715. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  716. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  717. package/dist/unstable/cluster/Entity.d.ts +10 -10
  718. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  719. package/dist/unstable/cluster/Entity.js +8 -8
  720. package/dist/unstable/cluster/Entity.js.map +1 -1
  721. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  722. package/dist/unstable/cluster/EntityId.js.map +1 -1
  723. package/dist/unstable/cluster/EntityProxy.d.ts +4 -2
  724. package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
  725. package/dist/unstable/cluster/EntityProxy.js +4 -2
  726. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  727. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  728. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  729. package/dist/unstable/cluster/EntityResource.js +2 -2
  730. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  731. package/dist/unstable/cluster/EntityType.js.map +1 -1
  732. package/dist/unstable/cluster/Envelope.d.ts +3 -3
  733. package/dist/unstable/cluster/Envelope.js +3 -3
  734. package/dist/unstable/cluster/Envelope.js.map +1 -1
  735. package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
  736. package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
  737. package/dist/unstable/cluster/HttpRunner.js +6 -4
  738. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  739. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  740. package/dist/unstable/cluster/MachineId.js.map +1 -1
  741. package/dist/unstable/cluster/Message.d.ts +9 -9
  742. package/dist/unstable/cluster/Message.js +6 -6
  743. package/dist/unstable/cluster/Message.js.map +1 -1
  744. package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
  745. package/dist/unstable/cluster/MessageStorage.js +5 -5
  746. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  747. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  748. package/dist/unstable/cluster/Reply.js +4 -4
  749. package/dist/unstable/cluster/Reply.js.map +1 -1
  750. package/dist/unstable/cluster/Runner.js.map +1 -1
  751. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  752. package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
  753. package/dist/unstable/cluster/RunnerHealth.js +1 -1
  754. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  755. package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
  756. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  757. package/dist/unstable/cluster/RunnerServer.js +16 -16
  758. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  759. package/dist/unstable/cluster/RunnerStorage.d.ts +2 -2
  760. package/dist/unstable/cluster/RunnerStorage.js +1 -1
  761. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  762. package/dist/unstable/cluster/Runners.d.ts +6 -6
  763. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  764. package/dist/unstable/cluster/Runners.js +19 -10
  765. package/dist/unstable/cluster/Runners.js.map +1 -1
  766. package/dist/unstable/cluster/ShardId.js.map +1 -1
  767. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  768. package/dist/unstable/cluster/Sharding.js +3 -2
  769. package/dist/unstable/cluster/Sharding.js.map +1 -1
  770. package/dist/unstable/cluster/ShardingConfig.d.ts +3 -3
  771. package/dist/unstable/cluster/ShardingConfig.js +3 -3
  772. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  773. package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
  774. package/dist/unstable/cluster/SingleRunner.js.map +1 -1
  775. package/dist/unstable/cluster/Singleton.js.map +1 -1
  776. package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
  777. package/dist/unstable/cluster/SingletonAddress.js +1 -1
  778. package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
  779. package/dist/unstable/cluster/Snowflake.d.ts +8 -8
  780. package/dist/unstable/cluster/Snowflake.js +8 -8
  781. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  782. package/dist/unstable/cluster/SocketRunner.js.map +1 -1
  783. package/dist/unstable/cluster/SqlMessageStorage.js +1 -1
  784. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  785. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  786. package/dist/unstable/cluster/SqlRunnerStorage.js +20 -5
  787. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  788. package/dist/unstable/cluster/TestRunner.js.map +1 -1
  789. package/dist/unstable/cluster/index.js.map +1 -1
  790. package/dist/unstable/cluster/internal/entityManager.js +5 -5
  791. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  792. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  793. package/dist/unstable/cluster/internal/hash.js.map +1 -1
  794. package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
  795. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  796. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  797. package/dist/unstable/cluster/internal/shardLock.js.map +1 -1
  798. package/dist/unstable/devtools/DevTools.js.map +1 -1
  799. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  800. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  801. package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
  802. package/dist/unstable/devtools/index.js.map +1 -1
  803. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  804. package/dist/unstable/encoding/Msgpack.js +6 -8
  805. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  806. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  807. package/dist/unstable/encoding/Sse.d.ts +72 -8
  808. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  809. package/dist/unstable/encoding/Sse.js +58 -8
  810. package/dist/unstable/encoding/Sse.js.map +1 -1
  811. package/dist/unstable/encoding/index.js.map +1 -1
  812. package/dist/unstable/eventlog/Event.d.ts +20 -20
  813. package/dist/unstable/eventlog/Event.js.map +1 -1
  814. package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
  815. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  816. package/dist/unstable/eventlog/EventJournal.d.ts +15 -15
  817. package/dist/unstable/eventlog/EventJournal.js +13 -13
  818. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  819. package/dist/unstable/eventlog/EventLog.d.ts +3 -3
  820. package/dist/unstable/eventlog/EventLog.js +3 -3
  821. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  822. package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
  823. package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
  824. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  825. package/dist/unstable/eventlog/EventLogMessage.d.ts +2 -2
  826. package/dist/unstable/eventlog/EventLogMessage.js +1 -1
  827. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  828. package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
  829. package/dist/unstable/eventlog/EventLogRemote.js +1 -1
  830. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  831. package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
  832. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  833. package/dist/unstable/eventlog/EventLogServer.js +45 -21
  834. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  835. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
  836. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  837. package/dist/unstable/eventlog/EventLogServerEncrypted.js +13 -5
  838. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  839. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
  840. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  841. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +14 -6
  842. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  843. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
  844. package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
  845. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
  846. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  847. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  848. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  849. package/dist/unstable/eventlog/index.js.map +1 -1
  850. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
  851. package/dist/unstable/http/Cookies.d.ts +2 -2
  852. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  853. package/dist/unstable/http/Cookies.js +30 -18
  854. package/dist/unstable/http/Cookies.js.map +1 -1
  855. package/dist/unstable/http/Etag.d.ts +1 -1
  856. package/dist/unstable/http/Etag.js +1 -1
  857. package/dist/unstable/http/Etag.js.map +1 -1
  858. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  859. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  860. package/dist/unstable/http/Headers.d.ts +2 -2
  861. package/dist/unstable/http/Headers.js +2 -2
  862. package/dist/unstable/http/Headers.js.map +1 -1
  863. package/dist/unstable/http/HttpBody.d.ts +5 -3
  864. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  865. package/dist/unstable/http/HttpBody.js +11 -5
  866. package/dist/unstable/http/HttpBody.js.map +1 -1
  867. package/dist/unstable/http/HttpClient.d.ts +51 -44
  868. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  869. package/dist/unstable/http/HttpClient.js +46 -17
  870. package/dist/unstable/http/HttpClient.js.map +1 -1
  871. package/dist/unstable/http/HttpClientError.js.map +1 -1
  872. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  873. package/dist/unstable/http/HttpClientRequest.js +2 -0
  874. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  875. package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
  876. package/dist/unstable/http/HttpClientResponse.js +2 -2
  877. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  878. package/dist/unstable/http/HttpEffect.d.ts +6 -6
  879. package/dist/unstable/http/HttpEffect.js +3 -3
  880. package/dist/unstable/http/HttpEffect.js.map +1 -1
  881. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  882. package/dist/unstable/http/HttpMethod.d.ts +6 -9
  883. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  884. package/dist/unstable/http/HttpMethod.js +6 -9
  885. package/dist/unstable/http/HttpMethod.js.map +1 -1
  886. package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
  887. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  888. package/dist/unstable/http/HttpMiddleware.js +164 -39
  889. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  890. package/dist/unstable/http/HttpPlatform.d.ts +76 -0
  891. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  892. package/dist/unstable/http/HttpPlatform.js +32 -0
  893. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  894. package/dist/unstable/http/HttpRouter.d.ts +88 -89
  895. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  896. package/dist/unstable/http/HttpRouter.js +78 -79
  897. package/dist/unstable/http/HttpRouter.js.map +1 -1
  898. package/dist/unstable/http/HttpServer.d.ts +13 -13
  899. package/dist/unstable/http/HttpServer.js +6 -6
  900. package/dist/unstable/http/HttpServer.js.map +1 -1
  901. package/dist/unstable/http/HttpServerError.d.ts +2 -2
  902. package/dist/unstable/http/HttpServerError.js +2 -2
  903. package/dist/unstable/http/HttpServerError.js.map +1 -1
  904. package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
  905. package/dist/unstable/http/HttpServerRequest.js +4 -4
  906. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  907. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  908. package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
  909. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  910. package/dist/unstable/http/HttpServerResponse.js +10 -0
  911. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  912. package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
  913. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
  914. package/dist/unstable/http/HttpStaticServer.js +35 -7
  915. package/dist/unstable/http/HttpStaticServer.js.map +1 -1
  916. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  917. package/dist/unstable/http/Multipart.d.ts +6 -6
  918. package/dist/unstable/http/Multipart.js +5 -5
  919. package/dist/unstable/http/Multipart.js.map +1 -1
  920. package/dist/unstable/http/Template.js.map +1 -1
  921. package/dist/unstable/http/Url.d.ts +33 -63
  922. package/dist/unstable/http/Url.d.ts.map +1 -1
  923. package/dist/unstable/http/Url.js +14 -28
  924. package/dist/unstable/http/Url.js.map +1 -1
  925. package/dist/unstable/http/UrlParams.d.ts +10 -18
  926. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  927. package/dist/unstable/http/UrlParams.js +9 -17
  928. package/dist/unstable/http/UrlParams.js.map +1 -1
  929. package/dist/unstable/http/index.js.map +1 -1
  930. package/dist/unstable/http/internal/compression.d.ts +2 -0
  931. package/dist/unstable/http/internal/compression.d.ts.map +1 -0
  932. package/dist/unstable/http/internal/compression.js +155 -0
  933. package/dist/unstable/http/internal/compression.js.map +1 -0
  934. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
  935. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  936. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
  937. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  938. package/dist/unstable/httpapi/HttpApiBuilder.js +10 -11
  939. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  940. package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
  941. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  942. package/dist/unstable/httpapi/HttpApiClient.js +11 -13
  943. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  944. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +42 -42
  945. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  946. package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
  947. package/dist/unstable/httpapi/HttpApiError.js +13 -13
  948. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  949. package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
  950. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  951. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
  952. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  953. package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
  954. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  955. package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
  956. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  957. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  958. package/dist/unstable/httpapi/HttpApiSchema.d.ts +6 -6
  959. package/dist/unstable/httpapi/HttpApiSchema.js +4 -4
  960. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  961. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  962. package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
  963. package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
  964. package/dist/unstable/httpapi/OpenApi.d.ts +13 -13
  965. package/dist/unstable/httpapi/OpenApi.js +13 -13
  966. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  967. package/dist/unstable/httpapi/index.js.map +1 -1
  968. package/dist/unstable/httpapi/internal/html.js.map +1 -1
  969. package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
  970. package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
  971. package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
  972. package/dist/unstable/observability/Otlp.js.map +1 -1
  973. package/dist/unstable/observability/OtlpExporter.d.ts +12 -14
  974. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  975. package/dist/unstable/observability/OtlpExporter.js +17 -4
  976. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  977. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  978. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -1
  979. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  980. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  981. package/dist/unstable/observability/OtlpResource.d.ts +16 -7
  982. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  983. package/dist/unstable/observability/OtlpResource.js +21 -12
  984. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  985. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  986. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  987. package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
  988. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  989. package/dist/unstable/observability/PrometheusMetrics.js +10 -3
  990. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  991. package/dist/unstable/observability/index.js.map +1 -1
  992. package/dist/unstable/observability/internal/otlpEnv.js +1 -1
  993. package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
  994. package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
  995. package/dist/unstable/observability/internal/protobuf.js +3 -0
  996. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  997. package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
  998. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  999. package/dist/unstable/persistence/KeyValueStore.js +22 -13
  1000. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  1001. package/dist/unstable/persistence/Persistable.d.ts +8 -8
  1002. package/dist/unstable/persistence/Persistable.js.map +1 -1
  1003. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  1004. package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
  1005. package/dist/unstable/persistence/PersistedQueue.js +6 -6
  1006. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  1007. package/dist/unstable/persistence/Persistence.d.ts +3 -3
  1008. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  1009. package/dist/unstable/persistence/Persistence.js +91 -15
  1010. package/dist/unstable/persistence/Persistence.js.map +1 -1
  1011. package/dist/unstable/persistence/RateLimiter.d.ts +26 -15
  1012. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  1013. package/dist/unstable/persistence/RateLimiter.js +24 -13
  1014. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  1015. package/dist/unstable/persistence/Redis.d.ts +2 -2
  1016. package/dist/unstable/persistence/Redis.js +1 -1
  1017. package/dist/unstable/persistence/Redis.js.map +1 -1
  1018. package/dist/unstable/persistence/index.js.map +1 -1
  1019. package/dist/unstable/process/ChildProcess.d.ts +64 -21
  1020. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1021. package/dist/unstable/process/ChildProcess.js +14 -5
  1022. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1023. package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
  1024. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1025. package/dist/unstable/process/ChildProcessSpawner.js +1 -1
  1026. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1027. package/dist/unstable/process/index.js.map +1 -1
  1028. package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
  1029. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  1030. package/dist/unstable/reactivity/AsyncResult.js +10 -10
  1031. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1032. package/dist/unstable/reactivity/Atom.d.ts +25 -22
  1033. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1034. package/dist/unstable/reactivity/Atom.js +14 -13
  1035. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1036. package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
  1037. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1038. package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
  1039. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1040. package/dist/unstable/reactivity/AtomRef.js.map +1 -1
  1041. package/dist/unstable/reactivity/AtomRegistry.js +24 -3
  1042. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1043. package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
  1044. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1045. package/dist/unstable/reactivity/AtomRpc.js +4 -1
  1046. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1047. package/dist/unstable/reactivity/Hydration.d.ts +1 -1
  1048. package/dist/unstable/reactivity/Hydration.js +1 -1
  1049. package/dist/unstable/reactivity/Hydration.js.map +1 -1
  1050. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1051. package/dist/unstable/reactivity/index.js.map +1 -1
  1052. package/dist/unstable/rpc/Rpc.d.ts +35 -33
  1053. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1054. package/dist/unstable/rpc/Rpc.js +4 -2
  1055. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1056. package/dist/unstable/rpc/RpcClient.d.ts +12 -12
  1057. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1058. package/dist/unstable/rpc/RpcClient.js +12 -11
  1059. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1060. package/dist/unstable/rpc/RpcClientError.js.map +1 -1
  1061. package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
  1062. package/dist/unstable/rpc/RpcGroup.js +1 -1
  1063. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1064. package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
  1065. package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
  1066. package/dist/unstable/rpc/RpcMessage.js +6 -6
  1067. package/dist/unstable/rpc/RpcMessage.js.map +1 -1
  1068. package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
  1069. package/dist/unstable/rpc/RpcMiddleware.js +1 -1
  1070. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1071. package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
  1072. package/dist/unstable/rpc/RpcSchema.js +3 -3
  1073. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1074. package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
  1075. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1076. package/dist/unstable/rpc/RpcSerialization.js +175 -96
  1077. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1078. package/dist/unstable/rpc/RpcServer.d.ts +13 -13
  1079. package/dist/unstable/rpc/RpcServer.js +17 -13
  1080. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1081. package/dist/unstable/rpc/RpcTest.js.map +1 -1
  1082. package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
  1083. package/dist/unstable/rpc/RpcWorker.js +4 -4
  1084. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1085. package/dist/unstable/rpc/Utils.js.map +1 -1
  1086. package/dist/unstable/rpc/index.js.map +1 -1
  1087. package/dist/unstable/schema/Model.d.ts +52 -50
  1088. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1089. package/dist/unstable/schema/Model.js +35 -33
  1090. package/dist/unstable/schema/Model.js.map +1 -1
  1091. package/dist/unstable/schema/VariantSchema.d.ts +5 -5
  1092. package/dist/unstable/schema/VariantSchema.js +2 -2
  1093. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1094. package/dist/unstable/schema/index.js.map +1 -1
  1095. package/dist/unstable/socket/Socket.d.ts +11 -3
  1096. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1097. package/dist/unstable/socket/Socket.js +9 -4
  1098. package/dist/unstable/socket/Socket.js.map +1 -1
  1099. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1100. package/dist/unstable/socket/index.js.map +1 -1
  1101. package/dist/unstable/sql/Migrator.js.map +1 -1
  1102. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  1103. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1104. package/dist/unstable/sql/SqlClient.js +2 -2
  1105. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1106. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1107. package/dist/unstable/sql/SqlError.js.map +1 -1
  1108. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  1109. package/dist/unstable/sql/SqlModel.js +2 -2
  1110. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1111. package/dist/unstable/sql/SqlResolver.d.ts +5 -5
  1112. package/dist/unstable/sql/SqlResolver.js +2 -2
  1113. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1114. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1115. package/dist/unstable/sql/SqlStream.js.map +1 -1
  1116. package/dist/unstable/sql/Statement.d.ts +6 -6
  1117. package/dist/unstable/sql/Statement.js +15 -15
  1118. package/dist/unstable/sql/Statement.js.map +1 -1
  1119. package/dist/unstable/sql/index.js.map +1 -1
  1120. package/dist/unstable/workers/Transferable.d.ts +1 -1
  1121. package/dist/unstable/workers/Transferable.js +1 -1
  1122. package/dist/unstable/workers/Transferable.js.map +1 -1
  1123. package/dist/unstable/workers/Worker.d.ts +2 -2
  1124. package/dist/unstable/workers/Worker.js +2 -2
  1125. package/dist/unstable/workers/Worker.js.map +1 -1
  1126. package/dist/unstable/workers/WorkerError.d.ts +7 -7
  1127. package/dist/unstable/workers/WorkerError.js +6 -6
  1128. package/dist/unstable/workers/WorkerError.js.map +1 -1
  1129. package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
  1130. package/dist/unstable/workers/WorkerRunner.js +1 -1
  1131. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1132. package/dist/unstable/workers/index.js.map +1 -1
  1133. package/dist/unstable/workflow/Activity.d.ts +2 -2
  1134. package/dist/unstable/workflow/Activity.js +2 -2
  1135. package/dist/unstable/workflow/Activity.js.map +1 -1
  1136. package/dist/unstable/workflow/DurableClock.d.ts +1 -1
  1137. package/dist/unstable/workflow/DurableClock.js +1 -1
  1138. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1139. package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
  1140. package/dist/unstable/workflow/DurableDeferred.js +5 -5
  1141. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1142. package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
  1143. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  1144. package/dist/unstable/workflow/DurableQueue.js +22 -20
  1145. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  1146. package/dist/unstable/workflow/Workflow.d.ts +21 -21
  1147. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1148. package/dist/unstable/workflow/Workflow.js +13 -14
  1149. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1150. package/dist/unstable/workflow/WorkflowEngine.d.ts +1 -1
  1151. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1152. package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
  1153. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  1154. package/dist/unstable/workflow/WorkflowProxy.js +4 -2
  1155. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  1156. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1157. package/dist/unstable/workflow/index.js.map +1 -1
  1158. package/dist/unstable/workflow/internal/crypto.js.map +1 -1
  1159. package/package.json +5 -6
  1160. package/src/Array.ts +982 -1045
  1161. package/src/BigDecimal.ts +433 -756
  1162. package/src/BigInt.ts +213 -269
  1163. package/src/Boolean.ts +146 -188
  1164. package/src/Cache.ts +409 -255
  1165. package/src/Cause.ts +167 -277
  1166. package/src/Channel.ts +891 -816
  1167. package/src/ChannelSchema.ts +1 -1
  1168. package/src/Chunk.ts +841 -1181
  1169. package/src/Clock.ts +181 -49
  1170. package/src/Combiner.ts +20 -33
  1171. package/src/Config.ts +615 -332
  1172. package/src/ConfigProvider.ts +214 -120
  1173. package/src/Console.ts +289 -39
  1174. package/src/Context.ts +319 -378
  1175. package/src/Cron.ts +68 -77
  1176. package/src/Crypto.ts +13 -15
  1177. package/src/Data.ts +60 -80
  1178. package/src/DateTime.ts +564 -660
  1179. package/src/Deferred.ts +253 -256
  1180. package/src/Duration.ts +216 -308
  1181. package/src/Effect.ts +2893 -3279
  1182. package/src/Encoding.ts +22 -40
  1183. package/src/Equal.ts +49 -39
  1184. package/src/Equivalence.ts +103 -105
  1185. package/src/ErrorReporter.ts +51 -27
  1186. package/src/ExecutionPlan.ts +13 -55
  1187. package/src/Exit.ts +116 -192
  1188. package/src/Fiber.ts +81 -148
  1189. package/src/FiberHandle.ts +152 -105
  1190. package/src/FiberMap.ts +225 -174
  1191. package/src/FiberSet.ts +124 -82
  1192. package/src/FileSystem.ts +155 -263
  1193. package/src/Filter.ts +61 -33
  1194. package/src/Formatter.ts +54 -56
  1195. package/src/Function.ts +76 -145
  1196. package/src/Graph.ts +416 -770
  1197. package/src/HKT.ts +12 -6
  1198. package/src/Hash.ts +52 -83
  1199. package/src/HashMap.ts +319 -411
  1200. package/src/HashRing.ts +1 -0
  1201. package/src/HashSet.ts +177 -284
  1202. package/src/Inspectable.ts +12 -12
  1203. package/src/Iterable.ts +620 -786
  1204. package/src/JsonPatch.ts +58 -112
  1205. package/src/JsonPointer.ts +8 -8
  1206. package/src/JsonSchema.ts +402 -244
  1207. package/src/Latch.ts +23 -35
  1208. package/src/Layer.ts +359 -260
  1209. package/src/LayerMap.ts +49 -29
  1210. package/src/LayerRef.ts +6 -2
  1211. package/src/LogLevel.ts +114 -214
  1212. package/src/Logger.ts +344 -697
  1213. package/src/ManagedRuntime.ts +7 -5
  1214. package/src/Match.ts +217 -252
  1215. package/src/Metric.ts +516 -1089
  1216. package/src/MutableHashMap.ts +218 -255
  1217. package/src/MutableHashSet.ts +84 -89
  1218. package/src/MutableList.ts +73 -370
  1219. package/src/MutableRef.ts +420 -243
  1220. package/src/Newtype.ts +21 -14
  1221. package/src/NonEmptyIterable.ts +7 -137
  1222. package/src/Number.ts +196 -233
  1223. package/src/Optic.ts +243 -383
  1224. package/src/Option.ts +447 -812
  1225. package/src/Order.ts +109 -109
  1226. package/src/Ordering.ts +20 -23
  1227. package/src/Path.ts +38 -41
  1228. package/src/Pipeable.ts +6 -5
  1229. package/src/PlatformError.ts +4 -4
  1230. package/src/Pool.ts +4 -2
  1231. package/src/Predicate.ts +200 -181
  1232. package/src/PrimaryKey.ts +7 -7
  1233. package/src/PubSub.ts +526 -552
  1234. package/src/Pull.ts +24 -18
  1235. package/src/Queue.ts +200 -159
  1236. package/src/Random.ts +49 -74
  1237. package/src/RcMap.ts +121 -63
  1238. package/src/RcRef.ts +24 -13
  1239. package/src/Record.ts +291 -488
  1240. package/src/Redactable.ts +10 -3
  1241. package/src/Redacted.ts +25 -25
  1242. package/src/Reducer.ts +8 -15
  1243. package/src/Ref.ts +221 -361
  1244. package/src/References.ts +102 -168
  1245. package/src/RegExp.ts +10 -14
  1246. package/src/Request.ts +31 -21
  1247. package/src/RequestResolver.ts +202 -91
  1248. package/src/Result.ts +312 -484
  1249. package/src/Runtime.ts +50 -75
  1250. package/src/Schedule.ts +308 -1734
  1251. package/src/Scheduler.ts +20 -7
  1252. package/src/Schema.ts +716 -745
  1253. package/src/SchemaAST.ts +466 -358
  1254. package/src/SchemaError.ts +7 -6
  1255. package/src/SchemaGetter.ts +242 -190
  1256. package/src/SchemaIssue.ts +89 -275
  1257. package/src/SchemaParser.ts +180 -93
  1258. package/src/SchemaRepresentation.ts +22 -40
  1259. package/src/SchemaTransformation.ts +129 -88
  1260. package/src/Scope.ts +123 -151
  1261. package/src/ScopedRef.ts +4 -4
  1262. package/src/Semaphore.ts +152 -51
  1263. package/src/Sink.ts +128 -113
  1264. package/src/Stdio.ts +1 -1
  1265. package/src/Stream.ts +2602 -3123
  1266. package/src/String.ts +275 -312
  1267. package/src/Struct.ts +109 -114
  1268. package/src/SubscriptionRef.ts +284 -252
  1269. package/src/Symbol.ts +3 -3
  1270. package/src/Terminal.ts +2 -2
  1271. package/src/Tracer.ts +102 -55
  1272. package/src/Trie.ts +287 -679
  1273. package/src/Tuple.ts +92 -127
  1274. package/src/TxChunk.ts +201 -121
  1275. package/src/TxDeferred.ts +62 -46
  1276. package/src/TxHashMap.ts +645 -799
  1277. package/src/TxHashSet.ts +443 -356
  1278. package/src/TxPriorityQueue.ts +130 -98
  1279. package/src/TxPubSub.ts +107 -80
  1280. package/src/TxQueue.ts +214 -183
  1281. package/src/TxReentrantLock.ts +97 -66
  1282. package/src/TxRef.ts +51 -32
  1283. package/src/TxSemaphore.ts +129 -95
  1284. package/src/TxSubscriptionRef.ts +97 -70
  1285. package/src/Types.ts +126 -67
  1286. package/src/Unify.ts +45 -65
  1287. package/src/Utils.ts +23 -16
  1288. package/src/internal/core.ts +2 -2
  1289. package/src/internal/dateTime.ts +6 -0
  1290. package/src/internal/effect.ts +93 -48
  1291. package/src/internal/persistence.ts +2 -0
  1292. package/src/internal/references.ts +3 -2
  1293. package/src/internal/schema/fromJsonSchemaDocument.ts +15 -13
  1294. package/src/internal/schema/fromRepresentation.ts +10 -16
  1295. package/src/internal/schema/parser.ts +22 -0
  1296. package/src/internal/schema/toJsonSchemaDocument.ts +60 -6
  1297. package/src/internal/schema/toRepresentation.ts +104 -119
  1298. package/src/internal/trie.ts +10 -11
  1299. package/src/testing/FastCheck.ts +8 -7
  1300. package/src/testing/TestClock.ts +72 -30
  1301. package/src/testing/TestConsole.ts +32 -31
  1302. package/src/testing/TestSchema.ts +29 -29
  1303. package/src/unstable/ai/AiError.ts +95 -118
  1304. package/src/unstable/ai/AnthropicStructuredOutput.ts +1 -1
  1305. package/src/unstable/ai/Chat.ts +132 -97
  1306. package/src/unstable/ai/IdGenerator.ts +32 -28
  1307. package/src/unstable/ai/LanguageModel.ts +107 -67
  1308. package/src/unstable/ai/McpProtocol.ts +48 -0
  1309. package/src/unstable/ai/McpSchema.ts +60 -50
  1310. package/src/unstable/ai/McpServer.ts +930 -304
  1311. package/src/unstable/ai/Model.ts +9 -20
  1312. package/src/unstable/ai/OpenAiStructuredOutput.ts +1 -1
  1313. package/src/unstable/ai/Prompt.ts +145 -43
  1314. package/src/unstable/ai/Response.ts +28 -14
  1315. package/src/unstable/ai/Telemetry.ts +46 -13
  1316. package/src/unstable/ai/Tokenizer.ts +14 -3
  1317. package/src/unstable/ai/Tool.ts +59 -44
  1318. package/src/unstable/ai/Toolkit.ts +26 -8
  1319. package/src/unstable/ai/index.ts +5 -0
  1320. package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
  1321. package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
  1322. package/src/unstable/ai/internal/structured-output.ts +13 -18
  1323. package/src/unstable/cli/Argument.ts +273 -69
  1324. package/src/unstable/cli/CliError.ts +69 -76
  1325. package/src/unstable/cli/CliOutput.ts +44 -58
  1326. package/src/unstable/cli/Command.ts +705 -107
  1327. package/src/unstable/cli/Flag.ts +418 -138
  1328. package/src/unstable/cli/GlobalFlag.ts +1 -1
  1329. package/src/unstable/cli/HelpDoc.ts +12 -4
  1330. package/src/unstable/cli/Param.ts +292 -78
  1331. package/src/unstable/cli/Primitive.ts +370 -149
  1332. package/src/unstable/cli/Prompt.ts +28 -14
  1333. package/src/unstable/cli/internal/lexer.ts +8 -2
  1334. package/src/unstable/cli/internal/parser.ts +2 -2
  1335. package/src/unstable/cluster/ClusterSchema.ts +8 -8
  1336. package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -1
  1337. package/src/unstable/cluster/Entity.ts +15 -16
  1338. package/src/unstable/cluster/EntityProxy.ts +4 -2
  1339. package/src/unstable/cluster/EntityResource.ts +2 -2
  1340. package/src/unstable/cluster/Envelope.ts +3 -3
  1341. package/src/unstable/cluster/HttpRunner.ts +6 -4
  1342. package/src/unstable/cluster/Message.ts +9 -9
  1343. package/src/unstable/cluster/MessageStorage.ts +15 -15
  1344. package/src/unstable/cluster/Reply.ts +4 -6
  1345. package/src/unstable/cluster/RunnerHealth.ts +1 -1
  1346. package/src/unstable/cluster/RunnerServer.ts +41 -8
  1347. package/src/unstable/cluster/RunnerStorage.ts +2 -2
  1348. package/src/unstable/cluster/Runners.ts +23 -12
  1349. package/src/unstable/cluster/Sharding.ts +7 -8
  1350. package/src/unstable/cluster/ShardingConfig.ts +3 -3
  1351. package/src/unstable/cluster/SingletonAddress.ts +1 -1
  1352. package/src/unstable/cluster/Snowflake.ts +8 -8
  1353. package/src/unstable/cluster/SqlMessageStorage.ts +1 -1
  1354. package/src/unstable/cluster/SqlRunnerStorage.ts +21 -5
  1355. package/src/unstable/cluster/internal/entityManager.ts +11 -15
  1356. package/src/unstable/encoding/Msgpack.ts +6 -8
  1357. package/src/unstable/encoding/Sse.ts +98 -16
  1358. package/src/unstable/eventlog/Event.ts +20 -20
  1359. package/src/unstable/eventlog/EventGroup.ts +4 -4
  1360. package/src/unstable/eventlog/EventJournal.ts +15 -15
  1361. package/src/unstable/eventlog/EventLog.ts +3 -3
  1362. package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
  1363. package/src/unstable/eventlog/EventLogMessage.ts +2 -2
  1364. package/src/unstable/eventlog/EventLogRemote.ts +1 -1
  1365. package/src/unstable/eventlog/EventLogServer.ts +41 -7
  1366. package/src/unstable/eventlog/EventLogServerEncrypted.ts +13 -5
  1367. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +14 -6
  1368. package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
  1369. package/src/unstable/http/Cookies.ts +35 -21
  1370. package/src/unstable/http/Etag.ts +1 -1
  1371. package/src/unstable/http/FetchHttpClient.ts +3 -1
  1372. package/src/unstable/http/Headers.ts +2 -2
  1373. package/src/unstable/http/HttpBody.ts +20 -5
  1374. package/src/unstable/http/HttpClient.ts +83 -55
  1375. package/src/unstable/http/HttpClientRequest.ts +2 -0
  1376. package/src/unstable/http/HttpClientResponse.ts +4 -4
  1377. package/src/unstable/http/HttpEffect.ts +8 -8
  1378. package/src/unstable/http/HttpMethod.ts +6 -9
  1379. package/src/unstable/http/HttpMiddleware.ts +202 -39
  1380. package/src/unstable/http/HttpPlatform.ts +95 -0
  1381. package/src/unstable/http/HttpRouter.ts +102 -98
  1382. package/src/unstable/http/HttpServer.ts +13 -13
  1383. package/src/unstable/http/HttpServerError.ts +2 -2
  1384. package/src/unstable/http/HttpServerRequest.ts +4 -4
  1385. package/src/unstable/http/HttpServerResponse.ts +30 -0
  1386. package/src/unstable/http/HttpStaticServer.ts +35 -7
  1387. package/src/unstable/http/Multipart.ts +6 -6
  1388. package/src/unstable/http/Url.ts +33 -63
  1389. package/src/unstable/http/UrlParams.ts +10 -18
  1390. package/src/unstable/http/internal/compression.ts +196 -0
  1391. package/src/unstable/httpapi/HttpApiBuilder.ts +10 -9
  1392. package/src/unstable/httpapi/HttpApiClient.ts +14 -14
  1393. package/src/unstable/httpapi/HttpApiEndpoint.ts +42 -42
  1394. package/src/unstable/httpapi/HttpApiError.ts +13 -13
  1395. package/src/unstable/httpapi/HttpApiGroup.ts +15 -15
  1396. package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
  1397. package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
  1398. package/src/unstable/httpapi/HttpApiSchema.ts +6 -6
  1399. package/src/unstable/httpapi/OpenApi.ts +13 -13
  1400. package/src/unstable/observability/OtlpExporter.ts +31 -19
  1401. package/src/unstable/observability/OtlpMetrics.ts +4 -1
  1402. package/src/unstable/observability/OtlpResource.ts +26 -17
  1403. package/src/unstable/observability/PrometheusMetrics.ts +13 -4
  1404. package/src/unstable/observability/internal/otlpEnv.ts +1 -1
  1405. package/src/unstable/observability/internal/protobuf.ts +3 -0
  1406. package/src/unstable/persistence/KeyValueStore.ts +72 -49
  1407. package/src/unstable/persistence/Persistable.ts +8 -8
  1408. package/src/unstable/persistence/PersistedQueue.ts +6 -6
  1409. package/src/unstable/persistence/Persistence.ts +126 -19
  1410. package/src/unstable/persistence/RateLimiter.ts +26 -15
  1411. package/src/unstable/persistence/Redis.ts +2 -2
  1412. package/src/unstable/process/ChildProcess.ts +64 -21
  1413. package/src/unstable/process/ChildProcessSpawner.ts +21 -10
  1414. package/src/unstable/reactivity/AsyncResult.ts +12 -13
  1415. package/src/unstable/reactivity/Atom.ts +28 -25
  1416. package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
  1417. package/src/unstable/reactivity/AtomRegistry.ts +24 -3
  1418. package/src/unstable/reactivity/AtomRpc.ts +5 -4
  1419. package/src/unstable/reactivity/Hydration.ts +1 -1
  1420. package/src/unstable/rpc/Rpc.ts +35 -33
  1421. package/src/unstable/rpc/RpcClient.ts +16 -15
  1422. package/src/unstable/rpc/RpcGroup.ts +8 -8
  1423. package/src/unstable/rpc/RpcMessage.ts +31 -30
  1424. package/src/unstable/rpc/RpcMiddleware.ts +10 -10
  1425. package/src/unstable/rpc/RpcSchema.ts +4 -4
  1426. package/src/unstable/rpc/RpcSerialization.ts +167 -68
  1427. package/src/unstable/rpc/RpcServer.ts +18 -15
  1428. package/src/unstable/rpc/RpcWorker.ts +5 -5
  1429. package/src/unstable/schema/Model.ts +52 -50
  1430. package/src/unstable/schema/VariantSchema.ts +5 -5
  1431. package/src/unstable/socket/Socket.ts +17 -4
  1432. package/src/unstable/sql/SqlClient.ts +5 -6
  1433. package/src/unstable/sql/SqlModel.ts +2 -2
  1434. package/src/unstable/sql/SqlResolver.ts +5 -5
  1435. package/src/unstable/sql/Statement.ts +24 -23
  1436. package/src/unstable/workers/Transferable.ts +1 -1
  1437. package/src/unstable/workers/Worker.ts +2 -2
  1438. package/src/unstable/workers/WorkerError.ts +7 -7
  1439. package/src/unstable/workers/WorkerRunner.ts +1 -1
  1440. package/src/unstable/workflow/Activity.ts +2 -2
  1441. package/src/unstable/workflow/DurableClock.ts +1 -1
  1442. package/src/unstable/workflow/DurableDeferred.ts +10 -10
  1443. package/src/unstable/workflow/DurableQueue.ts +22 -20
  1444. package/src/unstable/workflow/Workflow.ts +23 -23
  1445. package/src/unstable/workflow/WorkflowEngine.ts +1 -1
  1446. package/src/unstable/workflow/WorkflowProxy.ts +4 -2
  1447. package/dist/internal/version.d.ts +0 -3
  1448. package/dist/internal/version.d.ts.map +0 -1
  1449. package/dist/internal/version.js +0 -2
  1450. package/dist/internal/version.js.map +0 -1
  1451. package/src/internal/version.ts +0 -2
package/dist/Layer.js CHANGED
@@ -21,7 +21,7 @@ const memoMapReuse = (entry, scope) => {
21
21
  *
22
22
  * **Example** (Checking whether a value is a layer)
23
23
  *
24
- * ```ts
24
+ * ```ts import.meta.vitest
25
25
  * import { Context, Effect, Layer } from "effect"
26
26
  *
27
27
  * class Database extends Context.Service<Database, {
@@ -33,11 +33,11 @@ const memoMapReuse = (entry, scope) => {
33
33
  * })
34
34
  * const notALayer = { someProperty: "value" }
35
35
  *
36
- * console.log(Layer.isLayer(dbLayer)) // true
37
- * console.log(Layer.isLayer(notALayer)) // false
36
+ * Layer.isLayer(dbLayer) // => true
37
+ * Layer.isLayer(notALayer) // => false
38
38
  * ```
39
39
  *
40
- * @category getters
40
+ * @category guards
41
41
  * @since 2.0.0
42
42
  */
43
43
  export const isLayer = u => hasProperty(u, TypeId);
@@ -67,7 +67,7 @@ const fromBuildUnsafe = build => {
67
67
  *
68
68
  * **Example** (Constructing a layer from a build function)
69
69
  *
70
- * ```ts
70
+ * ```ts import.meta.vitest
71
71
  * import { Context, Effect, Layer } from "effect"
72
72
  *
73
73
  * class Database extends Context.Service<Database, {
@@ -81,6 +81,9 @@ const fromBuildUnsafe = build => {
81
81
  * })
82
82
  * )
83
83
  * )
84
+ *
85
+ * const program = Database.use((database) => database.query("SELECT 1"))
86
+ * Effect.runSync(Effect.provide(program, databaseLayer)) // => "result"
84
87
  * ```
85
88
  *
86
89
  * @category constructors
@@ -101,7 +104,7 @@ export const fromBuild = build => fromBuildUnsafe((memoMap, scope) => {
101
104
  *
102
105
  * **Example** (Memoizing layer construction)
103
106
  *
104
- * ```ts
107
+ * ```ts import.meta.vitest
105
108
  * import { Context, Effect, Layer } from "effect"
106
109
  *
107
110
  * class Database extends Context.Service<Database, {
@@ -115,6 +118,9 @@ export const fromBuild = build => fromBuildUnsafe((memoMap, scope) => {
115
118
  * })
116
119
  * )
117
120
  * )
121
+ *
122
+ * const program = Database.use((database) => database.query("SELECT 1"))
123
+ * Effect.runSync(Effect.provide(program, databaseLayer)) // => "result"
118
124
  * ```
119
125
  *
120
126
  * @category constructors
@@ -174,7 +180,7 @@ class MemoMapImpl {
174
180
  *
175
181
  * **Example** (Creating a memo map unsafely)
176
182
  *
177
- * ```ts
183
+ * ```ts import.meta.vitest
178
184
  * import { Context, Effect, Layer } from "effect"
179
185
  *
180
186
  * class Database extends Context.Service<Database, {
@@ -193,9 +199,12 @@ class MemoMapImpl {
193
199
  *
194
200
  * return Context.get(context, Database)
195
201
  * })
202
+ *
203
+ * const database = Effect.runSync(Effect.scoped(program))
204
+ * Effect.runSync(database.query("SELECT 1")) // => "result"
196
205
  * ```
197
206
  *
198
- * @category memo map
207
+ * @category constructors
199
208
  * @since 4.0.0
200
209
  */
201
210
  export const makeMemoMapUnsafe = () => new MemoMapImpl();
@@ -213,7 +222,7 @@ export const makeMemoMapUnsafe = () => new MemoMapImpl();
213
222
  * @see {@link forkMemoMap} for allocating the child memo map inside `Effect`
214
223
  * @see {@link makeMemoMapUnsafe} for creating a root memo map without a parent
215
224
  *
216
- * @category memo map
225
+ * @category constructors
217
226
  * @since 4.0.0
218
227
  */
219
228
  export const forkMemoMapUnsafe = parent => new MemoMapImpl(parent);
@@ -222,7 +231,7 @@ export const forkMemoMapUnsafe = parent => new MemoMapImpl(parent);
222
231
  *
223
232
  * **Example** (Creating a memo map in an effect)
224
233
  *
225
- * ```ts
234
+ * ```ts import.meta.vitest
226
235
  * import { Context, Effect, Layer } from "effect"
227
236
  *
228
237
  * class Database extends Context.Service<Database, {
@@ -241,9 +250,12 @@ export const forkMemoMapUnsafe = parent => new MemoMapImpl(parent);
241
250
  *
242
251
  * return Context.get(context, Database)
243
252
  * })
253
+ *
254
+ * const database = Effect.runSync(Effect.scoped(program))
255
+ * Effect.runSync(database.query("SELECT 1")) // => "result"
244
256
  * ```
245
257
  *
246
- * @category memo map
258
+ * @category constructors
247
259
  * @since 2.0.0
248
260
  */
249
261
  export const makeMemoMap = /*#__PURE__*/internalEffect.sync(makeMemoMapUnsafe);
@@ -261,7 +273,7 @@ export const makeMemoMap = /*#__PURE__*/internalEffect.sync(makeMemoMapUnsafe);
261
273
  * @see {@link forkMemoMapUnsafe} for the synchronous constructor variant
262
274
  * @see {@link buildWithMemoMap} for building layers with an explicit memo map
263
275
  *
264
- * @category memo map
276
+ * @category constructors
265
277
  * @since 4.0.0
266
278
  */
267
279
  export const forkMemoMap = parent => internalEffect.sync(() => forkMemoMapUnsafe(parent));
@@ -280,7 +292,7 @@ export const forkMemoMap = parent => internalEffect.sync(() => forkMemoMapUnsafe
280
292
  *
281
293
  * @see {@link MemoMap} the memoization map type wrapped by this service
282
294
  *
283
- * @category models
295
+ * @category services
284
296
  * @since 3.13.0
285
297
  */
286
298
  export class CurrentMemoMap extends /*#__PURE__*/Context.Service()("effect/Layer/CurrentMemoMap") {
@@ -295,7 +307,7 @@ export class CurrentMemoMap extends /*#__PURE__*/Context.Service()("effect/Layer
295
307
  *
296
308
  * **Example** (Building layers with an explicit memo map)
297
309
  *
298
- * ```ts
310
+ * ```ts import.meta.vitest
299
311
  * import { Context, Effect, Layer } from "effect"
300
312
  *
301
313
  * class Database extends Context.Service<Database, {
@@ -306,6 +318,8 @@ export class CurrentMemoMap extends /*#__PURE__*/Context.Service()("effect/Layer
306
318
  * readonly log: (msg: string) => Effect.Effect<void>
307
319
  * }>()("Logger") {}
308
320
  *
321
+ * const logs: Array<string> = []
322
+ *
309
323
  * // Build layers with explicit memoization control
310
324
  * const program = Effect.gen(function*() {
311
325
  * const memoMap = yield* Layer.makeMemoMap
@@ -319,7 +333,7 @@ export class CurrentMemoMap extends /*#__PURE__*/Context.Service()("effect/Layer
319
333
  *
320
334
  * // Build logger layer with same memoization (reuses memo if same layer)
321
335
  * const loggerLayer = Layer.succeed(Logger, {
322
- * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => console.log(msg)))
336
+ * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => logs.push(msg)))
323
337
  * })
324
338
  * const loggerContext = yield* Layer.buildWithMemoMap(
325
339
  * loggerLayer,
@@ -332,9 +346,13 @@ export class CurrentMemoMap extends /*#__PURE__*/Context.Service()("effect/Layer
332
346
  * logger: Context.get(loggerContext, Logger)
333
347
  * }
334
348
  * })
349
+ *
350
+ * const services = Effect.runSync(Effect.scoped(program))
351
+ * Effect.runSync(services.logger.log("ready"))
352
+ * logs // => ["ready"]
335
353
  * ```
336
354
  *
337
- * @category memo map
355
+ * @category destructors
338
356
  * @since 2.0.0
339
357
  */
340
358
  export const buildWithMemoMap = /*#__PURE__*/dual(3, (self, memoMap, scope) => internalEffect.provideService(internalEffect.map(self.build(memoMap, scope), Context.add(CurrentMemoMap, memoMap)), CurrentMemoMap, memoMap));
@@ -343,7 +361,7 @@ export const buildWithMemoMap = /*#__PURE__*/dual(3, (self, memoMap, scope) => i
343
361
  *
344
362
  * **Example** (Building a layer into a context)
345
363
  *
346
- * ```ts
364
+ * ```ts import.meta.vitest
347
365
  * import { Context, Effect, Layer } from "effect"
348
366
  *
349
367
  * class Database extends Context.Service<Database, {
@@ -364,6 +382,8 @@ export const buildWithMemoMap = /*#__PURE__*/dual(3, (self, memoMap, scope) => i
364
382
  *
365
383
  * return yield* database.query("SELECT * FROM users")
366
384
  * })
385
+ *
386
+ * Effect.runSync(Effect.scoped(program)) // => "result"
367
387
  * ```
368
388
  *
369
389
  * @category destructors
@@ -385,22 +405,24 @@ export const build = self => core.withFiber(fiber => buildWithMemoMap(self, Curr
385
405
  *
386
406
  * **Example** (Building a layer with an explicit scope)
387
407
  *
388
- * ```ts
408
+ * ```ts import.meta.vitest
389
409
  * import { Context, Effect, Layer, Scope } from "effect"
390
410
  *
391
411
  * class Database extends Context.Service<Database, {
392
412
  * readonly query: (sql: string) => Effect.Effect<string>
393
413
  * }>()("Database") {}
394
414
  *
415
+ * const logs: Array<string> = []
416
+ *
395
417
  * // Build a layer with explicit scope control
396
418
  * const program = Effect.gen(function*() {
397
419
  * const scope = yield* Effect.scope
398
420
  *
399
421
  * const dbLayer = Layer.effect(Database, Effect.gen(function*() {
400
- * console.log("Initializing database...")
422
+ * logs.push("Initializing database...")
401
423
  * yield* Scope.addFinalizer(
402
424
  * scope,
403
- * Effect.sync(() => console.log("Database closed"))
425
+ * Effect.sync(() => logs.push("Database closed"))
404
426
  * )
405
427
  * return { query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result: ${sql}`)) }
406
428
  * }))
@@ -412,6 +434,9 @@ export const build = self => core.withFiber(fiber => buildWithMemoMap(self, Curr
412
434
  * return yield* database.query("SELECT * FROM users")
413
435
  * // Database will be closed when scope is closed
414
436
  * })
437
+ *
438
+ * Effect.runSync(Effect.scoped(program)) // => "Result: SELECT * FROM users"
439
+ * logs // => ["Initializing database...", "Database closed"]
415
440
  * ```
416
441
  *
417
442
  * @category destructors
@@ -429,7 +454,7 @@ export const buildWithScope = /*#__PURE__*/dual(2, (self, scope) => core.withFib
429
454
  *
430
455
  * **Example** (Creating a layer from a service implementation)
431
456
  *
432
- * ```ts
457
+ * ```ts import.meta.vitest
433
458
  * import { Context, Effect, Layer } from "effect"
434
459
  *
435
460
  * class Database extends Context.Service<Database, {
@@ -439,6 +464,8 @@ export const buildWithScope = /*#__PURE__*/dual(2, (self, scope) => core.withFib
439
464
  * const DatabaseLive = Layer.succeed(Database, {
440
465
  * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Query result: ${sql}`))
441
466
  * })
467
+ * const program = Database.use((database) => database.query("SELECT 1"))
468
+ * Effect.runSync(Effect.provide(program, DatabaseLive)) // => "Query result: SELECT 1"
442
469
  * ```
443
470
  *
444
471
  * @see {@link sync} for constructing layers from lazy values
@@ -468,7 +495,7 @@ export const succeed = function () {
468
495
  *
469
496
  * **Example** (Providing multiple services from a context)
470
497
  *
471
- * ```ts
498
+ * ```ts import.meta.vitest
472
499
  * import { Context, Effect, Layer } from "effect"
473
500
  *
474
501
  * class Database extends Context.Service<Database, {
@@ -479,15 +506,19 @@ export const succeed = function () {
479
506
  * readonly log: (msg: string) => Effect.Effect<void>
480
507
  * }>()("Logger") {}
481
508
  *
509
+ * const logs: Array<string> = []
482
510
  * const context = Context.make(Database, {
483
511
  * query: Effect.fn("Database.query")((sql: string) => Effect.succeed("result"))
484
512
  * }).pipe(
485
513
  * Context.add(Logger, {
486
- * log: (msg: string) => Effect.sync(() => console.log(msg))
514
+ * log: (msg: string) => Effect.sync(() => logs.push(msg))
487
515
  * })
488
516
  * )
489
517
  *
490
518
  * const layer = Layer.succeedContext(context)
519
+ * const program = Logger.use((logger) => logger.log("ready"))
520
+ * Effect.runSync(Effect.provide(program, layer))
521
+ * logs // => ["ready"]
491
522
  * ```
492
523
  *
493
524
  * @see {@link succeed} for providing a single service from a value
@@ -506,14 +537,12 @@ export const succeedContext = context => fromBuildUnsafe(constant(internalEffect
506
537
  *
507
538
  * **Example** (Disabling optional lifecycle work)
508
539
  *
509
- * ```ts
510
- * import { Console, Layer } from "effect"
540
+ * ```ts import.meta.vitest
541
+ * import { Context, Effect, Layer, Option } from "effect"
511
542
  *
512
- * declare const flag: boolean
513
- *
514
- * const StartupLogLive = flag
515
- * ? Layer.effectDiscard(Console.log("application starting"))
516
- * : Layer.empty
543
+ * const Service = Context.Service<string>("Service")
544
+ * const context = Effect.runSync(Effect.scoped(Layer.build(Layer.empty)))
545
+ * Context.getOption(context, Service) // => Option.none()
517
546
  * ```
518
547
  *
519
548
  * @see {@link effectDiscard} for running an effect while providing no services
@@ -537,7 +566,7 @@ export const empty = /*#__PURE__*/succeedContext(/*#__PURE__*/Context.empty());
537
566
  *
538
567
  * **Example** (Lazily providing a service)
539
568
  *
540
- * ```ts
569
+ * ```ts import.meta.vitest
541
570
  * import { Context, Effect, Layer } from "effect"
542
571
  *
543
572
  * class Database extends Context.Service<Database, {
@@ -547,6 +576,8 @@ export const empty = /*#__PURE__*/succeedContext(/*#__PURE__*/Context.empty());
547
576
  * const layer = Layer.sync(Database, () => ({
548
577
  * query: (sql: string) => Effect.succeed(`Query: ${sql}`)
549
578
  * }))
579
+ * const program = Database.use((database) => database.query("SELECT 1"))
580
+ * Effect.runSync(Effect.provide(program, layer)) // => "Query: SELECT 1"
550
581
  * ```
551
582
  *
552
583
  * @see {@link succeed} for constructing layers from static values
@@ -575,7 +606,7 @@ export const sync = function () {
575
606
  *
576
607
  * **Example** (Lazily providing a context)
577
608
  *
578
- * ```ts
609
+ * ```ts import.meta.vitest
579
610
  * import { Context, Effect, Layer } from "effect"
580
611
  *
581
612
  * class Database extends Context.Service<Database, {
@@ -587,6 +618,8 @@ export const sync = function () {
587
618
  * query: (sql: string) => Effect.succeed(`Query: ${sql}`)
588
619
  * })
589
620
  * )
621
+ * const program = Database.use((database) => database.query("SELECT 1"))
622
+ * Effect.runSync(Effect.provide(program, layer)) // => "Query: SELECT 1"
590
623
  * ```
591
624
  *
592
625
  * @see {@link sync} for lazily providing a single service
@@ -612,7 +645,7 @@ export const syncContext = evaluate => fromBuildMemo(constant(internalEffect.syn
612
645
  *
613
646
  * **Example** (Creating a layer from an effect)
614
647
  *
615
- * ```ts
648
+ * ```ts import.meta.vitest
616
649
  * import { Context, Effect, Layer } from "effect"
617
650
  *
618
651
  * class Database extends Context.Service<Database, {
@@ -624,6 +657,8 @@ export const syncContext = evaluate => fromBuildMemo(constant(internalEffect.syn
624
657
  * query: (sql: string) => Effect.succeed(`Query: ${sql}`)
625
658
  * }))
626
659
  * )
660
+ * const program = Database.use((database) => database.query("SELECT 1"))
661
+ * Effect.runSync(Effect.provide(program, layer)) // => "Query: SELECT 1"
627
662
  * ```
628
663
  *
629
664
  * @see {@link effectContext} for effectfully providing multiple services
@@ -655,7 +690,7 @@ const effectImpl = (service, effect) => effectContext(internalEffect.map(effect,
655
690
  *
656
691
  * **Example** (Creating a layer from an effectful context)
657
692
  *
658
- * ```ts
693
+ * ```ts import.meta.vitest
659
694
  * import { Context, Effect, Layer } from "effect"
660
695
  *
661
696
  * class Database extends Context.Service<
@@ -668,6 +703,8 @@ const effectImpl = (service, effect) => effectContext(internalEffect.map(effect,
668
703
  * query: (sql: string) => Effect.succeed(`Query: ${sql}`)
669
704
  * }))
670
705
  * )
706
+ * const program = Database.use((database) => database.query("SELECT 1"))
707
+ * Effect.runSync(Effect.provide(program, layer)) // => "Query: SELECT 1"
671
708
  * ```
672
709
  *
673
710
  * @see {@link effect} for effectfully providing a single service
@@ -687,14 +724,17 @@ export const effectContext = effect => fromBuildMemo((_, scope) => Scope.provide
687
724
  *
688
725
  * **Example** (Running an effect during layer construction)
689
726
  *
690
- * ```ts
727
+ * ```ts import.meta.vitest
691
728
  * import { Effect, Layer } from "effect"
692
729
  *
730
+ * const logs: Array<string> = []
693
731
  * const initLayer = Layer.effectDiscard(
694
732
  * Effect.sync(() => {
695
- * console.log("Initializing application...")
733
+ * logs.push("Initializing application...")
696
734
  * })
697
735
  * )
736
+ * Effect.runSync(Effect.scoped(Layer.build(initLayer)))
737
+ * logs // => ["Initializing application..."]
698
738
  * ```
699
739
  *
700
740
  * @see {@link empty} for a no-op layer that performs no construction work
@@ -713,8 +753,8 @@ export const effectDiscard = effect => effectContext(internalEffect.as(effect, C
713
753
  *
714
754
  * **Example** (Choosing a layer lazily)
715
755
  *
716
- * ```ts
717
- * import { Context, Layer } from "effect"
756
+ * ```ts import.meta.vitest
757
+ * import { Context, Effect, Layer } from "effect"
718
758
  *
719
759
  * class Config extends Context.Service<Config, string>()("Config") {}
720
760
  *
@@ -725,6 +765,7 @@ export const effectDiscard = effect => effectContext(internalEffect.as(effect, C
725
765
  * ? Layer.succeed(Config, "https://api.example.com")
726
766
  * : Layer.succeed(Config, "http://localhost:3000")
727
767
  * )
768
+ * Effect.runSync(Effect.provide(Config, layer)) // => "https://api.example.com"
728
769
  * ```
729
770
  *
730
771
  * @category constructors
@@ -746,7 +787,7 @@ export const suspend = evaluate => fromBuildMemo((memoMap, scope) => internalEff
746
787
  *
747
788
  * **Example** (Unwrapping an effectful layer)
748
789
  *
749
- * ```ts
790
+ * ```ts import.meta.vitest
750
791
  * import { Context, Effect, Layer } from "effect"
751
792
  *
752
793
  * class Database extends Context.Service<Database, {
@@ -758,6 +799,8 @@ export const suspend = evaluate => fromBuildMemo((memoMap, scope) => internalEff
758
799
  * )
759
800
  *
760
801
  * const unwrappedLayer = Layer.unwrap(layerEffect)
802
+ * const program = Database.use((database) => database.query("SELECT 1"))
803
+ * Effect.runSync(Effect.provide(program, unwrappedLayer)) // => "result"
761
804
  * ```
762
805
  *
763
806
  * @category converting
@@ -791,7 +834,7 @@ const mergeAllEffect = (layers, memoMap, scope) => {
791
834
  *
792
835
  * **Example** (Merging independent layers)
793
836
  *
794
- * ```ts
837
+ * ```ts import.meta.vitest
795
838
  * import { Context, Effect, Layer } from "effect"
796
839
  *
797
840
  * class Database extends Context.Service<Database, {
@@ -805,11 +848,15 @@ const mergeAllEffect = (layers, memoMap, scope) => {
805
848
  * const dbLayer = Layer.succeed(Database, {
806
849
  * query: Effect.fn("Database.query")((sql: string) => Effect.succeed("result"))
807
850
  * })
851
+ * const logs: Array<string> = []
808
852
  * const loggerLayer = Layer.succeed(Logger, {
809
- * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => console.log(msg)))
853
+ * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => logs.push(msg)))
810
854
  * })
811
855
  *
812
856
  * const mergedLayer = Layer.mergeAll(dbLayer, loggerLayer)
857
+ * const program = Logger.use((logger) => logger.log("ready"))
858
+ * Effect.runSync(Effect.provide(program, mergedLayer))
859
+ * logs // => ["ready"]
813
860
  * ```
814
861
  *
815
862
  * @see {@link merge} for merging one layer with another layer or array
@@ -835,7 +882,7 @@ export const mergeAll = (...layers) => fromBuild((memoMap, scope) => mergeAllEff
835
882
  *
836
883
  * **Example** (Merging two layers)
837
884
  *
838
- * ```ts
885
+ * ```ts import.meta.vitest
839
886
  * import { Context, Effect, Layer } from "effect"
840
887
  *
841
888
  * class Database extends Context.Service<Database, {
@@ -850,10 +897,12 @@ export const mergeAll = (...layers) => fromBuild((memoMap, scope) => mergeAllEff
850
897
  * query: Effect.fn("Database.query")((sql: string) => Effect.succeed("result"))
851
898
  * })
852
899
  * const loggerLayer = Layer.succeed(Logger, {
853
- * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => console.log(msg)))
900
+ * log: Effect.fn("Logger.log")((_msg: string) => Effect.void)
854
901
  * })
855
902
  *
856
903
  * const mergedLayer = Layer.merge(dbLayer, loggerLayer)
904
+ * const program = Database.use((database) => database.query("SELECT 1"))
905
+ * Effect.runSync(Effect.provide(program, mergedLayer)) // => "result"
857
906
  * ```
858
907
  *
859
908
  * @see {@link mergeAll} for merging several layers at once
@@ -878,7 +927,7 @@ const provideWith = (self, that, f) => fromBuild((memoMap, scope) => internalEff
878
927
  *
879
928
  * **Example** (Providing layer dependencies)
880
929
  *
881
- * ```ts
930
+ * ```ts import.meta.vitest
882
931
  * import { Context, Effect, Layer } from "effect"
883
932
  *
884
933
  * class Database extends Context.Service<Database, {
@@ -901,8 +950,9 @@ const provideWith = (self, that, f) => fromBuild((memoMap, scope) => internalEff
901
950
  * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`DB: ${sql}`))
902
951
  * })
903
952
  *
953
+ * const logs: Array<string> = []
904
954
  * const loggerLayer = Layer.succeed(Logger, {
905
- * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => console.log(`[LOG] ${msg}`)))
955
+ * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => logs.push(`[LOG] ${msg}`)))
906
956
  * })
907
957
  *
908
958
  * // UserService depends on Database and Logger
@@ -933,6 +983,8 @@ const provideWith = (self, that, f) => fromBuild((memoMap, scope) => internalEff
933
983
  * }).pipe(
934
984
  * Effect.provide(userServiceWithDependencies)
935
985
  * )
986
+ * Effect.runSync(program) // => { id: "123", name: "DB: SELECT * FROM users WHERE id = 123" }
987
+ * logs // => ["[LOG] Looking up user 123"]
936
988
  * ```
937
989
  *
938
990
  * @see {@link provideMerge} for retaining the dependency services
@@ -956,7 +1008,7 @@ export const provide = /*#__PURE__*/dual(2, (self, that) => provideWith(self, th
956
1008
  *
957
1009
  * **Example** (Providing dependencies while retaining services)
958
1010
  *
959
- * ```ts
1011
+ * ```ts import.meta.vitest
960
1012
  * import { Context, Effect, Layer } from "effect"
961
1013
  *
962
1014
  * class Database extends Context.Service<Database, {
@@ -979,8 +1031,9 @@ export const provide = /*#__PURE__*/dual(2, (self, that) => provideWith(self, th
979
1031
  * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`DB: ${sql}`))
980
1032
  * })
981
1033
  *
1034
+ * const logs: Array<string> = []
982
1035
  * const loggerLayer = Layer.succeed(Logger, {
983
- * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => console.log(`[LOG] ${msg}`)))
1036
+ * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => logs.push(`[LOG] ${msg}`)))
984
1037
  * })
985
1038
  *
986
1039
  * // UserService depends on Database and Logger
@@ -1017,6 +1070,8 @@ export const provide = /*#__PURE__*/dual(2, (self, that) => provideWith(self, th
1017
1070
  * }).pipe(
1018
1071
  * Effect.provide(allServicesLayer)
1019
1072
  * )
1073
+ * Effect.runSync(program) // => { id: "123", name: "DB: SELECT * FROM users WHERE id = 123" }
1074
+ * logs // => ["[LOG] Looking up user 123", "[LOG] Found user: DB: SELECT * FROM users WHERE id = 123"]
1020
1075
  * ```
1021
1076
  *
1022
1077
  * @see {@link provide} for keeping dependency services private
@@ -1030,7 +1085,7 @@ export const provideMerge = /*#__PURE__*/dual(2, (self, that) => provideWith(sel
1030
1085
  *
1031
1086
  * **Example** (Creating services from layer output)
1032
1087
  *
1033
- * ```ts
1088
+ * ```ts import.meta.vitest
1034
1089
  * import { Context, Effect, Layer } from "effect"
1035
1090
  *
1036
1091
  * class Config extends Context.Service<Config, {
@@ -1046,6 +1101,8 @@ export const provideMerge = /*#__PURE__*/dual(2, (self, that) => provideWith(sel
1046
1101
  * readonly log: (msg: string) => Effect.Effect<void>
1047
1102
  * }>()("Logger") {}
1048
1103
  *
1104
+ * const logs: Array<string> = []
1105
+ *
1049
1106
  * // Base config layer
1050
1107
  * const configLayer = Layer.succeed(Config, {
1051
1108
  * dbUrl: "postgres://localhost:5432/mydb",
@@ -1069,8 +1126,8 @@ export const provideMerge = /*#__PURE__*/dual(2, (self, that) => provideWith(sel
1069
1126
  * const loggerLayer = Layer.succeed(Logger, {
1070
1127
  * log: Effect.fn("Logger.log")((msg: string) =>
1071
1128
  * config.logLevel === "debug"
1072
- * ? Effect.sync(() => console.log(`[DEBUG] ${msg}`))
1073
- * : Effect.sync(() => console.log(msg))
1129
+ * ? Effect.sync(() => logs.push(`[DEBUG] ${msg}`))
1130
+ * : Effect.sync(() => logs.push(msg))
1074
1131
  * )
1075
1132
  * })
1076
1133
  *
@@ -1091,6 +1148,8 @@ export const provideMerge = /*#__PURE__*/dual(2, (self, that) => provideWith(sel
1091
1148
  * }).pipe(
1092
1149
  * Effect.provide(dynamicServiceLayer)
1093
1150
  * )
1151
+ * Effect.runSync(program) // => "Querying postgres://localhost:5432/mydb: SELECT * FROM users"
1152
+ * logs // => ["[DEBUG] Starting database query"]
1094
1153
  * ```
1095
1154
  *
1096
1155
  * @category sequencing
@@ -1172,8 +1231,8 @@ export const tapCause = /*#__PURE__*/dual(2, (self, f) => fromBuild((memoMap, sc
1172
1231
  *
1173
1232
  * **Example** (Converting layer failures to defects)
1174
1233
  *
1175
- * ```ts
1176
- * import { Context, Data, Effect, Layer } from "effect"
1234
+ * ```ts import.meta.vitest
1235
+ * import { Context, Data, Effect, Exit, Layer } from "effect"
1177
1236
  *
1178
1237
  * class DatabaseError extends Data.TaggedError("DatabaseError")<{
1179
1238
  * message: string
@@ -1184,10 +1243,11 @@ export const tapCause = /*#__PURE__*/dual(2, (self, f) => fromBuild((memoMap, sc
1184
1243
  * }>()("Database") {}
1185
1244
  *
1186
1245
  * // Layer that can fail during construction
1187
- * const flakyDatabaseLayer = Layer.effect(Database, Effect.gen(function*() {
1188
- * console.log("connecting")
1189
- * return yield* new DatabaseError({ message: "Connection failed" })
1190
- * }))
1246
+ * const error = new DatabaseError({ message: "Connection failed" })
1247
+ * const flakyDatabaseLayer = Layer.effect(
1248
+ * Database,
1249
+ * Effect.fail(error)
1250
+ * )
1191
1251
  *
1192
1252
  * // Convert failures to fiber death - removes error from type
1193
1253
  * const reliableDatabaseLayer = flakyDatabaseLayer.pipe(Layer.orDie)
@@ -1200,8 +1260,7 @@ export const tapCause = /*#__PURE__*/dual(2, (self, f) => fromBuild((memoMap, sc
1200
1260
  * Effect.provide(reliableDatabaseLayer)
1201
1261
  * )
1202
1262
  *
1203
- * // Running the program prints "connecting", then the DatabaseError is
1204
- * // converted into a fiber defect instead of remaining a typed error.
1263
+ * Effect.runSync(Effect.exit(program)) // => Exit.die(error)
1205
1264
  * ```
1206
1265
  *
1207
1266
  * @category error handling
@@ -1234,7 +1293,7 @@ catch_ as catch };
1234
1293
  *
1235
1294
  * **Example** (Recovering from tagged layer errors)
1236
1295
  *
1237
- * ```ts
1296
+ * ```ts import.meta.vitest
1238
1297
  * import { Context, Data, Effect, Layer } from "effect"
1239
1298
  *
1240
1299
  * class ConfigError extends Data.TaggedError("ConfigError") {}
@@ -1250,6 +1309,8 @@ catch_ as catch };
1250
1309
  * const recovered = configLayer.pipe(
1251
1310
  * Layer.catchTag("ConfigError", () => fallbackLayer)
1252
1311
  * )
1312
+ * const program = Config.useSync((config) => config.apiUrl)
1313
+ * Effect.runSync(Effect.provide(program, recovered)) // => "http://localhost"
1253
1314
  * ```
1254
1315
  *
1255
1316
  * @see {@link catchCause} for recovering with access to the full cause
@@ -1275,7 +1336,7 @@ export const catchTag = /*#__PURE__*/dual(3, (self, k, f) => fromBuildUnsafe((me
1275
1336
  *
1276
1337
  * **Example** (Recovering from layer failures by cause)
1277
1338
  *
1278
- * ```ts
1339
+ * ```ts import.meta.vitest
1279
1340
  * import { Context, Data, Effect, Layer } from "effect"
1280
1341
  *
1281
1342
  * class DatabaseError extends Data.TaggedError("DatabaseError")<{
@@ -1300,14 +1361,12 @@ export const catchTag = /*#__PURE__*/dual(3, (self, k, f) => fromBuildUnsafe((me
1300
1361
  *
1301
1362
  * const program = Effect.gen(function*() {
1302
1363
  * const database = yield* Database
1303
- * const result = yield* database.query("SELECT * FROM users")
1304
- * console.log(result)
1364
+ * return yield* database.query("SELECT * FROM users")
1305
1365
  * }).pipe(
1306
1366
  * Effect.provide(databaseWithFallback)
1307
1367
  * )
1308
1368
  *
1309
- * Effect.runPromise(program)
1310
- * // Memory: SELECT * FROM users
1369
+ * await Effect.runPromise(program) // => "Memory: SELECT * FROM users"
1311
1370
  * ```
1312
1371
  *
1313
1372
  * @see {@link catchTag} for recovering from specific tagged errors
@@ -1350,7 +1409,7 @@ export const updateService = /*#__PURE__*/dual(3, (layer, service, f) => provide
1350
1409
  *
1351
1410
  * **Example** (Creating non-shared layer instances)
1352
1411
  *
1353
- * ```ts
1412
+ * ```ts import.meta.vitest
1354
1413
  * import { Context, Effect, Layer, Ref } from "effect"
1355
1414
  *
1356
1415
  * class Counter extends Context.Service<Counter, {
@@ -1375,10 +1434,10 @@ export const updateService = /*#__PURE__*/dual(3, (layer, service, f) => provide
1375
1434
  * return { counterId: counter.id }
1376
1435
  * }))
1377
1436
  *
1378
- * const showIds = Effect.gen(function*() {
1437
+ * const compareIds = Effect.gen(function*() {
1379
1438
  * const left = yield* Left
1380
1439
  * const right = yield* Right
1381
- * console.log(`same Counter: ${left.counterId === right.counterId}`)
1440
+ * return left.counterId === right.counterId
1382
1441
  * })
1383
1442
  *
1384
1443
  * const program = Effect.gen(function*() {
@@ -1386,7 +1445,6 @@ export const updateService = /*#__PURE__*/dual(3, (layer, service, f) => provide
1386
1445
  *
1387
1446
  * const counterLayer = Layer.effect(Counter, Effect.gen(function*() {
1388
1447
  * const id = yield* Ref.updateAndGet(nextId, (n) => n + 1)
1389
- * console.log("constructed Counter")
1390
1448
  * return { id }
1391
1449
  * }))
1392
1450
  *
@@ -1395,7 +1453,7 @@ export const updateService = /*#__PURE__*/dual(3, (layer, service, f) => provide
1395
1453
  * Layer.provide(rightLayer, counterLayer)
1396
1454
  * )
1397
1455
  *
1398
- * yield* Effect.provide(showIds, shared)
1456
+ * const sharedResult = yield* Effect.provide(compareIds, shared)
1399
1457
  *
1400
1458
  * const freshCounterLayer = Layer.fresh(counterLayer)
1401
1459
  * const fresh = Layer.merge(
@@ -1403,15 +1461,12 @@ export const updateService = /*#__PURE__*/dual(3, (layer, service, f) => provide
1403
1461
  * Layer.provide(rightLayer, freshCounterLayer)
1404
1462
  * )
1405
1463
  *
1406
- * yield* Effect.provide(showIds, fresh)
1464
+ * const freshResult = yield* Effect.provide(compareIds, fresh)
1465
+ *
1466
+ * return { shared: sharedResult, fresh: freshResult }
1407
1467
  * })
1408
1468
  *
1409
- * Effect.runPromise(program)
1410
- * // constructed Counter
1411
- * // same Counter: true
1412
- * // constructed Counter
1413
- * // constructed Counter
1414
- * // same Counter: false
1469
+ * await Effect.runPromise(program) // => { shared: true, fresh: false }
1415
1470
  * ```
1416
1471
  *
1417
1472
  * @category layers
@@ -1433,50 +1488,30 @@ export const fresh = self => fromBuildUnsafe((_, scope) => self.build(makeMemoMa
1433
1488
  *
1434
1489
  * **Example** (Launching an application layer)
1435
1490
  *
1436
- * ```ts
1437
- * import { Console, Context, Effect, Layer } from "effect"
1491
+ * ```ts import.meta.vitest
1492
+ * import { Context, Deferred, Effect, Fiber, Layer, Ref } from "effect"
1438
1493
  *
1439
1494
  * class HttpServer extends Context.Service<HttpServer, {
1440
- * readonly start: () => Effect.Effect<string>
1441
- * readonly stop: () => Effect.Effect<string>
1495
+ * readonly port: number
1442
1496
  * }>()("HttpServer") {}
1443
1497
  *
1444
- * class Logger extends Context.Service<Logger, {
1445
- * readonly log: (msg: string) => Effect.Effect<void>
1446
- * }>()("Logger") {}
1447
- *
1448
- * // Server layer that starts an HTTP server
1449
- * const serverLayer = Layer.effect(HttpServer, Effect.gen(function*() {
1450
- * yield* Console.log("Starting HTTP server...")
1498
+ * const program = Effect.gen(function*() {
1499
+ * const events = yield* Ref.make<Array<string>>([])
1500
+ * const started = yield* Deferred.make<void>()
1451
1501
  *
1452
- * return {
1453
- * start: Effect.fn("HttpServer.start")(function*() {
1454
- * yield* Console.log("Server listening on port 3000")
1455
- * return "Server started"
1456
- * }),
1457
- * stop: Effect.fn("HttpServer.stop")(function*() {
1458
- * yield* Console.log("Server stopped gracefully")
1459
- * return "Server stopped"
1460
- * })
1461
- * }
1462
- * }))
1502
+ * const serverLayer = Layer.effect(HttpServer, Effect.gen(function*() {
1503
+ * yield* Ref.update(events, (events) => [...events, "Starting HTTP server..."])
1504
+ * yield* Deferred.succeed(started, undefined)
1505
+ * return { port: 3000 }
1506
+ * }))
1463
1507
  *
1464
- * const loggerLayer = Layer.succeed(Logger, {
1465
- * log: Effect.fn("Logger.log")((msg: string) => Console.log(`[LOG] ${msg}`))
1508
+ * const fiber = yield* Effect.forkChild(Layer.launch(serverLayer))
1509
+ * yield* Deferred.await(started)
1510
+ * yield* Fiber.interrupt(fiber)
1511
+ * return yield* Ref.get(events)
1466
1512
  * })
1467
1513
  *
1468
- * // Application layer combining all services
1469
- * const appLayer = Layer.mergeAll(serverLayer, loggerLayer)
1470
- *
1471
- * // Launch the application - runs until interrupted
1472
- * const application = appLayer.pipe(
1473
- * Layer.launch,
1474
- * Effect.tapError((error) => Console.log(`Application failed: ${error}`)),
1475
- * Effect.tap(() => Console.log("Application completed"))
1476
- * )
1477
- *
1478
- * // This will run forever until externally interrupted
1479
- * // Effect.runFork(application)
1514
+ * await Effect.runPromise(program) // => ["Starting HTTP server..."]
1480
1515
  * ```
1481
1516
  *
1482
1517
  * @category converting
@@ -1498,7 +1533,7 @@ export const launch = self => internalEffect.scoped(internalEffect.andThen(build
1498
1533
  *
1499
1534
  * **Example** (Mocking services for tests)
1500
1535
  *
1501
- * ```ts
1536
+ * ```ts import.meta.vitest
1502
1537
  * import { Context, Effect, Layer } from "effect"
1503
1538
  *
1504
1539
  * class UserService extends Context.Service<UserService, {
@@ -1526,13 +1561,15 @@ export const launch = self => internalEffect.scoped(internalEffect.andThen(build
1526
1561
  *
1527
1562
  * // This works - we provided an implementation
1528
1563
  * const user = yield* userService.getUser("123")
1529
- * console.log(user.name) // "Test User"
1530
1564
  *
1531
1565
  * // This would throw - we didn't implement deleteUser
1532
1566
  * // yield* userService.deleteUser("123") // UnimplementedError
1567
+ *
1568
+ * return user.name
1533
1569
  * }).pipe(
1534
1570
  * Effect.provide(testUserLayer)
1535
1571
  * )
1572
+ * Effect.runSync(testProgram) // => "Test User"
1536
1573
  * ```
1537
1574
  *
1538
1575
  * @category testing
@@ -1596,22 +1633,17 @@ const ChannelTypeId = "~effect/Channel";
1596
1633
  *
1597
1634
  * **Example** (Constraining layer success types)
1598
1635
  *
1599
- * ```ts
1600
- * import { Layer } from "effect"
1636
+ * ```ts import.meta.vitest
1637
+ * import { Context, Layer } from "effect"
1601
1638
  *
1602
- * declare const FortyTwoLayer: Layer.Layer<42, never, never>
1603
- * declare const StringLayer: Layer.Layer<string, never, never>
1639
+ * const NumberService = Context.Service<number>("Number")
1640
+ * const numberLayer = Layer.succeed(NumberService, 42)
1604
1641
  *
1605
1642
  * // Define a constraint that the success type must be a number
1606
1643
  * const satisfiesNumber = Layer.satisfiesSuccessType<number>()
1607
1644
  *
1608
1645
  * // This works - Layer<42, never, never> extends Layer<number, never, never>
1609
- * const validLayer = satisfiesNumber(FortyTwoLayer)
1610
- *
1611
- * // This would cause a TypeScript compilation error:
1612
- * // const invalidLayer = satisfiesNumber(StringLayer)
1613
- * // ^^^^^^^^^^^
1614
- * // Type 'string' is not assignable to type 'number'
1646
+ * const validLayer = satisfiesNumber(numberLayer)
1615
1647
  * ```
1616
1648
  *
1617
1649
  * @category utility types
@@ -1628,23 +1660,16 @@ export const satisfiesSuccessType = () => layer => layer;
1628
1660
  *
1629
1661
  * **Example** (Constraining layer error types)
1630
1662
  *
1631
- * ```ts
1632
- * import { Layer } from "effect"
1663
+ * ```ts import.meta.vitest
1664
+ * import { Effect, Layer } from "effect"
1633
1665
  *
1634
- * declare const ErrorLayer: Layer.Layer<never, Error, never>
1635
- * declare const TypeErrorLayer: Layer.Layer<never, TypeError, never>
1636
- * declare const StringLayer: Layer.Layer<never, string, never>
1666
+ * const typeErrorLayer = Layer.effectDiscard(Effect.fail(new TypeError("boom")))
1637
1667
  *
1638
1668
  * // Define a constraint that the error type must be an Error
1639
1669
  * const satisfiesError = Layer.satisfiesErrorType<Error>()
1640
1670
  *
1641
1671
  * // This works - Layer<never, TypeError, never> extends Layer<never, Error, never>
1642
- * const validLayer = satisfiesError(TypeErrorLayer)
1643
- *
1644
- * // This would cause a TypeScript compilation error:
1645
- * // const invalidLayer = satisfiesError(StringLayer)
1646
- * // ^^^^^^^^^^^
1647
- * // Type 'string' is not assignable to type 'Error'
1672
+ * const validLayer = satisfiesError(typeErrorLayer)
1648
1673
  * ```
1649
1674
  *
1650
1675
  * @category utility types
@@ -1661,22 +1686,17 @@ export const satisfiesErrorType = () => layer => layer;
1661
1686
  *
1662
1687
  * **Example** (Constraining layer service requirements)
1663
1688
  *
1664
- * ```ts
1665
- * import { Layer } from "effect"
1689
+ * ```ts import.meta.vitest
1690
+ * import { Context, Effect, Layer } from "effect"
1666
1691
  *
1667
- * declare const FortyTwoLayer: Layer.Layer<never, never, 42>
1668
- * declare const StringLayer: Layer.Layer<never, never, string>
1692
+ * const NumberService = Context.Service<number>("Number")
1693
+ * const numberLayer = Layer.effectDiscard(Effect.asVoid(NumberService))
1669
1694
  *
1670
1695
  * // Define a constraint that the service requirements must be numbers
1671
1696
  * const satisfiesNumber = Layer.satisfiesServicesType<number>()
1672
1697
  *
1673
1698
  * // This works - Layer<never, never, 42> extends Layer<never, never, number>
1674
- * const validLayer = satisfiesNumber(FortyTwoLayer)
1675
- *
1676
- * // This would cause a TypeScript compilation error:
1677
- * // const invalidLayer = satisfiesNumber(StringLayer)
1678
- * // ^^^^^^^^^^^
1679
- * // Type 'string' is not assignable to type 'number'
1699
+ * const validLayer = satisfiesNumber(numberLayer)
1680
1700
  * ```
1681
1701
  *
1682
1702
  * @category utility types
@@ -1697,38 +1717,37 @@ export const satisfiesServicesType = () => layer => layer;
1697
1717
  *
1698
1718
  * **Example** (Tracing layer construction with a span)
1699
1719
  *
1700
- * ```ts
1701
- * import { Console, Context, Effect, Layer } from "effect"
1720
+ * ```ts import.meta.vitest
1721
+ * import { Context, Effect, Layer } from "effect"
1702
1722
  * import type { Tracer } from "effect"
1703
1723
  *
1704
1724
  * class Database extends Context.Service<Database, {
1705
1725
  * readonly query: (sql: string) => Effect.Effect<string>
1706
1726
  * }>()("Database") {}
1707
1727
  *
1728
+ * const logs: Array<string> = []
1729
+ *
1708
1730
  * // Create a traced layer - all operations performed during construction of
1709
1731
  * // the `Database` service are part of the "database-init" span
1710
1732
  * const databaseLayer = Layer.effect(Database, Effect.gen(function*() {
1711
1733
  * // These operations are traced under "database-init" span
1712
- * yield* Effect.log("Connecting to database")
1713
- * yield* Effect.sleep("100 millis")
1714
- * yield* Effect.log("Database connected")
1734
+ * logs.push("Connecting to database")
1735
+ * logs.push("Database connected")
1715
1736
  *
1716
1737
  * const parentSpan = yield* Effect.currentParentSpan
1717
- * yield* Console.log((parentSpan as Tracer.Span).name) // "database-init"
1738
+ * logs.push((parentSpan as Tracer.Span).name)
1718
1739
  *
1719
1740
  * return {
1720
1741
  * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result: ${sql}`))
1721
1742
  * }
1722
- * })).pipe(Layer.provide(Layer.span("database-init")))
1723
- *
1724
- * // Can also use the `onEnd` callback to execute logic when the span ends
1725
- * const tracedLayer = Layer.span("service-initialization", {
1726
- * attributes: { version: "1.0.0" },
1743
+ * })).pipe(Layer.provide(Layer.span("database-init", {
1727
1744
  * onEnd: (span, exit) =>
1728
- * Effect.sync(() => {
1729
- * console.log(`Span ${span.name} ended with:`, exit._tag)
1730
- * })
1731
- * })
1745
+ * Effect.sync(() => logs.push(`Span ${span.name} ended with: ${exit._tag}`))
1746
+ * })))
1747
+ *
1748
+ * const program = Database.use((database) => database.query("SELECT 1"))
1749
+ * Effect.runSync(Effect.provide(program, databaseLayer)) // => "Result: SELECT 1"
1750
+ * logs // => ["Connecting to database", "Database connected", "database-init", "Span database-init ended with: Success"]
1732
1751
  * ```
1733
1752
  *
1734
1753
  * @category tracing
@@ -1749,10 +1768,11 @@ export const span = (name, options) => {
1749
1768
  *
1750
1769
  * **Example** (Referencing an existing parent span)
1751
1770
  *
1752
- * ```ts
1753
- * import { Console, Context, Effect, Layer, Tracer } from "effect"
1771
+ * ```ts import.meta.vitest
1772
+ * import { Context, Effect, Layer, Tracer } from "effect"
1754
1773
  *
1755
1774
  * class Database extends Context.Service<Database, {
1775
+ * readonly spanId: string
1756
1776
  * readonly query: (sql: string) => Effect.Effect<string>
1757
1777
  * }>()("Database") {}
1758
1778
  *
@@ -1760,12 +1780,10 @@ export const span = (name, options) => {
1760
1780
  * const databaseLayer = Layer.effect(
1761
1781
  * Database,
1762
1782
  * Effect.gen(function*() {
1763
- * yield* Effect.log("Initializing database")
1764
- *
1765
1783
  * const parentSpan = yield* Effect.currentParentSpan
1766
- * yield* Console.log(parentSpan.spanId) // "42"
1767
1784
  *
1768
1785
  * return {
1786
+ * spanId: parentSpan.spanId,
1769
1787
  * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result: ${sql}`))
1770
1788
  * }
1771
1789
  * })
@@ -1773,6 +1791,9 @@ export const span = (name, options) => {
1773
1791
  * spanId: "42",
1774
1792
  * traceId: "000"
1775
1793
  * }))))
1794
+ * const program = Database.use((database) =>
1795
+ * Effect.map(database.query("SELECT 1"), (result) => ({ spanId: database.spanId, result })))
1796
+ * Effect.runSync(Effect.provide(program, databaseLayer)) // => { spanId: "42", result: "Result: SELECT 1" }
1776
1797
  * ```
1777
1798
  *
1778
1799
  * @category tracing
@@ -1791,7 +1812,7 @@ export const parentSpan = span => succeedContext(Tracer.ParentSpan.context(span)
1791
1812
  *
1792
1813
  * **Example** (Wrapping a layer with a span)
1793
1814
  *
1794
- * ```ts
1815
+ * ```ts import.meta.vitest
1795
1816
  * import { Context, Effect, Layer } from "effect"
1796
1817
  *
1797
1818
  * class Database extends Context.Service<Database, {
@@ -1802,10 +1823,10 @@ export const parentSpan = span => succeedContext(Tracer.ParentSpan.context(span)
1802
1823
  * readonly log: (msg: string) => Effect.Effect<void>
1803
1824
  * }>()("Logger") {}
1804
1825
  *
1826
+ * const logs: Array<string> = []
1827
+ *
1805
1828
  * // Create layers with tracing
1806
1829
  * const databaseLayer = Layer.effect(Database, Effect.gen(function*() {
1807
- * yield* Effect.log("Connecting to database")
1808
- * yield* Effect.sleep("100 millis")
1809
1830
  * return {
1810
1831
  * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result: ${sql}`))
1811
1832
  * }
@@ -1814,16 +1835,14 @@ export const parentSpan = span => succeedContext(Tracer.ParentSpan.context(span)
1814
1835
  * }))
1815
1836
  *
1816
1837
  * const loggerLayer = Layer.succeed(Logger, {
1817
- * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => console.log(msg)))
1838
+ * log: Effect.fn("Logger.log")((msg: string) => Effect.sync(() => logs.push(msg)))
1818
1839
  * }).pipe(Layer.withSpan("logger-initialization"))
1819
1840
  *
1820
1841
  * // Combine traced layers
1821
1842
  * const appLayer = Layer.mergeAll(databaseLayer, loggerLayer).pipe(
1822
1843
  * Layer.withSpan("app-initialization", {
1823
1844
  * onEnd: (span, exit) =>
1824
- * Effect.sync(() => {
1825
- * console.log(`Application initialization completed: ${exit._tag}`)
1826
- * })
1845
+ * Effect.sync(() => logs.push(`Application initialization completed: ${exit._tag}`))
1827
1846
  * })
1828
1847
  * )
1829
1848
  *
@@ -1834,6 +1853,8 @@ export const parentSpan = span => succeedContext(Tracer.ParentSpan.context(span)
1834
1853
  * yield* logger.log("Application ready")
1835
1854
  * return yield* database.query("SELECT * FROM users")
1836
1855
  * }).pipe(Effect.provide(appLayer))
1856
+ * Effect.runSync(program) // => "Result: SELECT * FROM users"
1857
+ * logs // => ["Application ready", "Application initialization completed: Success"]
1837
1858
  * ```
1838
1859
  *
1839
1860
  * @category tracing
@@ -1865,7 +1886,7 @@ export const withSpan = function () {
1865
1886
  *
1866
1887
  * **Example** (Attaching layers to an existing parent span)
1867
1888
  *
1868
- * ```ts
1889
+ * ```ts import.meta.vitest
1869
1890
  * import { Context, Effect, Layer, Tracer } from "effect"
1870
1891
  *
1871
1892
  * class Database extends Context.Service<Database, {
@@ -1878,14 +1899,12 @@ export const withSpan = function () {
1878
1899
  *
1879
1900
  * // Create layers
1880
1901
  * const DatabaseLayer = Layer.effect(Database, Effect.gen(function*() {
1881
- * yield* Effect.log("Connecting to database")
1882
1902
  * return {
1883
1903
  * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`DB: ${sql}`))
1884
1904
  * }
1885
1905
  * }))
1886
1906
  *
1887
1907
  * const CacheLayer = Layer.effect(Cache, Effect.gen(function*() {
1888
- * yield* Effect.log("Connecting to cache")
1889
1908
  * return {
1890
1909
  * get: Effect.fn("Cache.get")((key: string) => Effect.succeed(`Cache: ${key}`))
1891
1910
  * }
@@ -1911,6 +1930,7 @@ export const withSpan = function () {
1911
1930
  * return { dbResult, cacheResult }
1912
1931
  * })
1913
1932
  * )
1933
+ * Effect.runSync(Effect.scoped(program)) // => { dbResult: "DB: SELECT * FROM users", cacheResult: "Cache: user:123" }
1914
1934
  * ```
1915
1935
  *
1916
1936
  * @category tracing