effect 2.2.5 → 2.3.1

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 (693) hide show
  1. package/RateLimiter/package.json +6 -0
  2. package/dist/cjs/Cause.js +14 -1
  3. package/dist/cjs/Cause.js.map +1 -1
  4. package/dist/cjs/Channel.js.map +1 -1
  5. package/dist/cjs/Clock.js.map +1 -1
  6. package/dist/cjs/Console.js.map +1 -1
  7. package/dist/cjs/Context.js +23 -25
  8. package/dist/cjs/Context.js.map +1 -1
  9. package/dist/cjs/Data.js +3 -3
  10. package/dist/cjs/Data.js.map +1 -1
  11. package/dist/cjs/Deferred.js +1 -1
  12. package/dist/cjs/Deferred.js.map +1 -1
  13. package/dist/cjs/Effect.js +9 -9
  14. package/dist/cjs/Effect.js.map +1 -1
  15. package/dist/cjs/Effectable.js.map +1 -1
  16. package/dist/cjs/Either.js.map +1 -1
  17. package/dist/cjs/Exit.js +2 -2
  18. package/dist/cjs/Exit.js.map +1 -1
  19. package/dist/cjs/Fiber.js.map +1 -1
  20. package/dist/cjs/FiberMap.js +3 -3
  21. package/dist/cjs/FiberRef.js.map +1 -1
  22. package/dist/cjs/FiberRefs.js.map +1 -1
  23. package/dist/cjs/FiberSet.js +3 -3
  24. package/dist/cjs/FiberSet.js.map +1 -1
  25. package/dist/cjs/GroupBy.js.map +1 -1
  26. package/dist/cjs/Layer.js.map +1 -1
  27. package/dist/cjs/LogLevel.js.map +1 -1
  28. package/dist/cjs/Logger.js.map +1 -1
  29. package/dist/cjs/Metric.js.map +1 -1
  30. package/dist/cjs/Number.js +20 -1
  31. package/dist/cjs/Number.js.map +1 -1
  32. package/dist/cjs/Option.js.map +1 -1
  33. package/dist/cjs/Pool.js.map +1 -1
  34. package/dist/cjs/PubSub.js.map +1 -1
  35. package/dist/cjs/Queue.js.map +1 -1
  36. package/dist/cjs/Random.js.map +1 -1
  37. package/dist/cjs/RateLimiter.js +38 -0
  38. package/dist/cjs/RateLimiter.js.map +1 -0
  39. package/dist/cjs/ReadonlyRecord.js +45 -9
  40. package/dist/cjs/ReadonlyRecord.js.map +1 -1
  41. package/dist/cjs/Ref.js.map +1 -1
  42. package/dist/cjs/Request.js.map +1 -1
  43. package/dist/cjs/RequestResolver.js.map +1 -1
  44. package/dist/cjs/Resource.js.map +1 -1
  45. package/dist/cjs/Runtime.js +1 -4
  46. package/dist/cjs/Runtime.js.map +1 -1
  47. package/dist/cjs/RuntimeFlags.js.map +1 -1
  48. package/dist/cjs/STM.js.map +1 -1
  49. package/dist/cjs/Schedule.js.map +1 -1
  50. package/dist/cjs/Scope.js.map +1 -1
  51. package/dist/cjs/ScopedRef.js.map +1 -1
  52. package/dist/cjs/SingleProducerAsyncInput.js.map +1 -1
  53. package/dist/cjs/Sink.js.map +1 -1
  54. package/dist/cjs/Stream.js.map +1 -1
  55. package/dist/cjs/SubscriptionRef.js.map +1 -1
  56. package/dist/cjs/Supervisor.js.map +1 -1
  57. package/dist/cjs/SynchronizedRef.js.map +1 -1
  58. package/dist/cjs/TArray.js.map +1 -1
  59. package/dist/cjs/TDeferred.js.map +1 -1
  60. package/dist/cjs/TMap.js.map +1 -1
  61. package/dist/cjs/TPriorityQueue.js.map +1 -1
  62. package/dist/cjs/TPubSub.js.map +1 -1
  63. package/dist/cjs/TQueue.js.map +1 -1
  64. package/dist/cjs/TRandom.js.map +1 -1
  65. package/dist/cjs/TReentrantLock.js.map +1 -1
  66. package/dist/cjs/TRef.js.map +1 -1
  67. package/dist/cjs/TSemaphore.js.map +1 -1
  68. package/dist/cjs/TSet.js.map +1 -1
  69. package/dist/cjs/Take.js +6 -6
  70. package/dist/cjs/Take.js.map +1 -1
  71. package/dist/cjs/TestAnnotation.js +10 -13
  72. package/dist/cjs/TestAnnotation.js.map +1 -1
  73. package/dist/cjs/TestAnnotations.js +1 -1
  74. package/dist/cjs/TestAnnotations.js.map +1 -1
  75. package/dist/cjs/TestClock.js +1 -1
  76. package/dist/cjs/TestClock.js.map +1 -1
  77. package/dist/cjs/TestConfig.js +1 -1
  78. package/dist/cjs/TestConfig.js.map +1 -1
  79. package/dist/cjs/TestContext.js.map +1 -1
  80. package/dist/cjs/TestLive.js +1 -1
  81. package/dist/cjs/TestLive.js.map +1 -1
  82. package/dist/cjs/TestServices.js.map +1 -1
  83. package/dist/cjs/TestSized.js +1 -1
  84. package/dist/cjs/TestSized.js.map +1 -1
  85. package/dist/cjs/Utils.js +0 -1
  86. package/dist/cjs/Utils.js.map +1 -1
  87. package/dist/cjs/index.js +4 -2
  88. package/dist/cjs/index.js.map +1 -1
  89. package/dist/cjs/internal/cache.js.map +1 -1
  90. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
  91. package/dist/cjs/internal/channel/mergeDecision.js +2 -6
  92. package/dist/cjs/internal/channel/mergeDecision.js.map +1 -1
  93. package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
  94. package/dist/cjs/internal/channel.js +1 -1
  95. package/dist/cjs/internal/channel.js.map +1 -1
  96. package/dist/cjs/internal/clock.js +1 -1
  97. package/dist/cjs/internal/clock.js.map +1 -1
  98. package/dist/cjs/internal/configProvider.js +2 -4
  99. package/dist/cjs/internal/configProvider.js.map +1 -1
  100. package/dist/cjs/internal/console.js.map +1 -1
  101. package/dist/cjs/internal/context.js +31 -22
  102. package/dist/cjs/internal/context.js.map +1 -1
  103. package/dist/cjs/internal/core-effect.js +13 -27
  104. package/dist/cjs/internal/core-effect.js.map +1 -1
  105. package/dist/cjs/internal/core-stream.js.map +1 -1
  106. package/dist/cjs/internal/core.js +61 -130
  107. package/dist/cjs/internal/core.js.map +1 -1
  108. package/dist/cjs/internal/data.js.map +1 -1
  109. package/dist/cjs/internal/defaultServices/console.js +1 -1
  110. package/dist/cjs/internal/defaultServices/console.js.map +1 -1
  111. package/dist/cjs/internal/defaultServices.js.map +1 -1
  112. package/dist/cjs/internal/deferred.js.map +1 -1
  113. package/dist/cjs/internal/differ/contextPatch.js +9 -9
  114. package/dist/cjs/internal/differ/contextPatch.js.map +1 -1
  115. package/dist/cjs/internal/effect/circular.js +7 -10
  116. package/dist/cjs/internal/effect/circular.js.map +1 -1
  117. package/dist/cjs/internal/effectable.js +4 -4
  118. package/dist/cjs/internal/effectable.js.map +1 -1
  119. package/dist/cjs/internal/fiber.js +2 -6
  120. package/dist/cjs/internal/fiber.js.map +1 -1
  121. package/dist/cjs/internal/fiberRuntime.js +10 -19
  122. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  123. package/dist/cjs/internal/groupBy.js.map +1 -1
  124. package/dist/cjs/internal/keyedPool.js.map +1 -1
  125. package/dist/cjs/internal/layer/circular.js.map +1 -1
  126. package/dist/cjs/internal/layer.js +3 -3
  127. package/dist/cjs/internal/layer.js.map +1 -1
  128. package/dist/cjs/internal/logSpan.js +3 -5
  129. package/dist/cjs/internal/logSpan.js.map +1 -1
  130. package/dist/cjs/internal/metric.js.map +1 -1
  131. package/dist/cjs/internal/pool.js.map +1 -1
  132. package/dist/cjs/internal/pubsub.js +2 -6
  133. package/dist/cjs/internal/pubsub.js.map +1 -1
  134. package/dist/cjs/internal/query.js.map +1 -1
  135. package/dist/cjs/internal/queue.js.map +1 -1
  136. package/dist/cjs/internal/random.js +1 -1
  137. package/dist/cjs/internal/random.js.map +1 -1
  138. package/dist/cjs/internal/rateLimiter.js +44 -0
  139. package/dist/cjs/internal/rateLimiter.js.map +1 -0
  140. package/dist/cjs/internal/ref.js.map +1 -1
  141. package/dist/cjs/internal/reloadable.js +1 -9
  142. package/dist/cjs/internal/reloadable.js.map +1 -1
  143. package/dist/cjs/internal/runtime.js +0 -1
  144. package/dist/cjs/internal/runtime.js.map +1 -1
  145. package/dist/cjs/internal/schedule.js.map +1 -1
  146. package/dist/cjs/internal/scopedCache.js.map +1 -1
  147. package/dist/cjs/internal/scopedRef.js.map +1 -1
  148. package/dist/cjs/internal/sink.js +7 -7
  149. package/dist/cjs/internal/sink.js.map +1 -1
  150. package/dist/cjs/internal/stm/core.js.map +1 -1
  151. package/dist/cjs/internal/stm/stm/stmState.js.map +1 -1
  152. package/dist/cjs/internal/stm/stm/tExit.js +2 -2
  153. package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
  154. package/dist/cjs/internal/stm/stm/tryCommit.js.map +1 -1
  155. package/dist/cjs/internal/stm/stm.js.map +1 -1
  156. package/dist/cjs/internal/stm/tArray.js.map +1 -1
  157. package/dist/cjs/internal/stm/tDeferred.js +4 -2
  158. package/dist/cjs/internal/stm/tDeferred.js.map +1 -1
  159. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  160. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  161. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  162. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  163. package/dist/cjs/internal/stm/tRandom.js +1 -1
  164. package/dist/cjs/internal/stm/tRandom.js.map +1 -1
  165. package/dist/cjs/internal/stm/tReentrantLock.js.map +1 -1
  166. package/dist/cjs/internal/stm/tRef.js.map +1 -1
  167. package/dist/cjs/internal/stm/tSemaphore.js.map +1 -1
  168. package/dist/cjs/internal/stm/tSet.js.map +1 -1
  169. package/dist/cjs/internal/stream/debounceState.js.map +1 -1
  170. package/dist/cjs/internal/stream/handoff.js.map +1 -1
  171. package/dist/cjs/internal/stream/handoffSignal.js.map +1 -1
  172. package/dist/cjs/internal/stream/pull.js.map +1 -1
  173. package/dist/cjs/internal/stream.js +0 -2
  174. package/dist/cjs/internal/stream.js.map +1 -1
  175. package/dist/cjs/internal/subscriptionRef.js.map +1 -1
  176. package/dist/cjs/internal/supervisor.js.map +1 -1
  177. package/dist/cjs/internal/take.js +2 -2
  178. package/dist/cjs/internal/take.js.map +1 -1
  179. package/dist/cjs/internal/testing/sleep.js.map +1 -1
  180. package/dist/cjs/internal/tracer.js +2 -2
  181. package/dist/cjs/internal/tracer.js.map +1 -1
  182. package/dist/cjs/internal/version.js +1 -1
  183. package/dist/dts/Cache.d.ts +20 -20
  184. package/dist/dts/Cache.d.ts.map +1 -1
  185. package/dist/dts/Cause.d.ts +33 -5
  186. package/dist/dts/Cause.d.ts.map +1 -1
  187. package/dist/dts/Channel.d.ts +197 -194
  188. package/dist/dts/Channel.d.ts.map +1 -1
  189. package/dist/dts/Clock.d.ts +7 -7
  190. package/dist/dts/Clock.d.ts.map +1 -1
  191. package/dist/dts/Config.d.ts +1 -1
  192. package/dist/dts/Config.d.ts.map +1 -1
  193. package/dist/dts/ConfigProvider.d.ts +6 -6
  194. package/dist/dts/ConfigProvider.d.ts.map +1 -1
  195. package/dist/dts/Console.d.ts +43 -43
  196. package/dist/dts/Console.d.ts.map +1 -1
  197. package/dist/dts/Context.d.ts +44 -29
  198. package/dist/dts/Context.d.ts.map +1 -1
  199. package/dist/dts/Data.d.ts +38 -57
  200. package/dist/dts/Data.d.ts.map +1 -1
  201. package/dist/dts/Deferred.d.ts +36 -36
  202. package/dist/dts/Deferred.d.ts.map +1 -1
  203. package/dist/dts/Effect.d.ts +732 -729
  204. package/dist/dts/Effect.d.ts.map +1 -1
  205. package/dist/dts/Effectable.d.ts +8 -8
  206. package/dist/dts/Effectable.d.ts.map +1 -1
  207. package/dist/dts/Either.d.ts +2 -3
  208. package/dist/dts/Either.d.ts.map +1 -1
  209. package/dist/dts/Exit.d.ts +74 -74
  210. package/dist/dts/Exit.d.ts.map +1 -1
  211. package/dist/dts/Fiber.d.ts +75 -75
  212. package/dist/dts/Fiber.d.ts.map +1 -1
  213. package/dist/dts/FiberMap.d.ts +22 -22
  214. package/dist/dts/FiberMap.d.ts.map +1 -1
  215. package/dist/dts/FiberRef.d.ts +28 -28
  216. package/dist/dts/FiberRef.d.ts.map +1 -1
  217. package/dist/dts/FiberRefs.d.ts +1 -1
  218. package/dist/dts/FiberRefs.d.ts.map +1 -1
  219. package/dist/dts/FiberSet.d.ts +16 -16
  220. package/dist/dts/FiberSet.d.ts.map +1 -1
  221. package/dist/dts/GroupBy.d.ts +6 -6
  222. package/dist/dts/GroupBy.d.ts.map +1 -1
  223. package/dist/dts/KeyedPool.d.ts +22 -22
  224. package/dist/dts/KeyedPool.d.ts.map +1 -1
  225. package/dist/dts/Layer.d.ts +126 -126
  226. package/dist/dts/Layer.d.ts.map +1 -1
  227. package/dist/dts/LogLevel.d.ts +2 -2
  228. package/dist/dts/LogLevel.d.ts.map +1 -1
  229. package/dist/dts/Logger.d.ts +14 -14
  230. package/dist/dts/Logger.d.ts.map +1 -1
  231. package/dist/dts/MergeDecision.d.ts +7 -7
  232. package/dist/dts/MergeState.d.ts +13 -13
  233. package/dist/dts/MergeState.d.ts.map +1 -1
  234. package/dist/dts/Metric.d.ts +32 -32
  235. package/dist/dts/Metric.d.ts.map +1 -1
  236. package/dist/dts/MetricPolling.d.ts +6 -6
  237. package/dist/dts/MetricPolling.d.ts.map +1 -1
  238. package/dist/dts/Number.d.ts +15 -0
  239. package/dist/dts/Number.d.ts.map +1 -1
  240. package/dist/dts/Option.d.ts +2 -3
  241. package/dist/dts/Option.d.ts.map +1 -1
  242. package/dist/dts/Pool.d.ts +15 -16
  243. package/dist/dts/Pool.d.ts.map +1 -1
  244. package/dist/dts/PubSub.d.ts +18 -18
  245. package/dist/dts/PubSub.d.ts.map +1 -1
  246. package/dist/dts/Queue.d.ts +40 -40
  247. package/dist/dts/Queue.d.ts.map +1 -1
  248. package/dist/dts/Random.d.ts +13 -13
  249. package/dist/dts/Random.d.ts.map +1 -1
  250. package/dist/dts/RateLimiter.d.ts +31 -0
  251. package/dist/dts/RateLimiter.d.ts.map +1 -0
  252. package/dist/dts/ReadonlyArray.d.ts +3 -3
  253. package/dist/dts/ReadonlyRecord.d.ts +37 -8
  254. package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
  255. package/dist/dts/Ref.d.ts +25 -25
  256. package/dist/dts/Ref.d.ts.map +1 -1
  257. package/dist/dts/Reloadable.d.ts +9 -9
  258. package/dist/dts/Reloadable.d.ts.map +1 -1
  259. package/dist/dts/Request.d.ts +27 -28
  260. package/dist/dts/Request.d.ts.map +1 -1
  261. package/dist/dts/RequestBlock.d.ts +3 -3
  262. package/dist/dts/RequestBlock.d.ts.map +1 -1
  263. package/dist/dts/RequestResolver.d.ts +16 -16
  264. package/dist/dts/RequestResolver.d.ts.map +1 -1
  265. package/dist/dts/Resource.d.ts +7 -7
  266. package/dist/dts/Resource.d.ts.map +1 -1
  267. package/dist/dts/Runtime.d.ts +13 -16
  268. package/dist/dts/Runtime.d.ts.map +1 -1
  269. package/dist/dts/RuntimeFlags.d.ts +10 -10
  270. package/dist/dts/RuntimeFlags.d.ts.map +1 -1
  271. package/dist/dts/STM.d.ts +303 -303
  272. package/dist/dts/STM.d.ts.map +1 -1
  273. package/dist/dts/Schedule.d.ts +47 -47
  274. package/dist/dts/Schedule.d.ts.map +1 -1
  275. package/dist/dts/Scope.d.ts +10 -10
  276. package/dist/dts/Scope.d.ts.map +1 -1
  277. package/dist/dts/ScopedCache.d.ts +14 -14
  278. package/dist/dts/ScopedCache.d.ts.map +1 -1
  279. package/dist/dts/ScopedRef.d.ts +5 -5
  280. package/dist/dts/ScopedRef.d.ts.map +1 -1
  281. package/dist/dts/SingleProducerAsyncInput.d.ts +8 -8
  282. package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
  283. package/dist/dts/Sink.d.ts +214 -205
  284. package/dist/dts/Sink.d.ts.map +1 -1
  285. package/dist/dts/Stream.d.ts +595 -592
  286. package/dist/dts/Stream.d.ts.map +1 -1
  287. package/dist/dts/StreamEmit.d.ts +5 -5
  288. package/dist/dts/StreamEmit.d.ts.map +1 -1
  289. package/dist/dts/Streamable.d.ts +2 -2
  290. package/dist/dts/Streamable.d.ts.map +1 -1
  291. package/dist/dts/SubscriptionRef.d.ts +41 -41
  292. package/dist/dts/SubscriptionRef.d.ts.map +1 -1
  293. package/dist/dts/Supervisor.d.ts +17 -17
  294. package/dist/dts/Supervisor.d.ts.map +1 -1
  295. package/dist/dts/SynchronizedRef.d.ts +41 -41
  296. package/dist/dts/SynchronizedRef.d.ts.map +1 -1
  297. package/dist/dts/TArray.d.ts +72 -72
  298. package/dist/dts/TArray.d.ts.map +1 -1
  299. package/dist/dts/TDeferred.d.ts +12 -12
  300. package/dist/dts/TDeferred.d.ts.map +1 -1
  301. package/dist/dts/TMap.d.ts +67 -67
  302. package/dist/dts/TMap.d.ts.map +1 -1
  303. package/dist/dts/TPriorityQueue.d.ts +23 -23
  304. package/dist/dts/TPriorityQueue.d.ts.map +1 -1
  305. package/dist/dts/TPubSub.d.ts +15 -15
  306. package/dist/dts/TPubSub.d.ts.map +1 -1
  307. package/dist/dts/TQueue.d.ts +40 -40
  308. package/dist/dts/TQueue.d.ts.map +1 -1
  309. package/dist/dts/TRandom.d.ts +13 -13
  310. package/dist/dts/TRandom.d.ts.map +1 -1
  311. package/dist/dts/TReentrantLock.d.ts +21 -21
  312. package/dist/dts/TReentrantLock.d.ts.map +1 -1
  313. package/dist/dts/TRef.d.ts +25 -25
  314. package/dist/dts/TRef.d.ts.map +1 -1
  315. package/dist/dts/TSemaphore.d.ts +15 -15
  316. package/dist/dts/TSemaphore.d.ts.map +1 -1
  317. package/dist/dts/TSet.d.ts +49 -49
  318. package/dist/dts/TSet.d.ts.map +1 -1
  319. package/dist/dts/Take.d.ts +41 -41
  320. package/dist/dts/Take.d.ts.map +1 -1
  321. package/dist/dts/TestAnnotation.d.ts +1 -3
  322. package/dist/dts/TestAnnotation.d.ts.map +1 -1
  323. package/dist/dts/TestAnnotations.d.ts +3 -3
  324. package/dist/dts/TestAnnotations.d.ts.map +1 -1
  325. package/dist/dts/TestClock.d.ts +18 -18
  326. package/dist/dts/TestClock.d.ts.map +1 -1
  327. package/dist/dts/TestConfig.d.ts.map +1 -1
  328. package/dist/dts/TestContext.d.ts +2 -2
  329. package/dist/dts/TestContext.d.ts.map +1 -1
  330. package/dist/dts/TestLive.d.ts +1 -1
  331. package/dist/dts/TestLive.d.ts.map +1 -1
  332. package/dist/dts/TestServices.d.ts +31 -31
  333. package/dist/dts/TestServices.d.ts.map +1 -1
  334. package/dist/dts/TestSized.d.ts +2 -2
  335. package/dist/dts/TestSized.d.ts.map +1 -1
  336. package/dist/dts/Tracer.d.ts +1 -1
  337. package/dist/dts/Utils.d.ts.map +1 -1
  338. package/dist/dts/index.d.ts +12 -2
  339. package/dist/dts/index.d.ts.map +1 -1
  340. package/dist/dts/internal/channel/channelExecutor.d.ts +1 -1
  341. package/dist/dts/internal/channel/channelExecutor.d.ts.map +1 -1
  342. package/dist/dts/internal/core-stream.d.ts +1 -1
  343. package/dist/dts/internal/core-stream.d.ts.map +1 -1
  344. package/dist/dts/internal/rateLimiter.d.ts +2 -0
  345. package/dist/dts/internal/rateLimiter.d.ts.map +1 -0
  346. package/dist/dts/internal/stm/stm.d.ts +6 -6
  347. package/dist/dts/internal/stm/stm.d.ts.map +1 -1
  348. package/dist/dts/internal/version.d.ts +1 -1
  349. package/dist/esm/Cause.js +13 -0
  350. package/dist/esm/Cause.js.map +1 -1
  351. package/dist/esm/Channel.js.map +1 -1
  352. package/dist/esm/Clock.js.map +1 -1
  353. package/dist/esm/Console.js.map +1 -1
  354. package/dist/esm/Context.js +22 -24
  355. package/dist/esm/Context.js.map +1 -1
  356. package/dist/esm/Data.js +4 -5
  357. package/dist/esm/Data.js.map +1 -1
  358. package/dist/esm/Deferred.js +1 -1
  359. package/dist/esm/Deferred.js.map +1 -1
  360. package/dist/esm/Effect.js +9 -9
  361. package/dist/esm/Effect.js.map +1 -1
  362. package/dist/esm/Effectable.js.map +1 -1
  363. package/dist/esm/Either.js.map +1 -1
  364. package/dist/esm/Exit.js +2 -2
  365. package/dist/esm/Exit.js.map +1 -1
  366. package/dist/esm/Fiber.js.map +1 -1
  367. package/dist/esm/FiberMap.js +3 -3
  368. package/dist/esm/FiberRef.js.map +1 -1
  369. package/dist/esm/FiberRefs.js.map +1 -1
  370. package/dist/esm/FiberSet.js +3 -3
  371. package/dist/esm/FiberSet.js.map +1 -1
  372. package/dist/esm/GroupBy.js.map +1 -1
  373. package/dist/esm/Layer.js.map +1 -1
  374. package/dist/esm/LogLevel.js.map +1 -1
  375. package/dist/esm/Logger.js.map +1 -1
  376. package/dist/esm/Metric.js.map +1 -1
  377. package/dist/esm/Number.js +18 -0
  378. package/dist/esm/Number.js.map +1 -1
  379. package/dist/esm/Option.js.map +1 -1
  380. package/dist/esm/Pool.js.map +1 -1
  381. package/dist/esm/PubSub.js.map +1 -1
  382. package/dist/esm/Queue.js.map +1 -1
  383. package/dist/esm/Random.js.map +1 -1
  384. package/dist/esm/RateLimiter.js +7 -0
  385. package/dist/esm/RateLimiter.js.map +1 -0
  386. package/dist/esm/ReadonlyRecord.js +44 -8
  387. package/dist/esm/ReadonlyRecord.js.map +1 -1
  388. package/dist/esm/Ref.js.map +1 -1
  389. package/dist/esm/Request.js.map +1 -1
  390. package/dist/esm/RequestResolver.js.map +1 -1
  391. package/dist/esm/Resource.js.map +1 -1
  392. package/dist/esm/Runtime.js +1 -4
  393. package/dist/esm/Runtime.js.map +1 -1
  394. package/dist/esm/RuntimeFlags.js.map +1 -1
  395. package/dist/esm/STM.js.map +1 -1
  396. package/dist/esm/Schedule.js.map +1 -1
  397. package/dist/esm/Scope.js.map +1 -1
  398. package/dist/esm/ScopedRef.js.map +1 -1
  399. package/dist/esm/SingleProducerAsyncInput.js.map +1 -1
  400. package/dist/esm/Sink.js.map +1 -1
  401. package/dist/esm/Stream.js.map +1 -1
  402. package/dist/esm/SubscriptionRef.js.map +1 -1
  403. package/dist/esm/Supervisor.js.map +1 -1
  404. package/dist/esm/SynchronizedRef.js.map +1 -1
  405. package/dist/esm/TArray.js.map +1 -1
  406. package/dist/esm/TDeferred.js.map +1 -1
  407. package/dist/esm/TMap.js.map +1 -1
  408. package/dist/esm/TPriorityQueue.js.map +1 -1
  409. package/dist/esm/TPubSub.js.map +1 -1
  410. package/dist/esm/TQueue.js.map +1 -1
  411. package/dist/esm/TRandom.js.map +1 -1
  412. package/dist/esm/TReentrantLock.js.map +1 -1
  413. package/dist/esm/TRef.js.map +1 -1
  414. package/dist/esm/TSemaphore.js.map +1 -1
  415. package/dist/esm/TSet.js.map +1 -1
  416. package/dist/esm/Take.js +6 -6
  417. package/dist/esm/Take.js.map +1 -1
  418. package/dist/esm/TestAnnotation.js +10 -13
  419. package/dist/esm/TestAnnotation.js.map +1 -1
  420. package/dist/esm/TestAnnotations.js +1 -1
  421. package/dist/esm/TestAnnotations.js.map +1 -1
  422. package/dist/esm/TestClock.js +1 -1
  423. package/dist/esm/TestClock.js.map +1 -1
  424. package/dist/esm/TestConfig.js +1 -1
  425. package/dist/esm/TestConfig.js.map +1 -1
  426. package/dist/esm/TestContext.js.map +1 -1
  427. package/dist/esm/TestLive.js +1 -1
  428. package/dist/esm/TestLive.js.map +1 -1
  429. package/dist/esm/TestServices.js.map +1 -1
  430. package/dist/esm/TestSized.js +1 -1
  431. package/dist/esm/TestSized.js.map +1 -1
  432. package/dist/esm/Utils.js +1 -1
  433. package/dist/esm/Utils.js.map +1 -1
  434. package/dist/esm/index.js +12 -2
  435. package/dist/esm/index.js.map +1 -1
  436. package/dist/esm/internal/cache.js.map +1 -1
  437. package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
  438. package/dist/esm/internal/channel/mergeDecision.js +2 -6
  439. package/dist/esm/internal/channel/mergeDecision.js.map +1 -1
  440. package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -1
  441. package/dist/esm/internal/channel.js +1 -1
  442. package/dist/esm/internal/channel.js.map +1 -1
  443. package/dist/esm/internal/clock.js +1 -1
  444. package/dist/esm/internal/clock.js.map +1 -1
  445. package/dist/esm/internal/configProvider.js +2 -4
  446. package/dist/esm/internal/configProvider.js.map +1 -1
  447. package/dist/esm/internal/console.js.map +1 -1
  448. package/dist/esm/internal/context.js +28 -20
  449. package/dist/esm/internal/context.js.map +1 -1
  450. package/dist/esm/internal/core-effect.js +12 -26
  451. package/dist/esm/internal/core-effect.js.map +1 -1
  452. package/dist/esm/internal/core-stream.js.map +1 -1
  453. package/dist/esm/internal/core.js +57 -127
  454. package/dist/esm/internal/core.js.map +1 -1
  455. package/dist/esm/internal/data.js.map +1 -1
  456. package/dist/esm/internal/defaultServices/console.js +1 -1
  457. package/dist/esm/internal/defaultServices/console.js.map +1 -1
  458. package/dist/esm/internal/defaultServices.js.map +1 -1
  459. package/dist/esm/internal/deferred.js.map +1 -1
  460. package/dist/esm/internal/differ/contextPatch.js +9 -9
  461. package/dist/esm/internal/differ/contextPatch.js.map +1 -1
  462. package/dist/esm/internal/effect/circular.js +5 -8
  463. package/dist/esm/internal/effect/circular.js.map +1 -1
  464. package/dist/esm/internal/effectable.js +4 -4
  465. package/dist/esm/internal/effectable.js.map +1 -1
  466. package/dist/esm/internal/fiber.js +2 -6
  467. package/dist/esm/internal/fiber.js.map +1 -1
  468. package/dist/esm/internal/fiberRuntime.js +10 -19
  469. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  470. package/dist/esm/internal/groupBy.js.map +1 -1
  471. package/dist/esm/internal/keyedPool.js.map +1 -1
  472. package/dist/esm/internal/layer/circular.js.map +1 -1
  473. package/dist/esm/internal/layer.js +3 -3
  474. package/dist/esm/internal/layer.js.map +1 -1
  475. package/dist/esm/internal/logSpan.js +3 -5
  476. package/dist/esm/internal/logSpan.js.map +1 -1
  477. package/dist/esm/internal/metric.js.map +1 -1
  478. package/dist/esm/internal/pool.js.map +1 -1
  479. package/dist/esm/internal/pubsub.js +1 -5
  480. package/dist/esm/internal/pubsub.js.map +1 -1
  481. package/dist/esm/internal/query.js.map +1 -1
  482. package/dist/esm/internal/queue.js.map +1 -1
  483. package/dist/esm/internal/random.js +1 -1
  484. package/dist/esm/internal/random.js.map +1 -1
  485. package/dist/esm/internal/rateLimiter.js +12 -0
  486. package/dist/esm/internal/rateLimiter.js.map +1 -0
  487. package/dist/esm/internal/ref.js.map +1 -1
  488. package/dist/esm/internal/reloadable.js +1 -9
  489. package/dist/esm/internal/reloadable.js.map +1 -1
  490. package/dist/esm/internal/runtime.js +0 -1
  491. package/dist/esm/internal/runtime.js.map +1 -1
  492. package/dist/esm/internal/schedule.js.map +1 -1
  493. package/dist/esm/internal/scopedCache.js.map +1 -1
  494. package/dist/esm/internal/scopedRef.js.map +1 -1
  495. package/dist/esm/internal/sink.js +7 -7
  496. package/dist/esm/internal/sink.js.map +1 -1
  497. package/dist/esm/internal/stm/core.js.map +1 -1
  498. package/dist/esm/internal/stm/stm/stmState.js.map +1 -1
  499. package/dist/esm/internal/stm/stm/tExit.js +2 -2
  500. package/dist/esm/internal/stm/stm/tExit.js.map +1 -1
  501. package/dist/esm/internal/stm/stm/tryCommit.js.map +1 -1
  502. package/dist/esm/internal/stm/stm.js.map +1 -1
  503. package/dist/esm/internal/stm/tArray.js.map +1 -1
  504. package/dist/esm/internal/stm/tDeferred.js +4 -2
  505. package/dist/esm/internal/stm/tDeferred.js.map +1 -1
  506. package/dist/esm/internal/stm/tMap.js.map +1 -1
  507. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
  508. package/dist/esm/internal/stm/tPubSub.js.map +1 -1
  509. package/dist/esm/internal/stm/tQueue.js.map +1 -1
  510. package/dist/esm/internal/stm/tRandom.js +1 -1
  511. package/dist/esm/internal/stm/tRandom.js.map +1 -1
  512. package/dist/esm/internal/stm/tReentrantLock.js.map +1 -1
  513. package/dist/esm/internal/stm/tRef.js.map +1 -1
  514. package/dist/esm/internal/stm/tSemaphore.js.map +1 -1
  515. package/dist/esm/internal/stm/tSet.js.map +1 -1
  516. package/dist/esm/internal/stream/debounceState.js.map +1 -1
  517. package/dist/esm/internal/stream/handoff.js.map +1 -1
  518. package/dist/esm/internal/stream/handoffSignal.js.map +1 -1
  519. package/dist/esm/internal/stream/pull.js.map +1 -1
  520. package/dist/esm/internal/stream.js +0 -2
  521. package/dist/esm/internal/stream.js.map +1 -1
  522. package/dist/esm/internal/subscriptionRef.js.map +1 -1
  523. package/dist/esm/internal/supervisor.js.map +1 -1
  524. package/dist/esm/internal/take.js +2 -2
  525. package/dist/esm/internal/take.js.map +1 -1
  526. package/dist/esm/internal/testing/sleep.js.map +1 -1
  527. package/dist/esm/internal/tracer.js +2 -2
  528. package/dist/esm/internal/tracer.js.map +1 -1
  529. package/dist/esm/internal/version.js +1 -1
  530. package/package.json +9 -1
  531. package/src/Cache.ts +20 -20
  532. package/src/Cause.ts +37 -13
  533. package/src/Channel.ts +802 -794
  534. package/src/Clock.ts +7 -7
  535. package/src/Config.ts +1 -1
  536. package/src/ConfigProvider.ts +6 -6
  537. package/src/Console.ts +44 -48
  538. package/src/Context.ts +52 -30
  539. package/src/Data.ts +38 -61
  540. package/src/Deferred.ts +39 -41
  541. package/src/Effect.ts +1187 -1206
  542. package/src/Effectable.ts +8 -8
  543. package/src/Either.ts +2 -3
  544. package/src/Exit.ts +88 -105
  545. package/src/Fiber.ts +77 -83
  546. package/src/FiberMap.ts +77 -77
  547. package/src/FiberRef.ts +28 -28
  548. package/src/FiberRefs.ts +1 -1
  549. package/src/FiberSet.ts +61 -62
  550. package/src/GroupBy.ts +8 -12
  551. package/src/KeyedPool.ts +22 -22
  552. package/src/Layer.ts +187 -181
  553. package/src/LogLevel.ts +7 -6
  554. package/src/Logger.ts +18 -18
  555. package/src/MergeDecision.ts +7 -7
  556. package/src/MergeState.ts +16 -16
  557. package/src/Metric.ts +39 -39
  558. package/src/MetricPolling.ts +6 -6
  559. package/src/Number.ts +19 -0
  560. package/src/Option.ts +2 -3
  561. package/src/Pool.ts +15 -16
  562. package/src/PubSub.ts +18 -18
  563. package/src/Queue.ts +43 -46
  564. package/src/Random.ts +13 -15
  565. package/src/RateLimiter.ts +37 -0
  566. package/src/ReadonlyRecord.ts +49 -8
  567. package/src/Ref.ts +25 -25
  568. package/src/Reloadable.ts +10 -10
  569. package/src/Request.ts +31 -31
  570. package/src/RequestBlock.ts +3 -3
  571. package/src/RequestResolver.ts +21 -21
  572. package/src/Resource.ts +13 -13
  573. package/src/Runtime.ts +16 -19
  574. package/src/RuntimeFlags.ts +10 -10
  575. package/src/STM.ts +361 -362
  576. package/src/Schedule.ts +47 -47
  577. package/src/Scheduler.ts +2 -2
  578. package/src/Scope.ts +14 -15
  579. package/src/ScopedCache.ts +14 -14
  580. package/src/ScopedRef.ts +7 -7
  581. package/src/SingleProducerAsyncInput.ts +8 -9
  582. package/src/Sink.ts +357 -381
  583. package/src/Stream.ts +935 -1033
  584. package/src/StreamEmit.ts +5 -5
  585. package/src/Streamable.ts +2 -2
  586. package/src/SubscriptionRef.ts +51 -51
  587. package/src/Supervisor.ts +26 -26
  588. package/src/SynchronizedRef.ts +44 -44
  589. package/src/TArray.ts +74 -74
  590. package/src/TDeferred.ts +14 -14
  591. package/src/TMap.ts +72 -72
  592. package/src/TPriorityQueue.ts +23 -24
  593. package/src/TPubSub.ts +15 -15
  594. package/src/TQueue.ts +40 -40
  595. package/src/TRandom.ts +13 -13
  596. package/src/TReentrantLock.ts +21 -21
  597. package/src/TRef.ts +25 -25
  598. package/src/TSemaphore.ts +15 -15
  599. package/src/TSet.ts +49 -49
  600. package/src/Take.ts +51 -51
  601. package/src/TestAnnotation.ts +6 -17
  602. package/src/TestAnnotations.ts +7 -9
  603. package/src/TestClock.ts +39 -45
  604. package/src/TestConfig.ts +1 -3
  605. package/src/TestContext.ts +3 -3
  606. package/src/TestLive.ts +3 -5
  607. package/src/TestServices.ts +45 -47
  608. package/src/TestSized.ts +5 -5
  609. package/src/Tracer.ts +1 -1
  610. package/src/Utils.ts +8 -10
  611. package/src/index.ts +13 -2
  612. package/src/internal/blockedRequests.ts +2 -2
  613. package/src/internal/cache.ts +38 -38
  614. package/src/internal/channel/channelExecutor.ts +65 -73
  615. package/src/internal/channel/channelState.ts +11 -11
  616. package/src/internal/channel/continuation.ts +10 -10
  617. package/src/internal/channel/mergeDecision.ts +14 -16
  618. package/src/internal/channel/mergeState.ts +12 -12
  619. package/src/internal/channel/singleProducerAsyncInput.ts +15 -17
  620. package/src/internal/channel/subexecutor.ts +7 -7
  621. package/src/internal/channel.ts +901 -980
  622. package/src/internal/clock.ts +6 -6
  623. package/src/internal/concurrency.ts +9 -9
  624. package/src/internal/configProvider.ts +29 -36
  625. package/src/internal/console.ts +12 -12
  626. package/src/internal/context.ts +32 -23
  627. package/src/internal/core-effect.ts +655 -616
  628. package/src/internal/core-stream.ts +317 -325
  629. package/src/internal/core.ts +856 -790
  630. package/src/internal/data.ts +2 -3
  631. package/src/internal/dataSource.ts +14 -14
  632. package/src/internal/defaultServices/console.ts +3 -1
  633. package/src/internal/defaultServices.ts +21 -21
  634. package/src/internal/deferred.ts +9 -9
  635. package/src/internal/differ/contextPatch.ts +17 -17
  636. package/src/internal/effect/circular.ts +154 -159
  637. package/src/internal/effectable.ts +7 -7
  638. package/src/internal/fiber.ts +55 -59
  639. package/src/internal/fiberRefs.ts +1 -1
  640. package/src/internal/fiberRuntime.ts +426 -463
  641. package/src/internal/groupBy.ts +59 -62
  642. package/src/internal/keyedPool.ts +37 -37
  643. package/src/internal/layer/circular.ts +37 -37
  644. package/src/internal/layer.ts +235 -240
  645. package/src/internal/logSpan.ts +3 -5
  646. package/src/internal/metric/polling.ts +5 -5
  647. package/src/internal/metric.ts +54 -55
  648. package/src/internal/pool.ts +72 -72
  649. package/src/internal/pubsub.ts +75 -84
  650. package/src/internal/query.ts +25 -27
  651. package/src/internal/queue.ts +65 -70
  652. package/src/internal/random.ts +9 -9
  653. package/src/internal/rateLimiter.ts +30 -0
  654. package/src/internal/ref.ts +24 -24
  655. package/src/internal/reloadable.ts +11 -31
  656. package/src/internal/request.ts +14 -14
  657. package/src/internal/resource.ts +8 -8
  658. package/src/internal/runtime.ts +21 -22
  659. package/src/internal/schedule.ts +131 -134
  660. package/src/internal/scopedCache.ts +35 -32
  661. package/src/internal/scopedRef.ts +14 -14
  662. package/src/internal/sink.ts +507 -565
  663. package/src/internal/stm/core.ts +101 -102
  664. package/src/internal/stm/stm/stmState.ts +10 -10
  665. package/src/internal/stm/stm/tExit.ts +18 -18
  666. package/src/internal/stm/stm/tryCommit.ts +5 -5
  667. package/src/internal/stm/stm.ts +363 -374
  668. package/src/internal/stm/tArray.ts +92 -92
  669. package/src/internal/stm/tDeferred.ts +16 -14
  670. package/src/internal/stm/tMap.ts +83 -84
  671. package/src/internal/stm/tPriorityQueue.ts +24 -25
  672. package/src/internal/stm/tPubSub.ts +37 -38
  673. package/src/internal/stm/tQueue.ts +44 -48
  674. package/src/internal/stm/tRandom.ts +18 -18
  675. package/src/internal/stm/tReentrantLock.ts +28 -28
  676. package/src/internal/stm/tRef.ts +25 -25
  677. package/src/internal/stm/tSemaphore.ts +16 -16
  678. package/src/internal/stm/tSet.ts +51 -52
  679. package/src/internal/stream/debounceState.ts +7 -7
  680. package/src/internal/stream/emit.ts +4 -4
  681. package/src/internal/stream/handoff.ts +19 -19
  682. package/src/internal/stream/handoffSignal.ts +4 -4
  683. package/src/internal/stream/pull.ts +10 -11
  684. package/src/internal/stream.ts +1770 -1788
  685. package/src/internal/subscriptionRef.ts +17 -17
  686. package/src/internal/supervisor.ts +49 -56
  687. package/src/internal/synchronizedRef.ts +27 -27
  688. package/src/internal/take.ts +61 -61
  689. package/src/internal/testing/sleep.ts +2 -2
  690. package/src/internal/testing/suspendedWarningData.ts +2 -2
  691. package/src/internal/testing/warningData.ts +2 -2
  692. package/src/internal/tracer.ts +2 -6
  693. package/src/internal/version.ts +1 -1
package/src/Pool.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  /**
2
2
  * @since 2.0.0
3
3
  */
4
- import type * as Data from "./Data.js"
5
4
  import type * as Duration from "./Duration.js"
6
5
  import type * as Effect from "./Effect.js"
7
6
  import * as internal from "./internal/pool.js"
@@ -22,27 +21,27 @@ export const PoolTypeId: unique symbol = internal.PoolTypeId
22
21
  export type PoolTypeId = typeof PoolTypeId
23
22
 
24
23
  /**
25
- * A `Pool<E, A>` is a pool of items of type `A`, each of which may be
24
+ * A `Pool<A, E>` is a pool of items of type `A`, each of which may be
26
25
  * associated with the acquisition and release of resources. An attempt to get
27
26
  * an item `A` from a pool may fail with an error of type `E`.
28
27
  *
29
28
  * @since 2.0.0
30
29
  * @category models
31
30
  */
32
- export interface Pool<out E, in out A> extends Data.Case, Pool.Variance<E, A>, Pipeable {
31
+ export interface Pool<in out A, out E = never> extends Pool.Variance<A, E>, Pipeable {
33
32
  /**
34
33
  * Retrieves an item from the pool in a scoped effect. Note that if
35
34
  * acquisition fails, then the returned effect will fail for that same reason.
36
35
  * Retrying a failed acquisition attempt will repeat the acquisition attempt.
37
36
  */
38
- readonly get: Effect.Effect<Scope.Scope, E, A>
37
+ readonly get: Effect.Effect<A, E, Scope.Scope>
39
38
 
40
39
  /**
41
40
  * Invalidates the specified item. This will cause the pool to eventually
42
41
  * reallocate the item, although this reallocation may occur lazily rather
43
42
  * than eagerly.
44
43
  */
45
- invalidate(item: A): Effect.Effect<never, never, void>
44
+ invalidate(item: A): Effect.Effect<void>
46
45
  }
47
46
 
48
47
  /**
@@ -53,10 +52,10 @@ export declare namespace Pool {
53
52
  * @since 2.0.0
54
53
  * @category models
55
54
  */
56
- export interface Variance<out E, in out A> {
55
+ export interface Variance<in out A, out E> {
57
56
  readonly [PoolTypeId]: {
58
- readonly _E: Types.Covariant<E>
59
57
  readonly _A: Types.Invariant<A>
58
+ readonly _E: Types.Covariant<E>
60
59
  }
61
60
  }
62
61
  }
@@ -78,12 +77,12 @@ export const isPool: (u: unknown) => u is Pool<unknown, unknown> = internal.isPo
78
77
  * @since 2.0.0
79
78
  * @category constructors
80
79
  */
81
- export const make: <R, E, A>(
80
+ export const make: <A, E, R>(
82
81
  options: {
83
- readonly acquire: Effect.Effect<R, E, A>
82
+ readonly acquire: Effect.Effect<A, E, R>
84
83
  readonly size: number
85
84
  }
86
- ) => Effect.Effect<Scope.Scope | R, never, Pool<E, A>> = internal.make
85
+ ) => Effect.Effect<Pool<A, E>, never, Scope.Scope | R> = internal.make
87
86
 
88
87
  /**
89
88
  * Makes a new pool with the specified minimum and maximum sizes and time to
@@ -116,12 +115,12 @@ export const make: <R, E, A>(
116
115
  * @since 2.0.0
117
116
  * @category constructors
118
117
  */
119
- export const makeWithTTL: <R, E, A>(options: {
120
- readonly acquire: Effect.Effect<R, E, A>
118
+ export const makeWithTTL: <A, E, R>(options: {
119
+ readonly acquire: Effect.Effect<A, E, R>
121
120
  readonly min: number
122
121
  readonly max: number
123
122
  readonly timeToLive: Duration.DurationInput
124
- }) => Effect.Effect<Scope.Scope | R, never, Pool<E, A>> = internal.makeWithTTL
123
+ }) => Effect.Effect<Pool<A, E>, never, Scope.Scope | R> = internal.makeWithTTL
125
124
 
126
125
  /**
127
126
  * Retrieves an item from the pool in a scoped effect. Note that if
@@ -131,7 +130,7 @@ export const makeWithTTL: <R, E, A>(options: {
131
130
  * @since 2.0.0
132
131
  * @category getters
133
132
  */
134
- export const get: <E, A>(self: Pool<E, A>) => Effect.Effect<Scope.Scope, E, A> = internal.get
133
+ export const get: <A, E>(self: Pool<A, E>) => Effect.Effect<A, E, Scope.Scope> = internal.get
135
134
 
136
135
  /**
137
136
  * Invalidates the specified item. This will cause the pool to eventually
@@ -142,6 +141,6 @@ export const get: <E, A>(self: Pool<E, A>) => Effect.Effect<Scope.Scope, E, A> =
142
141
  * @category combinators
143
142
  */
144
143
  export const invalidate: {
145
- <A>(value: A): <E>(self: Pool<E, A>) => Effect.Effect<Scope.Scope, never, void>
146
- <E, A>(self: Pool<E, A>, value: A): Effect.Effect<Scope.Scope, never, void>
144
+ <A>(value: A): <E>(self: Pool<A, E>) => Effect.Effect<void, never, Scope.Scope>
145
+ <A, E>(self: Pool<A, E>, value: A): Effect.Effect<void, never, Scope.Scope>
147
146
  } = internal.invalidate
package/src/PubSub.ts CHANGED
@@ -20,20 +20,20 @@ export interface PubSub<in out A> extends Queue.Enqueue<A>, Pipeable {
20
20
  * Publishes a message to the `PubSub`, returning whether the message was published
21
21
  * to the `PubSub`.
22
22
  */
23
- publish(value: A): Effect.Effect<never, never, boolean>
23
+ publish(value: A): Effect.Effect<boolean>
24
24
 
25
25
  /**
26
26
  * Publishes all of the specified messages to the `PubSub`, returning whether they
27
27
  * were published to the `PubSub`.
28
28
  */
29
- publishAll(elements: Iterable<A>): Effect.Effect<never, never, boolean>
29
+ publishAll(elements: Iterable<A>): Effect.Effect<boolean>
30
30
 
31
31
  /**
32
32
  * Subscribes to receive messages from the `PubSub`. The resulting subscription can
33
33
  * be evaluated multiple times within the scope to take a message from the `PubSub`
34
34
  * each time.
35
35
  */
36
- readonly subscribe: Effect.Effect<Scope.Scope, never, Queue.Dequeue<A>>
36
+ readonly subscribe: Effect.Effect<Queue.Dequeue<A>, never, Scope.Scope>
37
37
  }
38
38
 
39
39
  /**
@@ -46,7 +46,7 @@ export interface PubSub<in out A> extends Queue.Enqueue<A>, Pipeable {
46
46
  * @since 2.0.0
47
47
  * @category constructors
48
48
  */
49
- export const bounded: <A>(requestedCapacity: number) => Effect.Effect<never, never, PubSub<A>> = internal.bounded
49
+ export const bounded: <A>(requestedCapacity: number) => Effect.Effect<PubSub<A>> = internal.bounded
50
50
 
51
51
  /**
52
52
  * Creates a bounded `PubSub` with the dropping strategy. The `PubSub` will drop new
@@ -57,7 +57,7 @@ export const bounded: <A>(requestedCapacity: number) => Effect.Effect<never, nev
57
57
  * @since 2.0.0
58
58
  * @category constructors
59
59
  */
60
- export const dropping: <A>(requestedCapacity: number) => Effect.Effect<never, never, PubSub<A>> = internal.dropping
60
+ export const dropping: <A>(requestedCapacity: number) => Effect.Effect<PubSub<A>> = internal.dropping
61
61
 
62
62
  /**
63
63
  * Creates a bounded `PubSub` with the sliding strategy. The `PubSub` will add new
@@ -68,7 +68,7 @@ export const dropping: <A>(requestedCapacity: number) => Effect.Effect<never, ne
68
68
  * @since 2.0.0
69
69
  * @category constructors
70
70
  */
71
- export const sliding: <A>(requestedCapacity: number) => Effect.Effect<never, never, PubSub<A>> = internal.sliding
71
+ export const sliding: <A>(requestedCapacity: number) => Effect.Effect<PubSub<A>> = internal.sliding
72
72
 
73
73
  /**
74
74
  * Creates an unbounded `PubSub`.
@@ -76,7 +76,7 @@ export const sliding: <A>(requestedCapacity: number) => Effect.Effect<never, nev
76
76
  * @since 2.0.0
77
77
  * @category constructors
78
78
  */
79
- export const unbounded: <A>() => Effect.Effect<never, never, PubSub<A>> = internal.unbounded
79
+ export const unbounded: <A>() => Effect.Effect<PubSub<A>> = internal.unbounded
80
80
 
81
81
  /**
82
82
  * Returns the number of elements the queue can hold.
@@ -94,7 +94,7 @@ export const capacity: <A>(self: PubSub<A>) => number = internal.capacity
94
94
  * @since 2.0.0
95
95
  * @category getters
96
96
  */
97
- export const size: <A>(self: PubSub<A>) => Effect.Effect<never, never, number> = internal.size
97
+ export const size: <A>(self: PubSub<A>) => Effect.Effect<number> = internal.size
98
98
 
99
99
  /**
100
100
  * Returns `true` if the `Queue` contains at least one element, `false`
@@ -103,7 +103,7 @@ export const size: <A>(self: PubSub<A>) => Effect.Effect<never, never, number> =
103
103
  * @since 2.0.0
104
104
  * @category getters
105
105
  */
106
- export const isFull: <A>(self: PubSub<A>) => Effect.Effect<never, never, boolean> = internal.isFull
106
+ export const isFull: <A>(self: PubSub<A>) => Effect.Effect<boolean> = internal.isFull
107
107
 
108
108
  /**
109
109
  * Returns `true` if the `Queue` contains zero elements, `false` otherwise.
@@ -111,7 +111,7 @@ export const isFull: <A>(self: PubSub<A>) => Effect.Effect<never, never, boolean
111
111
  * @since 2.0.0
112
112
  * @category getters
113
113
  */
114
- export const isEmpty: <A>(self: PubSub<A>) => Effect.Effect<never, never, boolean> = internal.isEmpty
114
+ export const isEmpty: <A>(self: PubSub<A>) => Effect.Effect<boolean> = internal.isEmpty
115
115
 
116
116
  /**
117
117
  * Interrupts any fibers that are suspended on `offer` or `take`. Future calls
@@ -120,7 +120,7 @@ export const isEmpty: <A>(self: PubSub<A>) => Effect.Effect<never, never, boolea
120
120
  * @since 2.0.0
121
121
  * @category utils
122
122
  */
123
- export const shutdown: <A>(self: PubSub<A>) => Effect.Effect<never, never, void> = internal.shutdown
123
+ export const shutdown: <A>(self: PubSub<A>) => Effect.Effect<void> = internal.shutdown
124
124
 
125
125
  /**
126
126
  * Returns `true` if `shutdown` has been called, otherwise returns `false`.
@@ -128,7 +128,7 @@ export const shutdown: <A>(self: PubSub<A>) => Effect.Effect<never, never, void>
128
128
  * @since 2.0.0
129
129
  * @category getters
130
130
  */
131
- export const isShutdown: <A>(self: PubSub<A>) => Effect.Effect<never, never, boolean> = internal.isShutdown
131
+ export const isShutdown: <A>(self: PubSub<A>) => Effect.Effect<boolean> = internal.isShutdown
132
132
 
133
133
  /**
134
134
  * Waits until the queue is shutdown. The `Effect` returned by this method will
@@ -138,7 +138,7 @@ export const isShutdown: <A>(self: PubSub<A>) => Effect.Effect<never, never, boo
138
138
  * @since 2.0.0
139
139
  * @category utils
140
140
  */
141
- export const awaitShutdown: <A>(self: PubSub<A>) => Effect.Effect<never, never, void> = internal.awaitShutdown
141
+ export const awaitShutdown: <A>(self: PubSub<A>) => Effect.Effect<void> = internal.awaitShutdown
142
142
 
143
143
  /**
144
144
  * Publishes a message to the `PubSub`, returning whether the message was published
@@ -148,8 +148,8 @@ export const awaitShutdown: <A>(self: PubSub<A>) => Effect.Effect<never, never,
148
148
  * @category utils
149
149
  */
150
150
  export const publish: {
151
- <A>(value: A): (self: PubSub<A>) => Effect.Effect<never, never, boolean>
152
- <A>(self: PubSub<A>, value: A): Effect.Effect<never, never, boolean>
151
+ <A>(value: A): (self: PubSub<A>) => Effect.Effect<boolean>
152
+ <A>(self: PubSub<A>, value: A): Effect.Effect<boolean>
153
153
  } = internal.publish
154
154
 
155
155
  /**
@@ -160,8 +160,8 @@ export const publish: {
160
160
  * @category utils
161
161
  */
162
162
  export const publishAll: {
163
- <A>(elements: Iterable<A>): (self: PubSub<A>) => Effect.Effect<never, never, boolean>
164
- <A>(self: PubSub<A>, elements: Iterable<A>): Effect.Effect<never, never, boolean>
163
+ <A>(elements: Iterable<A>): (self: PubSub<A>) => Effect.Effect<boolean>
164
+ <A>(self: PubSub<A>, elements: Iterable<A>): Effect.Effect<boolean>
165
165
  } = internal.publishAll
166
166
 
167
167
  /**
@@ -172,4 +172,4 @@ export const publishAll: {
172
172
  * @since 2.0.0
173
173
  * @category utils
174
174
  */
175
- export const subscribe: <A>(self: PubSub<A>) => Effect.Effect<Scope.Scope, never, Queue.Dequeue<A>> = internal.subscribe
175
+ export const subscribe: <A>(self: PubSub<A>) => Effect.Effect<Queue.Dequeue<A>, never, Scope.Scope> = internal.subscribe
package/src/Queue.ts CHANGED
@@ -67,9 +67,9 @@ export interface Queue<in out A> extends Enqueue<A>, Dequeue<A>, Pipeable {
67
67
  /** @internal */
68
68
  readonly queue: BackingQueue<A>
69
69
  /** @internal */
70
- readonly takers: MutableQueue.MutableQueue<Deferred.Deferred<never, A>>
70
+ readonly takers: MutableQueue.MutableQueue<Deferred.Deferred<A>>
71
71
  /** @internal */
72
- readonly shutdownHook: Deferred.Deferred<never, void>
72
+ readonly shutdownHook: Deferred.Deferred<void>
73
73
  /** @internal */
74
74
  readonly shutdownFlag: MutableRef.MutableRef<boolean>
75
75
  /** @internal */
@@ -84,7 +84,7 @@ export interface Enqueue<in A> extends Queue.EnqueueVariance<A>, BaseQueue, Pipe
84
84
  /**
85
85
  * Places one value in the queue.
86
86
  */
87
- offer(value: A): Effect.Effect<never, never, boolean>
87
+ offer(value: A): Effect.Effect<boolean>
88
88
 
89
89
  /**
90
90
  * Places one value in the queue when possible without needing the fiber runtime.
@@ -106,7 +106,7 @@ export interface Enqueue<in A> extends Queue.EnqueueVariance<A>, BaseQueue, Pipe
106
106
  * For Dropping Queue: uses `Dropping` Strategy, It places the values in the
107
107
  * queue but if there is no room it will not enqueue them and return false.
108
108
  */
109
- offerAll(iterable: Iterable<A>): Effect.Effect<never, never, boolean>
109
+ offerAll(iterable: Iterable<A>): Effect.Effect<boolean>
110
110
  }
111
111
 
112
112
  /**
@@ -118,25 +118,25 @@ export interface Dequeue<out A> extends Queue.DequeueVariance<A>, BaseQueue, Pip
118
118
  * Takes the oldest value in the queue. If the queue is empty, this will return
119
119
  * a computation that resumes when an item has been added to the queue.
120
120
  */
121
- readonly take: Effect.Effect<never, never, A>
121
+ readonly take: Effect.Effect<A>
122
122
 
123
123
  /**
124
124
  * Takes all the values in the queue and returns the values. If the queue is
125
125
  * empty returns an empty collection.
126
126
  */
127
- readonly takeAll: Effect.Effect<never, never, Chunk.Chunk<A>>
127
+ readonly takeAll: Effect.Effect<Chunk.Chunk<A>>
128
128
 
129
129
  /**
130
130
  * Takes up to max number of values from the queue.
131
131
  */
132
- takeUpTo(max: number): Effect.Effect<never, never, Chunk.Chunk<A>>
132
+ takeUpTo(max: number): Effect.Effect<Chunk.Chunk<A>>
133
133
 
134
134
  /**
135
135
  * Takes a number of elements from the queue between the specified minimum and
136
136
  * maximum. If there are fewer than the minimum number of elements available,
137
137
  * suspends until at least the minimum number of elements have been collected.
138
138
  */
139
- takeBetween(min: number, max: number): Effect.Effect<never, never, Chunk.Chunk<A>>
139
+ takeBetween(min: number, max: number): Effect.Effect<Chunk.Chunk<A>>
140
140
  }
141
141
 
142
142
  /**
@@ -161,7 +161,7 @@ export interface BaseQueue {
161
161
  * in the queue. This may be negative if fibers are suspended waiting for
162
162
  * elements to be added to the queue.
163
163
  */
164
- readonly size: Effect.Effect<never, never, number>
164
+ readonly size: Effect.Effect<number>
165
165
 
166
166
  /**
167
167
  * Retrieves the size of the queue, which is equal to the number of elements
@@ -174,30 +174,30 @@ export interface BaseQueue {
174
174
  * Returns `true` if the `Queue` contains at least one element, `false`
175
175
  * otherwise.
176
176
  */
177
- readonly isFull: Effect.Effect<never, never, boolean>
177
+ readonly isFull: Effect.Effect<boolean>
178
178
 
179
179
  /**
180
180
  * Returns `true` if the `Queue` contains zero elements, `false` otherwise.
181
181
  */
182
- readonly isEmpty: Effect.Effect<never, never, boolean>
182
+ readonly isEmpty: Effect.Effect<boolean>
183
183
 
184
184
  /**
185
185
  * Interrupts any fibers that are suspended on `offer` or `take`. Future calls
186
186
  * to `offer*` and `take*` will be interrupted immediately.
187
187
  */
188
- readonly shutdown: Effect.Effect<never, never, void>
188
+ readonly shutdown: Effect.Effect<void>
189
189
 
190
190
  /**
191
191
  * Returns `true` if `shutdown` has been called, otherwise returns `false`.
192
192
  */
193
- readonly isShutdown: Effect.Effect<never, never, boolean>
193
+ readonly isShutdown: Effect.Effect<boolean>
194
194
 
195
195
  /**
196
196
  * Waits until the queue is shutdown. The `Effect` returned by this method will
197
197
  * not resume until the queue has been shutdown. If the queue is already
198
198
  * shutdown, the `Effect` will resume right away.
199
199
  */
200
- readonly awaitShutdown: Effect.Effect<never, never, void>
200
+ readonly awaitShutdown: Effect.Effect<void>
201
201
  }
202
202
 
203
203
  /**
@@ -215,7 +215,7 @@ export interface Strategy<in out A> extends Queue.StrategyVariance<A> {
215
215
  * Determines how the `Queue.Strategy` should shut down when the `Queue` is
216
216
  * shut down.
217
217
  */
218
- readonly shutdown: Effect.Effect<never, never, void>
218
+ readonly shutdown: Effect.Effect<void>
219
219
 
220
220
  /**
221
221
  * Determines the behavior of the `Queue.Strategy` when there are surplus
@@ -225,16 +225,16 @@ export interface Strategy<in out A> extends Queue.StrategyVariance<A> {
225
225
  handleSurplus(
226
226
  iterable: Iterable<A>,
227
227
  queue: BackingQueue<A>,
228
- takers: MutableQueue.MutableQueue<Deferred.Deferred<never, A>>,
228
+ takers: MutableQueue.MutableQueue<Deferred.Deferred<A>>,
229
229
  isShutdown: MutableRef.MutableRef<boolean>
230
- ): Effect.Effect<never, never, boolean>
230
+ ): Effect.Effect<boolean>
231
231
 
232
232
  /**
233
233
  * It is called when the backing queue is empty but there are some
234
234
  * takers that can be completed
235
235
  */
236
236
  onCompleteTakersWithEmptyQueue(
237
- takers: MutableQueue.MutableQueue<Deferred.Deferred<never, A>>
237
+ takers: MutableQueue.MutableQueue<Deferred.Deferred<A>>
238
238
  ): void
239
239
 
240
240
  /**
@@ -243,7 +243,7 @@ export interface Strategy<in out A> extends Queue.StrategyVariance<A> {
243
243
  */
244
244
  unsafeOnQueueEmptySpace(
245
245
  queue: BackingQueue<A>,
246
- takers: MutableQueue.MutableQueue<Deferred.Deferred<never, A>>
246
+ takers: MutableQueue.MutableQueue<Deferred.Deferred<A>>
247
247
  ): void
248
248
  }
249
249
 
@@ -377,8 +377,7 @@ export const slidingStrategy: <A>() => Strategy<A> = internal.slidingStrategy
377
377
  * @since 2.0.0
378
378
  * @category constructors
379
379
  */
380
- export const make: <A>(queue: BackingQueue<A>, strategy: Strategy<A>) => Effect.Effect<never, never, Queue<A>> =
381
- internal.make
380
+ export const make: <A>(queue: BackingQueue<A>, strategy: Strategy<A>) => Effect.Effect<Queue<A>> = internal.make
382
381
 
383
382
  /**
384
383
  * Makes a new bounded `Queue`. When the capacity of the queue is reached, any
@@ -392,7 +391,7 @@ export const make: <A>(queue: BackingQueue<A>, strategy: Strategy<A>) => Effect.
392
391
  * @since 2.0.0
393
392
  * @category constructors
394
393
  */
395
- export const bounded: <A>(requestedCapacity: number) => Effect.Effect<never, never, Queue<A>> = internal.bounded
394
+ export const bounded: <A>(requestedCapacity: number) => Effect.Effect<Queue<A>> = internal.bounded
396
395
 
397
396
  /**
398
397
  * Makes a new bounded `Queue` with the dropping strategy.
@@ -407,7 +406,7 @@ export const bounded: <A>(requestedCapacity: number) => Effect.Effect<never, nev
407
406
  * @since 2.0.0
408
407
  * @category constructors
409
408
  */
410
- export const dropping: <A>(requestedCapacity: number) => Effect.Effect<never, never, Queue<A>> = internal.dropping
409
+ export const dropping: <A>(requestedCapacity: number) => Effect.Effect<Queue<A>> = internal.dropping
411
410
 
412
411
  /**
413
412
  * Makes a new bounded `Queue` with the sliding strategy.
@@ -422,7 +421,7 @@ export const dropping: <A>(requestedCapacity: number) => Effect.Effect<never, ne
422
421
  * @since 2.0.0
423
422
  * @category constructors
424
423
  */
425
- export const sliding: <A>(requestedCapacity: number) => Effect.Effect<never, never, Queue<A>> = internal.sliding
424
+ export const sliding: <A>(requestedCapacity: number) => Effect.Effect<Queue<A>> = internal.sliding
426
425
 
427
426
  /**
428
427
  * Creates a new unbounded `Queue`.
@@ -430,7 +429,7 @@ export const sliding: <A>(requestedCapacity: number) => Effect.Effect<never, nev
430
429
  * @since 2.0.0
431
430
  * @category constructors
432
431
  */
433
- export const unbounded: <A>() => Effect.Effect<never, never, Queue<A>> = internal.unbounded
432
+ export const unbounded: <A>() => Effect.Effect<Queue<A>> = internal.unbounded
434
433
 
435
434
  /**
436
435
  * Returns the number of elements the queue can hold.
@@ -448,7 +447,7 @@ export const capacity: <A>(self: Dequeue<A> | Enqueue<A>) => number = internal.c
448
447
  * @since 2.0.0
449
448
  * @category getters
450
449
  */
451
- export const size: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<never, never, number> = internal.size
450
+ export const size: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<number> = internal.size
452
451
 
453
452
  /**
454
453
  * Returns `true` if the `Queue` contains zero elements, `false` otherwise.
@@ -456,7 +455,7 @@ export const size: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<never, ne
456
455
  * @since 2.0.0
457
456
  * @category getters
458
457
  */
459
- export const isEmpty: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<never, never, boolean> = internal.isEmpty
458
+ export const isEmpty: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<boolean> = internal.isEmpty
460
459
 
461
460
  /**
462
461
  * Returns `true` if the `Queue` contains at least one element, `false`
@@ -465,7 +464,7 @@ export const isEmpty: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<never,
465
464
  * @since 2.0.0
466
465
  * @category getters
467
466
  */
468
- export const isFull: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<never, never, boolean> = internal.isFull
467
+ export const isFull: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<boolean> = internal.isFull
469
468
 
470
469
  /**
471
470
  * Returns `true` if `shutdown` has been called, otherwise returns `false`.
@@ -473,8 +472,7 @@ export const isFull: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<never,
473
472
  * @since 2.0.0
474
473
  * @category getters
475
474
  */
476
- export const isShutdown: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<never, never, boolean> =
477
- internal.isShutdown
475
+ export const isShutdown: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<boolean> = internal.isShutdown
478
476
 
479
477
  /**
480
478
  * Waits until the queue is shutdown. The `Effect` returned by this method will
@@ -484,8 +482,7 @@ export const isShutdown: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<nev
484
482
  * @since 2.0.0
485
483
  * @category utils
486
484
  */
487
- export const awaitShutdown: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<never, never, void> =
488
- internal.awaitShutdown
485
+ export const awaitShutdown: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<void> = internal.awaitShutdown
489
486
 
490
487
  /**
491
488
  * Interrupts any fibers that are suspended on `offer` or `take`. Future calls
@@ -494,7 +491,7 @@ export const awaitShutdown: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<
494
491
  * @since 2.0.0
495
492
  * @category utils
496
493
  */
497
- export const shutdown: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<never, never, void> = internal.shutdown
494
+ export const shutdown: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<void> = internal.shutdown
498
495
 
499
496
  /**
500
497
  * Places one value in the queue.
@@ -503,8 +500,8 @@ export const shutdown: <A>(self: Dequeue<A> | Enqueue<A>) => Effect.Effect<never
503
500
  * @category utils
504
501
  */
505
502
  export const offer: {
506
- <A>(value: A): (self: Enqueue<A>) => Effect.Effect<never, never, boolean>
507
- <A>(self: Enqueue<A>, value: A): Effect.Effect<never, never, boolean>
503
+ <A>(value: A): (self: Enqueue<A>) => Effect.Effect<boolean>
504
+ <A>(self: Enqueue<A>, value: A): Effect.Effect<boolean>
508
505
  } = internal.offer
509
506
 
510
507
  /**
@@ -537,8 +534,8 @@ export const unsafeOffer: {
537
534
  * @category utils
538
535
  */
539
536
  export const offerAll: {
540
- <A>(iterable: Iterable<A>): (self: Enqueue<A>) => Effect.Effect<never, never, boolean>
541
- <A>(self: Enqueue<A>, iterable: Iterable<A>): Effect.Effect<never, never, boolean>
537
+ <A>(iterable: Iterable<A>): (self: Enqueue<A>) => Effect.Effect<boolean>
538
+ <A>(self: Enqueue<A>, iterable: Iterable<A>): Effect.Effect<boolean>
542
539
  } = internal.offerAll
543
540
 
544
541
  /**
@@ -548,7 +545,7 @@ export const offerAll: {
548
545
  * @since 2.0.0
549
546
  * @category utils
550
547
  */
551
- export const poll: <A>(self: Dequeue<A>) => Effect.Effect<never, never, Option.Option<A>> = internal.poll
548
+ export const poll: <A>(self: Dequeue<A>) => Effect.Effect<Option.Option<A>> = internal.poll
552
549
 
553
550
  /**
554
551
  * Takes the oldest value in the queue. If the queue is empty, this will return
@@ -557,7 +554,7 @@ export const poll: <A>(self: Dequeue<A>) => Effect.Effect<never, never, Option.O
557
554
  * @since 2.0.0
558
555
  * @category utils
559
556
  */
560
- export const take: <A>(self: Dequeue<A>) => Effect.Effect<never, never, A> = internal.take
557
+ export const take: <A>(self: Dequeue<A>) => Effect.Effect<A> = internal.take
561
558
 
562
559
  /**
563
560
  * Takes all the values in the queue and returns the values. If the queue is
@@ -566,7 +563,7 @@ export const take: <A>(self: Dequeue<A>) => Effect.Effect<never, never, A> = int
566
563
  * @since 2.0.0
567
564
  * @category utils
568
565
  */
569
- export const takeAll: <A>(self: Dequeue<A>) => Effect.Effect<never, never, Chunk.Chunk<A>> = internal.takeAll
566
+ export const takeAll: <A>(self: Dequeue<A>) => Effect.Effect<Chunk.Chunk<A>> = internal.takeAll
570
567
 
571
568
  /**
572
569
  * Takes up to max number of values from the queue.
@@ -575,8 +572,8 @@ export const takeAll: <A>(self: Dequeue<A>) => Effect.Effect<never, never, Chunk
575
572
  * @category utils
576
573
  */
577
574
  export const takeUpTo: {
578
- (max: number): <A>(self: Dequeue<A>) => Effect.Effect<never, never, Chunk.Chunk<A>>
579
- <A>(self: Dequeue<A>, max: number): Effect.Effect<never, never, Chunk.Chunk<A>>
575
+ (max: number): <A>(self: Dequeue<A>) => Effect.Effect<Chunk.Chunk<A>>
576
+ <A>(self: Dequeue<A>, max: number): Effect.Effect<Chunk.Chunk<A>>
580
577
  } = internal.takeUpTo
581
578
 
582
579
  /**
@@ -588,8 +585,8 @@ export const takeUpTo: {
588
585
  * @category utils
589
586
  */
590
587
  export const takeBetween: {
591
- (min: number, max: number): <A>(self: Dequeue<A>) => Effect.Effect<never, never, Chunk.Chunk<A>>
592
- <A>(self: Dequeue<A>, min: number, max: number): Effect.Effect<never, never, Chunk.Chunk<A>>
588
+ (min: number, max: number): <A>(self: Dequeue<A>) => Effect.Effect<Chunk.Chunk<A>>
589
+ <A>(self: Dequeue<A>, min: number, max: number): Effect.Effect<Chunk.Chunk<A>>
593
590
  } = internal.takeBetween
594
591
 
595
592
  /**
@@ -601,6 +598,6 @@ export const takeBetween: {
601
598
  * @category utils
602
599
  */
603
600
  export const takeN: {
604
- (n: number): <A>(self: Dequeue<A>) => Effect.Effect<never, never, Chunk.Chunk<A>>
605
- <A>(self: Dequeue<A>, n: number): Effect.Effect<never, never, Chunk.Chunk<A>>
601
+ (n: number): <A>(self: Dequeue<A>) => Effect.Effect<Chunk.Chunk<A>>
602
+ <A>(self: Dequeue<A>, n: number): Effect.Effect<Chunk.Chunk<A>>
606
603
  } = internal.takeN
package/src/Random.ts CHANGED
@@ -27,29 +27,29 @@ export interface Random {
27
27
  /**
28
28
  * Returns the next numeric value from the pseudo-random number generator.
29
29
  */
30
- readonly next: Effect.Effect<never, never, number>
30
+ readonly next: Effect.Effect<number>
31
31
  /**
32
32
  * Returns the next boolean value from the pseudo-random number generator.
33
33
  */
34
- readonly nextBoolean: Effect.Effect<never, never, boolean>
34
+ readonly nextBoolean: Effect.Effect<boolean>
35
35
  /**
36
36
  * Returns the next integer value from the pseudo-random number generator.
37
37
  */
38
- readonly nextInt: Effect.Effect<never, never, number>
38
+ readonly nextInt: Effect.Effect<number>
39
39
  /**
40
40
  * Returns the next numeric value in the specified range from the
41
41
  * pseudo-random number generator.
42
42
  */
43
- nextRange(min: number, max: number): Effect.Effect<never, never, number>
43
+ nextRange(min: number, max: number): Effect.Effect<number>
44
44
  /**
45
45
  * Returns the next integer value in the specified range from the
46
46
  * pseudo-random number generator.
47
47
  */
48
- nextIntBetween(min: number, max: number): Effect.Effect<never, never, number>
48
+ nextIntBetween(min: number, max: number): Effect.Effect<number>
49
49
  /**
50
50
  * Uses the pseudo-random number generator to shuffle the specified iterable.
51
51
  */
52
- shuffle<A>(elements: Iterable<A>): Effect.Effect<never, never, Chunk.Chunk<A>>
52
+ shuffle<A>(elements: Iterable<A>): Effect.Effect<Chunk.Chunk<A>>
53
53
  }
54
54
 
55
55
  /**
@@ -58,7 +58,7 @@ export interface Random {
58
58
  * @since 2.0.0
59
59
  * @category constructors
60
60
  */
61
- export const next: Effect.Effect<never, never, number> = defaultServices.next
61
+ export const next: Effect.Effect<number> = defaultServices.next
62
62
 
63
63
  /**
64
64
  * Returns the next integer value from the pseudo-random number generator.
@@ -66,7 +66,7 @@ export const next: Effect.Effect<never, never, number> = defaultServices.next
66
66
  * @since 2.0.0
67
67
  * @category constructors
68
68
  */
69
- export const nextInt: Effect.Effect<never, never, number> = defaultServices.nextInt
69
+ export const nextInt: Effect.Effect<number> = defaultServices.nextInt
70
70
 
71
71
  /**
72
72
  * Returns the next boolean value from the pseudo-random number generator.
@@ -74,7 +74,7 @@ export const nextInt: Effect.Effect<never, never, number> = defaultServices.next
74
74
  * @since 2.0.0
75
75
  * @category constructors
76
76
  */
77
- export const nextBoolean: Effect.Effect<never, never, boolean> = defaultServices.nextBoolean
77
+ export const nextBoolean: Effect.Effect<boolean> = defaultServices.nextBoolean
78
78
 
79
79
  /**
80
80
  * Returns the next numeric value in the specified range from the
@@ -83,7 +83,7 @@ export const nextBoolean: Effect.Effect<never, never, boolean> = defaultServices
83
83
  * @since 2.0.0
84
84
  * @category constructors
85
85
  */
86
- export const nextRange: (min: number, max: number) => Effect.Effect<never, never, number> = defaultServices.nextRange
86
+ export const nextRange: (min: number, max: number) => Effect.Effect<number> = defaultServices.nextRange
87
87
 
88
88
  /**
89
89
  * Returns the next integer value in the specified range from the
@@ -92,8 +92,7 @@ export const nextRange: (min: number, max: number) => Effect.Effect<never, never
92
92
  * @since 2.0.0
93
93
  * @category constructors
94
94
  */
95
- export const nextIntBetween: (min: number, max: number) => Effect.Effect<never, never, number> =
96
- defaultServices.nextIntBetween
95
+ export const nextIntBetween: (min: number, max: number) => Effect.Effect<number> = defaultServices.nextIntBetween
97
96
 
98
97
  /**
99
98
  * Uses the pseudo-random number generator to shuffle the specified iterable.
@@ -101,8 +100,7 @@ export const nextIntBetween: (min: number, max: number) => Effect.Effect<never,
101
100
  * @since 2.0.0
102
101
  * @category constructors
103
102
  */
104
- export const shuffle: <A>(elements: Iterable<A>) => Effect.Effect<never, never, Chunk.Chunk<A>> =
105
- defaultServices.shuffle
103
+ export const shuffle: <A>(elements: Iterable<A>) => Effect.Effect<Chunk.Chunk<A>> = defaultServices.shuffle
106
104
 
107
105
  /**
108
106
  * Retreives the `Random` service from the context and uses it to run the
@@ -111,5 +109,5 @@ export const shuffle: <A>(elements: Iterable<A>) => Effect.Effect<never, never,
111
109
  * @since 2.0.0
112
110
  * @category constructors
113
111
  */
114
- export const randomWith: <R, E, A>(f: (random: Random) => Effect.Effect<R, E, A>) => Effect.Effect<R, E, A> =
112
+ export const randomWith: <A, E, R>(f: (random: Random) => Effect.Effect<A, E, R>) => Effect.Effect<A, E, R> =
115
113
  defaultServices.randomWith