@fncts/io 0.0.10 → 0.0.13

Sign up to get free protection for your applications and to get access to all the features.
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
  }