effect 4.0.0-beta.66 → 4.0.0-beta.68

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 (1767) hide show
  1. package/dist/Array.d.ts +151 -106
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +50 -40
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +620 -553
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +298 -254
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +342 -274
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +168 -126
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Boolean.d.ts +189 -156
  14. package/dist/Boolean.d.ts.map +1 -1
  15. package/dist/Boolean.js +85 -68
  16. package/dist/Boolean.js.map +1 -1
  17. package/dist/Brand.d.ts +30 -5
  18. package/dist/Brand.d.ts.map +1 -1
  19. package/dist/Brand.js +19 -2
  20. package/dist/Brand.js.map +1 -1
  21. package/dist/Cache.d.ts +239 -135
  22. package/dist/Cache.d.ts.map +1 -1
  23. package/dist/Cache.js +135 -59
  24. package/dist/Cache.js.map +1 -1
  25. package/dist/Cause.d.ts +84 -73
  26. package/dist/Cause.d.ts.map +1 -1
  27. package/dist/Cause.js +51 -44
  28. package/dist/Cause.js.map +1 -1
  29. package/dist/Channel.d.ts +1568 -632
  30. package/dist/Channel.d.ts.map +1 -1
  31. package/dist/Channel.js +685 -315
  32. package/dist/Channel.js.map +1 -1
  33. package/dist/ChannelSchema.d.ts +119 -10
  34. package/dist/ChannelSchema.d.ts.map +1 -1
  35. package/dist/ChannelSchema.js +45 -6
  36. package/dist/ChannelSchema.js.map +1 -1
  37. package/dist/Chunk.d.ts +574 -428
  38. package/dist/Chunk.d.ts.map +1 -1
  39. package/dist/Chunk.js +250 -191
  40. package/dist/Chunk.js.map +1 -1
  41. package/dist/Clock.d.ts +16 -9
  42. package/dist/Clock.d.ts.map +1 -1
  43. package/dist/Clock.js +9 -5
  44. package/dist/Clock.js.map +1 -1
  45. package/dist/Combiner.d.ts +11 -5
  46. package/dist/Combiner.d.ts.map +1 -1
  47. package/dist/Combiner.js +10 -4
  48. package/dist/Combiner.js.map +1 -1
  49. package/dist/Config.d.ts +80 -68
  50. package/dist/Config.d.ts.map +1 -1
  51. package/dist/Config.js +53 -49
  52. package/dist/Config.js.map +1 -1
  53. package/dist/ConfigProvider.d.ts +33 -32
  54. package/dist/ConfigProvider.d.ts.map +1 -1
  55. package/dist/ConfigProvider.js +19 -18
  56. package/dist/ConfigProvider.js.map +1 -1
  57. package/dist/Console.d.ts +76 -50
  58. package/dist/Console.d.ts.map +1 -1
  59. package/dist/Console.js +69 -46
  60. package/dist/Console.js.map +1 -1
  61. package/dist/Context.d.ts +400 -189
  62. package/dist/Context.d.ts.map +1 -1
  63. package/dist/Context.js +143 -77
  64. package/dist/Context.js.map +1 -1
  65. package/dist/Cron.d.ts +67 -48
  66. package/dist/Cron.d.ts.map +1 -1
  67. package/dist/Cron.js +94 -36
  68. package/dist/Cron.js.map +1 -1
  69. package/dist/Crypto.d.ts +208 -0
  70. package/dist/Crypto.d.ts.map +1 -0
  71. package/dist/Crypto.js +157 -0
  72. package/dist/Crypto.js.map +1 -0
  73. package/dist/Data.d.ts +9 -3
  74. package/dist/Data.d.ts.map +1 -1
  75. package/dist/Data.js.map +1 -1
  76. package/dist/DateTime.d.ts +893 -464
  77. package/dist/DateTime.d.ts.map +1 -1
  78. package/dist/DateTime.js +387 -228
  79. package/dist/DateTime.js.map +1 -1
  80. package/dist/Deferred.d.ts +367 -175
  81. package/dist/Deferred.d.ts.map +1 -1
  82. package/dist/Deferred.js +146 -72
  83. package/dist/Deferred.js.map +1 -1
  84. package/dist/Differ.d.ts +44 -2
  85. package/dist/Differ.d.ts.map +1 -1
  86. package/dist/Differ.js +36 -0
  87. package/dist/Duration.d.ts +333 -186
  88. package/dist/Duration.d.ts.map +1 -1
  89. package/dist/Duration.js +178 -107
  90. package/dist/Duration.js.map +1 -1
  91. package/dist/Effect.d.ts +2181 -2275
  92. package/dist/Effect.d.ts.map +1 -1
  93. package/dist/Effect.js +935 -850
  94. package/dist/Effect.js.map +1 -1
  95. package/dist/Effectable.d.ts +38 -3
  96. package/dist/Effectable.d.ts.map +1 -1
  97. package/dist/Effectable.js +3 -3
  98. package/dist/Effectable.js.map +1 -1
  99. package/dist/Encoding.d.ts +78 -28
  100. package/dist/Encoding.d.ts.map +1 -1
  101. package/dist/Encoding.js +75 -27
  102. package/dist/Encoding.js.map +1 -1
  103. package/dist/Equal.d.ts +4 -3
  104. package/dist/Equal.d.ts.map +1 -1
  105. package/dist/Equal.js +4 -3
  106. package/dist/Equal.js.map +1 -1
  107. package/dist/Equivalence.d.ts +18 -24
  108. package/dist/Equivalence.d.ts.map +1 -1
  109. package/dist/Equivalence.js +16 -21
  110. package/dist/Equivalence.js.map +1 -1
  111. package/dist/ErrorReporter.d.ts +66 -82
  112. package/dist/ErrorReporter.d.ts.map +1 -1
  113. package/dist/ErrorReporter.js +38 -29
  114. package/dist/ErrorReporter.js.map +1 -1
  115. package/dist/ExecutionPlan.d.ts +106 -12
  116. package/dist/ExecutionPlan.d.ts.map +1 -1
  117. package/dist/ExecutionPlan.js +23 -6
  118. package/dist/ExecutionPlan.js.map +1 -1
  119. package/dist/Exit.d.ts +6 -5
  120. package/dist/Exit.d.ts.map +1 -1
  121. package/dist/Exit.js.map +1 -1
  122. package/dist/Fiber.d.ts +71 -40
  123. package/dist/Fiber.d.ts.map +1 -1
  124. package/dist/Fiber.js +39 -21
  125. package/dist/Fiber.js.map +1 -1
  126. package/dist/FiberHandle.d.ts +118 -57
  127. package/dist/FiberHandle.d.ts.map +1 -1
  128. package/dist/FiberHandle.js +121 -39
  129. package/dist/FiberHandle.js.map +1 -1
  130. package/dist/FiberMap.d.ts +287 -159
  131. package/dist/FiberMap.d.ts.map +1 -1
  132. package/dist/FiberMap.js +175 -73
  133. package/dist/FiberMap.js.map +1 -1
  134. package/dist/FiberSet.d.ts +93 -52
  135. package/dist/FiberSet.d.ts.map +1 -1
  136. package/dist/FiberSet.js +97 -34
  137. package/dist/FiberSet.js.map +1 -1
  138. package/dist/FileSystem.d.ts +102 -73
  139. package/dist/FileSystem.d.ts.map +1 -1
  140. package/dist/FileSystem.js +53 -39
  141. package/dist/FileSystem.js.map +1 -1
  142. package/dist/Filter.d.ts +166 -88
  143. package/dist/Filter.d.ts.map +1 -1
  144. package/dist/Filter.js +68 -42
  145. package/dist/Filter.js.map +1 -1
  146. package/dist/Formatter.d.ts +4 -2
  147. package/dist/Formatter.d.ts.map +1 -1
  148. package/dist/Formatter.js +3 -69
  149. package/dist/Formatter.js.map +1 -1
  150. package/dist/Function.d.ts +218 -151
  151. package/dist/Function.d.ts.map +1 -1
  152. package/dist/Function.js +94 -78
  153. package/dist/Function.js.map +1 -1
  154. package/dist/Graph.d.ts +714 -415
  155. package/dist/Graph.d.ts.map +1 -1
  156. package/dist/Graph.js +325 -182
  157. package/dist/Graph.js.map +1 -1
  158. package/dist/HKT.d.ts +29 -13
  159. package/dist/HKT.d.ts.map +1 -1
  160. package/dist/Hash.d.ts +35 -24
  161. package/dist/Hash.d.ts.map +1 -1
  162. package/dist/Hash.js +27 -17
  163. package/dist/Hash.js.map +1 -1
  164. package/dist/HashMap.d.ts +540 -388
  165. package/dist/HashMap.d.ts.map +1 -1
  166. package/dist/HashMap.js +262 -156
  167. package/dist/HashMap.js.map +1 -1
  168. package/dist/HashRing.d.ts +53 -34
  169. package/dist/HashRing.d.ts.map +1 -1
  170. package/dist/HashRing.js +83 -16
  171. package/dist/HashRing.js.map +1 -1
  172. package/dist/HashSet.d.ts +239 -153
  173. package/dist/HashSet.d.ts.map +1 -1
  174. package/dist/HashSet.js +110 -56
  175. package/dist/HashSet.js.map +1 -1
  176. package/dist/Inspectable.d.ts +26 -13
  177. package/dist/Inspectable.d.ts.map +1 -1
  178. package/dist/Inspectable.js +22 -10
  179. package/dist/Inspectable.js.map +1 -1
  180. package/dist/Iterable.d.ts +336 -222
  181. package/dist/Iterable.d.ts.map +1 -1
  182. package/dist/Iterable.js +146 -100
  183. package/dist/Iterable.js.map +1 -1
  184. package/dist/JsonPatch.d.ts +12 -9
  185. package/dist/JsonPatch.d.ts.map +1 -1
  186. package/dist/JsonPatch.js +9 -6
  187. package/dist/JsonPatch.js.map +1 -1
  188. package/dist/JsonPointer.d.ts +13 -11
  189. package/dist/JsonPointer.d.ts.map +1 -1
  190. package/dist/JsonPointer.js +13 -11
  191. package/dist/JsonPointer.js.map +1 -1
  192. package/dist/JsonSchema.d.ts +16 -0
  193. package/dist/JsonSchema.d.ts.map +1 -1
  194. package/dist/JsonSchema.js +10 -0
  195. package/dist/JsonSchema.js.map +1 -1
  196. package/dist/Latch.d.ts +97 -26
  197. package/dist/Latch.d.ts.map +1 -1
  198. package/dist/Latch.js +39 -20
  199. package/dist/Latch.js.map +1 -1
  200. package/dist/Layer.d.ts +472 -410
  201. package/dist/Layer.d.ts.map +1 -1
  202. package/dist/Layer.js +290 -226
  203. package/dist/Layer.js.map +1 -1
  204. package/dist/LayerMap.d.ts +99 -26
  205. package/dist/LayerMap.d.ts.map +1 -1
  206. package/dist/LayerMap.js +58 -14
  207. package/dist/LayerMap.js.map +1 -1
  208. package/dist/LogLevel.d.ts +92 -131
  209. package/dist/LogLevel.d.ts.map +1 -1
  210. package/dist/LogLevel.js +25 -15
  211. package/dist/LogLevel.js.map +1 -1
  212. package/dist/Logger.d.ts +159 -104
  213. package/dist/Logger.d.ts.map +1 -1
  214. package/dist/Logger.js +215 -189
  215. package/dist/Logger.js.map +1 -1
  216. package/dist/ManagedRuntime.d.ts +78 -19
  217. package/dist/ManagedRuntime.d.ts.map +1 -1
  218. package/dist/ManagedRuntime.js +24 -17
  219. package/dist/ManagedRuntime.js.map +1 -1
  220. package/dist/Match.d.ts +135 -161
  221. package/dist/Match.d.ts.map +1 -1
  222. package/dist/Match.js +86 -78
  223. package/dist/Match.js.map +1 -1
  224. package/dist/Metric.d.ts +330 -291
  225. package/dist/Metric.d.ts.map +1 -1
  226. package/dist/Metric.js +219 -214
  227. package/dist/Metric.js.map +1 -1
  228. package/dist/MutableHashMap.d.ts +146 -87
  229. package/dist/MutableHashMap.d.ts.map +1 -1
  230. package/dist/MutableHashMap.js +67 -43
  231. package/dist/MutableHashMap.js.map +1 -1
  232. package/dist/MutableHashSet.d.ts +52 -30
  233. package/dist/MutableHashSet.d.ts.map +1 -1
  234. package/dist/MutableHashSet.js +92 -38
  235. package/dist/MutableHashSet.js.map +1 -1
  236. package/dist/MutableList.d.ts +110 -68
  237. package/dist/MutableList.d.ts.map +1 -1
  238. package/dist/MutableList.js +135 -85
  239. package/dist/MutableList.js.map +1 -1
  240. package/dist/MutableRef.d.ts +99 -62
  241. package/dist/MutableRef.d.ts.map +1 -1
  242. package/dist/MutableRef.js +78 -60
  243. package/dist/MutableRef.js.map +1 -1
  244. package/dist/Newtype.d.ts +15 -2
  245. package/dist/Newtype.d.ts.map +1 -1
  246. package/dist/Newtype.js +8 -2
  247. package/dist/Newtype.js.map +1 -1
  248. package/dist/NonEmptyIterable.d.ts +38 -48
  249. package/dist/NonEmptyIterable.d.ts.map +1 -1
  250. package/dist/NonEmptyIterable.js +34 -25
  251. package/dist/NonEmptyIterable.js.map +1 -1
  252. package/dist/Number.d.ts +261 -205
  253. package/dist/Number.d.ts.map +1 -1
  254. package/dist/Number.js +119 -91
  255. package/dist/Number.js.map +1 -1
  256. package/dist/Optic.d.ts +6 -7
  257. package/dist/Optic.d.ts.map +1 -1
  258. package/dist/Optic.js +5 -6
  259. package/dist/Optic.js.map +1 -1
  260. package/dist/Option.d.ts +133 -156
  261. package/dist/Option.d.ts.map +1 -1
  262. package/dist/Option.js +64 -64
  263. package/dist/Option.js.map +1 -1
  264. package/dist/Order.d.ts +6 -6
  265. package/dist/Order.js +6 -6
  266. package/dist/Ordering.d.ts +56 -45
  267. package/dist/Ordering.d.ts.map +1 -1
  268. package/dist/Ordering.js +10 -8
  269. package/dist/Ordering.js.map +1 -1
  270. package/dist/PartitionedSemaphore.d.ts +225 -40
  271. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  272. package/dist/PartitionedSemaphore.js +113 -17
  273. package/dist/PartitionedSemaphore.js.map +1 -1
  274. package/dist/Path.d.ts +77 -13
  275. package/dist/Path.d.ts.map +1 -1
  276. package/dist/Path.js +49 -4
  277. package/dist/Path.js.map +1 -1
  278. package/dist/Pipeable.d.ts +77 -18
  279. package/dist/Pipeable.d.ts.map +1 -1
  280. package/dist/Pipeable.js +63 -14
  281. package/dist/Pipeable.js.map +1 -1
  282. package/dist/PlatformError.d.ts +74 -6
  283. package/dist/PlatformError.d.ts.map +1 -1
  284. package/dist/PlatformError.js +68 -5
  285. package/dist/PlatformError.js.map +1 -1
  286. package/dist/Pool.d.ts +66 -31
  287. package/dist/Pool.d.ts.map +1 -1
  288. package/dist/Pool.js +26 -24
  289. package/dist/Pool.js.map +1 -1
  290. package/dist/Predicate.d.ts +16 -23
  291. package/dist/Predicate.d.ts.map +1 -1
  292. package/dist/Predicate.js +12 -17
  293. package/dist/Predicate.js.map +1 -1
  294. package/dist/PrimaryKey.d.ts +11 -3
  295. package/dist/PrimaryKey.d.ts.map +1 -1
  296. package/dist/PrimaryKey.js +9 -2
  297. package/dist/PrimaryKey.js.map +1 -1
  298. package/dist/PubSub.d.ts +385 -309
  299. package/dist/PubSub.d.ts.map +1 -1
  300. package/dist/PubSub.js +260 -207
  301. package/dist/PubSub.js.map +1 -1
  302. package/dist/Pull.d.ts +94 -25
  303. package/dist/Pull.d.ts.map +1 -1
  304. package/dist/Pull.js +61 -13
  305. package/dist/Pull.js.map +1 -1
  306. package/dist/Queue.d.ts +303 -184
  307. package/dist/Queue.d.ts.map +1 -1
  308. package/dist/Queue.js +231 -134
  309. package/dist/Queue.js.map +1 -1
  310. package/dist/Random.d.ts +65 -57
  311. package/dist/Random.d.ts.map +1 -1
  312. package/dist/Random.js +41 -66
  313. package/dist/Random.js.map +1 -1
  314. package/dist/RcMap.d.ts +151 -141
  315. package/dist/RcMap.d.ts.map +1 -1
  316. package/dist/RcMap.js +66 -20
  317. package/dist/RcMap.js.map +1 -1
  318. package/dist/RcRef.d.ts +68 -32
  319. package/dist/RcRef.d.ts.map +1 -1
  320. package/dist/RcRef.js +33 -16
  321. package/dist/RcRef.js.map +1 -1
  322. package/dist/Record.d.ts +282 -137
  323. package/dist/Record.d.ts.map +1 -1
  324. package/dist/Record.js +124 -62
  325. package/dist/Record.js.map +1 -1
  326. package/dist/Redactable.d.ts +7 -5
  327. package/dist/Redactable.d.ts.map +1 -1
  328. package/dist/Redactable.js +5 -3
  329. package/dist/Redactable.js.map +1 -1
  330. package/dist/Redacted.d.ts +63 -34
  331. package/dist/Redacted.d.ts.map +1 -1
  332. package/dist/Redacted.js +31 -15
  333. package/dist/Redacted.js.map +1 -1
  334. package/dist/Reducer.d.ts +3 -1
  335. package/dist/Reducer.d.ts.map +1 -1
  336. package/dist/Reducer.js +2 -0
  337. package/dist/Reducer.js.map +1 -1
  338. package/dist/Ref.d.ts +85 -66
  339. package/dist/Ref.d.ts.map +1 -1
  340. package/dist/Ref.js +57 -45
  341. package/dist/Ref.js.map +1 -1
  342. package/dist/References.d.ts +73 -31
  343. package/dist/References.d.ts.map +1 -1
  344. package/dist/References.js +66 -30
  345. package/dist/References.js.map +1 -1
  346. package/dist/RegExp.d.ts +12 -6
  347. package/dist/RegExp.d.ts.map +1 -1
  348. package/dist/RegExp.js +12 -6
  349. package/dist/RegExp.js.map +1 -1
  350. package/dist/Request.d.ts +159 -34
  351. package/dist/Request.d.ts.map +1 -1
  352. package/dist/Request.js +68 -12
  353. package/dist/Request.js.map +1 -1
  354. package/dist/RequestResolver.d.ts +262 -118
  355. package/dist/RequestResolver.d.ts.map +1 -1
  356. package/dist/RequestResolver.js +78 -42
  357. package/dist/RequestResolver.js.map +1 -1
  358. package/dist/Resource.d.ts +13 -7
  359. package/dist/Resource.d.ts.map +1 -1
  360. package/dist/Resource.js +44 -6
  361. package/dist/Resource.js.map +1 -1
  362. package/dist/Result.d.ts +135 -151
  363. package/dist/Result.d.ts.map +1 -1
  364. package/dist/Result.js +56 -68
  365. package/dist/Result.js.map +1 -1
  366. package/dist/Runtime.d.ts +40 -20
  367. package/dist/Runtime.d.ts.map +1 -1
  368. package/dist/Runtime.js +34 -17
  369. package/dist/Runtime.js.map +1 -1
  370. package/dist/Schedule.d.ts +556 -590
  371. package/dist/Schedule.d.ts.map +1 -1
  372. package/dist/Schedule.js +265 -253
  373. package/dist/Schedule.js.map +1 -1
  374. package/dist/Scheduler.d.ts +44 -7
  375. package/dist/Scheduler.d.ts.map +1 -1
  376. package/dist/Scheduler.js +34 -5
  377. package/dist/Scheduler.js.map +1 -1
  378. package/dist/Schema.d.ts +1293 -602
  379. package/dist/Schema.d.ts.map +1 -1
  380. package/dist/Schema.js +501 -361
  381. package/dist/Schema.js.map +1 -1
  382. package/dist/SchemaAST.d.ts +122 -92
  383. package/dist/SchemaAST.d.ts.map +1 -1
  384. package/dist/SchemaAST.js +102 -77
  385. package/dist/SchemaAST.js.map +1 -1
  386. package/dist/SchemaGetter.d.ts +49 -36
  387. package/dist/SchemaGetter.d.ts.map +1 -1
  388. package/dist/SchemaGetter.js +42 -29
  389. package/dist/SchemaGetter.js.map +1 -1
  390. package/dist/SchemaIssue.d.ts +19 -24
  391. package/dist/SchemaIssue.d.ts.map +1 -1
  392. package/dist/SchemaIssue.js +16 -14
  393. package/dist/SchemaIssue.js.map +1 -1
  394. package/dist/SchemaParser.d.ts +231 -63
  395. package/dist/SchemaParser.d.ts.map +1 -1
  396. package/dist/SchemaParser.js +266 -75
  397. package/dist/SchemaParser.js.map +1 -1
  398. package/dist/SchemaRepresentation.d.ts +89 -77
  399. package/dist/SchemaRepresentation.d.ts.map +1 -1
  400. package/dist/SchemaRepresentation.js +47 -37
  401. package/dist/SchemaRepresentation.js.map +1 -1
  402. package/dist/SchemaTransformation.d.ts +97 -46
  403. package/dist/SchemaTransformation.d.ts.map +1 -1
  404. package/dist/SchemaTransformation.js +89 -38
  405. package/dist/SchemaTransformation.js.map +1 -1
  406. package/dist/SchemaUtils.d.ts +8 -1
  407. package/dist/SchemaUtils.d.ts.map +1 -1
  408. package/dist/SchemaUtils.js +24 -1
  409. package/dist/SchemaUtils.js.map +1 -1
  410. package/dist/Scope.d.ts +107 -65
  411. package/dist/Scope.d.ts.map +1 -1
  412. package/dist/Scope.js +61 -32
  413. package/dist/Scope.js.map +1 -1
  414. package/dist/ScopedCache.d.ts +141 -49
  415. package/dist/ScopedCache.d.ts.map +1 -1
  416. package/dist/ScopedCache.js +82 -21
  417. package/dist/ScopedCache.js.map +1 -1
  418. package/dist/ScopedRef.d.ts +28 -8
  419. package/dist/ScopedRef.d.ts.map +1 -1
  420. package/dist/ScopedRef.js +25 -5
  421. package/dist/ScopedRef.js.map +1 -1
  422. package/dist/Semaphore.d.ts +61 -37
  423. package/dist/Semaphore.d.ts.map +1 -1
  424. package/dist/Semaphore.js +18 -21
  425. package/dist/Semaphore.js.map +1 -1
  426. package/dist/Sink.d.ts +461 -206
  427. package/dist/Sink.d.ts.map +1 -1
  428. package/dist/Sink.js +241 -90
  429. package/dist/Sink.js.map +1 -1
  430. package/dist/Stdio.d.ts +43 -6
  431. package/dist/Stdio.d.ts.map +1 -1
  432. package/dist/Stdio.js +33 -4
  433. package/dist/Stdio.js.map +1 -1
  434. package/dist/Stream.d.ts +2117 -1541
  435. package/dist/Stream.d.ts.map +1 -1
  436. package/dist/Stream.js +951 -682
  437. package/dist/Stream.js.map +1 -1
  438. package/dist/String.d.ts +174 -97
  439. package/dist/String.d.ts.map +1 -1
  440. package/dist/String.js +128 -69
  441. package/dist/String.js.map +1 -1
  442. package/dist/Struct.d.ts +20 -18
  443. package/dist/Struct.d.ts.map +1 -1
  444. package/dist/Struct.js +10 -8
  445. package/dist/Struct.js.map +1 -1
  446. package/dist/SubscriptionRef.d.ts +309 -204
  447. package/dist/SubscriptionRef.d.ts.map +1 -1
  448. package/dist/SubscriptionRef.js +126 -77
  449. package/dist/SubscriptionRef.js.map +1 -1
  450. package/dist/Symbol.d.ts +13 -5
  451. package/dist/Symbol.d.ts.map +1 -1
  452. package/dist/Symbol.js +13 -5
  453. package/dist/Symbol.js.map +1 -1
  454. package/dist/SynchronizedRef.d.ts +278 -62
  455. package/dist/SynchronizedRef.d.ts.map +1 -1
  456. package/dist/SynchronizedRef.js +116 -23
  457. package/dist/SynchronizedRef.js.map +1 -1
  458. package/dist/Take.d.ts +26 -2
  459. package/dist/Take.d.ts.map +1 -1
  460. package/dist/Take.js +4 -1
  461. package/dist/Take.js.map +1 -1
  462. package/dist/Terminal.d.ts +39 -7
  463. package/dist/Terminal.d.ts.map +1 -1
  464. package/dist/Terminal.js +10 -4
  465. package/dist/Terminal.js.map +1 -1
  466. package/dist/Tracer.d.ts +233 -59
  467. package/dist/Tracer.d.ts.map +1 -1
  468. package/dist/Tracer.js +94 -18
  469. package/dist/Tracer.js.map +1 -1
  470. package/dist/Trie.d.ts +280 -245
  471. package/dist/Trie.d.ts.map +1 -1
  472. package/dist/Trie.js +116 -102
  473. package/dist/Trie.js.map +1 -1
  474. package/dist/Tuple.d.ts +34 -32
  475. package/dist/Tuple.d.ts.map +1 -1
  476. package/dist/Tuple.js +16 -14
  477. package/dist/Tuple.js.map +1 -1
  478. package/dist/TxChunk.d.ts +200 -155
  479. package/dist/TxChunk.d.ts.map +1 -1
  480. package/dist/TxChunk.js +83 -61
  481. package/dist/TxChunk.js.map +1 -1
  482. package/dist/TxDeferred.d.ts +43 -29
  483. package/dist/TxDeferred.d.ts.map +1 -1
  484. package/dist/TxDeferred.js +22 -15
  485. package/dist/TxDeferred.js.map +1 -1
  486. package/dist/TxHashMap.d.ts +362 -223
  487. package/dist/TxHashMap.d.ts.map +1 -1
  488. package/dist/TxHashMap.js +171 -98
  489. package/dist/TxHashMap.js.map +1 -1
  490. package/dist/TxHashSet.d.ts +181 -111
  491. package/dist/TxHashSet.d.ts.map +1 -1
  492. package/dist/TxHashSet.js +87 -49
  493. package/dist/TxHashSet.js.map +1 -1
  494. package/dist/TxPriorityQueue.d.ts +94 -63
  495. package/dist/TxPriorityQueue.d.ts.map +1 -1
  496. package/dist/TxPriorityQueue.js +55 -37
  497. package/dist/TxPriorityQueue.js.map +1 -1
  498. package/dist/TxPubSub.d.ts +77 -49
  499. package/dist/TxPubSub.d.ts.map +1 -1
  500. package/dist/TxPubSub.js +60 -37
  501. package/dist/TxPubSub.js.map +1 -1
  502. package/dist/TxQueue.d.ts +277 -242
  503. package/dist/TxQueue.d.ts.map +1 -1
  504. package/dist/TxQueue.js +147 -101
  505. package/dist/TxQueue.js.map +1 -1
  506. package/dist/TxReentrantLock.d.ts +69 -46
  507. package/dist/TxReentrantLock.d.ts.map +1 -1
  508. package/dist/TxReentrantLock.js +48 -32
  509. package/dist/TxReentrantLock.js.map +1 -1
  510. package/dist/TxRef.d.ts +69 -40
  511. package/dist/TxRef.d.ts.map +1 -1
  512. package/dist/TxRef.js +34 -19
  513. package/dist/TxRef.js.map +1 -1
  514. package/dist/TxSemaphore.d.ts +101 -115
  515. package/dist/TxSemaphore.d.ts.map +1 -1
  516. package/dist/TxSemaphore.js +76 -77
  517. package/dist/TxSemaphore.js.map +1 -1
  518. package/dist/TxSubscriptionRef.d.ts +74 -50
  519. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  520. package/dist/TxSubscriptionRef.js +34 -23
  521. package/dist/TxSubscriptionRef.js.map +1 -1
  522. package/dist/Types.d.ts +31 -34
  523. package/dist/Types.d.ts.map +1 -1
  524. package/dist/UndefinedOr.d.ts +62 -25
  525. package/dist/UndefinedOr.d.ts.map +1 -1
  526. package/dist/UndefinedOr.js +36 -25
  527. package/dist/UndefinedOr.js.map +1 -1
  528. package/dist/Unify.d.ts +72 -117
  529. package/dist/Unify.d.ts.map +1 -1
  530. package/dist/Unify.js +20 -6
  531. package/dist/Unify.js.map +1 -1
  532. package/dist/Utils.d.ts +5 -2
  533. package/dist/Utils.d.ts.map +1 -1
  534. package/dist/Utils.js +4 -0
  535. package/dist/Utils.js.map +1 -1
  536. package/dist/index.d.ts +1973 -418
  537. package/dist/index.d.ts.map +1 -1
  538. package/dist/index.js +1973 -418
  539. package/dist/index.js.map +1 -1
  540. package/dist/internal/schema/schema.js +1 -1
  541. package/dist/internal/schema/schema.js.map +1 -1
  542. package/dist/testing/FastCheck.d.ts +9 -6
  543. package/dist/testing/FastCheck.d.ts.map +1 -1
  544. package/dist/testing/FastCheck.js +9 -6
  545. package/dist/testing/FastCheck.js.map +1 -1
  546. package/dist/testing/TestClock.d.ts +39 -35
  547. package/dist/testing/TestClock.d.ts.map +1 -1
  548. package/dist/testing/TestClock.js +42 -12
  549. package/dist/testing/TestClock.js.map +1 -1
  550. package/dist/testing/TestConsole.d.ts +44 -36
  551. package/dist/testing/TestConsole.d.ts.map +1 -1
  552. package/dist/testing/TestConsole.js +30 -15
  553. package/dist/testing/TestConsole.js.map +1 -1
  554. package/dist/testing/TestSchema.d.ts +2 -0
  555. package/dist/testing/TestSchema.d.ts.map +1 -1
  556. package/dist/testing/TestSchema.js +9 -7
  557. package/dist/testing/TestSchema.js.map +1 -1
  558. package/dist/testing/index.d.ts +34 -0
  559. package/dist/testing/index.d.ts.map +1 -1
  560. package/dist/testing/index.js +34 -0
  561. package/dist/testing/index.js.map +1 -1
  562. package/dist/unstable/ai/AiError.d.ts +205 -147
  563. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  564. package/dist/unstable/ai/AiError.js +164 -109
  565. package/dist/unstable/ai/AiError.js.map +1 -1
  566. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  567. package/dist/unstable/ai/AnthropicStructuredOutput.js +2 -2
  568. package/dist/unstable/ai/Chat.d.ts +64 -41
  569. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  570. package/dist/unstable/ai/Chat.js +51 -33
  571. package/dist/unstable/ai/Chat.js.map +1 -1
  572. package/dist/unstable/ai/EmbeddingModel.d.ts +12 -11
  573. package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -1
  574. package/dist/unstable/ai/EmbeddingModel.js +9 -8
  575. package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
  576. package/dist/unstable/ai/IdGenerator.d.ts +28 -18
  577. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  578. package/dist/unstable/ai/IdGenerator.js +18 -11
  579. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  580. package/dist/unstable/ai/LanguageModel.d.ts +31 -25
  581. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  582. package/dist/unstable/ai/LanguageModel.js +20 -14
  583. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  584. package/dist/unstable/ai/McpSchema.d.ts +342 -119
  585. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  586. package/dist/unstable/ai/McpSchema.js +266 -98
  587. package/dist/unstable/ai/McpSchema.js.map +1 -1
  588. package/dist/unstable/ai/McpServer.d.ts +56 -20
  589. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  590. package/dist/unstable/ai/McpServer.js +64 -16
  591. package/dist/unstable/ai/McpServer.js.map +1 -1
  592. package/dist/unstable/ai/Model.d.ts +10 -12
  593. package/dist/unstable/ai/Model.d.ts.map +1 -1
  594. package/dist/unstable/ai/Model.js +9 -7
  595. package/dist/unstable/ai/Model.js.map +1 -1
  596. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  597. package/dist/unstable/ai/OpenAiStructuredOutput.js +2 -2
  598. package/dist/unstable/ai/Prompt.d.ts +200 -176
  599. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  600. package/dist/unstable/ai/Prompt.js +77 -68
  601. package/dist/unstable/ai/Prompt.js.map +1 -1
  602. package/dist/unstable/ai/Response.d.ts +173 -160
  603. package/dist/unstable/ai/Response.d.ts.map +1 -1
  604. package/dist/unstable/ai/Response.js +43 -48
  605. package/dist/unstable/ai/Response.js.map +1 -1
  606. package/dist/unstable/ai/ResponseIdTracker.d.ts +43 -4
  607. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
  608. package/dist/unstable/ai/ResponseIdTracker.js +27 -2
  609. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  610. package/dist/unstable/ai/Telemetry.d.ts +43 -33
  611. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  612. package/dist/unstable/ai/Telemetry.js +15 -11
  613. package/dist/unstable/ai/Telemetry.js.map +1 -1
  614. package/dist/unstable/ai/Tokenizer.d.ts +14 -9
  615. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  616. package/dist/unstable/ai/Tokenizer.js +10 -6
  617. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  618. package/dist/unstable/ai/Tool.d.ts +167 -96
  619. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  620. package/dist/unstable/ai/Tool.js +107 -53
  621. package/dist/unstable/ai/Tool.js.map +1 -1
  622. package/dist/unstable/ai/Toolkit.d.ts +32 -39
  623. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  624. package/dist/unstable/ai/Toolkit.js +7 -5
  625. package/dist/unstable/ai/Toolkit.js.map +1 -1
  626. package/dist/unstable/ai/index.d.ts +121 -29
  627. package/dist/unstable/ai/index.d.ts.map +1 -1
  628. package/dist/unstable/ai/index.js +121 -29
  629. package/dist/unstable/ai/index.js.map +1 -1
  630. package/dist/unstable/cli/Argument.d.ts +226 -134
  631. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  632. package/dist/unstable/cli/Argument.js +101 -65
  633. package/dist/unstable/cli/Argument.js.map +1 -1
  634. package/dist/unstable/cli/CliError.d.ts +72 -26
  635. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  636. package/dist/unstable/cli/CliError.js +86 -23
  637. package/dist/unstable/cli/CliError.js.map +1 -1
  638. package/dist/unstable/cli/CliOutput.d.ts +48 -19
  639. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  640. package/dist/unstable/cli/CliOutput.js +32 -9
  641. package/dist/unstable/cli/CliOutput.js.map +1 -1
  642. package/dist/unstable/cli/Command.d.ts +196 -115
  643. package/dist/unstable/cli/Command.d.ts.map +1 -1
  644. package/dist/unstable/cli/Command.js +45 -31
  645. package/dist/unstable/cli/Command.js.map +1 -1
  646. package/dist/unstable/cli/Completions.d.ts +7 -7
  647. package/dist/unstable/cli/Completions.js +1 -1
  648. package/dist/unstable/cli/Flag.d.ts +235 -142
  649. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  650. package/dist/unstable/cli/Flag.js +111 -71
  651. package/dist/unstable/cli/Flag.js.map +1 -1
  652. package/dist/unstable/cli/GlobalFlag.d.ts +41 -13
  653. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
  654. package/dist/unstable/cli/GlobalFlag.js +30 -7
  655. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  656. package/dist/unstable/cli/HelpDoc.d.ts +39 -14
  657. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  658. package/dist/unstable/cli/HelpDoc.js +21 -0
  659. package/dist/unstable/cli/Param.d.ts +110 -32
  660. package/dist/unstable/cli/Param.d.ts.map +1 -1
  661. package/dist/unstable/cli/Param.js +196 -135
  662. package/dist/unstable/cli/Param.js.map +1 -1
  663. package/dist/unstable/cli/Primitive.d.ts +79 -42
  664. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  665. package/dist/unstable/cli/Primitive.js +66 -35
  666. package/dist/unstable/cli/Primitive.js.map +1 -1
  667. package/dist/unstable/cli/Prompt.d.ts +183 -59
  668. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  669. package/dist/unstable/cli/Prompt.js +105 -23
  670. package/dist/unstable/cli/Prompt.js.map +1 -1
  671. package/dist/unstable/cli/index.d.ts +182 -0
  672. package/dist/unstable/cli/index.d.ts.map +1 -1
  673. package/dist/unstable/cli/index.js +205 -6
  674. package/dist/unstable/cli/index.js.map +1 -1
  675. package/dist/unstable/cli/internal/ansi.d.ts.map +1 -1
  676. package/dist/unstable/cli/internal/ansi.js +13 -0
  677. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  678. package/dist/unstable/cli/internal/command.d.ts +5 -1
  679. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  680. package/dist/unstable/cli/internal/command.js +5 -1
  681. package/dist/unstable/cli/internal/command.js.map +1 -1
  682. package/dist/unstable/cli/internal/config.d.ts +3 -0
  683. package/dist/unstable/cli/internal/config.d.ts.map +1 -1
  684. package/dist/unstable/cli/internal/config.js.map +1 -1
  685. package/dist/unstable/cli/internal/lexer.js.map +1 -1
  686. package/dist/unstable/cli/internal/parser.js +0 -1
  687. package/dist/unstable/cli/internal/parser.js.map +1 -1
  688. package/dist/unstable/cluster/ClusterCron.d.ts +35 -1
  689. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  690. package/dist/unstable/cluster/ClusterCron.js +35 -1
  691. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  692. package/dist/unstable/cluster/ClusterError.d.ts +56 -7
  693. package/dist/unstable/cluster/ClusterError.d.ts.map +1 -1
  694. package/dist/unstable/cluster/ClusterError.js +56 -7
  695. package/dist/unstable/cluster/ClusterError.js.map +1 -1
  696. package/dist/unstable/cluster/ClusterMetrics.d.ts +39 -5
  697. package/dist/unstable/cluster/ClusterMetrics.d.ts.map +1 -1
  698. package/dist/unstable/cluster/ClusterMetrics.js +39 -5
  699. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  700. package/dist/unstable/cluster/ClusterSchema.d.ts +61 -8
  701. package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
  702. package/dist/unstable/cluster/ClusterSchema.js +61 -8
  703. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  704. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +14 -2
  705. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  706. package/dist/unstable/cluster/ClusterWorkflowEngine.js +35 -2
  707. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  708. package/dist/unstable/cluster/DeliverAt.d.ts +39 -4
  709. package/dist/unstable/cluster/DeliverAt.d.ts.map +1 -1
  710. package/dist/unstable/cluster/DeliverAt.js +11 -3
  711. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  712. package/dist/unstable/cluster/Entity.d.ts +74 -16
  713. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  714. package/dist/unstable/cluster/Entity.js +75 -10
  715. package/dist/unstable/cluster/Entity.js.map +1 -1
  716. package/dist/unstable/cluster/EntityAddress.d.ts +30 -2
  717. package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
  718. package/dist/unstable/cluster/EntityAddress.js +30 -2
  719. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  720. package/dist/unstable/cluster/EntityId.d.ts +18 -3
  721. package/dist/unstable/cluster/EntityId.d.ts.map +1 -1
  722. package/dist/unstable/cluster/EntityId.js +15 -2
  723. package/dist/unstable/cluster/EntityId.js.map +1 -1
  724. package/dist/unstable/cluster/EntityProxy.d.ts +42 -14
  725. package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
  726. package/dist/unstable/cluster/EntityProxy.js +30 -14
  727. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  728. package/dist/unstable/cluster/EntityProxyServer.d.ts +18 -2
  729. package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
  730. package/dist/unstable/cluster/EntityProxyServer.js +40 -8
  731. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  732. package/dist/unstable/cluster/EntityResource.d.ts +43 -6
  733. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  734. package/dist/unstable/cluster/EntityResource.js +11 -4
  735. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  736. package/dist/unstable/cluster/EntityType.d.ts +27 -3
  737. package/dist/unstable/cluster/EntityType.d.ts.map +1 -1
  738. package/dist/unstable/cluster/EntityType.js +24 -2
  739. package/dist/unstable/cluster/EntityType.js.map +1 -1
  740. package/dist/unstable/cluster/Envelope.d.ts +105 -23
  741. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  742. package/dist/unstable/cluster/Envelope.js +88 -14
  743. package/dist/unstable/cluster/Envelope.js.map +1 -1
  744. package/dist/unstable/cluster/HttpRunner.d.ts +88 -13
  745. package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
  746. package/dist/unstable/cluster/HttpRunner.js +88 -13
  747. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  748. package/dist/unstable/cluster/K8sHttpClient.d.ts +49 -6
  749. package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
  750. package/dist/unstable/cluster/K8sHttpClient.js +31 -6
  751. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  752. package/dist/unstable/cluster/MachineId.d.ts +24 -3
  753. package/dist/unstable/cluster/MachineId.d.ts.map +1 -1
  754. package/dist/unstable/cluster/MachineId.js +21 -2
  755. package/dist/unstable/cluster/MachineId.js.map +1 -1
  756. package/dist/unstable/cluster/Message.d.ts +102 -13
  757. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  758. package/dist/unstable/cluster/Message.js +86 -10
  759. package/dist/unstable/cluster/Message.js.map +1 -1
  760. package/dist/unstable/cluster/MessageStorage.d.ts +126 -21
  761. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  762. package/dist/unstable/cluster/MessageStorage.js +70 -10
  763. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  764. package/dist/unstable/cluster/Reply.d.ts +101 -12
  765. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  766. package/dist/unstable/cluster/Reply.js +64 -8
  767. package/dist/unstable/cluster/Reply.js.map +1 -1
  768. package/dist/unstable/cluster/Runner.d.ts +47 -17
  769. package/dist/unstable/cluster/Runner.d.ts.map +1 -1
  770. package/dist/unstable/cluster/Runner.js +47 -17
  771. package/dist/unstable/cluster/Runner.js.map +1 -1
  772. package/dist/unstable/cluster/RunnerAddress.d.ts +34 -2
  773. package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
  774. package/dist/unstable/cluster/RunnerAddress.js +34 -2
  775. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  776. package/dist/unstable/cluster/RunnerHealth.d.ts +40 -12
  777. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  778. package/dist/unstable/cluster/RunnerHealth.js +40 -12
  779. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  780. package/dist/unstable/cluster/RunnerServer.d.ts +7 -4
  781. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  782. package/dist/unstable/cluster/RunnerServer.js +31 -4
  783. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  784. package/dist/unstable/cluster/RunnerStorage.d.ts +42 -5
  785. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  786. package/dist/unstable/cluster/RunnerStorage.js +38 -4
  787. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  788. package/dist/unstable/cluster/Runners.d.ts +76 -13
  789. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  790. package/dist/unstable/cluster/Runners.js +73 -12
  791. package/dist/unstable/cluster/Runners.js.map +1 -1
  792. package/dist/unstable/cluster/ShardId.d.ts +53 -5
  793. package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
  794. package/dist/unstable/cluster/ShardId.js +49 -4
  795. package/dist/unstable/cluster/ShardId.js.map +1 -1
  796. package/dist/unstable/cluster/Sharding.d.ts +10 -2
  797. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  798. package/dist/unstable/cluster/Sharding.js +35 -4
  799. package/dist/unstable/cluster/Sharding.js.map +1 -1
  800. package/dist/unstable/cluster/ShardingConfig.d.ts +65 -9
  801. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  802. package/dist/unstable/cluster/ShardingConfig.js +66 -9
  803. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  804. package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts +27 -6
  805. package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts.map +1 -1
  806. package/dist/unstable/cluster/ShardingRegistrationEvent.js +28 -4
  807. package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
  808. package/dist/unstable/cluster/SingleRunner.d.ts +23 -1
  809. package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
  810. package/dist/unstable/cluster/SingleRunner.js +23 -1
  811. package/dist/unstable/cluster/SingleRunner.js.map +1 -1
  812. package/dist/unstable/cluster/Singleton.d.ts +15 -1
  813. package/dist/unstable/cluster/Singleton.d.ts.map +1 -1
  814. package/dist/unstable/cluster/Singleton.js +15 -1
  815. package/dist/unstable/cluster/Singleton.js.map +1 -1
  816. package/dist/unstable/cluster/SingletonAddress.d.ts +21 -1
  817. package/dist/unstable/cluster/SingletonAddress.d.ts.map +1 -1
  818. package/dist/unstable/cluster/SingletonAddress.js +21 -1
  819. package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
  820. package/dist/unstable/cluster/Snowflake.d.ts +90 -19
  821. package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
  822. package/dist/unstable/cluster/Snowflake.js +49 -13
  823. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  824. package/dist/unstable/cluster/SocketRunner.d.ts +8 -2
  825. package/dist/unstable/cluster/SocketRunner.d.ts.map +1 -1
  826. package/dist/unstable/cluster/SocketRunner.js +29 -2
  827. package/dist/unstable/cluster/SocketRunner.js.map +1 -1
  828. package/dist/unstable/cluster/SqlMessageStorage.d.ts +11 -3
  829. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  830. package/dist/unstable/cluster/SqlMessageStorage.js +27 -3
  831. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  832. package/dist/unstable/cluster/SqlRunnerStorage.d.ts +11 -3
  833. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  834. package/dist/unstable/cluster/SqlRunnerStorage.js +46 -7
  835. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  836. package/dist/unstable/cluster/TestRunner.d.ts +18 -1
  837. package/dist/unstable/cluster/TestRunner.d.ts.map +1 -1
  838. package/dist/unstable/cluster/TestRunner.js +18 -1
  839. package/dist/unstable/cluster/TestRunner.js.map +1 -1
  840. package/dist/unstable/cluster/index.d.ts +790 -0
  841. package/dist/unstable/cluster/index.d.ts.map +1 -1
  842. package/dist/unstable/cluster/index.js +790 -0
  843. package/dist/unstable/cluster/index.js.map +1 -1
  844. package/dist/unstable/cluster/internal/hash.js +12 -0
  845. package/dist/unstable/cluster/internal/hash.js.map +1 -1
  846. package/dist/unstable/devtools/DevTools.d.ts +26 -3
  847. package/dist/unstable/devtools/DevTools.d.ts.map +1 -1
  848. package/dist/unstable/devtools/DevTools.js +26 -3
  849. package/dist/unstable/devtools/DevTools.js.map +1 -1
  850. package/dist/unstable/devtools/DevToolsClient.d.ts +20 -5
  851. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  852. package/dist/unstable/devtools/DevToolsClient.js +32 -5
  853. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  854. package/dist/unstable/devtools/DevToolsSchema.d.ts +184 -44
  855. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  856. package/dist/unstable/devtools/DevToolsSchema.js +102 -20
  857. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  858. package/dist/unstable/devtools/DevToolsServer.d.ts +27 -2
  859. package/dist/unstable/devtools/DevToolsServer.d.ts.map +1 -1
  860. package/dist/unstable/devtools/DevToolsServer.js +21 -1
  861. package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
  862. package/dist/unstable/devtools/index.d.ts +58 -0
  863. package/dist/unstable/devtools/index.d.ts.map +1 -1
  864. package/dist/unstable/devtools/index.js +58 -0
  865. package/dist/unstable/devtools/index.js.map +1 -1
  866. package/dist/unstable/encoding/Msgpack.d.ts +81 -12
  867. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  868. package/dist/unstable/encoding/Msgpack.js +75 -9
  869. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  870. package/dist/unstable/encoding/Ndjson.d.ts +149 -21
  871. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  872. package/dist/unstable/encoding/Ndjson.js +97 -13
  873. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  874. package/dist/unstable/encoding/Sse.d.ts +109 -18
  875. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  876. package/dist/unstable/encoding/Sse.js +69 -13
  877. package/dist/unstable/encoding/Sse.js.map +1 -1
  878. package/dist/unstable/encoding/index.d.ts +49 -0
  879. package/dist/unstable/encoding/index.d.ts.map +1 -1
  880. package/dist/unstable/encoding/index.js +49 -0
  881. package/dist/unstable/encoding/index.js.map +1 -1
  882. package/dist/unstable/eventlog/Event.d.ts +115 -30
  883. package/dist/unstable/eventlog/Event.d.ts.map +1 -1
  884. package/dist/unstable/eventlog/Event.js +22 -2
  885. package/dist/unstable/eventlog/Event.js.map +1 -1
  886. package/dist/unstable/eventlog/EventGroup.d.ts +50 -17
  887. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  888. package/dist/unstable/eventlog/EventGroup.js +24 -6
  889. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  890. package/dist/unstable/eventlog/EventJournal.d.ts +104 -20
  891. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  892. package/dist/unstable/eventlog/EventJournal.js +108 -16
  893. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  894. package/dist/unstable/eventlog/EventLog.d.ts +150 -31
  895. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  896. package/dist/unstable/eventlog/EventLog.js +111 -20
  897. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  898. package/dist/unstable/eventlog/EventLogEncryption.d.ts +42 -6
  899. package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
  900. package/dist/unstable/eventlog/EventLogEncryption.js +38 -5
  901. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  902. package/dist/unstable/eventlog/EventLogMessage.d.ts +92 -18
  903. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
  904. package/dist/unstable/eventlog/EventLogMessage.js +72 -16
  905. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  906. package/dist/unstable/eventlog/EventLogRemote.d.ts +35 -8
  907. package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
  908. package/dist/unstable/eventlog/EventLogRemote.js +54 -8
  909. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  910. package/dist/unstable/eventlog/EventLogServer.d.ts +17 -3
  911. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  912. package/dist/unstable/eventlog/EventLogServer.js +17 -3
  913. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  914. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +32 -6
  915. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  916. package/dist/unstable/eventlog/EventLogServerEncrypted.js +52 -6
  917. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  918. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +74 -16
  919. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  920. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +90 -16
  921. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  922. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +59 -15
  923. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -1
  924. package/dist/unstable/eventlog/EventLogSessionAuth.js +73 -14
  925. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
  926. package/dist/unstable/eventlog/SqlEventJournal.d.ts +10 -2
  927. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
  928. package/dist/unstable/eventlog/SqlEventJournal.js +28 -2
  929. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  930. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts +32 -3
  931. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
  932. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +32 -3
  933. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  934. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +10 -2
  935. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
  936. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +28 -2
  937. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  938. package/dist/unstable/eventlog/index.d.ts +240 -0
  939. package/dist/unstable/eventlog/index.d.ts.map +1 -1
  940. package/dist/unstable/eventlog/index.js +240 -0
  941. package/dist/unstable/eventlog/index.js.map +1 -1
  942. package/dist/unstable/http/Cookies.d.ts +156 -77
  943. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  944. package/dist/unstable/http/Cookies.js +93 -39
  945. package/dist/unstable/http/Cookies.js.map +1 -1
  946. package/dist/unstable/http/Etag.d.ts +40 -7
  947. package/dist/unstable/http/Etag.d.ts.map +1 -1
  948. package/dist/unstable/http/Etag.js +27 -4
  949. package/dist/unstable/http/Etag.js.map +1 -1
  950. package/dist/unstable/http/FetchHttpClient.d.ts +29 -3
  951. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  952. package/dist/unstable/http/FetchHttpClient.js +33 -4
  953. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  954. package/dist/unstable/http/FindMyWay.d.ts +1 -1
  955. package/dist/unstable/http/FindMyWay.js +1 -1
  956. package/dist/unstable/http/Headers.d.ts +182 -36
  957. package/dist/unstable/http/Headers.d.ts.map +1 -1
  958. package/dist/unstable/http/Headers.js +86 -16
  959. package/dist/unstable/http/Headers.js.map +1 -1
  960. package/dist/unstable/http/HttpBody.d.ts +114 -26
  961. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  962. package/dist/unstable/http/HttpBody.js +98 -20
  963. package/dist/unstable/http/HttpBody.js.map +1 -1
  964. package/dist/unstable/http/HttpClient.d.ts +204 -96
  965. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  966. package/dist/unstable/http/HttpClient.js +85 -38
  967. package/dist/unstable/http/HttpClient.js.map +1 -1
  968. package/dist/unstable/http/HttpClientError.d.ts +68 -12
  969. package/dist/unstable/http/HttpClientError.d.ts.map +1 -1
  970. package/dist/unstable/http/HttpClientError.js +71 -9
  971. package/dist/unstable/http/HttpClientError.js.map +1 -1
  972. package/dist/unstable/http/HttpClientRequest.d.ts +318 -100
  973. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  974. package/dist/unstable/http/HttpClientRequest.js +151 -45
  975. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  976. package/dist/unstable/http/HttpClientResponse.d.ts +59 -16
  977. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  978. package/dist/unstable/http/HttpClientResponse.js +44 -11
  979. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  980. package/dist/unstable/http/HttpEffect.d.ts +42 -16
  981. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  982. package/dist/unstable/http/HttpEffect.js +33 -13
  983. package/dist/unstable/http/HttpEffect.js.map +1 -1
  984. package/dist/unstable/http/HttpIncomingMessage.d.ts +48 -7
  985. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  986. package/dist/unstable/http/HttpIncomingMessage.js +45 -6
  987. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  988. package/dist/unstable/http/HttpMethod.d.ts +38 -6
  989. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  990. package/dist/unstable/http/HttpMethod.js +27 -2
  991. package/dist/unstable/http/HttpMethod.js.map +1 -1
  992. package/dist/unstable/http/HttpMiddleware.d.ts +38 -11
  993. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  994. package/dist/unstable/http/HttpMiddleware.js +52 -10
  995. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  996. package/dist/unstable/http/HttpPlatform.d.ts +34 -3
  997. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  998. package/dist/unstable/http/HttpPlatform.js +34 -3
  999. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  1000. package/dist/unstable/http/HttpRouter.d.ts +209 -62
  1001. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  1002. package/dist/unstable/http/HttpRouter.js +136 -41
  1003. package/dist/unstable/http/HttpRouter.js.map +1 -1
  1004. package/dist/unstable/http/HttpServer.d.ts +151 -22
  1005. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  1006. package/dist/unstable/http/HttpServer.js +76 -11
  1007. package/dist/unstable/http/HttpServer.js.map +1 -1
  1008. package/dist/unstable/http/HttpServerError.d.ts +93 -10
  1009. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  1010. package/dist/unstable/http/HttpServerError.js +85 -8
  1011. package/dist/unstable/http/HttpServerError.js.map +1 -1
  1012. package/dist/unstable/http/HttpServerRequest.d.ts +125 -21
  1013. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  1014. package/dist/unstable/http/HttpServerRequest.js +101 -20
  1015. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  1016. package/dist/unstable/http/HttpServerRespondable.d.ts +32 -6
  1017. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  1018. package/dist/unstable/http/HttpServerRespondable.js +43 -5
  1019. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  1020. package/dist/unstable/http/HttpServerResponse.d.ts +391 -67
  1021. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  1022. package/dist/unstable/http/HttpServerResponse.js +205 -33
  1023. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  1024. package/dist/unstable/http/HttpStaticServer.d.ts +24 -8
  1025. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
  1026. package/dist/unstable/http/HttpStaticServer.js +24 -8
  1027. package/dist/unstable/http/HttpStaticServer.js.map +1 -1
  1028. package/dist/unstable/http/HttpTraceContext.d.ts +53 -6
  1029. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  1030. package/dist/unstable/http/HttpTraceContext.js +47 -5
  1031. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  1032. package/dist/unstable/http/Multipart.d.ts +179 -28
  1033. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  1034. package/dist/unstable/http/Multipart.js +131 -19
  1035. package/dist/unstable/http/Multipart.js.map +1 -1
  1036. package/dist/unstable/http/Multipasta/HeadersParser.d.ts +1 -1
  1037. package/dist/unstable/http/Multipasta/HeadersParser.js +1 -1
  1038. package/dist/unstable/http/Multipasta/Node.d.ts +1 -1
  1039. package/dist/unstable/http/Multipasta/Node.js +1 -1
  1040. package/dist/unstable/http/Multipasta/Search.d.ts +1 -1
  1041. package/dist/unstable/http/Multipasta/Search.js +1 -1
  1042. package/dist/unstable/http/Multipasta/Web.d.ts +1 -1
  1043. package/dist/unstable/http/Multipasta/Web.js +1 -1
  1044. package/dist/unstable/http/Multipasta.d.ts +1 -1
  1045. package/dist/unstable/http/Multipasta.js +1 -1
  1046. package/dist/unstable/http/Template.d.ts +53 -1
  1047. package/dist/unstable/http/Template.d.ts.map +1 -1
  1048. package/dist/unstable/http/Template.js +26 -0
  1049. package/dist/unstable/http/Template.js.map +1 -1
  1050. package/dist/unstable/http/Url.d.ts +70 -56
  1051. package/dist/unstable/http/Url.d.ts.map +1 -1
  1052. package/dist/unstable/http/Url.js +35 -21
  1053. package/dist/unstable/http/Url.js.map +1 -1
  1054. package/dist/unstable/http/UrlParams.d.ts +237 -51
  1055. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  1056. package/dist/unstable/http/UrlParams.js +120 -25
  1057. package/dist/unstable/http/UrlParams.js.map +1 -1
  1058. package/dist/unstable/http/index.d.ts +452 -0
  1059. package/dist/unstable/http/index.d.ts.map +1 -1
  1060. package/dist/unstable/http/index.js +452 -0
  1061. package/dist/unstable/http/index.js.map +1 -1
  1062. package/dist/unstable/httpapi/HttpApi.d.ts +49 -14
  1063. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  1064. package/dist/unstable/httpapi/HttpApi.js +14 -8
  1065. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  1066. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +54 -16
  1067. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  1068. package/dist/unstable/httpapi/HttpApiBuilder.js +44 -6
  1069. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  1070. package/dist/unstable/httpapi/HttpApiClient.d.ts +57 -15
  1071. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  1072. package/dist/unstable/httpapi/HttpApiClient.js +42 -6
  1073. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  1074. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +214 -59
  1075. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  1076. package/dist/unstable/httpapi/HttpApiEndpoint.js +53 -9
  1077. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  1078. package/dist/unstable/httpapi/HttpApiError.d.ts +81 -1
  1079. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  1080. package/dist/unstable/httpapi/HttpApiError.js +98 -1
  1081. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  1082. package/dist/unstable/httpapi/HttpApiGroup.d.ts +87 -20
  1083. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  1084. package/dist/unstable/httpapi/HttpApiGroup.js +5 -2
  1085. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  1086. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +113 -22
  1087. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  1088. package/dist/unstable/httpapi/HttpApiMiddleware.js +49 -5
  1089. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  1090. package/dist/unstable/httpapi/HttpApiScalar.d.ts +19 -4
  1091. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  1092. package/dist/unstable/httpapi/HttpApiScalar.js +32 -2
  1093. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  1094. package/dist/unstable/httpapi/HttpApiSchema.d.ts +86 -38
  1095. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  1096. package/dist/unstable/httpapi/HttpApiSchema.js +59 -35
  1097. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  1098. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +73 -17
  1099. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  1100. package/dist/unstable/httpapi/HttpApiSecurity.js +38 -5
  1101. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  1102. package/dist/unstable/httpapi/HttpApiSwagger.d.ts +4 -3
  1103. package/dist/unstable/httpapi/HttpApiSwagger.d.ts.map +1 -1
  1104. package/dist/unstable/httpapi/HttpApiSwagger.js +23 -3
  1105. package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
  1106. package/dist/unstable/httpapi/HttpApiTest.d.ts +6 -1
  1107. package/dist/unstable/httpapi/HttpApiTest.d.ts.map +1 -1
  1108. package/dist/unstable/httpapi/HttpApiTest.js +26 -1
  1109. package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
  1110. package/dist/unstable/httpapi/OpenApi.d.ts +86 -15
  1111. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  1112. package/dist/unstable/httpapi/OpenApi.js +73 -15
  1113. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  1114. package/dist/unstable/httpapi/index.d.ts +310 -25
  1115. package/dist/unstable/httpapi/index.d.ts.map +1 -1
  1116. package/dist/unstable/httpapi/index.js +310 -25
  1117. package/dist/unstable/httpapi/index.js.map +1 -1
  1118. package/dist/unstable/observability/Otlp.d.ts +33 -3
  1119. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  1120. package/dist/unstable/observability/Otlp.js +14 -3
  1121. package/dist/unstable/observability/Otlp.js.map +1 -1
  1122. package/dist/unstable/observability/OtlpExporter.d.ts +8 -1
  1123. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  1124. package/dist/unstable/observability/OtlpExporter.js +32 -1
  1125. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  1126. package/dist/unstable/observability/OtlpLogger.d.ts +15 -2
  1127. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  1128. package/dist/unstable/observability/OtlpLogger.js +29 -2
  1129. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  1130. package/dist/unstable/observability/OtlpMetrics.d.ts +17 -5
  1131. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  1132. package/dist/unstable/observability/OtlpMetrics.js +32 -2
  1133. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  1134. package/dist/unstable/observability/OtlpResource.d.ts +49 -12
  1135. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  1136. package/dist/unstable/observability/OtlpResource.js +47 -5
  1137. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  1138. package/dist/unstable/observability/OtlpSerialization.d.ts +28 -3
  1139. package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
  1140. package/dist/unstable/observability/OtlpSerialization.js +28 -3
  1141. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  1142. package/dist/unstable/observability/OtlpTracer.d.ts +19 -2
  1143. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  1144. package/dist/unstable/observability/OtlpTracer.js +32 -2
  1145. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  1146. package/dist/unstable/observability/PrometheusMetrics.d.ts +36 -16
  1147. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  1148. package/dist/unstable/observability/PrometheusMetrics.js +9 -7
  1149. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  1150. package/dist/unstable/observability/index.d.ts +160 -3
  1151. package/dist/unstable/observability/index.d.ts.map +1 -1
  1152. package/dist/unstable/observability/index.js +160 -3
  1153. package/dist/unstable/observability/index.js.map +1 -1
  1154. package/dist/unstable/persistence/KeyValueStore.d.ts +93 -18
  1155. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  1156. package/dist/unstable/persistence/KeyValueStore.js +81 -21
  1157. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  1158. package/dist/unstable/persistence/Persistable.d.ts +76 -15
  1159. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  1160. package/dist/unstable/persistence/Persistable.js +22 -5
  1161. package/dist/unstable/persistence/Persistable.js.map +1 -1
  1162. package/dist/unstable/persistence/PersistedCache.d.ts +27 -2
  1163. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  1164. package/dist/unstable/persistence/PersistedCache.js +24 -1
  1165. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  1166. package/dist/unstable/persistence/PersistedQueue.d.ts +73 -16
  1167. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  1168. package/dist/unstable/persistence/PersistedQueue.js +60 -13
  1169. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  1170. package/dist/unstable/persistence/Persistence.d.ts +98 -16
  1171. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  1172. package/dist/unstable/persistence/Persistence.js +91 -14
  1173. package/dist/unstable/persistence/Persistence.js.map +1 -1
  1174. package/dist/unstable/persistence/RateLimiter.d.ts +101 -21
  1175. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  1176. package/dist/unstable/persistence/RateLimiter.js +85 -16
  1177. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  1178. package/dist/unstable/persistence/Redis.d.ts +26 -5
  1179. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  1180. package/dist/unstable/persistence/Redis.js +36 -4
  1181. package/dist/unstable/persistence/Redis.js.map +1 -1
  1182. package/dist/unstable/persistence/index.d.ts +147 -0
  1183. package/dist/unstable/persistence/index.d.ts.map +1 -1
  1184. package/dist/unstable/persistence/index.js +147 -0
  1185. package/dist/unstable/persistence/index.js.map +1 -1
  1186. package/dist/unstable/process/ChildProcess.d.ts +87 -64
  1187. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1188. package/dist/unstable/process/ChildProcess.js +25 -18
  1189. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1190. package/dist/unstable/process/ChildProcessSpawner.d.ts +23 -12
  1191. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1192. package/dist/unstable/process/ChildProcessSpawner.js +11 -6
  1193. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1194. package/dist/unstable/process/index.d.ts +2 -1
  1195. package/dist/unstable/process/index.d.ts.map +1 -1
  1196. package/dist/unstable/process/index.js +2 -1
  1197. package/dist/unstable/process/index.js.map +1 -1
  1198. package/dist/unstable/reactivity/AsyncResult.d.ts +198 -59
  1199. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  1200. package/dist/unstable/reactivity/AsyncResult.js +121 -36
  1201. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1202. package/dist/unstable/reactivity/Atom.d.ts +544 -130
  1203. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1204. package/dist/unstable/reactivity/Atom.js +252 -58
  1205. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1206. package/dist/unstable/reactivity/AtomHttpApi.d.ts +41 -2
  1207. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1208. package/dist/unstable/reactivity/AtomHttpApi.js +35 -1
  1209. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1210. package/dist/unstable/reactivity/AtomRef.d.ts +51 -7
  1211. package/dist/unstable/reactivity/AtomRef.d.ts.map +1 -1
  1212. package/dist/unstable/reactivity/AtomRef.js +29 -3
  1213. package/dist/unstable/reactivity/AtomRef.js.map +1 -1
  1214. package/dist/unstable/reactivity/AtomRegistry.d.ts +135 -21
  1215. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  1216. package/dist/unstable/reactivity/AtomRegistry.js +69 -10
  1217. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1218. package/dist/unstable/reactivity/AtomRpc.d.ts +36 -2
  1219. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1220. package/dist/unstable/reactivity/AtomRpc.js +29 -1
  1221. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1222. package/dist/unstable/reactivity/Hydration.d.ts +28 -5
  1223. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -1
  1224. package/dist/unstable/reactivity/Hydration.js +35 -3
  1225. package/dist/unstable/reactivity/Hydration.js.map +1 -1
  1226. package/dist/unstable/reactivity/Reactivity.d.ts +94 -13
  1227. package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
  1228. package/dist/unstable/reactivity/Reactivity.js +60 -7
  1229. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1230. package/dist/unstable/reactivity/index.d.ts +167 -0
  1231. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  1232. package/dist/unstable/reactivity/index.js +167 -0
  1233. package/dist/unstable/reactivity/index.js.map +1 -1
  1234. package/dist/unstable/rpc/Rpc.d.ts +254 -56
  1235. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1236. package/dist/unstable/rpc/Rpc.js +44 -11
  1237. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1238. package/dist/unstable/rpc/RpcClient.d.ts +80 -19
  1239. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1240. package/dist/unstable/rpc/RpcClient.js +52 -12
  1241. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1242. package/dist/unstable/rpc/RpcClientError.d.ts +26 -2
  1243. package/dist/unstable/rpc/RpcClientError.d.ts.map +1 -1
  1244. package/dist/unstable/rpc/RpcClientError.js +26 -2
  1245. package/dist/unstable/rpc/RpcClientError.js.map +1 -1
  1246. package/dist/unstable/rpc/RpcGroup.d.ts +51 -8
  1247. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  1248. package/dist/unstable/rpc/RpcGroup.js +3 -1
  1249. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1250. package/dist/unstable/rpc/RpcMessage.d.ts +128 -32
  1251. package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
  1252. package/dist/unstable/rpc/RpcMessage.js +23 -7
  1253. package/dist/unstable/rpc/RpcMessage.js.map +1 -1
  1254. package/dist/unstable/rpc/RpcMiddleware.d.ts +100 -20
  1255. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  1256. package/dist/unstable/rpc/RpcMiddleware.js +39 -3
  1257. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1258. package/dist/unstable/rpc/RpcSchema.d.ts +38 -4
  1259. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  1260. package/dist/unstable/rpc/RpcSchema.js +34 -3
  1261. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1262. package/dist/unstable/rpc/RpcSerialization.d.ts +60 -13
  1263. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1264. package/dist/unstable/rpc/RpcSerialization.js +56 -12
  1265. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1266. package/dist/unstable/rpc/RpcServer.d.ts +73 -23
  1267. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  1268. package/dist/unstable/rpc/RpcServer.js +69 -22
  1269. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1270. package/dist/unstable/rpc/RpcTest.d.ts +20 -1
  1271. package/dist/unstable/rpc/RpcTest.d.ts.map +1 -1
  1272. package/dist/unstable/rpc/RpcTest.js +20 -1
  1273. package/dist/unstable/rpc/RpcTest.js.map +1 -1
  1274. package/dist/unstable/rpc/RpcWorker.d.ts +39 -6
  1275. package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
  1276. package/dist/unstable/rpc/RpcWorker.js +16 -4
  1277. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1278. package/dist/unstable/rpc/Utils.d.ts +10 -0
  1279. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  1280. package/dist/unstable/rpc/Utils.js +10 -0
  1281. package/dist/unstable/rpc/Utils.js.map +1 -1
  1282. package/dist/unstable/rpc/index.d.ts +272 -0
  1283. package/dist/unstable/rpc/index.d.ts.map +1 -1
  1284. package/dist/unstable/rpc/index.js +272 -0
  1285. package/dist/unstable/rpc/index.js.map +1 -1
  1286. package/dist/unstable/schema/Model.d.ts +192 -59
  1287. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1288. package/dist/unstable/schema/Model.js +122 -38
  1289. package/dist/unstable/schema/Model.js.map +1 -1
  1290. package/dist/unstable/schema/VariantSchema.d.ts +101 -24
  1291. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  1292. package/dist/unstable/schema/VariantSchema.js +22 -6
  1293. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1294. package/dist/unstable/schema/index.d.ts +37 -0
  1295. package/dist/unstable/schema/index.d.ts.map +1 -1
  1296. package/dist/unstable/schema/index.js +37 -0
  1297. package/dist/unstable/schema/index.js.map +1 -1
  1298. package/dist/unstable/socket/Socket.d.ts +168 -34
  1299. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1300. package/dist/unstable/socket/Socket.js +124 -28
  1301. package/dist/unstable/socket/Socket.js.map +1 -1
  1302. package/dist/unstable/socket/SocketServer.d.ts +58 -10
  1303. package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
  1304. package/dist/unstable/socket/SocketServer.js +43 -5
  1305. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1306. package/dist/unstable/socket/index.d.ts +44 -0
  1307. package/dist/unstable/socket/index.d.ts.map +1 -1
  1308. package/dist/unstable/socket/index.js +44 -0
  1309. package/dist/unstable/socket/index.js.map +1 -1
  1310. package/dist/unstable/sql/Migrator.d.ts +40 -9
  1311. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  1312. package/dist/unstable/sql/Migrator.js +45 -5
  1313. package/dist/unstable/sql/Migrator.js.map +1 -1
  1314. package/dist/unstable/sql/SqlClient.d.ts +38 -2
  1315. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1316. package/dist/unstable/sql/SqlClient.js +40 -1
  1317. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1318. package/dist/unstable/sql/SqlConnection.d.ts +34 -3
  1319. package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
  1320. package/dist/unstable/sql/SqlConnection.js +22 -0
  1321. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1322. package/dist/unstable/sql/SqlError.d.ts +117 -0
  1323. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  1324. package/dist/unstable/sql/SqlError.js +131 -0
  1325. package/dist/unstable/sql/SqlError.js.map +1 -1
  1326. package/dist/unstable/sql/SqlModel.d.ts +25 -5
  1327. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  1328. package/dist/unstable/sql/SqlModel.js +8 -4
  1329. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1330. package/dist/unstable/sql/SqlResolver.d.ts +56 -13
  1331. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  1332. package/dist/unstable/sql/SqlResolver.js +44 -10
  1333. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1334. package/dist/unstable/sql/SqlSchema.d.ts +29 -8
  1335. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  1336. package/dist/unstable/sql/SqlSchema.js +29 -8
  1337. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1338. package/dist/unstable/sql/SqlStream.d.ts +4 -0
  1339. package/dist/unstable/sql/SqlStream.d.ts.map +1 -1
  1340. package/dist/unstable/sql/SqlStream.js +24 -0
  1341. package/dist/unstable/sql/SqlStream.js.map +1 -1
  1342. package/dist/unstable/sql/Statement.d.ts +151 -24
  1343. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  1344. package/dist/unstable/sql/Statement.js +91 -6
  1345. package/dist/unstable/sql/Statement.js.map +1 -1
  1346. package/dist/unstable/sql/index.d.ts +179 -1
  1347. package/dist/unstable/sql/index.d.ts.map +1 -1
  1348. package/dist/unstable/sql/index.js +179 -1
  1349. package/dist/unstable/sql/index.js.map +1 -1
  1350. package/dist/unstable/workers/Transferable.d.ts +72 -20
  1351. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  1352. package/dist/unstable/workers/Transferable.js +57 -14
  1353. package/dist/unstable/workers/Transferable.js.map +1 -1
  1354. package/dist/unstable/workers/Worker.d.ts +61 -8
  1355. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  1356. package/dist/unstable/workers/Worker.js +44 -4
  1357. package/dist/unstable/workers/Worker.js.map +1 -1
  1358. package/dist/unstable/workers/WorkerError.d.ts +31 -9
  1359. package/dist/unstable/workers/WorkerError.d.ts.map +1 -1
  1360. package/dist/unstable/workers/WorkerError.js +44 -7
  1361. package/dist/unstable/workers/WorkerError.js.map +1 -1
  1362. package/dist/unstable/workers/WorkerRunner.d.ts +32 -3
  1363. package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
  1364. package/dist/unstable/workers/WorkerRunner.js +24 -1
  1365. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1366. package/dist/unstable/workers/index.d.ts +81 -1
  1367. package/dist/unstable/workers/index.d.ts.map +1 -1
  1368. package/dist/unstable/workers/index.js +81 -1
  1369. package/dist/unstable/workers/index.js.map +1 -1
  1370. package/dist/unstable/workflow/Activity.d.ts +61 -10
  1371. package/dist/unstable/workflow/Activity.d.ts.map +1 -1
  1372. package/dist/unstable/workflow/Activity.js +20 -5
  1373. package/dist/unstable/workflow/Activity.js.map +1 -1
  1374. package/dist/unstable/workflow/DurableClock.d.ts +12 -3
  1375. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  1376. package/dist/unstable/workflow/DurableClock.js +22 -2
  1377. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1378. package/dist/unstable/workflow/DurableDeferred.d.ts +128 -31
  1379. package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
  1380. package/dist/unstable/workflow/DurableDeferred.js +77 -13
  1381. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1382. package/dist/unstable/workflow/DurableQueue.d.ts +33 -8
  1383. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  1384. package/dist/unstable/workflow/DurableQueue.js +26 -6
  1385. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  1386. package/dist/unstable/workflow/Workflow.d.ts +102 -31
  1387. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1388. package/dist/unstable/workflow/Workflow.js +75 -19
  1389. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1390. package/dist/unstable/workflow/WorkflowEngine.d.ts +40 -5
  1391. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  1392. package/dist/unstable/workflow/WorkflowEngine.js +16 -4
  1393. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1394. package/dist/unstable/workflow/WorkflowProxy.d.ts +40 -12
  1395. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  1396. package/dist/unstable/workflow/WorkflowProxy.js +8 -12
  1397. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  1398. package/dist/unstable/workflow/WorkflowProxyServer.d.ts +37 -2
  1399. package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
  1400. package/dist/unstable/workflow/WorkflowProxyServer.js +12 -6
  1401. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1402. package/dist/unstable/workflow/index.d.ts +160 -0
  1403. package/dist/unstable/workflow/index.d.ts.map +1 -1
  1404. package/dist/unstable/workflow/index.js +160 -0
  1405. package/dist/unstable/workflow/index.js.map +1 -1
  1406. package/package.json +11 -11
  1407. package/src/Array.ts +151 -106
  1408. package/src/BigDecimal.ts +620 -553
  1409. package/src/BigInt.ts +342 -274
  1410. package/src/Boolean.ts +189 -156
  1411. package/src/Brand.ts +30 -5
  1412. package/src/Cache.ts +334 -167
  1413. package/src/Cause.ts +84 -73
  1414. package/src/Channel.ts +1639 -667
  1415. package/src/ChannelSchema.ts +137 -12
  1416. package/src/Chunk.ts +575 -429
  1417. package/src/Clock.ts +16 -9
  1418. package/src/Combiner.ts +11 -5
  1419. package/src/Config.ts +80 -68
  1420. package/src/ConfigProvider.ts +33 -32
  1421. package/src/Console.ts +88 -58
  1422. package/src/Context.ts +401 -190
  1423. package/src/Cron.ts +109 -48
  1424. package/src/Crypto.ts +327 -0
  1425. package/src/Data.ts +9 -3
  1426. package/src/DateTime.ts +893 -464
  1427. package/src/Deferred.ts +367 -175
  1428. package/src/Differ.ts +44 -2
  1429. package/src/Duration.ts +333 -186
  1430. package/src/Effect.ts +2201 -2289
  1431. package/src/Effectable.ts +38 -3
  1432. package/src/Encoding.ts +78 -28
  1433. package/src/Equal.ts +4 -3
  1434. package/src/Equivalence.ts +18 -24
  1435. package/src/ErrorReporter.ts +66 -82
  1436. package/src/ExecutionPlan.ts +106 -12
  1437. package/src/Exit.ts +6 -5
  1438. package/src/Fiber.ts +71 -40
  1439. package/src/FiberHandle.ts +157 -57
  1440. package/src/FiberMap.ts +328 -163
  1441. package/src/FiberSet.ts +130 -52
  1442. package/src/FileSystem.ts +104 -74
  1443. package/src/Filter.ts +166 -88
  1444. package/src/Formatter.ts +4 -70
  1445. package/src/Function.ts +218 -151
  1446. package/src/Graph.ts +714 -415
  1447. package/src/HKT.ts +29 -13
  1448. package/src/Hash.ts +35 -24
  1449. package/src/HashMap.ts +540 -388
  1450. package/src/HashRing.ts +111 -34
  1451. package/src/HashSet.ts +239 -153
  1452. package/src/Inspectable.ts +30 -17
  1453. package/src/Iterable.ts +336 -222
  1454. package/src/JsonPatch.ts +13 -10
  1455. package/src/JsonPointer.ts +13 -11
  1456. package/src/JsonSchema.ts +16 -0
  1457. package/src/Latch.ts +97 -26
  1458. package/src/Layer.ts +547 -445
  1459. package/src/LayerMap.ts +99 -26
  1460. package/src/LogLevel.ts +92 -131
  1461. package/src/Logger.ts +365 -297
  1462. package/src/ManagedRuntime.ts +78 -19
  1463. package/src/Match.ts +135 -161
  1464. package/src/Metric.ts +362 -313
  1465. package/src/MutableHashMap.ts +202 -127
  1466. package/src/MutableHashSet.ts +120 -52
  1467. package/src/MutableList.ts +157 -100
  1468. package/src/MutableRef.ts +129 -90
  1469. package/src/Newtype.ts +15 -2
  1470. package/src/NonEmptyIterable.ts +38 -48
  1471. package/src/Number.ts +261 -205
  1472. package/src/Optic.ts +6 -7
  1473. package/src/Option.ts +133 -156
  1474. package/src/Order.ts +6 -6
  1475. package/src/Ordering.ts +56 -45
  1476. package/src/PartitionedSemaphore.ts +225 -40
  1477. package/src/Path.ts +77 -13
  1478. package/src/Pipeable.ts +82 -24
  1479. package/src/PlatformError.ts +74 -6
  1480. package/src/Pool.ts +94 -31
  1481. package/src/Predicate.ts +17 -24
  1482. package/src/PrimaryKey.ts +11 -3
  1483. package/src/PubSub.ts +385 -309
  1484. package/src/Pull.ts +94 -25
  1485. package/src/Queue.ts +303 -184
  1486. package/src/Random.ts +69 -93
  1487. package/src/RcMap.ts +151 -141
  1488. package/src/RcRef.ts +68 -32
  1489. package/src/Record.ts +282 -137
  1490. package/src/Redactable.ts +7 -5
  1491. package/src/Redacted.ts +63 -34
  1492. package/src/Reducer.ts +3 -1
  1493. package/src/Ref.ts +173 -134
  1494. package/src/References.ts +73 -31
  1495. package/src/RegExp.ts +12 -6
  1496. package/src/Request.ts +159 -34
  1497. package/src/RequestResolver.ts +278 -121
  1498. package/src/Resource.ts +45 -7
  1499. package/src/Result.ts +137 -153
  1500. package/src/Runtime.ts +42 -21
  1501. package/src/Schedule.ts +585 -613
  1502. package/src/Scheduler.ts +44 -7
  1503. package/src/Schema.ts +1309 -615
  1504. package/src/SchemaAST.ts +123 -93
  1505. package/src/SchemaGetter.ts +52 -37
  1506. package/src/SchemaIssue.ts +19 -24
  1507. package/src/SchemaParser.ts +306 -85
  1508. package/src/SchemaRepresentation.ts +89 -77
  1509. package/src/SchemaTransformation.ts +97 -46
  1510. package/src/SchemaUtils.ts +24 -1
  1511. package/src/Scope.ts +107 -65
  1512. package/src/ScopedCache.ts +195 -59
  1513. package/src/ScopedRef.ts +28 -8
  1514. package/src/Semaphore.ts +61 -37
  1515. package/src/Sink.ts +461 -206
  1516. package/src/Stdio.ts +43 -6
  1517. package/src/Stream.ts +2361 -1613
  1518. package/src/String.ts +174 -97
  1519. package/src/Struct.ts +20 -18
  1520. package/src/SubscriptionRef.ts +309 -204
  1521. package/src/Symbol.ts +13 -5
  1522. package/src/SynchronizedRef.ts +278 -62
  1523. package/src/Take.ts +26 -2
  1524. package/src/Terminal.ts +40 -7
  1525. package/src/Tracer.ts +233 -59
  1526. package/src/Trie.ts +280 -245
  1527. package/src/Tuple.ts +34 -32
  1528. package/src/TxChunk.ts +200 -155
  1529. package/src/TxDeferred.ts +43 -29
  1530. package/src/TxHashMap.ts +370 -231
  1531. package/src/TxHashSet.ts +253 -159
  1532. package/src/TxPriorityQueue.ts +97 -65
  1533. package/src/TxPubSub.ts +77 -49
  1534. package/src/TxQueue.ts +277 -242
  1535. package/src/TxReentrantLock.ts +70 -47
  1536. package/src/TxRef.ts +69 -40
  1537. package/src/TxSemaphore.ts +101 -115
  1538. package/src/TxSubscriptionRef.ts +74 -50
  1539. package/src/Types.ts +31 -34
  1540. package/src/UndefinedOr.ts +62 -25
  1541. package/src/Unify.ts +72 -117
  1542. package/src/Utils.ts +5 -2
  1543. package/src/index.ts +1976 -420
  1544. package/src/internal/schema/schema.ts +1 -1
  1545. package/src/testing/FastCheck.ts +9 -6
  1546. package/src/testing/TestClock.ts +63 -35
  1547. package/src/testing/TestConsole.ts +54 -36
  1548. package/src/testing/TestSchema.ts +10 -8
  1549. package/src/testing/index.ts +34 -0
  1550. package/src/unstable/ai/AiError.ts +195 -137
  1551. package/src/unstable/ai/AnthropicStructuredOutput.ts +2 -2
  1552. package/src/unstable/ai/Chat.ts +68 -43
  1553. package/src/unstable/ai/EmbeddingModel.ts +12 -11
  1554. package/src/unstable/ai/IdGenerator.ts +28 -18
  1555. package/src/unstable/ai/LanguageModel.ts +35 -27
  1556. package/src/unstable/ai/McpSchema.ts +342 -119
  1557. package/src/unstable/ai/McpServer.ts +79 -20
  1558. package/src/unstable/ai/Model.ts +10 -12
  1559. package/src/unstable/ai/OpenAiStructuredOutput.ts +2 -2
  1560. package/src/unstable/ai/Prompt.ts +216 -192
  1561. package/src/unstable/ai/Response.ts +179 -167
  1562. package/src/unstable/ai/ResponseIdTracker.ts +43 -4
  1563. package/src/unstable/ai/Telemetry.ts +43 -33
  1564. package/src/unstable/ai/Tokenizer.ts +14 -9
  1565. package/src/unstable/ai/Tool.ts +168 -97
  1566. package/src/unstable/ai/Toolkit.ts +51 -46
  1567. package/src/unstable/ai/index.ts +121 -29
  1568. package/src/unstable/cli/Argument.ts +226 -134
  1569. package/src/unstable/cli/CliError.ts +96 -26
  1570. package/src/unstable/cli/CliOutput.ts +48 -19
  1571. package/src/unstable/cli/Command.ts +196 -115
  1572. package/src/unstable/cli/Completions.ts +7 -7
  1573. package/src/unstable/cli/Flag.ts +235 -142
  1574. package/src/unstable/cli/GlobalFlag.ts +41 -13
  1575. package/src/unstable/cli/HelpDoc.ts +39 -14
  1576. package/src/unstable/cli/Param.ts +395 -260
  1577. package/src/unstable/cli/Primitive.ts +79 -42
  1578. package/src/unstable/cli/Prompt.ts +207 -59
  1579. package/src/unstable/cli/index.ts +205 -6
  1580. package/src/unstable/cli/internal/ansi.ts +13 -0
  1581. package/src/unstable/cli/internal/command.ts +5 -1
  1582. package/src/unstable/cli/internal/config.ts +3 -0
  1583. package/src/unstable/cli/internal/lexer.ts +11 -0
  1584. package/src/unstable/cli/internal/parser.ts +0 -1
  1585. package/src/unstable/cluster/ClusterCron.ts +35 -1
  1586. package/src/unstable/cluster/ClusterError.ts +56 -7
  1587. package/src/unstable/cluster/ClusterMetrics.ts +39 -5
  1588. package/src/unstable/cluster/ClusterSchema.ts +61 -8
  1589. package/src/unstable/cluster/ClusterWorkflowEngine.ts +35 -2
  1590. package/src/unstable/cluster/DeliverAt.ts +39 -4
  1591. package/src/unstable/cluster/Entity.ts +106 -16
  1592. package/src/unstable/cluster/EntityAddress.ts +30 -2
  1593. package/src/unstable/cluster/EntityId.ts +18 -3
  1594. package/src/unstable/cluster/EntityProxy.ts +42 -14
  1595. package/src/unstable/cluster/EntityProxyServer.ts +45 -8
  1596. package/src/unstable/cluster/EntityResource.ts +43 -6
  1597. package/src/unstable/cluster/EntityType.ts +27 -3
  1598. package/src/unstable/cluster/Envelope.ts +128 -23
  1599. package/src/unstable/cluster/HttpRunner.ts +88 -13
  1600. package/src/unstable/cluster/K8sHttpClient.ts +49 -6
  1601. package/src/unstable/cluster/MachineId.ts +24 -3
  1602. package/src/unstable/cluster/Message.ts +102 -13
  1603. package/src/unstable/cluster/MessageStorage.ts +126 -21
  1604. package/src/unstable/cluster/Reply.ts +101 -12
  1605. package/src/unstable/cluster/Runner.ts +47 -17
  1606. package/src/unstable/cluster/RunnerAddress.ts +34 -2
  1607. package/src/unstable/cluster/RunnerHealth.ts +40 -12
  1608. package/src/unstable/cluster/RunnerServer.ts +31 -4
  1609. package/src/unstable/cluster/RunnerStorage.ts +42 -5
  1610. package/src/unstable/cluster/Runners.ts +76 -13
  1611. package/src/unstable/cluster/ShardId.ts +53 -5
  1612. package/src/unstable/cluster/Sharding.ts +35 -4
  1613. package/src/unstable/cluster/ShardingConfig.ts +75 -10
  1614. package/src/unstable/cluster/ShardingRegistrationEvent.ts +31 -7
  1615. package/src/unstable/cluster/SingleRunner.ts +23 -1
  1616. package/src/unstable/cluster/Singleton.ts +15 -1
  1617. package/src/unstable/cluster/SingletonAddress.ts +21 -1
  1618. package/src/unstable/cluster/Snowflake.ts +90 -19
  1619. package/src/unstable/cluster/SocketRunner.ts +29 -2
  1620. package/src/unstable/cluster/SqlMessageStorage.ts +27 -3
  1621. package/src/unstable/cluster/SqlRunnerStorage.ts +46 -7
  1622. package/src/unstable/cluster/TestRunner.ts +18 -1
  1623. package/src/unstable/cluster/index.ts +790 -0
  1624. package/src/unstable/cluster/internal/hash.ts +12 -0
  1625. package/src/unstable/devtools/DevTools.ts +26 -3
  1626. package/src/unstable/devtools/DevToolsClient.ts +32 -5
  1627. package/src/unstable/devtools/DevToolsSchema.ts +201 -44
  1628. package/src/unstable/devtools/DevToolsServer.ts +27 -2
  1629. package/src/unstable/devtools/index.ts +58 -0
  1630. package/src/unstable/encoding/Msgpack.ts +97 -12
  1631. package/src/unstable/encoding/Ndjson.ts +149 -21
  1632. package/src/unstable/encoding/Sse.ts +109 -18
  1633. package/src/unstable/encoding/index.ts +49 -0
  1634. package/src/unstable/eventlog/Event.ts +131 -30
  1635. package/src/unstable/eventlog/EventGroup.ts +50 -17
  1636. package/src/unstable/eventlog/EventJournal.ts +120 -20
  1637. package/src/unstable/eventlog/EventLog.ts +150 -31
  1638. package/src/unstable/eventlog/EventLogEncryption.ts +42 -6
  1639. package/src/unstable/eventlog/EventLogMessage.ts +92 -18
  1640. package/src/unstable/eventlog/EventLogRemote.ts +54 -8
  1641. package/src/unstable/eventlog/EventLogServer.ts +33 -3
  1642. package/src/unstable/eventlog/EventLogServerEncrypted.ts +52 -6
  1643. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +90 -16
  1644. package/src/unstable/eventlog/EventLogSessionAuth.ts +77 -15
  1645. package/src/unstable/eventlog/SqlEventJournal.ts +28 -2
  1646. package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +32 -3
  1647. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +28 -2
  1648. package/src/unstable/eventlog/index.ts +240 -0
  1649. package/src/unstable/http/Cookies.ts +156 -77
  1650. package/src/unstable/http/Etag.ts +40 -7
  1651. package/src/unstable/http/FetchHttpClient.ts +33 -4
  1652. package/src/unstable/http/FindMyWay.ts +1 -1
  1653. package/src/unstable/http/Headers.ts +252 -50
  1654. package/src/unstable/http/HttpBody.ts +128 -26
  1655. package/src/unstable/http/HttpClient.ts +204 -96
  1656. package/src/unstable/http/HttpClientError.ts +80 -12
  1657. package/src/unstable/http/HttpClientRequest.ts +318 -100
  1658. package/src/unstable/http/HttpClientResponse.ts +59 -16
  1659. package/src/unstable/http/HttpEffect.ts +66 -18
  1660. package/src/unstable/http/HttpIncomingMessage.ts +48 -7
  1661. package/src/unstable/http/HttpMethod.ts +38 -6
  1662. package/src/unstable/http/HttpMiddleware.ts +60 -11
  1663. package/src/unstable/http/HttpPlatform.ts +34 -3
  1664. package/src/unstable/http/HttpRouter.ts +232 -69
  1665. package/src/unstable/http/HttpServer.ts +151 -22
  1666. package/src/unstable/http/HttpServerError.ts +93 -10
  1667. package/src/unstable/http/HttpServerRequest.ts +125 -21
  1668. package/src/unstable/http/HttpServerRespondable.ts +49 -6
  1669. package/src/unstable/http/HttpServerResponse.ts +391 -67
  1670. package/src/unstable/http/HttpStaticServer.ts +24 -8
  1671. package/src/unstable/http/HttpTraceContext.ts +53 -6
  1672. package/src/unstable/http/Multipart.ts +179 -28
  1673. package/src/unstable/http/Multipasta/HeadersParser.ts +1 -1
  1674. package/src/unstable/http/Multipasta/Node.ts +1 -1
  1675. package/src/unstable/http/Multipasta/Search.ts +1 -1
  1676. package/src/unstable/http/Multipasta/Web.ts +1 -1
  1677. package/src/unstable/http/Multipasta.ts +1 -1
  1678. package/src/unstable/http/Template.ts +53 -1
  1679. package/src/unstable/http/Url.ts +70 -56
  1680. package/src/unstable/http/UrlParams.ts +237 -51
  1681. package/src/unstable/http/index.ts +452 -0
  1682. package/src/unstable/httpapi/HttpApi.ts +49 -14
  1683. package/src/unstable/httpapi/HttpApiBuilder.ts +81 -16
  1684. package/src/unstable/httpapi/HttpApiClient.ts +78 -15
  1685. package/src/unstable/httpapi/HttpApiEndpoint.ts +238 -59
  1686. package/src/unstable/httpapi/HttpApiError.ts +100 -1
  1687. package/src/unstable/httpapi/HttpApiGroup.ts +87 -20
  1688. package/src/unstable/httpapi/HttpApiMiddleware.ts +113 -22
  1689. package/src/unstable/httpapi/HttpApiScalar.ts +38 -4
  1690. package/src/unstable/httpapi/HttpApiSchema.ts +86 -38
  1691. package/src/unstable/httpapi/HttpApiSecurity.ts +73 -17
  1692. package/src/unstable/httpapi/HttpApiSwagger.ts +23 -3
  1693. package/src/unstable/httpapi/HttpApiTest.ts +26 -1
  1694. package/src/unstable/httpapi/OpenApi.ts +115 -15
  1695. package/src/unstable/httpapi/index.ts +310 -25
  1696. package/src/unstable/observability/Otlp.ts +33 -3
  1697. package/src/unstable/observability/OtlpExporter.ts +32 -1
  1698. package/src/unstable/observability/OtlpLogger.ts +32 -2
  1699. package/src/unstable/observability/OtlpMetrics.ts +39 -5
  1700. package/src/unstable/observability/OtlpResource.ts +68 -12
  1701. package/src/unstable/observability/OtlpSerialization.ts +28 -3
  1702. package/src/unstable/observability/OtlpTracer.ts +41 -2
  1703. package/src/unstable/observability/PrometheusMetrics.ts +36 -16
  1704. package/src/unstable/observability/index.ts +160 -3
  1705. package/src/unstable/persistence/KeyValueStore.ts +108 -28
  1706. package/src/unstable/persistence/Persistable.ts +76 -15
  1707. package/src/unstable/persistence/PersistedCache.ts +27 -2
  1708. package/src/unstable/persistence/PersistedQueue.ts +98 -16
  1709. package/src/unstable/persistence/Persistence.ts +98 -16
  1710. package/src/unstable/persistence/RateLimiter.ts +101 -21
  1711. package/src/unstable/persistence/Redis.ts +42 -5
  1712. package/src/unstable/persistence/index.ts +147 -0
  1713. package/src/unstable/process/ChildProcess.ts +90 -66
  1714. package/src/unstable/process/ChildProcessSpawner.ts +23 -12
  1715. package/src/unstable/process/index.ts +2 -1
  1716. package/src/unstable/reactivity/AsyncResult.ts +204 -61
  1717. package/src/unstable/reactivity/Atom.ts +598 -139
  1718. package/src/unstable/reactivity/AtomHttpApi.ts +41 -2
  1719. package/src/unstable/reactivity/AtomRef.ts +51 -7
  1720. package/src/unstable/reactivity/AtomRegistry.ts +141 -22
  1721. package/src/unstable/reactivity/AtomRpc.ts +36 -2
  1722. package/src/unstable/reactivity/Hydration.ts +45 -5
  1723. package/src/unstable/reactivity/Reactivity.ts +94 -13
  1724. package/src/unstable/reactivity/index.ts +167 -0
  1725. package/src/unstable/rpc/Rpc.ts +254 -56
  1726. package/src/unstable/rpc/RpcClient.ts +106 -19
  1727. package/src/unstable/rpc/RpcClientError.ts +26 -2
  1728. package/src/unstable/rpc/RpcGroup.ts +51 -8
  1729. package/src/unstable/rpc/RpcMessage.ts +128 -32
  1730. package/src/unstable/rpc/RpcMiddleware.ts +100 -20
  1731. package/src/unstable/rpc/RpcSchema.ts +38 -4
  1732. package/src/unstable/rpc/RpcSerialization.ts +60 -13
  1733. package/src/unstable/rpc/RpcServer.ts +107 -23
  1734. package/src/unstable/rpc/RpcTest.ts +20 -1
  1735. package/src/unstable/rpc/RpcWorker.ts +39 -6
  1736. package/src/unstable/rpc/Utils.ts +33 -0
  1737. package/src/unstable/rpc/index.ts +272 -0
  1738. package/src/unstable/schema/Model.ts +245 -61
  1739. package/src/unstable/schema/VariantSchema.ts +101 -24
  1740. package/src/unstable/schema/index.ts +37 -0
  1741. package/src/unstable/socket/Socket.ts +168 -34
  1742. package/src/unstable/socket/SocketServer.ts +58 -10
  1743. package/src/unstable/socket/index.ts +44 -0
  1744. package/src/unstable/sql/Migrator.ts +61 -9
  1745. package/src/unstable/sql/SqlClient.ts +59 -2
  1746. package/src/unstable/sql/SqlConnection.ts +34 -3
  1747. package/src/unstable/sql/SqlError.ts +135 -0
  1748. package/src/unstable/sql/SqlModel.ts +25 -5
  1749. package/src/unstable/sql/SqlResolver.ts +56 -13
  1750. package/src/unstable/sql/SqlSchema.ts +29 -8
  1751. package/src/unstable/sql/SqlStream.ts +24 -0
  1752. package/src/unstable/sql/Statement.ts +168 -24
  1753. package/src/unstable/sql/index.ts +179 -1
  1754. package/src/unstable/workers/Transferable.ts +72 -20
  1755. package/src/unstable/workers/Worker.ts +61 -8
  1756. package/src/unstable/workers/WorkerError.ts +50 -9
  1757. package/src/unstable/workers/WorkerRunner.ts +32 -3
  1758. package/src/unstable/workers/index.ts +81 -1
  1759. package/src/unstable/workflow/Activity.ts +61 -10
  1760. package/src/unstable/workflow/DurableClock.ts +26 -3
  1761. package/src/unstable/workflow/DurableDeferred.ts +148 -31
  1762. package/src/unstable/workflow/DurableQueue.ts +33 -8
  1763. package/src/unstable/workflow/Workflow.ts +123 -31
  1764. package/src/unstable/workflow/WorkflowEngine.ts +40 -5
  1765. package/src/unstable/workflow/WorkflowProxy.ts +40 -12
  1766. package/src/unstable/workflow/WorkflowProxyServer.ts +41 -6
  1767. package/src/unstable/workflow/index.ts +160 -0
package/dist/Layer.d.ts CHANGED
@@ -39,8 +39,8 @@ declare const TypeId = "~effect/Layer";
39
39
  * - E: The possible errors during layer construction
40
40
  * - RIn: The services this layer requires as dependencies
41
41
  *
42
- * @since 2.0.0
43
42
  * @category models
43
+ * @since 2.0.0
44
44
  */
45
45
  export interface Layer<in ROut, out E = never, out RIn = never> extends Variance<ROut, E, RIn>, Pipeable {
46
46
  [Unify.typeSymbol]?: unknown;
@@ -48,8 +48,14 @@ export interface Layer<in ROut, out E = never, out RIn = never> extends Variance
48
48
  [Unify.ignoreSymbol]?: LayerUnifyIgnore;
49
49
  }
50
50
  /**
51
- * @since 4.0.0
51
+ * Type-level hook that allows `Layer` values to participate in `Unify`
52
+ * inference.
53
+ *
54
+ * This is used by Effect's pipe and unification machinery to preserve the
55
+ * provided services, error, and requirements of a `Layer`.
56
+ *
52
57
  * @category models
58
+ * @since 4.0.0
53
59
  */
54
60
  export interface LayerUnify<A extends {
55
61
  [Unify.typeSymbol]?: any;
@@ -57,16 +63,19 @@ export interface LayerUnify<A extends {
57
63
  Layer?: () => A[Unify.typeSymbol] extends Layer<any, any, any> | infer _ ? Layer<Success<Extract<A[Unify.typeSymbol], Any>>, Error<Extract<A[Unify.typeSymbol], Any>>, Services<Extract<A[Unify.typeSymbol], Any>>> : never;
58
64
  }
59
65
  /**
60
- * @since 4.0.0
66
+ * Type-level marker used by `Unify` for `Layer` types that should be ignored
67
+ * during unification.
68
+ *
61
69
  * @category models
70
+ * @since 4.0.0
62
71
  */
63
72
  export interface LayerUnifyIgnore {
64
73
  }
65
74
  /**
66
75
  * The variance interface for Layer type parameters.
67
76
  *
68
- * @since 2.0.0
69
77
  * @category models
78
+ * @since 2.0.0
70
79
  */
71
80
  export interface Variance<in ROut, out E, out RIn> {
72
81
  readonly [TypeId]: {
@@ -81,8 +90,8 @@ export interface Variance<in ROut, out E, out RIn> {
81
90
  * This interface is used to constrain generic types to Layer types
82
91
  * without specifying exact type parameters.
83
92
  *
84
- * @since 3.9.0
85
93
  * @category type-level
94
+ * @since 3.9.0
86
95
  */
87
96
  export interface Any {
88
97
  readonly [TypeId]: {
@@ -94,22 +103,22 @@ export interface Any {
94
103
  /**
95
104
  * Extracts the service dependencies (RIn) from a Layer type.
96
105
  *
97
- * @since 2.0.0
98
106
  * @category type-level
107
+ * @since 4.0.0
99
108
  */
100
109
  export type Services<T extends Any> = T extends infer L ? L extends Layer<infer _ROut, infer _E, infer _RIn> ? _RIn : never : never;
101
110
  /**
102
111
  * Extracts the error type (E) from a Layer type.
103
112
  *
104
- * @since 2.0.0
105
113
  * @category type-level
114
+ * @since 2.0.0
106
115
  */
107
116
  export type Error<T extends Any> = T extends Layer<infer _ROut, infer _E, infer _RIn> ? _E : never;
108
117
  /**
109
118
  * Extracts the service output type (ROut) from a Layer type.
110
119
  *
111
- * @since 2.0.0
112
120
  * @category type-level
121
+ * @since 2.0.0
113
122
  */
114
123
  export type Success<T extends Any> = T extends Layer<infer _ROut, infer _E, infer _RIn> ? _ROut : never;
115
124
  declare const MemoMapTypeId = "~effect/Layer/MemoMap";
@@ -119,9 +128,10 @@ declare const MemoMapTypeId = "~effect/Layer/MemoMap";
119
128
  * The MemoMap prevents duplicate construction of the same layer instance,
120
129
  * enabling efficient resource sharing across layer dependencies.
121
130
  *
122
- * @example
131
+ * **Example** (Sharing layer construction with a memo map)
132
+ *
123
133
  * ```ts
124
- * import { Effect, Layer, Context } from "effect"
134
+ * import { Context, Effect, Layer } from "effect"
125
135
  *
126
136
  * class Database extends Context.Service<Database, {
127
137
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -141,19 +151,21 @@ declare const MemoMapTypeId = "~effect/Layer/MemoMap";
141
151
  * })
142
152
  * ```
143
153
  *
144
- * @since 2.0.0
145
154
  * @category models
155
+ * @since 2.0.0
146
156
  */
147
157
  export interface MemoMap {
148
158
  readonly [MemoMapTypeId]: typeof MemoMapTypeId;
159
+ readonly get: <RIn, E, ROut>(layer: Layer<ROut, E, RIn>, scope: Scope.Scope) => Effect<Context.Context<ROut>, E, RIn> | undefined;
149
160
  readonly getOrElseMemoize: <RIn, E, ROut>(layer: Layer<ROut, E, RIn>, scope: Scope.Scope, build: (memoMap: MemoMap, scope: Scope.Scope) => Effect<Context.Context<ROut>, E, RIn>) => Effect<Context.Context<ROut>, E, RIn>;
150
161
  }
151
162
  /**
152
163
  * Returns `true` if the specified value is a `Layer`, `false` otherwise.
153
164
  *
154
- * @example
165
+ * **Example** (Checking whether a value is a layer)
166
+ *
155
167
  * ```ts
156
- * import { Effect, Layer, Context } from "effect"
168
+ * import { Context, Effect, Layer } from "effect"
157
169
  *
158
170
  * class Database extends Context.Service<Database, {
159
171
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -168,8 +180,8 @@ export interface MemoMap {
168
180
  * console.log(Layer.isLayer(notALayer)) // false
169
181
  * ```
170
182
  *
171
- * @since 2.0.0
172
183
  * @category getters
184
+ * @since 2.0.0
173
185
  */
174
186
  export declare const isLayer: (u: unknown) => u is Layer<unknown, unknown, unknown>;
175
187
  /**
@@ -178,9 +190,10 @@ export declare const isLayer: (u: unknown) => u is Layer<unknown, unknown, unkno
178
190
  * The function receives a `MemoMap` for memoization and a `Scope` for resource management.
179
191
  * A child scope is created, and if the build fails, the child scope is closed.
180
192
  *
181
- * @example
193
+ * **Example** (Constructing a layer from a build function)
194
+ *
182
195
  * ```ts
183
- * import { Effect, Layer, Context } from "effect"
196
+ * import { Context, Effect, Layer } from "effect"
184
197
  *
185
198
  * class Database extends Context.Service<Database, {
186
199
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -195,8 +208,8 @@ export declare const isLayer: (u: unknown) => u is Layer<unknown, unknown, unkno
195
208
  * )
196
209
  * ```
197
210
  *
198
- * @since 4.0.0
199
211
  * @category constructors
212
+ * @since 4.0.0
200
213
  */
201
214
  export declare const fromBuild: <ROut, E, RIn>(build: (memoMap: MemoMap, scope: Scope.Scope) => Effect<Context.Context<ROut>, E, RIn>) => Layer<ROut, E, RIn>;
202
215
  /**
@@ -206,9 +219,10 @@ export declare const fromBuild: <ROut, E, RIn>(build: (memoMap: MemoMap, scope:
206
219
  * This is similar to `fromBuild` but provides automatic memoization of the layer construction.
207
220
  * The layer will be memoized based on the provided `MemoMap`.
208
221
  *
209
- * @example
222
+ * **Example** (Memoizing layer construction)
223
+ *
210
224
  * ```ts
211
- * import { Effect, Layer, Context } from "effect"
225
+ * import { Context, Effect, Layer } from "effect"
212
226
  *
213
227
  * class Database extends Context.Service<Database, {
214
228
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -223,16 +237,17 @@ export declare const fromBuild: <ROut, E, RIn>(build: (memoMap: MemoMap, scope:
223
237
  * )
224
238
  * ```
225
239
  *
226
- * @since 4.0.0
227
240
  * @category constructors
241
+ * @since 4.0.0
228
242
  */
229
243
  export declare const fromBuildMemo: <ROut, E, RIn>(build: (memoMap: MemoMap, scope: Scope.Scope) => Effect<Context.Context<ROut>, E, RIn>) => Layer<ROut, E, RIn>;
230
244
  /**
231
245
  * Constructs a `MemoMap` that can be used to build additional layers.
232
246
  *
233
- * @example
247
+ * **Example** (Creating a memo map unsafely)
248
+ *
234
249
  * ```ts
235
- * import { Effect, Layer, Context } from "effect"
250
+ * import { Context, Effect, Layer } from "effect"
236
251
  *
237
252
  * class Database extends Context.Service<Database, {
238
253
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -252,16 +267,25 @@ export declare const fromBuildMemo: <ROut, E, RIn>(build: (memoMap: MemoMap, sco
252
267
  * })
253
268
  * ```
254
269
  *
255
- * @since 4.0.0
256
270
  * @category memo map
271
+ * @since 4.0.0
257
272
  */
258
273
  export declare const makeMemoMapUnsafe: () => MemoMap;
274
+ /**
275
+ * Constructs a child `MemoMap` that can reuse layers already memoized in the
276
+ * parent while isolating any new layer allocations to the child map.
277
+ *
278
+ * @category memo map
279
+ * @since 4.0.0
280
+ */
281
+ export declare const forkMemoMapUnsafe: (parent: MemoMap) => MemoMap;
259
282
  /**
260
283
  * Constructs a `MemoMap` that can be used to build additional layers.
261
284
  *
262
- * @example
285
+ * **Example** (Creating a memo map in an effect)
286
+ *
263
287
  * ```ts
264
- * import { Effect, Layer, Context } from "effect"
288
+ * import { Context, Effect, Layer } from "effect"
265
289
  *
266
290
  * class Database extends Context.Service<Database, {
267
291
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -281,10 +305,18 @@ export declare const makeMemoMapUnsafe: () => MemoMap;
281
305
  * })
282
306
  * ```
283
307
  *
284
- * @since 2.0.0
285
308
  * @category memo map
309
+ * @since 2.0.0
286
310
  */
287
311
  export declare const makeMemoMap: Effect<MemoMap>;
312
+ /**
313
+ * Constructs a child `MemoMap` that can reuse layers already memoized in the
314
+ * parent while isolating any new layer allocations to the child map.
315
+ *
316
+ * @category memo map
317
+ * @since 4.0.0
318
+ */
319
+ export declare const forkMemoMap: (parent: MemoMap) => Effect<MemoMap>;
288
320
  declare const CurrentMemoMap_base: Context.ServiceClass<CurrentMemoMap, "effect/Layer/CurrentMemoMap", MemoMap>;
289
321
  /**
290
322
  * A service reference for the current `MemoMap` used in layer construction.
@@ -292,8 +324,8 @@ declare const CurrentMemoMap_base: Context.ServiceClass<CurrentMemoMap, "effect/
292
324
  * This service provides access to the current memoization map during layer building,
293
325
  * allowing layers to share memoized results.
294
326
  *
295
- * @since 3.13.0
296
327
  * @category models
328
+ * @since 3.13.0
297
329
  */
298
330
  export declare class CurrentMemoMap extends CurrentMemoMap_base {
299
331
  static getOrCreate: <Services>(self: Context.Context<Services>) => MemoMap;
@@ -302,9 +334,10 @@ export declare class CurrentMemoMap extends CurrentMemoMap_base {
302
334
  * Builds a layer into an `Effect` value, using the specified `MemoMap` to memoize
303
335
  * the layer construction.
304
336
  *
305
- * @example
337
+ * **Example** (Building layers with an explicit memo map)
338
+ *
306
339
  * ```ts
307
- * import { Effect, Layer, Context } from "effect"
340
+ * import { Context, Effect, Layer } from "effect"
308
341
  *
309
342
  * class Database extends Context.Service<Database, {
310
343
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -342,17 +375,18 @@ export declare class CurrentMemoMap extends CurrentMemoMap_base {
342
375
  * })
343
376
  * ```
344
377
  *
345
- * @since 2.0.0
346
378
  * @category memo map
379
+ * @since 2.0.0
347
380
  */
348
381
  export declare const buildWithMemoMap: {
349
382
  /**
350
383
  * Builds a layer into an `Effect` value, using the specified `MemoMap` to memoize
351
384
  * the layer construction.
352
385
  *
353
- * @example
386
+ * **Example** (Building layers with an explicit memo map)
387
+ *
354
388
  * ```ts
355
- * import { Effect, Layer, Context } from "effect"
389
+ * import { Context, Effect, Layer } from "effect"
356
390
  *
357
391
  * class Database extends Context.Service<Database, {
358
392
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -390,17 +424,18 @@ export declare const buildWithMemoMap: {
390
424
  * })
391
425
  * ```
392
426
  *
393
- * @since 2.0.0
394
427
  * @category memo map
428
+ * @since 2.0.0
395
429
  */
396
430
  (memoMap: MemoMap, scope: Scope.Scope): <RIn, E, ROut>(self: Layer<ROut, E, RIn>) => Effect<Context.Context<ROut>, E, RIn>;
397
431
  /**
398
432
  * Builds a layer into an `Effect` value, using the specified `MemoMap` to memoize
399
433
  * the layer construction.
400
434
  *
401
- * @example
435
+ * **Example** (Building layers with an explicit memo map)
436
+ *
402
437
  * ```ts
403
- * import { Effect, Layer, Context } from "effect"
438
+ * import { Context, Effect, Layer } from "effect"
404
439
  *
405
440
  * class Database extends Context.Service<Database, {
406
441
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -438,17 +473,18 @@ export declare const buildWithMemoMap: {
438
473
  * })
439
474
  * ```
440
475
  *
441
- * @since 2.0.0
442
476
  * @category memo map
477
+ * @since 2.0.0
443
478
  */
444
479
  <RIn, E, ROut>(self: Layer<ROut, E, RIn>, memoMap: MemoMap, scope: Scope.Scope): Effect<Context.Context<ROut>, E, RIn>;
445
480
  };
446
481
  /**
447
482
  * Builds a layer into a scoped value.
448
483
  *
449
- * @example
484
+ * **Example** (Building a layer into a context)
485
+ *
450
486
  * ```ts
451
- * import { Effect, Layer, Context } from "effect"
487
+ * import { Context, Effect, Layer } from "effect"
452
488
  *
453
489
  * class Database extends Context.Service<Database, {
454
490
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -470,8 +506,8 @@ export declare const buildWithMemoMap: {
470
506
  * })
471
507
  * ```
472
508
  *
473
- * @since 2.0.0
474
509
  * @category destructors
510
+ * @since 2.0.0
475
511
  */
476
512
  export declare const build: <RIn, E, ROut>(self: Layer<ROut, E, RIn>) => Effect<Context.Context<ROut>, E, RIn | Scope.Scope>;
477
513
  /**
@@ -481,9 +517,10 @@ export declare const build: <RIn, E, ROut>(self: Layer<ROut, E, RIn>) => Effect<
481
517
  * the services output by the layer exceed the lifetime of the effect the
482
518
  * layer is provided to.
483
519
  *
484
- * @example
520
+ * **Example** (Building a layer with an explicit scope)
521
+ *
485
522
  * ```ts
486
- * import { Effect, Layer, Scope, Context } from "effect"
523
+ * import { Context, Effect, Layer, Scope } from "effect"
487
524
  *
488
525
  * class Database extends Context.Service<Database, {
489
526
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -511,8 +548,8 @@ export declare const build: <RIn, E, ROut>(self: Layer<ROut, E, RIn>) => Effect<
511
548
  * })
512
549
  * ```
513
550
  *
514
- * @since 2.0.0
515
551
  * @category destructors
552
+ * @since 2.0.0
516
553
  */
517
554
  export declare const buildWithScope: {
518
555
  /**
@@ -522,9 +559,10 @@ export declare const buildWithScope: {
522
559
  * the services output by the layer exceed the lifetime of the effect the
523
560
  * layer is provided to.
524
561
  *
525
- * @example
562
+ * **Example** (Building a layer with an explicit scope)
563
+ *
526
564
  * ```ts
527
- * import { Effect, Layer, Scope, Context } from "effect"
565
+ * import { Context, Effect, Layer, Scope } from "effect"
528
566
  *
529
567
  * class Database extends Context.Service<Database, {
530
568
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -552,8 +590,8 @@ export declare const buildWithScope: {
552
590
  * })
553
591
  * ```
554
592
  *
555
- * @since 2.0.0
556
593
  * @category destructors
594
+ * @since 2.0.0
557
595
  */
558
596
  (scope: Scope.Scope): <RIn, E, ROut>(self: Layer<ROut, E, RIn>) => Effect<Context.Context<ROut>, E, RIn>;
559
597
  /**
@@ -563,9 +601,10 @@ export declare const buildWithScope: {
563
601
  * the services output by the layer exceed the lifetime of the effect the
564
602
  * layer is provided to.
565
603
  *
566
- * @example
604
+ * **Example** (Building a layer with an explicit scope)
605
+ *
567
606
  * ```ts
568
- * import { Effect, Layer, Scope, Context } from "effect"
607
+ * import { Context, Effect, Layer, Scope } from "effect"
569
608
  *
570
609
  * class Database extends Context.Service<Database, {
571
610
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -593,17 +632,18 @@ export declare const buildWithScope: {
593
632
  * })
594
633
  * ```
595
634
  *
596
- * @since 2.0.0
597
635
  * @category destructors
636
+ * @since 2.0.0
598
637
  */
599
638
  <RIn, E, ROut>(self: Layer<ROut, E, RIn>, scope: Scope.Scope): Effect<Context.Context<ROut>, E, RIn>;
600
639
  };
601
640
  /**
602
641
  * Constructs a layer from the specified value.
603
642
  *
604
- * @example
643
+ * **Example** (Providing services from values)
644
+ *
605
645
  * ```ts
606
- * import { Effect, Layer, Context } from "effect"
646
+ * import { Context, Effect, Layer } from "effect"
607
647
  *
608
648
  * class Database extends Context.Service<Database, {
609
649
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -637,16 +677,17 @@ export declare const buildWithScope: {
637
677
  * )
638
678
  * ```
639
679
  *
640
- * @since 2.0.0
641
680
  * @category constructors
681
+ * @since 2.0.0
642
682
  */
643
683
  export declare const succeed: {
644
684
  /**
645
685
  * Constructs a layer from the specified value.
646
686
  *
647
- * @example
687
+ * **Example** (Providing services from values)
688
+ *
648
689
  * ```ts
649
- * import { Effect, Layer, Context } from "effect"
690
+ * import { Context, Effect, Layer } from "effect"
650
691
  *
651
692
  * class Database extends Context.Service<Database, {
652
693
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -680,16 +721,17 @@ export declare const succeed: {
680
721
  * )
681
722
  * ```
682
723
  *
683
- * @since 2.0.0
684
724
  * @category constructors
725
+ * @since 2.0.0
685
726
  */
686
727
  <I, S>(service: Context.Key<I, S>): (resource: S) => Layer<I>;
687
728
  /**
688
729
  * Constructs a layer from the specified value.
689
730
  *
690
- * @example
731
+ * **Example** (Providing services from values)
732
+ *
691
733
  * ```ts
692
- * import { Effect, Layer, Context } from "effect"
734
+ * import { Context, Effect, Layer } from "effect"
693
735
  *
694
736
  * class Database extends Context.Service<Database, {
695
737
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -723,8 +765,8 @@ export declare const succeed: {
723
765
  * )
724
766
  * ```
725
767
  *
726
- * @since 2.0.0
727
768
  * @category constructors
769
+ * @since 2.0.0
728
770
  */
729
771
  <I, S>(service: Context.Key<I, S>, resource: Types.NoInfer<S>): Layer<I>;
730
772
  };
@@ -735,9 +777,10 @@ export declare const succeed: {
735
777
  * This is a more general version of `succeed` that allows you to provide multiple
736
778
  * services at once through a `Context`.
737
779
  *
738
- * @example
780
+ * **Example** (Providing multiple services from a context)
781
+ *
739
782
  * ```ts
740
- * import { Effect, Layer, Context } from "effect"
783
+ * import { Context, Effect, Layer } from "effect"
741
784
  *
742
785
  * class Database extends Context.Service<Database, {
743
786
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -758,8 +801,8 @@ export declare const succeed: {
758
801
  * const layer = Layer.succeedContext(context)
759
802
  * ```
760
803
  *
761
- * @since 2.0.0
762
804
  * @category constructors
805
+ * @since 2.0.0
763
806
  */
764
807
  export declare const succeedContext: <A>(context: Context.Context<A>) => Layer<A>;
765
808
  /**
@@ -768,15 +811,16 @@ export declare const succeedContext: <A>(context: Context.Context<A>) => Layer<A
768
811
  * This layer provides no services and can be used as a neutral element
769
812
  * in layer composition or as a starting point for building layers.
770
813
  *
771
- * @example
814
+ * **Example** (Creating an empty layer)
815
+ *
772
816
  * ```ts
773
817
  * import { Layer } from "effect"
774
818
  *
775
819
  * const emptyLayer = Layer.empty
776
820
  * ```
777
821
  *
778
- * @since 2.0.0
779
822
  * @category constructors
823
+ * @since 2.0.0
780
824
  */
781
825
  export declare const empty: Layer<never>;
782
826
  /**
@@ -785,9 +829,10 @@ export declare const empty: Layer<never>;
785
829
  * This is a lazy version of `succeed` where the service value is computed
786
830
  * synchronously only when the layer is built.
787
831
  *
788
- * @example
832
+ * **Example** (Lazily providing a service)
833
+ *
789
834
  * ```ts
790
- * import { Effect, Layer, Context } from "effect"
835
+ * import { Context, Effect, Layer } from "effect"
791
836
  *
792
837
  * class Database extends Context.Service<Database, {
793
838
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -798,8 +843,8 @@ export declare const empty: Layer<never>;
798
843
  * }))
799
844
  * ```
800
845
  *
801
- * @since 2.0.0
802
846
  * @category constructors
847
+ * @since 2.0.0
803
848
  */
804
849
  export declare const sync: {
805
850
  /**
@@ -808,9 +853,10 @@ export declare const sync: {
808
853
  * This is a lazy version of `succeed` where the service value is computed
809
854
  * synchronously only when the layer is built.
810
855
  *
811
- * @example
856
+ * **Example** (Lazily providing a service)
857
+ *
812
858
  * ```ts
813
- * import { Effect, Layer, Context } from "effect"
859
+ * import { Context, Effect, Layer } from "effect"
814
860
  *
815
861
  * class Database extends Context.Service<Database, {
816
862
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -821,8 +867,8 @@ export declare const sync: {
821
867
  * }))
822
868
  * ```
823
869
  *
824
- * @since 2.0.0
825
870
  * @category constructors
871
+ * @since 2.0.0
826
872
  */
827
873
  <I, S>(service: Context.Key<I, S>): (evaluate: LazyArg<S>) => Layer<I>;
828
874
  /**
@@ -831,9 +877,10 @@ export declare const sync: {
831
877
  * This is a lazy version of `succeed` where the service value is computed
832
878
  * synchronously only when the layer is built.
833
879
  *
834
- * @example
880
+ * **Example** (Lazily providing a service)
881
+ *
835
882
  * ```ts
836
- * import { Effect, Layer, Context } from "effect"
883
+ * import { Context, Effect, Layer } from "effect"
837
884
  *
838
885
  * class Database extends Context.Service<Database, {
839
886
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -844,8 +891,8 @@ export declare const sync: {
844
891
  * }))
845
892
  * ```
846
893
  *
847
- * @since 2.0.0
848
894
  * @category constructors
895
+ * @since 2.0.0
849
896
  */
850
897
  <I, S>(service: Context.Key<I, S>, evaluate: LazyArg<Types.NoInfer<S>>): Layer<I>;
851
898
  };
@@ -856,9 +903,10 @@ export declare const sync: {
856
903
  * This is a lazy version of `succeedContext` where the Context is computed
857
904
  * synchronously only when the layer is built.
858
905
  *
859
- * @example
906
+ * **Example** (Lazily providing a context)
907
+ *
860
908
  * ```ts
861
- * import { Effect, Layer, Context } from "effect"
909
+ * import { Context, Effect, Layer } from "effect"
862
910
  *
863
911
  * class Database extends Context.Service<Database, {
864
912
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -871,8 +919,8 @@ export declare const sync: {
871
919
  * )
872
920
  * ```
873
921
  *
874
- * @since 2.0.0
875
922
  * @category constructors
923
+ * @since 2.0.0
876
924
  */
877
925
  export declare const syncContext: <A>(evaluate: LazyArg<Context.Context<A>>) => Layer<A>;
878
926
  /**
@@ -882,15 +930,10 @@ export declare const syncContext: <A>(evaluate: LazyArg<Context.Context<A>>) =>
882
930
  * The Effect is executed in the scope of the layer, allowing for proper
883
931
  * resource management.
884
932
  *
885
- * **Previously Known As**
886
- *
887
- * This API replaces the following from Effect 3.x:
888
- *
889
- * - `Layer.scoped`
933
+ * **Example** (Creating a layer from an effect)
890
934
  *
891
- * @example
892
935
  * ```ts
893
- * import { Effect, Layer, Context } from "effect"
936
+ * import { Context, Effect, Layer } from "effect"
894
937
  *
895
938
  * class Database extends Context.Service<Database, {
896
939
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -903,8 +946,8 @@ export declare const syncContext: <A>(evaluate: LazyArg<Context.Context<A>>) =>
903
946
  * )
904
947
  * ```
905
948
  *
906
- * @since 2.0.0
907
949
  * @category constructors
950
+ * @since 2.0.0
908
951
  */
909
952
  export declare const effect: {
910
953
  /**
@@ -914,15 +957,10 @@ export declare const effect: {
914
957
  * The Effect is executed in the scope of the layer, allowing for proper
915
958
  * resource management.
916
959
  *
917
- * **Previously Known As**
918
- *
919
- * This API replaces the following from Effect 3.x:
960
+ * **Example** (Creating a layer from an effect)
920
961
  *
921
- * - `Layer.scoped`
922
- *
923
- * @example
924
962
  * ```ts
925
- * import { Effect, Layer, Context } from "effect"
963
+ * import { Context, Effect, Layer } from "effect"
926
964
  *
927
965
  * class Database extends Context.Service<Database, {
928
966
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -935,8 +973,8 @@ export declare const effect: {
935
973
  * )
936
974
  * ```
937
975
  *
938
- * @since 2.0.0
939
976
  * @category constructors
977
+ * @since 2.0.0
940
978
  */
941
979
  <I, S>(service: Context.Key<I, S>): <E, R>(effect: Effect<S, E, R>) => Layer<I, E, Exclude<R, Scope.Scope>>;
942
980
  /**
@@ -946,15 +984,10 @@ export declare const effect: {
946
984
  * The Effect is executed in the scope of the layer, allowing for proper
947
985
  * resource management.
948
986
  *
949
- * **Previously Known As**
987
+ * **Example** (Creating a layer from an effect)
950
988
  *
951
- * This API replaces the following from Effect 3.x:
952
- *
953
- * - `Layer.scoped`
954
- *
955
- * @example
956
989
  * ```ts
957
- * import { Effect, Layer, Context } from "effect"
990
+ * import { Context, Effect, Layer } from "effect"
958
991
  *
959
992
  * class Database extends Context.Service<Database, {
960
993
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -967,8 +1000,8 @@ export declare const effect: {
967
1000
  * )
968
1001
  * ```
969
1002
  *
970
- * @since 2.0.0
971
1003
  * @category constructors
1004
+ * @since 2.0.0
972
1005
  */
973
1006
  <I, S, E, R>(service: Context.Key<I, S>, effect: Effect<Types.NoInfer<S>, E, R>): Layer<I, E, Exclude<R, Scope.Scope>>;
974
1007
  };
@@ -979,9 +1012,10 @@ export declare const effect: {
979
1012
  * This allows you to create a Layer from an effectful computation that returns
980
1013
  * multiple services. The Effect is executed in the scope of the layer.
981
1014
  *
982
- * @example
1015
+ * **Example** (Creating a layer from an effectful context)
1016
+ *
983
1017
  * ```ts
984
- * import { Effect, Layer, Context } from "effect"
1018
+ * import { Context, Effect, Layer } from "effect"
985
1019
  *
986
1020
  * class Database extends Context.Service<
987
1021
  * Database,
@@ -995,8 +1029,8 @@ export declare const effect: {
995
1029
  * )
996
1030
  * ```
997
1031
  *
998
- * @since 2.0.0
999
1032
  * @category constructors
1033
+ * @since 2.0.0
1000
1034
  */
1001
1035
  export declare const effectContext: <A, E, R>(effect: Effect<Context.Context<A>, E, R>) => Layer<A, E, Exclude<R, Scope.Scope>>;
1002
1036
  /**
@@ -1005,13 +1039,8 @@ export declare const effectContext: <A, E, R>(effect: Effect<Context.Context<A>,
1005
1039
  * This is useful when you want to run an Effect for its side effects during
1006
1040
  * layer construction, but don't need to provide any services.
1007
1041
  *
1008
- * **Previously Known As**
1009
- *
1010
- * This API replaces the following from Effect 3.x:
1011
- *
1012
- * - `Layer.scopedDiscard`
1042
+ * **Example** (Running an effect during layer construction)
1013
1043
  *
1014
- * @example
1015
1044
  * ```ts
1016
1045
  * import { Effect, Layer } from "effect"
1017
1046
  *
@@ -1022,8 +1051,8 @@ export declare const effectContext: <A, E, R>(effect: Effect<Context.Context<A>,
1022
1051
  * )
1023
1052
  * ```
1024
1053
  *
1025
- * @since 2.0.0
1026
1054
  * @category constructors
1055
+ * @since 2.0.0
1027
1056
  */
1028
1057
  export declare const effectDiscard: <X, E, R>(effect: Effect<X, E, R>) => Layer<never, E, Exclude<R, Scope.Scope>>;
1029
1058
  /**
@@ -1032,9 +1061,10 @@ export declare const effectDiscard: <X, E, R>(effect: Effect<X, E, R>) => Layer<
1032
1061
  * The factory is evaluated only when the suspended layer is first built, and
1033
1062
  * the result is memoized with normal layer sharing semantics.
1034
1063
  *
1035
- * @example
1064
+ * **Example** (Choosing a layer lazily)
1065
+ *
1036
1066
  * ```ts
1037
- * import { Layer, Context } from "effect"
1067
+ * import { Context, Layer } from "effect"
1038
1068
  *
1039
1069
  * class Config extends Context.Service<Config, string>()("Config") {}
1040
1070
  *
@@ -1047,8 +1077,8 @@ export declare const effectDiscard: <X, E, R>(effect: Effect<X, E, R>) => Layer<
1047
1077
  * )
1048
1078
  * ```
1049
1079
  *
1050
- * @since 4.0.0
1051
1080
  * @category constructors
1081
+ * @since 2.0.0
1052
1082
  */
1053
1083
  export declare const suspend: <A, E, R>(evaluate: LazyArg<Layer<A, E, R>>) => Layer<A, E, R>;
1054
1084
  /**
@@ -1058,9 +1088,10 @@ export declare const suspend: <A, E, R>(evaluate: LazyArg<Layer<A, E, R>>) => La
1058
1088
  * use that Layer directly. The resulting Layer will have the combined error and
1059
1089
  * dependency types from both the outer Effect and the inner Layer.
1060
1090
  *
1061
- * @example
1091
+ * **Example** (Unwrapping an effectful layer)
1092
+ *
1062
1093
  * ```ts
1063
- * import { Effect, Layer, Context } from "effect"
1094
+ * import { Context, Effect, Layer } from "effect"
1064
1095
  *
1065
1096
  * class Database extends Context.Service<Database, {
1066
1097
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1073,8 +1104,8 @@ export declare const suspend: <A, E, R>(evaluate: LazyArg<Layer<A, E, R>>) => La
1073
1104
  * const unwrappedLayer = Layer.unwrap(layerEffect)
1074
1105
  * ```
1075
1106
  *
1076
- * @since 4.0.0
1077
1107
  * @category utils
1108
+ * @since 4.0.0
1078
1109
  */
1079
1110
  export declare const unwrap: <A, E1, R1, E, R>(self: Effect<Layer<A, E1, R1>, E, R>) => Layer<A, E | E1, R1 | Exclude<R, Scope.Scope>>;
1080
1111
  /**
@@ -1083,9 +1114,10 @@ export declare const unwrap: <A, E1, R1, E, R>(self: Effect<Layer<A, E1, R1>, E,
1083
1114
  * All layers are built concurrently, and their outputs are merged into a single layer.
1084
1115
  * This is useful when you need to combine multiple independent layers.
1085
1116
  *
1086
- * @example
1117
+ * **Example** (Merging independent layers)
1118
+ *
1087
1119
  * ```ts
1088
- * import { Effect, Layer, Context } from "effect"
1120
+ * import { Context, Effect, Layer } from "effect"
1089
1121
  *
1090
1122
  * class Database extends Context.Service<Database, {
1091
1123
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1105,8 +1137,8 @@ export declare const unwrap: <A, E1, R1, E, R>(self: Effect<Layer<A, E1, R1>, E,
1105
1137
  * const mergedLayer = Layer.mergeAll(dbLayer, loggerLayer)
1106
1138
  * ```
1107
1139
  *
1108
- * @since 2.0.0
1109
1140
  * @category zipping
1141
+ * @since 2.0.0
1110
1142
  */
1111
1143
  export declare const mergeAll: <Layers extends [Layer<never, any, any>, ...Array<Layer<never, any, any>>]>(...layers: Layers) => Layer<Success<Layers[number]>, Error<Layers[number]>, Services<Layers[number]>>;
1112
1144
  /**
@@ -1115,9 +1147,10 @@ export declare const mergeAll: <Layers extends [Layer<never, any, any>, ...Array
1115
1147
  * This is a binary version of `mergeAll` that merges exactly two layers or one layer with an array of layers.
1116
1148
  * The layers are built concurrently and their outputs are combined.
1117
1149
  *
1118
- * @example
1150
+ * **Example** (Merging two layers)
1151
+ *
1119
1152
  * ```ts
1120
- * import { Effect, Layer, Context } from "effect"
1153
+ * import { Context, Effect, Layer } from "effect"
1121
1154
  *
1122
1155
  * class Database extends Context.Service<Database, {
1123
1156
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1137,8 +1170,8 @@ export declare const mergeAll: <Layers extends [Layer<never, any, any>, ...Array
1137
1170
  * const mergedLayer = Layer.merge(dbLayer, loggerLayer)
1138
1171
  * ```
1139
1172
  *
1140
- * @since 2.0.0
1141
1173
  * @category zipping
1174
+ * @since 2.0.0
1142
1175
  */
1143
1176
  export declare const merge: {
1144
1177
  /**
@@ -1147,9 +1180,10 @@ export declare const merge: {
1147
1180
  * This is a binary version of `mergeAll` that merges exactly two layers or one layer with an array of layers.
1148
1181
  * The layers are built concurrently and their outputs are combined.
1149
1182
  *
1150
- * @example
1183
+ * **Example** (Merging two layers)
1184
+ *
1151
1185
  * ```ts
1152
- * import { Effect, Layer, Context } from "effect"
1186
+ * import { Context, Effect, Layer } from "effect"
1153
1187
  *
1154
1188
  * class Database extends Context.Service<Database, {
1155
1189
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1169,8 +1203,8 @@ export declare const merge: {
1169
1203
  * const mergedLayer = Layer.merge(dbLayer, loggerLayer)
1170
1204
  * ```
1171
1205
  *
1172
- * @since 2.0.0
1173
1206
  * @category zipping
1207
+ * @since 2.0.0
1174
1208
  */
1175
1209
  <RIn, E, ROut>(that: Layer<ROut, E, RIn>): <RIn2, E2, ROut2>(self: Layer<ROut2, E2, RIn2>) => Layer<ROut | ROut2, E | E2, RIn | RIn2>;
1176
1210
  /**
@@ -1179,9 +1213,10 @@ export declare const merge: {
1179
1213
  * This is a binary version of `mergeAll` that merges exactly two layers or one layer with an array of layers.
1180
1214
  * The layers are built concurrently and their outputs are combined.
1181
1215
  *
1182
- * @example
1216
+ * **Example** (Merging two layers)
1217
+ *
1183
1218
  * ```ts
1184
- * import { Effect, Layer, Context } from "effect"
1219
+ * import { Context, Effect, Layer } from "effect"
1185
1220
  *
1186
1221
  * class Database extends Context.Service<Database, {
1187
1222
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1201,8 +1236,8 @@ export declare const merge: {
1201
1236
  * const mergedLayer = Layer.merge(dbLayer, loggerLayer)
1202
1237
  * ```
1203
1238
  *
1204
- * @since 2.0.0
1205
1239
  * @category zipping
1240
+ * @since 2.0.0
1206
1241
  */
1207
1242
  <const Layers extends [Any, ...Array<Any>]>(that: Layers): <A, E, R>(self: Layer<A, E, R>) => Layer<A | Success<Layers[number]>, E | Error<Layers[number]>, Services<Layers[number]> | R>;
1208
1243
  /**
@@ -1211,9 +1246,10 @@ export declare const merge: {
1211
1246
  * This is a binary version of `mergeAll` that merges exactly two layers or one layer with an array of layers.
1212
1247
  * The layers are built concurrently and their outputs are combined.
1213
1248
  *
1214
- * @example
1249
+ * **Example** (Merging two layers)
1250
+ *
1215
1251
  * ```ts
1216
- * import { Effect, Layer, Context } from "effect"
1252
+ * import { Context, Effect, Layer } from "effect"
1217
1253
  *
1218
1254
  * class Database extends Context.Service<Database, {
1219
1255
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1233,8 +1269,8 @@ export declare const merge: {
1233
1269
  * const mergedLayer = Layer.merge(dbLayer, loggerLayer)
1234
1270
  * ```
1235
1271
  *
1236
- * @since 2.0.0
1237
1272
  * @category zipping
1273
+ * @since 2.0.0
1238
1274
  */
1239
1275
  <RIn2, E2, ROut2, RIn, E, ROut>(self: Layer<ROut2, E2, RIn2>, that: Layer<ROut, E, RIn>): Layer<ROut | ROut2, E | E2, RIn | RIn2>;
1240
1276
  /**
@@ -1243,9 +1279,10 @@ export declare const merge: {
1243
1279
  * This is a binary version of `mergeAll` that merges exactly two layers or one layer with an array of layers.
1244
1280
  * The layers are built concurrently and their outputs are combined.
1245
1281
  *
1246
- * @example
1282
+ * **Example** (Merging two layers)
1283
+ *
1247
1284
  * ```ts
1248
- * import { Effect, Layer, Context } from "effect"
1285
+ * import { Context, Effect, Layer } from "effect"
1249
1286
  *
1250
1287
  * class Database extends Context.Service<Database, {
1251
1288
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1265,8 +1302,8 @@ export declare const merge: {
1265
1302
  * const mergedLayer = Layer.merge(dbLayer, loggerLayer)
1266
1303
  * ```
1267
1304
  *
1268
- * @since 2.0.0
1269
1305
  * @category zipping
1306
+ * @since 2.0.0
1270
1307
  */
1271
1308
  <A, E, R, const Layers extends [Any, ...Array<Any>]>(self: Layer<A, E, R>, that: Layers): Layer<A | Success<Layers[number]>, E | Error<Layers[number]>, Services<Layers[number]> | R>;
1272
1309
  };
@@ -1275,9 +1312,10 @@ export declare const merge: {
1275
1312
  * builder, resulting in a new builder with the inputs of this builder as
1276
1313
  * well as any leftover inputs, and the outputs of the specified builder.
1277
1314
  *
1278
- * @example
1315
+ * **Example** (Providing layer dependencies)
1316
+ *
1279
1317
  * ```ts
1280
- * import { Effect, Layer, Context } from "effect"
1318
+ * import { Context, Effect, Layer } from "effect"
1281
1319
  *
1282
1320
  * class Database extends Context.Service<Database, {
1283
1321
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1333,8 +1371,8 @@ export declare const merge: {
1333
1371
  * )
1334
1372
  * ```
1335
1373
  *
1336
- * @since 2.0.0
1337
1374
  * @category utils
1375
+ * @since 2.0.0
1338
1376
  */
1339
1377
  export declare const provide: {
1340
1378
  /**
@@ -1342,9 +1380,10 @@ export declare const provide: {
1342
1380
  * builder, resulting in a new builder with the inputs of this builder as
1343
1381
  * well as any leftover inputs, and the outputs of the specified builder.
1344
1382
  *
1345
- * @example
1383
+ * **Example** (Providing layer dependencies)
1384
+ *
1346
1385
  * ```ts
1347
- * import { Effect, Layer, Context } from "effect"
1386
+ * import { Context, Effect, Layer } from "effect"
1348
1387
  *
1349
1388
  * class Database extends Context.Service<Database, {
1350
1389
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1400,8 +1439,8 @@ export declare const provide: {
1400
1439
  * )
1401
1440
  * ```
1402
1441
  *
1403
- * @since 2.0.0
1404
1442
  * @category utils
1443
+ * @since 2.0.0
1405
1444
  */
1406
1445
  <RIn, E, ROut>(that: Layer<ROut, E, RIn>): <RIn2, E2, ROut2>(self: Layer<ROut2, E2, RIn2>) => Layer<ROut2, E | E2, RIn | Exclude<RIn2, ROut>>;
1407
1446
  /**
@@ -1409,9 +1448,10 @@ export declare const provide: {
1409
1448
  * builder, resulting in a new builder with the inputs of this builder as
1410
1449
  * well as any leftover inputs, and the outputs of the specified builder.
1411
1450
  *
1412
- * @example
1451
+ * **Example** (Providing layer dependencies)
1452
+ *
1413
1453
  * ```ts
1414
- * import { Effect, Layer, Context } from "effect"
1454
+ * import { Context, Effect, Layer } from "effect"
1415
1455
  *
1416
1456
  * class Database extends Context.Service<Database, {
1417
1457
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1467,8 +1507,8 @@ export declare const provide: {
1467
1507
  * )
1468
1508
  * ```
1469
1509
  *
1470
- * @since 2.0.0
1471
1510
  * @category utils
1511
+ * @since 2.0.0
1472
1512
  */
1473
1513
  <const Layers extends [Any, ...Array<Any>]>(that: Layers): <A, E, R>(self: Layer<A, E, R>) => Layer<A, E | Error<Layers[number]>, Services<Layers[number]> | Exclude<R, Success<Layers[number]>>>;
1474
1514
  /**
@@ -1476,9 +1516,10 @@ export declare const provide: {
1476
1516
  * builder, resulting in a new builder with the inputs of this builder as
1477
1517
  * well as any leftover inputs, and the outputs of the specified builder.
1478
1518
  *
1479
- * @example
1519
+ * **Example** (Providing layer dependencies)
1520
+ *
1480
1521
  * ```ts
1481
- * import { Effect, Layer, Context } from "effect"
1522
+ * import { Context, Effect, Layer } from "effect"
1482
1523
  *
1483
1524
  * class Database extends Context.Service<Database, {
1484
1525
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1534,8 +1575,8 @@ export declare const provide: {
1534
1575
  * )
1535
1576
  * ```
1536
1577
  *
1537
- * @since 2.0.0
1538
1578
  * @category utils
1579
+ * @since 2.0.0
1539
1580
  */
1540
1581
  <RIn2, E2, ROut2, RIn, E, ROut>(self: Layer<ROut2, E2, RIn2>, that: Layer<ROut, E, RIn>): Layer<ROut2, E | E2, RIn | Exclude<RIn2, ROut>>;
1541
1582
  /**
@@ -1543,9 +1584,10 @@ export declare const provide: {
1543
1584
  * builder, resulting in a new builder with the inputs of this builder as
1544
1585
  * well as any leftover inputs, and the outputs of the specified builder.
1545
1586
  *
1546
- * @example
1587
+ * **Example** (Providing layer dependencies)
1588
+ *
1547
1589
  * ```ts
1548
- * import { Effect, Layer, Context } from "effect"
1590
+ * import { Context, Effect, Layer } from "effect"
1549
1591
  *
1550
1592
  * class Database extends Context.Service<Database, {
1551
1593
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1601,8 +1643,8 @@ export declare const provide: {
1601
1643
  * )
1602
1644
  * ```
1603
1645
  *
1604
- * @since 2.0.0
1605
1646
  * @category utils
1647
+ * @since 2.0.0
1606
1648
  */
1607
1649
  <A, E, R, const Layers extends [Any, ...Array<Any>]>(self: Layer<A, E, R>, that: Layers): Layer<A, E | Error<Layers[number]>, Services<Layers[number]> | Exclude<R, Success<Layers[number]>>>;
1608
1650
  };
@@ -1611,9 +1653,10 @@ export declare const provide: {
1611
1653
  * layer, resulting in a new layer with the inputs of this layer, and the
1612
1654
  * outputs of both layers.
1613
1655
  *
1614
- * @example
1656
+ * **Example** (Providing dependencies while retaining services)
1657
+ *
1615
1658
  * ```ts
1616
- * import { Effect, Layer, Context } from "effect"
1659
+ * import { Context, Effect, Layer } from "effect"
1617
1660
  *
1618
1661
  * class Database extends Context.Service<Database, {
1619
1662
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1675,8 +1718,8 @@ export declare const provide: {
1675
1718
  * )
1676
1719
  * ```
1677
1720
  *
1678
- * @since 2.0.0
1679
1721
  * @category utils
1722
+ * @since 2.0.0
1680
1723
  */
1681
1724
  export declare const provideMerge: {
1682
1725
  /**
@@ -1684,9 +1727,10 @@ export declare const provideMerge: {
1684
1727
  * layer, resulting in a new layer with the inputs of this layer, and the
1685
1728
  * outputs of both layers.
1686
1729
  *
1687
- * @example
1730
+ * **Example** (Providing dependencies while retaining services)
1731
+ *
1688
1732
  * ```ts
1689
- * import { Effect, Layer, Context } from "effect"
1733
+ * import { Context, Effect, Layer } from "effect"
1690
1734
  *
1691
1735
  * class Database extends Context.Service<Database, {
1692
1736
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1748,8 +1792,8 @@ export declare const provideMerge: {
1748
1792
  * )
1749
1793
  * ```
1750
1794
  *
1751
- * @since 2.0.0
1752
1795
  * @category utils
1796
+ * @since 2.0.0
1753
1797
  */
1754
1798
  <RIn, E, ROut>(that: Layer<ROut, E, RIn>): <RIn2, E2, ROut2>(self: Layer<ROut2, E2, RIn2>) => Layer<ROut | ROut2, E | E2, RIn | Exclude<RIn2, ROut>>;
1755
1799
  /**
@@ -1757,9 +1801,10 @@ export declare const provideMerge: {
1757
1801
  * layer, resulting in a new layer with the inputs of this layer, and the
1758
1802
  * outputs of both layers.
1759
1803
  *
1760
- * @example
1804
+ * **Example** (Providing dependencies while retaining services)
1805
+ *
1761
1806
  * ```ts
1762
- * import { Effect, Layer, Context } from "effect"
1807
+ * import { Context, Effect, Layer } from "effect"
1763
1808
  *
1764
1809
  * class Database extends Context.Service<Database, {
1765
1810
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1821,8 +1866,8 @@ export declare const provideMerge: {
1821
1866
  * )
1822
1867
  * ```
1823
1868
  *
1824
- * @since 2.0.0
1825
1869
  * @category utils
1870
+ * @since 2.0.0
1826
1871
  */
1827
1872
  <const Layers extends [Any, ...Array<Any>]>(that: Layers): <A, E, R>(self: Layer<A, E, R>) => Layer<A | Success<Layers[number]>, E | Error<Layers[number]>, Services<Layers[number]> | Exclude<R, Success<Layers[number]>>>;
1828
1873
  /**
@@ -1830,9 +1875,10 @@ export declare const provideMerge: {
1830
1875
  * layer, resulting in a new layer with the inputs of this layer, and the
1831
1876
  * outputs of both layers.
1832
1877
  *
1833
- * @example
1878
+ * **Example** (Providing dependencies while retaining services)
1879
+ *
1834
1880
  * ```ts
1835
- * import { Effect, Layer, Context } from "effect"
1881
+ * import { Context, Effect, Layer } from "effect"
1836
1882
  *
1837
1883
  * class Database extends Context.Service<Database, {
1838
1884
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1894,8 +1940,8 @@ export declare const provideMerge: {
1894
1940
  * )
1895
1941
  * ```
1896
1942
  *
1897
- * @since 2.0.0
1898
1943
  * @category utils
1944
+ * @since 2.0.0
1899
1945
  */
1900
1946
  <RIn2, E2, ROut2, RIn, E, ROut>(self: Layer<ROut2, E2, RIn2>, that: Layer<ROut, E, RIn>): Layer<ROut | ROut2, E | E2, RIn | Exclude<RIn2, ROut>>;
1901
1947
  /**
@@ -1903,9 +1949,10 @@ export declare const provideMerge: {
1903
1949
  * layer, resulting in a new layer with the inputs of this layer, and the
1904
1950
  * outputs of both layers.
1905
1951
  *
1906
- * @example
1952
+ * **Example** (Providing dependencies while retaining services)
1953
+ *
1907
1954
  * ```ts
1908
- * import { Effect, Layer, Context } from "effect"
1955
+ * import { Context, Effect, Layer } from "effect"
1909
1956
  *
1910
1957
  * class Database extends Context.Service<Database, {
1911
1958
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -1967,17 +2014,18 @@ export declare const provideMerge: {
1967
2014
  * )
1968
2015
  * ```
1969
2016
  *
1970
- * @since 2.0.0
1971
2017
  * @category utils
2018
+ * @since 2.0.0
1972
2019
  */
1973
2020
  <A, E, R, const Layers extends [Any, ...Array<Any>]>(self: Layer<A, E, R>, that: Layers): Layer<A | Success<Layers[number]>, E | Error<Layers[number]>, Services<Layers[number]> | Exclude<R, Success<Layers[number]>>>;
1974
2021
  };
1975
2022
  /**
1976
2023
  * Constructs a layer dynamically based on the output of this layer.
1977
2024
  *
1978
- * @example
2025
+ * **Example** (Creating services from layer output)
2026
+ *
1979
2027
  * ```ts
1980
- * import { Effect, Layer, Context } from "effect"
2028
+ * import { Context, Effect, Layer } from "effect"
1981
2029
  *
1982
2030
  * class Config extends Context.Service<Config, {
1983
2031
  * readonly dbUrl: string
@@ -2039,16 +2087,17 @@ export declare const provideMerge: {
2039
2087
  * )
2040
2088
  * ```
2041
2089
  *
2042
- * @since 2.0.0
2043
2090
  * @category sequencing
2091
+ * @since 2.0.0
2044
2092
  */
2045
2093
  export declare const flatMap: {
2046
2094
  /**
2047
2095
  * Constructs a layer dynamically based on the output of this layer.
2048
2096
  *
2049
- * @example
2097
+ * **Example** (Creating services from layer output)
2098
+ *
2050
2099
  * ```ts
2051
- * import { Effect, Layer, Context } from "effect"
2100
+ * import { Context, Effect, Layer } from "effect"
2052
2101
  *
2053
2102
  * class Config extends Context.Service<Config, {
2054
2103
  * readonly dbUrl: string
@@ -2110,16 +2159,17 @@ export declare const flatMap: {
2110
2159
  * )
2111
2160
  * ```
2112
2161
  *
2113
- * @since 2.0.0
2114
2162
  * @category sequencing
2163
+ * @since 2.0.0
2115
2164
  */
2116
2165
  <A, A2, E2, R2>(f: (context: Context.Context<A>) => Layer<A2, E2, R2>): <E, R>(self: Layer<A, E, R>) => Layer<A2, E2 | E, R2 | R>;
2117
2166
  /**
2118
2167
  * Constructs a layer dynamically based on the output of this layer.
2119
2168
  *
2120
- * @example
2169
+ * **Example** (Creating services from layer output)
2170
+ *
2121
2171
  * ```ts
2122
- * import { Effect, Layer, Context } from "effect"
2172
+ * import { Context, Effect, Layer } from "effect"
2123
2173
  *
2124
2174
  * class Config extends Context.Service<Config, {
2125
2175
  * readonly dbUrl: string
@@ -2181,92 +2231,92 @@ export declare const flatMap: {
2181
2231
  * )
2182
2232
  * ```
2183
2233
  *
2184
- * @since 2.0.0
2185
2234
  * @category sequencing
2235
+ * @since 2.0.0
2186
2236
  */
2187
2237
  <A, E, R, A2, E2, R2>(self: Layer<A, E, R>, f: (context: Context.Context<A>) => Layer<A2, E2, R2>): Layer<A2, E | E2, R | R2>;
2188
2238
  };
2189
2239
  /**
2190
2240
  * Performs the specified effect if this layer succeeds.
2191
2241
  *
2192
- * @since 4.0.0
2193
2242
  * @category sequencing
2243
+ * @since 2.0.0
2194
2244
  */
2195
2245
  export declare const tap: {
2196
2246
  /**
2197
2247
  * Performs the specified effect if this layer succeeds.
2198
2248
  *
2199
- * @since 4.0.0
2200
2249
  * @category sequencing
2250
+ * @since 2.0.0
2201
2251
  */
2202
2252
  <ROut, XR extends ROut, RIn2, E2, X>(f: (context: Context.Context<XR>) => Effect<X, E2, RIn2>): <RIn, E>(self: Layer<ROut, E, RIn>) => Layer<ROut, E | E2, RIn | Exclude<RIn2, Scope.Scope>>;
2203
2253
  /**
2204
2254
  * Performs the specified effect if this layer succeeds.
2205
2255
  *
2206
- * @since 4.0.0
2207
2256
  * @category sequencing
2257
+ * @since 2.0.0
2208
2258
  */
2209
2259
  <RIn, E, ROut, XR extends ROut, RIn2, E2, X>(self: Layer<ROut, E, RIn>, f: (context: Context.Context<XR>) => Effect<X, E2, RIn2>): Layer<ROut, E | E2, RIn | Exclude<RIn2, Scope.Scope>>;
2210
2260
  };
2211
2261
  /**
2212
2262
  * Performs the specified effect if this layer fails.
2213
2263
  *
2214
- * @since 4.0.0
2215
2264
  * @category sequencing
2265
+ * @since 2.0.0
2216
2266
  */
2217
2267
  export declare const tapError: {
2218
2268
  /**
2219
2269
  * Performs the specified effect if this layer fails.
2220
2270
  *
2221
- * @since 4.0.0
2222
2271
  * @category sequencing
2272
+ * @since 2.0.0
2223
2273
  */
2224
2274
  <E, XE extends E, RIn2, E2, X>(f: (e: XE) => Effect<X, E2, RIn2>): <RIn, ROut>(self: Layer<ROut, E, RIn>) => Layer<ROut, E | E2, RIn | Exclude<RIn2, Scope.Scope>>;
2225
2275
  /**
2226
2276
  * Performs the specified effect if this layer fails.
2227
2277
  *
2228
- * @since 4.0.0
2229
2278
  * @category sequencing
2279
+ * @since 2.0.0
2230
2280
  */
2231
2281
  <RIn, E, XE extends E, ROut, RIn2, E2, X>(self: Layer<ROut, E, RIn>, f: (e: XE) => Effect<X, E2, RIn2>): Layer<ROut, E | E2, RIn | Exclude<RIn2, Scope.Scope>>;
2232
2282
  };
2233
2283
  /**
2234
- * Performs the specified effect if this layer fails.
2235
- *
2236
- * **Previously Known As**
2237
- *
2238
- * This API replaces the following from Effect 3.x:
2284
+ * Performs the specified effect when this layer fails with any cause.
2239
2285
  *
2240
- * - `Layer.tapErrorCause`
2286
+ * **Details**
2287
+ * The callback receives the layer's `Cause`, so it can inspect typed errors,
2288
+ * defects, and interruption information. If the callback succeeds, the layer
2289
+ * fails again with the original cause; if the callback fails, that failure is
2290
+ * added to the layer's error type.
2241
2291
  *
2242
- * @since 4.0.0
2243
2292
  * @category sequencing
2293
+ * @since 4.0.0
2244
2294
  */
2245
2295
  export declare const tapCause: {
2246
2296
  /**
2247
- * Performs the specified effect if this layer fails.
2248
- *
2249
- * **Previously Known As**
2250
- *
2251
- * This API replaces the following from Effect 3.x:
2297
+ * Performs the specified effect when this layer fails with any cause.
2252
2298
  *
2253
- * - `Layer.tapErrorCause`
2299
+ * **Details**
2300
+ * The callback receives the layer's `Cause`, so it can inspect typed errors,
2301
+ * defects, and interruption information. If the callback succeeds, the layer
2302
+ * fails again with the original cause; if the callback fails, that failure is
2303
+ * added to the layer's error type.
2254
2304
  *
2255
- * @since 4.0.0
2256
2305
  * @category sequencing
2306
+ * @since 4.0.0
2257
2307
  */
2258
2308
  <E, XE extends E, RIn2, E2, X>(f: (cause: Cause.Cause<XE>) => Effect<X, E2, RIn2>): <RIn, ROut>(self: Layer<ROut, E, RIn>) => Layer<ROut, E | E2, RIn | Exclude<RIn2, Scope.Scope>>;
2259
2309
  /**
2260
- * Performs the specified effect if this layer fails.
2261
- *
2262
- * **Previously Known As**
2263
- *
2264
- * This API replaces the following from Effect 3.x:
2310
+ * Performs the specified effect when this layer fails with any cause.
2265
2311
  *
2266
- * - `Layer.tapErrorCause`
2312
+ * **Details**
2313
+ * The callback receives the layer's `Cause`, so it can inspect typed errors,
2314
+ * defects, and interruption information. If the callback succeeds, the layer
2315
+ * fails again with the original cause; if the callback fails, that failure is
2316
+ * added to the layer's error type.
2267
2317
  *
2268
- * @since 4.0.0
2269
2318
  * @category sequencing
2319
+ * @since 4.0.0
2270
2320
  */
2271
2321
  <RIn, E, XE extends E, ROut, RIn2, E2, X>(self: Layer<ROut, E, RIn>, f: (cause: Cause.Cause<XE>) => Effect<X, E2, RIn2>): Layer<ROut, E | E2, RIn | Exclude<RIn2, Scope.Scope>>;
2272
2322
  };
@@ -2274,9 +2324,10 @@ export declare const tapCause: {
2274
2324
  * Translates effect failure into death of the fiber, making all failures
2275
2325
  * unchecked and not a part of the type of the layer.
2276
2326
  *
2277
- * @example
2327
+ * **Example** (Converting layer failures to defects)
2328
+ *
2278
2329
  * ```ts
2279
- * import { Data, Effect, Layer, Context } from "effect"
2330
+ * import { Context, Data, Effect, Layer } from "effect"
2280
2331
  *
2281
2332
  * class DatabaseError extends Data.TaggedError("DatabaseError")<{
2282
2333
  * message: string
@@ -2288,13 +2339,8 @@ export declare const tapCause: {
2288
2339
  *
2289
2340
  * // Layer that can fail during construction
2290
2341
  * const flakyDatabaseLayer = Layer.effect(Database)(Effect.gen(function*() {
2291
- * // Simulate a database connection that might fail
2292
- * const shouldFail = Math.random() > 0.5
2293
- * if (shouldFail) {
2294
- * return yield* new DatabaseError({ message: "Connection failed" })
2295
- * }
2296
- *
2297
- * return { query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Result: ${sql}`)) }
2342
+ * console.log("connecting")
2343
+ * return yield* new DatabaseError({ message: "Connection failed" })
2298
2344
  * }))
2299
2345
  *
2300
2346
  * // Convert failures to fiber death - removes error from type
@@ -2308,12 +2354,12 @@ export declare const tapCause: {
2308
2354
  * Effect.provide(reliableDatabaseLayer)
2309
2355
  * )
2310
2356
  *
2311
- * // If the database layer fails, the entire fiber will die
2312
- * // instead of the effect failing with DatabaseError
2357
+ * // Running the program prints "connecting", then the DatabaseError is
2358
+ * // converted into a fiber defect instead of remaining a typed error.
2313
2359
  * ```
2314
2360
  *
2315
- * @since 2.0.0
2316
2361
  * @category error handling
2362
+ * @since 2.0.0
2317
2363
  */
2318
2364
  export declare const orDie: <A, E, R>(self: Layer<A, E, R>) => Layer<A, never, R>;
2319
2365
  declare const catch_: {
@@ -2324,16 +2370,17 @@ export {
2324
2370
  /**
2325
2371
  * Recovers from all errors.
2326
2372
  *
2327
- * @since 4.0.0
2328
2373
  * @category error handling
2374
+ * @since 4.0.0
2329
2375
  */
2330
2376
  catch_ as catch };
2331
2377
  /**
2332
2378
  * Recovers from specific tagged errors.
2333
2379
  *
2334
- * @example
2380
+ * **Example** (Recovering from tagged layer errors)
2381
+ *
2335
2382
  * ```ts
2336
- * import { Data, Effect, Layer, Context } from "effect"
2383
+ * import { Context, Data, Effect, Layer } from "effect"
2337
2384
  *
2338
2385
  * class ConfigError extends Data.TaggedError("ConfigError") {}
2339
2386
  *
@@ -2350,16 +2397,17 @@ catch_ as catch };
2350
2397
  * )
2351
2398
  * ```
2352
2399
  *
2353
- * @since 4.0.0
2354
2400
  * @category error handling
2401
+ * @since 4.0.0
2355
2402
  */
2356
2403
  export declare const catchTag: {
2357
2404
  /**
2358
2405
  * Recovers from specific tagged errors.
2359
2406
  *
2360
- * @example
2407
+ * **Example** (Recovering from tagged layer errors)
2408
+ *
2361
2409
  * ```ts
2362
- * import { Data, Effect, Layer, Context } from "effect"
2410
+ * import { Context, Data, Effect, Layer } from "effect"
2363
2411
  *
2364
2412
  * class ConfigError extends Data.TaggedError("ConfigError") {}
2365
2413
  *
@@ -2376,16 +2424,17 @@ export declare const catchTag: {
2376
2424
  * )
2377
2425
  * ```
2378
2426
  *
2379
- * @since 4.0.0
2380
2427
  * @category error handling
2428
+ * @since 4.0.0
2381
2429
  */
2382
2430
  <const K extends Types.Tags<E> | NonEmptyReadonlyArray<Types.Tags<E>>, E, RIn2, E2, ROut2>(k: K, f: (e: Types.ExtractTag<Types.NoInfer<E>, K extends NonEmptyReadonlyArray<string> ? K[number] : K>) => Layer<ROut2, E2, RIn2>): <RIn, ROut>(self: Layer<ROut, E, RIn>) => Layer<ROut & ROut2, E2 | Types.ExcludeTag<E, K extends NonEmptyReadonlyArray<string> ? K[number] : K>, RIn2 | RIn>;
2383
2431
  /**
2384
2432
  * Recovers from specific tagged errors.
2385
2433
  *
2386
- * @example
2434
+ * **Example** (Recovering from tagged layer errors)
2435
+ *
2387
2436
  * ```ts
2388
- * import { Data, Effect, Layer, Context } from "effect"
2437
+ * import { Context, Data, Effect, Layer } from "effect"
2389
2438
  *
2390
2439
  * class ConfigError extends Data.TaggedError("ConfigError") {}
2391
2440
  *
@@ -2402,183 +2451,156 @@ export declare const catchTag: {
2402
2451
  * )
2403
2452
  * ```
2404
2453
  *
2405
- * @since 4.0.0
2406
2454
  * @category error handling
2455
+ * @since 4.0.0
2407
2456
  */
2408
2457
  <RIn, E, ROut, const K extends Types.Tags<E> | NonEmptyReadonlyArray<Types.Tags<E>>, RIn2, E2, ROut2>(self: Layer<ROut, E, RIn>, k: K, f: (e: Types.ExtractTag<E, K extends NonEmptyReadonlyArray<string> ? K[number] : K>) => Layer<ROut2, E2, RIn2>): Layer<ROut & ROut2, E2 | Types.ExcludeTag<E, K extends NonEmptyReadonlyArray<string> ? K[number] : K>, RIn | RIn2>;
2409
2458
  };
2410
2459
  /**
2411
- * Recovers from all errors.
2460
+ * Recovers from any failure cause by switching to another layer.
2461
+ *
2462
+ * **Details**
2463
+ * The handler receives the full `Cause` of the failed layer, including typed
2464
+ * errors, defects, and interruption information, and returns the fallback layer
2465
+ * to build instead.
2466
+ *
2467
+ * **Example** (Recovering from layer failures by cause)
2412
2468
  *
2413
- * @example
2414
2469
  * ```ts
2415
- * import { Data, Effect, Layer, Context } from "effect"
2470
+ * import { Context, Data, Effect, Layer } from "effect"
2416
2471
  *
2417
2472
  * class DatabaseError extends Data.TaggedError("DatabaseError")<{
2418
2473
  * message: string
2419
2474
  * }> {}
2420
2475
  *
2421
- * class NetworkError extends Data.TaggedError("NetworkError")<{
2422
- * reason: string
2423
- * }> {}
2424
- *
2425
2476
  * class Database extends Context.Service<Database, {
2426
2477
  * readonly query: (sql: string) => Effect.Effect<string>
2427
2478
  * }>()("Database") {}
2428
2479
  *
2429
- * class Logger extends Context.Service<Logger, {
2430
- * readonly log: (msg: string) => Effect.Effect<void>
2431
- * }>()("Logger") {}
2432
- *
2433
- * // Primary database layer that might fail
2434
- * const primaryDatabaseLayer = Layer.effect(Database)(Effect.gen(function*() {
2435
- * return yield* new DatabaseError({ message: "Primary DB unreachable" })
2436
- * return { query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Primary: ${sql}`)) }
2437
- * }))
2480
+ * const primaryDatabaseLayer = Layer.effect(Database)(
2481
+ * Effect.fail(new DatabaseError({ message: "Primary DB unreachable" }))
2482
+ * )
2438
2483
  *
2439
- * // Fallback layers for different error causes
2440
2484
  * const databaseWithFallback = primaryDatabaseLayer.pipe(
2441
2485
  * Layer.catchCause(() => {
2442
- * // For any cause/error, fallback to in-memory database
2443
- * return Layer.mergeAll(
2444
- * Layer.succeed(Database)({
2445
- * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Memory: ${sql}`))
2446
- * }),
2447
- * Layer.succeed(Logger)({
2448
- * log: Effect.fn("Logger.log")((msg: string) =>
2449
- * Effect.sync(() => console.log(`[FALLBACK] ${msg}`))
2450
- * )
2451
- * })
2452
- * )
2486
+ * return Layer.succeed(Database)({
2487
+ * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Memory: ${sql}`))
2488
+ * })
2453
2489
  * })
2454
2490
  * )
2455
2491
  *
2456
2492
  * const program = Effect.gen(function*() {
2457
2493
  * const database = yield* Database
2458
- * return yield* database.query("SELECT * FROM users")
2494
+ * const result = yield* database.query("SELECT * FROM users")
2495
+ * console.log(result)
2459
2496
  * }).pipe(
2460
2497
  * Effect.provide(databaseWithFallback)
2461
2498
  * )
2499
+ *
2500
+ * Effect.runPromise(program)
2501
+ * // Memory: SELECT * FROM users
2462
2502
  * ```
2463
2503
  *
2464
- * @since 2.0.0
2465
2504
  * @category error handling
2505
+ * @since 4.0.0
2466
2506
  */
2467
2507
  export declare const catchCause: {
2468
2508
  /**
2469
- * Recovers from all errors.
2509
+ * Recovers from any failure cause by switching to another layer.
2510
+ *
2511
+ * **Details**
2512
+ * The handler receives the full `Cause` of the failed layer, including typed
2513
+ * errors, defects, and interruption information, and returns the fallback layer
2514
+ * to build instead.
2515
+ *
2516
+ * **Example** (Recovering from layer failures by cause)
2470
2517
  *
2471
- * @example
2472
2518
  * ```ts
2473
- * import { Data, Effect, Layer, Context } from "effect"
2519
+ * import { Context, Data, Effect, Layer } from "effect"
2474
2520
  *
2475
2521
  * class DatabaseError extends Data.TaggedError("DatabaseError")<{
2476
2522
  * message: string
2477
2523
  * }> {}
2478
2524
  *
2479
- * class NetworkError extends Data.TaggedError("NetworkError")<{
2480
- * reason: string
2481
- * }> {}
2482
- *
2483
2525
  * class Database extends Context.Service<Database, {
2484
2526
  * readonly query: (sql: string) => Effect.Effect<string>
2485
2527
  * }>()("Database") {}
2486
2528
  *
2487
- * class Logger extends Context.Service<Logger, {
2488
- * readonly log: (msg: string) => Effect.Effect<void>
2489
- * }>()("Logger") {}
2490
- *
2491
- * // Primary database layer that might fail
2492
- * const primaryDatabaseLayer = Layer.effect(Database)(Effect.gen(function*() {
2493
- * return yield* new DatabaseError({ message: "Primary DB unreachable" })
2494
- * return { query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Primary: ${sql}`)) }
2495
- * }))
2529
+ * const primaryDatabaseLayer = Layer.effect(Database)(
2530
+ * Effect.fail(new DatabaseError({ message: "Primary DB unreachable" }))
2531
+ * )
2496
2532
  *
2497
- * // Fallback layers for different error causes
2498
2533
  * const databaseWithFallback = primaryDatabaseLayer.pipe(
2499
2534
  * Layer.catchCause(() => {
2500
- * // For any cause/error, fallback to in-memory database
2501
- * return Layer.mergeAll(
2502
- * Layer.succeed(Database)({
2503
- * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Memory: ${sql}`))
2504
- * }),
2505
- * Layer.succeed(Logger)({
2506
- * log: Effect.fn("Logger.log")((msg: string) =>
2507
- * Effect.sync(() => console.log(`[FALLBACK] ${msg}`))
2508
- * )
2509
- * })
2510
- * )
2535
+ * return Layer.succeed(Database)({
2536
+ * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Memory: ${sql}`))
2537
+ * })
2511
2538
  * })
2512
2539
  * )
2513
2540
  *
2514
2541
  * const program = Effect.gen(function*() {
2515
2542
  * const database = yield* Database
2516
- * return yield* database.query("SELECT * FROM users")
2543
+ * const result = yield* database.query("SELECT * FROM users")
2544
+ * console.log(result)
2517
2545
  * }).pipe(
2518
2546
  * Effect.provide(databaseWithFallback)
2519
2547
  * )
2548
+ *
2549
+ * Effect.runPromise(program)
2550
+ * // Memory: SELECT * FROM users
2520
2551
  * ```
2521
2552
  *
2522
- * @since 2.0.0
2523
2553
  * @category error handling
2554
+ * @since 4.0.0
2524
2555
  */
2525
2556
  <E, RIn2, E2, ROut2>(onError: (cause: Cause.Cause<E>) => Layer<ROut2, E2, RIn2>): <RIn, ROut>(self: Layer<ROut, E, RIn>) => Layer<ROut & ROut2, E2, RIn2 | RIn>;
2526
2557
  /**
2527
- * Recovers from all errors.
2558
+ * Recovers from any failure cause by switching to another layer.
2559
+ *
2560
+ * **Details**
2561
+ * The handler receives the full `Cause` of the failed layer, including typed
2562
+ * errors, defects, and interruption information, and returns the fallback layer
2563
+ * to build instead.
2564
+ *
2565
+ * **Example** (Recovering from layer failures by cause)
2528
2566
  *
2529
- * @example
2530
2567
  * ```ts
2531
- * import { Data, Effect, Layer, Context } from "effect"
2568
+ * import { Context, Data, Effect, Layer } from "effect"
2532
2569
  *
2533
2570
  * class DatabaseError extends Data.TaggedError("DatabaseError")<{
2534
2571
  * message: string
2535
2572
  * }> {}
2536
2573
  *
2537
- * class NetworkError extends Data.TaggedError("NetworkError")<{
2538
- * reason: string
2539
- * }> {}
2540
- *
2541
2574
  * class Database extends Context.Service<Database, {
2542
2575
  * readonly query: (sql: string) => Effect.Effect<string>
2543
2576
  * }>()("Database") {}
2544
2577
  *
2545
- * class Logger extends Context.Service<Logger, {
2546
- * readonly log: (msg: string) => Effect.Effect<void>
2547
- * }>()("Logger") {}
2548
- *
2549
- * // Primary database layer that might fail
2550
- * const primaryDatabaseLayer = Layer.effect(Database)(Effect.gen(function*() {
2551
- * return yield* new DatabaseError({ message: "Primary DB unreachable" })
2552
- * return { query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Primary: ${sql}`)) }
2553
- * }))
2578
+ * const primaryDatabaseLayer = Layer.effect(Database)(
2579
+ * Effect.fail(new DatabaseError({ message: "Primary DB unreachable" }))
2580
+ * )
2554
2581
  *
2555
- * // Fallback layers for different error causes
2556
2582
  * const databaseWithFallback = primaryDatabaseLayer.pipe(
2557
2583
  * Layer.catchCause(() => {
2558
- * // For any cause/error, fallback to in-memory database
2559
- * return Layer.mergeAll(
2560
- * Layer.succeed(Database)({
2561
- * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Memory: ${sql}`))
2562
- * }),
2563
- * Layer.succeed(Logger)({
2564
- * log: Effect.fn("Logger.log")((msg: string) =>
2565
- * Effect.sync(() => console.log(`[FALLBACK] ${msg}`))
2566
- * )
2567
- * })
2568
- * )
2584
+ * return Layer.succeed(Database)({
2585
+ * query: Effect.fn("Database.query")((sql: string) => Effect.succeed(`Memory: ${sql}`))
2586
+ * })
2569
2587
  * })
2570
2588
  * )
2571
2589
  *
2572
2590
  * const program = Effect.gen(function*() {
2573
2591
  * const database = yield* Database
2574
- * return yield* database.query("SELECT * FROM users")
2592
+ * const result = yield* database.query("SELECT * FROM users")
2593
+ * console.log(result)
2575
2594
  * }).pipe(
2576
2595
  * Effect.provide(databaseWithFallback)
2577
2596
  * )
2597
+ *
2598
+ * Effect.runPromise(program)
2599
+ * // Memory: SELECT * FROM users
2578
2600
  * ```
2579
2601
  *
2580
- * @since 2.0.0
2581
2602
  * @category error handling
2603
+ * @since 4.0.0
2582
2604
  */
2583
2605
  <RIn, E, ROut, RIn2, E2, ROut22>(self: Layer<ROut, E, RIn>, onError: (cause: Cause.Cause<E>) => Layer<ROut22, E2, RIn2>): Layer<ROut & ROut22, E2, RIn | RIn2>;
2584
2606
  };
@@ -2597,8 +2619,8 @@ export declare const catchCause: {
2597
2619
  * This is useful for adapting or extending a service's behavior during the
2598
2620
  * creation of a layer.
2599
2621
  *
2600
- * @since 3.13.0
2601
2622
  * @category utils
2623
+ * @since 3.13.0
2602
2624
  */
2603
2625
  export declare const updateService: {
2604
2626
  /**
@@ -2616,8 +2638,8 @@ export declare const updateService: {
2616
2638
  * This is useful for adapting or extending a service's behavior during the
2617
2639
  * creation of a layer.
2618
2640
  *
2619
- * @since 3.13.0
2620
2641
  * @category utils
2642
+ * @since 3.13.0
2621
2643
  */
2622
2644
  <I, A>(service: Context.Key<I, A>, f: (a: Types.NoInfer<A>) => A): <A1, E1, R1>(layer: Layer<A1, E1, R1>) => Layer<A1, E1, I | R1>;
2623
2645
  /**
@@ -2635,70 +2657,92 @@ export declare const updateService: {
2635
2657
  * This is useful for adapting or extending a service's behavior during the
2636
2658
  * creation of a layer.
2637
2659
  *
2638
- * @since 3.13.0
2639
2660
  * @category utils
2661
+ * @since 3.13.0
2640
2662
  */
2641
2663
  <A1, E1, R1, I, A>(layer: Layer<A1, E1, R1>, service: Context.Key<I, A>, f: (a: Types.NoInfer<A>) => A): Layer<A1, E1, I | R1>;
2642
2664
  };
2643
2665
  /**
2644
2666
  * Creates a fresh version of this layer that will not be shared.
2645
2667
  *
2646
- * @example
2668
+ * **Example** (Creating non-shared layer instances)
2669
+ *
2647
2670
  * ```ts
2648
- * import { Effect, Layer, Ref, Context } from "effect"
2671
+ * import { Context, Effect, Layer, Ref } from "effect"
2649
2672
  *
2650
2673
  * class Counter extends Context.Service<Counter, {
2651
- * readonly count: number
2652
- * readonly increment: () => Effect.Effect<number>
2674
+ * readonly id: number
2653
2675
  * }>()("Counter") {}
2654
2676
  *
2655
- * // Layer that creates a counter with shared state
2656
- * const counterLayer = Layer.effect(Counter)(Effect.gen(function*() {
2657
- * const ref = yield* Ref.make(0)
2658
- * return {
2659
- * count: 0,
2660
- * increment: Effect.fn("Counter.increment")(() =>
2661
- * Ref.update(ref, (n) => n + 1).pipe(
2662
- * Effect.flatMap(() => Ref.get(ref))
2663
- * )
2664
- * )
2665
- * }
2677
+ * class Left extends Context.Service<Left, {
2678
+ * readonly counterId: number
2679
+ * }>()("Left") {}
2680
+ *
2681
+ * class Right extends Context.Service<Right, {
2682
+ * readonly counterId: number
2683
+ * }>()("Right") {}
2684
+ *
2685
+ * const leftLayer = Layer.effect(Left)(Effect.gen(function*() {
2686
+ * const counter = yield* Counter
2687
+ * return { counterId: counter.id }
2666
2688
  * }))
2667
2689
  *
2668
- * // By default, layers are shared - same instance used everywhere
2669
- * const sharedProgram = Effect.gen(function*() {
2670
- * const counter1 = yield* Counter
2671
- * const counter2 = yield* Counter
2690
+ * const rightLayer = Layer.effect(Right)(Effect.gen(function*() {
2691
+ * const counter = yield* Counter
2692
+ * return { counterId: counter.id }
2693
+ * }))
2672
2694
  *
2673
- * // Both counter1 and counter2 refer to the same instance
2674
- * console.log("Shared layer - same instance")
2675
- * }).pipe(
2676
- * Effect.provide(counterLayer)
2677
- * )
2695
+ * const showIds = Effect.gen(function*() {
2696
+ * const left = yield* Left
2697
+ * const right = yield* Right
2698
+ * console.log(`same Counter: ${left.counterId === right.counterId}`)
2699
+ * })
2678
2700
  *
2679
- * // Fresh layer creates a new instance each time
2680
- * const freshProgram = Effect.gen(function*() {
2681
- * const counter1 = yield* Counter
2682
- * const counter2 = yield* Counter
2701
+ * const program = Effect.gen(function*() {
2702
+ * const nextId = yield* Ref.make(0)
2683
2703
  *
2684
- * // counter1 and counter2 are different instances
2685
- * console.log("Fresh layer - different instances")
2686
- * }).pipe(
2687
- * Effect.provide(Layer.fresh(counterLayer))
2688
- * )
2704
+ * const counterLayer = Layer.effect(Counter)(Effect.gen(function*() {
2705
+ * const id = yield* Ref.updateAndGet(nextId, (n) => n + 1)
2706
+ * console.log("constructed Counter")
2707
+ * return { id }
2708
+ * }))
2709
+ *
2710
+ * const shared = Layer.merge(
2711
+ * Layer.provide(leftLayer, counterLayer),
2712
+ * Layer.provide(rightLayer, counterLayer)
2713
+ * )
2714
+ *
2715
+ * yield* Effect.provide(showIds, shared)
2716
+ *
2717
+ * const freshCounterLayer = Layer.fresh(counterLayer)
2718
+ * const fresh = Layer.merge(
2719
+ * Layer.provide(leftLayer, freshCounterLayer),
2720
+ * Layer.provide(rightLayer, freshCounterLayer)
2721
+ * )
2722
+ *
2723
+ * yield* Effect.provide(showIds, fresh)
2724
+ * })
2725
+ *
2726
+ * Effect.runPromise(program)
2727
+ * // constructed Counter
2728
+ * // same Counter: true
2729
+ * // constructed Counter
2730
+ * // constructed Counter
2731
+ * // same Counter: false
2689
2732
  * ```
2690
2733
  *
2691
- * @since 2.0.0
2692
2734
  * @category utils
2735
+ * @since 2.0.0
2693
2736
  */
2694
2737
  export declare const fresh: <A, E, R>(self: Layer<A, E, R>) => Layer<A, E, R>;
2695
2738
  /**
2696
2739
  * Builds this layer and uses it until it is interrupted. This is useful when
2697
2740
  * your entire application is a layer, such as an HTTP server.
2698
2741
  *
2699
- * @example
2742
+ * **Example** (Launching an application layer)
2743
+ *
2700
2744
  * ```ts
2701
- * import { Console, Effect, Layer, Context } from "effect"
2745
+ * import { Console, Context, Effect, Layer } from "effect"
2702
2746
  *
2703
2747
  * class HttpServer extends Context.Service<HttpServer, {
2704
2748
  * readonly start: () => Effect.Effect<string>
@@ -2743,8 +2787,8 @@ export declare const fresh: <A, E, R>(self: Layer<A, E, R>) => Layer<A, E, R>;
2743
2787
  * // Effect.runFork(application)
2744
2788
  * ```
2745
2789
  *
2790
+ * @category converting
2746
2791
  * @since 2.0.0
2747
- * @category conversions
2748
2792
  */
2749
2793
  export declare const launch: <RIn, E, ROut>(self: Layer<ROut, E, RIn>) => Effect<never, E, RIn>;
2750
2794
  /**
@@ -2754,8 +2798,8 @@ export declare const launch: <RIn, E, ROut>(self: Layer<ROut, E, RIn>) => Effect
2754
2798
  * while keeping non-Effect properties required. This allows you to provide
2755
2799
  * only the methods you need to test while leaving others unimplemented.
2756
2800
  *
2757
- * @since 4.0.0
2758
2801
  * @category Testing
2802
+ * @since 3.17.0
2759
2803
  */
2760
2804
  export type PartialEffectful<A extends object> = Types.Simplify<{
2761
2805
  [K in keyof A as A[K] extends AnyEffectOrStream ? K : never]?: A[K];
@@ -2768,9 +2812,10 @@ type AnyEffectOrStream = Effect<any, any, any> | Stream.Stream<any, any, any> |
2768
2812
  * implementation of the service, and any methods not provided will
2769
2813
  * throw an unimplemented defect when called.
2770
2814
  *
2771
- * @example
2815
+ * **Example** (Mocking services for tests)
2816
+ *
2772
2817
  * ```ts
2773
- * import { Effect, Layer, Context } from "effect"
2818
+ * import { Context, Effect, Layer } from "effect"
2774
2819
  *
2775
2820
  * class UserService extends Context.Service<UserService, {
2776
2821
  * readonly config: { apiUrl: string }
@@ -2806,8 +2851,8 @@ type AnyEffectOrStream = Effect<any, any, any> | Stream.Stream<any, any, any> |
2806
2851
  * )
2807
2852
  * ```
2808
2853
  *
2809
- * @since 4.0.0
2810
2854
  * @category Testing
2855
+ * @since 3.17.0
2811
2856
  */
2812
2857
  export declare const mock: {
2813
2858
  /**
@@ -2815,9 +2860,10 @@ export declare const mock: {
2815
2860
  * implementation of the service, and any methods not provided will
2816
2861
  * throw an unimplemented defect when called.
2817
2862
  *
2818
- * @example
2863
+ * **Example** (Mocking services for tests)
2864
+ *
2819
2865
  * ```ts
2820
- * import { Effect, Layer, Context } from "effect"
2866
+ * import { Context, Effect, Layer } from "effect"
2821
2867
  *
2822
2868
  * class UserService extends Context.Service<UserService, {
2823
2869
  * readonly config: { apiUrl: string }
@@ -2853,8 +2899,8 @@ export declare const mock: {
2853
2899
  * )
2854
2900
  * ```
2855
2901
  *
2856
- * @since 4.0.0
2857
2902
  * @category Testing
2903
+ * @since 3.17.0
2858
2904
  */
2859
2905
  <I, S extends object>(service: Context.Key<I, S>): (implementation: PartialEffectful<S>) => Layer<I>;
2860
2906
  /**
@@ -2862,9 +2908,10 @@ export declare const mock: {
2862
2908
  * implementation of the service, and any methods not provided will
2863
2909
  * throw an unimplemented defect when called.
2864
2910
  *
2865
- * @example
2911
+ * **Example** (Mocking services for tests)
2912
+ *
2866
2913
  * ```ts
2867
- * import { Effect, Layer, Context } from "effect"
2914
+ * import { Context, Effect, Layer } from "effect"
2868
2915
  *
2869
2916
  * class UserService extends Context.Service<UserService, {
2870
2917
  * readonly config: { apiUrl: string }
@@ -2900,8 +2947,8 @@ export declare const mock: {
2900
2947
  * )
2901
2948
  * ```
2902
2949
  *
2903
- * @since 4.0.0
2904
2950
  * @category Testing
2951
+ * @since 3.17.0
2905
2952
  */
2906
2953
  <I, S extends object>(service: Context.Key<I, S>, implementation: Types.NoInfer<PartialEffectful<S>>): Layer<I>;
2907
2954
  };
@@ -2911,7 +2958,8 @@ export declare const mock: {
2911
2958
  * This function provides compile-time type checking to ensure that the success
2912
2959
  * value of an layer conforms to a specific type constraint.
2913
2960
  *
2914
- * @example
2961
+ * **Example** (Constraining layer success types)
2962
+ *
2915
2963
  * ```ts
2916
2964
  * import { Layer } from "effect"
2917
2965
  *
@@ -2927,11 +2975,11 @@ export declare const mock: {
2927
2975
  * // This would cause a TypeScript compilation error:
2928
2976
  * // const invalidLayer = satisfiesNumber(StringLayer)
2929
2977
  * // ^^^^^^^^^^^
2930
- * // Type 'number' is not assignable to type 'string'
2978
+ * // Type 'string' is not assignable to type 'number'
2931
2979
  * ```
2932
2980
  *
2933
- * @since 4.0.0
2934
2981
  * @category Type constraints
2982
+ * @since 4.0.0
2935
2983
  */
2936
2984
  export declare const satisfiesSuccessType: <ROut>() => <ROut2 extends ROut, E, RIn>(layer: Layer<ROut2, E, RIn>) => Layer<ROut2, E, RIn>;
2937
2985
  /**
@@ -2940,7 +2988,8 @@ export declare const satisfiesSuccessType: <ROut>() => <ROut2 extends ROut, E, R
2940
2988
  * This function provides compile-time type checking to ensure that the error
2941
2989
  * type of an layer conforms to a specific type constraint.
2942
2990
  *
2943
- * @example
2991
+ * **Example** (Constraining layer error types)
2992
+ *
2944
2993
  * ```ts
2945
2994
  * import { Layer } from "effect"
2946
2995
  *
@@ -2960,8 +3009,8 @@ export declare const satisfiesSuccessType: <ROut>() => <ROut2 extends ROut, E, R
2960
3009
  * // Type 'string' is not assignable to type 'Error'
2961
3010
  * ```
2962
3011
  *
2963
- * @since 4.0.0
2964
3012
  * @category Type constraints
3013
+ * @since 4.0.0
2965
3014
  */
2966
3015
  export declare const satisfiesErrorType: <E>() => <ROut, E2 extends E, RIn>(layer: Layer<ROut, E2, RIn>) => Layer<ROut, E2, RIn>;
2967
3016
  /**
@@ -2970,14 +3019,15 @@ export declare const satisfiesErrorType: <E>() => <ROut, E2 extends E, RIn>(laye
2970
3019
  * This function provides compile-time type checking to ensure that the
2971
3020
  * requirements (context) type of an layer conforms to a specific type constraint.
2972
3021
  *
2973
- * @example
3022
+ * **Example** (Constraining layer service requirements)
3023
+ *
2974
3024
  * ```ts
2975
3025
  * import { Layer } from "effect"
2976
3026
  *
2977
3027
  * declare const FortyTwoLayer: Layer.Layer<never, never, 42>
2978
3028
  * declare const StringLayer: Layer.Layer<never, never, string>
2979
3029
  *
2980
- * // Define a constraint that the success type must be a number
3030
+ * // Define a constraint that the service requirements must be numbers
2981
3031
  * const satisfiesNumber = Layer.satisfiesServicesType<number>()
2982
3032
  *
2983
3033
  * // This works - Layer<never, never, 42> extends Layer<never, never, number>
@@ -2989,16 +3039,16 @@ export declare const satisfiesErrorType: <E>() => <ROut, E2 extends E, RIn>(laye
2989
3039
  * // Type 'string' is not assignable to type 'number'
2990
3040
  * ```
2991
3041
  *
2992
- * @since 4.0.0
2993
3042
  * @category Type constraints
3043
+ * @since 4.0.0
2994
3044
  */
2995
3045
  export declare const satisfiesServicesType: <RIn>() => <ROut, E, RIn2 extends RIn>(layer: Layer<ROut, E, RIn2>) => Layer<ROut, E, RIn2>;
2996
3046
  /**
2997
3047
  * Represents options that can be used to control the behavior of spans created
2998
3048
  * for layers.
2999
3049
  *
3050
+ * @category models
3000
3051
  * @since 4.0.0
3001
- * @category Models
3002
3052
  */
3003
3053
  export interface SpanOptions extends Tracer.SpanOptions {
3004
3054
  /**
@@ -3015,9 +3065,11 @@ export interface SpanOptions extends Tracer.SpanOptions {
3015
3065
  * operations within the layer constructor part of the same trace span. The span
3016
3066
  * is automatically closed when the layer's scope is closed.
3017
3067
  *
3018
- * @example
3068
+ * **Example** (Tracing layer construction with a span)
3069
+ *
3019
3070
  * ```ts
3020
- * import { Console, Effect, Layer, Context, type Tracer } from "effect"
3071
+ * import { Console, Context, Effect, Layer } from "effect"
3072
+ * import type { Tracer } from "effect"
3021
3073
  *
3022
3074
  * class Database extends Context.Service<Database, {
3023
3075
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -3049,21 +3101,22 @@ export interface SpanOptions extends Tracer.SpanOptions {
3049
3101
  * })
3050
3102
  * ```
3051
3103
  *
3052
- * @since 4.0.0
3053
3104
  * @category tracing
3105
+ * @since 2.0.0
3054
3106
  */
3055
3107
  export declare const span: (name: string, options?: SpanOptions) => Layer<Tracer.ParentSpan>;
3056
3108
  /**
3057
- * Constructs a new `Layer` which takes an existing span and registers it as the
3058
- * current parent span.
3109
+ * Constructs a layer that provides an existing span as the current parent span.
3059
3110
  *
3060
- * This allows you to create a traced scope for layer construction, making all
3061
- * operations within the layer constructor part of the same trace span. The span
3062
- * is automatically closed when the layer's scope is closed.
3111
+ * **Details**
3112
+ * The supplied span is made available through `Tracer.ParentSpan` for layers
3113
+ * that are built with this layer. This API does not create, end, or close the
3114
+ * span; the caller remains responsible for the span's lifetime.
3115
+ *
3116
+ * **Example** (Using an existing parent span)
3063
3117
  *
3064
- * @example
3065
3118
  * ```ts
3066
- * import { Console, Effect, Layer, Context, Tracer } from "effect"
3119
+ * import { Console, Context, Effect, Layer, Tracer } from "effect"
3067
3120
  *
3068
3121
  * class Database extends Context.Service<Database, {
3069
3122
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -3088,8 +3141,8 @@ export declare const span: (name: string, options?: SpanOptions) => Layer<Tracer
3088
3141
  * }))))
3089
3142
  * ```
3090
3143
  *
3091
- * @since 4.0.0
3092
3144
  * @category tracing
3145
+ * @since 2.0.0
3093
3146
  */
3094
3147
  export declare const parentSpan: (span: Tracer.AnySpan) => Layer<Tracer.ParentSpan>;
3095
3148
  /**
@@ -3100,9 +3153,10 @@ export declare const parentSpan: (span: Tracer.AnySpan) => Layer<Tracer.ParentSp
3100
3153
  * is automatically ended when the layer's scope is closed. This is useful for
3101
3154
  * tracking the lifecycle and performance of layer initialization.
3102
3155
  *
3103
- * @example
3156
+ * **Example** (Wrapping a layer with a span)
3157
+ *
3104
3158
  * ```ts
3105
- * import { Effect, Layer, Context } from "effect"
3159
+ * import { Context, Effect, Layer } from "effect"
3106
3160
  *
3107
3161
  * class Database extends Context.Service<Database, {
3108
3162
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -3147,8 +3201,8 @@ export declare const parentSpan: (span: Tracer.AnySpan) => Layer<Tracer.ParentSp
3147
3201
  * )
3148
3202
  * ```
3149
3203
  *
3150
- * @since 4.0.0
3151
3204
  * @category tracing
3205
+ * @since 2.0.0
3152
3206
  */
3153
3207
  export declare const withSpan: {
3154
3208
  /**
@@ -3159,9 +3213,10 @@ export declare const withSpan: {
3159
3213
  * is automatically ended when the layer's scope is closed. This is useful for
3160
3214
  * tracking the lifecycle and performance of layer initialization.
3161
3215
  *
3162
- * @example
3216
+ * **Example** (Wrapping a layer with a span)
3217
+ *
3163
3218
  * ```ts
3164
- * import { Effect, Layer, Context } from "effect"
3219
+ * import { Context, Effect, Layer } from "effect"
3165
3220
  *
3166
3221
  * class Database extends Context.Service<Database, {
3167
3222
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -3206,8 +3261,8 @@ export declare const withSpan: {
3206
3261
  * )
3207
3262
  * ```
3208
3263
  *
3209
- * @since 4.0.0
3210
3264
  * @category tracing
3265
+ * @since 2.0.0
3211
3266
  */
3212
3267
  (name: string, options?: SpanOptions): <A, E, R>(self: Layer<A, E, R>) => Layer<A, E, Exclude<R, Tracer.ParentSpan>>;
3213
3268
  /**
@@ -3218,9 +3273,10 @@ export declare const withSpan: {
3218
3273
  * is automatically ended when the layer's scope is closed. This is useful for
3219
3274
  * tracking the lifecycle and performance of layer initialization.
3220
3275
  *
3221
- * @example
3276
+ * **Example** (Wrapping a layer with a span)
3277
+ *
3222
3278
  * ```ts
3223
- * import { Effect, Layer, Context } from "effect"
3279
+ * import { Context, Effect, Layer } from "effect"
3224
3280
  *
3225
3281
  * class Database extends Context.Service<Database, {
3226
3282
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -3265,21 +3321,23 @@ export declare const withSpan: {
3265
3321
  * )
3266
3322
  * ```
3267
3323
  *
3268
- * @since 4.0.0
3269
3324
  * @category tracing
3325
+ * @since 2.0.0
3270
3326
  */
3271
3327
  <A, E, R>(self: Layer<A, E, R>, name: string, options?: SpanOptions): Layer<A, E, Exclude<R, Tracer.ParentSpan>>;
3272
3328
  };
3273
3329
  /**
3274
- * Wraps a `Layer` with a new tracing span and sets the span as the parent span.
3330
+ * Wraps a layer so spans created during its construction use the supplied span
3331
+ * as their parent.
3275
3332
  *
3276
- * This attaches a layer to an existing trace span, making all operations within
3277
- * the layer children of the provided parent span. This is useful for integrating
3278
- * layer construction into an existing trace hierarchy.
3333
+ * **Details**
3334
+ * Use this to attach layer construction to an existing trace hierarchy. This API
3335
+ * does not create or end the supplied parent span.
3336
+ *
3337
+ * **Example** (Attaching layers to an existing parent span)
3279
3338
  *
3280
- * @example
3281
3339
  * ```ts
3282
- * import { Effect, Layer, Context, Tracer } from "effect"
3340
+ * import { Context, Effect, Layer, Tracer } from "effect"
3283
3341
  *
3284
3342
  * class Database extends Context.Service<Database, {
3285
3343
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -3326,20 +3384,22 @@ export declare const withSpan: {
3326
3384
  * )
3327
3385
  * ```
3328
3386
  *
3329
- * @since 4.0.0
3330
3387
  * @category tracing
3388
+ * @since 2.0.0
3331
3389
  */
3332
3390
  export declare const withParentSpan: {
3333
3391
  /**
3334
- * Wraps a `Layer` with a new tracing span and sets the span as the parent span.
3392
+ * Wraps a layer so spans created during its construction use the supplied span
3393
+ * as their parent.
3335
3394
  *
3336
- * This attaches a layer to an existing trace span, making all operations within
3337
- * the layer children of the provided parent span. This is useful for integrating
3338
- * layer construction into an existing trace hierarchy.
3395
+ * **Details**
3396
+ * Use this to attach layer construction to an existing trace hierarchy. This API
3397
+ * does not create or end the supplied parent span.
3398
+ *
3399
+ * **Example** (Attaching layers to an existing parent span)
3339
3400
  *
3340
- * @example
3341
3401
  * ```ts
3342
- * import { Effect, Layer, Context, Tracer } from "effect"
3402
+ * import { Context, Effect, Layer, Tracer } from "effect"
3343
3403
  *
3344
3404
  * class Database extends Context.Service<Database, {
3345
3405
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -3386,20 +3446,22 @@ export declare const withParentSpan: {
3386
3446
  * )
3387
3447
  * ```
3388
3448
  *
3389
- * @since 4.0.0
3390
3449
  * @category tracing
3450
+ * @since 2.0.0
3391
3451
  */
3392
3452
  (span: Tracer.AnySpan, options?: Tracer.TraceOptions): <A, E, R>(self: Layer<A, E, R>) => Layer<A, E, Exclude<R, Tracer.ParentSpan>>;
3393
3453
  /**
3394
- * Wraps a `Layer` with a new tracing span and sets the span as the parent span.
3454
+ * Wraps a layer so spans created during its construction use the supplied span
3455
+ * as their parent.
3456
+ *
3457
+ * **Details**
3458
+ * Use this to attach layer construction to an existing trace hierarchy. This API
3459
+ * does not create or end the supplied parent span.
3395
3460
  *
3396
- * This attaches a layer to an existing trace span, making all operations within
3397
- * the layer children of the provided parent span. This is useful for integrating
3398
- * layer construction into an existing trace hierarchy.
3461
+ * **Example** (Attaching layers to an existing parent span)
3399
3462
  *
3400
- * @example
3401
3463
  * ```ts
3402
- * import { Effect, Layer, Context, Tracer } from "effect"
3464
+ * import { Context, Effect, Layer, Tracer } from "effect"
3403
3465
  *
3404
3466
  * class Database extends Context.Service<Database, {
3405
3467
  * readonly query: (sql: string) => Effect.Effect<string>
@@ -3446,8 +3508,8 @@ export declare const withParentSpan: {
3446
3508
  * )
3447
3509
  * ```
3448
3510
  *
3449
- * @since 4.0.0
3450
3511
  * @category tracing
3512
+ * @since 2.0.0
3451
3513
  */
3452
3514
  <A, E, R>(self: Layer<A, E, R>, span: Tracer.AnySpan, options?: Tracer.TraceOptions): Layer<A, E, Exclude<R, Tracer.ParentSpan>>;
3453
3515
  };