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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1451) hide show
  1. package/dist/Array.d.ts +971 -1037
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +381 -407
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +433 -756
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +200 -325
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +207 -267
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +107 -135
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Boolean.d.ts +146 -188
  14. package/dist/Boolean.d.ts.map +1 -1
  15. package/dist/Boolean.js +64 -84
  16. package/dist/Boolean.js.map +1 -1
  17. package/dist/Brand.js.map +1 -1
  18. package/dist/Cache.d.ts +405 -254
  19. package/dist/Cache.d.ts.map +1 -1
  20. package/dist/Cache.js +166 -101
  21. package/dist/Cache.js.map +1 -1
  22. package/dist/Cause.d.ts +167 -277
  23. package/dist/Cause.d.ts.map +1 -1
  24. package/dist/Cause.js +122 -176
  25. package/dist/Cause.js.map +1 -1
  26. package/dist/Channel.d.ts +729 -768
  27. package/dist/Channel.d.ts.map +1 -1
  28. package/dist/Channel.js +514 -440
  29. package/dist/Channel.js.map +1 -1
  30. package/dist/ChannelSchema.d.ts +1 -1
  31. package/dist/ChannelSchema.d.ts.map +1 -1
  32. package/dist/ChannelSchema.js.map +1 -1
  33. package/dist/Chunk.d.ts +834 -1173
  34. package/dist/Chunk.d.ts.map +1 -1
  35. package/dist/Chunk.js +326 -439
  36. package/dist/Chunk.js.map +1 -1
  37. package/dist/Clock.d.ts +180 -49
  38. package/dist/Clock.d.ts.map +1 -1
  39. package/dist/Clock.js +96 -31
  40. package/dist/Clock.js.map +1 -1
  41. package/dist/Combiner.d.ts +20 -33
  42. package/dist/Combiner.d.ts.map +1 -1
  43. package/dist/Combiner.js +18 -30
  44. package/dist/Combiner.js.map +1 -1
  45. package/dist/Config.d.ts +225 -173
  46. package/dist/Config.d.ts.map +1 -1
  47. package/dist/Config.js +336 -265
  48. package/dist/Config.js.map +1 -1
  49. package/dist/ConfigProvider.d.ts +194 -68
  50. package/dist/ConfigProvider.d.ts.map +1 -1
  51. package/dist/ConfigProvider.js +115 -80
  52. package/dist/ConfigProvider.js.map +1 -1
  53. package/dist/Console.d.ts +233 -33
  54. package/dist/Console.d.ts.map +1 -1
  55. package/dist/Console.js +232 -32
  56. package/dist/Console.js.map +1 -1
  57. package/dist/Context.d.ts +151 -274
  58. package/dist/Context.d.ts.map +1 -1
  59. package/dist/Context.js +171 -214
  60. package/dist/Context.js.map +1 -1
  61. package/dist/Cron.d.ts +68 -77
  62. package/dist/Cron.d.ts.map +1 -1
  63. package/dist/Cron.js +57 -66
  64. package/dist/Cron.js.map +1 -1
  65. package/dist/Crypto.d.ts +13 -15
  66. package/dist/Crypto.d.ts.map +1 -1
  67. package/dist/Crypto.js +9 -10
  68. package/dist/Crypto.js.map +1 -1
  69. package/dist/Data.d.ts +60 -80
  70. package/dist/Data.d.ts.map +1 -1
  71. package/dist/Data.js +16 -23
  72. package/dist/Data.js.map +1 -1
  73. package/dist/DateTime.d.ts +562 -660
  74. package/dist/DateTime.d.ts.map +1 -1
  75. package/dist/DateTime.js +307 -362
  76. package/dist/DateTime.js.map +1 -1
  77. package/dist/Deferred.d.ts +253 -256
  78. package/dist/Deferred.d.ts.map +1 -1
  79. package/dist/Deferred.js +104 -96
  80. package/dist/Deferred.js.map +1 -1
  81. package/dist/Duration.d.ts +216 -308
  82. package/dist/Duration.d.ts.map +1 -1
  83. package/dist/Duration.js +132 -186
  84. package/dist/Duration.js.map +1 -1
  85. package/dist/Effect.d.ts +2841 -3247
  86. package/dist/Effect.d.ts.map +1 -1
  87. package/dist/Effect.js +1322 -1546
  88. package/dist/Effect.js.map +1 -1
  89. package/dist/Effectable.js.map +1 -1
  90. package/dist/Encoding.d.ts +22 -40
  91. package/dist/Encoding.d.ts.map +1 -1
  92. package/dist/Encoding.js +22 -40
  93. package/dist/Encoding.js.map +1 -1
  94. package/dist/Equal.d.ts +33 -37
  95. package/dist/Equal.d.ts.map +1 -1
  96. package/dist/Equal.js +29 -21
  97. package/dist/Equal.js.map +1 -1
  98. package/dist/Equivalence.d.ts +103 -105
  99. package/dist/Equivalence.d.ts.map +1 -1
  100. package/dist/Equivalence.js +77 -79
  101. package/dist/Equivalence.js.map +1 -1
  102. package/dist/ErrorReporter.d.ts +51 -27
  103. package/dist/ErrorReporter.d.ts.map +1 -1
  104. package/dist/ErrorReporter.js +50 -26
  105. package/dist/ErrorReporter.js.map +1 -1
  106. package/dist/ExecutionPlan.d.ts +13 -55
  107. package/dist/ExecutionPlan.d.ts.map +1 -1
  108. package/dist/ExecutionPlan.js +7 -28
  109. package/dist/ExecutionPlan.js.map +1 -1
  110. package/dist/Exit.d.ts +116 -192
  111. package/dist/Exit.d.ts.map +1 -1
  112. package/dist/Exit.js +82 -130
  113. package/dist/Exit.js.map +1 -1
  114. package/dist/Fiber.d.ts +82 -146
  115. package/dist/Fiber.d.ts.map +1 -1
  116. package/dist/Fiber.js +48 -87
  117. package/dist/Fiber.js.map +1 -1
  118. package/dist/FiberHandle.d.ts +152 -105
  119. package/dist/FiberHandle.d.ts.map +1 -1
  120. package/dist/FiberHandle.js +106 -73
  121. package/dist/FiberHandle.js.map +1 -1
  122. package/dist/FiberMap.d.ts +213 -168
  123. package/dist/FiberMap.d.ts.map +1 -1
  124. package/dist/FiberMap.js +114 -89
  125. package/dist/FiberMap.js.map +1 -1
  126. package/dist/FiberSet.d.ts +123 -81
  127. package/dist/FiberSet.d.ts.map +1 -1
  128. package/dist/FiberSet.js +85 -59
  129. package/dist/FiberSet.js.map +1 -1
  130. package/dist/FileSystem.d.ts +153 -264
  131. package/dist/FileSystem.d.ts.map +1 -1
  132. package/dist/FileSystem.js +42 -147
  133. package/dist/FileSystem.js.map +1 -1
  134. package/dist/Filter.d.ts +61 -33
  135. package/dist/Filter.d.ts.map +1 -1
  136. package/dist/Filter.js +26 -15
  137. package/dist/Filter.js.map +1 -1
  138. package/dist/Formatter.d.ts +25 -33
  139. package/dist/Formatter.d.ts.map +1 -1
  140. package/dist/Formatter.js +48 -49
  141. package/dist/Formatter.js.map +1 -1
  142. package/dist/Function.d.ts +76 -145
  143. package/dist/Function.d.ts.map +1 -1
  144. package/dist/Function.js +40 -57
  145. package/dist/Function.js.map +1 -1
  146. package/dist/Graph.d.ts +360 -714
  147. package/dist/Graph.d.ts.map +1 -1
  148. package/dist/Graph.js +168 -297
  149. package/dist/Graph.js.map +1 -1
  150. package/dist/HKT.d.ts +12 -6
  151. package/dist/HKT.d.ts.map +1 -1
  152. package/dist/Hash.d.ts +47 -83
  153. package/dist/Hash.d.ts.map +1 -1
  154. package/dist/Hash.js +46 -68
  155. package/dist/Hash.js.map +1 -1
  156. package/dist/HashMap.d.ts +319 -411
  157. package/dist/HashMap.d.ts.map +1 -1
  158. package/dist/HashMap.js +122 -166
  159. package/dist/HashMap.js.map +1 -1
  160. package/dist/HashRing.d.ts.map +1 -1
  161. package/dist/HashRing.js +1 -0
  162. package/dist/HashRing.js.map +1 -1
  163. package/dist/HashSet.d.ts +177 -284
  164. package/dist/HashSet.d.ts.map +1 -1
  165. package/dist/HashSet.js +68 -109
  166. package/dist/HashSet.js.map +1 -1
  167. package/dist/Inspectable.d.ts +12 -12
  168. package/dist/Inspectable.js +8 -8
  169. package/dist/Inspectable.js.map +1 -1
  170. package/dist/Iterable.d.ts +620 -786
  171. package/dist/Iterable.d.ts.map +1 -1
  172. package/dist/Iterable.js +228 -306
  173. package/dist/Iterable.js.map +1 -1
  174. package/dist/JsonPatch.d.ts +11 -13
  175. package/dist/JsonPatch.d.ts.map +1 -1
  176. package/dist/JsonPatch.js +44 -102
  177. package/dist/JsonPatch.js.map +1 -1
  178. package/dist/JsonPointer.d.ts +8 -8
  179. package/dist/JsonPointer.js +8 -8
  180. package/dist/JsonPointer.js.map +1 -1
  181. package/dist/JsonSchema.d.ts +98 -44
  182. package/dist/JsonSchema.d.ts.map +1 -1
  183. package/dist/JsonSchema.js +297 -234
  184. package/dist/JsonSchema.js.map +1 -1
  185. package/dist/Latch.d.ts +23 -35
  186. package/dist/Latch.d.ts.map +1 -1
  187. package/dist/Latch.js +16 -28
  188. package/dist/Latch.js.map +1 -1
  189. package/dist/Layer.d.ts +359 -260
  190. package/dist/Layer.d.ts.map +1 -1
  191. package/dist/Layer.js +195 -175
  192. package/dist/Layer.js.map +1 -1
  193. package/dist/LayerMap.d.ts +42 -29
  194. package/dist/LayerMap.d.ts.map +1 -1
  195. package/dist/LayerMap.js +31 -21
  196. package/dist/LayerMap.js.map +1 -1
  197. package/dist/LayerRef.d.ts +6 -2
  198. package/dist/LayerRef.d.ts.map +1 -1
  199. package/dist/LayerRef.js +6 -2
  200. package/dist/LayerRef.js.map +1 -1
  201. package/dist/LogLevel.d.ts +114 -214
  202. package/dist/LogLevel.d.ts.map +1 -1
  203. package/dist/LogLevel.js +41 -76
  204. package/dist/LogLevel.js.map +1 -1
  205. package/dist/Logger.d.ts +218 -467
  206. package/dist/Logger.d.ts.map +1 -1
  207. package/dist/Logger.js +204 -450
  208. package/dist/Logger.js.map +1 -1
  209. package/dist/ManagedRuntime.d.ts +7 -5
  210. package/dist/ManagedRuntime.d.ts.map +1 -1
  211. package/dist/ManagedRuntime.js +7 -5
  212. package/dist/ManagedRuntime.js.map +1 -1
  213. package/dist/Match.d.ts +217 -252
  214. package/dist/Match.d.ts.map +1 -1
  215. package/dist/Match.js +150 -183
  216. package/dist/Match.js.map +1 -1
  217. package/dist/Metric.d.ts +442 -993
  218. package/dist/Metric.d.ts.map +1 -1
  219. package/dist/Metric.js +198 -642
  220. package/dist/Metric.js.map +1 -1
  221. package/dist/MutableHashMap.d.ts +144 -173
  222. package/dist/MutableHashMap.d.ts.map +1 -1
  223. package/dist/MutableHashMap.js +68 -79
  224. package/dist/MutableHashMap.js.map +1 -1
  225. package/dist/MutableHashSet.d.ts +84 -89
  226. package/dist/MutableHashSet.d.ts.map +1 -1
  227. package/dist/MutableHashSet.js +44 -47
  228. package/dist/MutableHashSet.js.map +1 -1
  229. package/dist/MutableList.d.ts +71 -370
  230. package/dist/MutableList.d.ts.map +1 -1
  231. package/dist/MutableList.js +59 -284
  232. package/dist/MutableList.js.map +1 -1
  233. package/dist/MutableRef.d.ts +420 -243
  234. package/dist/MutableRef.d.ts.map +1 -1
  235. package/dist/MutableRef.js +209 -120
  236. package/dist/MutableRef.js.map +1 -1
  237. package/dist/Newtype.d.ts +21 -14
  238. package/dist/Newtype.d.ts.map +1 -1
  239. package/dist/Newtype.js +15 -13
  240. package/dist/Newtype.js.map +1 -1
  241. package/dist/NonEmptyIterable.d.ts +7 -137
  242. package/dist/NonEmptyIterable.d.ts.map +1 -1
  243. package/dist/NonEmptyIterable.js +5 -93
  244. package/dist/NonEmptyIterable.js.map +1 -1
  245. package/dist/Number.d.ts +196 -233
  246. package/dist/Number.d.ts.map +1 -1
  247. package/dist/Number.js +90 -109
  248. package/dist/Number.js.map +1 -1
  249. package/dist/Optic.d.ts +97 -189
  250. package/dist/Optic.d.ts.map +1 -1
  251. package/dist/Optic.js +187 -290
  252. package/dist/Optic.js.map +1 -1
  253. package/dist/Option.d.ts +447 -812
  254. package/dist/Option.d.ts.map +1 -1
  255. package/dist/Option.js +211 -392
  256. package/dist/Option.js.map +1 -1
  257. package/dist/Order.d.ts +109 -109
  258. package/dist/Order.js +91 -91
  259. package/dist/Order.js.map +1 -1
  260. package/dist/Ordering.d.ts +20 -23
  261. package/dist/Ordering.d.ts.map +1 -1
  262. package/dist/Ordering.js +8 -9
  263. package/dist/Ordering.js.map +1 -1
  264. package/dist/PartitionedSemaphore.js.map +1 -1
  265. package/dist/Path.d.ts +38 -41
  266. package/dist/Path.d.ts.map +1 -1
  267. package/dist/Path.js +3 -4
  268. package/dist/Path.js.map +1 -1
  269. package/dist/Pipeable.d.ts +6 -5
  270. package/dist/Pipeable.d.ts.map +1 -1
  271. package/dist/Pipeable.js +2 -2
  272. package/dist/Pipeable.js.map +1 -1
  273. package/dist/PlatformError.d.ts +4 -4
  274. package/dist/PlatformError.js +3 -3
  275. package/dist/PlatformError.js.map +1 -1
  276. package/dist/Pool.d.ts +4 -2
  277. package/dist/Pool.d.ts.map +1 -1
  278. package/dist/Pool.js +4 -2
  279. package/dist/Pool.js.map +1 -1
  280. package/dist/Predicate.d.ts +200 -181
  281. package/dist/Predicate.d.ts.map +1 -1
  282. package/dist/Predicate.js +100 -108
  283. package/dist/Predicate.js.map +1 -1
  284. package/dist/PrimaryKey.d.ts +7 -7
  285. package/dist/PrimaryKey.js +5 -5
  286. package/dist/PrimaryKey.js.map +1 -1
  287. package/dist/PubSub.d.ts +425 -494
  288. package/dist/PubSub.d.ts.map +1 -1
  289. package/dist/PubSub.js +373 -362
  290. package/dist/PubSub.js.map +1 -1
  291. package/dist/Pull.d.ts +24 -18
  292. package/dist/Pull.d.ts.map +1 -1
  293. package/dist/Pull.js +11 -9
  294. package/dist/Pull.js.map +1 -1
  295. package/dist/Queue.d.ts +200 -159
  296. package/dist/Queue.d.ts.map +1 -1
  297. package/dist/Queue.js +162 -132
  298. package/dist/Queue.js.map +1 -1
  299. package/dist/Random.d.ts +49 -74
  300. package/dist/Random.d.ts.map +1 -1
  301. package/dist/Random.js +35 -54
  302. package/dist/Random.js.map +1 -1
  303. package/dist/RcMap.d.ts +121 -63
  304. package/dist/RcMap.d.ts.map +1 -1
  305. package/dist/RcMap.js +42 -21
  306. package/dist/RcMap.js.map +1 -1
  307. package/dist/RcRef.d.ts +24 -13
  308. package/dist/RcRef.d.ts.map +1 -1
  309. package/dist/RcRef.js +15 -9
  310. package/dist/RcRef.js.map +1 -1
  311. package/dist/Record.d.ts +291 -488
  312. package/dist/Record.d.ts.map +1 -1
  313. package/dist/Record.js +111 -202
  314. package/dist/Record.js.map +1 -1
  315. package/dist/Redactable.d.ts +6 -2
  316. package/dist/Redactable.d.ts.map +1 -1
  317. package/dist/Redactable.js +7 -2
  318. package/dist/Redactable.js.map +1 -1
  319. package/dist/Redacted.d.ts +25 -25
  320. package/dist/Redacted.d.ts.map +1 -1
  321. package/dist/Redacted.js +19 -20
  322. package/dist/Redacted.js.map +1 -1
  323. package/dist/Reducer.d.ts +8 -15
  324. package/dist/Reducer.d.ts.map +1 -1
  325. package/dist/Reducer.js +6 -12
  326. package/dist/Reducer.js.map +1 -1
  327. package/dist/Ref.d.ts +95 -165
  328. package/dist/Ref.d.ts.map +1 -1
  329. package/dist/Ref.js +75 -122
  330. package/dist/Ref.js.map +1 -1
  331. package/dist/References.d.ts +102 -168
  332. package/dist/References.d.ts.map +1 -1
  333. package/dist/References.js +102 -168
  334. package/dist/References.js.map +1 -1
  335. package/dist/RegExp.d.ts +10 -14
  336. package/dist/RegExp.d.ts.map +1 -1
  337. package/dist/RegExp.js +10 -14
  338. package/dist/RegExp.js.map +1 -1
  339. package/dist/Request.d.ts +31 -21
  340. package/dist/Request.d.ts.map +1 -1
  341. package/dist/Request.js +16 -13
  342. package/dist/Request.js.map +1 -1
  343. package/dist/RequestResolver.d.ts +201 -90
  344. package/dist/RequestResolver.d.ts.map +1 -1
  345. package/dist/RequestResolver.js +87 -41
  346. package/dist/RequestResolver.js.map +1 -1
  347. package/dist/Resource.js.map +1 -1
  348. package/dist/Result.d.ts +302 -470
  349. package/dist/Result.d.ts.map +1 -1
  350. package/dist/Result.js +133 -217
  351. package/dist/Result.js.map +1 -1
  352. package/dist/Runtime.d.ts +50 -75
  353. package/dist/Runtime.d.ts.map +1 -1
  354. package/dist/Runtime.js +39 -60
  355. package/dist/Runtime.js.map +1 -1
  356. package/dist/Schedule.d.ts +290 -1636
  357. package/dist/Schedule.d.ts.map +1 -1
  358. package/dist/Schedule.js +162 -803
  359. package/dist/Schedule.js.map +1 -1
  360. package/dist/Scheduler.d.ts +5 -5
  361. package/dist/Scheduler.d.ts.map +1 -1
  362. package/dist/Scheduler.js +18 -6
  363. package/dist/Scheduler.js.map +1 -1
  364. package/dist/Schema.d.ts +644 -642
  365. package/dist/Schema.d.ts.map +1 -1
  366. package/dist/Schema.js +491 -527
  367. package/dist/Schema.js.map +1 -1
  368. package/dist/SchemaAST.d.ts +27 -50
  369. package/dist/SchemaAST.d.ts.map +1 -1
  370. package/dist/SchemaAST.js +366 -279
  371. package/dist/SchemaAST.js.map +1 -1
  372. package/dist/SchemaError.d.ts +7 -6
  373. package/dist/SchemaError.d.ts.map +1 -1
  374. package/dist/SchemaError.js +7 -6
  375. package/dist/SchemaError.js.map +1 -1
  376. package/dist/SchemaGetter.d.ts +217 -174
  377. package/dist/SchemaGetter.d.ts.map +1 -1
  378. package/dist/SchemaGetter.js +218 -185
  379. package/dist/SchemaGetter.js.map +1 -1
  380. package/dist/SchemaIssue.d.ts +62 -190
  381. package/dist/SchemaIssue.d.ts.map +1 -1
  382. package/dist/SchemaIssue.js +73 -265
  383. package/dist/SchemaIssue.js.map +1 -1
  384. package/dist/SchemaParser.d.ts +2 -2
  385. package/dist/SchemaParser.d.ts.map +1 -1
  386. package/dist/SchemaParser.js +123 -75
  387. package/dist/SchemaParser.js.map +1 -1
  388. package/dist/SchemaRepresentation.d.ts +22 -36
  389. package/dist/SchemaRepresentation.d.ts.map +1 -1
  390. package/dist/SchemaRepresentation.js +20 -26
  391. package/dist/SchemaRepresentation.js.map +1 -1
  392. package/dist/SchemaTransformation.d.ts +114 -74
  393. package/dist/SchemaTransformation.d.ts.map +1 -1
  394. package/dist/SchemaTransformation.js +120 -85
  395. package/dist/SchemaTransformation.js.map +1 -1
  396. package/dist/Scope.d.ts +123 -151
  397. package/dist/Scope.d.ts.map +1 -1
  398. package/dist/Scope.js +72 -92
  399. package/dist/Scope.js.map +1 -1
  400. package/dist/ScopedCache.js.map +1 -1
  401. package/dist/ScopedRef.d.ts +3 -3
  402. package/dist/ScopedRef.js +2 -2
  403. package/dist/ScopedRef.js.map +1 -1
  404. package/dist/Semaphore.d.ts +96 -10
  405. package/dist/Semaphore.d.ts.map +1 -1
  406. package/dist/Semaphore.js +78 -39
  407. package/dist/Semaphore.js.map +1 -1
  408. package/dist/Sink.d.ts +117 -107
  409. package/dist/Sink.d.ts.map +1 -1
  410. package/dist/Sink.js +107 -100
  411. package/dist/Sink.js.map +1 -1
  412. package/dist/Stdio.d.ts +1 -1
  413. package/dist/Stdio.js.map +1 -1
  414. package/dist/Stream.d.ts +2415 -2949
  415. package/dist/Stream.d.ts.map +1 -1
  416. package/dist/Stream.js +1078 -1381
  417. package/dist/Stream.js.map +1 -1
  418. package/dist/String.d.ts +262 -308
  419. package/dist/String.d.ts.map +1 -1
  420. package/dist/String.js +184 -215
  421. package/dist/String.js.map +1 -1
  422. package/dist/Struct.d.ts +109 -114
  423. package/dist/Struct.d.ts.map +1 -1
  424. package/dist/Struct.js +41 -50
  425. package/dist/Struct.js.map +1 -1
  426. package/dist/SubscriptionRef.d.ts +282 -250
  427. package/dist/SubscriptionRef.d.ts.map +1 -1
  428. package/dist/SubscriptionRef.js +104 -92
  429. package/dist/SubscriptionRef.js.map +1 -1
  430. package/dist/Symbol.d.ts +3 -3
  431. package/dist/Symbol.js +3 -3
  432. package/dist/Symbol.js.map +1 -1
  433. package/dist/SynchronizedRef.js.map +1 -1
  434. package/dist/Take.js.map +1 -1
  435. package/dist/Terminal.d.ts +2 -2
  436. package/dist/Terminal.js +1 -1
  437. package/dist/Terminal.js.map +1 -1
  438. package/dist/Tracer.d.ts +100 -54
  439. package/dist/Tracer.d.ts.map +1 -1
  440. package/dist/Tracer.js +41 -24
  441. package/dist/Tracer.js.map +1 -1
  442. package/dist/Trie.d.ts +287 -679
  443. package/dist/Trie.d.ts.map +1 -1
  444. package/dist/Trie.js +109 -251
  445. package/dist/Trie.js.map +1 -1
  446. package/dist/Tuple.d.ts +92 -127
  447. package/dist/Tuple.d.ts.map +1 -1
  448. package/dist/Tuple.js +42 -57
  449. package/dist/Tuple.js.map +1 -1
  450. package/dist/TxChunk.d.ts +201 -121
  451. package/dist/TxChunk.d.ts.map +1 -1
  452. package/dist/TxChunk.js +85 -56
  453. package/dist/TxChunk.js.map +1 -1
  454. package/dist/TxDeferred.d.ts +62 -46
  455. package/dist/TxDeferred.d.ts.map +1 -1
  456. package/dist/TxDeferred.js +30 -22
  457. package/dist/TxDeferred.js.map +1 -1
  458. package/dist/TxHashMap.d.ts +631 -779
  459. package/dist/TxHashMap.d.ts.map +1 -1
  460. package/dist/TxHashMap.js +268 -330
  461. package/dist/TxHashMap.js.map +1 -1
  462. package/dist/TxHashSet.d.ts +297 -236
  463. package/dist/TxHashSet.d.ts.map +1 -1
  464. package/dist/TxHashSet.js +130 -100
  465. package/dist/TxHashSet.js.map +1 -1
  466. package/dist/TxPriorityQueue.d.ts +126 -95
  467. package/dist/TxPriorityQueue.d.ts.map +1 -1
  468. package/dist/TxPriorityQueue.js +74 -56
  469. package/dist/TxPriorityQueue.js.map +1 -1
  470. package/dist/TxPubSub.d.ts +101 -88
  471. package/dist/TxPubSub.d.ts.map +1 -1
  472. package/dist/TxPubSub.js +87 -66
  473. package/dist/TxPubSub.js.map +1 -1
  474. package/dist/TxQueue.d.ts +200 -180
  475. package/dist/TxQueue.d.ts.map +1 -1
  476. package/dist/TxQueue.js +160 -136
  477. package/dist/TxQueue.js.map +1 -1
  478. package/dist/TxReentrantLock.d.ts +97 -66
  479. package/dist/TxReentrantLock.d.ts.map +1 -1
  480. package/dist/TxReentrantLock.js +67 -45
  481. package/dist/TxReentrantLock.js.map +1 -1
  482. package/dist/TxRef.d.ts +51 -32
  483. package/dist/TxRef.d.ts.map +1 -1
  484. package/dist/TxRef.js +23 -15
  485. package/dist/TxRef.js.map +1 -1
  486. package/dist/TxSemaphore.d.ts +129 -95
  487. package/dist/TxSemaphore.d.ts.map +1 -1
  488. package/dist/TxSemaphore.js +85 -70
  489. package/dist/TxSemaphore.js.map +1 -1
  490. package/dist/TxSubscriptionRef.d.ts +97 -70
  491. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  492. package/dist/TxSubscriptionRef.js +44 -34
  493. package/dist/TxSubscriptionRef.js.map +1 -1
  494. package/dist/Types.d.ts +126 -67
  495. package/dist/Types.d.ts.map +1 -1
  496. package/dist/UndefinedOr.js.map +1 -1
  497. package/dist/Unify.d.ts +45 -65
  498. package/dist/Unify.d.ts.map +1 -1
  499. package/dist/Unify.js +6 -9
  500. package/dist/Unify.js.map +1 -1
  501. package/dist/Utils.d.ts +23 -16
  502. package/dist/Utils.d.ts.map +1 -1
  503. package/dist/Utils.js +3 -7
  504. package/dist/Utils.js.map +1 -1
  505. package/dist/index.js.map +1 -1
  506. package/dist/internal/array.js.map +1 -1
  507. package/dist/internal/core.js +1 -1
  508. package/dist/internal/core.js.map +1 -1
  509. package/dist/internal/dateTime.js +4 -0
  510. package/dist/internal/dateTime.js.map +1 -1
  511. package/dist/internal/doNotation.js.map +1 -1
  512. package/dist/internal/effect.js +77 -40
  513. package/dist/internal/effect.js.map +1 -1
  514. package/dist/internal/equal.js.map +1 -1
  515. package/dist/internal/errors.js.map +1 -1
  516. package/dist/internal/executionPlan.js.map +1 -1
  517. package/dist/internal/hashMap.js.map +1 -1
  518. package/dist/internal/hashSet.js.map +1 -1
  519. package/dist/internal/layer.js.map +1 -1
  520. package/dist/internal/matcher.js.map +1 -1
  521. package/dist/internal/metric.js.map +1 -1
  522. package/dist/internal/option.js.map +1 -1
  523. package/dist/internal/persistence.d.ts +2 -0
  524. package/dist/internal/persistence.d.ts.map +1 -0
  525. package/dist/internal/persistence.js +3 -0
  526. package/dist/internal/persistence.js.map +1 -0
  527. package/dist/internal/random.js.map +1 -1
  528. package/dist/internal/rcRef.js.map +1 -1
  529. package/dist/internal/record.js.map +1 -1
  530. package/dist/internal/redacted.js.map +1 -1
  531. package/dist/internal/references.js +3 -0
  532. package/dist/internal/references.js.map +1 -1
  533. package/dist/internal/request.js.map +1 -1
  534. package/dist/internal/result.js.map +1 -1
  535. package/dist/internal/schedule.js.map +1 -1
  536. package/dist/internal/schema/annotations.js.map +1 -1
  537. package/dist/internal/schema/cause.js.map +1 -1
  538. package/dist/internal/schema/fromJsonSchemaDocument.js +13 -11
  539. package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
  540. package/dist/internal/schema/fromRepresentation.js +8 -15
  541. package/dist/internal/schema/fromRepresentation.js.map +1 -1
  542. package/dist/internal/schema/parser.d.ts +14 -0
  543. package/dist/internal/schema/parser.d.ts.map +1 -0
  544. package/dist/internal/schema/parser.js +13 -0
  545. package/dist/internal/schema/parser.js.map +1 -0
  546. package/dist/internal/schema/schema.js.map +1 -1
  547. package/dist/internal/schema/toArbitrary.js.map +1 -1
  548. package/dist/internal/schema/toCodeDocument.js.map +1 -1
  549. package/dist/internal/schema/toEquivalence.js.map +1 -1
  550. package/dist/internal/schema/toJsonSchemaDocument.js +48 -6
  551. package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
  552. package/dist/internal/schema/toRepresentation.js +87 -107
  553. package/dist/internal/schema/toRepresentation.js.map +1 -1
  554. package/dist/internal/stackTraceLimit.js.map +1 -1
  555. package/dist/internal/stream.js.map +1 -1
  556. package/dist/internal/tracer.js.map +1 -1
  557. package/dist/internal/trie.js +13 -9
  558. package/dist/internal/trie.js.map +1 -1
  559. package/dist/testing/FastCheck.d.ts +8 -7
  560. package/dist/testing/FastCheck.d.ts.map +1 -1
  561. package/dist/testing/FastCheck.js +8 -7
  562. package/dist/testing/FastCheck.js.map +1 -1
  563. package/dist/testing/TestClock.d.ts +57 -28
  564. package/dist/testing/TestClock.d.ts.map +1 -1
  565. package/dist/testing/TestClock.js +50 -18
  566. package/dist/testing/TestClock.js.map +1 -1
  567. package/dist/testing/TestConsole.d.ts +32 -31
  568. package/dist/testing/TestConsole.d.ts.map +1 -1
  569. package/dist/testing/TestConsole.js +24 -22
  570. package/dist/testing/TestConsole.js.map +1 -1
  571. package/dist/testing/TestSchema.d.ts +29 -29
  572. package/dist/testing/TestSchema.js +25 -25
  573. package/dist/testing/TestSchema.js.map +1 -1
  574. package/dist/testing/index.js.map +1 -1
  575. package/dist/unstable/ai/AiError.d.ts +95 -118
  576. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  577. package/dist/unstable/ai/AiError.js +94 -117
  578. package/dist/unstable/ai/AiError.js.map +1 -1
  579. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  580. package/dist/unstable/ai/AnthropicStructuredOutput.js +1 -1
  581. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  582. package/dist/unstable/ai/Chat.d.ts +132 -97
  583. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  584. package/dist/unstable/ai/Chat.js +55 -51
  585. package/dist/unstable/ai/Chat.js.map +1 -1
  586. package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
  587. package/dist/unstable/ai/IdGenerator.d.ts +32 -28
  588. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  589. package/dist/unstable/ai/IdGenerator.js +26 -21
  590. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  591. package/dist/unstable/ai/LanguageModel.d.ts +107 -67
  592. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  593. package/dist/unstable/ai/LanguageModel.js +104 -64
  594. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  595. package/dist/unstable/ai/McpProtocol.d.ts +30 -0
  596. package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
  597. package/dist/unstable/ai/McpProtocol.js +20 -0
  598. package/dist/unstable/ai/McpProtocol.js.map +1 -0
  599. package/dist/unstable/ai/McpSchema.d.ts +141 -75
  600. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  601. package/dist/unstable/ai/McpSchema.js +58 -50
  602. package/dist/unstable/ai/McpSchema.js.map +1 -1
  603. package/dist/unstable/ai/McpServer.d.ts +68 -59
  604. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  605. package/dist/unstable/ai/McpServer.js +694 -241
  606. package/dist/unstable/ai/McpServer.js.map +1 -1
  607. package/dist/unstable/ai/Model.d.ts +8 -19
  608. package/dist/unstable/ai/Model.d.ts.map +1 -1
  609. package/dist/unstable/ai/Model.js +9 -20
  610. package/dist/unstable/ai/Model.js.map +1 -1
  611. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  612. package/dist/unstable/ai/OpenAiStructuredOutput.js +1 -1
  613. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  614. package/dist/unstable/ai/Prompt.d.ts +112 -38
  615. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  616. package/dist/unstable/ai/Prompt.js +53 -17
  617. package/dist/unstable/ai/Prompt.js.map +1 -1
  618. package/dist/unstable/ai/Response.d.ts +28 -14
  619. package/dist/unstable/ai/Response.d.ts.map +1 -1
  620. package/dist/unstable/ai/Response.js +9 -4
  621. package/dist/unstable/ai/Response.js.map +1 -1
  622. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  623. package/dist/unstable/ai/Telemetry.d.ts +46 -13
  624. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  625. package/dist/unstable/ai/Telemetry.js +18 -7
  626. package/dist/unstable/ai/Telemetry.js.map +1 -1
  627. package/dist/unstable/ai/Tokenizer.d.ts +14 -3
  628. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  629. package/dist/unstable/ai/Tokenizer.js +10 -2
  630. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  631. package/dist/unstable/ai/Tool.d.ts +59 -44
  632. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  633. package/dist/unstable/ai/Tool.js +48 -39
  634. package/dist/unstable/ai/Tool.js.map +1 -1
  635. package/dist/unstable/ai/Toolkit.d.ts +26 -8
  636. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  637. package/dist/unstable/ai/Toolkit.js +18 -4
  638. package/dist/unstable/ai/Toolkit.js.map +1 -1
  639. package/dist/unstable/ai/index.d.ts +4 -0
  640. package/dist/unstable/ai/index.d.ts.map +1 -1
  641. package/dist/unstable/ai/index.js +4 -0
  642. package/dist/unstable/ai/index.js.map +1 -1
  643. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  644. package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
  645. package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
  646. package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
  647. package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
  648. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
  649. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
  650. package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
  651. package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
  652. package/dist/unstable/ai/internal/structured-output.js +14 -15
  653. package/dist/unstable/ai/internal/structured-output.js.map +1 -1
  654. package/dist/unstable/cli/Argument.d.ts +273 -69
  655. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  656. package/dist/unstable/cli/Argument.js +111 -33
  657. package/dist/unstable/cli/Argument.js.map +1 -1
  658. package/dist/unstable/cli/CliConfig.js.map +1 -1
  659. package/dist/unstable/cli/CliError.d.ts +69 -76
  660. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  661. package/dist/unstable/cli/CliError.js +57 -61
  662. package/dist/unstable/cli/CliError.js.map +1 -1
  663. package/dist/unstable/cli/CliOutput.d.ts +35 -54
  664. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  665. package/dist/unstable/cli/CliOutput.js +26 -42
  666. package/dist/unstable/cli/CliOutput.js.map +1 -1
  667. package/dist/unstable/cli/Command.d.ts +705 -107
  668. package/dist/unstable/cli/Command.d.ts.map +1 -1
  669. package/dist/unstable/cli/Command.js +238 -42
  670. package/dist/unstable/cli/Command.js.map +1 -1
  671. package/dist/unstable/cli/Completions.js.map +1 -1
  672. package/dist/unstable/cli/Flag.d.ts +418 -138
  673. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  674. package/dist/unstable/cli/Flag.js +197 -71
  675. package/dist/unstable/cli/Flag.js.map +1 -1
  676. package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
  677. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  678. package/dist/unstable/cli/HelpDoc.d.ts +12 -4
  679. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  680. package/dist/unstable/cli/Param.d.ts +292 -78
  681. package/dist/unstable/cli/Param.d.ts.map +1 -1
  682. package/dist/unstable/cli/Param.js +128 -46
  683. package/dist/unstable/cli/Param.js.map +1 -1
  684. package/dist/unstable/cli/Primitive.d.ts +370 -149
  685. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  686. package/dist/unstable/cli/Primitive.js +344 -136
  687. package/dist/unstable/cli/Primitive.js.map +1 -1
  688. package/dist/unstable/cli/Prompt.d.ts +23 -14
  689. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  690. package/dist/unstable/cli/Prompt.js +23 -14
  691. package/dist/unstable/cli/Prompt.js.map +1 -1
  692. package/dist/unstable/cli/index.js.map +1 -1
  693. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  694. package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
  695. package/dist/unstable/cli/internal/command.js.map +1 -1
  696. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  697. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
  698. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  699. package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
  700. package/dist/unstable/cli/internal/config.js.map +1 -1
  701. package/dist/unstable/cli/internal/help.js.map +1 -1
  702. package/dist/unstable/cli/internal/lexer.js +17 -7
  703. package/dist/unstable/cli/internal/lexer.js.map +1 -1
  704. package/dist/unstable/cli/internal/parser.js +2 -2
  705. package/dist/unstable/cli/internal/parser.js.map +1 -1
  706. package/dist/unstable/cli/internal/wizard.js.map +1 -1
  707. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  708. package/dist/unstable/cluster/ClusterError.js.map +1 -1
  709. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  710. package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
  711. package/dist/unstable/cluster/ClusterSchema.js +8 -8
  712. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  713. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  714. package/dist/unstable/cluster/ClusterWorkflowEngine.js +5 -1
  715. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  716. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  717. package/dist/unstable/cluster/Entity.d.ts +10 -10
  718. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  719. package/dist/unstable/cluster/Entity.js +8 -8
  720. package/dist/unstable/cluster/Entity.js.map +1 -1
  721. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  722. package/dist/unstable/cluster/EntityId.js.map +1 -1
  723. package/dist/unstable/cluster/EntityProxy.d.ts +4 -2
  724. package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
  725. package/dist/unstable/cluster/EntityProxy.js +4 -2
  726. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  727. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  728. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  729. package/dist/unstable/cluster/EntityResource.js +2 -2
  730. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  731. package/dist/unstable/cluster/EntityType.js.map +1 -1
  732. package/dist/unstable/cluster/Envelope.d.ts +3 -3
  733. package/dist/unstable/cluster/Envelope.js +3 -3
  734. package/dist/unstable/cluster/Envelope.js.map +1 -1
  735. package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
  736. package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
  737. package/dist/unstable/cluster/HttpRunner.js +6 -4
  738. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  739. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  740. package/dist/unstable/cluster/MachineId.js.map +1 -1
  741. package/dist/unstable/cluster/Message.d.ts +9 -9
  742. package/dist/unstable/cluster/Message.js +6 -6
  743. package/dist/unstable/cluster/Message.js.map +1 -1
  744. package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
  745. package/dist/unstable/cluster/MessageStorage.js +5 -5
  746. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  747. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  748. package/dist/unstable/cluster/Reply.js +4 -4
  749. package/dist/unstable/cluster/Reply.js.map +1 -1
  750. package/dist/unstable/cluster/Runner.js.map +1 -1
  751. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  752. package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
  753. package/dist/unstable/cluster/RunnerHealth.js +1 -1
  754. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  755. package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
  756. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  757. package/dist/unstable/cluster/RunnerServer.js +16 -16
  758. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  759. package/dist/unstable/cluster/RunnerStorage.d.ts +2 -2
  760. package/dist/unstable/cluster/RunnerStorage.js +1 -1
  761. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  762. package/dist/unstable/cluster/Runners.d.ts +6 -6
  763. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  764. package/dist/unstable/cluster/Runners.js +19 -10
  765. package/dist/unstable/cluster/Runners.js.map +1 -1
  766. package/dist/unstable/cluster/ShardId.js.map +1 -1
  767. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  768. package/dist/unstable/cluster/Sharding.js +3 -2
  769. package/dist/unstable/cluster/Sharding.js.map +1 -1
  770. package/dist/unstable/cluster/ShardingConfig.d.ts +3 -3
  771. package/dist/unstable/cluster/ShardingConfig.js +3 -3
  772. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  773. package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
  774. package/dist/unstable/cluster/SingleRunner.js.map +1 -1
  775. package/dist/unstable/cluster/Singleton.js.map +1 -1
  776. package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
  777. package/dist/unstable/cluster/SingletonAddress.js +1 -1
  778. package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
  779. package/dist/unstable/cluster/Snowflake.d.ts +8 -8
  780. package/dist/unstable/cluster/Snowflake.js +8 -8
  781. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  782. package/dist/unstable/cluster/SocketRunner.js.map +1 -1
  783. package/dist/unstable/cluster/SqlMessageStorage.js +1 -1
  784. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  785. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  786. package/dist/unstable/cluster/SqlRunnerStorage.js +20 -5
  787. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  788. package/dist/unstable/cluster/TestRunner.js.map +1 -1
  789. package/dist/unstable/cluster/index.js.map +1 -1
  790. package/dist/unstable/cluster/internal/entityManager.js +5 -5
  791. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  792. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  793. package/dist/unstable/cluster/internal/hash.js.map +1 -1
  794. package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
  795. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  796. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  797. package/dist/unstable/cluster/internal/shardLock.js.map +1 -1
  798. package/dist/unstable/devtools/DevTools.js.map +1 -1
  799. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  800. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  801. package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
  802. package/dist/unstable/devtools/index.js.map +1 -1
  803. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  804. package/dist/unstable/encoding/Msgpack.js +6 -8
  805. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  806. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  807. package/dist/unstable/encoding/Sse.d.ts +72 -8
  808. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  809. package/dist/unstable/encoding/Sse.js +58 -8
  810. package/dist/unstable/encoding/Sse.js.map +1 -1
  811. package/dist/unstable/encoding/index.js.map +1 -1
  812. package/dist/unstable/eventlog/Event.d.ts +20 -20
  813. package/dist/unstable/eventlog/Event.js.map +1 -1
  814. package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
  815. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  816. package/dist/unstable/eventlog/EventJournal.d.ts +15 -15
  817. package/dist/unstable/eventlog/EventJournal.js +13 -13
  818. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  819. package/dist/unstable/eventlog/EventLog.d.ts +3 -3
  820. package/dist/unstable/eventlog/EventLog.js +3 -3
  821. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  822. package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
  823. package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
  824. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  825. package/dist/unstable/eventlog/EventLogMessage.d.ts +2 -2
  826. package/dist/unstable/eventlog/EventLogMessage.js +1 -1
  827. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  828. package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
  829. package/dist/unstable/eventlog/EventLogRemote.js +1 -1
  830. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  831. package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
  832. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  833. package/dist/unstable/eventlog/EventLogServer.js +45 -21
  834. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  835. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
  836. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  837. package/dist/unstable/eventlog/EventLogServerEncrypted.js +13 -5
  838. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  839. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
  840. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  841. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +14 -6
  842. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  843. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
  844. package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
  845. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
  846. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  847. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  848. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  849. package/dist/unstable/eventlog/index.js.map +1 -1
  850. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
  851. package/dist/unstable/http/Cookies.d.ts +2 -2
  852. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  853. package/dist/unstable/http/Cookies.js +30 -18
  854. package/dist/unstable/http/Cookies.js.map +1 -1
  855. package/dist/unstable/http/Etag.d.ts +1 -1
  856. package/dist/unstable/http/Etag.js +1 -1
  857. package/dist/unstable/http/Etag.js.map +1 -1
  858. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  859. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  860. package/dist/unstable/http/Headers.d.ts +2 -2
  861. package/dist/unstable/http/Headers.js +2 -2
  862. package/dist/unstable/http/Headers.js.map +1 -1
  863. package/dist/unstable/http/HttpBody.d.ts +5 -3
  864. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  865. package/dist/unstable/http/HttpBody.js +11 -5
  866. package/dist/unstable/http/HttpBody.js.map +1 -1
  867. package/dist/unstable/http/HttpClient.d.ts +51 -44
  868. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  869. package/dist/unstable/http/HttpClient.js +46 -17
  870. package/dist/unstable/http/HttpClient.js.map +1 -1
  871. package/dist/unstable/http/HttpClientError.js.map +1 -1
  872. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  873. package/dist/unstable/http/HttpClientRequest.js +2 -0
  874. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  875. package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
  876. package/dist/unstable/http/HttpClientResponse.js +2 -2
  877. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  878. package/dist/unstable/http/HttpEffect.d.ts +6 -6
  879. package/dist/unstable/http/HttpEffect.js +3 -3
  880. package/dist/unstable/http/HttpEffect.js.map +1 -1
  881. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  882. package/dist/unstable/http/HttpMethod.d.ts +6 -9
  883. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  884. package/dist/unstable/http/HttpMethod.js +6 -9
  885. package/dist/unstable/http/HttpMethod.js.map +1 -1
  886. package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
  887. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  888. package/dist/unstable/http/HttpMiddleware.js +164 -39
  889. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  890. package/dist/unstable/http/HttpPlatform.d.ts +76 -0
  891. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  892. package/dist/unstable/http/HttpPlatform.js +32 -0
  893. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  894. package/dist/unstable/http/HttpRouter.d.ts +88 -89
  895. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  896. package/dist/unstable/http/HttpRouter.js +78 -79
  897. package/dist/unstable/http/HttpRouter.js.map +1 -1
  898. package/dist/unstable/http/HttpServer.d.ts +13 -13
  899. package/dist/unstable/http/HttpServer.js +6 -6
  900. package/dist/unstable/http/HttpServer.js.map +1 -1
  901. package/dist/unstable/http/HttpServerError.d.ts +2 -2
  902. package/dist/unstable/http/HttpServerError.js +2 -2
  903. package/dist/unstable/http/HttpServerError.js.map +1 -1
  904. package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
  905. package/dist/unstable/http/HttpServerRequest.js +4 -4
  906. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  907. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  908. package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
  909. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  910. package/dist/unstable/http/HttpServerResponse.js +10 -0
  911. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  912. package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
  913. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
  914. package/dist/unstable/http/HttpStaticServer.js +35 -7
  915. package/dist/unstable/http/HttpStaticServer.js.map +1 -1
  916. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  917. package/dist/unstable/http/Multipart.d.ts +6 -6
  918. package/dist/unstable/http/Multipart.js +5 -5
  919. package/dist/unstable/http/Multipart.js.map +1 -1
  920. package/dist/unstable/http/Template.js.map +1 -1
  921. package/dist/unstable/http/Url.d.ts +33 -63
  922. package/dist/unstable/http/Url.d.ts.map +1 -1
  923. package/dist/unstable/http/Url.js +14 -28
  924. package/dist/unstable/http/Url.js.map +1 -1
  925. package/dist/unstable/http/UrlParams.d.ts +10 -18
  926. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  927. package/dist/unstable/http/UrlParams.js +9 -17
  928. package/dist/unstable/http/UrlParams.js.map +1 -1
  929. package/dist/unstable/http/index.js.map +1 -1
  930. package/dist/unstable/http/internal/compression.d.ts +2 -0
  931. package/dist/unstable/http/internal/compression.d.ts.map +1 -0
  932. package/dist/unstable/http/internal/compression.js +155 -0
  933. package/dist/unstable/http/internal/compression.js.map +1 -0
  934. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
  935. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  936. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
  937. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  938. package/dist/unstable/httpapi/HttpApiBuilder.js +10 -11
  939. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  940. package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
  941. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  942. package/dist/unstable/httpapi/HttpApiClient.js +11 -13
  943. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  944. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +42 -42
  945. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  946. package/dist/unstable/httpapi/HttpApiError.d.ts +13 -13
  947. package/dist/unstable/httpapi/HttpApiError.js +13 -13
  948. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  949. package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
  950. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  951. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
  952. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  953. package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
  954. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  955. package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
  956. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  957. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  958. package/dist/unstable/httpapi/HttpApiSchema.d.ts +6 -6
  959. package/dist/unstable/httpapi/HttpApiSchema.js +4 -4
  960. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  961. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  962. package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
  963. package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
  964. package/dist/unstable/httpapi/OpenApi.d.ts +13 -13
  965. package/dist/unstable/httpapi/OpenApi.js +13 -13
  966. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  967. package/dist/unstable/httpapi/index.js.map +1 -1
  968. package/dist/unstable/httpapi/internal/html.js.map +1 -1
  969. package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
  970. package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
  971. package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
  972. package/dist/unstable/observability/Otlp.js.map +1 -1
  973. package/dist/unstable/observability/OtlpExporter.d.ts +12 -14
  974. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  975. package/dist/unstable/observability/OtlpExporter.js +17 -4
  976. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  977. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  978. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -1
  979. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  980. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  981. package/dist/unstable/observability/OtlpResource.d.ts +16 -7
  982. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  983. package/dist/unstable/observability/OtlpResource.js +21 -12
  984. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  985. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  986. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  987. package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
  988. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  989. package/dist/unstable/observability/PrometheusMetrics.js +10 -3
  990. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  991. package/dist/unstable/observability/index.js.map +1 -1
  992. package/dist/unstable/observability/internal/otlpEnv.js +1 -1
  993. package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
  994. package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
  995. package/dist/unstable/observability/internal/protobuf.js +3 -0
  996. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  997. package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
  998. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  999. package/dist/unstable/persistence/KeyValueStore.js +22 -13
  1000. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  1001. package/dist/unstable/persistence/Persistable.d.ts +8 -8
  1002. package/dist/unstable/persistence/Persistable.js.map +1 -1
  1003. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  1004. package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
  1005. package/dist/unstable/persistence/PersistedQueue.js +6 -6
  1006. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  1007. package/dist/unstable/persistence/Persistence.d.ts +3 -3
  1008. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  1009. package/dist/unstable/persistence/Persistence.js +91 -15
  1010. package/dist/unstable/persistence/Persistence.js.map +1 -1
  1011. package/dist/unstable/persistence/RateLimiter.d.ts +26 -15
  1012. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  1013. package/dist/unstable/persistence/RateLimiter.js +24 -13
  1014. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  1015. package/dist/unstable/persistence/Redis.d.ts +2 -2
  1016. package/dist/unstable/persistence/Redis.js +1 -1
  1017. package/dist/unstable/persistence/Redis.js.map +1 -1
  1018. package/dist/unstable/persistence/index.js.map +1 -1
  1019. package/dist/unstable/process/ChildProcess.d.ts +64 -21
  1020. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1021. package/dist/unstable/process/ChildProcess.js +14 -5
  1022. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1023. package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
  1024. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1025. package/dist/unstable/process/ChildProcessSpawner.js +1 -1
  1026. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1027. package/dist/unstable/process/index.js.map +1 -1
  1028. package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
  1029. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  1030. package/dist/unstable/reactivity/AsyncResult.js +10 -10
  1031. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1032. package/dist/unstable/reactivity/Atom.d.ts +25 -22
  1033. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1034. package/dist/unstable/reactivity/Atom.js +14 -13
  1035. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1036. package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
  1037. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1038. package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
  1039. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1040. package/dist/unstable/reactivity/AtomRef.js.map +1 -1
  1041. package/dist/unstable/reactivity/AtomRegistry.js +24 -3
  1042. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1043. package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
  1044. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1045. package/dist/unstable/reactivity/AtomRpc.js +4 -1
  1046. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1047. package/dist/unstable/reactivity/Hydration.d.ts +1 -1
  1048. package/dist/unstable/reactivity/Hydration.js +1 -1
  1049. package/dist/unstable/reactivity/Hydration.js.map +1 -1
  1050. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1051. package/dist/unstable/reactivity/index.js.map +1 -1
  1052. package/dist/unstable/rpc/Rpc.d.ts +35 -33
  1053. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1054. package/dist/unstable/rpc/Rpc.js +4 -2
  1055. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1056. package/dist/unstable/rpc/RpcClient.d.ts +12 -12
  1057. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1058. package/dist/unstable/rpc/RpcClient.js +12 -11
  1059. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1060. package/dist/unstable/rpc/RpcClientError.js.map +1 -1
  1061. package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
  1062. package/dist/unstable/rpc/RpcGroup.js +1 -1
  1063. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1064. package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
  1065. package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
  1066. package/dist/unstable/rpc/RpcMessage.js +6 -6
  1067. package/dist/unstable/rpc/RpcMessage.js.map +1 -1
  1068. package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
  1069. package/dist/unstable/rpc/RpcMiddleware.js +1 -1
  1070. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1071. package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
  1072. package/dist/unstable/rpc/RpcSchema.js +3 -3
  1073. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1074. package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
  1075. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1076. package/dist/unstable/rpc/RpcSerialization.js +175 -96
  1077. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1078. package/dist/unstable/rpc/RpcServer.d.ts +13 -13
  1079. package/dist/unstable/rpc/RpcServer.js +17 -13
  1080. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1081. package/dist/unstable/rpc/RpcTest.js.map +1 -1
  1082. package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
  1083. package/dist/unstable/rpc/RpcWorker.js +4 -4
  1084. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1085. package/dist/unstable/rpc/Utils.js.map +1 -1
  1086. package/dist/unstable/rpc/index.js.map +1 -1
  1087. package/dist/unstable/schema/Model.d.ts +52 -50
  1088. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1089. package/dist/unstable/schema/Model.js +35 -33
  1090. package/dist/unstable/schema/Model.js.map +1 -1
  1091. package/dist/unstable/schema/VariantSchema.d.ts +5 -5
  1092. package/dist/unstable/schema/VariantSchema.js +2 -2
  1093. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1094. package/dist/unstable/schema/index.js.map +1 -1
  1095. package/dist/unstable/socket/Socket.d.ts +11 -3
  1096. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1097. package/dist/unstable/socket/Socket.js +9 -4
  1098. package/dist/unstable/socket/Socket.js.map +1 -1
  1099. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1100. package/dist/unstable/socket/index.js.map +1 -1
  1101. package/dist/unstable/sql/Migrator.js.map +1 -1
  1102. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  1103. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1104. package/dist/unstable/sql/SqlClient.js +2 -2
  1105. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1106. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1107. package/dist/unstable/sql/SqlError.js.map +1 -1
  1108. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  1109. package/dist/unstable/sql/SqlModel.js +2 -2
  1110. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1111. package/dist/unstable/sql/SqlResolver.d.ts +5 -5
  1112. package/dist/unstable/sql/SqlResolver.js +2 -2
  1113. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1114. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1115. package/dist/unstable/sql/SqlStream.js.map +1 -1
  1116. package/dist/unstable/sql/Statement.d.ts +6 -6
  1117. package/dist/unstable/sql/Statement.js +15 -15
  1118. package/dist/unstable/sql/Statement.js.map +1 -1
  1119. package/dist/unstable/sql/index.js.map +1 -1
  1120. package/dist/unstable/workers/Transferable.d.ts +1 -1
  1121. package/dist/unstable/workers/Transferable.js +1 -1
  1122. package/dist/unstable/workers/Transferable.js.map +1 -1
  1123. package/dist/unstable/workers/Worker.d.ts +2 -2
  1124. package/dist/unstable/workers/Worker.js +2 -2
  1125. package/dist/unstable/workers/Worker.js.map +1 -1
  1126. package/dist/unstable/workers/WorkerError.d.ts +7 -7
  1127. package/dist/unstable/workers/WorkerError.js +6 -6
  1128. package/dist/unstable/workers/WorkerError.js.map +1 -1
  1129. package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
  1130. package/dist/unstable/workers/WorkerRunner.js +1 -1
  1131. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1132. package/dist/unstable/workers/index.js.map +1 -1
  1133. package/dist/unstable/workflow/Activity.d.ts +2 -2
  1134. package/dist/unstable/workflow/Activity.js +2 -2
  1135. package/dist/unstable/workflow/Activity.js.map +1 -1
  1136. package/dist/unstable/workflow/DurableClock.d.ts +1 -1
  1137. package/dist/unstable/workflow/DurableClock.js +1 -1
  1138. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1139. package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
  1140. package/dist/unstable/workflow/DurableDeferred.js +5 -5
  1141. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1142. package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
  1143. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  1144. package/dist/unstable/workflow/DurableQueue.js +22 -20
  1145. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  1146. package/dist/unstable/workflow/Workflow.d.ts +21 -21
  1147. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1148. package/dist/unstable/workflow/Workflow.js +13 -14
  1149. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1150. package/dist/unstable/workflow/WorkflowEngine.d.ts +1 -1
  1151. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1152. package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
  1153. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  1154. package/dist/unstable/workflow/WorkflowProxy.js +4 -2
  1155. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  1156. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1157. package/dist/unstable/workflow/index.js.map +1 -1
  1158. package/dist/unstable/workflow/internal/crypto.js.map +1 -1
  1159. package/package.json +5 -6
  1160. package/src/Array.ts +982 -1045
  1161. package/src/BigDecimal.ts +433 -756
  1162. package/src/BigInt.ts +213 -269
  1163. package/src/Boolean.ts +146 -188
  1164. package/src/Cache.ts +409 -255
  1165. package/src/Cause.ts +167 -277
  1166. package/src/Channel.ts +891 -816
  1167. package/src/ChannelSchema.ts +1 -1
  1168. package/src/Chunk.ts +841 -1181
  1169. package/src/Clock.ts +181 -49
  1170. package/src/Combiner.ts +20 -33
  1171. package/src/Config.ts +615 -332
  1172. package/src/ConfigProvider.ts +214 -120
  1173. package/src/Console.ts +289 -39
  1174. package/src/Context.ts +319 -378
  1175. package/src/Cron.ts +68 -77
  1176. package/src/Crypto.ts +13 -15
  1177. package/src/Data.ts +60 -80
  1178. package/src/DateTime.ts +564 -660
  1179. package/src/Deferred.ts +253 -256
  1180. package/src/Duration.ts +216 -308
  1181. package/src/Effect.ts +2893 -3279
  1182. package/src/Encoding.ts +22 -40
  1183. package/src/Equal.ts +49 -39
  1184. package/src/Equivalence.ts +103 -105
  1185. package/src/ErrorReporter.ts +51 -27
  1186. package/src/ExecutionPlan.ts +13 -55
  1187. package/src/Exit.ts +116 -192
  1188. package/src/Fiber.ts +81 -148
  1189. package/src/FiberHandle.ts +152 -105
  1190. package/src/FiberMap.ts +225 -174
  1191. package/src/FiberSet.ts +124 -82
  1192. package/src/FileSystem.ts +155 -263
  1193. package/src/Filter.ts +61 -33
  1194. package/src/Formatter.ts +54 -56
  1195. package/src/Function.ts +76 -145
  1196. package/src/Graph.ts +416 -770
  1197. package/src/HKT.ts +12 -6
  1198. package/src/Hash.ts +52 -83
  1199. package/src/HashMap.ts +319 -411
  1200. package/src/HashRing.ts +1 -0
  1201. package/src/HashSet.ts +177 -284
  1202. package/src/Inspectable.ts +12 -12
  1203. package/src/Iterable.ts +620 -786
  1204. package/src/JsonPatch.ts +58 -112
  1205. package/src/JsonPointer.ts +8 -8
  1206. package/src/JsonSchema.ts +402 -244
  1207. package/src/Latch.ts +23 -35
  1208. package/src/Layer.ts +359 -260
  1209. package/src/LayerMap.ts +49 -29
  1210. package/src/LayerRef.ts +6 -2
  1211. package/src/LogLevel.ts +114 -214
  1212. package/src/Logger.ts +344 -697
  1213. package/src/ManagedRuntime.ts +7 -5
  1214. package/src/Match.ts +217 -252
  1215. package/src/Metric.ts +516 -1089
  1216. package/src/MutableHashMap.ts +218 -255
  1217. package/src/MutableHashSet.ts +84 -89
  1218. package/src/MutableList.ts +73 -370
  1219. package/src/MutableRef.ts +420 -243
  1220. package/src/Newtype.ts +21 -14
  1221. package/src/NonEmptyIterable.ts +7 -137
  1222. package/src/Number.ts +196 -233
  1223. package/src/Optic.ts +243 -383
  1224. package/src/Option.ts +447 -812
  1225. package/src/Order.ts +109 -109
  1226. package/src/Ordering.ts +20 -23
  1227. package/src/Path.ts +38 -41
  1228. package/src/Pipeable.ts +6 -5
  1229. package/src/PlatformError.ts +4 -4
  1230. package/src/Pool.ts +4 -2
  1231. package/src/Predicate.ts +200 -181
  1232. package/src/PrimaryKey.ts +7 -7
  1233. package/src/PubSub.ts +526 -552
  1234. package/src/Pull.ts +24 -18
  1235. package/src/Queue.ts +200 -159
  1236. package/src/Random.ts +49 -74
  1237. package/src/RcMap.ts +121 -63
  1238. package/src/RcRef.ts +24 -13
  1239. package/src/Record.ts +291 -488
  1240. package/src/Redactable.ts +10 -3
  1241. package/src/Redacted.ts +25 -25
  1242. package/src/Reducer.ts +8 -15
  1243. package/src/Ref.ts +221 -361
  1244. package/src/References.ts +102 -168
  1245. package/src/RegExp.ts +10 -14
  1246. package/src/Request.ts +31 -21
  1247. package/src/RequestResolver.ts +202 -91
  1248. package/src/Result.ts +312 -484
  1249. package/src/Runtime.ts +50 -75
  1250. package/src/Schedule.ts +308 -1734
  1251. package/src/Scheduler.ts +20 -7
  1252. package/src/Schema.ts +716 -745
  1253. package/src/SchemaAST.ts +466 -358
  1254. package/src/SchemaError.ts +7 -6
  1255. package/src/SchemaGetter.ts +242 -190
  1256. package/src/SchemaIssue.ts +89 -275
  1257. package/src/SchemaParser.ts +180 -93
  1258. package/src/SchemaRepresentation.ts +22 -40
  1259. package/src/SchemaTransformation.ts +129 -88
  1260. package/src/Scope.ts +123 -151
  1261. package/src/ScopedRef.ts +4 -4
  1262. package/src/Semaphore.ts +152 -51
  1263. package/src/Sink.ts +128 -113
  1264. package/src/Stdio.ts +1 -1
  1265. package/src/Stream.ts +2602 -3123
  1266. package/src/String.ts +275 -312
  1267. package/src/Struct.ts +109 -114
  1268. package/src/SubscriptionRef.ts +284 -252
  1269. package/src/Symbol.ts +3 -3
  1270. package/src/Terminal.ts +2 -2
  1271. package/src/Tracer.ts +102 -55
  1272. package/src/Trie.ts +287 -679
  1273. package/src/Tuple.ts +92 -127
  1274. package/src/TxChunk.ts +201 -121
  1275. package/src/TxDeferred.ts +62 -46
  1276. package/src/TxHashMap.ts +645 -799
  1277. package/src/TxHashSet.ts +443 -356
  1278. package/src/TxPriorityQueue.ts +130 -98
  1279. package/src/TxPubSub.ts +107 -80
  1280. package/src/TxQueue.ts +214 -183
  1281. package/src/TxReentrantLock.ts +97 -66
  1282. package/src/TxRef.ts +51 -32
  1283. package/src/TxSemaphore.ts +129 -95
  1284. package/src/TxSubscriptionRef.ts +97 -70
  1285. package/src/Types.ts +126 -67
  1286. package/src/Unify.ts +45 -65
  1287. package/src/Utils.ts +23 -16
  1288. package/src/internal/core.ts +2 -2
  1289. package/src/internal/dateTime.ts +6 -0
  1290. package/src/internal/effect.ts +93 -48
  1291. package/src/internal/persistence.ts +2 -0
  1292. package/src/internal/references.ts +3 -2
  1293. package/src/internal/schema/fromJsonSchemaDocument.ts +15 -13
  1294. package/src/internal/schema/fromRepresentation.ts +10 -16
  1295. package/src/internal/schema/parser.ts +22 -0
  1296. package/src/internal/schema/toJsonSchemaDocument.ts +60 -6
  1297. package/src/internal/schema/toRepresentation.ts +104 -119
  1298. package/src/internal/trie.ts +10 -11
  1299. package/src/testing/FastCheck.ts +8 -7
  1300. package/src/testing/TestClock.ts +72 -30
  1301. package/src/testing/TestConsole.ts +32 -31
  1302. package/src/testing/TestSchema.ts +29 -29
  1303. package/src/unstable/ai/AiError.ts +95 -118
  1304. package/src/unstable/ai/AnthropicStructuredOutput.ts +1 -1
  1305. package/src/unstable/ai/Chat.ts +132 -97
  1306. package/src/unstable/ai/IdGenerator.ts +32 -28
  1307. package/src/unstable/ai/LanguageModel.ts +107 -67
  1308. package/src/unstable/ai/McpProtocol.ts +48 -0
  1309. package/src/unstable/ai/McpSchema.ts +60 -50
  1310. package/src/unstable/ai/McpServer.ts +930 -304
  1311. package/src/unstable/ai/Model.ts +9 -20
  1312. package/src/unstable/ai/OpenAiStructuredOutput.ts +1 -1
  1313. package/src/unstable/ai/Prompt.ts +145 -43
  1314. package/src/unstable/ai/Response.ts +28 -14
  1315. package/src/unstable/ai/Telemetry.ts +46 -13
  1316. package/src/unstable/ai/Tokenizer.ts +14 -3
  1317. package/src/unstable/ai/Tool.ts +59 -44
  1318. package/src/unstable/ai/Toolkit.ts +26 -8
  1319. package/src/unstable/ai/index.ts +5 -0
  1320. package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
  1321. package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
  1322. package/src/unstable/ai/internal/structured-output.ts +13 -18
  1323. package/src/unstable/cli/Argument.ts +273 -69
  1324. package/src/unstable/cli/CliError.ts +69 -76
  1325. package/src/unstable/cli/CliOutput.ts +44 -58
  1326. package/src/unstable/cli/Command.ts +705 -107
  1327. package/src/unstable/cli/Flag.ts +418 -138
  1328. package/src/unstable/cli/GlobalFlag.ts +1 -1
  1329. package/src/unstable/cli/HelpDoc.ts +12 -4
  1330. package/src/unstable/cli/Param.ts +292 -78
  1331. package/src/unstable/cli/Primitive.ts +370 -149
  1332. package/src/unstable/cli/Prompt.ts +28 -14
  1333. package/src/unstable/cli/internal/lexer.ts +8 -2
  1334. package/src/unstable/cli/internal/parser.ts +2 -2
  1335. package/src/unstable/cluster/ClusterSchema.ts +8 -8
  1336. package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -1
  1337. package/src/unstable/cluster/Entity.ts +15 -16
  1338. package/src/unstable/cluster/EntityProxy.ts +4 -2
  1339. package/src/unstable/cluster/EntityResource.ts +2 -2
  1340. package/src/unstable/cluster/Envelope.ts +3 -3
  1341. package/src/unstable/cluster/HttpRunner.ts +6 -4
  1342. package/src/unstable/cluster/Message.ts +9 -9
  1343. package/src/unstable/cluster/MessageStorage.ts +15 -15
  1344. package/src/unstable/cluster/Reply.ts +4 -6
  1345. package/src/unstable/cluster/RunnerHealth.ts +1 -1
  1346. package/src/unstable/cluster/RunnerServer.ts +41 -8
  1347. package/src/unstable/cluster/RunnerStorage.ts +2 -2
  1348. package/src/unstable/cluster/Runners.ts +23 -12
  1349. package/src/unstable/cluster/Sharding.ts +7 -8
  1350. package/src/unstable/cluster/ShardingConfig.ts +3 -3
  1351. package/src/unstable/cluster/SingletonAddress.ts +1 -1
  1352. package/src/unstable/cluster/Snowflake.ts +8 -8
  1353. package/src/unstable/cluster/SqlMessageStorage.ts +1 -1
  1354. package/src/unstable/cluster/SqlRunnerStorage.ts +21 -5
  1355. package/src/unstable/cluster/internal/entityManager.ts +11 -15
  1356. package/src/unstable/encoding/Msgpack.ts +6 -8
  1357. package/src/unstable/encoding/Sse.ts +98 -16
  1358. package/src/unstable/eventlog/Event.ts +20 -20
  1359. package/src/unstable/eventlog/EventGroup.ts +4 -4
  1360. package/src/unstable/eventlog/EventJournal.ts +15 -15
  1361. package/src/unstable/eventlog/EventLog.ts +3 -3
  1362. package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
  1363. package/src/unstable/eventlog/EventLogMessage.ts +2 -2
  1364. package/src/unstable/eventlog/EventLogRemote.ts +1 -1
  1365. package/src/unstable/eventlog/EventLogServer.ts +41 -7
  1366. package/src/unstable/eventlog/EventLogServerEncrypted.ts +13 -5
  1367. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +14 -6
  1368. package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
  1369. package/src/unstable/http/Cookies.ts +35 -21
  1370. package/src/unstable/http/Etag.ts +1 -1
  1371. package/src/unstable/http/FetchHttpClient.ts +3 -1
  1372. package/src/unstable/http/Headers.ts +2 -2
  1373. package/src/unstable/http/HttpBody.ts +20 -5
  1374. package/src/unstable/http/HttpClient.ts +83 -55
  1375. package/src/unstable/http/HttpClientRequest.ts +2 -0
  1376. package/src/unstable/http/HttpClientResponse.ts +4 -4
  1377. package/src/unstable/http/HttpEffect.ts +8 -8
  1378. package/src/unstable/http/HttpMethod.ts +6 -9
  1379. package/src/unstable/http/HttpMiddleware.ts +202 -39
  1380. package/src/unstable/http/HttpPlatform.ts +95 -0
  1381. package/src/unstable/http/HttpRouter.ts +102 -98
  1382. package/src/unstable/http/HttpServer.ts +13 -13
  1383. package/src/unstable/http/HttpServerError.ts +2 -2
  1384. package/src/unstable/http/HttpServerRequest.ts +4 -4
  1385. package/src/unstable/http/HttpServerResponse.ts +30 -0
  1386. package/src/unstable/http/HttpStaticServer.ts +35 -7
  1387. package/src/unstable/http/Multipart.ts +6 -6
  1388. package/src/unstable/http/Url.ts +33 -63
  1389. package/src/unstable/http/UrlParams.ts +10 -18
  1390. package/src/unstable/http/internal/compression.ts +196 -0
  1391. package/src/unstable/httpapi/HttpApiBuilder.ts +10 -9
  1392. package/src/unstable/httpapi/HttpApiClient.ts +14 -14
  1393. package/src/unstable/httpapi/HttpApiEndpoint.ts +42 -42
  1394. package/src/unstable/httpapi/HttpApiError.ts +13 -13
  1395. package/src/unstable/httpapi/HttpApiGroup.ts +15 -15
  1396. package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
  1397. package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
  1398. package/src/unstable/httpapi/HttpApiSchema.ts +6 -6
  1399. package/src/unstable/httpapi/OpenApi.ts +13 -13
  1400. package/src/unstable/observability/OtlpExporter.ts +31 -19
  1401. package/src/unstable/observability/OtlpMetrics.ts +4 -1
  1402. package/src/unstable/observability/OtlpResource.ts +26 -17
  1403. package/src/unstable/observability/PrometheusMetrics.ts +13 -4
  1404. package/src/unstable/observability/internal/otlpEnv.ts +1 -1
  1405. package/src/unstable/observability/internal/protobuf.ts +3 -0
  1406. package/src/unstable/persistence/KeyValueStore.ts +72 -49
  1407. package/src/unstable/persistence/Persistable.ts +8 -8
  1408. package/src/unstable/persistence/PersistedQueue.ts +6 -6
  1409. package/src/unstable/persistence/Persistence.ts +126 -19
  1410. package/src/unstable/persistence/RateLimiter.ts +26 -15
  1411. package/src/unstable/persistence/Redis.ts +2 -2
  1412. package/src/unstable/process/ChildProcess.ts +64 -21
  1413. package/src/unstable/process/ChildProcessSpawner.ts +21 -10
  1414. package/src/unstable/reactivity/AsyncResult.ts +12 -13
  1415. package/src/unstable/reactivity/Atom.ts +28 -25
  1416. package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
  1417. package/src/unstable/reactivity/AtomRegistry.ts +24 -3
  1418. package/src/unstable/reactivity/AtomRpc.ts +5 -4
  1419. package/src/unstable/reactivity/Hydration.ts +1 -1
  1420. package/src/unstable/rpc/Rpc.ts +35 -33
  1421. package/src/unstable/rpc/RpcClient.ts +16 -15
  1422. package/src/unstable/rpc/RpcGroup.ts +8 -8
  1423. package/src/unstable/rpc/RpcMessage.ts +31 -30
  1424. package/src/unstable/rpc/RpcMiddleware.ts +10 -10
  1425. package/src/unstable/rpc/RpcSchema.ts +4 -4
  1426. package/src/unstable/rpc/RpcSerialization.ts +167 -68
  1427. package/src/unstable/rpc/RpcServer.ts +18 -15
  1428. package/src/unstable/rpc/RpcWorker.ts +5 -5
  1429. package/src/unstable/schema/Model.ts +52 -50
  1430. package/src/unstable/schema/VariantSchema.ts +5 -5
  1431. package/src/unstable/socket/Socket.ts +17 -4
  1432. package/src/unstable/sql/SqlClient.ts +5 -6
  1433. package/src/unstable/sql/SqlModel.ts +2 -2
  1434. package/src/unstable/sql/SqlResolver.ts +5 -5
  1435. package/src/unstable/sql/Statement.ts +24 -23
  1436. package/src/unstable/workers/Transferable.ts +1 -1
  1437. package/src/unstable/workers/Worker.ts +2 -2
  1438. package/src/unstable/workers/WorkerError.ts +7 -7
  1439. package/src/unstable/workers/WorkerRunner.ts +1 -1
  1440. package/src/unstable/workflow/Activity.ts +2 -2
  1441. package/src/unstable/workflow/DurableClock.ts +1 -1
  1442. package/src/unstable/workflow/DurableDeferred.ts +10 -10
  1443. package/src/unstable/workflow/DurableQueue.ts +22 -20
  1444. package/src/unstable/workflow/Workflow.ts +23 -23
  1445. package/src/unstable/workflow/WorkflowEngine.ts +1 -1
  1446. package/src/unstable/workflow/WorkflowProxy.ts +4 -2
  1447. package/dist/internal/version.d.ts +0 -3
  1448. package/dist/internal/version.d.ts.map +0 -1
  1449. package/dist/internal/version.js +0 -2
  1450. package/dist/internal/version.js.map +0 -1
  1451. package/src/internal/version.ts +0 -2
package/dist/PubSub.d.ts CHANGED
@@ -29,26 +29,27 @@ declare const TypeId = "~effect/PubSub";
29
29
  *
30
30
  * **Example** (Publishing and subscribing to messages)
31
31
  *
32
- * ```ts
32
+ * ```ts import.meta.vitest
33
33
  * import { Effect, PubSub } from "effect"
34
34
  *
35
- * const program = Effect.gen(function*() {
35
+ * const program = Effect.scoped(Effect.gen(function*() {
36
36
  * // Create a bounded PubSub with capacity 10
37
37
  * const pubsub = yield* PubSub.bounded<string>(10)
38
38
  *
39
39
  * // Subscribe and consume messages
40
- * yield* Effect.scoped(Effect.gen(function*() {
41
- * const subscription = yield* PubSub.subscribe(pubsub)
40
+ * const subscription = yield* PubSub.subscribe(pubsub)
42
41
  *
43
- * // Publish messages
44
- * yield* PubSub.publish(pubsub, "Hello")
45
- * yield* PubSub.publish(pubsub, "World")
42
+ * // Publish messages
43
+ * yield* PubSub.publish(pubsub, "Hello")
44
+ * yield* PubSub.publish(pubsub, "World")
46
45
  *
47
- * const message1 = yield* PubSub.take(subscription)
48
- * const message2 = yield* PubSub.take(subscription)
49
- * console.log(message1, message2) // "Hello", "World"
50
- * }))
51
- * })
46
+ * const message1 = yield* PubSub.take(subscription)
47
+ * const message2 = yield* PubSub.take(subscription)
48
+ * return [message1, message2]
49
+ * }))
50
+ *
51
+ * const actual = await Effect.runPromise(program)
52
+ * actual // => ["Hello", "World"]
52
53
  * ```
53
54
  *
54
55
  * @category models
@@ -126,6 +127,7 @@ export declare namespace PubSub {
126
127
  take(): A | undefined;
127
128
  takeN(n: number): Array<A>;
128
129
  takeAll(): Array<A>;
130
+ close(): void;
129
131
  readonly remaining: number;
130
132
  }
131
133
  /**
@@ -168,31 +170,28 @@ declare const SubscriptionTypeId = "~effect/PubSub/Subscription";
168
170
  *
169
171
  * **Example** (Taking messages from a subscription)
170
172
  *
171
- * ```ts
173
+ * ```ts import.meta.vitest
172
174
  * import { Effect, PubSub } from "effect"
173
175
  *
174
- * const program = Effect.gen(function*() {
176
+ * const program = Effect.scoped(Effect.gen(function*() {
175
177
  * const pubsub = yield* PubSub.bounded<string>(10)
176
178
  *
177
179
  * // Subscribe within a scope for automatic cleanup
178
- * yield* Effect.scoped(Effect.gen(function*() {
179
- * const subscription: PubSub.Subscription<string> = yield* PubSub.subscribe(
180
- * pubsub
181
- * )
182
- *
183
- * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
184
- *
185
- * // Take individual messages
186
- * const message = yield* PubSub.take(subscription)
187
- * console.log(message) // "msg1"
188
- *
189
- * // Take multiple messages
190
- * const messages = yield* PubSub.takeUpTo(subscription, 1)
191
- * console.log(messages) // ["msg2"]
192
- * const allMessages = yield* PubSub.takeAll(subscription)
193
- * console.log(allMessages) // ["msg3"]
194
- * }))
195
- * })
180
+ * const subscription: PubSub.Subscription<string> = yield* PubSub.subscribe(pubsub)
181
+ *
182
+ * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
183
+ *
184
+ * // Take individual messages
185
+ * const message = yield* PubSub.take(subscription)
186
+ *
187
+ * // Take multiple messages
188
+ * const messages = yield* PubSub.takeUpTo(subscription, 1)
189
+ * const allMessages = yield* PubSub.takeAll(subscription)
190
+ * return { message, messages, allMessages }
191
+ * }))
192
+ *
193
+ * const actual = await Effect.runPromise(program)
194
+ * actual // => { message: "msg1", messages: ["msg2"], allMessages: ["msg3"] }
196
195
  * ```
197
196
  *
198
197
  * @category models
@@ -216,7 +215,7 @@ export interface Subscription<out A> extends Pipeable {
216
215
  *
217
216
  * **Example** (Creating a PubSub with a custom strategy)
218
217
  *
219
- * ```ts
218
+ * ```ts import.meta.vitest
220
219
  * import { Effect, PubSub } from "effect"
221
220
  *
222
221
  * const program = Effect.gen(function*() {
@@ -227,8 +226,13 @@ export interface Subscription<out A> extends Pipeable {
227
226
  * })
228
227
  *
229
228
  * // Use the created PubSub
230
- * yield* PubSub.publish(pubsub, "Hello")
229
+ * const published = yield* PubSub.publish(pubsub, "Hello")
230
+ * yield* PubSub.shutdown(pubsub)
231
+ * return published
231
232
  * })
233
+ *
234
+ * const actual = await Effect.runPromise(program)
235
+ * actual // => true
232
236
  * ```
233
237
  *
234
238
  * @category constructors
@@ -251,7 +255,7 @@ export declare const make: <A>(options: {
251
255
  *
252
256
  * **Example** (Creating a bounded PubSub)
253
257
  *
254
- * ```ts
258
+ * ```ts import.meta.vitest
255
259
  * import { Effect, PubSub } from "effect"
256
260
  *
257
261
  * const program = Effect.gen(function*() {
@@ -263,7 +267,15 @@ export declare const make: <A>(options: {
263
267
  * capacity: 100,
264
268
  * replay: 10 // Last 10 messages replayed to new subscribers
265
269
  * })
270
+ *
271
+ * const capacities = [PubSub.capacity(pubsub), PubSub.capacity(pubsubWithReplay)]
272
+ * yield* PubSub.shutdown(pubsub)
273
+ * yield* PubSub.shutdown(pubsubWithReplay)
274
+ * return capacities
266
275
  * })
276
+ *
277
+ * const actual = await Effect.runPromise(program)
278
+ * actual // => [100, 100]
267
279
  * ```
268
280
  *
269
281
  * @category constructors
@@ -283,33 +295,27 @@ export declare const bounded: <A>(capacity: number | {
283
295
  *
284
296
  * **Example** (Dropping messages when full)
285
297
  *
286
- * ```ts
298
+ * ```ts import.meta.vitest
287
299
  * import { Effect, PubSub } from "effect"
288
300
  *
289
- * const program = Effect.gen(function*() {
301
+ * const program = Effect.scoped(Effect.gen(function*() {
290
302
  * // Create dropping PubSub that drops new messages when full
291
303
  * const pubsub = yield* PubSub.dropping<string>(3)
292
304
  *
293
- * // With replay buffer for late subscribers
294
- * const pubsubWithReplay = yield* PubSub.dropping<string>({
295
- * capacity: 3,
296
- * replay: 5
297
- * })
305
+ * const subscription = yield* PubSub.subscribe(pubsub)
298
306
  *
299
- * yield* Effect.scoped(Effect.gen(function*() {
300
- * const subscription = yield* PubSub.subscribe(pubsub)
307
+ * // Fill the PubSub and see dropping behavior
308
+ * yield* PubSub.publish(pubsub, "msg1") // succeeds
309
+ * yield* PubSub.publish(pubsub, "msg2") // succeeds
310
+ * yield* PubSub.publish(pubsub, "msg3") // succeeds
311
+ * const dropped = yield* PubSub.publish(pubsub, "msg4") // returns false (dropped)
301
312
  *
302
- * // Fill the PubSub and see dropping behavior
303
- * yield* PubSub.publish(pubsub, "msg1") // succeeds
304
- * yield* PubSub.publish(pubsub, "msg2") // succeeds
305
- * yield* PubSub.publish(pubsub, "msg3") // succeeds
306
- * const dropped = yield* PubSub.publish(pubsub, "msg4") // returns false (dropped)
307
- * console.log("Message dropped:", !dropped) // true
313
+ * const messages = yield* PubSub.takeAll(subscription)
314
+ * return { dropped: !dropped, messages }
315
+ * }))
308
316
  *
309
- * const messages = yield* PubSub.takeAll(subscription)
310
- * console.log(messages) // ["msg1", "msg2", "msg3"]
311
- * }))
312
- * })
317
+ * const actual = await Effect.runPromise(program)
318
+ * actual // => { dropped: true, messages: ["msg1", "msg2", "msg3"] }
313
319
  * ```
314
320
  *
315
321
  * @category constructors
@@ -329,32 +335,26 @@ export declare const dropping: <A>(capacity: number | {
329
335
  *
330
336
  * **Example** (Sliding old messages when full)
331
337
  *
332
- * ```ts
338
+ * ```ts import.meta.vitest
333
339
  * import { Effect, PubSub } from "effect"
334
340
  *
335
- * const program = Effect.gen(function*() {
341
+ * const program = Effect.scoped(Effect.gen(function*() {
336
342
  * // Create sliding PubSub that evicts old messages when full
337
343
  * const pubsub = yield* PubSub.sliding<string>(3)
338
344
  *
339
- * // With replay buffer
340
- * const pubsubWithReplay = yield* PubSub.sliding<string>({
341
- * capacity: 3,
342
- * replay: 2
343
- * })
345
+ * const subscription = yield* PubSub.subscribe(pubsub)
344
346
  *
345
- * yield* Effect.scoped(Effect.gen(function*() {
346
- * const subscription = yield* PubSub.subscribe(pubsub)
347
+ * // Fill and overflow the PubSub
348
+ * yield* PubSub.publish(pubsub, "msg1")
349
+ * yield* PubSub.publish(pubsub, "msg2")
350
+ * yield* PubSub.publish(pubsub, "msg3")
351
+ * yield* PubSub.publish(pubsub, "msg4") // "msg1" is evicted
347
352
  *
348
- * // Fill and overflow the PubSub
349
- * yield* PubSub.publish(pubsub, "msg1")
350
- * yield* PubSub.publish(pubsub, "msg2")
351
- * yield* PubSub.publish(pubsub, "msg3")
352
- * yield* PubSub.publish(pubsub, "msg4") // "msg1" is evicted
353
+ * return yield* PubSub.takeAll(subscription)
354
+ * }))
353
355
  *
354
- * const messages = yield* PubSub.takeAll(subscription)
355
- * console.log(messages) // ["msg2", "msg3", "msg4"]
356
- * }))
357
- * })
356
+ * const actual = await Effect.runPromise(program)
357
+ * actual // => ["msg2", "msg3", "msg4"]
358
358
  * ```
359
359
  *
360
360
  * @category constructors
@@ -369,30 +369,25 @@ export declare const sliding: <A>(capacity: number | {
369
369
  *
370
370
  * **Example** (Creating an unbounded PubSub)
371
371
  *
372
- * ```ts
372
+ * ```ts import.meta.vitest
373
373
  * import { Effect, PubSub } from "effect"
374
374
  *
375
- * const program = Effect.gen(function*() {
375
+ * const program = Effect.scoped(Effect.gen(function*() {
376
376
  * // Create unbounded PubSub
377
377
  * const pubsub = yield* PubSub.unbounded<string>()
378
378
  *
379
- * // With replay buffer for late subscribers
380
- * const pubsubWithReplay = yield* PubSub.unbounded<string>({
381
- * replay: 10
382
- * })
379
+ * const subscription = yield* PubSub.subscribe(pubsub)
383
380
  *
384
- * yield* Effect.scoped(Effect.gen(function*() {
385
- * const subscription = yield* PubSub.subscribe(pubsub)
381
+ * // Can publish unlimited messages
382
+ * for (let i = 0; i < 3; i++) {
383
+ * yield* PubSub.publish(pubsub, `message-${i}`)
384
+ * }
386
385
  *
387
- * // Can publish unlimited messages
388
- * for (let i = 0; i < 3; i++) {
389
- * yield* PubSub.publish(pubsub, `message-${i}`)
390
- * }
386
+ * return yield* PubSub.takeAll(subscription)
387
+ * }))
391
388
  *
392
- * const message = yield* PubSub.take(subscription)
393
- * console.log("First message:", message) // "message-0"
394
- * }))
395
- * })
389
+ * const actual = await Effect.runPromise(program)
390
+ * actual // => ["message-0", "message-1", "message-2"]
396
391
  * ```
397
392
  *
398
393
  * @category constructors
@@ -461,18 +456,17 @@ export declare const makeAtomicUnbounded: <A>(options?: {
461
456
  *
462
457
  * **Example** (Getting PubSub capacity)
463
458
  *
464
- * ```ts
459
+ * ```ts import.meta.vitest
465
460
  * import { Effect, PubSub } from "effect"
466
461
  *
467
462
  * const program = Effect.gen(function*() {
468
463
  * const pubsub = yield* PubSub.bounded<string>(100)
469
- * const cap = PubSub.capacity(pubsub)
470
- * console.log("PubSub capacity:", cap) // 100
471
- *
472
464
  * const unboundedPubsub = yield* PubSub.unbounded<string>()
473
- * const unboundedCap = PubSub.capacity(unboundedPubsub)
474
- * console.log("Unbounded capacity:", unboundedCap) // Number.MAX_SAFE_INTEGER
465
+ * return [PubSub.capacity(pubsub), PubSub.capacity(unboundedPubsub)]
475
466
  * })
467
+ *
468
+ * const actual = await Effect.runPromise(program)
469
+ * actual // => [100, Number.MAX_SAFE_INTEGER]
476
470
  * ```
477
471
  *
478
472
  * @category getters
@@ -490,29 +484,28 @@ export declare const capacity: <A>(self: PubSub<A>) => number;
490
484
  *
491
485
  * **Example** (Getting PubSub size)
492
486
  *
493
- * ```ts
487
+ * ```ts import.meta.vitest
494
488
  * import { Effect, PubSub } from "effect"
495
489
  *
496
- * const program = Effect.gen(function*() {
490
+ * const program = Effect.scoped(Effect.gen(function*() {
497
491
  * const pubsub = yield* PubSub.bounded<string>(10)
498
492
  *
499
493
  * // Initially empty
500
494
  * const initialSize = yield* PubSub.size(pubsub)
501
- * console.log("Initial size:", initialSize) // 0
502
495
  *
503
- * yield* Effect.scoped(Effect.gen(function*() {
504
- * const subscription = yield* PubSub.subscribe(pubsub)
496
+ * const subscription = yield* PubSub.subscribe(pubsub)
505
497
  *
506
- * // Publish some messages for the active subscription
507
- * yield* PubSub.publish(pubsub, "msg1")
508
- * yield* PubSub.publish(pubsub, "msg2")
498
+ * // Publish some messages for the active subscription
499
+ * yield* PubSub.publish(pubsub, "msg1")
500
+ * yield* PubSub.publish(pubsub, "msg2")
509
501
  *
510
- * const afterPublish = yield* PubSub.size(pubsub)
511
- * console.log("After publishing:", afterPublish) // 2
502
+ * const afterPublish = yield* PubSub.size(pubsub)
503
+ * const messages = yield* PubSub.takeAll(subscription)
504
+ * return { initialSize, afterPublish, messages }
505
+ * }))
512
506
  *
513
- * yield* PubSub.takeAll(subscription)
514
- * }))
515
- * })
507
+ * const actual = await Effect.runPromise(program)
508
+ * actual // => { initialSize: 0, afterPublish: 2, messages: ["msg1", "msg2"] }
516
509
  * ```
517
510
  *
518
511
  * @category getters
@@ -535,14 +528,16 @@ export declare const size: <A>(self: PubSub<A>) => Effect.Effect<number>;
535
528
  *
536
529
  * **Example** (Reading size synchronously)
537
530
  *
538
- * ```ts
539
- * import { PubSub } from "effect"
531
+ * ```ts import.meta.vitest
532
+ * import { Effect, PubSub } from "effect"
540
533
  *
541
- * // Unsafe synchronous size check
542
- * declare const pubsub: PubSub.PubSub<string>
534
+ * const program = Effect.gen(function*() {
535
+ * const pubsub = yield* PubSub.bounded<string>(2)
536
+ * return PubSub.sizeUnsafe(pubsub)
537
+ * })
543
538
  *
544
- * const size = PubSub.sizeUnsafe(pubsub)
545
- * console.log("Current size:", size)
539
+ * const actual = await Effect.runPromise(program)
540
+ * actual // => 0
546
541
  * ```
547
542
  *
548
543
  * @category getters
@@ -558,29 +553,28 @@ export declare const sizeUnsafe: <A>(self: PubSub<A>) => number;
558
553
  *
559
554
  * **Example** (Checking whether a PubSub is full)
560
555
  *
561
- * ```ts
556
+ * ```ts import.meta.vitest
562
557
  * import { Effect, PubSub } from "effect"
563
558
  *
564
- * const program = Effect.gen(function*() {
559
+ * const program = Effect.scoped(Effect.gen(function*() {
565
560
  * const pubsub = yield* PubSub.bounded<string>(2)
566
561
  *
567
562
  * // Initially not full
568
563
  * const initiallyFull = yield* PubSub.isFull(pubsub)
569
- * console.log("Initially full:", initiallyFull) // false
570
564
  *
571
- * yield* Effect.scoped(Effect.gen(function*() {
572
- * const subscription = yield* PubSub.subscribe(pubsub)
565
+ * const subscription = yield* PubSub.subscribe(pubsub)
573
566
  *
574
- * // Fill the PubSub for the active subscription
575
- * yield* PubSub.publish(pubsub, "msg1")
576
- * yield* PubSub.publish(pubsub, "msg2")
567
+ * // Fill the PubSub for the active subscription
568
+ * yield* PubSub.publish(pubsub, "msg1")
569
+ * yield* PubSub.publish(pubsub, "msg2")
577
570
  *
578
- * const nowFull = yield* PubSub.isFull(pubsub)
579
- * console.log("Now full:", nowFull) // true
571
+ * const nowFull = yield* PubSub.isFull(pubsub)
572
+ * const messages = yield* PubSub.takeAll(subscription)
573
+ * return { initiallyFull, nowFull, messages }
574
+ * }))
580
575
  *
581
- * yield* PubSub.takeAll(subscription)
582
- * }))
583
- * })
576
+ * const actual = await Effect.runPromise(program)
577
+ * actual // => { initiallyFull: false, nowFull: true, messages: ["msg1", "msg2"] }
584
578
  * ```
585
579
  *
586
580
  * @category predicates
@@ -592,28 +586,27 @@ export declare const isFull: <A>(self: PubSub<A>) => Effect.Effect<boolean>;
592
586
  *
593
587
  * **Example** (Checking whether a PubSub is empty)
594
588
  *
595
- * ```ts
589
+ * ```ts import.meta.vitest
596
590
  * import { Effect, PubSub } from "effect"
597
591
  *
598
- * const program = Effect.gen(function*() {
592
+ * const program = Effect.scoped(Effect.gen(function*() {
599
593
  * const pubsub = yield* PubSub.bounded<string>(10)
600
594
  *
601
595
  * // Initially empty
602
596
  * const initiallyEmpty = yield* PubSub.isEmpty(pubsub)
603
- * console.log("Initially empty:", initiallyEmpty) // true
604
597
  *
605
- * yield* Effect.scoped(Effect.gen(function*() {
606
- * const subscription = yield* PubSub.subscribe(pubsub)
598
+ * const subscription = yield* PubSub.subscribe(pubsub)
607
599
  *
608
- * // Publish a message for the active subscription
609
- * yield* PubSub.publish(pubsub, "Hello")
600
+ * // Publish a message for the active subscription
601
+ * yield* PubSub.publish(pubsub, "Hello")
610
602
  *
611
- * const nowEmpty = yield* PubSub.isEmpty(pubsub)
612
- * console.log("Now empty:", nowEmpty) // false
603
+ * const nowEmpty = yield* PubSub.isEmpty(pubsub)
604
+ * const message = yield* PubSub.take(subscription)
605
+ * return { initiallyEmpty, nowEmpty, message }
606
+ * }))
613
607
  *
614
- * yield* PubSub.take(subscription)
615
- * }))
616
- * })
608
+ * const actual = await Effect.runPromise(program)
609
+ * actual // => { initiallyEmpty: true, nowEmpty: false, message: "Hello" }
617
610
  * ```
618
611
  *
619
612
  * @category predicates
@@ -632,7 +625,7 @@ export declare const isEmpty: <A>(self: PubSub<A>) => Effect.Effect<boolean>;
632
625
  *
633
626
  * **Example** (Shutting down a PubSub)
634
627
  *
635
- * ```ts
628
+ * ```ts import.meta.vitest
636
629
  * import { Effect, PubSub } from "effect"
637
630
  *
638
631
  * const program = Effect.gen(function*() {
@@ -642,12 +635,14 @@ export declare const isEmpty: <A>(self: PubSub<A>) => Effect.Effect<boolean>;
642
635
  * yield* PubSub.shutdown(pubsub)
643
636
  *
644
637
  * const isShutdown = yield* PubSub.isShutdown(pubsub)
645
- * console.log("Is shutdown:", isShutdown) // true
646
638
  *
647
639
  * // Publishing after shutdown returns false
648
640
  * const published = yield* PubSub.publish(pubsub, "msg1")
649
- * console.log("Published after shutdown:", published) // false
641
+ * return { isShutdown, published }
650
642
  * })
643
+ *
644
+ * const actual = await Effect.runPromise(program)
645
+ * actual // => { isShutdown: true, published: false }
651
646
  * ```
652
647
  *
653
648
  * @category lifecycle
@@ -660,7 +655,7 @@ export declare const shutdown: <A>(self: PubSub<A>) => Effect.Effect<void>;
660
655
  *
661
656
  * **Example** (Checking whether a PubSub is shut down)
662
657
  *
663
- * ```ts
658
+ * ```ts import.meta.vitest
664
659
  * import { Effect, PubSub } from "effect"
665
660
  *
666
661
  * const program = Effect.gen(function*() {
@@ -668,14 +663,16 @@ export declare const shutdown: <A>(self: PubSub<A>) => Effect.Effect<void>;
668
663
  *
669
664
  * // Initially not shutdown
670
665
  * const initiallyShutdown = yield* PubSub.isShutdown(pubsub)
671
- * console.log("Initially shutdown:", initiallyShutdown) // false
672
666
  *
673
667
  * // Shutdown the PubSub
674
668
  * yield* PubSub.shutdown(pubsub)
675
669
  *
676
670
  * const nowShutdown = yield* PubSub.isShutdown(pubsub)
677
- * console.log("Now shutdown:", nowShutdown) // true
671
+ * return [initiallyShutdown, nowShutdown]
678
672
  * })
673
+ *
674
+ * const actual = await Effect.runPromise(program)
675
+ * actual // => [false, true]
679
676
  * ```
680
677
  *
681
678
  * @category predicates
@@ -693,18 +690,18 @@ export declare const isShutdown: <A>(self: PubSub<A>) => Effect.Effect<boolean>;
693
690
  *
694
691
  * **Example** (Checking shutdown synchronously)
695
692
  *
696
- * ```ts
697
- * import { PubSub } from "effect"
693
+ * ```ts import.meta.vitest
694
+ * import { Effect, PubSub } from "effect"
698
695
  *
699
- * declare const pubsub: PubSub.PubSub<string>
696
+ * const program = Effect.gen(function*() {
697
+ * const pubsub = yield* PubSub.bounded<string>(2)
698
+ * const initiallyShutdown = PubSub.isShutdownUnsafe(pubsub)
699
+ * yield* PubSub.shutdown(pubsub)
700
+ * return [initiallyShutdown, PubSub.isShutdownUnsafe(pubsub)]
701
+ * })
700
702
  *
701
- * // Unsafe synchronous shutdown check
702
- * const isDown = PubSub.isShutdownUnsafe(pubsub)
703
- * if (isDown) {
704
- * console.log("PubSub is shutdown, cannot publish")
705
- * } else {
706
- * console.log("PubSub is active")
707
- * }
703
+ * const actual = await Effect.runPromise(program)
704
+ * actual // => [false, true]
708
705
  * ```
709
706
  *
710
707
  * @category predicates
@@ -718,7 +715,7 @@ export declare const isShutdownUnsafe: <A>(self: PubSub<A>) => boolean;
718
715
  *
719
716
  * **Example** (Waiting for shutdown)
720
717
  *
721
- * ```ts
718
+ * ```ts import.meta.vitest
722
719
  * import { Effect, Fiber, PubSub } from "effect"
723
720
  *
724
721
  * const program = Effect.gen(function*() {
@@ -728,19 +725,19 @@ export declare const isShutdownUnsafe: <A>(self: PubSub<A>) => boolean;
728
725
  * const waiterFiber = yield* Effect.forkChild(
729
726
  * Effect.gen(function*() {
730
727
  * yield* PubSub.awaitShutdown(pubsub)
731
- * console.log("PubSub has been shutdown!")
728
+ * return "PubSub has been shutdown!"
732
729
  * })
733
730
  * )
734
731
  *
735
- * // Do some work...
736
- * yield* Effect.sleep("100 millis")
737
- *
738
732
  * // Shutdown the PubSub
739
733
  * yield* PubSub.shutdown(pubsub)
740
734
  *
741
735
  * // The waiter will now complete
742
- * yield* Fiber.join(waiterFiber)
736
+ * return yield* Fiber.join(waiterFiber)
743
737
  * })
738
+ *
739
+ * const actual = await Effect.runPromise(program)
740
+ * actual // => "PubSub has been shutdown!"
744
741
  * ```
745
742
  *
746
743
  * @category lifecycle
@@ -764,24 +761,24 @@ export declare const awaitShutdown: <A>(self: PubSub<A>) => Effect.Effect<void>;
764
761
  *
765
762
  * **Example** (Publishing a message)
766
763
  *
767
- * ```ts
764
+ * ```ts import.meta.vitest
768
765
  * import { Effect, PubSub } from "effect"
769
766
  *
770
- * const program = Effect.gen(function*() {
767
+ * const program = Effect.scoped(Effect.gen(function*() {
771
768
  * const pubsub = yield* PubSub.bounded<string>(10)
772
769
  *
773
770
  * // Publish a message
774
771
  * const published = yield* PubSub.publish(pubsub, "Hello World")
775
- * console.log("Message published:", published) // true
776
772
  *
777
- * yield* Effect.scoped(Effect.gen(function*() {
778
- * const subscription = yield* PubSub.subscribe(pubsub)
773
+ * const subscription = yield* PubSub.subscribe(pubsub)
779
774
  *
780
- * yield* PubSub.publish(pubsub, "Hello")
781
- * const message = yield* PubSub.take(subscription)
782
- * console.log("Received:", message) // "Hello"
783
- * }))
784
- * })
775
+ * yield* PubSub.publish(pubsub, "Hello")
776
+ * const message = yield* PubSub.take(subscription)
777
+ * return { published, message }
778
+ * }))
779
+ *
780
+ * const actual = await Effect.runPromise(program)
781
+ * actual // => { published: true, message: "Hello" }
785
782
  * ```
786
783
  *
787
784
  * @see {@link publishUnsafe} for a synchronous non-blocking attempt that does not run effectful surplus handling
@@ -807,24 +804,24 @@ export declare const publish: {
807
804
  *
808
805
  * **Example** (Publishing a message)
809
806
  *
810
- * ```ts
807
+ * ```ts import.meta.vitest
811
808
  * import { Effect, PubSub } from "effect"
812
809
  *
813
- * const program = Effect.gen(function*() {
810
+ * const program = Effect.scoped(Effect.gen(function*() {
814
811
  * const pubsub = yield* PubSub.bounded<string>(10)
815
812
  *
816
813
  * // Publish a message
817
814
  * const published = yield* PubSub.publish(pubsub, "Hello World")
818
- * console.log("Message published:", published) // true
819
815
  *
820
- * yield* Effect.scoped(Effect.gen(function*() {
821
- * const subscription = yield* PubSub.subscribe(pubsub)
816
+ * const subscription = yield* PubSub.subscribe(pubsub)
822
817
  *
823
- * yield* PubSub.publish(pubsub, "Hello")
824
- * const message = yield* PubSub.take(subscription)
825
- * console.log("Received:", message) // "Hello"
826
- * }))
827
- * })
818
+ * yield* PubSub.publish(pubsub, "Hello")
819
+ * const message = yield* PubSub.take(subscription)
820
+ * return { published, message }
821
+ * }))
822
+ *
823
+ * const actual = await Effect.runPromise(program)
824
+ * actual // => { published: true, message: "Hello" }
828
825
  * ```
829
826
  *
830
827
  * @see {@link publishUnsafe} for a synchronous non-blocking attempt that does not run effectful surplus handling
@@ -850,24 +847,24 @@ export declare const publish: {
850
847
  *
851
848
  * **Example** (Publishing a message)
852
849
  *
853
- * ```ts
850
+ * ```ts import.meta.vitest
854
851
  * import { Effect, PubSub } from "effect"
855
852
  *
856
- * const program = Effect.gen(function*() {
853
+ * const program = Effect.scoped(Effect.gen(function*() {
857
854
  * const pubsub = yield* PubSub.bounded<string>(10)
858
855
  *
859
856
  * // Publish a message
860
857
  * const published = yield* PubSub.publish(pubsub, "Hello World")
861
- * console.log("Message published:", published) // true
862
858
  *
863
- * yield* Effect.scoped(Effect.gen(function*() {
864
- * const subscription = yield* PubSub.subscribe(pubsub)
859
+ * const subscription = yield* PubSub.subscribe(pubsub)
865
860
  *
866
- * yield* PubSub.publish(pubsub, "Hello")
867
- * const message = yield* PubSub.take(subscription)
868
- * console.log("Received:", message) // "Hello"
869
- * }))
870
- * })
861
+ * yield* PubSub.publish(pubsub, "Hello")
862
+ * const message = yield* PubSub.take(subscription)
863
+ * return { published, message }
864
+ * }))
865
+ *
866
+ * const actual = await Effect.runPromise(program)
867
+ * actual // => { published: true, message: "Hello" }
871
868
  * ```
872
869
  *
873
870
  * @see {@link publishUnsafe} for a synchronous non-blocking attempt that does not run effectful surplus handling
@@ -894,24 +891,16 @@ export declare const publish: {
894
891
  *
895
892
  * **Example** (Publishing without suspending)
896
893
  *
897
- * ```ts
898
- * import { PubSub } from "effect"
899
- *
900
- * declare const pubsub: PubSub.PubSub<string>
894
+ * ```ts import.meta.vitest
895
+ * import { Effect, PubSub } from "effect"
901
896
  *
902
- * // Unsafe synchronous publish (non-blocking)
903
- * const published = PubSub.publishUnsafe(pubsub, "Hello")
904
- * if (published) {
905
- * console.log("Message published successfully")
906
- * } else {
907
- * console.log("Message dropped (PubSub full or shutdown)")
908
- * }
897
+ * const program = Effect.gen(function*() {
898
+ * const pubsub = yield* PubSub.bounded<string>(2)
899
+ * return PubSub.publishUnsafe(pubsub, "Hello")
900
+ * })
909
901
  *
910
- * // Useful for scenarios where you don't want to suspend
911
- * const messages = ["msg1", "msg2", "msg3"]
912
- * const publishedCount =
913
- * messages.filter((msg) => PubSub.publishUnsafe(pubsub, msg)).length
914
- * console.log(`Published ${publishedCount} out of ${messages.length} messages`)
902
+ * const actual = await Effect.runPromise(program)
903
+ * actual // => true
915
904
  * ```
916
905
  *
917
906
  * @see {@link publish} for effectful publishing that honors the configured surplus strategy
@@ -937,24 +926,16 @@ export declare const publishUnsafe: {
937
926
  *
938
927
  * **Example** (Publishing without suspending)
939
928
  *
940
- * ```ts
941
- * import { PubSub } from "effect"
942
- *
943
- * declare const pubsub: PubSub.PubSub<string>
929
+ * ```ts import.meta.vitest
930
+ * import { Effect, PubSub } from "effect"
944
931
  *
945
- * // Unsafe synchronous publish (non-blocking)
946
- * const published = PubSub.publishUnsafe(pubsub, "Hello")
947
- * if (published) {
948
- * console.log("Message published successfully")
949
- * } else {
950
- * console.log("Message dropped (PubSub full or shutdown)")
951
- * }
932
+ * const program = Effect.gen(function*() {
933
+ * const pubsub = yield* PubSub.bounded<string>(2)
934
+ * return PubSub.publishUnsafe(pubsub, "Hello")
935
+ * })
952
936
  *
953
- * // Useful for scenarios where you don't want to suspend
954
- * const messages = ["msg1", "msg2", "msg3"]
955
- * const publishedCount =
956
- * messages.filter((msg) => PubSub.publishUnsafe(pubsub, msg)).length
957
- * console.log(`Published ${publishedCount} out of ${messages.length} messages`)
937
+ * const actual = await Effect.runPromise(program)
938
+ * actual // => true
958
939
  * ```
959
940
  *
960
941
  * @see {@link publish} for effectful publishing that honors the configured surplus strategy
@@ -980,24 +961,16 @@ export declare const publishUnsafe: {
980
961
  *
981
962
  * **Example** (Publishing without suspending)
982
963
  *
983
- * ```ts
984
- * import { PubSub } from "effect"
985
- *
986
- * declare const pubsub: PubSub.PubSub<string>
964
+ * ```ts import.meta.vitest
965
+ * import { Effect, PubSub } from "effect"
987
966
  *
988
- * // Unsafe synchronous publish (non-blocking)
989
- * const published = PubSub.publishUnsafe(pubsub, "Hello")
990
- * if (published) {
991
- * console.log("Message published successfully")
992
- * } else {
993
- * console.log("Message dropped (PubSub full or shutdown)")
994
- * }
967
+ * const program = Effect.gen(function*() {
968
+ * const pubsub = yield* PubSub.bounded<string>(2)
969
+ * return PubSub.publishUnsafe(pubsub, "Hello")
970
+ * })
995
971
  *
996
- * // Useful for scenarios where you don't want to suspend
997
- * const messages = ["msg1", "msg2", "msg3"]
998
- * const publishedCount =
999
- * messages.filter((msg) => PubSub.publishUnsafe(pubsub, msg)).length
1000
- * console.log(`Published ${publishedCount} out of ${messages.length} messages`)
972
+ * const actual = await Effect.runPromise(program)
973
+ * actual // => true
1001
974
  * ```
1002
975
  *
1003
976
  * @see {@link publish} for effectful publishing that honors the configured surplus strategy
@@ -1013,37 +986,30 @@ export declare const publishUnsafe: {
1013
986
  *
1014
987
  * **Example** (Publishing multiple messages)
1015
988
  *
1016
- * ```ts
989
+ * ```ts import.meta.vitest
1017
990
  * import { Effect, Fiber, PubSub } from "effect"
1018
991
  *
1019
- * const program = Effect.gen(function*() {
992
+ * const program = Effect.scoped(Effect.gen(function*() {
1020
993
  * const pubsub = yield* PubSub.bounded<string>(10)
1021
994
  *
1022
995
  * // Publish multiple messages at once
1023
- * const messages = ["Hello", "World", "from", "Effect"]
1024
- * const allPublished = yield* PubSub.publishAll(pubsub, messages)
1025
- * console.log("All messages published:", allPublished) // true
996
+ * const allPublished = yield* PubSub.publishAll(pubsub, ["Hello", "World", "from", "Effect"])
1026
997
  *
1027
998
  * // With a smaller capacity and an active subscription
1028
999
  * const smallPubsub = yield* PubSub.bounded<string>(2)
1029
- * const manyMessages = ["msg1", "msg2", "msg3", "msg4"]
1030
- *
1031
- * yield* Effect.scoped(Effect.gen(function*() {
1032
- * const subscription = yield* PubSub.subscribe(smallPubsub)
1033
- *
1034
- * // Will suspend until space becomes available for all messages
1035
- * const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, manyMessages))
1000
+ * const subscription = yield* PubSub.subscribe(smallPubsub)
1036
1001
  *
1037
- * const firstBatch = yield* PubSub.takeBetween(subscription, 2, 2)
1038
- * console.log("First batch:", firstBatch) // ["msg1", "msg2"]
1002
+ * // Will suspend until space becomes available for all messages
1003
+ * const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, ["msg1", "msg2", "msg3", "msg4"]))
1039
1004
  *
1040
- * const result = yield* Fiber.join(fiber)
1041
- * console.log("All messages eventually published:", result) // true
1005
+ * const firstBatch = yield* PubSub.takeBetween(subscription, 2, 2)
1006
+ * const result = yield* Fiber.join(fiber)
1007
+ * const secondBatch = yield* PubSub.takeAll(subscription)
1008
+ * return { allPublished, firstBatch, result, secondBatch }
1009
+ * }))
1042
1010
  *
1043
- * const secondBatch = yield* PubSub.takeAll(subscription)
1044
- * console.log("Second batch:", secondBatch) // ["msg3", "msg4"]
1045
- * }))
1046
- * })
1011
+ * const actual = await Effect.runPromise(program)
1012
+ * actual // => { allPublished: true, firstBatch: ["msg1", "msg2"], result: true, secondBatch: ["msg3", "msg4"] }
1047
1013
  * ```
1048
1014
  *
1049
1015
  * @category publishing
@@ -1056,37 +1022,30 @@ export declare const publishAll: {
1056
1022
  *
1057
1023
  * **Example** (Publishing multiple messages)
1058
1024
  *
1059
- * ```ts
1025
+ * ```ts import.meta.vitest
1060
1026
  * import { Effect, Fiber, PubSub } from "effect"
1061
1027
  *
1062
- * const program = Effect.gen(function*() {
1028
+ * const program = Effect.scoped(Effect.gen(function*() {
1063
1029
  * const pubsub = yield* PubSub.bounded<string>(10)
1064
1030
  *
1065
1031
  * // Publish multiple messages at once
1066
- * const messages = ["Hello", "World", "from", "Effect"]
1067
- * const allPublished = yield* PubSub.publishAll(pubsub, messages)
1068
- * console.log("All messages published:", allPublished) // true
1032
+ * const allPublished = yield* PubSub.publishAll(pubsub, ["Hello", "World", "from", "Effect"])
1069
1033
  *
1070
1034
  * // With a smaller capacity and an active subscription
1071
1035
  * const smallPubsub = yield* PubSub.bounded<string>(2)
1072
- * const manyMessages = ["msg1", "msg2", "msg3", "msg4"]
1073
- *
1074
- * yield* Effect.scoped(Effect.gen(function*() {
1075
- * const subscription = yield* PubSub.subscribe(smallPubsub)
1076
- *
1077
- * // Will suspend until space becomes available for all messages
1078
- * const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, manyMessages))
1036
+ * const subscription = yield* PubSub.subscribe(smallPubsub)
1079
1037
  *
1080
- * const firstBatch = yield* PubSub.takeBetween(subscription, 2, 2)
1081
- * console.log("First batch:", firstBatch) // ["msg1", "msg2"]
1038
+ * // Will suspend until space becomes available for all messages
1039
+ * const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, ["msg1", "msg2", "msg3", "msg4"]))
1082
1040
  *
1083
- * const result = yield* Fiber.join(fiber)
1084
- * console.log("All messages eventually published:", result) // true
1041
+ * const firstBatch = yield* PubSub.takeBetween(subscription, 2, 2)
1042
+ * const result = yield* Fiber.join(fiber)
1043
+ * const secondBatch = yield* PubSub.takeAll(subscription)
1044
+ * return { allPublished, firstBatch, result, secondBatch }
1045
+ * }))
1085
1046
  *
1086
- * const secondBatch = yield* PubSub.takeAll(subscription)
1087
- * console.log("Second batch:", secondBatch) // ["msg3", "msg4"]
1088
- * }))
1089
- * })
1047
+ * const actual = await Effect.runPromise(program)
1048
+ * actual // => { allPublished: true, firstBatch: ["msg1", "msg2"], result: true, secondBatch: ["msg3", "msg4"] }
1090
1049
  * ```
1091
1050
  *
1092
1051
  * @category publishing
@@ -1099,37 +1058,30 @@ export declare const publishAll: {
1099
1058
  *
1100
1059
  * **Example** (Publishing multiple messages)
1101
1060
  *
1102
- * ```ts
1061
+ * ```ts import.meta.vitest
1103
1062
  * import { Effect, Fiber, PubSub } from "effect"
1104
1063
  *
1105
- * const program = Effect.gen(function*() {
1064
+ * const program = Effect.scoped(Effect.gen(function*() {
1106
1065
  * const pubsub = yield* PubSub.bounded<string>(10)
1107
1066
  *
1108
1067
  * // Publish multiple messages at once
1109
- * const messages = ["Hello", "World", "from", "Effect"]
1110
- * const allPublished = yield* PubSub.publishAll(pubsub, messages)
1111
- * console.log("All messages published:", allPublished) // true
1068
+ * const allPublished = yield* PubSub.publishAll(pubsub, ["Hello", "World", "from", "Effect"])
1112
1069
  *
1113
1070
  * // With a smaller capacity and an active subscription
1114
1071
  * const smallPubsub = yield* PubSub.bounded<string>(2)
1115
- * const manyMessages = ["msg1", "msg2", "msg3", "msg4"]
1072
+ * const subscription = yield* PubSub.subscribe(smallPubsub)
1116
1073
  *
1117
- * yield* Effect.scoped(Effect.gen(function*() {
1118
- * const subscription = yield* PubSub.subscribe(smallPubsub)
1074
+ * // Will suspend until space becomes available for all messages
1075
+ * const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, ["msg1", "msg2", "msg3", "msg4"]))
1119
1076
  *
1120
- * // Will suspend until space becomes available for all messages
1121
- * const fiber = yield* Effect.forkChild(PubSub.publishAll(smallPubsub, manyMessages))
1077
+ * const firstBatch = yield* PubSub.takeBetween(subscription, 2, 2)
1078
+ * const result = yield* Fiber.join(fiber)
1079
+ * const secondBatch = yield* PubSub.takeAll(subscription)
1080
+ * return { allPublished, firstBatch, result, secondBatch }
1081
+ * }))
1122
1082
  *
1123
- * const firstBatch = yield* PubSub.takeBetween(subscription, 2, 2)
1124
- * console.log("First batch:", firstBatch) // ["msg1", "msg2"]
1125
- *
1126
- * const result = yield* Fiber.join(fiber)
1127
- * console.log("All messages eventually published:", result) // true
1128
- *
1129
- * const secondBatch = yield* PubSub.takeAll(subscription)
1130
- * console.log("Second batch:", secondBatch) // ["msg3", "msg4"]
1131
- * }))
1132
- * })
1083
+ * const actual = await Effect.runPromise(program)
1084
+ * actual // => { allPublished: true, firstBatch: ["msg1", "msg2"], result: true, secondBatch: ["msg3", "msg4"] }
1133
1085
  * ```
1134
1086
  *
1135
1087
  * @category publishing
@@ -1144,14 +1096,14 @@ export declare const publishAll: {
1144
1096
  *
1145
1097
  * **Example** (Subscribing to messages)
1146
1098
  *
1147
- * ```ts
1099
+ * ```ts import.meta.vitest
1148
1100
  * import { Effect, PubSub } from "effect"
1149
1101
  *
1150
1102
  * const program = Effect.gen(function*() {
1151
1103
  * const pubsub = yield* PubSub.bounded<string>(10)
1152
1104
  *
1153
1105
  * // Subscribe within a scope for automatic cleanup
1154
- * yield* Effect.scoped(Effect.gen(function*() {
1106
+ * const first = yield* Effect.scoped(Effect.gen(function*() {
1155
1107
  * const subscription = yield* PubSub.subscribe(pubsub)
1156
1108
  *
1157
1109
  * // Publish some messages
@@ -1161,25 +1113,28 @@ export declare const publishAll: {
1161
1113
  * // Take messages one by one
1162
1114
  * const msg1 = yield* PubSub.take(subscription)
1163
1115
  * const msg2 = yield* PubSub.take(subscription)
1164
- * console.log(msg1, msg2) // "Hello", "World"
1165
1116
  *
1166
1117
  * // Subscription is automatically cleaned up when scope exits
1118
+ * return [msg1, msg2]
1167
1119
  * }))
1168
1120
  *
1169
- * yield* Effect.scoped(Effect.gen(function*() {
1121
+ * const second = yield* Effect.scoped(Effect.gen(function*() {
1170
1122
  * const sub1 = yield* PubSub.subscribe(pubsub)
1171
1123
  * const sub2 = yield* PubSub.subscribe(pubsub)
1172
1124
  *
1173
1125
  * // Multiple subscribers can receive the same messages
1174
1126
  * yield* PubSub.publish(pubsub, "Broadcast")
1175
1127
  *
1176
- * const [msg1, msg2] = yield* Effect.all([
1128
+ * return yield* Effect.all([
1177
1129
  * PubSub.take(sub1),
1178
1130
  * PubSub.take(sub2)
1179
1131
  * ])
1180
- * console.log("Both received:", msg1, msg2) // "Broadcast", "Broadcast"
1181
1132
  * }))
1133
+ * return [first, second]
1182
1134
  * })
1135
+ *
1136
+ * const actual = await Effect.runPromise(program)
1137
+ * actual // => [["Hello", "World"], ["Broadcast", "Broadcast"]]
1183
1138
  * ```
1184
1139
  *
1185
1140
  * @category subscriptions
@@ -1192,28 +1147,26 @@ export declare const subscribe: <A>(self: PubSub<A>) => Effect.Effect<Subscripti
1192
1147
  *
1193
1148
  * **Example** (Taking a message)
1194
1149
  *
1195
- * ```ts
1150
+ * ```ts import.meta.vitest
1196
1151
  * import { Effect, Fiber, PubSub } from "effect"
1197
1152
  *
1198
- * const program = Effect.gen(function*() {
1153
+ * const program = Effect.scoped(Effect.gen(function*() {
1199
1154
  * const pubsub = yield* PubSub.bounded<string>(10)
1200
1155
  *
1201
- * yield* Effect.scoped(Effect.gen(function*() {
1202
- * const subscription = yield* PubSub.subscribe(pubsub)
1156
+ * const subscription = yield* PubSub.subscribe(pubsub)
1203
1157
  *
1204
- * // Start a fiber to take a message (will suspend)
1205
- * const takeFiber = yield* Effect.forkChild(
1206
- * PubSub.take(subscription)
1207
- * )
1158
+ * // Start a fiber to take a message (will suspend)
1159
+ * const takeFiber = yield* Effect.forkChild(PubSub.take(subscription))
1208
1160
  *
1209
- * // Publish a message
1210
- * yield* PubSub.publish(pubsub, "Hello")
1161
+ * // Publish a message
1162
+ * yield* PubSub.publish(pubsub, "Hello")
1211
1163
  *
1212
- * // The take will now complete
1213
- * const message = yield* Fiber.join(takeFiber)
1214
- * console.log("Received:", message) // "Hello"
1215
- * }))
1216
- * })
1164
+ * // The take will now complete
1165
+ * return yield* Fiber.join(takeFiber)
1166
+ * }))
1167
+ *
1168
+ * const actual = await Effect.runPromise(program)
1169
+ * actual // => "Hello"
1217
1170
  * ```
1218
1171
  *
1219
1172
  * @category subscriptions
@@ -1226,23 +1179,23 @@ export declare const take: <A>(self: Subscription<A>) => Effect.Effect<A>;
1226
1179
  *
1227
1180
  * **Example** (Taking all available messages)
1228
1181
  *
1229
- * ```ts
1182
+ * ```ts import.meta.vitest
1230
1183
  * import { Effect, PubSub } from "effect"
1231
1184
  *
1232
- * const program = Effect.gen(function*() {
1185
+ * const program = Effect.scoped(Effect.gen(function*() {
1233
1186
  * const pubsub = yield* PubSub.bounded<string>(10)
1234
1187
  *
1235
- * yield* Effect.scoped(Effect.gen(function*() {
1236
- * const subscription = yield* PubSub.subscribe(pubsub)
1188
+ * const subscription = yield* PubSub.subscribe(pubsub)
1237
1189
  *
1238
- * // Publish multiple messages
1239
- * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
1190
+ * // Publish multiple messages
1191
+ * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
1240
1192
  *
1241
- * // Take all available messages at once
1242
- * const allMessages = yield* PubSub.takeAll(subscription)
1243
- * console.log("All messages:", allMessages) // ["msg1", "msg2", "msg3"]
1244
- * }))
1245
- * })
1193
+ * // Take all available messages at once
1194
+ * return yield* PubSub.takeAll(subscription)
1195
+ * }))
1196
+ *
1197
+ * const actual = await Effect.runPromise(program)
1198
+ * actual // => ["msg1", "msg2", "msg3"]
1246
1199
  * ```
1247
1200
  *
1248
1201
  * @category subscriptions
@@ -1254,31 +1207,30 @@ export declare const takeAll: <A>(self: Subscription<A>) => Effect.Effect<Arr.No
1254
1207
  *
1255
1208
  * **Example** (Taking up to a maximum number of messages)
1256
1209
  *
1257
- * ```ts
1210
+ * ```ts import.meta.vitest
1258
1211
  * import { Effect, PubSub } from "effect"
1259
1212
  *
1260
- * const program = Effect.gen(function*() {
1213
+ * const program = Effect.scoped(Effect.gen(function*() {
1261
1214
  * const pubsub = yield* PubSub.bounded<string>(10)
1262
1215
  *
1263
- * yield* Effect.scoped(Effect.gen(function*() {
1264
- * const subscription = yield* PubSub.subscribe(pubsub)
1216
+ * const subscription = yield* PubSub.subscribe(pubsub)
1265
1217
  *
1266
- * // Publish multiple messages
1267
- * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3", "msg4", "msg5"])
1218
+ * // Publish multiple messages
1219
+ * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3", "msg4", "msg5"])
1268
1220
  *
1269
- * // Take up to 3 messages
1270
- * const upTo3 = yield* PubSub.takeUpTo(subscription, 3)
1271
- * console.log("Up to 3:", upTo3) // ["msg1", "msg2", "msg3"]
1221
+ * // Take up to 3 messages
1222
+ * const upTo3 = yield* PubSub.takeUpTo(subscription, 3)
1272
1223
  *
1273
- * // Take up to 5 more (only 2 remaining)
1274
- * const upTo5 = yield* PubSub.takeUpTo(subscription, 5)
1275
- * console.log("Up to 5:", upTo5) // ["msg4", "msg5"]
1224
+ * // Take up to 5 more (only 2 remaining)
1225
+ * const upTo5 = yield* PubSub.takeUpTo(subscription, 5)
1276
1226
  *
1277
- * // No more messages available
1278
- * const noMore = yield* PubSub.takeUpTo(subscription, 10)
1279
- * console.log("No more:", noMore) // []
1280
- * }))
1281
- * })
1227
+ * // No more messages available
1228
+ * const noMore = yield* PubSub.takeUpTo(subscription, 10)
1229
+ * return [upTo3, upTo5, noMore]
1230
+ * }))
1231
+ *
1232
+ * const actual = await Effect.runPromise(program)
1233
+ * actual // => [["msg1", "msg2", "msg3"], ["msg4", "msg5"], []]
1282
1234
  * ```
1283
1235
  *
1284
1236
  * @category subscriptions
@@ -1290,31 +1242,30 @@ export declare const takeUpTo: {
1290
1242
  *
1291
1243
  * **Example** (Taking up to a maximum number of messages)
1292
1244
  *
1293
- * ```ts
1245
+ * ```ts import.meta.vitest
1294
1246
  * import { Effect, PubSub } from "effect"
1295
1247
  *
1296
- * const program = Effect.gen(function*() {
1248
+ * const program = Effect.scoped(Effect.gen(function*() {
1297
1249
  * const pubsub = yield* PubSub.bounded<string>(10)
1298
1250
  *
1299
- * yield* Effect.scoped(Effect.gen(function*() {
1300
- * const subscription = yield* PubSub.subscribe(pubsub)
1251
+ * const subscription = yield* PubSub.subscribe(pubsub)
1301
1252
  *
1302
- * // Publish multiple messages
1303
- * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3", "msg4", "msg5"])
1253
+ * // Publish multiple messages
1254
+ * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3", "msg4", "msg5"])
1304
1255
  *
1305
- * // Take up to 3 messages
1306
- * const upTo3 = yield* PubSub.takeUpTo(subscription, 3)
1307
- * console.log("Up to 3:", upTo3) // ["msg1", "msg2", "msg3"]
1256
+ * // Take up to 3 messages
1257
+ * const upTo3 = yield* PubSub.takeUpTo(subscription, 3)
1308
1258
  *
1309
- * // Take up to 5 more (only 2 remaining)
1310
- * const upTo5 = yield* PubSub.takeUpTo(subscription, 5)
1311
- * console.log("Up to 5:", upTo5) // ["msg4", "msg5"]
1259
+ * // Take up to 5 more (only 2 remaining)
1260
+ * const upTo5 = yield* PubSub.takeUpTo(subscription, 5)
1312
1261
  *
1313
- * // No more messages available
1314
- * const noMore = yield* PubSub.takeUpTo(subscription, 10)
1315
- * console.log("No more:", noMore) // []
1316
- * }))
1317
- * })
1262
+ * // No more messages available
1263
+ * const noMore = yield* PubSub.takeUpTo(subscription, 10)
1264
+ * return [upTo3, upTo5, noMore]
1265
+ * }))
1266
+ *
1267
+ * const actual = await Effect.runPromise(program)
1268
+ * actual // => [["msg1", "msg2", "msg3"], ["msg4", "msg5"], []]
1318
1269
  * ```
1319
1270
  *
1320
1271
  * @category subscriptions
@@ -1326,31 +1277,30 @@ export declare const takeUpTo: {
1326
1277
  *
1327
1278
  * **Example** (Taking up to a maximum number of messages)
1328
1279
  *
1329
- * ```ts
1280
+ * ```ts import.meta.vitest
1330
1281
  * import { Effect, PubSub } from "effect"
1331
1282
  *
1332
- * const program = Effect.gen(function*() {
1283
+ * const program = Effect.scoped(Effect.gen(function*() {
1333
1284
  * const pubsub = yield* PubSub.bounded<string>(10)
1334
1285
  *
1335
- * yield* Effect.scoped(Effect.gen(function*() {
1336
- * const subscription = yield* PubSub.subscribe(pubsub)
1286
+ * const subscription = yield* PubSub.subscribe(pubsub)
1337
1287
  *
1338
- * // Publish multiple messages
1339
- * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3", "msg4", "msg5"])
1288
+ * // Publish multiple messages
1289
+ * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3", "msg4", "msg5"])
1340
1290
  *
1341
- * // Take up to 3 messages
1342
- * const upTo3 = yield* PubSub.takeUpTo(subscription, 3)
1343
- * console.log("Up to 3:", upTo3) // ["msg1", "msg2", "msg3"]
1291
+ * // Take up to 3 messages
1292
+ * const upTo3 = yield* PubSub.takeUpTo(subscription, 3)
1344
1293
  *
1345
- * // Take up to 5 more (only 2 remaining)
1346
- * const upTo5 = yield* PubSub.takeUpTo(subscription, 5)
1347
- * console.log("Up to 5:", upTo5) // ["msg4", "msg5"]
1294
+ * // Take up to 5 more (only 2 remaining)
1295
+ * const upTo5 = yield* PubSub.takeUpTo(subscription, 5)
1348
1296
  *
1349
- * // No more messages available
1350
- * const noMore = yield* PubSub.takeUpTo(subscription, 10)
1351
- * console.log("No more:", noMore) // []
1352
- * }))
1353
- * })
1297
+ * // No more messages available
1298
+ * const noMore = yield* PubSub.takeUpTo(subscription, 10)
1299
+ * return [upTo3, upTo5, noMore]
1300
+ * }))
1301
+ *
1302
+ * const actual = await Effect.runPromise(program)
1303
+ * actual // => [["msg1", "msg2", "msg3"], ["msg4", "msg5"], []]
1354
1304
  * ```
1355
1305
  *
1356
1306
  * @category subscriptions
@@ -1364,28 +1314,26 @@ export declare const takeUpTo: {
1364
1314
  *
1365
1315
  * **Example** (Taking between a minimum and maximum)
1366
1316
  *
1367
- * ```ts
1317
+ * ```ts import.meta.vitest
1368
1318
  * import { Effect, Fiber, PubSub } from "effect"
1369
1319
  *
1370
- * const program = Effect.gen(function*() {
1320
+ * const program = Effect.scoped(Effect.gen(function*() {
1371
1321
  * const pubsub = yield* PubSub.bounded<string>(10)
1372
1322
  *
1373
- * yield* Effect.scoped(Effect.gen(function*() {
1374
- * const subscription = yield* PubSub.subscribe(pubsub)
1323
+ * const subscription = yield* PubSub.subscribe(pubsub)
1375
1324
  *
1376
- * // Start taking between 2 and 5 messages (will suspend)
1377
- * const takeFiber = yield* Effect.forkChild(
1378
- * PubSub.takeBetween(subscription, 2, 5)
1379
- * )
1325
+ * // Start taking between 2 and 5 messages (will suspend)
1326
+ * const takeFiber = yield* Effect.forkChild(PubSub.takeBetween(subscription, 2, 5))
1380
1327
  *
1381
- * // Publish 3 messages
1382
- * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
1328
+ * // Publish 3 messages
1329
+ * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
1383
1330
  *
1384
- * // Now the take will complete with 3 messages
1385
- * const messages = yield* Fiber.join(takeFiber)
1386
- * console.log("Between 2-5:", messages) // ["msg1", "msg2", "msg3"]
1387
- * }))
1388
- * })
1331
+ * // Now the take will complete with 3 messages
1332
+ * return yield* Fiber.join(takeFiber)
1333
+ * }))
1334
+ *
1335
+ * const actual = await Effect.runPromise(program)
1336
+ * actual // => ["msg1", "msg2", "msg3"]
1389
1337
  * ```
1390
1338
  *
1391
1339
  * @category subscriptions
@@ -1398,28 +1346,26 @@ export declare const takeBetween: {
1398
1346
  *
1399
1347
  * **Example** (Taking between a minimum and maximum)
1400
1348
  *
1401
- * ```ts
1349
+ * ```ts import.meta.vitest
1402
1350
  * import { Effect, Fiber, PubSub } from "effect"
1403
1351
  *
1404
- * const program = Effect.gen(function*() {
1352
+ * const program = Effect.scoped(Effect.gen(function*() {
1405
1353
  * const pubsub = yield* PubSub.bounded<string>(10)
1406
1354
  *
1407
- * yield* Effect.scoped(Effect.gen(function*() {
1408
- * const subscription = yield* PubSub.subscribe(pubsub)
1355
+ * const subscription = yield* PubSub.subscribe(pubsub)
1409
1356
  *
1410
- * // Start taking between 2 and 5 messages (will suspend)
1411
- * const takeFiber = yield* Effect.forkChild(
1412
- * PubSub.takeBetween(subscription, 2, 5)
1413
- * )
1357
+ * // Start taking between 2 and 5 messages (will suspend)
1358
+ * const takeFiber = yield* Effect.forkChild(PubSub.takeBetween(subscription, 2, 5))
1414
1359
  *
1415
- * // Publish 3 messages
1416
- * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
1360
+ * // Publish 3 messages
1361
+ * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
1417
1362
  *
1418
- * // Now the take will complete with 3 messages
1419
- * const messages = yield* Fiber.join(takeFiber)
1420
- * console.log("Between 2-5:", messages) // ["msg1", "msg2", "msg3"]
1421
- * }))
1422
- * })
1363
+ * // Now the take will complete with 3 messages
1364
+ * return yield* Fiber.join(takeFiber)
1365
+ * }))
1366
+ *
1367
+ * const actual = await Effect.runPromise(program)
1368
+ * actual // => ["msg1", "msg2", "msg3"]
1423
1369
  * ```
1424
1370
  *
1425
1371
  * @category subscriptions
@@ -1432,28 +1378,26 @@ export declare const takeBetween: {
1432
1378
  *
1433
1379
  * **Example** (Taking between a minimum and maximum)
1434
1380
  *
1435
- * ```ts
1381
+ * ```ts import.meta.vitest
1436
1382
  * import { Effect, Fiber, PubSub } from "effect"
1437
1383
  *
1438
- * const program = Effect.gen(function*() {
1384
+ * const program = Effect.scoped(Effect.gen(function*() {
1439
1385
  * const pubsub = yield* PubSub.bounded<string>(10)
1440
1386
  *
1441
- * yield* Effect.scoped(Effect.gen(function*() {
1442
- * const subscription = yield* PubSub.subscribe(pubsub)
1387
+ * const subscription = yield* PubSub.subscribe(pubsub)
1443
1388
  *
1444
- * // Start taking between 2 and 5 messages (will suspend)
1445
- * const takeFiber = yield* Effect.forkChild(
1446
- * PubSub.takeBetween(subscription, 2, 5)
1447
- * )
1389
+ * // Start taking between 2 and 5 messages (will suspend)
1390
+ * const takeFiber = yield* Effect.forkChild(PubSub.takeBetween(subscription, 2, 5))
1448
1391
  *
1449
- * // Publish 3 messages
1450
- * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
1392
+ * // Publish 3 messages
1393
+ * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
1451
1394
  *
1452
- * // Now the take will complete with 3 messages
1453
- * const messages = yield* Fiber.join(takeFiber)
1454
- * console.log("Between 2-5:", messages) // ["msg1", "msg2", "msg3"]
1455
- * }))
1456
- * })
1395
+ * // Now the take will complete with 3 messages
1396
+ * return yield* Fiber.join(takeFiber)
1397
+ * }))
1398
+ *
1399
+ * const actual = await Effect.runPromise(program)
1400
+ * actual // => ["msg1", "msg2", "msg3"]
1457
1401
  * ```
1458
1402
  *
1459
1403
  * @category subscriptions
@@ -1477,29 +1421,29 @@ export declare const takeBetween: {
1477
1421
  *
1478
1422
  * **Example** (Checking remaining messages)
1479
1423
  *
1480
- * ```ts
1424
+ * ```ts import.meta.vitest
1481
1425
  * import { Effect, PubSub } from "effect"
1482
1426
  *
1483
- * const program = Effect.gen(function*() {
1427
+ * const program = Effect.scoped(Effect.gen(function*() {
1484
1428
  * const pubsub = yield* PubSub.bounded<string>(10)
1485
1429
  *
1486
- * yield* Effect.scoped(Effect.gen(function*() {
1487
- * const subscription = yield* PubSub.subscribe(pubsub)
1430
+ * const subscription = yield* PubSub.subscribe(pubsub)
1488
1431
  *
1489
- * // Publish some messages
1490
- * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
1432
+ * // Publish some messages
1433
+ * yield* PubSub.publishAll(pubsub, ["msg1", "msg2", "msg3"])
1491
1434
  *
1492
- * // Check how many messages are available
1493
- * const count = yield* PubSub.remaining(subscription)
1494
- * console.log("Messages available:", count) // 3
1435
+ * // Check how many messages are available
1436
+ * const count = yield* PubSub.remaining(subscription)
1495
1437
  *
1496
- * // Take one message
1497
- * yield* PubSub.take(subscription)
1438
+ * // Take one message
1439
+ * const message = yield* PubSub.take(subscription)
1498
1440
  *
1499
- * const remaining = yield* PubSub.remaining(subscription)
1500
- * console.log("Messages remaining:", remaining) // 2
1501
- * }))
1502
- * })
1441
+ * const remaining = yield* PubSub.remaining(subscription)
1442
+ * return { count, message, remaining }
1443
+ * }))
1444
+ *
1445
+ * const actual = await Effect.runPromise(program)
1446
+ * actual // => { count: 3, message: "msg1", remaining: 2 }
1503
1447
  * ```
1504
1448
  *
1505
1449
  * @see {@link remainingUnsafe} for a synchronous check that reports shutdown as `Option.none()`
@@ -1519,23 +1463,17 @@ export declare const remaining: <A>(self: Subscription<A>) => Effect.Effect<numb
1519
1463
  *
1520
1464
  * **Example** (Checking remaining messages synchronously)
1521
1465
  *
1522
- * ```ts
1523
- * import { PubSub } from "effect"
1466
+ * ```ts import.meta.vitest
1467
+ * import { Effect, Option, PubSub } from "effect"
1524
1468
  *
1525
- * declare const subscription: PubSub.Subscription<string>
1526
- *
1527
- * // Unsafe synchronous check for remaining messages
1528
- * const remainingOption = PubSub.remainingUnsafe(subscription)
1529
- * if (remainingOption._tag === "Some") {
1530
- * console.log("Messages available:", remainingOption.value)
1531
- * } else {
1532
- * console.log("Subscription is shutdown")
1533
- * }
1469
+ * const program = Effect.scoped(Effect.gen(function*() {
1470
+ * const pubsub = yield* PubSub.bounded<string>(2)
1471
+ * const subscription = yield* PubSub.subscribe(pubsub)
1472
+ * return PubSub.remainingUnsafe(subscription)
1473
+ * }))
1534
1474
  *
1535
- * // Useful for polling or batching scenarios
1536
- * if (remainingOption._tag === "Some" && remainingOption.value > 10) {
1537
- * // Process messages in batch
1538
- * }
1475
+ * const actual = await Effect.runPromise(program)
1476
+ * actual // => Option.some(0)
1539
1477
  * ```
1540
1478
  *
1541
1479
  * @see {@link remaining} for the effectful variant that interrupts on shutdown
@@ -1598,34 +1536,30 @@ export declare class BackPressureStrategy<in out A> implements PubSub.Strategy<A
1598
1536
  *
1599
1537
  * **Example** (Applying a dropping strategy)
1600
1538
  *
1601
- * ```ts
1539
+ * ```ts import.meta.vitest
1602
1540
  * import { Effect, PubSub } from "effect"
1603
1541
  *
1604
- * const program = Effect.gen(function*() {
1605
- * // Create PubSub with dropping strategy
1606
- * const pubsub = yield* PubSub.dropping<string>(2)
1607
- *
1608
- * // Or explicitly create with dropping strategy
1609
- * const customPubsub = yield* PubSub.make<string>({
1542
+ * const program = Effect.scoped(Effect.gen(function*() {
1543
+ * // Explicitly create a PubSub with a dropping strategy
1544
+ * const pubsub = yield* PubSub.make<string>({
1610
1545
  * atomicPubSub: () => PubSub.makeAtomicBounded(2),
1611
1546
  * strategy: () => new PubSub.DroppingStrategy()
1612
1547
  * })
1613
1548
  *
1614
- * yield* Effect.scoped(Effect.gen(function*() {
1615
- * const subscription = yield* PubSub.subscribe(pubsub)
1549
+ * const subscription = yield* PubSub.subscribe(pubsub)
1616
1550
  *
1617
- * // Fill the PubSub
1618
- * const pub1 = yield* PubSub.publish(pubsub, "msg1") // true
1619
- * const pub2 = yield* PubSub.publish(pubsub, "msg2") // true
1620
- * const pub3 = yield* PubSub.publish(pubsub, "msg3") // false (dropped)
1551
+ * // Fill the PubSub
1552
+ * const pub1 = yield* PubSub.publish(pubsub, "msg1") // true
1553
+ * const pub2 = yield* PubSub.publish(pubsub, "msg2") // true
1554
+ * const pub3 = yield* PubSub.publish(pubsub, "msg3") // false (dropped)
1621
1555
  *
1622
- * console.log("Publication results:", [pub1, pub2, pub3]) // [true, true, false]
1556
+ * // Subscribers will only see the first two messages
1557
+ * const messages = yield* PubSub.takeAll(subscription)
1558
+ * return { published: [pub1, pub2, pub3], messages }
1559
+ * }))
1623
1560
  *
1624
- * // Subscribers will only see the first two messages
1625
- * const messages = yield* PubSub.takeAll(subscription)
1626
- * console.log("Received messages:", messages) // ["msg1", "msg2"]
1627
- * }))
1628
- * })
1561
+ * const actual = await Effect.runPromise(program)
1562
+ * actual // => { published: [true, true, false], messages: ["msg1", "msg2"] }
1629
1563
  * ```
1630
1564
  *
1631
1565
  * @category models
@@ -1657,33 +1591,30 @@ export declare class DroppingStrategy<in out A> implements PubSub.Strategy<A> {
1657
1591
  *
1658
1592
  * **Example** (Applying a sliding strategy)
1659
1593
  *
1660
- * ```ts
1594
+ * ```ts import.meta.vitest
1661
1595
  * import { Effect, PubSub } from "effect"
1662
1596
  *
1663
- * const program = Effect.gen(function*() {
1664
- * // Create PubSub with sliding strategy
1665
- * const pubsub = yield* PubSub.sliding<string>(2)
1666
- *
1667
- * // Or explicitly create with sliding strategy
1668
- * const customPubsub = yield* PubSub.make<string>({
1597
+ * const program = Effect.scoped(Effect.gen(function*() {
1598
+ * // Explicitly create a PubSub with a sliding strategy
1599
+ * const pubsub = yield* PubSub.make<string>({
1669
1600
  * atomicPubSub: () => PubSub.makeAtomicBounded(2),
1670
1601
  * strategy: () => new PubSub.SlidingStrategy()
1671
1602
  * })
1672
1603
  *
1673
- * yield* Effect.scoped(Effect.gen(function*() {
1674
- * const subscription = yield* PubSub.subscribe(pubsub)
1604
+ * const subscription = yield* PubSub.subscribe(pubsub)
1675
1605
  *
1676
- * // Publish messages that exceed capacity
1677
- * yield* PubSub.publish(pubsub, "msg1") // stored
1678
- * yield* PubSub.publish(pubsub, "msg2") // stored
1679
- * yield* PubSub.publish(pubsub, "msg3") // "msg1" evicted, "msg3" stored
1680
- * yield* PubSub.publish(pubsub, "msg4") // "msg2" evicted, "msg4" stored
1606
+ * // Publish messages that exceed capacity
1607
+ * yield* PubSub.publish(pubsub, "msg1") // stored
1608
+ * yield* PubSub.publish(pubsub, "msg2") // stored
1609
+ * yield* PubSub.publish(pubsub, "msg3") // "msg1" evicted, "msg3" stored
1610
+ * yield* PubSub.publish(pubsub, "msg4") // "msg2" evicted, "msg4" stored
1681
1611
  *
1682
- * // Subscribers will see the most recent messages
1683
- * const messages = yield* PubSub.takeAll(subscription)
1684
- * console.log("Recent messages:", messages) // ["msg3", "msg4"]
1685
- * }))
1686
- * })
1612
+ * // Subscribers will see the most recent messages
1613
+ * return yield* PubSub.takeAll(subscription)
1614
+ * }))
1615
+ *
1616
+ * const actual = await Effect.runPromise(program)
1617
+ * actual // => ["msg3", "msg4"]
1687
1618
  * ```
1688
1619
  *
1689
1620
  * @category models