@fncts/io 0.0.10 → 0.0.13

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 (439) hide show
  1. package/Cached/api.d.ts +2 -3
  2. package/Channel/api/interruptWhen.d.ts +1 -1
  3. package/Channel/api/mapOutIOC.d.ts +1 -1
  4. package/Channel/api/mergeAll.d.ts +1 -1
  5. package/Channel/api/mergeAllUnboundedWith.d.ts +1 -1
  6. package/Channel/api/mergeAllWith.d.ts +1 -1
  7. package/Channel/api/mergeMap.d.ts +1 -1
  8. package/Channel/api/mergeWith.d.ts +1 -1
  9. package/Channel/api/runScoped.d.ts +1 -2
  10. package/Channel/api/toPull.d.ts +1 -2
  11. package/Channel/api/zipC.d.ts +3 -3
  12. package/Channel/api.d.ts +48 -49
  13. package/Channel/core-api.d.ts +10 -10
  14. package/Channel/definition.d.ts +12 -12
  15. package/Channel/internal/MergeDecision.d.ts +1 -1
  16. package/Channel/internal/SingleProducerAsyncInput.d.ts +1 -1
  17. package/Clock/api.d.ts +1 -1
  18. package/Fiber/FiberContext.d.ts +3 -3
  19. package/Fiber/api/awaitAll.d.ts +1 -1
  20. package/Fiber/api/evalOnIO.d.ts +1 -1
  21. package/Fiber/api/joinAll.d.ts +1 -1
  22. package/Fiber/definition.d.ts +1 -1
  23. package/FiberRef/api/locallyScoped.d.ts +1 -2
  24. package/FiberRef/api/locallyScopedWith.d.ts +1 -2
  25. package/FiberRef/constructors.d.ts +1 -2
  26. package/FiberRef/unsafe.d.ts +6 -0
  27. package/Future/api.d.ts +1 -1
  28. package/Future/constructors.d.ts +1 -1
  29. package/Hub/api.d.ts +6 -7
  30. package/Hub/definition.d.ts +6 -7
  31. package/Hub/internal.d.ts +0 -1
  32. package/IO/api/acquireRelease.d.ts +1 -2
  33. package/IO/api/acquireReleaseExit.d.ts +1 -2
  34. package/IO/api/acquireReleaseInterruptible.d.ts +1 -2
  35. package/IO/api/acquireReleaseInterruptibleExit.d.ts +1 -2
  36. package/IO/api/addFinalizer.d.ts +1 -2
  37. package/IO/api/addFinalizerExit.d.ts +1 -2
  38. package/IO/api/bracket.d.ts +1 -1
  39. package/IO/api/bracketExit.d.ts +1 -1
  40. package/IO/api/clockWith.d.ts +1 -1
  41. package/IO/api/concurrentFinalizers.d.ts +1 -2
  42. package/IO/api/consoleWith.d.ts +1 -1
  43. package/IO/api/core-scope.d.ts +1 -1
  44. package/IO/api/ensuringChildren.d.ts +1 -1
  45. package/IO/api/environment.d.ts +8 -10
  46. package/IO/api/forkScoped.d.ts +1 -2
  47. package/IO/api/interrupt.d.ts +3 -3
  48. package/IO/api/onExit.d.ts +1 -1
  49. package/IO/api/onTermination.d.ts +1 -1
  50. package/IO/api/provideSomeLayer.d.ts +1 -1
  51. package/IO/api/race.d.ts +1 -1
  52. package/IO/api/raceFirst.d.ts +1 -1
  53. package/IO/api/randomWith.d.ts +1 -1
  54. package/IO/api/repeat.d.ts +3 -3
  55. package/IO/api/retry.d.ts +3 -3
  56. package/IO/api/schedule.d.ts +2 -2
  57. package/IO/api/scope.d.ts +1 -2
  58. package/IO/api/scopeWith.d.ts +1 -2
  59. package/IO/api/scoped.d.ts +2 -3
  60. package/IO/api/sequenceT.d.ts +3 -3
  61. package/IO/api/stateful.d.ts +1 -2
  62. package/IO/api/withEarlyRelease.d.ts +1 -2
  63. package/IO/api/withFinalizer.d.ts +1 -2
  64. package/IO/api/withFinalizerExit.d.ts +1 -2
  65. package/IO/api/zipC.d.ts +2 -2
  66. package/IO/api.d.ts +50 -50
  67. package/IO/definition.d.ts +28 -24
  68. package/IO/runtime.d.ts +23 -10
  69. package/IOEnv/definition.d.ts +2 -3
  70. package/IOEnv/live.d.ts +1 -1
  71. package/IOSpec.d.ts +1 -2
  72. package/Layer/MemoMap.d.ts +2 -3
  73. package/Layer/api.d.ts +30 -32
  74. package/Layer/definition.d.ts +7 -8
  75. package/Queue/api/dimapIO.d.ts +3 -3
  76. package/Queue/api/filterInputIO.d.ts +4 -4
  77. package/Queue/api/filterOutputIO.d.ts +6 -6
  78. package/Queue/api/zipWithIO.d.ts +9 -9
  79. package/Queue/definition.d.ts +7 -7
  80. package/Queue/internal.d.ts +1 -1
  81. package/Random/api.d.ts +4 -4
  82. package/Random/live.d.ts +1 -1
  83. package/Ref/Atomic/Atomic.d.ts +3 -3
  84. package/Ref/Derived.d.ts +3 -3
  85. package/Ref/DerivedAll.d.ts +3 -3
  86. package/Ref/Synchronized/api.d.ts +15 -15
  87. package/Ref/Synchronized/definition.d.ts +2 -2
  88. package/Ref/api/get.d.ts +1 -1
  89. package/Ref/api/modify.d.ts +9 -9
  90. package/Ref/api/set.d.ts +1 -1
  91. package/Ref/definition.d.ts +13 -13
  92. package/STM/api/core-api.d.ts +4 -4
  93. package/STM/api/core-constructors.d.ts +7 -7
  94. package/STM/api.d.ts +27 -39
  95. package/STM/definition.d.ts +9 -8
  96. package/STM/driver.d.ts +1 -1
  97. package/STM/internal/Journal.d.ts +4 -3
  98. package/Schedule/Decision.d.ts +10 -4
  99. package/Schedule/Driver.d.ts +3 -3
  100. package/Schedule/api.d.ts +55 -43
  101. package/Schedule/definition.d.ts +1 -1
  102. package/Scope/Finalizer/definition.d.ts +2 -2
  103. package/Scope/ReleaseMap/api.d.ts +1 -1
  104. package/Scope/ReleaseMap/definition.d.ts +1 -1
  105. package/Scope/api.d.ts +3 -4
  106. package/ScopedRef/api.d.ts +1 -2
  107. package/ScopedRef/definition.d.ts +1 -2
  108. package/Sink/api.d.ts +255 -75
  109. package/State/api.d.ts +1 -2
  110. package/Stream/api/zipAllWith.d.ts +1 -1
  111. package/Stream/api/zipWith.d.ts +1 -1
  112. package/Stream/api/zipWithChunks.d.ts +1 -1
  113. package/Stream/api.d.ts +91 -93
  114. package/Stream/definition.d.ts +3 -3
  115. package/Stream/internal/Take.d.ts +1 -1
  116. package/Supervisor/constructors.d.ts +2 -2
  117. package/TFuture/api.d.ts +1 -1
  118. package/TFuture/definition.d.ts +1 -1
  119. package/TReentrantLock/api.d.ts +2 -3
  120. package/TRef/api.d.ts +11 -11
  121. package/TRef/constructors.d.ts +2 -2
  122. package/TSemaphore/api.d.ts +2 -2
  123. package/TSemaphore/definition.d.ts +1 -1
  124. package/_cjs/Cached/api.cjs.map +1 -1
  125. package/_cjs/Channel/api/mapOutIOC.cjs +1 -1
  126. package/_cjs/Channel/api/mapOutIOC.cjs.map +1 -1
  127. package/_cjs/Channel/api/mergeAllWith.cjs +3 -3
  128. package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
  129. package/_cjs/Channel/api.cjs.map +1 -1
  130. package/_cjs/Channel/definition.cjs.map +1 -1
  131. package/_cjs/Clock/live.cjs.map +1 -1
  132. package/_cjs/Fiber/FiberContext.cjs +5 -7
  133. package/_cjs/Fiber/FiberContext.cjs.map +1 -1
  134. package/_cjs/FiberRef/unsafe.cjs +9 -1
  135. package/_cjs/FiberRef/unsafe.cjs.map +1 -1
  136. package/_cjs/Future/api.cjs.map +1 -1
  137. package/_cjs/Hub/api.cjs +1 -1
  138. package/_cjs/Hub/api.cjs.map +1 -1
  139. package/_cjs/Hub/internal.cjs +4 -12
  140. package/_cjs/Hub/internal.cjs.map +1 -1
  141. package/_cjs/IO/api/addFinalizerExit.cjs +4 -8
  142. package/_cjs/IO/api/addFinalizerExit.cjs.map +1 -1
  143. package/_cjs/IO/api/ensuringChildren.cjs +1 -1
  144. package/_cjs/IO/api/ensuringChildren.cjs.map +1 -1
  145. package/_cjs/IO/api/environment.cjs +2 -3
  146. package/_cjs/IO/api/environment.cjs.map +1 -1
  147. package/_cjs/IO/api/interrupt.cjs +1 -1
  148. package/_cjs/IO/api/interrupt.cjs.map +1 -1
  149. package/_cjs/IO/api/memoize.cjs +4 -8
  150. package/_cjs/IO/api/memoize.cjs.map +1 -1
  151. package/_cjs/IO/api/provideSomeLayer.cjs +1 -2
  152. package/_cjs/IO/api/provideSomeLayer.cjs.map +1 -1
  153. package/_cjs/IO/api/scope.cjs +1 -1
  154. package/_cjs/IO/api/scope.cjs.map +1 -1
  155. package/_cjs/IO/api/scoped.cjs.map +1 -1
  156. package/_cjs/IO/api/withChildren.cjs +1 -1
  157. package/_cjs/IO/api/withChildren.cjs.map +1 -1
  158. package/_cjs/IO/api.cjs +1 -1
  159. package/_cjs/IO/api.cjs.map +1 -1
  160. package/_cjs/IO/definition.cjs +5 -8
  161. package/_cjs/IO/definition.cjs.map +1 -1
  162. package/_cjs/IO/runtime.cjs +69 -21
  163. package/_cjs/IO/runtime.cjs.map +1 -1
  164. package/_cjs/Layer/MemoMap.cjs +22 -38
  165. package/_cjs/Layer/MemoMap.cjs.map +1 -1
  166. package/_cjs/Layer/api.cjs +6 -4
  167. package/_cjs/Layer/api.cjs.map +1 -1
  168. package/_cjs/Layer/definition.cjs.map +1 -1
  169. package/_cjs/Queue/internal.cjs +2 -2
  170. package/_cjs/Queue/internal.cjs.map +1 -1
  171. package/_cjs/Queue/strategy.cjs +1 -5
  172. package/_cjs/Queue/strategy.cjs.map +1 -1
  173. package/_cjs/Ref/Atomic/Atomic.cjs.map +1 -1
  174. package/_cjs/Ref/Derived.cjs.map +1 -1
  175. package/_cjs/Ref/DerivedAll.cjs.map +1 -1
  176. package/_cjs/Ref/Synchronized/constructors.cjs +7 -11
  177. package/_cjs/Ref/Synchronized/constructors.cjs.map +1 -1
  178. package/_cjs/STM/api/core-constructors.cjs.map +1 -1
  179. package/_cjs/STM/api.cjs +59 -78
  180. package/_cjs/STM/api.cjs.map +1 -1
  181. package/_cjs/STM/definition.cjs.map +1 -1
  182. package/_cjs/STM/driver.cjs +7 -5
  183. package/_cjs/STM/driver.cjs.map +1 -1
  184. package/_cjs/STM/internal/Journal.cjs +20 -22
  185. package/_cjs/STM/internal/Journal.cjs.map +1 -1
  186. package/_cjs/Schedule/Decision.cjs +17 -0
  187. package/_cjs/Schedule/Decision.cjs.map +1 -1
  188. package/_cjs/Schedule/api/driver.cjs +22 -21
  189. package/_cjs/Schedule/api/driver.cjs.map +1 -1
  190. package/_cjs/Schedule/api.cjs +91 -66
  191. package/_cjs/Schedule/api.cjs.map +1 -1
  192. package/_cjs/Scope/Finalizer/definition.cjs +4 -6
  193. package/_cjs/Scope/Finalizer/definition.cjs.map +1 -1
  194. package/_cjs/Scope/ReleaseMap/definition.cjs +2 -4
  195. package/_cjs/Scope/ReleaseMap/definition.cjs.map +1 -1
  196. package/_cjs/Scope/api.cjs +2 -12
  197. package/_cjs/Scope/api.cjs.map +1 -1
  198. package/_cjs/ScopedRef/api.cjs +14 -22
  199. package/_cjs/ScopedRef/api.cjs.map +1 -1
  200. package/_cjs/Sink/api.cjs +424 -131
  201. package/_cjs/Sink/api.cjs.map +1 -1
  202. package/_cjs/Stream/api.cjs +94 -94
  203. package/_cjs/Stream/api.cjs.map +1 -1
  204. package/_cjs/Supervisor/constructors.cjs +14 -8
  205. package/_cjs/Supervisor/constructors.cjs.map +1 -1
  206. package/_cjs/TFuture/definition.cjs +2 -4
  207. package/_cjs/TFuture/definition.cjs.map +1 -1
  208. package/_cjs/TSemaphore/api.cjs +7 -7
  209. package/_cjs/TSemaphore/api.cjs.map +1 -1
  210. package/_cjs/TSemaphore/definition.cjs +2 -4
  211. package/_cjs/TSemaphore/definition.cjs.map +1 -1
  212. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +38 -0
  213. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -0
  214. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +38 -0
  215. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -0
  216. package/_cjs/internal/Scheduler.cjs +64 -14
  217. package/_cjs/internal/Scheduler.cjs.map +1 -1
  218. package/_mjs/Cached/api.mjs.map +1 -1
  219. package/_mjs/Channel/api/mapOutIOC.mjs +1 -1
  220. package/_mjs/Channel/api/mapOutIOC.mjs.map +1 -1
  221. package/_mjs/Channel/api/mergeAllWith.mjs +3 -3
  222. package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
  223. package/_mjs/Channel/api.mjs.map +1 -1
  224. package/_mjs/Channel/definition.mjs.map +1 -1
  225. package/_mjs/Clock/live.mjs.map +1 -1
  226. package/_mjs/Fiber/FiberContext.mjs +5 -6
  227. package/_mjs/Fiber/FiberContext.mjs.map +1 -1
  228. package/_mjs/FiberRef/unsafe.mjs +6 -0
  229. package/_mjs/FiberRef/unsafe.mjs.map +1 -1
  230. package/_mjs/Future/api.mjs.map +1 -1
  231. package/_mjs/Hub/api.mjs +1 -1
  232. package/_mjs/Hub/api.mjs.map +1 -1
  233. package/_mjs/Hub/internal.mjs +4 -12
  234. package/_mjs/Hub/internal.mjs.map +1 -1
  235. package/_mjs/IO/api/addFinalizerExit.mjs +4 -8
  236. package/_mjs/IO/api/addFinalizerExit.mjs.map +1 -1
  237. package/_mjs/IO/api/ensuringChildren.mjs +1 -1
  238. package/_mjs/IO/api/ensuringChildren.mjs.map +1 -1
  239. package/_mjs/IO/api/environment.mjs +2 -3
  240. package/_mjs/IO/api/environment.mjs.map +1 -1
  241. package/_mjs/IO/api/interrupt.mjs +1 -1
  242. package/_mjs/IO/api/interrupt.mjs.map +1 -1
  243. package/_mjs/IO/api/memoize.mjs +4 -8
  244. package/_mjs/IO/api/memoize.mjs.map +1 -1
  245. package/_mjs/IO/api/provideSomeLayer.mjs +1 -2
  246. package/_mjs/IO/api/provideSomeLayer.mjs.map +1 -1
  247. package/_mjs/IO/api/scope.mjs +1 -1
  248. package/_mjs/IO/api/scope.mjs.map +1 -1
  249. package/_mjs/IO/api/scoped.mjs.map +1 -1
  250. package/_mjs/IO/api/withChildren.mjs +1 -1
  251. package/_mjs/IO/api/withChildren.mjs.map +1 -1
  252. package/_mjs/IO/api.mjs +1 -1
  253. package/_mjs/IO/api.mjs.map +1 -1
  254. package/_mjs/IO/definition.mjs +3 -5
  255. package/_mjs/IO/definition.mjs.map +1 -1
  256. package/_mjs/IO/runtime.mjs +61 -18
  257. package/_mjs/IO/runtime.mjs.map +1 -1
  258. package/_mjs/Layer/MemoMap.mjs +22 -38
  259. package/_mjs/Layer/MemoMap.mjs.map +1 -1
  260. package/_mjs/Layer/api.mjs +5 -4
  261. package/_mjs/Layer/api.mjs.map +1 -1
  262. package/_mjs/Layer/definition.mjs.map +1 -1
  263. package/_mjs/Queue/internal.mjs +2 -2
  264. package/_mjs/Queue/internal.mjs.map +1 -1
  265. package/_mjs/Queue/strategy.mjs +1 -5
  266. package/_mjs/Queue/strategy.mjs.map +1 -1
  267. package/_mjs/Ref/Atomic/Atomic.mjs.map +1 -1
  268. package/_mjs/Ref/Derived.mjs.map +1 -1
  269. package/_mjs/Ref/DerivedAll.mjs.map +1 -1
  270. package/_mjs/Ref/Synchronized/constructors.mjs +7 -11
  271. package/_mjs/Ref/Synchronized/constructors.mjs.map +1 -1
  272. package/_mjs/STM/api/core-constructors.mjs.map +1 -1
  273. package/_mjs/STM/api.mjs +52 -72
  274. package/_mjs/STM/api.mjs.map +1 -1
  275. package/_mjs/STM/definition.mjs.map +1 -1
  276. package/_mjs/STM/driver.mjs +6 -5
  277. package/_mjs/STM/driver.mjs.map +1 -1
  278. package/_mjs/STM/internal/Journal.mjs +20 -21
  279. package/_mjs/STM/internal/Journal.mjs.map +1 -1
  280. package/_mjs/Schedule/Decision.mjs +9 -0
  281. package/_mjs/Schedule/Decision.mjs.map +1 -1
  282. package/_mjs/Schedule/api/driver.mjs +20 -20
  283. package/_mjs/Schedule/api/driver.mjs.map +1 -1
  284. package/_mjs/Schedule/api.mjs +84 -63
  285. package/_mjs/Schedule/api.mjs.map +1 -1
  286. package/_mjs/Scope/Finalizer/definition.mjs +4 -5
  287. package/_mjs/Scope/Finalizer/definition.mjs.map +1 -1
  288. package/_mjs/Scope/ReleaseMap/definition.mjs +2 -3
  289. package/_mjs/Scope/ReleaseMap/definition.mjs.map +1 -1
  290. package/_mjs/Scope/api.mjs +2 -12
  291. package/_mjs/Scope/api.mjs.map +1 -1
  292. package/_mjs/ScopedRef/api.mjs +14 -22
  293. package/_mjs/ScopedRef/api.mjs.map +1 -1
  294. package/_mjs/Sink/api.mjs +414 -129
  295. package/_mjs/Sink/api.mjs.map +1 -1
  296. package/_mjs/Stream/api.mjs +94 -94
  297. package/_mjs/Stream/api.mjs.map +1 -1
  298. package/_mjs/Supervisor/constructors.mjs +9 -6
  299. package/_mjs/Supervisor/constructors.mjs.map +1 -1
  300. package/_mjs/TFuture/definition.mjs +2 -3
  301. package/_mjs/TFuture/definition.mjs.map +1 -1
  302. package/_mjs/TSemaphore/api.mjs +4 -4
  303. package/_mjs/TSemaphore/api.mjs.map +1 -1
  304. package/_mjs/TSemaphore/definition.mjs +2 -3
  305. package/_mjs/TSemaphore/definition.mjs.map +1 -1
  306. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +26 -0
  307. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -0
  308. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +26 -0
  309. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -0
  310. package/_mjs/internal/Scheduler.mjs +62 -15
  311. package/_mjs/internal/Scheduler.mjs.map +1 -1
  312. package/_src/Cached/api.ts +3 -3
  313. package/_src/Channel/api/interruptWhen.ts +1 -1
  314. package/_src/Channel/api/mapOutIOC.ts +2 -2
  315. package/_src/Channel/api/mergeAll.ts +1 -1
  316. package/_src/Channel/api/mergeAllUnboundedWith.ts +1 -1
  317. package/_src/Channel/api/mergeAllWith.ts +3 -3
  318. package/_src/Channel/api/mergeMap.ts +1 -1
  319. package/_src/Channel/api/mergeWith.ts +9 -9
  320. package/_src/Channel/api/runScoped.ts +1 -1
  321. package/_src/Channel/api/toPull.ts +1 -1
  322. package/_src/Channel/api/zipC.ts +3 -3
  323. package/_src/Channel/api.ts +69 -69
  324. package/_src/Channel/core-api.ts +11 -11
  325. package/_src/Channel/definition.ts +12 -12
  326. package/_src/Channel/internal/MergeDecision.ts +1 -1
  327. package/_src/Clock/live.ts +1 -1
  328. package/_src/Fiber/FiberContext.ts +10 -8
  329. package/_src/Fiber/api/awaitAll.ts +1 -1
  330. package/_src/Fiber/api/evalOnIO.ts +1 -1
  331. package/_src/Fiber/api/joinAll.ts +1 -1
  332. package/_src/Fiber/definition.ts +1 -1
  333. package/_src/FiberRef/api/locallyScoped.ts +1 -1
  334. package/_src/FiberRef/api/locallyScopedWith.ts +1 -1
  335. package/_src/FiberRef/constructors.ts +2 -2
  336. package/_src/FiberRef/unsafe.ts +7 -0
  337. package/_src/Future/api.ts +3 -3
  338. package/_src/Future/constructors.ts +1 -1
  339. package/_src/Hub/api.ts +11 -11
  340. package/_src/Hub/definition.ts +6 -6
  341. package/_src/Hub/internal.ts +15 -15
  342. package/_src/IO/api/acquireRelease.ts +1 -1
  343. package/_src/IO/api/acquireReleaseExit.ts +1 -1
  344. package/_src/IO/api/acquireReleaseInterruptible.ts +1 -1
  345. package/_src/IO/api/acquireReleaseInterruptibleExit.ts +1 -1
  346. package/_src/IO/api/addFinalizer.ts +1 -1
  347. package/_src/IO/api/addFinalizerExit.ts +5 -7
  348. package/_src/IO/api/bracket.ts +1 -1
  349. package/_src/IO/api/bracketExit.ts +1 -1
  350. package/_src/IO/api/concurrentFinalizers.ts +1 -1
  351. package/_src/IO/api/core-scope.ts +1 -1
  352. package/_src/IO/api/ensuringChildren.ts +2 -2
  353. package/_src/IO/api/environment.ts +9 -11
  354. package/_src/IO/api/forkScoped.ts +1 -1
  355. package/_src/IO/api/interrupt.ts +3 -3
  356. package/_src/IO/api/memoize.ts +3 -3
  357. package/_src/IO/api/onExit.ts +1 -1
  358. package/_src/IO/api/onTermination.ts +1 -1
  359. package/_src/IO/api/provideSomeLayer.ts +1 -2
  360. package/_src/IO/api/race.ts +1 -1
  361. package/_src/IO/api/raceFirst.ts +1 -1
  362. package/_src/IO/api/repeat.ts +4 -4
  363. package/_src/IO/api/retry.ts +4 -4
  364. package/_src/IO/api/schedule.ts +3 -3
  365. package/_src/IO/api/scope.ts +1 -1
  366. package/_src/IO/api/scopeWith.ts +1 -1
  367. package/_src/IO/api/scoped.ts +2 -2
  368. package/_src/IO/api/sequenceT.ts +1 -1
  369. package/_src/IO/api/stateful.ts +1 -1
  370. package/_src/IO/api/withChildren.ts +1 -1
  371. package/_src/IO/api/withEarlyRelease.ts +1 -1
  372. package/_src/IO/api/withFinalizer.ts +1 -1
  373. package/_src/IO/api/withFinalizerExit.ts +1 -1
  374. package/_src/IO/api/zipC.ts +2 -2
  375. package/_src/IO/api.ts +48 -48
  376. package/_src/IO/definition.ts +29 -24
  377. package/_src/IO/runtime.ts +66 -12
  378. package/_src/IOEnv/definition.ts +1 -1
  379. package/_src/Layer/MemoMap.ts +19 -19
  380. package/_src/Layer/api.ts +38 -38
  381. package/_src/Layer/definition.ts +5 -5
  382. package/_src/Queue/api/dimapIO.ts +10 -10
  383. package/_src/Queue/api/filterInputIO.ts +4 -4
  384. package/_src/Queue/api/filterOutputIO.ts +6 -6
  385. package/_src/Queue/api/zipWithIO.ts +10 -10
  386. package/_src/Queue/definition.ts +7 -7
  387. package/_src/Queue/internal.ts +7 -7
  388. package/_src/Queue/strategy.ts +4 -4
  389. package/_src/Random/api.ts +1 -1
  390. package/_src/Ref/Atomic/Atomic.ts +3 -3
  391. package/_src/Ref/Derived.ts +3 -3
  392. package/_src/Ref/DerivedAll.ts +3 -3
  393. package/_src/Ref/Synchronized/api.ts +15 -15
  394. package/_src/Ref/Synchronized/constructors.ts +4 -4
  395. package/_src/Ref/Synchronized/definition.ts +2 -2
  396. package/_src/Ref/api/get.ts +2 -2
  397. package/_src/Ref/api/modify.ts +9 -9
  398. package/_src/Ref/api/set.ts +1 -1
  399. package/_src/Ref/definition.ts +13 -13
  400. package/_src/STM/api/core-api.ts +6 -6
  401. package/_src/STM/api/core-constructors.ts +7 -7
  402. package/_src/STM/api.ts +58 -89
  403. package/_src/STM/definition.ts +6 -6
  404. package/_src/STM/driver.ts +3 -3
  405. package/_src/STM/internal/Journal.ts +25 -16
  406. package/_src/Schedule/Decision.ts +10 -3
  407. package/_src/Schedule/Driver.ts +2 -2
  408. package/_src/Schedule/api/driver.ts +6 -6
  409. package/_src/Schedule/api.ts +97 -77
  410. package/_src/Schedule/definition.ts +1 -1
  411. package/_src/Scope/Finalizer/definition.ts +2 -2
  412. package/_src/Scope/ReleaseMap/api.ts +1 -1
  413. package/_src/Scope/ReleaseMap/definition.ts +1 -1
  414. package/_src/Scope/api.ts +11 -11
  415. package/_src/ScopedRef/api.ts +12 -17
  416. package/_src/ScopedRef/definition.ts +1 -1
  417. package/_src/Sink/api.ts +441 -86
  418. package/_src/State/api.ts +1 -1
  419. package/_src/Stream/api/zipAllWith.ts +2 -2
  420. package/_src/Stream/api/zipWith.ts +1 -1
  421. package/_src/Stream/api/zipWithChunks.ts +2 -2
  422. package/_src/Stream/api.ts +150 -149
  423. package/_src/Stream/definition.ts +3 -3
  424. package/_src/Stream/internal/Take.ts +1 -1
  425. package/_src/Supervisor/constructors.ts +7 -3
  426. package/_src/TFuture/api.ts +1 -1
  427. package/_src/TFuture/definition.ts +1 -1
  428. package/_src/TReentrantLock/api.ts +2 -2
  429. package/_src/TRef/api.ts +11 -11
  430. package/_src/TRef/constructors.ts +2 -2
  431. package/_src/TSemaphore/api.ts +2 -2
  432. package/_src/TSemaphore/definition.ts +1 -1
  433. package/_src/collection/immutable/Conc/dropUntilIO.ts +24 -0
  434. package/_src/collection/immutable/Conc/dropWhileIO.ts +26 -0
  435. package/_src/internal/Scheduler.ts +59 -15
  436. package/collection/immutable/Conc/dropUntilIO.d.ts +7 -0
  437. package/collection/immutable/Conc/dropWhileIO.d.ts +7 -0
  438. package/internal/Scheduler.d.ts +18 -1
  439. package/package.json +3 -3
package/Schedule/api.d.ts CHANGED
@@ -4,6 +4,7 @@ import { Either } from "@fncts/base/data/Either";
4
4
  import { Lazy } from "@fncts/base/data/function";
5
5
  import { Environment } from "@fncts/base/data/Environment";
6
6
  import { Maybe } from "@fncts/base/data/Maybe";
7
+ import { Intervals } from "@fncts/base/data/Intervals";
7
8
  import { Interval } from "@fncts/base/data/Interval";
8
9
  import { Conc } from "@fncts/base/collection/immutable/Conc";
9
10
  import { List } from "@fncts/base/collection/immutable/List";
@@ -22,17 +23,17 @@ export declare function addDelay_<State, Env, In, Out>(self: Schedule.WithState<
22
23
  * @tsplus fluent fncts.io.Schedule addDelayIO
23
24
  * @tsplus location "@fncts/io/Schedule/api"
24
25
  */
25
- export declare function addDelayIO_<State, Env, In, Out, Env1>(self: Schedule.WithState<State, Env, In, Out>, f: (out: Out) => URIO<Env1, number>): Schedule.WithState<State, Env & Env1, In, Out>;
26
+ export declare function addDelayIO_<State, Env, In, Out, Env1>(self: Schedule.WithState<State, Env, In, Out>, f: (out: Out) => URIO<Env1, number>): Schedule.WithState<State, Env | Env1, In, Out>;
26
27
  /**
27
28
  * @tsplus fluent fncts.io.Schedule andThen
28
29
  * @tsplus location "@fncts/io/Schedule/api"
29
30
  */
30
- export declare function andThen<State, Env, In, Out, State1, Env1, In1, Out1>(self: Schedule.WithState<State, Env, In, Out>, that: Schedule.WithState<State1, Env1, In1, Out1>): Schedule.WithState<readonly [State, State1, boolean], Env & Env1, In & In1, Out | Out1>;
31
+ export declare function andThen<State, Env, In, Out, State1, Env1, In1, Out1>(self: Schedule.WithState<State, Env, In, Out>, that: Schedule.WithState<State1, Env1, In1, Out1>): Schedule.WithState<readonly [State, State1, boolean], Env | Env1, In & In1, Out | Out1>;
31
32
  /**
32
33
  * @tsplus fluent fncts.io.Schedule andThenEither
33
34
  * @tsplus location "@fncts/io/Schedule/api"
34
35
  */
35
- export declare function andThenEither_<State, Env, In, Out, State1, Env1, In1, Out1>(self: Schedule.WithState<State, Env, In, Out>, that: Schedule.WithState<State1, Env1, In1, Out1>): Schedule.WithState<readonly [State, State1, boolean], Env & Env1, In & In1, Either<Out, Out1>>;
36
+ export declare function andThenEither_<State, Env, In, Out, State1, Env1, In1, Out1>(self: Schedule.WithState<State, Env, In, Out>, that: Schedule.WithState<State1, Env1, In1, Out1>): Schedule.WithState<readonly [State, State1, boolean], Env | Env1, In & In1, Either<Out, Out1>>;
36
37
  /**
37
38
  * @tsplus fluent fncts.io.Schedule as
38
39
  * @tsplus location "@fncts/io/Schedule/api"
@@ -47,12 +48,12 @@ export declare function check_<State, Env, In, Out>(self: Schedule.WithState<Sta
47
48
  * @tsplus fluent fncts.io.Schedule checkIO
48
49
  * @tsplus location "@fncts/io/Schedule/api"
49
50
  */
50
- export declare function checkIO_<State, Env, In, Out, Env1>(self: Schedule.WithState<State, Env, In, Out>, test: (inp: In, out: Out) => URIO<Env1, boolean>): Schedule.WithState<State, Env & Env1, In, Out>;
51
+ export declare function checkIO_<State, Env, In, Out, Env1>(self: Schedule.WithState<State, Env, In, Out>, test: (inp: In, out: Out) => URIO<Env1, boolean>): Schedule.WithState<State, Env | Env1, In, Out>;
51
52
  /**
52
53
  * @tsplus fluent fncts.io.Schedule compose_
53
54
  * @tsplus location "@fncts/io/Schedule/api"
54
55
  */
55
- export declare function compose_<S, R, I, O, S1, R1, O2>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, O, O2>): Schedule.WithState<readonly [S, S1], R & R1, I, O2>;
56
+ export declare function compose_<S, R, I, O, S1, R1, O2>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, O, O2>): Schedule.WithState<readonly [S, S1], R | R1, I, O2>;
56
57
  /**
57
58
  * @tsplus fluent fncts.io.Schedule contramap
58
59
  * @tsplus location "@fncts/io/Schedule/api"
@@ -67,7 +68,7 @@ export declare function contramapEnvironment_<S, R, I, O, R1>(self: Schedule.Wit
67
68
  * @tsplus fluent fncts.io.Schedule contramapIO
68
69
  * @tsplus location "@fncts/io/Schedule/api"
69
70
  */
70
- export declare function contramapIO_<S, R, I, O, R1, I2>(self: Schedule.WithState<S, R, I, O>, f: (inp: I2) => URIO<R1, I>): Schedule.WithState<S, R & R1, I2, O>;
71
+ export declare function contramapIO_<S, R, I, O, R1, I2>(self: Schedule.WithState<S, R, I, O>, f: (inp: I2) => URIO<R1, I>): Schedule.WithState<S, R | R1, I2, O>;
71
72
  /**
72
73
  * @tsplus static fncts.io.ScheduleOps delayed
73
74
  * @tsplus location "@fncts/io/Schedule/api"
@@ -82,7 +83,7 @@ export declare function delayedSelf_<S, R, I, O>(self: Schedule.WithState<S, R,
82
83
  * @tsplus fluent fncts.io.Schedule delayedIO
83
84
  * @tsplus location "@fncts/io/Schedule/api"
84
85
  */
85
- export declare function delayedIO_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (delay: number) => URIO<R1, number>): Schedule.WithState<S, R & R1, I, O>;
86
+ export declare function delayedIO_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (delay: number) => URIO<R1, number>): Schedule.WithState<S, R | R1, I, O>;
86
87
  /**
87
88
  * @tsplus getter fncts.io.Schedule delays
88
89
  * @tsplus location "@fncts/io/Schedule/api"
@@ -97,17 +98,28 @@ export declare function dimap_<S, R, I, O, I2, O2>(self: Schedule.WithState<S, R
97
98
  * @tsplus fluent fncts.io.Schedule dimapIO
98
99
  * @tsplus location "@fncts/io/Schedule/api"
99
100
  */
100
- export declare function dimapIO_<S, R, I, O, R1, I2, R2, O2>(self: Schedule.WithState<S, R, I, O>, f: (inp2: I2) => URIO<R1, I>, g: (out: O) => URIO<R2, O2>): Schedule.WithState<S, R & R1 & R2, I2, O2>;
101
+ export declare function dimapIO_<S, R, I, O, R1, I2, R2, O2>(self: Schedule.WithState<S, R, I, O>, f: (inp2: I2) => URIO<R1, I>, g: (out: O) => URIO<R2, O2>): Schedule.WithState<S, R | R1 | R2, I2, O2>;
101
102
  /**
102
103
  * @tsplus static fncts.io.ScheduleOps duration
103
104
  * @tsplus location "@fncts/io/Schedule/api"
104
105
  */
105
- export declare function duration(duration: number): Schedule.WithState<boolean, unknown, unknown, number>;
106
+ export declare function duration(duration: number): Schedule.WithState<boolean, never, unknown, number>;
107
+ /**
108
+ * @tsplus fluent fncts.io.Schedule either
109
+ * @tsplus operator fncts.io.Schedule ||
110
+ * @tsplus location "@fncts/io/Schedule/api"
111
+ */
112
+ export declare function either<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>): Schedule.WithState<readonly [S, S1], R | R1, I & I1, readonly [O, O1]>;
113
+ /**
114
+ * @tsplus fluent fncts.io.Schedule eitherWith
115
+ * @tsplus location "@fncts/io/Schedule/api"
116
+ */
117
+ export declare function eitherWith<S, R, I, O, S1, R1, I1, O1, O2>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>, f: (out1: O, out2: O1) => O2): Schedule.WithState<readonly [S, S1], R | R1, I & I1, O2>;
106
118
  /**
107
119
  * @tsplus static fncts.io.ScheduleOps elapsed
108
120
  * @tsplus location "@fncts/io/Schedule/api"
109
121
  */
110
- export declare const elapsed: Schedule.WithState<Maybe<number>, unknown, unknown, number>;
122
+ export declare const elapsed: Schedule.WithState<Maybe<number>, never, unknown, number>;
111
123
  /**
112
124
  * @tsplus fluent fncts.io.Schedule ensuring
113
125
  * @tsplus location "@fncts/io/Schedule/api"
@@ -117,7 +129,7 @@ export declare function ensuring_<S, R, I, O>(self: Schedule.WithState<S, R, I,
117
129
  * @tsplus static fncts.io.ScheduleOps exponential
118
130
  * @tsplus location "@fncts/io/Schedule/api"
119
131
  */
120
- export declare function exponential(base: number, factor?: number): Schedule.WithState<number, unknown, unknown, number>;
132
+ export declare function exponential(base: number, factor?: number): Schedule.WithState<number, never, unknown, number>;
121
133
  /**
122
134
  * A schedule that recurs on a fixed interval. Returns the number of
123
135
  * repetitions of the schedule so far.
@@ -132,7 +144,7 @@ export declare function exponential(base: number, factor?: number): Schedule.Wit
132
144
  * @tsplus static fncts.io.ScheduleOps fixed
133
145
  * @tsplus location "@fncts/io/Schedule/api"
134
146
  */
135
- export declare function fixed(interval: number): Schedule.WithState<readonly [Maybe<readonly [number, number]>, number], unknown, unknown, number>;
147
+ export declare function fixed(interval: number): Schedule.WithState<readonly [Maybe<readonly [number, number]>, number], never, unknown, number>;
136
148
  /**
137
149
  * @tsplus fluent fncts.io.Schedule fold
138
150
  * @tsplus location "@fncts/io/Schedule/api"
@@ -142,7 +154,7 @@ export declare function fold_<S, R, I, O, Z>(self: Schedule.WithState<S, R, I, O
142
154
  * @tsplus fluent fncts.io.Schedule foldIO
143
155
  * @tsplus location "@fncts/io/Schedule/api"
144
156
  */
145
- export declare function foldIO_<S, R, I, O, Z, R1>(self: Schedule.WithState<S, R, I, O>, z: Z, f: (z: Z, out: O) => URIO<R1, Z>): Schedule.WithState<readonly [S, Z], R & R1, I, Z>;
157
+ export declare function foldIO_<S, R, I, O, Z, R1>(self: Schedule.WithState<S, R, I, O>, z: Z, f: (z: Z, out: O) => URIO<R1, Z>): Schedule.WithState<readonly [S, Z], R | R1, I, Z>;
146
158
  /**
147
159
  * @tsplus getter fncts.io.Schedule forever
148
160
  * @tsplus location "@fncts/io/Schedule/api"
@@ -152,22 +164,22 @@ export declare function foreverSelf<S, R, I, O>(self: Schedule.WithState<S, R, I
152
164
  * @tsplus static fncts.io.ScheduleOps forever
153
165
  * @tsplus location "@fncts/io/Schedule/api"
154
166
  */
155
- export declare const forever: import("./definition.js").Schedule.WithState<number, unknown, unknown, number>;
167
+ export declare const forever: import("./definition.js").Schedule.WithState<number, never, unknown, number>;
156
168
  /**
157
169
  * @tsplus static fncts.io.ScheduleOps identity
158
170
  * @tsplus location "@fncts/io/Schedule/api"
159
171
  */
160
- export declare function identity<A>(): Schedule.WithState<void, unknown, A, A>;
172
+ export declare function identity<A>(): Schedule.WithState<void, never, A, A>;
161
173
  /**
162
174
  * @tsplus fluent fncts.io.Schedule intersectWith
163
175
  * @tsplus location "@fncts/io/Schedule/api"
164
176
  */
165
- export declare function intersectWith_<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>, f: (int1: Interval, int2: Interval) => Interval): Schedule.WithState<readonly [S, S1], R & R1, I & I1, readonly [O, O1]>;
177
+ export declare function intersectWith_<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>, f: (int1: Intervals, int2: Intervals) => Intervals): Schedule.WithState<readonly [S, S1], R | R1, I & I1, readonly [O, O1]>;
166
178
  /**
167
179
  * @tsplus static fncts.io.Schedule linear
168
180
  * @tsplus location "@fncts/io/Schedule/api"
169
181
  */
170
- export declare function linear(base: number): Schedule.WithState<number, unknown, unknown, number>;
182
+ export declare function linear(base: number): Schedule.WithState<number, never, unknown, number>;
171
183
  /**
172
184
  * @tsplus fluent fncts.io.Schedule map
173
185
  * @tsplus location "@fncts/io/Schedule/api"
@@ -177,22 +189,22 @@ export declare function map_<State, Env, In, Out, Out1>(self: Schedule.WithState
177
189
  * @tsplus fluent fncts.io.Schedule mapIO
178
190
  * @tsplus location "@fncts/io/Schedule/api"
179
191
  */
180
- export declare function mapIO_<State, Env, In, Out, Env1, Out1>(self: Schedule.WithState<State, Env, In, Out>, f: (out: Out) => URIO<Env1, Out1>): Schedule.WithState<State, Env & Env1, In, Out1>;
192
+ export declare function mapIO_<State, Env, In, Out, Env1, Out1>(self: Schedule.WithState<State, Env, In, Out>, f: (out: Out) => URIO<Env1, Out1>): Schedule.WithState<State, Env | Env1, In, Out1>;
181
193
  /**
182
194
  * @tsplus fluent fncts.io.Schedule modifyDelayIO
183
195
  * @tsplus location "@fncts/io/Schedule/api"
184
196
  */
185
- export declare function modifyDelayIO_<State, Env, In, Out, Env1>(self: Schedule.WithState<State, Env, In, Out>, f: (out: Out, duration: number) => URIO<Env1, number>): Schedule.WithState<State, Env & Env1, In, Out>;
197
+ export declare function modifyDelayIO_<State, Env, In, Out, Env1>(self: Schedule.WithState<State, Env, In, Out>, f: (out: Out, duration: number) => URIO<Env1, number>): Schedule.WithState<State, Env | Env1, In, Out>;
186
198
  /**
187
199
  * @tsplus fluent fncts.io.Schedule onDecision
188
200
  * @tsplus location "@fncts/io/Schedule/api"
189
201
  */
190
- export declare function onDecision_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (state: S, out: O, decision: Decision) => URIO<R1, any>): Schedule.WithState<S, R & R1, I, O>;
202
+ export declare function onDecision_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (state: S, out: O, decision: Decision) => URIO<R1, any>): Schedule.WithState<S, R | R1, I, O>;
191
203
  /**
192
204
  * @tsplus fluent fncts.io.Schedule provideEnvironment
193
205
  * @tsplus location "@fncts/io/Schedule/api"
194
206
  */
195
- export declare function provideEnvironment_<S, R, I, O>(self: Schedule.WithState<S, R, I, O>, env: Environment<R>): Schedule.WithState<S, unknown, I, O>;
207
+ export declare function provideEnvironment_<S, R, I, O>(self: Schedule.WithState<S, R, I, O>, env: Environment<R>): Schedule.WithState<S, never, I, O>;
196
208
  /**
197
209
  * @tsplus fluent fncts.io.Schedule reconsider
198
210
  * @tsplus location "@fncts/io/Schedule/api"
@@ -202,17 +214,17 @@ export declare function reconsider_<S, R, I, O, O2>(self: Schedule.WithState<S,
202
214
  * @tsplus fluent fncts.io.Schedule reconsiderIO
203
215
  * @tsplus location "@fncts/io/Schedule/api"
204
216
  */
205
- export declare function reconsiderIO_<S, R, I, O, R1, O1>(self: Schedule.WithState<S, R, I, O>, f: (state: S, out: O, decision: Decision) => URIO<R1, Either<O1, readonly [O1, Interval]>>): Schedule.WithState<S, R & R1, I, O1>;
217
+ export declare function reconsiderIO_<S, R, I, O, R1, O1>(self: Schedule.WithState<S, R, I, O>, f: (state: S, out: O, decision: Decision) => URIO<R1, Either<O1, readonly [O1, Interval]>>): Schedule.WithState<S, R | R1, I, O1>;
206
218
  /**
207
219
  * @tsplus static fncts.io.Schedule recurs
208
220
  * @tsplus location "@fncts/io/Schedule/api"
209
221
  */
210
- export declare function recurs(n: number): Schedule.WithState<number, unknown, unknown, number>;
222
+ export declare function recurs(n: number): Schedule.WithState<number, never, unknown, number>;
211
223
  /**
212
224
  * @tsplus static fncts.io.Schedule recurWhile
213
225
  * @tsplus location "@fncts/io/Schedule/api"
214
226
  */
215
- export declare function recurWhile<A>(f: (a: A) => boolean): Schedule.WithState<void, unknown, A, A>;
227
+ export declare function recurWhile<A>(f: (a: A) => boolean): Schedule.WithState<void, never, A, A>;
216
228
  /**
217
229
  * @tsplus static fncts.io.Schedule recurWhileIO
218
230
  * @tsplus location "@fncts/io/Schedule/api"
@@ -222,12 +234,12 @@ export declare function recurWhileIO<R, A>(f: (a: A) => URIO<R, boolean>): Sched
222
234
  * @tsplus static fncts.io.Schedule recurWhileEquals
223
235
  * @tsplus location "@fncts/io/Schedule/api"
224
236
  */
225
- export declare function recurWhileEquals<A>(value: Lazy<A>): Schedule.WithState<void, unknown, A, A>;
237
+ export declare function recurWhileEquals<A>(value: Lazy<A>): Schedule.WithState<void, never, A, A>;
226
238
  /**
227
239
  * @tsplus static fncts.io.Schedule recurUntil
228
240
  * @tsplus location "@fncts/io/Schedule/api"
229
241
  */
230
- export declare function recurUntil<A>(f: (a: A) => boolean): Schedule.WithState<void, unknown, A, A>;
242
+ export declare function recurUntil<A>(f: (a: A) => boolean): Schedule.WithState<void, never, A, A>;
231
243
  /**
232
244
  * @tsplus static fncts.io.Schedule recurUntilIO
233
245
  * @tsplus location "@fncts/io/Schedule/api"
@@ -237,7 +249,7 @@ export declare function recurUntilIO<R, A>(f: (a: A) => URIO<R, boolean>): Sched
237
249
  * @tsplus static fncts.io.Schedule recurUntilEquals
238
250
  * @tsplus location "@fncts/io/Schedule/api"
239
251
  */
240
- export declare function recurUntilEquals<A>(value: Lazy<A>): Schedule.WithState<void, unknown, A, A>;
252
+ export declare function recurUntilEquals<A>(value: Lazy<A>): Schedule.WithState<void, never, A, A>;
241
253
  /**
242
254
  * @tsplus getter fncts.io.Schedule repetitions
243
255
  * @tsplus location "@fncts/io/Schedule/api"
@@ -262,32 +274,32 @@ export declare function run_<S, R, I, O>(self: Schedule.WithState<S, R, I, O>, n
262
274
  * @tsplus static fncts.io.Schedule spaced
263
275
  * @tsplus location "@fncts/io/Schedule/api"
264
276
  */
265
- export declare function spaced(duration: number): Schedule.WithState<number, unknown, unknown, number>;
277
+ export declare function spaced(duration: number): Schedule.WithState<number, never, unknown, number>;
266
278
  /**
267
279
  * @tsplus static fncts.io.Schedule succeed
268
280
  * @tsplus location "@fncts/io/Schedule/api"
269
281
  */
270
- export declare function succeed<A>(a: Lazy<A>): Schedule.WithState<number, unknown, unknown, A>;
282
+ export declare function succeed<A>(a: Lazy<A>): Schedule.WithState<number, never, unknown, A>;
271
283
  /**
272
284
  * @tsplus fluent fncts.io.Schedule tapInput
273
285
  * @tsplus location "@fncts/io/Schedule/api"
274
286
  */
275
- export declare function tapInput_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (inp: I) => URIO<R1, any>): Schedule.WithState<S, R & R1, I, O>;
287
+ export declare function tapInput_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (inp: I) => URIO<R1, any>): Schedule.WithState<S, R | R1, I, O>;
276
288
  /**
277
289
  * @tsplus fluent fncts.io.Schedule tapOutput
278
290
  * @tsplus location "@fncts/io/Schedule/api"
279
291
  */
280
- export declare function tapOutput_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (out: O) => URIO<R1, any>): Schedule.WithState<S, R & R1, I, O>;
292
+ export declare function tapOutput_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (out: O) => URIO<R1, any>): Schedule.WithState<S, R | R1, I, O>;
281
293
  /**
282
294
  * @tsplus fluent fncts.io.Schedule unionWith
283
295
  * @tsplus location "@fncts/io/Schedule/api"
284
296
  */
285
- export declare function unionWith_<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>, f: (int1: Interval, int2: Interval) => Interval): Schedule.WithState<readonly [S, S1], R & R1, I & I1, readonly [O, O1]>;
297
+ export declare function unionWith_<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>, f: (int1: Intervals, int2: Intervals) => Intervals): Schedule.WithState<readonly [S, S1], R | R1, I & I1, readonly [O, O1]>;
286
298
  /**
287
299
  * @tsplus static fncts.io.ScheduleOps unfold
288
300
  * @tsplus location "@fncts/io/Schedule/api"
289
301
  */
290
- export declare function unfold<A>(a: Lazy<A>, f: (a: A) => A): Schedule.WithState<A, unknown, unknown, A>;
302
+ export declare function unfold<A>(a: Lazy<A>, f: (a: A) => A): Schedule.WithState<A, never, unknown, A>;
291
303
  /**
292
304
  * @tsplus fluent fncts.io.Schedule untilInput
293
305
  * @tsplus location "@fncts/io/Schedule/api"
@@ -297,7 +309,7 @@ export declare function untilInput_<S, R, I, O>(self: Schedule.WithState<S, R, I
297
309
  * @tsplus fluent fncts.io.Schedule untilInputIO
298
310
  * @tsplus location "@fncts/io/Schedule/api"
299
311
  */
300
- export declare function untilInputIO_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (inp: I) => URIO<R1, boolean>): Schedule.WithState<S, R & R1, I, O>;
312
+ export declare function untilInputIO_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (inp: I) => URIO<R1, boolean>): Schedule.WithState<S, R | R1, I, O>;
301
313
  /**
302
314
  * @tsplus fluent fncts.io.Schedule untilOutput
303
315
  * @tsplus location "@fncts/io/Schedule/api"
@@ -307,12 +319,12 @@ export declare function untilOutput_<S, R, I, O>(self: Schedule.WithState<S, R,
307
319
  * @tsplus fluent fncts.io.Schedule untilOutputIO
308
320
  * @tsplus location "@fncts/io/Schedule/api"
309
321
  */
310
- export declare function untilOutputIO_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (out: O) => URIO<R1, boolean>): Schedule.WithState<S, R & R1, I, O>;
322
+ export declare function untilOutputIO_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (out: O) => URIO<R1, boolean>): Schedule.WithState<S, R | R1, I, O>;
311
323
  /**
312
324
  * @tsplus static fncts.io.Schedule upTo
313
325
  * @tsplus location "@fncts/io/Schedule/api"
314
326
  */
315
- export declare function upTo(duration: number): Schedule.WithState<Maybe<number>, unknown, unknown, number>;
327
+ export declare function upTo(duration: number): Schedule.WithState<Maybe<number>, never, unknown, number>;
316
328
  /**
317
329
  * @tsplus fluent fncts.io.Schedule whileInput
318
330
  * @tsplus location "@fncts/io/Schedule/api"
@@ -322,7 +334,7 @@ export declare function whileInput_<S, R, I, O>(self: Schedule.WithState<S, R, I
322
334
  * @tsplus fluent fncts.io.Schedule whileInputIO
323
335
  * @tsplus location "@fncts/io/Schedule/api"
324
336
  */
325
- export declare function whileInputIO_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (inp: I) => URIO<R1, boolean>): Schedule.WithState<S, R & R1, I, O>;
337
+ export declare function whileInputIO_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (inp: I) => URIO<R1, boolean>): Schedule.WithState<S, R | R1, I, O>;
326
338
  /**
327
339
  * @tsplus fluent fncts.io.Schedule whileOutput
328
340
  * @tsplus location "@fncts/io/Schedule/api"
@@ -332,29 +344,29 @@ export declare function whileOutput_<S, R, I, O>(self: Schedule.WithState<S, R,
332
344
  * @tsplus fluent fncts.io.Schedule whileOutputIO
333
345
  * @tsplus location "@fncts/io/Schedule/api"
334
346
  */
335
- export declare function whileOutputIO_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (out: O) => URIO<R1, boolean>): Schedule.WithState<S, R & R1, I, O>;
347
+ export declare function whileOutputIO_<S, R, I, O, R1>(self: Schedule.WithState<S, R, I, O>, f: (out: O) => URIO<R1, boolean>): Schedule.WithState<S, R | R1, I, O>;
336
348
  /**
337
349
  * @tsplus static fncts.io.Schedule windowed
338
350
  * @tsplus location "@fncts/io/Schedule/api"
339
351
  */
340
- export declare function windowed(interval: number): Schedule.WithState<readonly [Maybe<number>, number], unknown, unknown, number>;
352
+ export declare function windowed(interval: number): Schedule.WithState<readonly [Maybe<number>, number], never, unknown, number>;
341
353
  /**
342
354
  * @tsplus fluent fncts.io.Schedule zip
343
355
  * @tsplus location "@fncts/io/Schedule/api"
344
356
  */
345
- export declare function zip_<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>): Schedule.WithState<readonly [S, S1], R & R1, I & I1, readonly [O, O1]>;
357
+ export declare function zip_<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>): Schedule.WithState<readonly [S, S1], R | R1, I & I1, readonly [O, O1]>;
346
358
  /**
347
359
  * @tsplus fluent fncts.io.Schedule zipLeft
348
360
  * @tsplus location "@fncts/io/Schedule/api"
349
361
  */
350
- export declare function zipLeft_<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>): Schedule.WithState<readonly [S, S1], R & R1, I & I1, O>;
362
+ export declare function zipLeft_<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>): Schedule.WithState<readonly [S, S1], R | R1, I & I1, O>;
351
363
  /**
352
364
  * @tsplus fluent fncts.io.Schedule zipRight
353
365
  * @tsplus location "@fncts/io/Schedule/api"
354
366
  */
355
- export declare function zipRight_<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>): Schedule.WithState<readonly [S, S1], R & R1, I & I1, O1>;
367
+ export declare function zipRight_<S, R, I, O, S1, R1, I1, O1>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O1>): Schedule.WithState<readonly [S, S1], R | R1, I & I1, O1>;
356
368
  /**
357
369
  * @tsplus fluent fncts.io.Schedule zipWith
358
370
  * @tsplus location "@fncts/io/Schedule/api"
359
371
  */
360
- export declare function zipWith_<S, R, I, O, S1, R1, I1, O2, O3>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O2>, f: (out1: O, out2: O2) => O3): Schedule.WithState<readonly [S, S1], R & R1, I & I1, O3>;
372
+ export declare function zipWith_<S, R, I, O, S1, R1, I1, O2, O3>(self: Schedule.WithState<S, R, I, O>, that: Schedule.WithState<S1, R1, I1, O2>, f: (out1: O, out2: O2) => O3): Schedule.WithState<readonly [S, S1], R | R1, I & I1, O3>;
@@ -32,7 +32,7 @@ import type { Driver as Driver_ } from "./Driver.js";
32
32
  * @tsplus companion fncts.io.ScheduleOps
33
33
  */
34
34
  export declare abstract class Schedule<Env, In, Out> {
35
- readonly _Env: (_: Env) => void;
35
+ readonly _Env: () => Env;
36
36
  readonly _In: (_: In) => void;
37
37
  readonly _Out: () => Out;
38
38
  readonly _State: unknown;
@@ -3,14 +3,14 @@ import { Newtype } from "@fncts/base/data/Newtype";
3
3
  import { Exit } from "@fncts/base/data/Exit";
4
4
  import { IO } from "@fncts/io/IO/definition";
5
5
  interface FinalizerN extends HKT {
6
- readonly [HKT.T]: Finalizer;
6
+ readonly type: Finalizer;
7
7
  }
8
8
  /**
9
9
  * @tsplus type fncts.io.Managed.Finalizer
10
10
  */
11
11
  export interface Finalizer extends Newtype<{
12
12
  readonly Finalizer: unique symbol;
13
- }, (exit: Exit<any, any>) => IO<unknown, never, any>> {
13
+ }, (exit: Exit<any, any>) => IO<never, never, any>> {
14
14
  }
15
15
  /**
16
16
  * @tsplus type fncts.io.Managed.FinalizerOps
@@ -12,7 +12,7 @@ export declare function addIfOpen_(releaseMap: ReleaseMap, finalizer: Finalizer)
12
12
  * @tsplus fluent fncts.io.Scope.ReleaseMap release
13
13
  * @tsplus location "@fncts/io/Scope/ReleaseMap/api"
14
14
  */
15
- export declare function release_(releaseMap: ReleaseMap, key: number, exit: Exit<any, any>): IO<unknown, never, any>;
15
+ export declare function release_(releaseMap: ReleaseMap, key: number, exit: Exit<any, any>): IO<never, never, any>;
16
16
  /**
17
17
  * @tsplus fluent fncts.io.Scope.ReleaseMap add
18
18
  * @tsplus location "@fncts/io/Scope/ReleaseMap/api"
@@ -20,7 +20,7 @@ export declare class Running {
20
20
  }
21
21
  export declare type State = Exited | Running;
22
22
  interface ReleaseMapN extends HKT {
23
- readonly [HKT.T]: ReleaseMap;
23
+ readonly type: ReleaseMap;
24
24
  }
25
25
  /**
26
26
  * @tsplus type fncts.io.Scope.ReleaseMap
package/Scope/api.d.ts CHANGED
@@ -1,7 +1,6 @@
1
1
  import { Scope } from "@fncts/io/Scope/definition";
2
2
  import { Lazy } from "@fncts/base/data/function";
3
3
  import { UIO, IO } from "@fncts/io/IO/definition";
4
- import { Has } from "@fncts/base/typeclass/Has";
5
4
  import { Finalizer } from "@fncts/io/Scope/Finalizer";
6
5
  import { Exit } from "@fncts/base/data/Exit";
7
6
  import { ExecutionStrategy } from "@fncts/base/data/ExecutionStrategy";
@@ -15,7 +14,7 @@ export declare function addFinalizer_(self: Scope, finalizer: Lazy<UIO<any>>): U
15
14
  * @tsplus static fncts.io.ScopeOps addFinalizer
16
15
  * @tsplus location "@fncts/io/Scope/api"
17
16
  */
18
- export declare function addFinalizer(finalizer: Lazy<UIO<void>>): IO<Has<Scope>, never, void>;
17
+ export declare function addFinalizer(finalizer: Lazy<UIO<void>>): IO<Scope, never, void>;
19
18
  /**
20
19
  * @tsplus static fncts.io.ScopeOps concurrent
21
20
  * @tsplus static fncts.io.Scope.CloseableOps concurrent
@@ -26,7 +25,7 @@ export declare const concurrent: UIO<Scope.Closeable>;
26
25
  * @tsplus fluent fncts.io.Scope extend
27
26
  * @tsplus location "@fncts/io/Scope/api"
28
27
  */
29
- export declare function extend_<R, E, A>(self: Scope, io: Lazy<IO<R & Has<Scope>, E, A>>): IO<R, E, A>;
28
+ export declare function extend_<R, E, A>(self: Scope, io: Lazy<IO<R, E, A>>): IO<Exclude<R, Scope>, E, A>;
30
29
  /**
31
30
  * @tsplus static fncts.io.ScopeOps global
32
31
  * @tsplus location "@fncts/io/Scope/api"
@@ -58,4 +57,4 @@ export declare function unsafeMakeWith(executionStrategy: ExecutionStrategy): Sc
58
57
  * @tsplus fluent fncts.io.Scope.Closeable use
59
58
  * @tsplus location "@fncts/io/Scope/api"
60
59
  */
61
- export declare function use_<R, E, A>(self: Scope.Closeable, io: Lazy<IO<R & Has<Scope>, E, A>>): IO<R, E, A>;
60
+ export declare function use_<R, E, A>(self: Scope.Closeable, io: Lazy<IO<R, E, A>>): IO<Exclude<R, Scope>, E, A>;
@@ -1,5 +1,4 @@
1
1
  import { IO, UIO, FIO } from "@fncts/io/IO/definition";
2
- import { Has } from "@fncts/base/typeclass/Has";
3
2
  import { Scope } from "@fncts/io/Scope/definition";
4
3
  import { ScopedRef } from "@fncts/io/ScopedRef/definition";
5
4
  import { Ref } from "@fncts/io/Ref";
@@ -8,4 +7,4 @@ import { Exit } from "@fncts/base/data/Exit";
8
7
  * @tsplus static fncts.io.ScopedRefOps fromAcquire
9
8
  * @tsplus location "@fncts/io/ScopedRef/api"
10
9
  */
11
- export declare function fromAcquire<R, E, A>(acquire: IO<R, E, A>, __tsplusTrace?: string): IO<R & Has<Scope>, E, ScopedRef<A>>;
10
+ export declare function fromAcquire<R, E, A>(acquire: IO<R, E, A>, __tsplusTrace?: string): IO<R | Scope, E, ScopedRef<A>>;
@@ -1,5 +1,4 @@
1
1
  import { IO, UIO } from "@fncts/io/IO/definition";
2
- import { Has } from "@fncts/base/typeclass/Has";
3
2
  import { Scope } from "@fncts/io/Scope/definition";
4
3
  export declare const ScopedRefTypeId: unique symbol;
5
4
  export declare type ScopedRefTypeId = typeof ScopedRefTypeId;
@@ -9,6 +8,6 @@ export declare type ScopedRefTypeId = typeof ScopedRefTypeId;
9
8
  */
10
9
  export declare abstract class ScopedRef<A> {
11
10
  readonly _typeId: ScopedRefTypeId;
12
- abstract set<R, E>(acquire: IO<R & Has<Scope>, E, A>, __tsplusTrace?: string): IO<R, E, void>;
11
+ abstract set<R, E>(acquire: IO<R | Scope, E, A>, __tsplusTrace?: string): IO<Exclude<R, Scope>, E, void>;
13
12
  abstract get: UIO<A>;
14
13
  }