@depup/effect 3.20.0-depup.0

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 (2716) hide show
  1. package/.index/package.json +6 -0
  2. package/Arbitrary/package.json +6 -0
  3. package/Array/package.json +6 -0
  4. package/BigDecimal/package.json +6 -0
  5. package/BigInt/package.json +6 -0
  6. package/Boolean/package.json +6 -0
  7. package/Brand/package.json +6 -0
  8. package/Cache/package.json +6 -0
  9. package/Cause/package.json +6 -0
  10. package/Channel/package.json +6 -0
  11. package/ChildExecutorDecision/package.json +6 -0
  12. package/Chunk/package.json +6 -0
  13. package/Clock/package.json +6 -0
  14. package/Config/package.json +6 -0
  15. package/ConfigError/package.json +6 -0
  16. package/ConfigProvider/package.json +6 -0
  17. package/ConfigProviderPathPatch/package.json +6 -0
  18. package/Console/package.json +6 -0
  19. package/Context/package.json +6 -0
  20. package/Cron/package.json +6 -0
  21. package/Data/package.json +6 -0
  22. package/DateTime/package.json +6 -0
  23. package/DefaultServices/package.json +6 -0
  24. package/Deferred/package.json +6 -0
  25. package/Differ/package.json +6 -0
  26. package/Duration/package.json +6 -0
  27. package/Effect/package.json +6 -0
  28. package/Effectable/package.json +6 -0
  29. package/Either/package.json +6 -0
  30. package/Encoding/package.json +6 -0
  31. package/Equal/package.json +6 -0
  32. package/Equivalence/package.json +6 -0
  33. package/ExecutionPlan/package.json +6 -0
  34. package/ExecutionStrategy/package.json +6 -0
  35. package/Exit/package.json +6 -0
  36. package/FastCheck/package.json +6 -0
  37. package/Fiber/package.json +6 -0
  38. package/FiberHandle/package.json +6 -0
  39. package/FiberId/package.json +6 -0
  40. package/FiberMap/package.json +6 -0
  41. package/FiberRef/package.json +6 -0
  42. package/FiberRefs/package.json +6 -0
  43. package/FiberRefsPatch/package.json +6 -0
  44. package/FiberSet/package.json +6 -0
  45. package/FiberStatus/package.json +6 -0
  46. package/Function/package.json +6 -0
  47. package/GlobalValue/package.json +6 -0
  48. package/Graph/package.json +6 -0
  49. package/GroupBy/package.json +6 -0
  50. package/HKT/package.json +6 -0
  51. package/Hash/package.json +6 -0
  52. package/HashMap/package.json +6 -0
  53. package/HashRing/package.json +6 -0
  54. package/HashSet/package.json +6 -0
  55. package/Inspectable/package.json +6 -0
  56. package/Iterable/package.json +6 -0
  57. package/JSONSchema/package.json +6 -0
  58. package/KeyedPool/package.json +6 -0
  59. package/LICENSE +21 -0
  60. package/Layer/package.json +6 -0
  61. package/LayerMap/package.json +6 -0
  62. package/List/package.json +6 -0
  63. package/LogLevel/package.json +6 -0
  64. package/LogSpan/package.json +6 -0
  65. package/Logger/package.json +6 -0
  66. package/Mailbox/package.json +6 -0
  67. package/ManagedRuntime/package.json +6 -0
  68. package/Match/package.json +6 -0
  69. package/MergeDecision/package.json +6 -0
  70. package/MergeState/package.json +6 -0
  71. package/MergeStrategy/package.json +6 -0
  72. package/Metric/package.json +6 -0
  73. package/MetricBoundaries/package.json +6 -0
  74. package/MetricHook/package.json +6 -0
  75. package/MetricKey/package.json +6 -0
  76. package/MetricKeyType/package.json +6 -0
  77. package/MetricLabel/package.json +6 -0
  78. package/MetricPair/package.json +6 -0
  79. package/MetricPolling/package.json +6 -0
  80. package/MetricRegistry/package.json +6 -0
  81. package/MetricState/package.json +6 -0
  82. package/Micro/package.json +6 -0
  83. package/ModuleVersion/package.json +6 -0
  84. package/MutableHashMap/package.json +6 -0
  85. package/MutableHashSet/package.json +6 -0
  86. package/MutableList/package.json +6 -0
  87. package/MutableQueue/package.json +6 -0
  88. package/MutableRef/package.json +6 -0
  89. package/NonEmptyIterable/package.json +6 -0
  90. package/Number/package.json +6 -0
  91. package/Option/package.json +6 -0
  92. package/Order/package.json +6 -0
  93. package/Ordering/package.json +6 -0
  94. package/ParseResult/package.json +6 -0
  95. package/PartitionedSemaphore/package.json +6 -0
  96. package/Pipeable/package.json +6 -0
  97. package/Pool/package.json +6 -0
  98. package/Predicate/package.json +6 -0
  99. package/Pretty/package.json +6 -0
  100. package/PrimaryKey/package.json +6 -0
  101. package/PubSub/package.json +6 -0
  102. package/Queue/package.json +6 -0
  103. package/README.md +32 -0
  104. package/Random/package.json +6 -0
  105. package/RateLimiter/package.json +6 -0
  106. package/RcMap/package.json +6 -0
  107. package/RcRef/package.json +6 -0
  108. package/Readable/package.json +6 -0
  109. package/Record/package.json +6 -0
  110. package/RedBlackTree/package.json +6 -0
  111. package/Redacted/package.json +6 -0
  112. package/Ref/package.json +6 -0
  113. package/RegExp/package.json +6 -0
  114. package/Reloadable/package.json +6 -0
  115. package/Request/package.json +6 -0
  116. package/RequestBlock/package.json +6 -0
  117. package/RequestResolver/package.json +6 -0
  118. package/Resource/package.json +6 -0
  119. package/Runtime/package.json +6 -0
  120. package/RuntimeFlags/package.json +6 -0
  121. package/RuntimeFlagsPatch/package.json +6 -0
  122. package/STM/package.json +6 -0
  123. package/Schedule/package.json +6 -0
  124. package/ScheduleDecision/package.json +6 -0
  125. package/ScheduleInterval/package.json +6 -0
  126. package/ScheduleIntervals/package.json +6 -0
  127. package/Scheduler/package.json +6 -0
  128. package/Schema/package.json +6 -0
  129. package/SchemaAST/package.json +6 -0
  130. package/Scope/package.json +6 -0
  131. package/ScopedCache/package.json +6 -0
  132. package/ScopedRef/package.json +6 -0
  133. package/Secret/package.json +6 -0
  134. package/SingleProducerAsyncInput/package.json +6 -0
  135. package/Sink/package.json +6 -0
  136. package/SortedMap/package.json +6 -0
  137. package/SortedSet/package.json +6 -0
  138. package/Stream/package.json +6 -0
  139. package/StreamEmit/package.json +6 -0
  140. package/StreamHaltStrategy/package.json +6 -0
  141. package/Streamable/package.json +6 -0
  142. package/String/package.json +6 -0
  143. package/Struct/package.json +6 -0
  144. package/Subscribable/package.json +6 -0
  145. package/SubscriptionRef/package.json +6 -0
  146. package/Supervisor/package.json +6 -0
  147. package/Symbol/package.json +6 -0
  148. package/SynchronizedRef/package.json +6 -0
  149. package/TArray/package.json +6 -0
  150. package/TDeferred/package.json +6 -0
  151. package/TMap/package.json +6 -0
  152. package/TPriorityQueue/package.json +6 -0
  153. package/TPubSub/package.json +6 -0
  154. package/TQueue/package.json +6 -0
  155. package/TRandom/package.json +6 -0
  156. package/TReentrantLock/package.json +6 -0
  157. package/TRef/package.json +6 -0
  158. package/TSemaphore/package.json +6 -0
  159. package/TSet/package.json +6 -0
  160. package/TSubscriptionRef/package.json +6 -0
  161. package/Take/package.json +6 -0
  162. package/TestAnnotation/package.json +6 -0
  163. package/TestAnnotationMap/package.json +6 -0
  164. package/TestAnnotations/package.json +6 -0
  165. package/TestClock/package.json +6 -0
  166. package/TestConfig/package.json +6 -0
  167. package/TestContext/package.json +6 -0
  168. package/TestLive/package.json +6 -0
  169. package/TestServices/package.json +6 -0
  170. package/TestSized/package.json +6 -0
  171. package/Tracer/package.json +6 -0
  172. package/Trie/package.json +6 -0
  173. package/Tuple/package.json +6 -0
  174. package/Types/package.json +6 -0
  175. package/Unify/package.json +6 -0
  176. package/UpstreamPullRequest/package.json +6 -0
  177. package/UpstreamPullStrategy/package.json +6 -0
  178. package/Utils/package.json +6 -0
  179. package/changes.json +14 -0
  180. package/dist/cjs/Arbitrary.js +813 -0
  181. package/dist/cjs/Arbitrary.js.map +1 -0
  182. package/dist/cjs/Array.js +2695 -0
  183. package/dist/cjs/Array.js.map +1 -0
  184. package/dist/cjs/BigDecimal.js +1116 -0
  185. package/dist/cjs/BigDecimal.js.map +1 -0
  186. package/dist/cjs/BigInt.js +567 -0
  187. package/dist/cjs/BigInt.js.map +1 -0
  188. package/dist/cjs/Boolean.js +251 -0
  189. package/dist/cjs/Boolean.js.map +1 -0
  190. package/dist/cjs/Brand.js +175 -0
  191. package/dist/cjs/Brand.js.map +1 -0
  192. package/dist/cjs/Cache.js +50 -0
  193. package/dist/cjs/Cache.js.map +1 -0
  194. package/dist/cjs/Cause.js +1011 -0
  195. package/dist/cjs/Cause.js.map +1 -0
  196. package/dist/cjs/Channel.js +889 -0
  197. package/dist/cjs/Channel.js.map +1 -0
  198. package/dist/cjs/ChildExecutorDecision.js +72 -0
  199. package/dist/cjs/ChildExecutorDecision.js.map +1 -0
  200. package/dist/cjs/Chunk.js +1114 -0
  201. package/dist/cjs/Chunk.js.map +1 -0
  202. package/dist/cjs/Clock.js +45 -0
  203. package/dist/cjs/Clock.js.map +1 -0
  204. package/dist/cjs/Config.js +328 -0
  205. package/dist/cjs/Config.js.map +1 -0
  206. package/dist/cjs/ConfigError.js +114 -0
  207. package/dist/cjs/ConfigError.js.map +1 -0
  208. package/dist/cjs/ConfigProvider.js +173 -0
  209. package/dist/cjs/ConfigProvider.js.map +1 -0
  210. package/dist/cjs/ConfigProviderPathPatch.js +38 -0
  211. package/dist/cjs/ConfigProviderPathPatch.js.map +1 -0
  212. package/dist/cjs/Console.js +125 -0
  213. package/dist/cjs/Console.js.map +1 -0
  214. package/dist/cjs/Context.js +367 -0
  215. package/dist/cjs/Context.js.map +1 -0
  216. package/dist/cjs/Cron.js +583 -0
  217. package/dist/cjs/Cron.js.map +1 -0
  218. package/dist/cjs/Data.js +291 -0
  219. package/dist/cjs/Data.js.map +1 -0
  220. package/dist/cjs/DateTime.js +1084 -0
  221. package/dist/cjs/DateTime.js.map +1 -0
  222. package/dist/cjs/DefaultServices.js +19 -0
  223. package/dist/cjs/DefaultServices.js.map +1 -0
  224. package/dist/cjs/Deferred.js +167 -0
  225. package/dist/cjs/Deferred.js.map +1 -0
  226. package/dist/cjs/Differ.js +140 -0
  227. package/dist/cjs/Differ.js.map +1 -0
  228. package/dist/cjs/Duration.js +737 -0
  229. package/dist/cjs/Duration.js.map +1 -0
  230. package/dist/cjs/Effect.js +10717 -0
  231. package/dist/cjs/Effect.js.map +1 -0
  232. package/dist/cjs/Effectable.js +58 -0
  233. package/dist/cjs/Effectable.js.map +1 -0
  234. package/dist/cjs/Either.js +654 -0
  235. package/dist/cjs/Either.js.map +1 -0
  236. package/dist/cjs/Encoding.js +155 -0
  237. package/dist/cjs/Encoding.js.map +1 -0
  238. package/dist/cjs/Equal.js +81 -0
  239. package/dist/cjs/Equal.js.map +1 -0
  240. package/dist/cjs/Equivalence.js +181 -0
  241. package/dist/cjs/Equivalence.js.map +1 -0
  242. package/dist/cjs/ExecutionPlan.js +108 -0
  243. package/dist/cjs/ExecutionPlan.js.map +1 -0
  244. package/dist/cjs/ExecutionStrategy.js +62 -0
  245. package/dist/cjs/ExecutionStrategy.js.map +1 -0
  246. package/dist/cjs/Exit.js +256 -0
  247. package/dist/cjs/Exit.js.map +1 -0
  248. package/dist/cjs/FastCheck.js +17 -0
  249. package/dist/cjs/FastCheck.js.map +1 -0
  250. package/dist/cjs/Fiber.js +340 -0
  251. package/dist/cjs/Fiber.js.map +1 -0
  252. package/dist/cjs/FiberHandle.js +335 -0
  253. package/dist/cjs/FiberHandle.js.map +1 -0
  254. package/dist/cjs/FiberId.js +122 -0
  255. package/dist/cjs/FiberId.js.map +1 -0
  256. package/dist/cjs/FiberMap.js +374 -0
  257. package/dist/cjs/FiberMap.js.map +1 -0
  258. package/dist/cjs/FiberRef.js +243 -0
  259. package/dist/cjs/FiberRef.js.map +1 -0
  260. package/dist/cjs/FiberRefs.js +91 -0
  261. package/dist/cjs/FiberRefs.js.map +1 -0
  262. package/dist/cjs/FiberRefsPatch.js +39 -0
  263. package/dist/cjs/FiberRefsPatch.js.map +1 -0
  264. package/dist/cjs/FiberSet.js +308 -0
  265. package/dist/cjs/FiberSet.js.map +1 -0
  266. package/dist/cjs/FiberStatus.js +59 -0
  267. package/dist/cjs/FiberStatus.js.map +1 -0
  268. package/dist/cjs/Function.js +488 -0
  269. package/dist/cjs/Function.js.map +1 -0
  270. package/dist/cjs/GlobalValue.js +59 -0
  271. package/dist/cjs/GlobalValue.js.map +1 -0
  272. package/dist/cjs/Graph.js +3080 -0
  273. package/dist/cjs/Graph.js.map +1 -0
  274. package/dist/cjs/GroupBy.js +47 -0
  275. package/dist/cjs/GroupBy.js.map +1 -0
  276. package/dist/cjs/HKT.js +6 -0
  277. package/dist/cjs/HKT.js.map +1 -0
  278. package/dist/cjs/Hash.js +184 -0
  279. package/dist/cjs/Hash.js.map +1 -0
  280. package/dist/cjs/HashMap.js +322 -0
  281. package/dist/cjs/HashMap.js.map +1 -0
  282. package/dist/cjs/HashRing.js +257 -0
  283. package/dist/cjs/HashRing.js.map +1 -0
  284. package/dist/cjs/HashSet.js +1262 -0
  285. package/dist/cjs/HashSet.js.map +1 -0
  286. package/dist/cjs/Inspectable.js +213 -0
  287. package/dist/cjs/Inspectable.js.map +1 -0
  288. package/dist/cjs/Iterable.js +1009 -0
  289. package/dist/cjs/Iterable.js.map +1 -0
  290. package/dist/cjs/JSONSchema.js +727 -0
  291. package/dist/cjs/JSONSchema.js.map +1 -0
  292. package/dist/cjs/KeyedPool.js +83 -0
  293. package/dist/cjs/KeyedPool.js.map +1 -0
  294. package/dist/cjs/Layer.js +651 -0
  295. package/dist/cjs/Layer.js.map +1 -0
  296. package/dist/cjs/LayerMap.js +212 -0
  297. package/dist/cjs/LayerMap.js.map +1 -0
  298. package/dist/cjs/List.js +784 -0
  299. package/dist/cjs/List.js.map +1 -0
  300. package/dist/cjs/LogLevel.js +143 -0
  301. package/dist/cjs/LogLevel.js.map +1 -0
  302. package/dist/cjs/LogSpan.js +23 -0
  303. package/dist/cjs/LogSpan.js.map +1 -0
  304. package/dist/cjs/Logger.js +497 -0
  305. package/dist/cjs/Logger.js.map +1 -0
  306. package/dist/cjs/Mailbox.js +105 -0
  307. package/dist/cjs/Mailbox.js.map +1 -0
  308. package/dist/cjs/ManagedRuntime.js +49 -0
  309. package/dist/cjs/ManagedRuntime.js.map +1 -0
  310. package/dist/cjs/Match.js +819 -0
  311. package/dist/cjs/Match.js.map +1 -0
  312. package/dist/cjs/MergeDecision.js +42 -0
  313. package/dist/cjs/MergeDecision.js.map +1 -0
  314. package/dist/cjs/MergeState.js +65 -0
  315. package/dist/cjs/MergeState.js.map +1 -0
  316. package/dist/cjs/MergeStrategy.js +59 -0
  317. package/dist/cjs/MergeStrategy.js.map +1 -0
  318. package/dist/cjs/Metric.js +415 -0
  319. package/dist/cjs/Metric.js.map +1 -0
  320. package/dist/cjs/MetricBoundaries.js +40 -0
  321. package/dist/cjs/MetricBoundaries.js.map +1 -0
  322. package/dist/cjs/MetricHook.js +54 -0
  323. package/dist/cjs/MetricHook.js.map +1 -0
  324. package/dist/cjs/MetricKey.js +70 -0
  325. package/dist/cjs/MetricKey.js.map +1 -0
  326. package/dist/cjs/MetricKeyType.js +94 -0
  327. package/dist/cjs/MetricKeyType.js.map +1 -0
  328. package/dist/cjs/MetricLabel.js +24 -0
  329. package/dist/cjs/MetricLabel.js.map +1 -0
  330. package/dist/cjs/MetricPair.js +28 -0
  331. package/dist/cjs/MetricPair.js.map +1 -0
  332. package/dist/cjs/MetricPolling.js +66 -0
  333. package/dist/cjs/MetricPolling.js.map +1 -0
  334. package/dist/cjs/MetricRegistry.js +23 -0
  335. package/dist/cjs/MetricRegistry.js.map +1 -0
  336. package/dist/cjs/MetricState.js +94 -0
  337. package/dist/cjs/MetricState.js.map +1 -0
  338. package/dist/cjs/Micro.js +2582 -0
  339. package/dist/cjs/Micro.js.map +1 -0
  340. package/dist/cjs/ModuleVersion.js +25 -0
  341. package/dist/cjs/ModuleVersion.js.map +1 -0
  342. package/dist/cjs/MutableHashMap.js +314 -0
  343. package/dist/cjs/MutableHashMap.js.map +1 -0
  344. package/dist/cjs/MutableHashSet.js +524 -0
  345. package/dist/cjs/MutableHashSet.js.map +1 -0
  346. package/dist/cjs/MutableList.js +258 -0
  347. package/dist/cjs/MutableList.js.map +1 -0
  348. package/dist/cjs/MutableQueue.js +173 -0
  349. package/dist/cjs/MutableQueue.js.map +1 -0
  350. package/dist/cjs/MutableRef.js +144 -0
  351. package/dist/cjs/MutableRef.js.map +1 -0
  352. package/dist/cjs/NonEmptyIterable.js +23 -0
  353. package/dist/cjs/NonEmptyIterable.js.map +1 -0
  354. package/dist/cjs/Number.js +903 -0
  355. package/dist/cjs/Number.js.map +1 -0
  356. package/dist/cjs/Option.js +1769 -0
  357. package/dist/cjs/Option.js.map +1 -0
  358. package/dist/cjs/Order.js +275 -0
  359. package/dist/cjs/Order.js.map +1 -0
  360. package/dist/cjs/Ordering.js +80 -0
  361. package/dist/cjs/Ordering.js.map +1 -0
  362. package/dist/cjs/ParseResult.js +1594 -0
  363. package/dist/cjs/ParseResult.js.map +1 -0
  364. package/dist/cjs/PartitionedSemaphore.js +147 -0
  365. package/dist/cjs/PartitionedSemaphore.js.map +1 -0
  366. package/dist/cjs/Pipeable.js +70 -0
  367. package/dist/cjs/Pipeable.js.map +1 -0
  368. package/dist/cjs/Pool.js +107 -0
  369. package/dist/cjs/Pool.js.map +1 -0
  370. package/dist/cjs/Predicate.js +1159 -0
  371. package/dist/cjs/Predicate.js.map +1 -0
  372. package/dist/cjs/Pretty.js +183 -0
  373. package/dist/cjs/Pretty.js.map +1 -0
  374. package/dist/cjs/PrimaryKey.js +21 -0
  375. package/dist/cjs/PrimaryKey.js.map +1 -0
  376. package/dist/cjs/PubSub.js +127 -0
  377. package/dist/cjs/PubSub.js.map +1 -0
  378. package/dist/cjs/Queue.js +255 -0
  379. package/dist/cjs/Queue.js.map +1 -0
  380. package/dist/cjs/Random.js +145 -0
  381. package/dist/cjs/Random.js.map +1 -0
  382. package/dist/cjs/RateLimiter.js +84 -0
  383. package/dist/cjs/RateLimiter.js.map +1 -0
  384. package/dist/cjs/RcMap.js +76 -0
  385. package/dist/cjs/RcMap.js.map +1 -0
  386. package/dist/cjs/RcRef.js +58 -0
  387. package/dist/cjs/RcRef.js.map +1 -0
  388. package/dist/cjs/Readable.js +55 -0
  389. package/dist/cjs/Readable.js.map +1 -0
  390. package/dist/cjs/Record.js +865 -0
  391. package/dist/cjs/Record.js.map +1 -0
  392. package/dist/cjs/RedBlackTree.js +266 -0
  393. package/dist/cjs/RedBlackTree.js.map +1 -0
  394. package/dist/cjs/Redacted.js +101 -0
  395. package/dist/cjs/Redacted.js.map +1 -0
  396. package/dist/cjs/Ref.js +84 -0
  397. package/dist/cjs/Ref.js.map +1 -0
  398. package/dist/cjs/RegExp.js +46 -0
  399. package/dist/cjs/RegExp.js.map +1 -0
  400. package/dist/cjs/Reloadable.js +66 -0
  401. package/dist/cjs/Reloadable.js.map +1 -0
  402. package/dist/cjs/Request.js +148 -0
  403. package/dist/cjs/Request.js.map +1 -0
  404. package/dist/cjs/RequestBlock.js +43 -0
  405. package/dist/cjs/RequestBlock.js.map +1 -0
  406. package/dist/cjs/RequestResolver.js +185 -0
  407. package/dist/cjs/RequestResolver.js.map +1 -0
  408. package/dist/cjs/Resource.js +51 -0
  409. package/dist/cjs/Resource.js.map +1 -0
  410. package/dist/cjs/Runtime.js +188 -0
  411. package/dist/cjs/Runtime.js.map +1 -0
  412. package/dist/cjs/RuntimeFlags.js +259 -0
  413. package/dist/cjs/RuntimeFlags.js.map +1 -0
  414. package/dist/cjs/RuntimeFlagsPatch.js +142 -0
  415. package/dist/cjs/RuntimeFlagsPatch.js.map +1 -0
  416. package/dist/cjs/STM.js +981 -0
  417. package/dist/cjs/STM.js.map +1 -0
  418. package/dist/cjs/Schedule.js +1603 -0
  419. package/dist/cjs/Schedule.js.map +1 -0
  420. package/dist/cjs/ScheduleDecision.js +34 -0
  421. package/dist/cjs/ScheduleDecision.js.map +1 -0
  422. package/dist/cjs/ScheduleInterval.js +107 -0
  423. package/dist/cjs/ScheduleInterval.js.map +1 -0
  424. package/dist/cjs/ScheduleIntervals.js +85 -0
  425. package/dist/cjs/ScheduleIntervals.js.map +1 -0
  426. package/dist/cjs/Scheduler.js +308 -0
  427. package/dist/cjs/Scheduler.js.map +1 -0
  428. package/dist/cjs/Schema.js +6254 -0
  429. package/dist/cjs/Schema.js.map +1 -0
  430. package/dist/cjs/SchemaAST.js +2552 -0
  431. package/dist/cjs/SchemaAST.js.map +1 -0
  432. package/dist/cjs/Scope.js +102 -0
  433. package/dist/cjs/Scope.js.map +1 -0
  434. package/dist/cjs/ScopedCache.js +31 -0
  435. package/dist/cjs/ScopedCache.js.map +1 -0
  436. package/dist/cjs/ScopedRef.js +49 -0
  437. package/dist/cjs/ScopedRef.js.map +1 -0
  438. package/dist/cjs/Secret.js +51 -0
  439. package/dist/cjs/Secret.js.map +1 -0
  440. package/dist/cjs/SingleProducerAsyncInput.js +14 -0
  441. package/dist/cjs/SingleProducerAsyncInput.js.map +1 -0
  442. package/dist/cjs/Sink.js +872 -0
  443. package/dist/cjs/Sink.js.map +1 -0
  444. package/dist/cjs/SortedMap.js +189 -0
  445. package/dist/cjs/SortedMap.js.map +1 -0
  446. package/dist/cjs/SortedSet.js +251 -0
  447. package/dist/cjs/SortedSet.js.map +1 -0
  448. package/dist/cjs/Stream.js +4112 -0
  449. package/dist/cjs/Stream.js.map +1 -0
  450. package/dist/cjs/StreamEmit.js +6 -0
  451. package/dist/cjs/StreamEmit.js.map +1 -0
  452. package/dist/cjs/StreamHaltStrategy.js +65 -0
  453. package/dist/cjs/StreamHaltStrategy.js.map +1 -0
  454. package/dist/cjs/Streamable.js +45 -0
  455. package/dist/cjs/Streamable.js.map +1 -0
  456. package/dist/cjs/String.js +680 -0
  457. package/dist/cjs/String.js.map +1 -0
  458. package/dist/cjs/Struct.js +202 -0
  459. package/dist/cjs/Struct.js.map +1 -0
  460. package/dist/cjs/Subscribable.js +67 -0
  461. package/dist/cjs/Subscribable.js.map +1 -0
  462. package/dist/cjs/SubscriptionRef.js +123 -0
  463. package/dist/cjs/SubscriptionRef.js.map +1 -0
  464. package/dist/cjs/Supervisor.js +115 -0
  465. package/dist/cjs/Supervisor.js.map +1 -0
  466. package/dist/cjs/Symbol.js +35 -0
  467. package/dist/cjs/Symbol.js.map +1 -0
  468. package/dist/cjs/SynchronizedRef.js +126 -0
  469. package/dist/cjs/SynchronizedRef.js.map +1 -0
  470. package/dist/cjs/TArray.js +314 -0
  471. package/dist/cjs/TArray.js.map +1 -0
  472. package/dist/cjs/TDeferred.js +40 -0
  473. package/dist/cjs/TDeferred.js.map +1 -0
  474. package/dist/cjs/TMap.js +286 -0
  475. package/dist/cjs/TMap.js.map +1 -0
  476. package/dist/cjs/TPriorityQueue.js +143 -0
  477. package/dist/cjs/TPriorityQueue.js.map +1 -0
  478. package/dist/cjs/TPubSub.js +138 -0
  479. package/dist/cjs/TPubSub.js.map +1 -0
  480. package/dist/cjs/TQueue.js +237 -0
  481. package/dist/cjs/TQueue.js.map +1 -0
  482. package/dist/cjs/TRandom.js +72 -0
  483. package/dist/cjs/TRandom.js.map +1 -0
  484. package/dist/cjs/TReentrantLock.js +149 -0
  485. package/dist/cjs/TReentrantLock.js.map +1 -0
  486. package/dist/cjs/TRef.js +83 -0
  487. package/dist/cjs/TRef.js.map +1 -0
  488. package/dist/cjs/TSemaphore.js +73 -0
  489. package/dist/cjs/TSemaphore.js.map +1 -0
  490. package/dist/cjs/TSet.js +208 -0
  491. package/dist/cjs/TSet.js.map +1 -0
  492. package/dist/cjs/TSubscriptionRef.js +95 -0
  493. package/dist/cjs/TSubscriptionRef.js.map +1 -0
  494. package/dist/cjs/Take.js +155 -0
  495. package/dist/cjs/Take.js.map +1 -0
  496. package/dist/cjs/TestAnnotation.js +105 -0
  497. package/dist/cjs/TestAnnotation.js.map +1 -0
  498. package/dist/cjs/TestAnnotationMap.js +91 -0
  499. package/dist/cjs/TestAnnotationMap.js.map +1 -0
  500. package/dist/cjs/TestAnnotations.js +71 -0
  501. package/dist/cjs/TestAnnotations.js.map +1 -0
  502. package/dist/cjs/TestClock.js +372 -0
  503. package/dist/cjs/TestClock.js.map +1 -0
  504. package/dist/cjs/TestConfig.js +22 -0
  505. package/dist/cjs/TestConfig.js.map +1 -0
  506. package/dist/cjs/TestContext.js +28 -0
  507. package/dist/cjs/TestContext.js.map +1 -0
  508. package/dist/cjs/TestLive.js +39 -0
  509. package/dist/cjs/TestLive.js.map +1 -0
  510. package/dist/cjs/TestServices.js +255 -0
  511. package/dist/cjs/TestServices.js.map +1 -0
  512. package/dist/cjs/TestSized.js +46 -0
  513. package/dist/cjs/TestSized.js.map +1 -0
  514. package/dist/cjs/Tracer.js +44 -0
  515. package/dist/cjs/Tracer.js.map +1 -0
  516. package/dist/cjs/Trie.js +724 -0
  517. package/dist/cjs/Trie.js.map +1 -0
  518. package/dist/cjs/Tuple.js +210 -0
  519. package/dist/cjs/Tuple.js.map +1 -0
  520. package/dist/cjs/Types.js +6 -0
  521. package/dist/cjs/Types.js.map +1 -0
  522. package/dist/cjs/Unify.js +16 -0
  523. package/dist/cjs/Unify.js.map +1 -0
  524. package/dist/cjs/UpstreamPullRequest.js +59 -0
  525. package/dist/cjs/UpstreamPullRequest.js.map +1 -0
  526. package/dist/cjs/UpstreamPullStrategy.js +59 -0
  527. package/dist/cjs/UpstreamPullStrategy.js.map +1 -0
  528. package/dist/cjs/Utils.js +374 -0
  529. package/dist/cjs/Utils.js.map +1 -0
  530. package/dist/cjs/index.js +395 -0
  531. package/dist/cjs/index.js.map +1 -0
  532. package/dist/cjs/internal/array.js +13 -0
  533. package/dist/cjs/internal/array.js.map +1 -0
  534. package/dist/cjs/internal/blockedRequests.js +369 -0
  535. package/dist/cjs/internal/blockedRequests.js.map +1 -0
  536. package/dist/cjs/internal/cache.js +500 -0
  537. package/dist/cjs/internal/cache.js.map +1 -0
  538. package/dist/cjs/internal/cause.js +867 -0
  539. package/dist/cjs/internal/cause.js.map +1 -0
  540. package/dist/cjs/internal/channel/channelExecutor.js +697 -0
  541. package/dist/cjs/internal/channel/channelExecutor.js.map +1 -0
  542. package/dist/cjs/internal/channel/channelState.js +77 -0
  543. package/dist/cjs/internal/channel/channelState.js.map +1 -0
  544. package/dist/cjs/internal/channel/childExecutorDecision.js +74 -0
  545. package/dist/cjs/internal/channel/childExecutorDecision.js.map +1 -0
  546. package/dist/cjs/internal/channel/continuation.js +57 -0
  547. package/dist/cjs/internal/channel/continuation.js.map +1 -0
  548. package/dist/cjs/internal/channel/mergeDecision.js +60 -0
  549. package/dist/cjs/internal/channel/mergeDecision.js.map +1 -0
  550. package/dist/cjs/internal/channel/mergeState.js +83 -0
  551. package/dist/cjs/internal/channel/mergeState.js.map +1 -0
  552. package/dist/cjs/internal/channel/mergeStrategy.js +58 -0
  553. package/dist/cjs/internal/channel/mergeStrategy.js.map +1 -0
  554. package/dist/cjs/internal/channel/singleProducerAsyncInput.js +171 -0
  555. package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -0
  556. package/dist/cjs/internal/channel/subexecutor.js +163 -0
  557. package/dist/cjs/internal/channel/subexecutor.js.map +1 -0
  558. package/dist/cjs/internal/channel/upstreamPullRequest.js +64 -0
  559. package/dist/cjs/internal/channel/upstreamPullRequest.js.map +1 -0
  560. package/dist/cjs/internal/channel/upstreamPullStrategy.js +64 -0
  561. package/dist/cjs/internal/channel/upstreamPullStrategy.js.map +1 -0
  562. package/dist/cjs/internal/channel.js +738 -0
  563. package/dist/cjs/internal/channel.js.map +1 -0
  564. package/dist/cjs/internal/clock.js +85 -0
  565. package/dist/cjs/internal/clock.js.map +1 -0
  566. package/dist/cjs/internal/completedRequestMap.js +11 -0
  567. package/dist/cjs/internal/completedRequestMap.js.map +1 -0
  568. package/dist/cjs/internal/concurrency.js +37 -0
  569. package/dist/cjs/internal/concurrency.js.map +1 -0
  570. package/dist/cjs/internal/config.js +397 -0
  571. package/dist/cjs/internal/config.js.map +1 -0
  572. package/dist/cjs/internal/configError.js +284 -0
  573. package/dist/cjs/internal/configError.js.map +1 -0
  574. package/dist/cjs/internal/configProvider/pathPatch.js +83 -0
  575. package/dist/cjs/internal/configProvider/pathPatch.js.map +1 -0
  576. package/dist/cjs/internal/configProvider.js +443 -0
  577. package/dist/cjs/internal/configProvider.js.map +1 -0
  578. package/dist/cjs/internal/console.js +79 -0
  579. package/dist/cjs/internal/console.js.map +1 -0
  580. package/dist/cjs/internal/context.js +273 -0
  581. package/dist/cjs/internal/context.js.map +1 -0
  582. package/dist/cjs/internal/core-effect.js +872 -0
  583. package/dist/cjs/internal/core-effect.js.map +1 -0
  584. package/dist/cjs/internal/core-stream.js +258 -0
  585. package/dist/cjs/internal/core-stream.js.map +1 -0
  586. package/dist/cjs/internal/core.js +1713 -0
  587. package/dist/cjs/internal/core.js.map +1 -0
  588. package/dist/cjs/internal/data.js +37 -0
  589. package/dist/cjs/internal/data.js.map +1 -0
  590. package/dist/cjs/internal/dataSource.js +107 -0
  591. package/dist/cjs/internal/dataSource.js.map +1 -0
  592. package/dist/cjs/internal/dateTime.js +839 -0
  593. package/dist/cjs/internal/dateTime.js.map +1 -0
  594. package/dist/cjs/internal/defaultServices/console.js +99 -0
  595. package/dist/cjs/internal/defaultServices/console.js.map +1 -0
  596. package/dist/cjs/internal/defaultServices.js +92 -0
  597. package/dist/cjs/internal/defaultServices.js.map +1 -0
  598. package/dist/cjs/internal/deferred.js +36 -0
  599. package/dist/cjs/internal/deferred.js.map +1 -0
  600. package/dist/cjs/internal/differ/chunkPatch.js +139 -0
  601. package/dist/cjs/internal/differ/chunkPatch.js.map +1 -0
  602. package/dist/cjs/internal/differ/contextPatch.js +152 -0
  603. package/dist/cjs/internal/differ/contextPatch.js.map +1 -0
  604. package/dist/cjs/internal/differ/hashMapPatch.js +139 -0
  605. package/dist/cjs/internal/differ/hashMapPatch.js.map +1 -0
  606. package/dist/cjs/internal/differ/hashSetPatch.js +113 -0
  607. package/dist/cjs/internal/differ/hashSetPatch.js.map +1 -0
  608. package/dist/cjs/internal/differ/orPatch.js +184 -0
  609. package/dist/cjs/internal/differ/orPatch.js.map +1 -0
  610. package/dist/cjs/internal/differ/readonlyArrayPatch.js +138 -0
  611. package/dist/cjs/internal/differ/readonlyArrayPatch.js.map +1 -0
  612. package/dist/cjs/internal/differ.js +149 -0
  613. package/dist/cjs/internal/differ.js.map +1 -0
  614. package/dist/cjs/internal/doNotation.js +25 -0
  615. package/dist/cjs/internal/doNotation.js.map +1 -0
  616. package/dist/cjs/internal/effect/circular.js +420 -0
  617. package/dist/cjs/internal/effect/circular.js.map +1 -0
  618. package/dist/cjs/internal/effectable.js +120 -0
  619. package/dist/cjs/internal/effectable.js.map +1 -0
  620. package/dist/cjs/internal/either.js +100 -0
  621. package/dist/cjs/internal/either.js.map +1 -0
  622. package/dist/cjs/internal/encoding/base64.js +81 -0
  623. package/dist/cjs/internal/encoding/base64.js.map +1 -0
  624. package/dist/cjs/internal/encoding/base64Url.js +30 -0
  625. package/dist/cjs/internal/encoding/base64Url.js.map +1 -0
  626. package/dist/cjs/internal/encoding/common.js +48 -0
  627. package/dist/cjs/internal/encoding/common.js.map +1 -0
  628. package/dist/cjs/internal/encoding/hex.js +57 -0
  629. package/dist/cjs/internal/encoding/hex.js.map +1 -0
  630. package/dist/cjs/internal/errors.js +13 -0
  631. package/dist/cjs/internal/errors.js.map +1 -0
  632. package/dist/cjs/internal/executionPlan.js +68 -0
  633. package/dist/cjs/internal/executionPlan.js.map +1 -0
  634. package/dist/cjs/internal/executionStrategy.js +54 -0
  635. package/dist/cjs/internal/executionStrategy.js.map +1 -0
  636. package/dist/cjs/internal/fiber.js +279 -0
  637. package/dist/cjs/internal/fiber.js.map +1 -0
  638. package/dist/cjs/internal/fiberId.js +239 -0
  639. package/dist/cjs/internal/fiberId.js.map +1 -0
  640. package/dist/cjs/internal/fiberMessage.js +38 -0
  641. package/dist/cjs/internal/fiberMessage.js.map +1 -0
  642. package/dist/cjs/internal/fiberRefs/patch.js +115 -0
  643. package/dist/cjs/internal/fiberRefs/patch.js.map +1 -0
  644. package/dist/cjs/internal/fiberRefs.js +203 -0
  645. package/dist/cjs/internal/fiberRefs.js.map +1 -0
  646. package/dist/cjs/internal/fiberRuntime.js +2207 -0
  647. package/dist/cjs/internal/fiberRuntime.js.map +1 -0
  648. package/dist/cjs/internal/fiberScope.js +52 -0
  649. package/dist/cjs/internal/fiberScope.js.map +1 -0
  650. package/dist/cjs/internal/fiberStatus.js +85 -0
  651. package/dist/cjs/internal/fiberStatus.js.map +1 -0
  652. package/dist/cjs/internal/groupBy.js +222 -0
  653. package/dist/cjs/internal/groupBy.js.map +1 -0
  654. package/dist/cjs/internal/hashMap/array.js +56 -0
  655. package/dist/cjs/internal/hashMap/array.js.map +1 -0
  656. package/dist/cjs/internal/hashMap/bitwise.js +38 -0
  657. package/dist/cjs/internal/hashMap/bitwise.js.map +1 -0
  658. package/dist/cjs/internal/hashMap/config.js +17 -0
  659. package/dist/cjs/internal/hashMap/config.js.map +1 -0
  660. package/dist/cjs/internal/hashMap/keySet.js +12 -0
  661. package/dist/cjs/internal/hashMap/keySet.js.map +1 -0
  662. package/dist/cjs/internal/hashMap/node.js +268 -0
  663. package/dist/cjs/internal/hashMap/node.js.map +1 -0
  664. package/dist/cjs/internal/hashMap.js +379 -0
  665. package/dist/cjs/internal/hashMap.js.map +1 -0
  666. package/dist/cjs/internal/hashSet.js +198 -0
  667. package/dist/cjs/internal/hashSet.js.map +1 -0
  668. package/dist/cjs/internal/keyedPool.js +170 -0
  669. package/dist/cjs/internal/keyedPool.js.map +1 -0
  670. package/dist/cjs/internal/layer/circular.js +80 -0
  671. package/dist/cjs/internal/layer/circular.js.map +1 -0
  672. package/dist/cjs/internal/layer.js +595 -0
  673. package/dist/cjs/internal/layer.js.map +1 -0
  674. package/dist/cjs/internal/logSpan.js +26 -0
  675. package/dist/cjs/internal/logSpan.js.map +1 -0
  676. package/dist/cjs/internal/logger-circular.js +26 -0
  677. package/dist/cjs/internal/logger-circular.js.map +1 -0
  678. package/dist/cjs/internal/logger.js +381 -0
  679. package/dist/cjs/internal/logger.js.map +1 -0
  680. package/dist/cjs/internal/mailbox.js +462 -0
  681. package/dist/cjs/internal/mailbox.js.map +1 -0
  682. package/dist/cjs/internal/managedRuntime/circular.js +10 -0
  683. package/dist/cjs/internal/managedRuntime/circular.js.map +1 -0
  684. package/dist/cjs/internal/managedRuntime.js +95 -0
  685. package/dist/cjs/internal/managedRuntime.js.map +1 -0
  686. package/dist/cjs/internal/matcher.js +320 -0
  687. package/dist/cjs/internal/matcher.js.map +1 -0
  688. package/dist/cjs/internal/metric/boundaries.js +53 -0
  689. package/dist/cjs/internal/metric/boundaries.js.map +1 -0
  690. package/dist/cjs/internal/metric/hook.js +388 -0
  691. package/dist/cjs/internal/metric/hook.js.map +1 -0
  692. package/dist/cjs/internal/metric/key.js +73 -0
  693. package/dist/cjs/internal/metric/key.js.map +1 -0
  694. package/dist/cjs/internal/metric/keyType.js +188 -0
  695. package/dist/cjs/internal/metric/keyType.js.map +1 -0
  696. package/dist/cjs/internal/metric/label.js +45 -0
  697. package/dist/cjs/internal/metric/label.js.map +1 -0
  698. package/dist/cjs/internal/metric/pair.js +40 -0
  699. package/dist/cjs/internal/metric/pair.js.map +1 -0
  700. package/dist/cjs/internal/metric/polling.js +80 -0
  701. package/dist/cjs/internal/metric/polling.js.map +1 -0
  702. package/dist/cjs/internal/metric/registry.js +113 -0
  703. package/dist/cjs/internal/metric/registry.js.map +1 -0
  704. package/dist/cjs/internal/metric/state.js +201 -0
  705. package/dist/cjs/internal/metric/state.js.map +1 -0
  706. package/dist/cjs/internal/metric.js +204 -0
  707. package/dist/cjs/internal/metric.js.map +1 -0
  708. package/dist/cjs/internal/opCodes/cause.js +19 -0
  709. package/dist/cjs/internal/opCodes/cause.js.map +1 -0
  710. package/dist/cjs/internal/opCodes/channel.js +35 -0
  711. package/dist/cjs/internal/opCodes/channel.js.map +1 -0
  712. package/dist/cjs/internal/opCodes/channelChildExecutorDecision.js +13 -0
  713. package/dist/cjs/internal/opCodes/channelChildExecutorDecision.js.map +1 -0
  714. package/dist/cjs/internal/opCodes/channelMergeDecision.js +11 -0
  715. package/dist/cjs/internal/opCodes/channelMergeDecision.js.map +1 -0
  716. package/dist/cjs/internal/opCodes/channelMergeState.js +13 -0
  717. package/dist/cjs/internal/opCodes/channelMergeState.js.map +1 -0
  718. package/dist/cjs/internal/opCodes/channelMergeStrategy.js +11 -0
  719. package/dist/cjs/internal/opCodes/channelMergeStrategy.js.map +1 -0
  720. package/dist/cjs/internal/opCodes/channelState.js +15 -0
  721. package/dist/cjs/internal/opCodes/channelState.js.map +1 -0
  722. package/dist/cjs/internal/opCodes/channelUpstreamPullRequest.js +11 -0
  723. package/dist/cjs/internal/opCodes/channelUpstreamPullRequest.js.map +1 -0
  724. package/dist/cjs/internal/opCodes/channelUpstreamPullStrategy.js +11 -0
  725. package/dist/cjs/internal/opCodes/channelUpstreamPullStrategy.js.map +1 -0
  726. package/dist/cjs/internal/opCodes/config.js +29 -0
  727. package/dist/cjs/internal/opCodes/config.js.map +1 -0
  728. package/dist/cjs/internal/opCodes/configError.js +19 -0
  729. package/dist/cjs/internal/opCodes/configError.js.map +1 -0
  730. package/dist/cjs/internal/opCodes/continuation.js +11 -0
  731. package/dist/cjs/internal/opCodes/continuation.js.map +1 -0
  732. package/dist/cjs/internal/opCodes/deferred.js +11 -0
  733. package/dist/cjs/internal/opCodes/deferred.js.map +1 -0
  734. package/dist/cjs/internal/opCodes/effect.js +37 -0
  735. package/dist/cjs/internal/opCodes/effect.js.map +1 -0
  736. package/dist/cjs/internal/opCodes/layer.js +27 -0
  737. package/dist/cjs/internal/opCodes/layer.js.map +1 -0
  738. package/dist/cjs/internal/opCodes/streamHaltStrategy.js +15 -0
  739. package/dist/cjs/internal/opCodes/streamHaltStrategy.js.map +1 -0
  740. package/dist/cjs/internal/option.js +82 -0
  741. package/dist/cjs/internal/option.js.map +1 -0
  742. package/dist/cjs/internal/pool.js +288 -0
  743. package/dist/cjs/internal/pool.js.map +1 -0
  744. package/dist/cjs/internal/pubsub.js +1287 -0
  745. package/dist/cjs/internal/pubsub.js.map +1 -0
  746. package/dist/cjs/internal/query.js +102 -0
  747. package/dist/cjs/internal/query.js.map +1 -0
  748. package/dist/cjs/internal/queue.js +518 -0
  749. package/dist/cjs/internal/queue.js.map +1 -0
  750. package/dist/cjs/internal/random.js +128 -0
  751. package/dist/cjs/internal/random.js.map +1 -0
  752. package/dist/cjs/internal/rateLimiter.js +52 -0
  753. package/dist/cjs/internal/rateLimiter.js.map +1 -0
  754. package/dist/cjs/internal/rcMap.js +182 -0
  755. package/dist/cjs/internal/rcMap.js.map +1 -0
  756. package/dist/cjs/internal/rcRef.js +139 -0
  757. package/dist/cjs/internal/rcRef.js.map +1 -0
  758. package/dist/cjs/internal/redBlackTree/iterator.js +199 -0
  759. package/dist/cjs/internal/redBlackTree/iterator.js.map +1 -0
  760. package/dist/cjs/internal/redBlackTree/node.js +60 -0
  761. package/dist/cjs/internal/redBlackTree/node.js.map +1 -0
  762. package/dist/cjs/internal/redBlackTree.js +1088 -0
  763. package/dist/cjs/internal/redBlackTree.js.map +1 -0
  764. package/dist/cjs/internal/redacted.js +67 -0
  765. package/dist/cjs/internal/redacted.js.map +1 -0
  766. package/dist/cjs/internal/ref.js +121 -0
  767. package/dist/cjs/internal/ref.js.map +1 -0
  768. package/dist/cjs/internal/reloadable.js +56 -0
  769. package/dist/cjs/internal/reloadable.js.map +1 -0
  770. package/dist/cjs/internal/request.js +104 -0
  771. package/dist/cjs/internal/request.js.map +1 -0
  772. package/dist/cjs/internal/resource.js +49 -0
  773. package/dist/cjs/internal/resource.js.map +1 -0
  774. package/dist/cjs/internal/ringBuffer.js +64 -0
  775. package/dist/cjs/internal/ringBuffer.js.map +1 -0
  776. package/dist/cjs/internal/runtime.js +321 -0
  777. package/dist/cjs/internal/runtime.js.map +1 -0
  778. package/dist/cjs/internal/runtimeFlags.js +126 -0
  779. package/dist/cjs/internal/runtimeFlags.js.map +1 -0
  780. package/dist/cjs/internal/runtimeFlagsPatch.js +52 -0
  781. package/dist/cjs/internal/runtimeFlagsPatch.js.map +1 -0
  782. package/dist/cjs/internal/schedule/decision.js +44 -0
  783. package/dist/cjs/internal/schedule/decision.js.map +1 -0
  784. package/dist/cjs/internal/schedule/interval.js +83 -0
  785. package/dist/cjs/internal/schedule/interval.js.map +1 -0
  786. package/dist/cjs/internal/schedule/intervals.js +134 -0
  787. package/dist/cjs/internal/schedule/intervals.js.map +1 -0
  788. package/dist/cjs/internal/schedule.js +900 -0
  789. package/dist/cjs/internal/schedule.js.map +1 -0
  790. package/dist/cjs/internal/schema/errors.js +113 -0
  791. package/dist/cjs/internal/schema/errors.js.map +1 -0
  792. package/dist/cjs/internal/schema/schemaId.js +49 -0
  793. package/dist/cjs/internal/schema/schemaId.js.map +1 -0
  794. package/dist/cjs/internal/schema/util.js +48 -0
  795. package/dist/cjs/internal/schema/util.js.map +1 -0
  796. package/dist/cjs/internal/scopedCache.js +398 -0
  797. package/dist/cjs/internal/scopedCache.js.map +1 -0
  798. package/dist/cjs/internal/scopedRef.js +53 -0
  799. package/dist/cjs/internal/scopedRef.js.map +1 -0
  800. package/dist/cjs/internal/secret.js +90 -0
  801. package/dist/cjs/internal/secret.js.map +1 -0
  802. package/dist/cjs/internal/singleShotGen.js +37 -0
  803. package/dist/cjs/internal/singleShotGen.js.map +1 -0
  804. package/dist/cjs/internal/sink.js +883 -0
  805. package/dist/cjs/internal/sink.js.map +1 -0
  806. package/dist/cjs/internal/stack.js +12 -0
  807. package/dist/cjs/internal/stack.js.map +1 -0
  808. package/dist/cjs/internal/stm/core.js +525 -0
  809. package/dist/cjs/internal/stm/core.js.map +1 -0
  810. package/dist/cjs/internal/stm/entry.js +57 -0
  811. package/dist/cjs/internal/stm/entry.js.map +1 -0
  812. package/dist/cjs/internal/stm/journal.js +104 -0
  813. package/dist/cjs/internal/stm/journal.js.map +1 -0
  814. package/dist/cjs/internal/stm/opCodes/stm.js +31 -0
  815. package/dist/cjs/internal/stm/opCodes/stm.js.map +1 -0
  816. package/dist/cjs/internal/stm/opCodes/stmState.js +13 -0
  817. package/dist/cjs/internal/stm/opCodes/stmState.js.map +1 -0
  818. package/dist/cjs/internal/stm/opCodes/strategy.js +13 -0
  819. package/dist/cjs/internal/stm/opCodes/strategy.js.map +1 -0
  820. package/dist/cjs/internal/stm/opCodes/tExit.js +17 -0
  821. package/dist/cjs/internal/stm/opCodes/tExit.js.map +1 -0
  822. package/dist/cjs/internal/stm/opCodes/tryCommit.js +11 -0
  823. package/dist/cjs/internal/stm/opCodes/tryCommit.js.map +1 -0
  824. package/dist/cjs/internal/stm/stm.js +514 -0
  825. package/dist/cjs/internal/stm/stm.js.map +1 -0
  826. package/dist/cjs/internal/stm/stmState.js +102 -0
  827. package/dist/cjs/internal/stm/stmState.js.map +1 -0
  828. package/dist/cjs/internal/stm/tArray.js +258 -0
  829. package/dist/cjs/internal/stm/tArray.js.map +1 -0
  830. package/dist/cjs/internal/stm/tDeferred.js +51 -0
  831. package/dist/cjs/internal/stm/tDeferred.js.map +1 -0
  832. package/dist/cjs/internal/stm/tExit.js +116 -0
  833. package/dist/cjs/internal/stm/tExit.js.map +1 -0
  834. package/dist/cjs/internal/stm/tMap.js +448 -0
  835. package/dist/cjs/internal/stm/tMap.js.map +1 -0
  836. package/dist/cjs/internal/stm/tPriorityQueue.js +164 -0
  837. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -0
  838. package/dist/cjs/internal/stm/tPubSub.js +397 -0
  839. package/dist/cjs/internal/stm/tPubSub.js.map +1 -0
  840. package/dist/cjs/internal/stm/tQueue.js +284 -0
  841. package/dist/cjs/internal/stm/tQueue.js.map +1 -0
  842. package/dist/cjs/internal/stm/tRandom.js +92 -0
  843. package/dist/cjs/internal/stm/tRandom.js.map +1 -0
  844. package/dist/cjs/internal/stm/tReentrantLock.js +215 -0
  845. package/dist/cjs/internal/stm/tReentrantLock.js.map +1 -0
  846. package/dist/cjs/internal/stm/tRef.js +110 -0
  847. package/dist/cjs/internal/stm/tRef.js.map +1 -0
  848. package/dist/cjs/internal/stm/tSemaphore.js +72 -0
  849. package/dist/cjs/internal/stm/tSemaphore.js.map +1 -0
  850. package/dist/cjs/internal/stm/tSet.js +104 -0
  851. package/dist/cjs/internal/stm/tSet.js.map +1 -0
  852. package/dist/cjs/internal/stm/tSubscriptionRef.js +177 -0
  853. package/dist/cjs/internal/stm/tSubscriptionRef.js.map +1 -0
  854. package/dist/cjs/internal/stm/tryCommit.js +25 -0
  855. package/dist/cjs/internal/stm/tryCommit.js.map +1 -0
  856. package/dist/cjs/internal/stm/txnId.js +18 -0
  857. package/dist/cjs/internal/stm/txnId.js.map +1 -0
  858. package/dist/cjs/internal/stm/versioned.js +15 -0
  859. package/dist/cjs/internal/stm/versioned.js.map +1 -0
  860. package/dist/cjs/internal/stream/debounceState.js +29 -0
  861. package/dist/cjs/internal/stream/debounceState.js.map +1 -0
  862. package/dist/cjs/internal/stream/emit.js +129 -0
  863. package/dist/cjs/internal/stream/emit.js.map +1 -0
  864. package/dist/cjs/internal/stream/haltStrategy.js +75 -0
  865. package/dist/cjs/internal/stream/haltStrategy.js.map +1 -0
  866. package/dist/cjs/internal/stream/handoff.js +65 -0
  867. package/dist/cjs/internal/stream/handoff.js.map +1 -0
  868. package/dist/cjs/internal/stream/handoffSignal.js +31 -0
  869. package/dist/cjs/internal/stream/handoffSignal.js.map +1 -0
  870. package/dist/cjs/internal/stream/pull.js +34 -0
  871. package/dist/cjs/internal/stream/pull.js.map +1 -0
  872. package/dist/cjs/internal/stream/sinkEndReason.js +19 -0
  873. package/dist/cjs/internal/stream/sinkEndReason.js.map +1 -0
  874. package/dist/cjs/internal/stream/zipAllState.js +41 -0
  875. package/dist/cjs/internal/stream/zipAllState.js.map +1 -0
  876. package/dist/cjs/internal/stream/zipChunksState.js +29 -0
  877. package/dist/cjs/internal/stream/zipChunksState.js.map +1 -0
  878. package/dist/cjs/internal/stream.js +2979 -0
  879. package/dist/cjs/internal/stream.js.map +1 -0
  880. package/dist/cjs/internal/string-utils.js +90 -0
  881. package/dist/cjs/internal/string-utils.js.map +1 -0
  882. package/dist/cjs/internal/subscriptionRef.js +72 -0
  883. package/dist/cjs/internal/subscriptionRef.js.map +1 -0
  884. package/dist/cjs/internal/supervisor/patch.js +135 -0
  885. package/dist/cjs/internal/supervisor/patch.js.map +1 -0
  886. package/dist/cjs/internal/supervisor.js +222 -0
  887. package/dist/cjs/internal/supervisor.js.map +1 -0
  888. package/dist/cjs/internal/synchronizedRef.js +51 -0
  889. package/dist/cjs/internal/synchronizedRef.js.map +1 -0
  890. package/dist/cjs/internal/take.js +130 -0
  891. package/dist/cjs/internal/take.js.map +1 -0
  892. package/dist/cjs/internal/testing/sleep.js +14 -0
  893. package/dist/cjs/internal/testing/sleep.js.map +1 -0
  894. package/dist/cjs/internal/testing/suspendedWarningData.js +58 -0
  895. package/dist/cjs/internal/testing/suspendedWarningData.js.map +1 -0
  896. package/dist/cjs/internal/testing/warningData.js +59 -0
  897. package/dist/cjs/internal/testing/warningData.js.map +1 -0
  898. package/dist/cjs/internal/tracer.js +134 -0
  899. package/dist/cjs/internal/tracer.js.map +1 -0
  900. package/dist/cjs/internal/trie.js +564 -0
  901. package/dist/cjs/internal/trie.js.map +1 -0
  902. package/dist/cjs/internal/version.js +14 -0
  903. package/dist/cjs/internal/version.js.map +1 -0
  904. package/dist/dts/Arbitrary.d.ts +69 -0
  905. package/dist/dts/Arbitrary.d.ts.map +1 -0
  906. package/dist/dts/Array.d.ts +5922 -0
  907. package/dist/dts/Array.d.ts.map +1 -0
  908. package/dist/dts/BigDecimal.d.ts +1483 -0
  909. package/dist/dts/BigDecimal.d.ts.map +1 -0
  910. package/dist/dts/BigInt.d.ts +1033 -0
  911. package/dist/dts/BigInt.d.ts.map +1 -0
  912. package/dist/dts/Boolean.d.ts +523 -0
  913. package/dist/dts/Boolean.d.ts.map +1 -0
  914. package/dist/dts/Brand.d.ts +234 -0
  915. package/dist/dts/Brand.d.ts.map +1 -0
  916. package/dist/dts/Cache.d.ts +241 -0
  917. package/dist/dts/Cache.d.ts.map +1 -0
  918. package/dist/dts/Cause.d.ts +1928 -0
  919. package/dist/dts/Cause.d.ts.map +1 -0
  920. package/dist/dts/Channel.d.ts +1989 -0
  921. package/dist/dts/Channel.d.ts.map +1 -0
  922. package/dist/dts/ChildExecutorDecision.d.ts +135 -0
  923. package/dist/dts/ChildExecutorDecision.d.ts.map +1 -0
  924. package/dist/dts/Chunk.d.ts +1709 -0
  925. package/dist/dts/Chunk.d.ts.map +1 -0
  926. package/dist/dts/Clock.d.ts +97 -0
  927. package/dist/dts/Clock.d.ts.map +1 -0
  928. package/dist/dts/Config.d.ts +667 -0
  929. package/dist/dts/Config.d.ts.map +1 -0
  930. package/dist/dts/ConfigError.d.ts +238 -0
  931. package/dist/dts/ConfigError.d.ts.map +1 -0
  932. package/dist/dts/ConfigProvider.d.ts +372 -0
  933. package/dist/dts/ConfigProvider.d.ts.map +1 -0
  934. package/dist/dts/ConfigProviderPathPatch.d.ts +118 -0
  935. package/dist/dts/ConfigProviderPathPatch.d.ts.map +1 -0
  936. package/dist/dts/Console.d.ts +224 -0
  937. package/dist/dts/Console.d.ts.map +1 -0
  938. package/dist/dts/Context.d.ts +823 -0
  939. package/dist/dts/Context.d.ts.map +1 -0
  940. package/dist/dts/Cron.d.ts +226 -0
  941. package/dist/dts/Cron.d.ts.map +1 -0
  942. package/dist/dts/Data.d.ts +613 -0
  943. package/dist/dts/Data.d.ts.map +1 -0
  944. package/dist/dts/DateTime.d.ts +2417 -0
  945. package/dist/dts/DateTime.d.ts.map +1 -0
  946. package/dist/dts/DefaultServices.d.ts +26 -0
  947. package/dist/dts/DefaultServices.d.ts.map +1 -0
  948. package/dist/dts/Deferred.d.ts +437 -0
  949. package/dist/dts/Deferred.d.ts.map +1 -0
  950. package/dist/dts/Differ.d.ts +420 -0
  951. package/dist/dts/Differ.d.ts.map +1 -0
  952. package/dist/dts/Duration.d.ts +557 -0
  953. package/dist/dts/Duration.d.ts.map +1 -0
  954. package/dist/dts/Effect.d.ts +26986 -0
  955. package/dist/dts/Effect.d.ts.map +1 -0
  956. package/dist/dts/Effectable.d.ts +93 -0
  957. package/dist/dts/Effectable.d.ts.map +1 -0
  958. package/dist/dts/Either.d.ts +1431 -0
  959. package/dist/dts/Either.d.ts.map +1 -0
  960. package/dist/dts/Encoding.d.ts +160 -0
  961. package/dist/dts/Encoding.d.ts.map +1 -0
  962. package/dist/dts/Equal.d.ts +34 -0
  963. package/dist/dts/Equal.d.ts.map +1 -0
  964. package/dist/dts/Equivalence.d.ts +158 -0
  965. package/dist/dts/Equivalence.d.ts.map +1 -0
  966. package/dist/dts/ExecutionPlan.d.ts +210 -0
  967. package/dist/dts/ExecutionPlan.d.ts.map +1 -0
  968. package/dist/dts/ExecutionStrategy.d.ts +122 -0
  969. package/dist/dts/ExecutionStrategy.d.ts.map +1 -0
  970. package/dist/dts/Exit.d.ts +663 -0
  971. package/dist/dts/Exit.d.ts.map +1 -0
  972. package/dist/dts/FastCheck.d.ts +9 -0
  973. package/dist/dts/FastCheck.d.ts.map +1 -0
  974. package/dist/dts/Fiber.d.ts +831 -0
  975. package/dist/dts/Fiber.d.ts.map +1 -0
  976. package/dist/dts/FiberHandle.d.ts +270 -0
  977. package/dist/dts/FiberHandle.d.ts.map +1 -0
  978. package/dist/dts/FiberId.d.ts +196 -0
  979. package/dist/dts/FiberId.d.ts.map +1 -0
  980. package/dist/dts/FiberMap.d.ts +368 -0
  981. package/dist/dts/FiberMap.d.ts.map +1 -0
  982. package/dist/dts/FiberRef.d.ts +422 -0
  983. package/dist/dts/FiberRef.d.ts.map +1 -0
  984. package/dist/dts/FiberRefs.d.ts +256 -0
  985. package/dist/dts/FiberRefs.d.ts.map +1 -0
  986. package/dist/dts/FiberRefsPatch.d.ts +125 -0
  987. package/dist/dts/FiberRefsPatch.d.ts.map +1 -0
  988. package/dist/dts/FiberSet.d.ts +236 -0
  989. package/dist/dts/FiberSet.d.ts.map +1 -0
  990. package/dist/dts/FiberStatus.d.ts +94 -0
  991. package/dist/dts/FiberStatus.d.ts.map +1 -0
  992. package/dist/dts/Function.d.ts +660 -0
  993. package/dist/dts/Function.d.ts.map +1 -0
  994. package/dist/dts/GlobalValue.d.ts +25 -0
  995. package/dist/dts/GlobalValue.d.ts.map +1 -0
  996. package/dist/dts/Graph.d.ts +1753 -0
  997. package/dist/dts/Graph.d.ts.map +1 -0
  998. package/dist/dts/GroupBy.d.ts +125 -0
  999. package/dist/dts/GroupBy.d.ts.map +1 -0
  1000. package/dist/dts/HKT.d.ts +41 -0
  1001. package/dist/dts/HKT.d.ts.map +1 -0
  1002. package/dist/dts/Hash.d.ts +79 -0
  1003. package/dist/dts/Hash.d.ts.map +1 -0
  1004. package/dist/dts/HashMap.d.ts +863 -0
  1005. package/dist/dts/HashMap.d.ts.map +1 -0
  1006. package/dist/dts/HashRing.d.ts +158 -0
  1007. package/dist/dts/HashRing.d.ts.map +1 -0
  1008. package/dist/dts/HashSet.d.ts +2271 -0
  1009. package/dist/dts/HashSet.d.ts.map +1 -0
  1010. package/dist/dts/Inspectable.d.ts +88 -0
  1011. package/dist/dts/Inspectable.d.ts.map +1 -0
  1012. package/dist/dts/Iterable.d.ts +1047 -0
  1013. package/dist/dts/Iterable.d.ts.map +1 -0
  1014. package/dist/dts/JSONSchema.d.ts +268 -0
  1015. package/dist/dts/JSONSchema.d.ts.map +1 -0
  1016. package/dist/dts/KeyedPool.d.ts +182 -0
  1017. package/dist/dts/KeyedPool.d.ts.map +1 -0
  1018. package/dist/dts/Layer.d.ts +1374 -0
  1019. package/dist/dts/Layer.d.ts.map +1 -0
  1020. package/dist/dts/LayerMap.d.ts +265 -0
  1021. package/dist/dts/LayerMap.d.ts.map +1 -0
  1022. package/dist/dts/List.d.ts +937 -0
  1023. package/dist/dts/List.d.ts.map +1 -0
  1024. package/dist/dts/LogLevel.d.ts +333 -0
  1025. package/dist/dts/LogLevel.d.ts.map +1 -0
  1026. package/dist/dts/LogSpan.d.ts +19 -0
  1027. package/dist/dts/LogSpan.d.ts.map +1 -0
  1028. package/dist/dts/Logger.d.ts +795 -0
  1029. package/dist/dts/Logger.d.ts.map +1 -0
  1030. package/dist/dts/Mailbox.d.ts +274 -0
  1031. package/dist/dts/Mailbox.d.ts.map +1 -0
  1032. package/dist/dts/ManagedRuntime.d.ts +154 -0
  1033. package/dist/dts/ManagedRuntime.d.ts.map +1 -0
  1034. package/dist/dts/Match.d.ts +1140 -0
  1035. package/dist/dts/Match.d.ts.map +1 -0
  1036. package/dist/dts/MergeDecision.d.ts +86 -0
  1037. package/dist/dts/MergeDecision.d.ts.map +1 -0
  1038. package/dist/dts/MergeState.d.ts +130 -0
  1039. package/dist/dts/MergeState.d.ts.map +1 -0
  1040. package/dist/dts/MergeStrategy.d.ts +104 -0
  1041. package/dist/dts/MergeStrategy.d.ts.map +1 -0
  1042. package/dist/dts/Metric.d.ts +1042 -0
  1043. package/dist/dts/Metric.d.ts.map +1 -0
  1044. package/dist/dts/MetricBoundaries.d.ts +58 -0
  1045. package/dist/dts/MetricBoundaries.d.ts.map +1 -0
  1046. package/dist/dts/MetricHook.d.ts +155 -0
  1047. package/dist/dts/MetricHook.d.ts.map +1 -0
  1048. package/dist/dts/MetricKey.d.ts +222 -0
  1049. package/dist/dts/MetricKey.d.ts.map +1 -0
  1050. package/dist/dts/MetricKeyType.d.ts +224 -0
  1051. package/dist/dts/MetricKeyType.d.ts.map +1 -0
  1052. package/dist/dts/MetricLabel.d.ts +42 -0
  1053. package/dist/dts/MetricLabel.d.ts.map +1 -0
  1054. package/dist/dts/MetricPair.d.ts +54 -0
  1055. package/dist/dts/MetricPair.d.ts.map +1 -0
  1056. package/dist/dts/MetricPolling.d.ts +151 -0
  1057. package/dist/dts/MetricPolling.d.ts.map +1 -0
  1058. package/dist/dts/MetricRegistry.d.ts +34 -0
  1059. package/dist/dts/MetricRegistry.d.ts.map +1 -0
  1060. package/dist/dts/MetricState.d.ts +238 -0
  1061. package/dist/dts/MetricState.d.ts.map +1 -0
  1062. package/dist/dts/Micro.d.ts +3440 -0
  1063. package/dist/dts/Micro.d.ts.map +1 -0
  1064. package/dist/dts/ModuleVersion.d.ts +11 -0
  1065. package/dist/dts/ModuleVersion.d.ts.map +1 -0
  1066. package/dist/dts/MutableHashMap.d.ts +170 -0
  1067. package/dist/dts/MutableHashMap.d.ts.map +1 -0
  1068. package/dist/dts/MutableHashSet.d.ts +547 -0
  1069. package/dist/dts/MutableHashSet.d.ts.map +1 -0
  1070. package/dist/dts/MutableList.d.ts +150 -0
  1071. package/dist/dts/MutableList.d.ts.map +1 -0
  1072. package/dist/dts/MutableQueue.d.ts +189 -0
  1073. package/dist/dts/MutableQueue.d.ts.map +1 -0
  1074. package/dist/dts/MutableRef.d.ts +175 -0
  1075. package/dist/dts/MutableRef.d.ts.map +1 -0
  1076. package/dist/dts/NonEmptyIterable.d.ts +21 -0
  1077. package/dist/dts/NonEmptyIterable.d.ts.map +1 -0
  1078. package/dist/dts/Number.d.ts +1361 -0
  1079. package/dist/dts/Number.d.ts.map +1 -0
  1080. package/dist/dts/Option.d.ts +3757 -0
  1081. package/dist/dts/Option.d.ts.map +1 -0
  1082. package/dist/dts/Order.d.ts +260 -0
  1083. package/dist/dts/Order.d.ts.map +1 -0
  1084. package/dist/dts/Ordering.d.ts +144 -0
  1085. package/dist/dts/Ordering.d.ts.map +1 -0
  1086. package/dist/dts/ParseResult.d.ts +560 -0
  1087. package/dist/dts/ParseResult.d.ts.map +1 -0
  1088. package/dist/dts/PartitionedSemaphore.d.ts +76 -0
  1089. package/dist/dts/PartitionedSemaphore.d.ts.map +1 -0
  1090. package/dist/dts/Pipeable.d.ts +65 -0
  1091. package/dist/dts/Pipeable.d.ts.map +1 -0
  1092. package/dist/dts/Pool.d.ts +201 -0
  1093. package/dist/dts/Pool.d.ts.map +1 -0
  1094. package/dist/dts/Predicate.d.ts +2197 -0
  1095. package/dist/dts/Predicate.d.ts.map +1 -0
  1096. package/dist/dts/Pretty.d.ts +26 -0
  1097. package/dist/dts/Pretty.d.ts.map +1 -0
  1098. package/dist/dts/PrimaryKey.d.ts +21 -0
  1099. package/dist/dts/PrimaryKey.d.ts.map +1 -0
  1100. package/dist/dts/PubSub.d.ts +197 -0
  1101. package/dist/dts/PubSub.d.ts.map +1 -0
  1102. package/dist/dts/Queue.d.ts +664 -0
  1103. package/dist/dts/Queue.d.ts.map +1 -0
  1104. package/dist/dts/Random.d.ts +183 -0
  1105. package/dist/dts/Random.d.ts.map +1 -0
  1106. package/dist/dts/RateLimiter.d.ts +134 -0
  1107. package/dist/dts/RateLimiter.d.ts.map +1 -0
  1108. package/dist/dts/RcMap.d.ts +231 -0
  1109. package/dist/dts/RcMap.d.ts.map +1 -0
  1110. package/dist/dts/RcRef.d.ts +111 -0
  1111. package/dist/dts/RcRef.d.ts.map +1 -0
  1112. package/dist/dts/Readable.d.ts +72 -0
  1113. package/dist/dts/Readable.d.ts.map +1 -0
  1114. package/dist/dts/Record.d.ts +1547 -0
  1115. package/dist/dts/Record.d.ts.map +1 -0
  1116. package/dist/dts/RedBlackTree.d.ts +676 -0
  1117. package/dist/dts/RedBlackTree.d.ts.map +1 -0
  1118. package/dist/dts/Redacted.d.ts +133 -0
  1119. package/dist/dts/Redacted.d.ts.map +1 -0
  1120. package/dist/dts/Ref.d.ts +250 -0
  1121. package/dist/dts/Ref.d.ts.map +1 -0
  1122. package/dist/dts/RegExp.d.ts +31 -0
  1123. package/dist/dts/RegExp.d.ts.map +1 -0
  1124. package/dist/dts/Reloadable.d.ts +102 -0
  1125. package/dist/dts/Reloadable.d.ts.map +1 -0
  1126. package/dist/dts/Request.d.ts +383 -0
  1127. package/dist/dts/Request.d.ts.map +1 -0
  1128. package/dist/dts/RequestBlock.d.ts +94 -0
  1129. package/dist/dts/RequestBlock.d.ts.map +1 -0
  1130. package/dist/dts/RequestResolver.d.ts +413 -0
  1131. package/dist/dts/RequestResolver.d.ts.map +1 -0
  1132. package/dist/dts/Resource.d.ts +99 -0
  1133. package/dist/dts/Resource.d.ts.map +1 -0
  1134. package/dist/dts/Runtime.d.ts +578 -0
  1135. package/dist/dts/Runtime.d.ts.map +1 -0
  1136. package/dist/dts/RuntimeFlags.d.ts +397 -0
  1137. package/dist/dts/RuntimeFlags.d.ts.map +1 -0
  1138. package/dist/dts/RuntimeFlagsPatch.d.ts +273 -0
  1139. package/dist/dts/RuntimeFlagsPatch.d.ts.map +1 -0
  1140. package/dist/dts/STM.d.ts +2645 -0
  1141. package/dist/dts/STM.d.ts.map +1 -0
  1142. package/dist/dts/Schedule.d.ts +3509 -0
  1143. package/dist/dts/Schedule.d.ts.map +1 -0
  1144. package/dist/dts/ScheduleDecision.d.ts +50 -0
  1145. package/dist/dts/ScheduleDecision.d.ts.map +1 -0
  1146. package/dist/dts/ScheduleInterval.d.ts +204 -0
  1147. package/dist/dts/ScheduleInterval.d.ts.map +1 -0
  1148. package/dist/dts/ScheduleIntervals.d.ts +159 -0
  1149. package/dist/dts/ScheduleIntervals.d.ts.map +1 -0
  1150. package/dist/dts/Scheduler.d.ts +161 -0
  1151. package/dist/dts/Scheduler.d.ts.map +1 -0
  1152. package/dist/dts/Schema.d.ts +5094 -0
  1153. package/dist/dts/Schema.d.ts.map +1 -0
  1154. package/dist/dts/SchemaAST.d.ts +1360 -0
  1155. package/dist/dts/SchemaAST.d.ts.map +1 -0
  1156. package/dist/dts/Scope.d.ts +194 -0
  1157. package/dist/dts/Scope.d.ts.map +1 -0
  1158. package/dist/dts/ScopedCache.d.ts +127 -0
  1159. package/dist/dts/ScopedCache.d.ts.map +1 -0
  1160. package/dist/dts/ScopedRef.d.ts +125 -0
  1161. package/dist/dts/ScopedRef.d.ts.map +1 -0
  1162. package/dist/dts/Secret.d.ts +76 -0
  1163. package/dist/dts/Secret.d.ts.map +1 -0
  1164. package/dist/dts/SingleProducerAsyncInput.d.ts +57 -0
  1165. package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -0
  1166. package/dist/dts/Sink.d.ts +1616 -0
  1167. package/dist/dts/Sink.d.ts.map +1 -0
  1168. package/dist/dts/SortedMap.d.ts +234 -0
  1169. package/dist/dts/SortedMap.d.ts.map +1 -0
  1170. package/dist/dts/SortedSet.d.ts +333 -0
  1171. package/dist/dts/SortedSet.d.ts.map +1 -0
  1172. package/dist/dts/Stream.d.ts +10803 -0
  1173. package/dist/dts/Stream.d.ts.map +1 -0
  1174. package/dist/dts/StreamEmit.d.ts +117 -0
  1175. package/dist/dts/StreamEmit.d.ts.map +1 -0
  1176. package/dist/dts/StreamHaltStrategy.d.ts +116 -0
  1177. package/dist/dts/StreamHaltStrategy.d.ts.map +1 -0
  1178. package/dist/dts/Streamable.d.ts +27 -0
  1179. package/dist/dts/Streamable.d.ts.map +1 -0
  1180. package/dist/dts/String.d.ts +848 -0
  1181. package/dist/dts/String.d.ts.map +1 -0
  1182. package/dist/dts/Struct.d.ts +295 -0
  1183. package/dist/dts/Struct.d.ts.map +1 -0
  1184. package/dist/dts/Subscribable.d.ts +76 -0
  1185. package/dist/dts/Subscribable.d.ts.map +1 -0
  1186. package/dist/dts/SubscriptionRef.d.ts +384 -0
  1187. package/dist/dts/SubscriptionRef.d.ts.map +1 -0
  1188. package/dist/dts/Supervisor.d.ts +171 -0
  1189. package/dist/dts/Supervisor.d.ts.map +1 -0
  1190. package/dist/dts/Symbol.d.ts +26 -0
  1191. package/dist/dts/Symbol.d.ts.map +1 -0
  1192. package/dist/dts/SynchronizedRef.d.ts +378 -0
  1193. package/dist/dts/SynchronizedRef.d.ts.map +1 -0
  1194. package/dist/dts/TArray.d.ts +857 -0
  1195. package/dist/dts/TArray.d.ts.map +1 -0
  1196. package/dist/dts/TDeferred.d.ts +104 -0
  1197. package/dist/dts/TDeferred.d.ts.map +1 -0
  1198. package/dist/dts/TMap.d.ts +780 -0
  1199. package/dist/dts/TMap.d.ts.map +1 -0
  1200. package/dist/dts/TPriorityQueue.d.ts +250 -0
  1201. package/dist/dts/TPriorityQueue.d.ts.map +1 -0
  1202. package/dist/dts/TPubSub.d.ts +186 -0
  1203. package/dist/dts/TPubSub.d.ts.map +1 -0
  1204. package/dist/dts/TQueue.d.ts +492 -0
  1205. package/dist/dts/TQueue.d.ts.map +1 -0
  1206. package/dist/dts/TRandom.d.ts +108 -0
  1207. package/dist/dts/TRandom.d.ts.map +1 -0
  1208. package/dist/dts/TReentrantLock.d.ts +230 -0
  1209. package/dist/dts/TReentrantLock.d.ts.map +1 -0
  1210. package/dist/dts/TRef.d.ts +235 -0
  1211. package/dist/dts/TRef.d.ts.map +1 -0
  1212. package/dist/dts/TSemaphore.d.ts +145 -0
  1213. package/dist/dts/TSemaphore.d.ts.map +1 -0
  1214. package/dist/dts/TSet.d.ts +564 -0
  1215. package/dist/dts/TSet.d.ts.map +1 -0
  1216. package/dist/dts/TSubscriptionRef.d.ts +251 -0
  1217. package/dist/dts/TSubscriptionRef.d.ts.map +1 -0
  1218. package/dist/dts/Take.d.ts +271 -0
  1219. package/dist/dts/Take.d.ts.map +1 -0
  1220. package/dist/dts/TestAnnotation.d.ts +71 -0
  1221. package/dist/dts/TestAnnotation.d.ts.map +1 -0
  1222. package/dist/dts/TestAnnotationMap.d.ts +56 -0
  1223. package/dist/dts/TestAnnotationMap.d.ts.map +1 -0
  1224. package/dist/dts/TestAnnotations.d.ts +59 -0
  1225. package/dist/dts/TestAnnotations.d.ts.map +1 -0
  1226. package/dist/dts/TestClock.d.ts +147 -0
  1227. package/dist/dts/TestClock.d.ts.map +1 -0
  1228. package/dist/dts/TestConfig.d.ts +45 -0
  1229. package/dist/dts/TestConfig.d.ts.map +1 -0
  1230. package/dist/dts/TestContext.d.ts +15 -0
  1231. package/dist/dts/TestContext.d.ts.map +1 -0
  1232. package/dist/dts/TestLive.d.ts +35 -0
  1233. package/dist/dts/TestLive.d.ts.map +1 -0
  1234. package/dist/dts/TestServices.d.ts +231 -0
  1235. package/dist/dts/TestServices.d.ts.map +1 -0
  1236. package/dist/dts/TestSized.d.ts +36 -0
  1237. package/dist/dts/TestSized.d.ts.map +1 -0
  1238. package/dist/dts/Tracer.d.ts +152 -0
  1239. package/dist/dts/Tracer.d.ts.map +1 -0
  1240. package/dist/dts/Trie.d.ts +1828 -0
  1241. package/dist/dts/Trie.d.ts.map +1 -0
  1242. package/dist/dts/Tuple.d.ts +446 -0
  1243. package/dist/dts/Tuple.d.ts.map +1 -0
  1244. package/dist/dts/Types.d.ts +330 -0
  1245. package/dist/dts/Types.d.ts.map +1 -0
  1246. package/dist/dts/Unify.d.ts +75 -0
  1247. package/dist/dts/Unify.d.ts.map +1 -0
  1248. package/dist/dts/UpstreamPullRequest.d.ts +109 -0
  1249. package/dist/dts/UpstreamPullRequest.d.ts.map +1 -0
  1250. package/dist/dts/UpstreamPullStrategy.d.ts +110 -0
  1251. package/dist/dts/UpstreamPullStrategy.d.ts.map +1 -0
  1252. package/dist/dts/Utils.d.ts +283 -0
  1253. package/dist/dts/Utils.d.ts.map +1 -0
  1254. package/dist/dts/index.d.ts +1385 -0
  1255. package/dist/dts/index.d.ts.map +1 -0
  1256. package/dist/dts/internal/array.d.ts +5 -0
  1257. package/dist/dts/internal/array.d.ts.map +1 -0
  1258. package/dist/dts/internal/blockedRequests.d.ts +2 -0
  1259. package/dist/dts/internal/blockedRequests.d.ts.map +1 -0
  1260. package/dist/dts/internal/cache.d.ts +2 -0
  1261. package/dist/dts/internal/cache.d.ts.map +1 -0
  1262. package/dist/dts/internal/cause.d.ts +2 -0
  1263. package/dist/dts/internal/cause.d.ts.map +1 -0
  1264. package/dist/dts/internal/channel/channelExecutor.d.ts +3 -0
  1265. package/dist/dts/internal/channel/channelExecutor.d.ts.map +1 -0
  1266. package/dist/dts/internal/channel/channelState.d.ts +2 -0
  1267. package/dist/dts/internal/channel/channelState.d.ts.map +1 -0
  1268. package/dist/dts/internal/channel/childExecutorDecision.d.ts +2 -0
  1269. package/dist/dts/internal/channel/childExecutorDecision.d.ts.map +1 -0
  1270. package/dist/dts/internal/channel/continuation.d.ts +2 -0
  1271. package/dist/dts/internal/channel/continuation.d.ts.map +1 -0
  1272. package/dist/dts/internal/channel/mergeDecision.d.ts +2 -0
  1273. package/dist/dts/internal/channel/mergeDecision.d.ts.map +1 -0
  1274. package/dist/dts/internal/channel/mergeState.d.ts +2 -0
  1275. package/dist/dts/internal/channel/mergeState.d.ts.map +1 -0
  1276. package/dist/dts/internal/channel/mergeStrategy.d.ts +2 -0
  1277. package/dist/dts/internal/channel/mergeStrategy.d.ts.map +1 -0
  1278. package/dist/dts/internal/channel/singleProducerAsyncInput.d.ts +2 -0
  1279. package/dist/dts/internal/channel/singleProducerAsyncInput.d.ts.map +1 -0
  1280. package/dist/dts/internal/channel/subexecutor.d.ts +2 -0
  1281. package/dist/dts/internal/channel/subexecutor.d.ts.map +1 -0
  1282. package/dist/dts/internal/channel/upstreamPullRequest.d.ts +2 -0
  1283. package/dist/dts/internal/channel/upstreamPullRequest.d.ts.map +1 -0
  1284. package/dist/dts/internal/channel/upstreamPullStrategy.d.ts +2 -0
  1285. package/dist/dts/internal/channel/upstreamPullStrategy.d.ts.map +1 -0
  1286. package/dist/dts/internal/channel.d.ts +2 -0
  1287. package/dist/dts/internal/channel.d.ts.map +1 -0
  1288. package/dist/dts/internal/clock.d.ts +2 -0
  1289. package/dist/dts/internal/clock.d.ts.map +1 -0
  1290. package/dist/dts/internal/completedRequestMap.d.ts +2 -0
  1291. package/dist/dts/internal/completedRequestMap.d.ts.map +1 -0
  1292. package/dist/dts/internal/concurrency.d.ts +2 -0
  1293. package/dist/dts/internal/concurrency.d.ts.map +1 -0
  1294. package/dist/dts/internal/config.d.ts +2 -0
  1295. package/dist/dts/internal/config.d.ts.map +1 -0
  1296. package/dist/dts/internal/configError.d.ts +2 -0
  1297. package/dist/dts/internal/configError.d.ts.map +1 -0
  1298. package/dist/dts/internal/configProvider/pathPatch.d.ts +2 -0
  1299. package/dist/dts/internal/configProvider/pathPatch.d.ts.map +1 -0
  1300. package/dist/dts/internal/configProvider.d.ts +2 -0
  1301. package/dist/dts/internal/configProvider.d.ts.map +1 -0
  1302. package/dist/dts/internal/console.d.ts +2 -0
  1303. package/dist/dts/internal/console.d.ts.map +1 -0
  1304. package/dist/dts/internal/context.d.ts +2 -0
  1305. package/dist/dts/internal/context.d.ts.map +1 -0
  1306. package/dist/dts/internal/core-effect.d.ts +8 -0
  1307. package/dist/dts/internal/core-effect.d.ts.map +1 -0
  1308. package/dist/dts/internal/core-stream.d.ts +9 -0
  1309. package/dist/dts/internal/core-stream.d.ts.map +1 -0
  1310. package/dist/dts/internal/core.d.ts +9 -0
  1311. package/dist/dts/internal/core.d.ts.map +1 -0
  1312. package/dist/dts/internal/data.d.ts +2 -0
  1313. package/dist/dts/internal/data.d.ts.map +1 -0
  1314. package/dist/dts/internal/dataSource.d.ts +2 -0
  1315. package/dist/dts/internal/dataSource.d.ts.map +1 -0
  1316. package/dist/dts/internal/dateTime.d.ts +2 -0
  1317. package/dist/dts/internal/dateTime.d.ts.map +1 -0
  1318. package/dist/dts/internal/defaultServices/console.d.ts +2 -0
  1319. package/dist/dts/internal/defaultServices/console.d.ts.map +1 -0
  1320. package/dist/dts/internal/defaultServices.d.ts +10 -0
  1321. package/dist/dts/internal/defaultServices.d.ts.map +1 -0
  1322. package/dist/dts/internal/deferred.d.ts +2 -0
  1323. package/dist/dts/internal/deferred.d.ts.map +1 -0
  1324. package/dist/dts/internal/differ/chunkPatch.d.ts +2 -0
  1325. package/dist/dts/internal/differ/chunkPatch.d.ts.map +1 -0
  1326. package/dist/dts/internal/differ/contextPatch.d.ts +2 -0
  1327. package/dist/dts/internal/differ/contextPatch.d.ts.map +1 -0
  1328. package/dist/dts/internal/differ/hashMapPatch.d.ts +2 -0
  1329. package/dist/dts/internal/differ/hashMapPatch.d.ts.map +1 -0
  1330. package/dist/dts/internal/differ/hashSetPatch.d.ts +2 -0
  1331. package/dist/dts/internal/differ/hashSetPatch.d.ts.map +1 -0
  1332. package/dist/dts/internal/differ/orPatch.d.ts +2 -0
  1333. package/dist/dts/internal/differ/orPatch.d.ts.map +1 -0
  1334. package/dist/dts/internal/differ/readonlyArrayPatch.d.ts +2 -0
  1335. package/dist/dts/internal/differ/readonlyArrayPatch.d.ts.map +1 -0
  1336. package/dist/dts/internal/differ.d.ts +2 -0
  1337. package/dist/dts/internal/differ.d.ts.map +1 -0
  1338. package/dist/dts/internal/doNotation.d.ts +2 -0
  1339. package/dist/dts/internal/doNotation.d.ts.map +1 -0
  1340. package/dist/dts/internal/effect/circular.d.ts +2 -0
  1341. package/dist/dts/internal/effect/circular.d.ts.map +1 -0
  1342. package/dist/dts/internal/effectable.d.ts +2 -0
  1343. package/dist/dts/internal/effectable.d.ts.map +1 -0
  1344. package/dist/dts/internal/either.d.ts +5 -0
  1345. package/dist/dts/internal/either.d.ts.map +1 -0
  1346. package/dist/dts/internal/encoding/base64.d.ts +2 -0
  1347. package/dist/dts/internal/encoding/base64.d.ts.map +1 -0
  1348. package/dist/dts/internal/encoding/base64Url.d.ts +2 -0
  1349. package/dist/dts/internal/encoding/base64Url.d.ts.map +1 -0
  1350. package/dist/dts/internal/encoding/common.d.ts +5 -0
  1351. package/dist/dts/internal/encoding/common.d.ts.map +1 -0
  1352. package/dist/dts/internal/encoding/hex.d.ts +2 -0
  1353. package/dist/dts/internal/encoding/hex.d.ts.map +1 -0
  1354. package/dist/dts/internal/errors.d.ts +5 -0
  1355. package/dist/dts/internal/errors.d.ts.map +1 -0
  1356. package/dist/dts/internal/executionPlan.d.ts +2 -0
  1357. package/dist/dts/internal/executionPlan.d.ts.map +1 -0
  1358. package/dist/dts/internal/executionStrategy.d.ts +2 -0
  1359. package/dist/dts/internal/executionStrategy.d.ts.map +1 -0
  1360. package/dist/dts/internal/fiber.d.ts +6 -0
  1361. package/dist/dts/internal/fiber.d.ts.map +1 -0
  1362. package/dist/dts/internal/fiberId.d.ts +2 -0
  1363. package/dist/dts/internal/fiberId.d.ts.map +1 -0
  1364. package/dist/dts/internal/fiberMessage.d.ts +2 -0
  1365. package/dist/dts/internal/fiberMessage.d.ts.map +1 -0
  1366. package/dist/dts/internal/fiberRefs/patch.d.ts +2 -0
  1367. package/dist/dts/internal/fiberRefs/patch.d.ts.map +1 -0
  1368. package/dist/dts/internal/fiberRefs.d.ts +2 -0
  1369. package/dist/dts/internal/fiberRefs.d.ts.map +1 -0
  1370. package/dist/dts/internal/fiberRuntime.d.ts +7 -0
  1371. package/dist/dts/internal/fiberRuntime.d.ts.map +1 -0
  1372. package/dist/dts/internal/fiberScope.d.ts +18 -0
  1373. package/dist/dts/internal/fiberScope.d.ts.map +1 -0
  1374. package/dist/dts/internal/fiberStatus.d.ts +2 -0
  1375. package/dist/dts/internal/fiberStatus.d.ts.map +1 -0
  1376. package/dist/dts/internal/groupBy.d.ts +2 -0
  1377. package/dist/dts/internal/groupBy.d.ts.map +1 -0
  1378. package/dist/dts/internal/hashMap/array.d.ts +2 -0
  1379. package/dist/dts/internal/hashMap/array.d.ts.map +1 -0
  1380. package/dist/dts/internal/hashMap/bitwise.d.ts +2 -0
  1381. package/dist/dts/internal/hashMap/bitwise.d.ts.map +1 -0
  1382. package/dist/dts/internal/hashMap/config.d.ts +2 -0
  1383. package/dist/dts/internal/hashMap/config.d.ts.map +1 -0
  1384. package/dist/dts/internal/hashMap/keySet.d.ts +2 -0
  1385. package/dist/dts/internal/hashMap/keySet.d.ts.map +1 -0
  1386. package/dist/dts/internal/hashMap/node.d.ts +2 -0
  1387. package/dist/dts/internal/hashMap/node.d.ts.map +1 -0
  1388. package/dist/dts/internal/hashMap.d.ts +9 -0
  1389. package/dist/dts/internal/hashMap.d.ts.map +1 -0
  1390. package/dist/dts/internal/hashSet.d.ts +2 -0
  1391. package/dist/dts/internal/hashSet.d.ts.map +1 -0
  1392. package/dist/dts/internal/keyedPool.d.ts +2 -0
  1393. package/dist/dts/internal/keyedPool.d.ts.map +1 -0
  1394. package/dist/dts/internal/layer/circular.d.ts +2 -0
  1395. package/dist/dts/internal/layer/circular.d.ts.map +1 -0
  1396. package/dist/dts/internal/layer.d.ts +16 -0
  1397. package/dist/dts/internal/layer.d.ts.map +1 -0
  1398. package/dist/dts/internal/logSpan.d.ts +2 -0
  1399. package/dist/dts/internal/logSpan.d.ts.map +1 -0
  1400. package/dist/dts/internal/logger-circular.d.ts +2 -0
  1401. package/dist/dts/internal/logger-circular.d.ts.map +1 -0
  1402. package/dist/dts/internal/logger.d.ts +2 -0
  1403. package/dist/dts/internal/logger.d.ts.map +1 -0
  1404. package/dist/dts/internal/mailbox.d.ts +2 -0
  1405. package/dist/dts/internal/mailbox.d.ts.map +1 -0
  1406. package/dist/dts/internal/managedRuntime/circular.d.ts +2 -0
  1407. package/dist/dts/internal/managedRuntime/circular.d.ts.map +1 -0
  1408. package/dist/dts/internal/managedRuntime.d.ts +2 -0
  1409. package/dist/dts/internal/managedRuntime.d.ts.map +1 -0
  1410. package/dist/dts/internal/matcher.d.ts +2 -0
  1411. package/dist/dts/internal/matcher.d.ts.map +1 -0
  1412. package/dist/dts/internal/metric/boundaries.d.ts +2 -0
  1413. package/dist/dts/internal/metric/boundaries.d.ts.map +1 -0
  1414. package/dist/dts/internal/metric/hook.d.ts +2 -0
  1415. package/dist/dts/internal/metric/hook.d.ts.map +1 -0
  1416. package/dist/dts/internal/metric/key.d.ts +2 -0
  1417. package/dist/dts/internal/metric/key.d.ts.map +1 -0
  1418. package/dist/dts/internal/metric/keyType.d.ts +2 -0
  1419. package/dist/dts/internal/metric/keyType.d.ts.map +1 -0
  1420. package/dist/dts/internal/metric/label.d.ts +2 -0
  1421. package/dist/dts/internal/metric/label.d.ts.map +1 -0
  1422. package/dist/dts/internal/metric/pair.d.ts +2 -0
  1423. package/dist/dts/internal/metric/pair.d.ts.map +1 -0
  1424. package/dist/dts/internal/metric/polling.d.ts +2 -0
  1425. package/dist/dts/internal/metric/polling.d.ts.map +1 -0
  1426. package/dist/dts/internal/metric/registry.d.ts +2 -0
  1427. package/dist/dts/internal/metric/registry.d.ts.map +1 -0
  1428. package/dist/dts/internal/metric/state.d.ts +22 -0
  1429. package/dist/dts/internal/metric/state.d.ts.map +1 -0
  1430. package/dist/dts/internal/metric.d.ts +2 -0
  1431. package/dist/dts/internal/metric.d.ts.map +1 -0
  1432. package/dist/dts/internal/opCodes/cause.d.ts +2 -0
  1433. package/dist/dts/internal/opCodes/cause.d.ts.map +1 -0
  1434. package/dist/dts/internal/opCodes/channel.d.ts +2 -0
  1435. package/dist/dts/internal/opCodes/channel.d.ts.map +1 -0
  1436. package/dist/dts/internal/opCodes/channelChildExecutorDecision.d.ts +2 -0
  1437. package/dist/dts/internal/opCodes/channelChildExecutorDecision.d.ts.map +1 -0
  1438. package/dist/dts/internal/opCodes/channelMergeDecision.d.ts +2 -0
  1439. package/dist/dts/internal/opCodes/channelMergeDecision.d.ts.map +1 -0
  1440. package/dist/dts/internal/opCodes/channelMergeState.d.ts +2 -0
  1441. package/dist/dts/internal/opCodes/channelMergeState.d.ts.map +1 -0
  1442. package/dist/dts/internal/opCodes/channelMergeStrategy.d.ts +2 -0
  1443. package/dist/dts/internal/opCodes/channelMergeStrategy.d.ts.map +1 -0
  1444. package/dist/dts/internal/opCodes/channelState.d.ts +2 -0
  1445. package/dist/dts/internal/opCodes/channelState.d.ts.map +1 -0
  1446. package/dist/dts/internal/opCodes/channelUpstreamPullRequest.d.ts +2 -0
  1447. package/dist/dts/internal/opCodes/channelUpstreamPullRequest.d.ts.map +1 -0
  1448. package/dist/dts/internal/opCodes/channelUpstreamPullStrategy.d.ts +2 -0
  1449. package/dist/dts/internal/opCodes/channelUpstreamPullStrategy.d.ts.map +1 -0
  1450. package/dist/dts/internal/opCodes/config.d.ts +2 -0
  1451. package/dist/dts/internal/opCodes/config.d.ts.map +1 -0
  1452. package/dist/dts/internal/opCodes/configError.d.ts +2 -0
  1453. package/dist/dts/internal/opCodes/configError.d.ts.map +1 -0
  1454. package/dist/dts/internal/opCodes/continuation.d.ts +2 -0
  1455. package/dist/dts/internal/opCodes/continuation.d.ts.map +1 -0
  1456. package/dist/dts/internal/opCodes/deferred.d.ts +2 -0
  1457. package/dist/dts/internal/opCodes/deferred.d.ts.map +1 -0
  1458. package/dist/dts/internal/opCodes/effect.d.ts +2 -0
  1459. package/dist/dts/internal/opCodes/effect.d.ts.map +1 -0
  1460. package/dist/dts/internal/opCodes/layer.d.ts +2 -0
  1461. package/dist/dts/internal/opCodes/layer.d.ts.map +1 -0
  1462. package/dist/dts/internal/opCodes/streamHaltStrategy.d.ts +2 -0
  1463. package/dist/dts/internal/opCodes/streamHaltStrategy.d.ts.map +1 -0
  1464. package/dist/dts/internal/option.d.ts +5 -0
  1465. package/dist/dts/internal/option.d.ts.map +1 -0
  1466. package/dist/dts/internal/pool.d.ts +2 -0
  1467. package/dist/dts/internal/pool.d.ts.map +1 -0
  1468. package/dist/dts/internal/pubsub.d.ts +2 -0
  1469. package/dist/dts/internal/pubsub.d.ts.map +1 -0
  1470. package/dist/dts/internal/query.d.ts +2 -0
  1471. package/dist/dts/internal/query.d.ts.map +1 -0
  1472. package/dist/dts/internal/queue.d.ts +2 -0
  1473. package/dist/dts/internal/queue.d.ts.map +1 -0
  1474. package/dist/dts/internal/random.d.ts +3 -0
  1475. package/dist/dts/internal/random.d.ts.map +1 -0
  1476. package/dist/dts/internal/rateLimiter.d.ts +2 -0
  1477. package/dist/dts/internal/rateLimiter.d.ts.map +1 -0
  1478. package/dist/dts/internal/rcMap.d.ts +2 -0
  1479. package/dist/dts/internal/rcMap.d.ts.map +1 -0
  1480. package/dist/dts/internal/rcRef.d.ts +2 -0
  1481. package/dist/dts/internal/rcRef.d.ts.map +1 -0
  1482. package/dist/dts/internal/redBlackTree/iterator.d.ts +2 -0
  1483. package/dist/dts/internal/redBlackTree/iterator.d.ts.map +1 -0
  1484. package/dist/dts/internal/redBlackTree/node.d.ts +14 -0
  1485. package/dist/dts/internal/redBlackTree/node.d.ts.map +1 -0
  1486. package/dist/dts/internal/redBlackTree.d.ts +2 -0
  1487. package/dist/dts/internal/redBlackTree.d.ts.map +1 -0
  1488. package/dist/dts/internal/redacted.d.ts +2 -0
  1489. package/dist/dts/internal/redacted.d.ts.map +1 -0
  1490. package/dist/dts/internal/ref.d.ts +2 -0
  1491. package/dist/dts/internal/ref.d.ts.map +1 -0
  1492. package/dist/dts/internal/reloadable.d.ts +2 -0
  1493. package/dist/dts/internal/reloadable.d.ts.map +1 -0
  1494. package/dist/dts/internal/request.d.ts +2 -0
  1495. package/dist/dts/internal/request.d.ts.map +1 -0
  1496. package/dist/dts/internal/resource.d.ts +2 -0
  1497. package/dist/dts/internal/resource.d.ts.map +1 -0
  1498. package/dist/dts/internal/ringBuffer.d.ts +2 -0
  1499. package/dist/dts/internal/ringBuffer.d.ts.map +1 -0
  1500. package/dist/dts/internal/runtime.d.ts +2 -0
  1501. package/dist/dts/internal/runtime.d.ts.map +1 -0
  1502. package/dist/dts/internal/runtimeFlags.d.ts +3 -0
  1503. package/dist/dts/internal/runtimeFlags.d.ts.map +1 -0
  1504. package/dist/dts/internal/runtimeFlagsPatch.d.ts +2 -0
  1505. package/dist/dts/internal/runtimeFlagsPatch.d.ts.map +1 -0
  1506. package/dist/dts/internal/schedule/decision.d.ts +2 -0
  1507. package/dist/dts/internal/schedule/decision.d.ts.map +1 -0
  1508. package/dist/dts/internal/schedule/interval.d.ts +2 -0
  1509. package/dist/dts/internal/schedule/interval.d.ts.map +1 -0
  1510. package/dist/dts/internal/schedule/intervals.d.ts +2 -0
  1511. package/dist/dts/internal/schedule/intervals.d.ts.map +1 -0
  1512. package/dist/dts/internal/schedule.d.ts +2 -0
  1513. package/dist/dts/internal/schedule.d.ts.map +1 -0
  1514. package/dist/dts/internal/schema/errors.d.ts +2 -0
  1515. package/dist/dts/internal/schema/errors.d.ts.map +1 -0
  1516. package/dist/dts/internal/schema/schemaId.d.ts +2 -0
  1517. package/dist/dts/internal/schema/schemaId.d.ts.map +1 -0
  1518. package/dist/dts/internal/schema/util.d.ts +2 -0
  1519. package/dist/dts/internal/schema/util.d.ts.map +1 -0
  1520. package/dist/dts/internal/scopedCache.d.ts +2 -0
  1521. package/dist/dts/internal/scopedCache.d.ts.map +1 -0
  1522. package/dist/dts/internal/scopedRef.d.ts +2 -0
  1523. package/dist/dts/internal/scopedRef.d.ts.map +1 -0
  1524. package/dist/dts/internal/secret.d.ts +2 -0
  1525. package/dist/dts/internal/secret.d.ts.map +1 -0
  1526. package/dist/dts/internal/singleShotGen.d.ts +2 -0
  1527. package/dist/dts/internal/singleShotGen.d.ts.map +1 -0
  1528. package/dist/dts/internal/sink.d.ts +2 -0
  1529. package/dist/dts/internal/sink.d.ts.map +1 -0
  1530. package/dist/dts/internal/stack.d.ts +2 -0
  1531. package/dist/dts/internal/stack.d.ts.map +1 -0
  1532. package/dist/dts/internal/stm/core.d.ts +2 -0
  1533. package/dist/dts/internal/stm/core.d.ts.map +1 -0
  1534. package/dist/dts/internal/stm/entry.d.ts +2 -0
  1535. package/dist/dts/internal/stm/entry.d.ts.map +1 -0
  1536. package/dist/dts/internal/stm/journal.d.ts +2 -0
  1537. package/dist/dts/internal/stm/journal.d.ts.map +1 -0
  1538. package/dist/dts/internal/stm/opCodes/stm.d.ts +2 -0
  1539. package/dist/dts/internal/stm/opCodes/stm.d.ts.map +1 -0
  1540. package/dist/dts/internal/stm/opCodes/stmState.d.ts +2 -0
  1541. package/dist/dts/internal/stm/opCodes/stmState.d.ts.map +1 -0
  1542. package/dist/dts/internal/stm/opCodes/strategy.d.ts +2 -0
  1543. package/dist/dts/internal/stm/opCodes/strategy.d.ts.map +1 -0
  1544. package/dist/dts/internal/stm/opCodes/tExit.d.ts +2 -0
  1545. package/dist/dts/internal/stm/opCodes/tExit.d.ts.map +1 -0
  1546. package/dist/dts/internal/stm/opCodes/tryCommit.d.ts +2 -0
  1547. package/dist/dts/internal/stm/opCodes/tryCommit.d.ts.map +1 -0
  1548. package/dist/dts/internal/stm/stm.d.ts +7 -0
  1549. package/dist/dts/internal/stm/stm.d.ts.map +1 -0
  1550. package/dist/dts/internal/stm/stmState.d.ts +2 -0
  1551. package/dist/dts/internal/stm/stmState.d.ts.map +1 -0
  1552. package/dist/dts/internal/stm/tArray.d.ts +2 -0
  1553. package/dist/dts/internal/stm/tArray.d.ts.map +1 -0
  1554. package/dist/dts/internal/stm/tDeferred.d.ts +2 -0
  1555. package/dist/dts/internal/stm/tDeferred.d.ts.map +1 -0
  1556. package/dist/dts/internal/stm/tExit.d.ts +5 -0
  1557. package/dist/dts/internal/stm/tExit.d.ts.map +1 -0
  1558. package/dist/dts/internal/stm/tMap.d.ts +2 -0
  1559. package/dist/dts/internal/stm/tMap.d.ts.map +1 -0
  1560. package/dist/dts/internal/stm/tPriorityQueue.d.ts +2 -0
  1561. package/dist/dts/internal/stm/tPriorityQueue.d.ts.map +1 -0
  1562. package/dist/dts/internal/stm/tPubSub.d.ts +2 -0
  1563. package/dist/dts/internal/stm/tPubSub.d.ts.map +1 -0
  1564. package/dist/dts/internal/stm/tQueue.d.ts +2 -0
  1565. package/dist/dts/internal/stm/tQueue.d.ts.map +1 -0
  1566. package/dist/dts/internal/stm/tRandom.d.ts +2 -0
  1567. package/dist/dts/internal/stm/tRandom.d.ts.map +1 -0
  1568. package/dist/dts/internal/stm/tReentrantLock.d.ts +2 -0
  1569. package/dist/dts/internal/stm/tReentrantLock.d.ts.map +1 -0
  1570. package/dist/dts/internal/stm/tRef.d.ts +4 -0
  1571. package/dist/dts/internal/stm/tRef.d.ts.map +1 -0
  1572. package/dist/dts/internal/stm/tSemaphore.d.ts +2 -0
  1573. package/dist/dts/internal/stm/tSemaphore.d.ts.map +1 -0
  1574. package/dist/dts/internal/stm/tSet.d.ts +2 -0
  1575. package/dist/dts/internal/stm/tSet.d.ts.map +1 -0
  1576. package/dist/dts/internal/stm/tSubscriptionRef.d.ts +2 -0
  1577. package/dist/dts/internal/stm/tSubscriptionRef.d.ts.map +1 -0
  1578. package/dist/dts/internal/stm/tryCommit.d.ts +2 -0
  1579. package/dist/dts/internal/stm/tryCommit.d.ts.map +1 -0
  1580. package/dist/dts/internal/stm/txnId.d.ts +2 -0
  1581. package/dist/dts/internal/stm/txnId.d.ts.map +1 -0
  1582. package/dist/dts/internal/stm/versioned.d.ts +2 -0
  1583. package/dist/dts/internal/stm/versioned.d.ts.map +1 -0
  1584. package/dist/dts/internal/stream/debounceState.d.ts +4 -0
  1585. package/dist/dts/internal/stream/debounceState.d.ts.map +1 -0
  1586. package/dist/dts/internal/stream/emit.d.ts +2 -0
  1587. package/dist/dts/internal/stream/emit.d.ts.map +1 -0
  1588. package/dist/dts/internal/stream/haltStrategy.d.ts +2 -0
  1589. package/dist/dts/internal/stream/haltStrategy.d.ts.map +1 -0
  1590. package/dist/dts/internal/stream/handoff.d.ts +2 -0
  1591. package/dist/dts/internal/stream/handoff.d.ts.map +1 -0
  1592. package/dist/dts/internal/stream/handoffSignal.d.ts +6 -0
  1593. package/dist/dts/internal/stream/handoffSignal.d.ts.map +1 -0
  1594. package/dist/dts/internal/stream/pull.d.ts +2 -0
  1595. package/dist/dts/internal/stream/pull.d.ts.map +1 -0
  1596. package/dist/dts/internal/stream/sinkEndReason.d.ts +2 -0
  1597. package/dist/dts/internal/stream/sinkEndReason.d.ts.map +1 -0
  1598. package/dist/dts/internal/stream/zipAllState.d.ts +2 -0
  1599. package/dist/dts/internal/stream/zipAllState.d.ts.map +1 -0
  1600. package/dist/dts/internal/stream/zipChunksState.d.ts +2 -0
  1601. package/dist/dts/internal/stream/zipChunksState.d.ts.map +1 -0
  1602. package/dist/dts/internal/stream.d.ts +29 -0
  1603. package/dist/dts/internal/stream.d.ts.map +1 -0
  1604. package/dist/dts/internal/string-utils.d.ts +7 -0
  1605. package/dist/dts/internal/string-utils.d.ts.map +1 -0
  1606. package/dist/dts/internal/subscriptionRef.d.ts +2 -0
  1607. package/dist/dts/internal/subscriptionRef.d.ts.map +1 -0
  1608. package/dist/dts/internal/supervisor/patch.d.ts +2 -0
  1609. package/dist/dts/internal/supervisor/patch.d.ts.map +1 -0
  1610. package/dist/dts/internal/supervisor.d.ts +2 -0
  1611. package/dist/dts/internal/supervisor.d.ts.map +1 -0
  1612. package/dist/dts/internal/synchronizedRef.d.ts +2 -0
  1613. package/dist/dts/internal/synchronizedRef.d.ts.map +1 -0
  1614. package/dist/dts/internal/take.d.ts +2 -0
  1615. package/dist/dts/internal/take.d.ts.map +1 -0
  1616. package/dist/dts/internal/testing/sleep.d.ts +2 -0
  1617. package/dist/dts/internal/testing/sleep.d.ts.map +1 -0
  1618. package/dist/dts/internal/testing/suspendedWarningData.d.ts +2 -0
  1619. package/dist/dts/internal/testing/suspendedWarningData.d.ts.map +1 -0
  1620. package/dist/dts/internal/testing/warningData.d.ts +2 -0
  1621. package/dist/dts/internal/testing/warningData.d.ts.map +1 -0
  1622. package/dist/dts/internal/tracer.d.ts +2 -0
  1623. package/dist/dts/internal/tracer.d.ts.map +1 -0
  1624. package/dist/dts/internal/trie.d.ts +2 -0
  1625. package/dist/dts/internal/trie.d.ts.map +1 -0
  1626. package/dist/dts/internal/version.d.ts +3 -0
  1627. package/dist/dts/internal/version.d.ts.map +1 -0
  1628. package/dist/esm/Arbitrary.js +798 -0
  1629. package/dist/esm/Arbitrary.js.map +1 -0
  1630. package/dist/esm/Array.js +2703 -0
  1631. package/dist/esm/Array.js.map +1 -0
  1632. package/dist/esm/BigDecimal.js +1087 -0
  1633. package/dist/esm/BigDecimal.js.map +1 -0
  1634. package/dist/esm/BigInt.js +548 -0
  1635. package/dist/esm/BigInt.js.map +1 -0
  1636. package/dist/esm/Boolean.js +240 -0
  1637. package/dist/esm/Boolean.js.map +1 -0
  1638. package/dist/esm/Brand.js +161 -0
  1639. package/dist/esm/Brand.js.map +1 -0
  1640. package/dist/esm/Cache.js +43 -0
  1641. package/dist/esm/Cache.js.map +1 -0
  1642. package/dist/esm/Cause.js +1004 -0
  1643. package/dist/esm/Cause.js.map +1 -0
  1644. package/dist/esm/Channel.js +887 -0
  1645. package/dist/esm/Channel.js.map +1 -0
  1646. package/dist/esm/ChildExecutorDecision.js +64 -0
  1647. package/dist/esm/ChildExecutorDecision.js.map +1 -0
  1648. package/dist/esm/Chunk.js +1083 -0
  1649. package/dist/esm/Chunk.js.map +1 -0
  1650. package/dist/esm/Clock.js +38 -0
  1651. package/dist/esm/Clock.js.map +1 -0
  1652. package/dist/esm/Config.js +321 -0
  1653. package/dist/esm/Config.js.map +1 -0
  1654. package/dist/esm/ConfigError.js +107 -0
  1655. package/dist/esm/ConfigError.js.map +1 -0
  1656. package/dist/esm/ConfigProvider.js +166 -0
  1657. package/dist/esm/ConfigProvider.js.map +1 -0
  1658. package/dist/esm/ConfigProviderPathPatch.js +30 -0
  1659. package/dist/esm/ConfigProviderPathPatch.js.map +1 -0
  1660. package/dist/esm/Console.js +118 -0
  1661. package/dist/esm/Console.js.map +1 -0
  1662. package/dist/esm/Context.js +360 -0
  1663. package/dist/esm/Context.js.map +1 -0
  1664. package/dist/esm/Cron.js +566 -0
  1665. package/dist/esm/Cron.js.map +1 -0
  1666. package/dist/esm/Data.js +305 -0
  1667. package/dist/esm/Data.js.map +1 -0
  1668. package/dist/esm/DateTime.js +1071 -0
  1669. package/dist/esm/DateTime.js.map +1 -0
  1670. package/dist/esm/DefaultServices.js +12 -0
  1671. package/dist/esm/DefaultServices.js.map +1 -0
  1672. package/dist/esm/Deferred.js +169 -0
  1673. package/dist/esm/Deferred.js.map +1 -0
  1674. package/dist/esm/Differ.js +132 -0
  1675. package/dist/esm/Differ.js.map +1 -0
  1676. package/dist/esm/Duration.js +702 -0
  1677. package/dist/esm/Duration.js.map +1 -0
  1678. package/dist/esm/Effect.js +10883 -0
  1679. package/dist/esm/Effect.js.map +1 -0
  1680. package/dist/esm/Effectable.js +49 -0
  1681. package/dist/esm/Effectable.js.map +1 -0
  1682. package/dist/esm/Either.js +688 -0
  1683. package/dist/esm/Either.js.map +1 -0
  1684. package/dist/esm/Encoding.js +136 -0
  1685. package/dist/esm/Encoding.js.map +1 -0
  1686. package/dist/esm/Equal.js +71 -0
  1687. package/dist/esm/Equal.js.map +1 -0
  1688. package/dist/esm/Equivalence.js +166 -0
  1689. package/dist/esm/Equivalence.js.map +1 -0
  1690. package/dist/esm/ExecutionPlan.js +99 -0
  1691. package/dist/esm/ExecutionPlan.js.map +1 -0
  1692. package/dist/esm/ExecutionStrategy.js +55 -0
  1693. package/dist/esm/ExecutionStrategy.js.map +1 -0
  1694. package/dist/esm/Exit.js +257 -0
  1695. package/dist/esm/Exit.js.map +1 -0
  1696. package/dist/esm/FastCheck.js +9 -0
  1697. package/dist/esm/FastCheck.js.map +1 -0
  1698. package/dist/esm/Fiber.js +350 -0
  1699. package/dist/esm/Fiber.js.map +1 -0
  1700. package/dist/esm/FiberHandle.js +316 -0
  1701. package/dist/esm/FiberHandle.js.map +1 -0
  1702. package/dist/esm/FiberId.js +115 -0
  1703. package/dist/esm/FiberId.js.map +1 -0
  1704. package/dist/esm/FiberMap.js +356 -0
  1705. package/dist/esm/FiberMap.js.map +1 -0
  1706. package/dist/esm/FiberRef.js +242 -0
  1707. package/dist/esm/FiberRef.js.map +1 -0
  1708. package/dist/esm/FiberRefs.js +92 -0
  1709. package/dist/esm/FiberRefs.js.map +1 -0
  1710. package/dist/esm/FiberRefsPatch.js +32 -0
  1711. package/dist/esm/FiberRefsPatch.js.map +1 -0
  1712. package/dist/esm/FiberSet.js +289 -0
  1713. package/dist/esm/FiberSet.js.map +1 -0
  1714. package/dist/esm/FiberStatus.js +52 -0
  1715. package/dist/esm/FiberStatus.js.map +1 -0
  1716. package/dist/esm/Function.js +467 -0
  1717. package/dist/esm/Function.js.map +1 -0
  1718. package/dist/esm/GlobalValue.js +52 -0
  1719. package/dist/esm/GlobalValue.js.map +1 -0
  1720. package/dist/esm/Graph.js +3019 -0
  1721. package/dist/esm/Graph.js.map +1 -0
  1722. package/dist/esm/GroupBy.js +39 -0
  1723. package/dist/esm/GroupBy.js.map +1 -0
  1724. package/dist/esm/HKT.js +2 -0
  1725. package/dist/esm/HKT.js.map +1 -0
  1726. package/dist/esm/Hash.js +166 -0
  1727. package/dist/esm/Hash.js.map +1 -0
  1728. package/dist/esm/HashMap.js +312 -0
  1729. package/dist/esm/HashMap.js.map +1 -0
  1730. package/dist/esm/HashRing.js +245 -0
  1731. package/dist/esm/HashRing.js.map +1 -0
  1732. package/dist/esm/HashSet.js +1253 -0
  1733. package/dist/esm/HashSet.js.map +1 -0
  1734. package/dist/esm/Inspectable.js +194 -0
  1735. package/dist/esm/Inspectable.js.map +1 -0
  1736. package/dist/esm/Iterable.js +987 -0
  1737. package/dist/esm/Iterable.js.map +1 -0
  1738. package/dist/esm/JSONSchema.js +715 -0
  1739. package/dist/esm/JSONSchema.js.map +1 -0
  1740. package/dist/esm/KeyedPool.js +76 -0
  1741. package/dist/esm/KeyedPool.js.map +1 -0
  1742. package/dist/esm/Layer.js +642 -0
  1743. package/dist/esm/Layer.js.map +1 -0
  1744. package/dist/esm/LayerMap.js +202 -0
  1745. package/dist/esm/LayerMap.js.map +1 -0
  1746. package/dist/esm/List.js +756 -0
  1747. package/dist/esm/List.js.map +1 -0
  1748. package/dist/esm/LogLevel.js +135 -0
  1749. package/dist/esm/LogLevel.js.map +1 -0
  1750. package/dist/esm/LogSpan.js +15 -0
  1751. package/dist/esm/LogSpan.js.map +1 -0
  1752. package/dist/esm/Logger.js +490 -0
  1753. package/dist/esm/Logger.js.map +1 -0
  1754. package/dist/esm/Mailbox.js +96 -0
  1755. package/dist/esm/Mailbox.js.map +1 -0
  1756. package/dist/esm/ManagedRuntime.js +42 -0
  1757. package/dist/esm/ManagedRuntime.js.map +1 -0
  1758. package/dist/esm/Match.js +828 -0
  1759. package/dist/esm/Match.js.map +1 -0
  1760. package/dist/esm/MergeDecision.js +35 -0
  1761. package/dist/esm/MergeDecision.js.map +1 -0
  1762. package/dist/esm/MergeState.js +58 -0
  1763. package/dist/esm/MergeState.js.map +1 -0
  1764. package/dist/esm/MergeStrategy.js +51 -0
  1765. package/dist/esm/MergeStrategy.js.map +1 -0
  1766. package/dist/esm/Metric.js +408 -0
  1767. package/dist/esm/Metric.js.map +1 -0
  1768. package/dist/esm/MetricBoundaries.js +33 -0
  1769. package/dist/esm/MetricBoundaries.js.map +1 -0
  1770. package/dist/esm/MetricHook.js +47 -0
  1771. package/dist/esm/MetricHook.js.map +1 -0
  1772. package/dist/esm/MetricKey.js +63 -0
  1773. package/dist/esm/MetricKey.js.map +1 -0
  1774. package/dist/esm/MetricKeyType.js +87 -0
  1775. package/dist/esm/MetricKeyType.js.map +1 -0
  1776. package/dist/esm/MetricLabel.js +17 -0
  1777. package/dist/esm/MetricLabel.js.map +1 -0
  1778. package/dist/esm/MetricPair.js +20 -0
  1779. package/dist/esm/MetricPair.js.map +1 -0
  1780. package/dist/esm/MetricPolling.js +59 -0
  1781. package/dist/esm/MetricPolling.js.map +1 -0
  1782. package/dist/esm/MetricRegistry.js +15 -0
  1783. package/dist/esm/MetricRegistry.js.map +1 -0
  1784. package/dist/esm/MetricState.js +87 -0
  1785. package/dist/esm/MetricState.js.map +1 -0
  1786. package/dist/esm/Micro.js +2528 -0
  1787. package/dist/esm/Micro.js.map +1 -0
  1788. package/dist/esm/ModuleVersion.js +17 -0
  1789. package/dist/esm/ModuleVersion.js.map +1 -0
  1790. package/dist/esm/MutableHashMap.js +299 -0
  1791. package/dist/esm/MutableHashMap.js.map +1 -0
  1792. package/dist/esm/MutableHashSet.js +511 -0
  1793. package/dist/esm/MutableHashSet.js.map +1 -0
  1794. package/dist/esm/MutableList.js +240 -0
  1795. package/dist/esm/MutableList.js.map +1 -0
  1796. package/dist/esm/MutableQueue.js +159 -0
  1797. package/dist/esm/MutableQueue.js.map +1 -0
  1798. package/dist/esm/MutableRef.js +127 -0
  1799. package/dist/esm/MutableRef.js.map +1 -0
  1800. package/dist/esm/NonEmptyIterable.js +16 -0
  1801. package/dist/esm/NonEmptyIterable.js.map +1 -0
  1802. package/dist/esm/Number.js +887 -0
  1803. package/dist/esm/Number.js.map +1 -0
  1804. package/dist/esm/Option.js +1785 -0
  1805. package/dist/esm/Option.js.map +1 -0
  1806. package/dist/esm/Order.js +252 -0
  1807. package/dist/esm/Order.js.map +1 -0
  1808. package/dist/esm/Ordering.js +72 -0
  1809. package/dist/esm/Ordering.js.map +1 -0
  1810. package/dist/esm/ParseResult.js +1556 -0
  1811. package/dist/esm/ParseResult.js.map +1 -0
  1812. package/dist/esm/PartitionedSemaphore.js +137 -0
  1813. package/dist/esm/PartitionedSemaphore.js.map +1 -0
  1814. package/dist/esm/Pipeable.js +62 -0
  1815. package/dist/esm/Pipeable.js.map +1 -0
  1816. package/dist/esm/Pool.js +100 -0
  1817. package/dist/esm/Pool.js.map +1 -0
  1818. package/dist/esm/Predicate.js +1117 -0
  1819. package/dist/esm/Predicate.js.map +1 -0
  1820. package/dist/esm/Pretty.js +174 -0
  1821. package/dist/esm/Pretty.js.map +1 -0
  1822. package/dist/esm/PrimaryKey.js +14 -0
  1823. package/dist/esm/PrimaryKey.js.map +1 -0
  1824. package/dist/esm/PubSub.js +120 -0
  1825. package/dist/esm/PubSub.js.map +1 -0
  1826. package/dist/esm/Queue.js +248 -0
  1827. package/dist/esm/Queue.js.map +1 -0
  1828. package/dist/esm/Random.js +138 -0
  1829. package/dist/esm/Random.js.map +1 -0
  1830. package/dist/esm/RateLimiter.js +77 -0
  1831. package/dist/esm/RateLimiter.js.map +1 -0
  1832. package/dist/esm/RcMap.js +69 -0
  1833. package/dist/esm/RcMap.js.map +1 -0
  1834. package/dist/esm/RcRef.js +51 -0
  1835. package/dist/esm/RcRef.js.map +1 -0
  1836. package/dist/esm/Readable.js +45 -0
  1837. package/dist/esm/Readable.js.map +1 -0
  1838. package/dist/esm/Record.js +846 -0
  1839. package/dist/esm/Record.js.map +1 -0
  1840. package/dist/esm/RedBlackTree.js +259 -0
  1841. package/dist/esm/RedBlackTree.js.map +1 -0
  1842. package/dist/esm/Redacted.js +93 -0
  1843. package/dist/esm/Redacted.js.map +1 -0
  1844. package/dist/esm/Ref.js +77 -0
  1845. package/dist/esm/Ref.js.map +1 -0
  1846. package/dist/esm/RegExp.js +37 -0
  1847. package/dist/esm/RegExp.js.map +1 -0
  1848. package/dist/esm/Reloadable.js +59 -0
  1849. package/dist/esm/Reloadable.js.map +1 -0
  1850. package/dist/esm/Request.js +140 -0
  1851. package/dist/esm/Request.js.map +1 -0
  1852. package/dist/esm/RequestBlock.js +35 -0
  1853. package/dist/esm/RequestBlock.js.map +1 -0
  1854. package/dist/esm/RequestResolver.js +175 -0
  1855. package/dist/esm/RequestResolver.js.map +1 -0
  1856. package/dist/esm/Resource.js +44 -0
  1857. package/dist/esm/Resource.js.map +1 -0
  1858. package/dist/esm/Runtime.js +181 -0
  1859. package/dist/esm/Runtime.js.map +1 -0
  1860. package/dist/esm/RuntimeFlags.js +251 -0
  1861. package/dist/esm/RuntimeFlags.js.map +1 -0
  1862. package/dist/esm/RuntimeFlagsPatch.js +134 -0
  1863. package/dist/esm/RuntimeFlagsPatch.js.map +1 -0
  1864. package/dist/esm/STM.js +1002 -0
  1865. package/dist/esm/STM.js.map +1 -0
  1866. package/dist/esm/Schedule.js +1595 -0
  1867. package/dist/esm/Schedule.js.map +1 -0
  1868. package/dist/esm/ScheduleDecision.js +32 -0
  1869. package/dist/esm/ScheduleDecision.js.map +1 -0
  1870. package/dist/esm/ScheduleInterval.js +100 -0
  1871. package/dist/esm/ScheduleInterval.js.map +1 -0
  1872. package/dist/esm/ScheduleIntervals.js +78 -0
  1873. package/dist/esm/ScheduleIntervals.js.map +1 -0
  1874. package/dist/esm/Scheduler.js +289 -0
  1875. package/dist/esm/Scheduler.js.map +1 -0
  1876. package/dist/esm/Schema.js +6035 -0
  1877. package/dist/esm/Schema.js.map +1 -0
  1878. package/dist/esm/SchemaAST.js +2485 -0
  1879. package/dist/esm/SchemaAST.js.map +1 -0
  1880. package/dist/esm/Scope.js +94 -0
  1881. package/dist/esm/Scope.js.map +1 -0
  1882. package/dist/esm/ScopedCache.js +24 -0
  1883. package/dist/esm/ScopedCache.js.map +1 -0
  1884. package/dist/esm/ScopedRef.js +42 -0
  1885. package/dist/esm/ScopedRef.js.map +1 -0
  1886. package/dist/esm/Secret.js +44 -0
  1887. package/dist/esm/Secret.js.map +1 -0
  1888. package/dist/esm/SingleProducerAsyncInput.js +7 -0
  1889. package/dist/esm/SingleProducerAsyncInput.js.map +1 -0
  1890. package/dist/esm/Sink.js +864 -0
  1891. package/dist/esm/Sink.js.map +1 -0
  1892. package/dist/esm/SortedMap.js +169 -0
  1893. package/dist/esm/SortedMap.js.map +1 -0
  1894. package/dist/esm/SortedSet.js +237 -0
  1895. package/dist/esm/SortedSet.js.map +1 -0
  1896. package/dist/esm/Stream.js +4192 -0
  1897. package/dist/esm/Stream.js.map +1 -0
  1898. package/dist/esm/StreamEmit.js +2 -0
  1899. package/dist/esm/StreamEmit.js.map +1 -0
  1900. package/dist/esm/StreamHaltStrategy.js +57 -0
  1901. package/dist/esm/StreamHaltStrategy.js.map +1 -0
  1902. package/dist/esm/Streamable.js +36 -0
  1903. package/dist/esm/Streamable.js.map +1 -0
  1904. package/dist/esm/String.js +635 -0
  1905. package/dist/esm/String.js.map +1 -0
  1906. package/dist/esm/Struct.js +191 -0
  1907. package/dist/esm/Struct.js.map +1 -0
  1908. package/dist/esm/Subscribable.js +56 -0
  1909. package/dist/esm/Subscribable.js.map +1 -0
  1910. package/dist/esm/SubscriptionRef.js +116 -0
  1911. package/dist/esm/SubscriptionRef.js.map +1 -0
  1912. package/dist/esm/Supervisor.js +107 -0
  1913. package/dist/esm/Supervisor.js.map +1 -0
  1914. package/dist/esm/Symbol.js +27 -0
  1915. package/dist/esm/Symbol.js.map +1 -0
  1916. package/dist/esm/SynchronizedRef.js +119 -0
  1917. package/dist/esm/SynchronizedRef.js.map +1 -0
  1918. package/dist/esm/TArray.js +306 -0
  1919. package/dist/esm/TArray.js.map +1 -0
  1920. package/dist/esm/TDeferred.js +39 -0
  1921. package/dist/esm/TDeferred.js.map +1 -0
  1922. package/dist/esm/TMap.js +279 -0
  1923. package/dist/esm/TMap.js.map +1 -0
  1924. package/dist/esm/TPriorityQueue.js +136 -0
  1925. package/dist/esm/TPriorityQueue.js.map +1 -0
  1926. package/dist/esm/TPubSub.js +131 -0
  1927. package/dist/esm/TPubSub.js.map +1 -0
  1928. package/dist/esm/TQueue.js +229 -0
  1929. package/dist/esm/TQueue.js.map +1 -0
  1930. package/dist/esm/TRandom.js +65 -0
  1931. package/dist/esm/TRandom.js.map +1 -0
  1932. package/dist/esm/TReentrantLock.js +142 -0
  1933. package/dist/esm/TReentrantLock.js.map +1 -0
  1934. package/dist/esm/TRef.js +75 -0
  1935. package/dist/esm/TRef.js.map +1 -0
  1936. package/dist/esm/TSemaphore.js +65 -0
  1937. package/dist/esm/TSemaphore.js.map +1 -0
  1938. package/dist/esm/TSet.js +201 -0
  1939. package/dist/esm/TSet.js.map +1 -0
  1940. package/dist/esm/TSubscriptionRef.js +87 -0
  1941. package/dist/esm/TSubscriptionRef.js.map +1 -0
  1942. package/dist/esm/Take.js +148 -0
  1943. package/dist/esm/Take.js.map +1 -0
  1944. package/dist/esm/TestAnnotation.js +94 -0
  1945. package/dist/esm/TestAnnotation.js.map +1 -0
  1946. package/dist/esm/TestAnnotationMap.js +80 -0
  1947. package/dist/esm/TestAnnotationMap.js.map +1 -0
  1948. package/dist/esm/TestAnnotations.js +61 -0
  1949. package/dist/esm/TestAnnotations.js.map +1 -0
  1950. package/dist/esm/TestClock.js +354 -0
  1951. package/dist/esm/TestClock.js.map +1 -0
  1952. package/dist/esm/TestConfig.js +13 -0
  1953. package/dist/esm/TestConfig.js.map +1 -0
  1954. package/dist/esm/TestContext.js +21 -0
  1955. package/dist/esm/TestContext.js.map +1 -0
  1956. package/dist/esm/TestLive.js +30 -0
  1957. package/dist/esm/TestLive.js.map +1 -0
  1958. package/dist/esm/TestServices.js +230 -0
  1959. package/dist/esm/TestServices.js.map +1 -0
  1960. package/dist/esm/TestSized.js +36 -0
  1961. package/dist/esm/TestSized.js.map +1 -0
  1962. package/dist/esm/Tracer.js +37 -0
  1963. package/dist/esm/Tracer.js.map +1 -0
  1964. package/dist/esm/Trie.js +716 -0
  1965. package/dist/esm/Trie.js.map +1 -0
  1966. package/dist/esm/Tuple.js +235 -0
  1967. package/dist/esm/Tuple.js.map +1 -0
  1968. package/dist/esm/Types.js +7 -0
  1969. package/dist/esm/Types.js.map +1 -0
  1970. package/dist/esm/Unify.js +9 -0
  1971. package/dist/esm/Unify.js.map +1 -0
  1972. package/dist/esm/UpstreamPullRequest.js +51 -0
  1973. package/dist/esm/UpstreamPullRequest.js.map +1 -0
  1974. package/dist/esm/UpstreamPullStrategy.js +51 -0
  1975. package/dist/esm/UpstreamPullStrategy.js.map +1 -0
  1976. package/dist/esm/Utils.js +357 -0
  1977. package/dist/esm/Utils.js.map +1 -0
  1978. package/dist/esm/index.js +1385 -0
  1979. package/dist/esm/index.js.map +1 -0
  1980. package/dist/esm/internal/array.js +6 -0
  1981. package/dist/esm/internal/array.js.map +1 -0
  1982. package/dist/esm/internal/blockedRequests.js +341 -0
  1983. package/dist/esm/internal/blockedRequests.js.map +1 -0
  1984. package/dist/esm/internal/cache.js +480 -0
  1985. package/dist/esm/internal/cache.js.map +1 -0
  1986. package/dist/esm/internal/cause.js +824 -0
  1987. package/dist/esm/internal/cause.js.map +1 -0
  1988. package/dist/esm/internal/channel/channelExecutor.js +688 -0
  1989. package/dist/esm/internal/channel/channelExecutor.js.map +1 -0
  1990. package/dist/esm/internal/channel/channelState.js +59 -0
  1991. package/dist/esm/internal/channel/channelState.js.map +1 -0
  1992. package/dist/esm/internal/channel/childExecutorDecision.js +60 -0
  1993. package/dist/esm/internal/channel/childExecutorDecision.js.map +1 -0
  1994. package/dist/esm/internal/channel/continuation.js +48 -0
  1995. package/dist/esm/internal/channel/continuation.js.map +1 -0
  1996. package/dist/esm/internal/channel/mergeDecision.js +49 -0
  1997. package/dist/esm/internal/channel/mergeDecision.js.map +1 -0
  1998. package/dist/esm/internal/channel/mergeState.js +69 -0
  1999. package/dist/esm/internal/channel/mergeState.js.map +1 -0
  2000. package/dist/esm/internal/channel/mergeStrategy.js +46 -0
  2001. package/dist/esm/internal/channel/mergeStrategy.js.map +1 -0
  2002. package/dist/esm/internal/channel/singleProducerAsyncInput.js +163 -0
  2003. package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -0
  2004. package/dist/esm/internal/channel/subexecutor.js +152 -0
  2005. package/dist/esm/internal/channel/subexecutor.js.map +1 -0
  2006. package/dist/esm/internal/channel/upstreamPullRequest.js +52 -0
  2007. package/dist/esm/internal/channel/upstreamPullRequest.js.map +1 -0
  2008. package/dist/esm/internal/channel/upstreamPullStrategy.js +52 -0
  2009. package/dist/esm/internal/channel/upstreamPullStrategy.js.map +1 -0
  2010. package/dist/esm/internal/channel.js +683 -0
  2011. package/dist/esm/internal/channel.js.map +1 -0
  2012. package/dist/esm/internal/clock.js +77 -0
  2013. package/dist/esm/internal/clock.js.map +1 -0
  2014. package/dist/esm/internal/completedRequestMap.js +5 -0
  2015. package/dist/esm/internal/completedRequestMap.js.map +1 -0
  2016. package/dist/esm/internal/concurrency.js +28 -0
  2017. package/dist/esm/internal/concurrency.js.map +1 -0
  2018. package/dist/esm/internal/config.js +363 -0
  2019. package/dist/esm/internal/config.js.map +1 -0
  2020. package/dist/esm/internal/configError.js +263 -0
  2021. package/dist/esm/internal/configError.js.map +1 -0
  2022. package/dist/esm/internal/configProvider/pathPatch.js +76 -0
  2023. package/dist/esm/internal/configProvider/pathPatch.js.map +1 -0
  2024. package/dist/esm/internal/configProvider.js +425 -0
  2025. package/dist/esm/internal/configProvider.js.map +1 -0
  2026. package/dist/esm/internal/console.js +54 -0
  2027. package/dist/esm/internal/console.js.map +1 -0
  2028. package/dist/esm/internal/context.js +253 -0
  2029. package/dist/esm/internal/context.js.map +1 -0
  2030. package/dist/esm/internal/core-effect.js +811 -0
  2031. package/dist/esm/internal/core-effect.js.map +1 -0
  2032. package/dist/esm/internal/core-stream.js +236 -0
  2033. package/dist/esm/internal/core-stream.js.map +1 -0
  2034. package/dist/esm/internal/core.js +1610 -0
  2035. package/dist/esm/internal/core.js.map +1 -0
  2036. package/dist/esm/internal/data.js +29 -0
  2037. package/dist/esm/internal/data.js.map +1 -0
  2038. package/dist/esm/internal/dataSource.js +93 -0
  2039. package/dist/esm/internal/dataSource.js.map +1 -0
  2040. package/dist/esm/internal/dateTime.js +796 -0
  2041. package/dist/esm/internal/dateTime.js.map +1 -0
  2042. package/dist/esm/internal/defaultServices/console.js +92 -0
  2043. package/dist/esm/internal/defaultServices/console.js.map +1 -0
  2044. package/dist/esm/internal/defaultServices.js +73 -0
  2045. package/dist/esm/internal/defaultServices.js.map +1 -0
  2046. package/dist/esm/internal/deferred.js +27 -0
  2047. package/dist/esm/internal/deferred.js.map +1 -0
  2048. package/dist/esm/internal/differ/chunkPatch.js +130 -0
  2049. package/dist/esm/internal/differ/chunkPatch.js.map +1 -0
  2050. package/dist/esm/internal/differ/contextPatch.js +143 -0
  2051. package/dist/esm/internal/differ/contextPatch.js.map +1 -0
  2052. package/dist/esm/internal/differ/hashMapPatch.js +130 -0
  2053. package/dist/esm/internal/differ/hashMapPatch.js.map +1 -0
  2054. package/dist/esm/internal/differ/hashSetPatch.js +101 -0
  2055. package/dist/esm/internal/differ/hashSetPatch.js.map +1 -0
  2056. package/dist/esm/internal/differ/orPatch.js +170 -0
  2057. package/dist/esm/internal/differ/orPatch.js.map +1 -0
  2058. package/dist/esm/internal/differ/readonlyArrayPatch.js +129 -0
  2059. package/dist/esm/internal/differ/readonlyArrayPatch.js.map +1 -0
  2060. package/dist/esm/internal/differ.js +134 -0
  2061. package/dist/esm/internal/differ.js.map +1 -0
  2062. package/dist/esm/internal/doNotation.js +16 -0
  2063. package/dist/esm/internal/doNotation.js.map +1 -0
  2064. package/dist/esm/internal/effect/circular.js +402 -0
  2065. package/dist/esm/internal/effect/circular.js.map +1 -0
  2066. package/dist/esm/internal/effectable.js +113 -0
  2067. package/dist/esm/internal/effectable.js.map +1 -0
  2068. package/dist/esm/internal/either.js +85 -0
  2069. package/dist/esm/internal/either.js.map +1 -0
  2070. package/dist/esm/internal/encoding/base64.js +71 -0
  2071. package/dist/esm/internal/encoding/base64.js.map +1 -0
  2072. package/dist/esm/internal/encoding/base64Url.js +21 -0
  2073. package/dist/esm/internal/encoding/base64Url.js.map +1 -0
  2074. package/dist/esm/internal/encoding/common.js +38 -0
  2075. package/dist/esm/internal/encoding/common.js.map +1 -0
  2076. package/dist/esm/internal/encoding/hex.js +48 -0
  2077. package/dist/esm/internal/encoding/hex.js.map +1 -0
  2078. package/dist/esm/internal/errors.js +6 -0
  2079. package/dist/esm/internal/errors.js.map +1 -0
  2080. package/dist/esm/internal/executionPlan.js +59 -0
  2081. package/dist/esm/internal/executionPlan.js.map +1 -0
  2082. package/dist/esm/internal/executionStrategy.js +44 -0
  2083. package/dist/esm/internal/executionStrategy.js.map +1 -0
  2084. package/dist/esm/internal/fiber.js +253 -0
  2085. package/dist/esm/internal/fiber.js.map +1 -0
  2086. package/dist/esm/internal/fiberId.js +219 -0
  2087. package/dist/esm/internal/fiberId.js.map +1 -0
  2088. package/dist/esm/internal/fiberMessage.js +28 -0
  2089. package/dist/esm/internal/fiberMessage.js.map +1 -0
  2090. package/dist/esm/internal/fiberRefs/patch.js +107 -0
  2091. package/dist/esm/internal/fiberRefs/patch.js.map +1 -0
  2092. package/dist/esm/internal/fiberRefs.js +189 -0
  2093. package/dist/esm/internal/fiberRefs.js.map +1 -0
  2094. package/dist/esm/internal/fiberRuntime.js +2148 -0
  2095. package/dist/esm/internal/fiberRuntime.js.map +1 -0
  2096. package/dist/esm/internal/fiberScope.js +44 -0
  2097. package/dist/esm/internal/fiberScope.js.map +1 -0
  2098. package/dist/esm/internal/fiberStatus.js +72 -0
  2099. package/dist/esm/internal/fiberStatus.js.map +1 -0
  2100. package/dist/esm/internal/groupBy.js +213 -0
  2101. package/dist/esm/internal/groupBy.js.map +1 -0
  2102. package/dist/esm/internal/hashMap/array.js +48 -0
  2103. package/dist/esm/internal/hashMap/array.js.map +1 -0
  2104. package/dist/esm/internal/hashMap/bitwise.js +29 -0
  2105. package/dist/esm/internal/hashMap/bitwise.js.map +1 -0
  2106. package/dist/esm/internal/hashMap/config.js +11 -0
  2107. package/dist/esm/internal/hashMap/config.js.map +1 -0
  2108. package/dist/esm/internal/hashMap/keySet.js +6 -0
  2109. package/dist/esm/internal/hashMap/keySet.js.map +1 -0
  2110. package/dist/esm/internal/hashMap/node.js +253 -0
  2111. package/dist/esm/internal/hashMap/node.js.map +1 -0
  2112. package/dist/esm/internal/hashMap.js +360 -0
  2113. package/dist/esm/internal/hashMap.js.map +1 -0
  2114. package/dist/esm/internal/hashSet.js +182 -0
  2115. package/dist/esm/internal/hashSet.js.map +1 -0
  2116. package/dist/esm/internal/keyedPool.js +159 -0
  2117. package/dist/esm/internal/keyedPool.js.map +1 -0
  2118. package/dist/esm/internal/layer/circular.js +63 -0
  2119. package/dist/esm/internal/layer/circular.js.map +1 -0
  2120. package/dist/esm/internal/layer.js +552 -0
  2121. package/dist/esm/internal/layer.js.map +1 -0
  2122. package/dist/esm/internal/logSpan.js +17 -0
  2123. package/dist/esm/internal/logSpan.js.map +1 -0
  2124. package/dist/esm/internal/logger-circular.js +19 -0
  2125. package/dist/esm/internal/logger-circular.js.map +1 -0
  2126. package/dist/esm/internal/logger.js +367 -0
  2127. package/dist/esm/internal/logger.js.map +1 -0
  2128. package/dist/esm/internal/mailbox.js +450 -0
  2129. package/dist/esm/internal/mailbox.js.map +1 -0
  2130. package/dist/esm/internal/managedRuntime/circular.js +4 -0
  2131. package/dist/esm/internal/managedRuntime/circular.js.map +1 -0
  2132. package/dist/esm/internal/managedRuntime.js +86 -0
  2133. package/dist/esm/internal/managedRuntime.js.map +1 -0
  2134. package/dist/esm/internal/matcher.js +291 -0
  2135. package/dist/esm/internal/matcher.js.map +1 -0
  2136. package/dist/esm/internal/metric/boundaries.js +42 -0
  2137. package/dist/esm/internal/metric/boundaries.js.map +1 -0
  2138. package/dist/esm/internal/metric/hook.js +375 -0
  2139. package/dist/esm/internal/metric/hook.js.map +1 -0
  2140. package/dist/esm/internal/metric/key.js +60 -0
  2141. package/dist/esm/internal/metric/key.js.map +1 -0
  2142. package/dist/esm/internal/metric/keyType.js +169 -0
  2143. package/dist/esm/internal/metric/keyType.js.map +1 -0
  2144. package/dist/esm/internal/metric/label.js +36 -0
  2145. package/dist/esm/internal/metric/label.js.map +1 -0
  2146. package/dist/esm/internal/metric/pair.js +32 -0
  2147. package/dist/esm/internal/metric/pair.js.map +1 -0
  2148. package/dist/esm/internal/metric/polling.js +69 -0
  2149. package/dist/esm/internal/metric/polling.js.map +1 -0
  2150. package/dist/esm/internal/metric/registry.js +105 -0
  2151. package/dist/esm/internal/metric/registry.js.map +1 -0
  2152. package/dist/esm/internal/metric/state.js +181 -0
  2153. package/dist/esm/internal/metric/state.js.map +1 -0
  2154. package/dist/esm/internal/metric.js +181 -0
  2155. package/dist/esm/internal/metric.js.map +1 -0
  2156. package/dist/esm/internal/opCodes/cause.js +13 -0
  2157. package/dist/esm/internal/opCodes/cause.js.map +1 -0
  2158. package/dist/esm/internal/opCodes/channel.js +29 -0
  2159. package/dist/esm/internal/opCodes/channel.js.map +1 -0
  2160. package/dist/esm/internal/opCodes/channelChildExecutorDecision.js +7 -0
  2161. package/dist/esm/internal/opCodes/channelChildExecutorDecision.js.map +1 -0
  2162. package/dist/esm/internal/opCodes/channelMergeDecision.js +5 -0
  2163. package/dist/esm/internal/opCodes/channelMergeDecision.js.map +1 -0
  2164. package/dist/esm/internal/opCodes/channelMergeState.js +7 -0
  2165. package/dist/esm/internal/opCodes/channelMergeState.js.map +1 -0
  2166. package/dist/esm/internal/opCodes/channelMergeStrategy.js +5 -0
  2167. package/dist/esm/internal/opCodes/channelMergeStrategy.js.map +1 -0
  2168. package/dist/esm/internal/opCodes/channelState.js +9 -0
  2169. package/dist/esm/internal/opCodes/channelState.js.map +1 -0
  2170. package/dist/esm/internal/opCodes/channelUpstreamPullRequest.js +5 -0
  2171. package/dist/esm/internal/opCodes/channelUpstreamPullRequest.js.map +1 -0
  2172. package/dist/esm/internal/opCodes/channelUpstreamPullStrategy.js +5 -0
  2173. package/dist/esm/internal/opCodes/channelUpstreamPullStrategy.js.map +1 -0
  2174. package/dist/esm/internal/opCodes/config.js +23 -0
  2175. package/dist/esm/internal/opCodes/config.js.map +1 -0
  2176. package/dist/esm/internal/opCodes/configError.js +13 -0
  2177. package/dist/esm/internal/opCodes/configError.js.map +1 -0
  2178. package/dist/esm/internal/opCodes/continuation.js +5 -0
  2179. package/dist/esm/internal/opCodes/continuation.js.map +1 -0
  2180. package/dist/esm/internal/opCodes/deferred.js +5 -0
  2181. package/dist/esm/internal/opCodes/deferred.js.map +1 -0
  2182. package/dist/esm/internal/opCodes/effect.js +31 -0
  2183. package/dist/esm/internal/opCodes/effect.js.map +1 -0
  2184. package/dist/esm/internal/opCodes/layer.js +21 -0
  2185. package/dist/esm/internal/opCodes/layer.js.map +1 -0
  2186. package/dist/esm/internal/opCodes/streamHaltStrategy.js +9 -0
  2187. package/dist/esm/internal/opCodes/streamHaltStrategy.js.map +1 -0
  2188. package/dist/esm/internal/option.js +70 -0
  2189. package/dist/esm/internal/option.js.map +1 -0
  2190. package/dist/esm/internal/pool.js +276 -0
  2191. package/dist/esm/internal/pool.js.map +1 -0
  2192. package/dist/esm/internal/pubsub.js +1263 -0
  2193. package/dist/esm/internal/pubsub.js.map +1 -0
  2194. package/dist/esm/internal/query.js +93 -0
  2195. package/dist/esm/internal/query.js.map +1 -0
  2196. package/dist/esm/internal/queue.js +486 -0
  2197. package/dist/esm/internal/queue.js.map +1 -0
  2198. package/dist/esm/internal/random.js +119 -0
  2199. package/dist/esm/internal/random.js.map +1 -0
  2200. package/dist/esm/internal/rateLimiter.js +43 -0
  2201. package/dist/esm/internal/rateLimiter.js.map +1 -0
  2202. package/dist/esm/internal/rcMap.js +173 -0
  2203. package/dist/esm/internal/rcMap.js.map +1 -0
  2204. package/dist/esm/internal/rcRef.js +129 -0
  2205. package/dist/esm/internal/rcRef.js.map +1 -0
  2206. package/dist/esm/internal/redBlackTree/iterator.js +191 -0
  2207. package/dist/esm/internal/redBlackTree/iterator.js.map +1 -0
  2208. package/dist/esm/internal/redBlackTree/node.js +50 -0
  2209. package/dist/esm/internal/redBlackTree/node.js.map +1 -0
  2210. package/dist/esm/internal/redBlackTree.js +1069 -0
  2211. package/dist/esm/internal/redBlackTree.js.map +1 -0
  2212. package/dist/esm/internal/redacted.js +56 -0
  2213. package/dist/esm/internal/redacted.js.map +1 -0
  2214. package/dist/esm/internal/ref.js +110 -0
  2215. package/dist/esm/internal/ref.js.map +1 -0
  2216. package/dist/esm/internal/reloadable.js +42 -0
  2217. package/dist/esm/internal/reloadable.js.map +1 -0
  2218. package/dist/esm/internal/request.js +91 -0
  2219. package/dist/esm/internal/request.js.map +1 -0
  2220. package/dist/esm/internal/resource.js +38 -0
  2221. package/dist/esm/internal/resource.js.map +1 -0
  2222. package/dist/esm/internal/ringBuffer.js +56 -0
  2223. package/dist/esm/internal/ringBuffer.js.map +1 -0
  2224. package/dist/esm/internal/runtime.js +307 -0
  2225. package/dist/esm/internal/runtime.js.map +1 -0
  2226. package/dist/esm/internal/runtimeFlags.js +107 -0
  2227. package/dist/esm/internal/runtimeFlags.js.map +1 -0
  2228. package/dist/esm/internal/runtimeFlagsPatch.js +38 -0
  2229. package/dist/esm/internal/runtimeFlagsPatch.js.map +1 -0
  2230. package/dist/esm/internal/schedule/decision.js +33 -0
  2231. package/dist/esm/internal/schedule/decision.js.map +1 -0
  2232. package/dist/esm/internal/schedule/interval.js +70 -0
  2233. package/dist/esm/internal/schedule/interval.js.map +1 -0
  2234. package/dist/esm/internal/schedule/intervals.js +122 -0
  2235. package/dist/esm/internal/schedule/intervals.js.map +1 -0
  2236. package/dist/esm/internal/schedule.js +832 -0
  2237. package/dist/esm/internal/schedule.js.map +1 -0
  2238. package/dist/esm/internal/schema/errors.js +86 -0
  2239. package/dist/esm/internal/schema/errors.js.map +1 -0
  2240. package/dist/esm/internal/schema/schemaId.js +43 -0
  2241. package/dist/esm/internal/schema/schemaId.js.map +1 -0
  2242. package/dist/esm/internal/schema/util.js +35 -0
  2243. package/dist/esm/internal/schema/util.js.map +1 -0
  2244. package/dist/esm/internal/scopedCache.js +382 -0
  2245. package/dist/esm/internal/scopedCache.js.map +1 -0
  2246. package/dist/esm/internal/scopedRef.js +43 -0
  2247. package/dist/esm/internal/scopedRef.js.map +1 -0
  2248. package/dist/esm/internal/secret.js +77 -0
  2249. package/dist/esm/internal/secret.js.map +1 -0
  2250. package/dist/esm/internal/singleShotGen.js +30 -0
  2251. package/dist/esm/internal/singleShotGen.js.map +1 -0
  2252. package/dist/esm/internal/sink.js +801 -0
  2253. package/dist/esm/internal/sink.js.map +1 -0
  2254. package/dist/esm/internal/stack.js +5 -0
  2255. package/dist/esm/internal/stack.js.map +1 -0
  2256. package/dist/esm/internal/stm/core.js +501 -0
  2257. package/dist/esm/internal/stm/core.js.map +1 -0
  2258. package/dist/esm/internal/stm/entry.js +42 -0
  2259. package/dist/esm/internal/stm/entry.js.map +1 -0
  2260. package/dist/esm/internal/stm/journal.js +89 -0
  2261. package/dist/esm/internal/stm/journal.js.map +1 -0
  2262. package/dist/esm/internal/stm/opCodes/stm.js +25 -0
  2263. package/dist/esm/internal/stm/opCodes/stm.js.map +1 -0
  2264. package/dist/esm/internal/stm/opCodes/stmState.js +7 -0
  2265. package/dist/esm/internal/stm/opCodes/stmState.js.map +1 -0
  2266. package/dist/esm/internal/stm/opCodes/strategy.js +7 -0
  2267. package/dist/esm/internal/stm/opCodes/strategy.js.map +1 -0
  2268. package/dist/esm/internal/stm/opCodes/tExit.js +11 -0
  2269. package/dist/esm/internal/stm/opCodes/tExit.js.map +1 -0
  2270. package/dist/esm/internal/stm/opCodes/tryCommit.js +5 -0
  2271. package/dist/esm/internal/stm/opCodes/tryCommit.js.map +1 -0
  2272. package/dist/esm/internal/stm/stm.js +478 -0
  2273. package/dist/esm/internal/stm/stm.js.map +1 -0
  2274. package/dist/esm/internal/stm/stmState.js +89 -0
  2275. package/dist/esm/internal/stm/stmState.js.map +1 -0
  2276. package/dist/esm/internal/stm/tArray.js +243 -0
  2277. package/dist/esm/internal/stm/tArray.js.map +1 -0
  2278. package/dist/esm/internal/stm/tDeferred.js +41 -0
  2279. package/dist/esm/internal/stm/tDeferred.js.map +1 -0
  2280. package/dist/esm/internal/stm/tExit.js +101 -0
  2281. package/dist/esm/internal/stm/tExit.js.map +1 -0
  2282. package/dist/esm/internal/stm/tMap.js +430 -0
  2283. package/dist/esm/internal/stm/tMap.js.map +1 -0
  2284. package/dist/esm/internal/stm/tPriorityQueue.js +143 -0
  2285. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -0
  2286. package/dist/esm/internal/stm/tPubSub.js +376 -0
  2287. package/dist/esm/internal/stm/tPubSub.js.map +1 -0
  2288. package/dist/esm/internal/stm/tQueue.js +258 -0
  2289. package/dist/esm/internal/stm/tQueue.js.map +1 -0
  2290. package/dist/esm/internal/stm/tRandom.js +82 -0
  2291. package/dist/esm/internal/stm/tRandom.js.map +1 -0
  2292. package/dist/esm/internal/stm/tReentrantLock.js +192 -0
  2293. package/dist/esm/internal/stm/tReentrantLock.js.map +1 -0
  2294. package/dist/esm/internal/stm/tRef.js +100 -0
  2295. package/dist/esm/internal/stm/tRef.js.map +1 -0
  2296. package/dist/esm/internal/stm/tSemaphore.js +59 -0
  2297. package/dist/esm/internal/stm/tSemaphore.js.map +1 -0
  2298. package/dist/esm/internal/stm/tSet.js +88 -0
  2299. package/dist/esm/internal/stm/tSet.js.map +1 -0
  2300. package/dist/esm/internal/stm/tSubscriptionRef.js +166 -0
  2301. package/dist/esm/internal/stm/tSubscriptionRef.js.map +1 -0
  2302. package/dist/esm/internal/stm/tryCommit.js +16 -0
  2303. package/dist/esm/internal/stm/tryCommit.js.map +1 -0
  2304. package/dist/esm/internal/stm/txnId.js +11 -0
  2305. package/dist/esm/internal/stm/txnId.js.map +1 -0
  2306. package/dist/esm/internal/stm/versioned.js +8 -0
  2307. package/dist/esm/internal/stm/versioned.js.map +1 -0
  2308. package/dist/esm/internal/stream/debounceState.js +21 -0
  2309. package/dist/esm/internal/stream/debounceState.js.map +1 -0
  2310. package/dist/esm/internal/stream/emit.js +120 -0
  2311. package/dist/esm/internal/stream/emit.js.map +1 -0
  2312. package/dist/esm/internal/stream/haltStrategy.js +63 -0
  2313. package/dist/esm/internal/stream/haltStrategy.js.map +1 -0
  2314. package/dist/esm/internal/stream/handoff.js +55 -0
  2315. package/dist/esm/internal/stream/handoff.js.map +1 -0
  2316. package/dist/esm/internal/stream/handoffSignal.js +22 -0
  2317. package/dist/esm/internal/stream/handoffSignal.js.map +1 -0
  2318. package/dist/esm/internal/stream/pull.js +20 -0
  2319. package/dist/esm/internal/stream/pull.js.map +1 -0
  2320. package/dist/esm/internal/stream/sinkEndReason.js +13 -0
  2321. package/dist/esm/internal/stream/sinkEndReason.js.map +1 -0
  2322. package/dist/esm/internal/stream/zipAllState.js +33 -0
  2323. package/dist/esm/internal/stream/zipAllState.js.map +1 -0
  2324. package/dist/esm/internal/stream/zipChunksState.js +21 -0
  2325. package/dist/esm/internal/stream/zipChunksState.js.map +1 -0
  2326. package/dist/esm/internal/stream.js +2867 -0
  2327. package/dist/esm/internal/stream.js.map +1 -0
  2328. package/dist/esm/internal/string-utils.js +77 -0
  2329. package/dist/esm/internal/string-utils.js.map +1 -0
  2330. package/dist/esm/internal/subscriptionRef.js +63 -0
  2331. package/dist/esm/internal/subscriptionRef.js.map +1 -0
  2332. package/dist/esm/internal/supervisor/patch.js +125 -0
  2333. package/dist/esm/internal/supervisor/patch.js.map +1 -0
  2334. package/dist/esm/internal/supervisor.js +207 -0
  2335. package/dist/esm/internal/supervisor.js.map +1 -0
  2336. package/dist/esm/internal/synchronizedRef.js +44 -0
  2337. package/dist/esm/internal/synchronizedRef.js.map +1 -0
  2338. package/dist/esm/internal/take.js +108 -0
  2339. package/dist/esm/internal/take.js.map +1 -0
  2340. package/dist/esm/internal/testing/sleep.js +7 -0
  2341. package/dist/esm/internal/testing/sleep.js.map +1 -0
  2342. package/dist/esm/internal/testing/suspendedWarningData.js +48 -0
  2343. package/dist/esm/internal/testing/suspendedWarningData.js.map +1 -0
  2344. package/dist/esm/internal/testing/warningData.js +49 -0
  2345. package/dist/esm/internal/testing/warningData.js.map +1 -0
  2346. package/dist/esm/internal/tracer.js +122 -0
  2347. package/dist/esm/internal/tracer.js.map +1 -0
  2348. package/dist/esm/internal/trie.js +547 -0
  2349. package/dist/esm/internal/trie.js.map +1 -0
  2350. package/dist/esm/internal/version.js +6 -0
  2351. package/dist/esm/internal/version.js.map +1 -0
  2352. package/dist/esm/package.json +4 -0
  2353. package/index/package.json +6 -0
  2354. package/package.json +1471 -0
  2355. package/src/Arbitrary.ts +1101 -0
  2356. package/src/Array.ts +6854 -0
  2357. package/src/BigDecimal.ts +2037 -0
  2358. package/src/BigInt.ts +1139 -0
  2359. package/src/Boolean.ts +560 -0
  2360. package/src/Brand.ts +360 -0
  2361. package/src/Cache.ts +281 -0
  2362. package/src/Cause.ts +2049 -0
  2363. package/src/Channel.ts +3051 -0
  2364. package/src/ChildExecutorDecision.ts +158 -0
  2365. package/src/Chunk.ts +2350 -0
  2366. package/src/Clock.ts +111 -0
  2367. package/src/Config.ts +743 -0
  2368. package/src/ConfigError.ts +286 -0
  2369. package/src/ConfigProvider.ts +421 -0
  2370. package/src/ConfigProviderPathPatch.ts +132 -0
  2371. package/src/Console.ts +255 -0
  2372. package/src/Context.ts +867 -0
  2373. package/src/Cron.ts +718 -0
  2374. package/src/Data.ts +765 -0
  2375. package/src/DateTime.ts +2715 -0
  2376. package/src/DefaultServices.ts +34 -0
  2377. package/src/Deferred.ts +471 -0
  2378. package/src/Differ.ts +512 -0
  2379. package/src/Duration.ts +1140 -0
  2380. package/src/Effect.ts +29096 -0
  2381. package/src/Effectable.ts +107 -0
  2382. package/src/Either.ts +1723 -0
  2383. package/src/Encoding.ts +195 -0
  2384. package/src/Equal.ts +98 -0
  2385. package/src/Equivalence.ts +259 -0
  2386. package/src/ExecutionPlan.ts +308 -0
  2387. package/src/ExecutionStrategy.ts +138 -0
  2388. package/src/Exit.ts +717 -0
  2389. package/src/FastCheck.ts +9 -0
  2390. package/src/Fiber.ts +926 -0
  2391. package/src/FiberHandle.ts +582 -0
  2392. package/src/FiberId.ts +219 -0
  2393. package/src/FiberMap.ts +779 -0
  2394. package/src/FiberRef.ts +511 -0
  2395. package/src/FiberRefs.ts +288 -0
  2396. package/src/FiberRefsPatch.ts +139 -0
  2397. package/src/FiberSet.ts +529 -0
  2398. package/src/FiberStatus.ts +108 -0
  2399. package/src/Function.ts +1378 -0
  2400. package/src/GlobalValue.ts +53 -0
  2401. package/src/Graph.ts +3764 -0
  2402. package/src/GroupBy.ts +141 -0
  2403. package/src/HKT.ts +45 -0
  2404. package/src/Hash.ts +203 -0
  2405. package/src/HashMap.ts +919 -0
  2406. package/src/HashRing.ts +387 -0
  2407. package/src/HashSet.ts +2346 -0
  2408. package/src/Inspectable.ts +287 -0
  2409. package/src/Iterable.ts +1606 -0
  2410. package/src/JSONSchema.ts +1044 -0
  2411. package/src/KeyedPool.ts +201 -0
  2412. package/src/Layer.ts +1671 -0
  2413. package/src/LayerMap.ts +436 -0
  2414. package/src/List.ts +1469 -0
  2415. package/src/LogLevel.ts +387 -0
  2416. package/src/LogSpan.ts +25 -0
  2417. package/src/Logger.ts +863 -0
  2418. package/src/Mailbox.ts +298 -0
  2419. package/src/ManagedRuntime.ts +180 -0
  2420. package/src/Match.ts +1493 -0
  2421. package/src/MergeDecision.ts +103 -0
  2422. package/src/MergeState.ts +180 -0
  2423. package/src/MergeStrategy.ts +124 -0
  2424. package/src/Metric.ts +1165 -0
  2425. package/src/MetricBoundaries.ts +69 -0
  2426. package/src/MetricHook.ts +175 -0
  2427. package/src/MetricKey.ts +266 -0
  2428. package/src/MetricKeyType.ts +262 -0
  2429. package/src/MetricLabel.ts +47 -0
  2430. package/src/MetricPair.ts +71 -0
  2431. package/src/MetricPolling.ts +182 -0
  2432. package/src/MetricRegistry.ts +48 -0
  2433. package/src/MetricState.ts +273 -0
  2434. package/src/Micro.ts +5556 -0
  2435. package/src/ModuleVersion.ts +18 -0
  2436. package/src/MutableHashMap.ts +518 -0
  2437. package/src/MutableHashSet.ts +706 -0
  2438. package/src/MutableList.ts +333 -0
  2439. package/src/MutableQueue.ts +289 -0
  2440. package/src/MutableRef.ts +258 -0
  2441. package/src/NonEmptyIterable.ts +32 -0
  2442. package/src/Number.ts +1440 -0
  2443. package/src/Option.ts +4028 -0
  2444. package/src/Order.ts +397 -0
  2445. package/src/Ordering.ts +173 -0
  2446. package/src/ParseResult.ts +2068 -0
  2447. package/src/PartitionedSemaphore.ts +200 -0
  2448. package/src/Pipeable.ts +574 -0
  2449. package/src/Pool.ts +220 -0
  2450. package/src/Predicate.ts +2344 -0
  2451. package/src/Pretty.ts +205 -0
  2452. package/src/PrimaryKey.ts +23 -0
  2453. package/src/PubSub.ts +210 -0
  2454. package/src/Queue.ts +748 -0
  2455. package/src/Random.ts +204 -0
  2456. package/src/RateLimiter.ts +138 -0
  2457. package/src/RcMap.ts +245 -0
  2458. package/src/RcRef.ts +122 -0
  2459. package/src/Readable.ts +104 -0
  2460. package/src/Record.ts +1990 -0
  2461. package/src/RedBlackTree.ts +725 -0
  2462. package/src/Redacted.ts +144 -0
  2463. package/src/Ref.ts +268 -0
  2464. package/src/RegExp.ts +38 -0
  2465. package/src/Reloadable.ts +127 -0
  2466. package/src/Request.ts +418 -0
  2467. package/src/RequestBlock.ts +118 -0
  2468. package/src/RequestResolver.ts +495 -0
  2469. package/src/Resource.ts +119 -0
  2470. package/src/Runtime.ts +631 -0
  2471. package/src/RuntimeFlags.ts +436 -0
  2472. package/src/RuntimeFlagsPatch.ts +295 -0
  2473. package/src/STM.ts +3091 -0
  2474. package/src/Schedule.ts +3740 -0
  2475. package/src/ScheduleDecision.ts +62 -0
  2476. package/src/ScheduleInterval.ts +219 -0
  2477. package/src/ScheduleIntervals.ts +172 -0
  2478. package/src/Scheduler.ts +364 -0
  2479. package/src/Schema.ts +11443 -0
  2480. package/src/SchemaAST.ts +3055 -0
  2481. package/src/Scope.ts +240 -0
  2482. package/src/ScopedCache.ts +151 -0
  2483. package/src/ScopedRef.ts +139 -0
  2484. package/src/Secret.ts +88 -0
  2485. package/src/SingleProducerAsyncInput.ts +67 -0
  2486. package/src/Sink.ts +1877 -0
  2487. package/src/SortedMap.ts +361 -0
  2488. package/src/SortedSet.ts +530 -0
  2489. package/src/Stream.ts +11561 -0
  2490. package/src/StreamEmit.ts +136 -0
  2491. package/src/StreamHaltStrategy.ts +140 -0
  2492. package/src/Streamable.ts +45 -0
  2493. package/src/String.ts +1026 -0
  2494. package/src/Struct.ts +335 -0
  2495. package/src/Subscribable.ts +114 -0
  2496. package/src/SubscriptionRef.ts +444 -0
  2497. package/src/Supervisor.ts +240 -0
  2498. package/src/Symbol.ts +29 -0
  2499. package/src/SynchronizedRef.ts +429 -0
  2500. package/src/TArray.ts +922 -0
  2501. package/src/TDeferred.ts +124 -0
  2502. package/src/TMap.ts +875 -0
  2503. package/src/TPriorityQueue.ts +283 -0
  2504. package/src/TPubSub.ts +228 -0
  2505. package/src/TQueue.ts +540 -0
  2506. package/src/TRandom.ts +129 -0
  2507. package/src/TReentrantLock.ts +260 -0
  2508. package/src/TRef.ts +266 -0
  2509. package/src/TSemaphore.ts +169 -0
  2510. package/src/TSet.ts +633 -0
  2511. package/src/TSubscriptionRef.ts +284 -0
  2512. package/src/Take.ts +309 -0
  2513. package/src/TestAnnotation.ts +158 -0
  2514. package/src/TestAnnotationMap.ts +163 -0
  2515. package/src/TestAnnotations.ts +117 -0
  2516. package/src/TestClock.ts +562 -0
  2517. package/src/TestConfig.ts +47 -0
  2518. package/src/TestContext.ts +36 -0
  2519. package/src/TestLive.ts +53 -0
  2520. package/src/TestServices.ts +454 -0
  2521. package/src/TestSized.ts +55 -0
  2522. package/src/Tracer.ts +182 -0
  2523. package/src/Trie.ts +1860 -0
  2524. package/src/Tuple.ts +483 -0
  2525. package/src/Types.ts +361 -0
  2526. package/src/Unify.ts +127 -0
  2527. package/src/UpstreamPullRequest.ts +129 -0
  2528. package/src/UpstreamPullStrategy.ts +133 -0
  2529. package/src/Utils.ts +809 -0
  2530. package/src/index.ts +1561 -0
  2531. package/src/internal/array.ts +8 -0
  2532. package/src/internal/blockedRequests.ts +520 -0
  2533. package/src/internal/cache.ts +733 -0
  2534. package/src/internal/cause.ts +1050 -0
  2535. package/src/internal/channel/channelExecutor.ts +1200 -0
  2536. package/src/internal/channel/channelState.ts +134 -0
  2537. package/src/internal/channel/childExecutorDecision.ts +96 -0
  2538. package/src/internal/channel/continuation.ts +200 -0
  2539. package/src/internal/channel/mergeDecision.ts +113 -0
  2540. package/src/internal/channel/mergeState.ts +120 -0
  2541. package/src/internal/channel/mergeStrategy.ts +72 -0
  2542. package/src/internal/channel/singleProducerAsyncInput.ts +259 -0
  2543. package/src/internal/channel/subexecutor.ts +229 -0
  2544. package/src/internal/channel/upstreamPullRequest.ts +84 -0
  2545. package/src/internal/channel/upstreamPullStrategy.ts +87 -0
  2546. package/src/internal/channel.ts +2603 -0
  2547. package/src/internal/clock.ts +95 -0
  2548. package/src/internal/completedRequestMap.ts +9 -0
  2549. package/src/internal/concurrency.ts +54 -0
  2550. package/src/internal/config.ts +716 -0
  2551. package/src/internal/configError.ts +304 -0
  2552. package/src/internal/configProvider/pathPatch.ts +97 -0
  2553. package/src/internal/configProvider.ts +799 -0
  2554. package/src/internal/console.ts +153 -0
  2555. package/src/internal/context.ts +337 -0
  2556. package/src/internal/core-effect.ts +2293 -0
  2557. package/src/internal/core-stream.ts +998 -0
  2558. package/src/internal/core.ts +3166 -0
  2559. package/src/internal/data.ts +36 -0
  2560. package/src/internal/dataSource.ts +327 -0
  2561. package/src/internal/dateTime.ts +1277 -0
  2562. package/src/internal/defaultServices/console.ts +100 -0
  2563. package/src/internal/defaultServices.ts +163 -0
  2564. package/src/internal/deferred.ts +46 -0
  2565. package/src/internal/differ/chunkPatch.ts +211 -0
  2566. package/src/internal/differ/contextPatch.ts +232 -0
  2567. package/src/internal/differ/hashMapPatch.ts +220 -0
  2568. package/src/internal/differ/hashSetPatch.ts +176 -0
  2569. package/src/internal/differ/orPatch.ts +311 -0
  2570. package/src/internal/differ/readonlyArrayPatch.ts +210 -0
  2571. package/src/internal/differ.ts +200 -0
  2572. package/src/internal/doNotation.ts +80 -0
  2573. package/src/internal/effect/circular.ts +903 -0
  2574. package/src/internal/effectable.ts +131 -0
  2575. package/src/internal/either.ts +110 -0
  2576. package/src/internal/encoding/base64.ts +286 -0
  2577. package/src/internal/encoding/base64Url.ts +29 -0
  2578. package/src/internal/encoding/common.ts +51 -0
  2579. package/src/internal/encoding/hex.ts +315 -0
  2580. package/src/internal/errors.ts +7 -0
  2581. package/src/internal/executionPlan.ts +114 -0
  2582. package/src/internal/executionStrategy.ts +74 -0
  2583. package/src/internal/fiber.ts +388 -0
  2584. package/src/internal/fiberId.ts +267 -0
  2585. package/src/internal/fiberMessage.ts +82 -0
  2586. package/src/internal/fiberRefs/patch.ts +144 -0
  2587. package/src/internal/fiberRefs.ts +297 -0
  2588. package/src/internal/fiberRuntime.ts +3859 -0
  2589. package/src/internal/fiberScope.ts +71 -0
  2590. package/src/internal/fiberStatus.ts +119 -0
  2591. package/src/internal/groupBy.ts +530 -0
  2592. package/src/internal/hashMap/array.ts +49 -0
  2593. package/src/internal/hashMap/bitwise.ts +32 -0
  2594. package/src/internal/hashMap/config.ts +14 -0
  2595. package/src/internal/hashMap/keySet.ts +8 -0
  2596. package/src/internal/hashMap/node.ts +391 -0
  2597. package/src/internal/hashMap.ts +586 -0
  2598. package/src/internal/hashSet.ts +323 -0
  2599. package/src/internal/keyedPool.ts +244 -0
  2600. package/src/internal/layer/circular.ts +214 -0
  2601. package/src/internal/layer.ts +1483 -0
  2602. package/src/internal/logSpan.ts +20 -0
  2603. package/src/internal/logger-circular.ts +24 -0
  2604. package/src/internal/logger.ts +485 -0
  2605. package/src/internal/mailbox.ts +561 -0
  2606. package/src/internal/managedRuntime/circular.ts +6 -0
  2607. package/src/internal/managedRuntime.ts +137 -0
  2608. package/src/internal/matcher.ts +652 -0
  2609. package/src/internal/metric/boundaries.ts +75 -0
  2610. package/src/internal/metric/hook.ts +483 -0
  2611. package/src/internal/metric/key.ts +167 -0
  2612. package/src/internal/metric/keyType.ts +238 -0
  2613. package/src/internal/metric/label.ts +41 -0
  2614. package/src/internal/metric/pair.ts +48 -0
  2615. package/src/internal/metric/polling.ts +149 -0
  2616. package/src/internal/metric/registry.ts +187 -0
  2617. package/src/internal/metric/state.ts +290 -0
  2618. package/src/internal/metric.ts +577 -0
  2619. package/src/internal/opCodes/cause.ts +35 -0
  2620. package/src/internal/opCodes/channel.ts +83 -0
  2621. package/src/internal/opCodes/channelChildExecutorDecision.ts +17 -0
  2622. package/src/internal/opCodes/channelMergeDecision.ts +11 -0
  2623. package/src/internal/opCodes/channelMergeState.ts +17 -0
  2624. package/src/internal/opCodes/channelMergeStrategy.ts +11 -0
  2625. package/src/internal/opCodes/channelState.ts +23 -0
  2626. package/src/internal/opCodes/channelUpstreamPullRequest.ts +11 -0
  2627. package/src/internal/opCodes/channelUpstreamPullStrategy.ts +11 -0
  2628. package/src/internal/opCodes/config.ts +65 -0
  2629. package/src/internal/opCodes/configError.ts +35 -0
  2630. package/src/internal/opCodes/continuation.ts +11 -0
  2631. package/src/internal/opCodes/deferred.ts +11 -0
  2632. package/src/internal/opCodes/effect.ts +89 -0
  2633. package/src/internal/opCodes/layer.ts +59 -0
  2634. package/src/internal/opCodes/streamHaltStrategy.ts +23 -0
  2635. package/src/internal/option.ts +80 -0
  2636. package/src/internal/pool.ts +432 -0
  2637. package/src/internal/pubsub.ts +1762 -0
  2638. package/src/internal/query.ts +204 -0
  2639. package/src/internal/queue.ts +766 -0
  2640. package/src/internal/random.ts +161 -0
  2641. package/src/internal/rateLimiter.ts +93 -0
  2642. package/src/internal/rcMap.ts +285 -0
  2643. package/src/internal/rcRef.ts +192 -0
  2644. package/src/internal/redBlackTree/iterator.ts +200 -0
  2645. package/src/internal/redBlackTree/node.ts +68 -0
  2646. package/src/internal/redBlackTree.ts +1245 -0
  2647. package/src/internal/redacted.ts +73 -0
  2648. package/src/internal/ref.ts +171 -0
  2649. package/src/internal/reloadable.ts +140 -0
  2650. package/src/internal/request.ts +177 -0
  2651. package/src/internal/resource.ts +76 -0
  2652. package/src/internal/ringBuffer.ts +68 -0
  2653. package/src/internal/runtime.ts +558 -0
  2654. package/src/internal/runtimeFlags.ts +178 -0
  2655. package/src/internal/runtimeFlagsPatch.ts +103 -0
  2656. package/src/internal/schedule/decision.ts +47 -0
  2657. package/src/internal/schedule/interval.ts +101 -0
  2658. package/src/internal/schedule/intervals.ts +180 -0
  2659. package/src/internal/schedule.ts +2199 -0
  2660. package/src/internal/schema/errors.ts +191 -0
  2661. package/src/internal/schema/schemaId.ts +106 -0
  2662. package/src/internal/schema/util.ts +50 -0
  2663. package/src/internal/scopedCache.ts +644 -0
  2664. package/src/internal/scopedRef.ts +118 -0
  2665. package/src/internal/secret.ts +89 -0
  2666. package/src/internal/singleShotGen.ts +35 -0
  2667. package/src/internal/sink.ts +2120 -0
  2668. package/src/internal/stack.ts +10 -0
  2669. package/src/internal/stm/core.ts +817 -0
  2670. package/src/internal/stm/entry.ts +59 -0
  2671. package/src/internal/stm/journal.ts +123 -0
  2672. package/src/internal/stm/opCodes/stm.ts +71 -0
  2673. package/src/internal/stm/opCodes/stmState.ts +17 -0
  2674. package/src/internal/stm/opCodes/strategy.ts +17 -0
  2675. package/src/internal/stm/opCodes/tExit.ts +29 -0
  2676. package/src/internal/stm/opCodes/tryCommit.ts +11 -0
  2677. package/src/internal/stm/stm.ts +1453 -0
  2678. package/src/internal/stm/stmState.ts +136 -0
  2679. package/src/internal/stm/tArray.ts +550 -0
  2680. package/src/internal/stm/tDeferred.ts +81 -0
  2681. package/src/internal/stm/tExit.ts +190 -0
  2682. package/src/internal/stm/tMap.ts +824 -0
  2683. package/src/internal/stm/tPriorityQueue.ts +267 -0
  2684. package/src/internal/stm/tPubSub.ts +551 -0
  2685. package/src/internal/stm/tQueue.ts +393 -0
  2686. package/src/internal/stm/tRandom.ts +140 -0
  2687. package/src/internal/stm/tReentrantLock.ts +352 -0
  2688. package/src/internal/stm/tRef.ts +195 -0
  2689. package/src/internal/stm/tSemaphore.ts +113 -0
  2690. package/src/internal/stm/tSet.ts +259 -0
  2691. package/src/internal/stm/tSubscriptionRef.ts +286 -0
  2692. package/src/internal/stm/tryCommit.ts +34 -0
  2693. package/src/internal/stm/txnId.ts +14 -0
  2694. package/src/internal/stm/versioned.ts +4 -0
  2695. package/src/internal/stream/debounceState.ts +57 -0
  2696. package/src/internal/stream/emit.ts +123 -0
  2697. package/src/internal/stream/haltStrategy.ts +94 -0
  2698. package/src/internal/stream/handoff.ts +187 -0
  2699. package/src/internal/stream/handoffSignal.ts +59 -0
  2700. package/src/internal/stream/pull.ts +34 -0
  2701. package/src/internal/stream/sinkEndReason.ts +30 -0
  2702. package/src/internal/stream/zipAllState.ts +88 -0
  2703. package/src/internal/stream/zipChunksState.ts +56 -0
  2704. package/src/internal/stream.ts +8802 -0
  2705. package/src/internal/string-utils.ts +107 -0
  2706. package/src/internal/subscriptionRef.ts +138 -0
  2707. package/src/internal/supervisor/patch.ts +190 -0
  2708. package/src/internal/supervisor.ts +303 -0
  2709. package/src/internal/synchronizedRef.ts +114 -0
  2710. package/src/internal/take.ts +199 -0
  2711. package/src/internal/testing/sleep.ts +27 -0
  2712. package/src/internal/testing/suspendedWarningData.ts +85 -0
  2713. package/src/internal/testing/warningData.ts +94 -0
  2714. package/src/internal/tracer.ts +150 -0
  2715. package/src/internal/trie.ts +722 -0
  2716. package/src/internal/version.ts +7 -0
@@ -0,0 +1,3740 @@
1
+ /**
2
+ * @since 2.0.0
3
+ */
4
+ import type * as Cause from "./Cause.js"
5
+ import type * as Chunk from "./Chunk.js"
6
+ import type * as Context from "./Context.js"
7
+ import type * as Cron from "./Cron.js"
8
+ import type * as DateTime from "./DateTime.js"
9
+ import type * as Duration from "./Duration.js"
10
+ import type * as Effect from "./Effect.js"
11
+ import type * as Either from "./Either.js"
12
+ import type { LazyArg } from "./Function.js"
13
+ import * as internal from "./internal/schedule.js"
14
+ import type * as Option from "./Option.js"
15
+ import type { Pipeable } from "./Pipeable.js"
16
+ import type { Predicate } from "./Predicate.js"
17
+ import type * as Ref from "./Ref.js"
18
+ import type * as ScheduleDecision from "./ScheduleDecision.js"
19
+ import type * as Intervals from "./ScheduleIntervals.js"
20
+ import type * as Types from "./Types.js"
21
+
22
+ /**
23
+ * @since 2.0.0
24
+ * @category Symbols
25
+ */
26
+ export const ScheduleTypeId: unique symbol = internal.ScheduleTypeId
27
+
28
+ /**
29
+ * @since 2.0.0
30
+ * @category Symbols
31
+ */
32
+ export type ScheduleTypeId = typeof ScheduleTypeId
33
+
34
+ /**
35
+ * @since 2.0.0
36
+ * @category Symbols
37
+ */
38
+ export const ScheduleDriverTypeId: unique symbol = internal.ScheduleDriverTypeId
39
+
40
+ /**
41
+ * @since 2.0.0
42
+ * @category Symbols
43
+ */
44
+ export type ScheduleDriverTypeId = typeof ScheduleDriverTypeId
45
+
46
+ /**
47
+ * A `Schedule<Out, In, R>` defines a recurring schedule, which consumes values
48
+ * of type `In`, and which returns values of type `Out`.
49
+ *
50
+ * The `Schedule` type is structured as follows:
51
+ *
52
+ * ```ts skip-type-checking
53
+ * // ┌─── The type of output produced by the schedule
54
+ * // │ ┌─── The type of input consumed by the schedule
55
+ * // │ │ ┌─── Additional requirements for the schedule
56
+ * // ▼ ▼ ▼
57
+ * Schedule<Out, In, Requirements>
58
+ * ```
59
+ *
60
+ * A schedule operates by consuming values of type `In` (such as errors in the
61
+ * case of `Effect.retry`, or values in the case of `Effect.repeat`) and
62
+ * producing values of type `Out`. It determines when to halt or continue the
63
+ * execution based on input values and its internal state.
64
+ *
65
+ * The inclusion of a `Requirements` parameter allows the schedule to leverage
66
+ * additional services or resources as needed.
67
+ *
68
+ * Schedules are defined as a possibly infinite set of intervals spread out over
69
+ * time. Each interval defines a window in which recurrence is possible.
70
+ *
71
+ * When schedules are used to repeat or retry effects, the starting boundary of
72
+ * each interval produced by a schedule is used as the moment when the effect
73
+ * will be executed again.
74
+ *
75
+ * Schedules can be composed in different ways:
76
+ *
77
+ * - Union: Combines two schedules and recurs if either schedule wants to
78
+ * continue, using the shorter delay.
79
+ * - Intersection: Combines two schedules and recurs only if both schedules want
80
+ * to continue, using the longer delay.
81
+ * - Sequencing: Combines two schedules by running the first one fully, then
82
+ * switching to the second.
83
+ *
84
+ * In addition, schedule inputs and outputs can be transformed, filtered (to
85
+ * terminate a schedule early in response to some input or output), and so
86
+ * forth.
87
+ *
88
+ * A variety of other operators exist for transforming and combining schedules,
89
+ * and the companion object for `Schedule` contains all common types of
90
+ * schedules, both for performing retrying, as well as performing repetition.
91
+ *
92
+ * @category Model
93
+ * @since 2.0.0
94
+ */
95
+ export interface Schedule<out Out, in In = unknown, out R = never> extends Schedule.Variance<Out, In, R>, Pipeable {
96
+ /**
97
+ * Initial State
98
+ */
99
+ readonly initial: any
100
+ /**
101
+ * Schedule Step
102
+ */
103
+ step(
104
+ now: number,
105
+ input: In,
106
+ state: any
107
+ ): Effect.Effect<readonly [any, Out, ScheduleDecision.ScheduleDecision], never, R>
108
+ }
109
+
110
+ /**
111
+ * @since 2.0.0
112
+ */
113
+ export declare namespace Schedule {
114
+ /**
115
+ * @since 2.0.0
116
+ * @category Models
117
+ */
118
+ export interface Variance<out Out, in In, out R> {
119
+ readonly [ScheduleTypeId]: {
120
+ readonly _Out: Types.Covariant<Out>
121
+ readonly _In: Types.Contravariant<In>
122
+ readonly _R: Types.Covariant<R>
123
+ }
124
+ }
125
+
126
+ /**
127
+ * @since 2.0.0
128
+ */
129
+ export interface DriverVariance<out Out, in In, out R> {
130
+ readonly [ScheduleDriverTypeId]: {
131
+ readonly _Out: Types.Covariant<Out>
132
+ readonly _In: Types.Contravariant<In>
133
+ readonly _R: Types.Covariant<R>
134
+ }
135
+ }
136
+ }
137
+
138
+ /**
139
+ * @since 2.0.0
140
+ * @category Models
141
+ */
142
+ export interface ScheduleDriver<out Out, in In = unknown, out R = never> extends Schedule.DriverVariance<Out, In, R> {
143
+ readonly state: Effect.Effect<unknown>
144
+ readonly iterationMeta: Ref.Ref<IterationMetadata>
145
+ readonly last: Effect.Effect<Out, Cause.NoSuchElementException>
146
+ readonly reset: Effect.Effect<void>
147
+ next(input: In): Effect.Effect<Out, Option.Option<never>, R>
148
+ }
149
+
150
+ /**
151
+ * Creates a new schedule with a custom state and step function.
152
+ *
153
+ * **Details**
154
+ *
155
+ * This function constructs a `Schedule` by defining its initial state and a
156
+ * step function, which determines how the schedule progresses over time. The
157
+ * step function is called on each iteration with the current time, an input
158
+ * value, and the schedule's current state. It returns the next state, an output
159
+ * value, and a decision on whether the schedule should continue or stop.
160
+ *
161
+ * This function is useful for creating custom scheduling logic that goes beyond
162
+ * predefined schedules like fixed intervals or exponential backoff. It allows
163
+ * full control over how the schedule behaves at each step.
164
+ *
165
+ * @since 2.0.0
166
+ * @category Constructors
167
+ */
168
+ export const makeWithState: <S, In, Out, R = never>(
169
+ initial: S,
170
+ step: (
171
+ now: number,
172
+ input: In,
173
+ state: S
174
+ ) => Effect.Effect<readonly [S, Out, ScheduleDecision.ScheduleDecision], never, R>
175
+ ) => Schedule<Out, In, R> = internal.makeWithState
176
+
177
+ /**
178
+ * Checks whether a given value is a `Schedule`.
179
+ *
180
+ * @since 2.0.0
181
+ * @category Guards
182
+ */
183
+ export const isSchedule: (u: unknown) => u is Schedule<unknown, never, unknown> = internal.isSchedule
184
+
185
+ /**
186
+ * Adds a delay to every interval in a schedule.
187
+ *
188
+ * **Details**
189
+ *
190
+ * This function modifies a given schedule by applying an additional delay to
191
+ * every interval it defines. The delay is determined by the provided function,
192
+ * which takes the schedule's output and returns a delay duration.
193
+ *
194
+ * @see {@link addDelayEffect} If you need to compute the delay using an effectful function.
195
+ *
196
+ * @since 2.0.0
197
+ * @category Timing & Delay
198
+ */
199
+ export const addDelay: {
200
+ /**
201
+ * Adds a delay to every interval in a schedule.
202
+ *
203
+ * **Details**
204
+ *
205
+ * This function modifies a given schedule by applying an additional delay to
206
+ * every interval it defines. The delay is determined by the provided function,
207
+ * which takes the schedule's output and returns a delay duration.
208
+ *
209
+ * @see {@link addDelayEffect} If you need to compute the delay using an effectful function.
210
+ *
211
+ * @since 2.0.0
212
+ * @category Timing & Delay
213
+ */
214
+ <Out>(f: (out: Out) => Duration.DurationInput): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
215
+ /**
216
+ * Adds a delay to every interval in a schedule.
217
+ *
218
+ * **Details**
219
+ *
220
+ * This function modifies a given schedule by applying an additional delay to
221
+ * every interval it defines. The delay is determined by the provided function,
222
+ * which takes the schedule's output and returns a delay duration.
223
+ *
224
+ * @see {@link addDelayEffect} If you need to compute the delay using an effectful function.
225
+ *
226
+ * @since 2.0.0
227
+ * @category Timing & Delay
228
+ */
229
+ <Out, In, R>(self: Schedule<Out, In, R>, f: (out: Out) => Duration.DurationInput): Schedule<Out, In, R>
230
+ } = internal.addDelay
231
+
232
+ /**
233
+ * Adds an effectfully computed delay to every interval in a schedule.
234
+ *
235
+ * **Details**
236
+ *
237
+ * This function modifies a given schedule by applying an additional delay to
238
+ * each interval, where the delay is determined by an effectful function. The
239
+ * function takes the schedule’s output and returns an effect that produces a
240
+ * delay duration.
241
+ *
242
+ * @see {@link addDelay} If you need to compute the delay using a pure function.
243
+ *
244
+ * @since 2.0.0
245
+ * @category Timing & Delay
246
+ */
247
+ export const addDelayEffect: {
248
+ /**
249
+ * Adds an effectfully computed delay to every interval in a schedule.
250
+ *
251
+ * **Details**
252
+ *
253
+ * This function modifies a given schedule by applying an additional delay to
254
+ * each interval, where the delay is determined by an effectful function. The
255
+ * function takes the schedule’s output and returns an effect that produces a
256
+ * delay duration.
257
+ *
258
+ * @see {@link addDelay} If you need to compute the delay using a pure function.
259
+ *
260
+ * @since 2.0.0
261
+ * @category Timing & Delay
262
+ */
263
+ <Out, R2>(f: (out: Out) => Effect.Effect<Duration.DurationInput, never, R2>): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R2 | R>
264
+ /**
265
+ * Adds an effectfully computed delay to every interval in a schedule.
266
+ *
267
+ * **Details**
268
+ *
269
+ * This function modifies a given schedule by applying an additional delay to
270
+ * each interval, where the delay is determined by an effectful function. The
271
+ * function takes the schedule’s output and returns an effect that produces a
272
+ * delay duration.
273
+ *
274
+ * @see {@link addDelay} If you need to compute the delay using a pure function.
275
+ *
276
+ * @since 2.0.0
277
+ * @category Timing & Delay
278
+ */
279
+ <Out, In, R, R2>(
280
+ self: Schedule<Out, In, R>,
281
+ f: (out: Out) => Effect.Effect<Duration.DurationInput, never, R2>
282
+ ): Schedule<Out, In, R | R2>
283
+ } = internal.addDelayEffect
284
+
285
+ /**
286
+ * Runs two schedules sequentially, merging their outputs.
287
+ *
288
+ * **Details**
289
+ *
290
+ * This function executes two schedules one after the other. The first schedule
291
+ * runs to completion, and then the second schedule begins execution. Unlike
292
+ * {@link andThenEither}, this function merges the outputs instead of wrapping
293
+ * them in `Either`, allowing both schedules to contribute their results
294
+ * directly.
295
+ *
296
+ * This is useful when a workflow consists of two phases where the second phase
297
+ * should start only after the first one has fully completed.
298
+ *
299
+ * @see {@link andThenEither} If you need to keep track of which schedule
300
+ * produced each result.
301
+ *
302
+ * @since 2.0.0
303
+ * @category Sequential Composition
304
+ */
305
+ export const andThen: {
306
+ /**
307
+ * Runs two schedules sequentially, merging their outputs.
308
+ *
309
+ * **Details**
310
+ *
311
+ * This function executes two schedules one after the other. The first schedule
312
+ * runs to completion, and then the second schedule begins execution. Unlike
313
+ * {@link andThenEither}, this function merges the outputs instead of wrapping
314
+ * them in `Either`, allowing both schedules to contribute their results
315
+ * directly.
316
+ *
317
+ * This is useful when a workflow consists of two phases where the second phase
318
+ * should start only after the first one has fully completed.
319
+ *
320
+ * @see {@link andThenEither} If you need to keep track of which schedule
321
+ * produced each result.
322
+ *
323
+ * @since 2.0.0
324
+ * @category Sequential Composition
325
+ */
326
+ <Out2, In2, R2>(that: Schedule<Out2, In2, R2>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out2 | Out, In & In2, R2 | R>
327
+ /**
328
+ * Runs two schedules sequentially, merging their outputs.
329
+ *
330
+ * **Details**
331
+ *
332
+ * This function executes two schedules one after the other. The first schedule
333
+ * runs to completion, and then the second schedule begins execution. Unlike
334
+ * {@link andThenEither}, this function merges the outputs instead of wrapping
335
+ * them in `Either`, allowing both schedules to contribute their results
336
+ * directly.
337
+ *
338
+ * This is useful when a workflow consists of two phases where the second phase
339
+ * should start only after the first one has fully completed.
340
+ *
341
+ * @see {@link andThenEither} If you need to keep track of which schedule
342
+ * produced each result.
343
+ *
344
+ * @since 2.0.0
345
+ * @category Sequential Composition
346
+ */
347
+ <Out, In, R, Out2, In2, R2>(self: Schedule<Out, In, R>, that: Schedule<Out2, In2, R2>): Schedule<Out | Out2, In & In2, R | R2>
348
+ } = internal.andThen
349
+
350
+ /**
351
+ * Runs two schedules sequentially, collecting results in an `Either`.
352
+ *
353
+ * **Details**
354
+ *
355
+ * This function combines two schedules in sequence. The first schedule runs to
356
+ * completion, and then the second schedule starts and runs to completion as
357
+ * well. The outputs of both schedules are collected into an `Either` structure:
358
+ * - `Either.Left` contains the output of the second schedule.
359
+ * - `Either.Right` contains the output of the first schedule.
360
+ *
361
+ * This is useful when you need to switch from one schedule to another after the
362
+ * first one finishes, while still keeping track of which schedule produced each
363
+ * result.
364
+ *
365
+ * @see {@link andThen} If you need to merge the outputs of both schedules.
366
+ *
367
+ * @since 2.0.0
368
+ * @category Sequential Composition
369
+ */
370
+ export const andThenEither: {
371
+ /**
372
+ * Runs two schedules sequentially, collecting results in an `Either`.
373
+ *
374
+ * **Details**
375
+ *
376
+ * This function combines two schedules in sequence. The first schedule runs to
377
+ * completion, and then the second schedule starts and runs to completion as
378
+ * well. The outputs of both schedules are collected into an `Either` structure:
379
+ * - `Either.Left` contains the output of the second schedule.
380
+ * - `Either.Right` contains the output of the first schedule.
381
+ *
382
+ * This is useful when you need to switch from one schedule to another after the
383
+ * first one finishes, while still keeping track of which schedule produced each
384
+ * result.
385
+ *
386
+ * @see {@link andThen} If you need to merge the outputs of both schedules.
387
+ *
388
+ * @since 2.0.0
389
+ * @category Sequential Composition
390
+ */
391
+ <Out2, In2, R2>(that: Schedule<Out2, In2, R2>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Either.Either<Out2, Out>, In & In2, R2 | R>
392
+ /**
393
+ * Runs two schedules sequentially, collecting results in an `Either`.
394
+ *
395
+ * **Details**
396
+ *
397
+ * This function combines two schedules in sequence. The first schedule runs to
398
+ * completion, and then the second schedule starts and runs to completion as
399
+ * well. The outputs of both schedules are collected into an `Either` structure:
400
+ * - `Either.Left` contains the output of the second schedule.
401
+ * - `Either.Right` contains the output of the first schedule.
402
+ *
403
+ * This is useful when you need to switch from one schedule to another after the
404
+ * first one finishes, while still keeping track of which schedule produced each
405
+ * result.
406
+ *
407
+ * @see {@link andThen} If you need to merge the outputs of both schedules.
408
+ *
409
+ * @since 2.0.0
410
+ * @category Sequential Composition
411
+ */
412
+ <Out, In, R, Out2, In2, R2>(self: Schedule<Out, In, R>, that: Schedule<Out2, In2, R2>): Schedule<Either.Either<Out2, Out>, In & In2, R | R2>
413
+ } = internal.andThenEither
414
+
415
+ /**
416
+ * Transforms a schedule to always produce a constant output.
417
+ *
418
+ * **Details**
419
+ *
420
+ * This function modifies a given schedule so that instead of returning its
421
+ * computed outputs, it always returns a constant value.
422
+ *
423
+ * This is useful when you need a schedule for timing but don’t care about its
424
+ * actual output, or when you want to standardize results across different
425
+ * scheduling strategies.
426
+ *
427
+ * @since 2.0.0
428
+ * @category Mapping
429
+ */
430
+ export const as: {
431
+ /**
432
+ * Transforms a schedule to always produce a constant output.
433
+ *
434
+ * **Details**
435
+ *
436
+ * This function modifies a given schedule so that instead of returning its
437
+ * computed outputs, it always returns a constant value.
438
+ *
439
+ * This is useful when you need a schedule for timing but don’t care about its
440
+ * actual output, or when you want to standardize results across different
441
+ * scheduling strategies.
442
+ *
443
+ * @since 2.0.0
444
+ * @category Mapping
445
+ */
446
+ <Out2>(out: Out2): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out2, In, R>
447
+ /**
448
+ * Transforms a schedule to always produce a constant output.
449
+ *
450
+ * **Details**
451
+ *
452
+ * This function modifies a given schedule so that instead of returning its
453
+ * computed outputs, it always returns a constant value.
454
+ *
455
+ * This is useful when you need a schedule for timing but don’t care about its
456
+ * actual output, or when you want to standardize results across different
457
+ * scheduling strategies.
458
+ *
459
+ * @since 2.0.0
460
+ * @category Mapping
461
+ */
462
+ <Out, In, R, Out2>(self: Schedule<Out, In, R>, out: Out2): Schedule<Out2, In, R>
463
+ } = internal.as
464
+
465
+ /**
466
+ * Transforms a schedule to always return `void` instead of its output.
467
+ *
468
+ * **Details**
469
+ *
470
+ * This function modifies a given schedule so that it no longer returns
471
+ * meaningful output—each execution produces `void`. This is useful when the
472
+ * schedule is used only for timing purposes and the actual output of the
473
+ * schedule is irrelevant.
474
+ *
475
+ * The schedule still determines when executions should occur, but the results
476
+ * are discarded.
477
+ *
478
+ * @since 2.0.0
479
+ * @category Mapping
480
+ */
481
+ export const asVoid: <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<void, In, R> = internal.asVoid
482
+
483
+ // TODO(4.0): rename to `zip`?
484
+ /**
485
+ * Combines two schedules, preserving both their inputs and outputs.
486
+ *
487
+ * **Details**
488
+ *
489
+ * This function merges two schedules so that both their input types and output
490
+ * types are retained. When executed, the resulting schedule will take inputs
491
+ * from both original schedules and produce a tuple containing both outputs.
492
+ *
493
+ * It recurs if either schedule wants to continue, using the shorter delay.
494
+ *
495
+ * This is useful when you want to track multiple schedules simultaneously,
496
+ * ensuring that both receive the same inputs and produce combined results.
497
+ *
498
+ * @since 2.0.0
499
+ * @category Zipping
500
+ */
501
+ export const bothInOut: {
502
+ // TODO(4.0): rename to `zip`?
503
+ /**
504
+ * Combines two schedules, preserving both their inputs and outputs.
505
+ *
506
+ * **Details**
507
+ *
508
+ * This function merges two schedules so that both their input types and output
509
+ * types are retained. When executed, the resulting schedule will take inputs
510
+ * from both original schedules and produce a tuple containing both outputs.
511
+ *
512
+ * It recurs if either schedule wants to continue, using the shorter delay.
513
+ *
514
+ * This is useful when you want to track multiple schedules simultaneously,
515
+ * ensuring that both receive the same inputs and produce combined results.
516
+ *
517
+ * @since 2.0.0
518
+ * @category Zipping
519
+ */
520
+ <Out2, In2, R2>(that: Schedule<Out2, In2, R2>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<[Out, Out2], readonly [In, In2], R2 | R>
521
+ // TODO(4.0): rename to `zip`?
522
+ /**
523
+ * Combines two schedules, preserving both their inputs and outputs.
524
+ *
525
+ * **Details**
526
+ *
527
+ * This function merges two schedules so that both their input types and output
528
+ * types are retained. When executed, the resulting schedule will take inputs
529
+ * from both original schedules and produce a tuple containing both outputs.
530
+ *
531
+ * It recurs if either schedule wants to continue, using the shorter delay.
532
+ *
533
+ * This is useful when you want to track multiple schedules simultaneously,
534
+ * ensuring that both receive the same inputs and produce combined results.
535
+ *
536
+ * @since 2.0.0
537
+ * @category Zipping
538
+ */
539
+ <Out, In, R, Out2, In2, R2>(self: Schedule<Out, In, R>, that: Schedule<Out2, In2, R2>): Schedule<[Out, Out2], readonly [In, In2], R | R2>
540
+ } = internal.bothInOut
541
+
542
+ /**
543
+ * Filters schedule executions based on a custom condition.
544
+ *
545
+ * **Details**
546
+ *
547
+ * This function modifies a schedule by applying a custom test function to each
548
+ * input-output pair. The test function determines whether the schedule should
549
+ * continue or stop. If the function returns `true`, the schedule proceeds as
550
+ * usual; if it returns `false`, the schedule terminates.
551
+ *
552
+ * This is useful for conditional retries, custom stop conditions, or
553
+ * dynamically controlling execution based on observed inputs and outputs.
554
+ *
555
+ * @see {@link checkEffect} If you need to use an effectful test function.
556
+ *
557
+ * @since 2.0.0
558
+ * @category Recurrence Conditions
559
+ */
560
+ export const check: {
561
+ /**
562
+ * Filters schedule executions based on a custom condition.
563
+ *
564
+ * **Details**
565
+ *
566
+ * This function modifies a schedule by applying a custom test function to each
567
+ * input-output pair. The test function determines whether the schedule should
568
+ * continue or stop. If the function returns `true`, the schedule proceeds as
569
+ * usual; if it returns `false`, the schedule terminates.
570
+ *
571
+ * This is useful for conditional retries, custom stop conditions, or
572
+ * dynamically controlling execution based on observed inputs and outputs.
573
+ *
574
+ * @see {@link checkEffect} If you need to use an effectful test function.
575
+ *
576
+ * @since 2.0.0
577
+ * @category Recurrence Conditions
578
+ */
579
+ <In, Out>(test: (input: In, output: Out) => boolean): <R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
580
+ /**
581
+ * Filters schedule executions based on a custom condition.
582
+ *
583
+ * **Details**
584
+ *
585
+ * This function modifies a schedule by applying a custom test function to each
586
+ * input-output pair. The test function determines whether the schedule should
587
+ * continue or stop. If the function returns `true`, the schedule proceeds as
588
+ * usual; if it returns `false`, the schedule terminates.
589
+ *
590
+ * This is useful for conditional retries, custom stop conditions, or
591
+ * dynamically controlling execution based on observed inputs and outputs.
592
+ *
593
+ * @see {@link checkEffect} If you need to use an effectful test function.
594
+ *
595
+ * @since 2.0.0
596
+ * @category Recurrence Conditions
597
+ */
598
+ <Out, In, R>(self: Schedule<Out, In, R>, test: (input: In, output: Out) => boolean): Schedule<Out, In, R>
599
+ } = internal.check
600
+
601
+ /**
602
+ * Conditionally filters schedule executions using an effectful function.
603
+ *
604
+ * **Details**
605
+ *
606
+ * This function modifies a schedule by applying a custom effectful test
607
+ * function to each input-output pair. The test function determines whether the
608
+ * schedule should continue (`true`) or stop (`false`).
609
+ *
610
+ * This is useful when the decision to continue depends on external factors such
611
+ * as database lookups, API calls, or other asynchronous computations.
612
+ *
613
+ * @see {@link check} If you need to use a pure test function.
614
+ *
615
+ * @since 2.0.0
616
+ * @category Recurrence Conditions
617
+ */
618
+ export const checkEffect: {
619
+ /**
620
+ * Conditionally filters schedule executions using an effectful function.
621
+ *
622
+ * **Details**
623
+ *
624
+ * This function modifies a schedule by applying a custom effectful test
625
+ * function to each input-output pair. The test function determines whether the
626
+ * schedule should continue (`true`) or stop (`false`).
627
+ *
628
+ * This is useful when the decision to continue depends on external factors such
629
+ * as database lookups, API calls, or other asynchronous computations.
630
+ *
631
+ * @see {@link check} If you need to use a pure test function.
632
+ *
633
+ * @since 2.0.0
634
+ * @category Recurrence Conditions
635
+ */
636
+ <In, Out, R2>(test: (input: In, output: Out) => Effect.Effect<boolean, never, R2>): <R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R2 | R>
637
+ /**
638
+ * Conditionally filters schedule executions using an effectful function.
639
+ *
640
+ * **Details**
641
+ *
642
+ * This function modifies a schedule by applying a custom effectful test
643
+ * function to each input-output pair. The test function determines whether the
644
+ * schedule should continue (`true`) or stop (`false`).
645
+ *
646
+ * This is useful when the decision to continue depends on external factors such
647
+ * as database lookups, API calls, or other asynchronous computations.
648
+ *
649
+ * @see {@link check} If you need to use a pure test function.
650
+ *
651
+ * @since 2.0.0
652
+ * @category Recurrence Conditions
653
+ */
654
+ <Out, In, R, R2>(
655
+ self: Schedule<Out, In, R>,
656
+ test: (input: In, output: Out) => Effect.Effect<boolean, never, R2>
657
+ ): Schedule<Out, In, R | R2>
658
+ } = internal.checkEffect
659
+
660
+ /**
661
+ * A schedule that collects all inputs into a `Chunk`.
662
+ *
663
+ * **Details**
664
+ *
665
+ * This function creates a schedule that never terminates and continuously
666
+ * collects every input it receives into a `Chunk`. Each time the schedule runs,
667
+ * it appends the new input to the collected list.
668
+ *
669
+ * This is useful when you need to track all received inputs over time, such as
670
+ * logging user actions, recording retry attempts, or accumulating data for
671
+ * later processing.
672
+ *
673
+ * @see {@link collectAllOutputs} If you need to collect outputs instead of
674
+ * inputs.
675
+ *
676
+ * @since 2.0.0
677
+ * @category Collecting
678
+ */
679
+ export const collectAllInputs: <A>() => Schedule<Chunk.Chunk<A>, A> = internal.collectAllInputs
680
+
681
+ /**
682
+ * Collects all outputs of a schedule into a `Chunk`.
683
+ *
684
+ * **Details**
685
+ *
686
+ * This function modifies a given schedule so that instead of returning
687
+ * individual outputs, it accumulates them into a `Chunk`. The schedule
688
+ * continues to run, appending each output to the collected list.
689
+ *
690
+ * This is useful when you need to track all results over time, such as logging
691
+ * outputs, aggregating data, or keeping a history of previous values.
692
+ *
693
+ * @see {@link collectAllInputs} If you need to collect inputs instead of
694
+ * outputs.
695
+ *
696
+ * @since 2.0.0
697
+ * @category Collecting
698
+ */
699
+ export const collectAllOutputs: <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Chunk.Chunk<Out>, In, R> =
700
+ internal.collectAllOutputs
701
+
702
+ /**
703
+ * Collects all inputs into a `Chunk` until a condition fails.
704
+ *
705
+ * **Details**
706
+ *
707
+ * This function creates a schedule that continuously collects inputs into a
708
+ * `Chunk` until the given predicate function `f` evaluates to `false`. Once the
709
+ * condition fails, the schedule stops.
710
+ *
711
+ * @since 2.0.0
712
+ * @category Collecting
713
+ */
714
+ export const collectUntil: <A>(f: Predicate<A>) => Schedule<Chunk.Chunk<A>, A> = internal.collectUntil
715
+
716
+ /**
717
+ * Collects all inputs into a `Chunk` until an effectful condition fails.
718
+ *
719
+ * **Details**
720
+ *
721
+ * This function creates a schedule that continuously collects inputs into a
722
+ * `Chunk` until the given effectful predicate `f` returns `false`. The
723
+ * predicate runs as an effect, meaning it can involve asynchronous computations
724
+ * like API calls, database lookups, or randomness.
725
+ *
726
+ * @since 2.0.0
727
+ * @category Collecting
728
+ */
729
+ export const collectUntilEffect: <A, R>(
730
+ f: (a: A) => Effect.Effect<boolean, never, R>
731
+ ) => Schedule<Chunk.Chunk<A>, A, R> = internal.collectUntilEffect
732
+
733
+ /**
734
+ * Collects all inputs into a `Chunk` while a condition holds.
735
+ *
736
+ * **Details**
737
+ *
738
+ * This function creates a schedule that continuously collects inputs into a
739
+ * `Chunk` while the given predicate function `f` evaluates to `true`. As soon
740
+ * as the condition fails, the schedule stops.
741
+ *
742
+ * @since 2.0.0
743
+ * @category Collecting
744
+ */
745
+ export const collectWhile: <A>(f: Predicate<A>) => Schedule<Chunk.Chunk<A>, A> = internal.collectWhile
746
+
747
+ /**
748
+ * Collects all inputs into a `Chunk` while an effectful condition holds.
749
+ *
750
+ * **Details**
751
+ *
752
+ * This function creates a schedule that continuously collects inputs into a
753
+ * `Chunk` while the given effectful predicate `f` returns `true`. The predicate
754
+ * returns an effect, meaning it can depend on external state, such as database
755
+ * queries, API responses, or real-time user conditions.
756
+ *
757
+ * As soon as the effectful condition returns `false`, the schedule stops. This
758
+ * is useful for dynamically controlled data collection, where stopping depends
759
+ * on an external or asynchronous factor.
760
+ *
761
+ * @since 2.0.0
762
+ * @category Collecting
763
+ */
764
+ export const collectWhileEffect: <A, R>(
765
+ f: (a: A) => Effect.Effect<boolean, never, R>
766
+ ) => Schedule<Chunk.Chunk<A>, A, R> = internal.collectWhileEffect
767
+
768
+ /**
769
+ * Chains two schedules, passing the output of the first as the input to the
770
+ * second, while selecting the shorter delay between them.
771
+ *
772
+ * **Details**
773
+ *
774
+ * This function composes two schedules so that the output of the first schedule
775
+ * becomes the input of the second schedule. The first schedule executes first,
776
+ * and once it produces a result, the second schedule receives that result and
777
+ * continues execution based on it.
778
+ *
779
+ * This is useful for building complex scheduling workflows where one schedule's
780
+ * behavior determines how the next schedule behaves.
781
+ *
782
+ * @since 2.0.0
783
+ * @category Composition
784
+ */
785
+ export const compose: {
786
+ /**
787
+ * Chains two schedules, passing the output of the first as the input to the
788
+ * second, while selecting the shorter delay between them.
789
+ *
790
+ * **Details**
791
+ *
792
+ * This function composes two schedules so that the output of the first schedule
793
+ * becomes the input of the second schedule. The first schedule executes first,
794
+ * and once it produces a result, the second schedule receives that result and
795
+ * continues execution based on it.
796
+ *
797
+ * This is useful for building complex scheduling workflows where one schedule's
798
+ * behavior determines how the next schedule behaves.
799
+ *
800
+ * @since 2.0.0
801
+ * @category Composition
802
+ */
803
+ <Out2, Out, R2>(that: Schedule<Out2, Out, R2>): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out2, In, R2 | R>
804
+ /**
805
+ * Chains two schedules, passing the output of the first as the input to the
806
+ * second, while selecting the shorter delay between them.
807
+ *
808
+ * **Details**
809
+ *
810
+ * This function composes two schedules so that the output of the first schedule
811
+ * becomes the input of the second schedule. The first schedule executes first,
812
+ * and once it produces a result, the second schedule receives that result and
813
+ * continues execution based on it.
814
+ *
815
+ * This is useful for building complex scheduling workflows where one schedule's
816
+ * behavior determines how the next schedule behaves.
817
+ *
818
+ * @since 2.0.0
819
+ * @category Composition
820
+ */
821
+ <Out, In, R, Out2, R2>(self: Schedule<Out, In, R>, that: Schedule<Out2, Out, R2>): Schedule<Out2, In, R | R2>
822
+ } = internal.compose
823
+
824
+ /**
825
+ * Transforms the input type of a schedule.
826
+ *
827
+ * **Details**
828
+ *
829
+ * This function modifies a given schedule by applying a transformation function
830
+ * to its inputs. Instead of directly receiving values of type `In`, the
831
+ * schedule will now accept values of type `In2`, which are converted to `In`
832
+ * using the provided mapping function `f`.
833
+ *
834
+ * This is useful when you have a schedule that expects a specific input type
835
+ * but you need to adapt it to work with a different type.
836
+ *
837
+ * @see {@link mapInputEffect} If you need to use an effectful transformation function.
838
+ *
839
+ * @since 2.0.0
840
+ * @category Mapping
841
+ */
842
+ export const mapInput: {
843
+ /**
844
+ * Transforms the input type of a schedule.
845
+ *
846
+ * **Details**
847
+ *
848
+ * This function modifies a given schedule by applying a transformation function
849
+ * to its inputs. Instead of directly receiving values of type `In`, the
850
+ * schedule will now accept values of type `In2`, which are converted to `In`
851
+ * using the provided mapping function `f`.
852
+ *
853
+ * This is useful when you have a schedule that expects a specific input type
854
+ * but you need to adapt it to work with a different type.
855
+ *
856
+ * @see {@link mapInputEffect} If you need to use an effectful transformation function.
857
+ *
858
+ * @since 2.0.0
859
+ * @category Mapping
860
+ */
861
+ <In, In2>(f: (in2: In2) => In): <Out, R>(self: Schedule<Out, In, R>) => Schedule<Out, In2, R>
862
+ /**
863
+ * Transforms the input type of a schedule.
864
+ *
865
+ * **Details**
866
+ *
867
+ * This function modifies a given schedule by applying a transformation function
868
+ * to its inputs. Instead of directly receiving values of type `In`, the
869
+ * schedule will now accept values of type `In2`, which are converted to `In`
870
+ * using the provided mapping function `f`.
871
+ *
872
+ * This is useful when you have a schedule that expects a specific input type
873
+ * but you need to adapt it to work with a different type.
874
+ *
875
+ * @see {@link mapInputEffect} If you need to use an effectful transformation function.
876
+ *
877
+ * @since 2.0.0
878
+ * @category Mapping
879
+ */
880
+ <Out, In, R, In2>(self: Schedule<Out, In, R>, f: (in2: In2) => In): Schedule<Out, In2, R>
881
+ } = internal.mapInput
882
+
883
+ /**
884
+ * Transforms the input type of a schedule using an effectful function.
885
+ *
886
+ * **Details**
887
+ *
888
+ * This function modifies a schedule by applying an effectful transformation to
889
+ * its inputs. Instead of directly receiving values of type `In`, the schedule
890
+ * will now accept values of type `In2`, which are converted to `In` via an
891
+ * effectful function `f`.
892
+ *
893
+ * This is useful when the input transformation involves external dependencies,
894
+ * such as API calls, database lookups, or other asynchronous computations.
895
+ *
896
+ * @see {@link mapInput} If you need to use a pure transformation function.
897
+ *
898
+ * @since 2.0.0
899
+ * @category Mapping
900
+ */
901
+ export const mapInputEffect: {
902
+ /**
903
+ * Transforms the input type of a schedule using an effectful function.
904
+ *
905
+ * **Details**
906
+ *
907
+ * This function modifies a schedule by applying an effectful transformation to
908
+ * its inputs. Instead of directly receiving values of type `In`, the schedule
909
+ * will now accept values of type `In2`, which are converted to `In` via an
910
+ * effectful function `f`.
911
+ *
912
+ * This is useful when the input transformation involves external dependencies,
913
+ * such as API calls, database lookups, or other asynchronous computations.
914
+ *
915
+ * @see {@link mapInput} If you need to use a pure transformation function.
916
+ *
917
+ * @since 2.0.0
918
+ * @category Mapping
919
+ */
920
+ <In2, In, R2>(f: (in2: In2) => Effect.Effect<In, never, R2>): <Out, R>(self: Schedule<Out, In, R>) => Schedule<Out, In2, R2 | R>
921
+ /**
922
+ * Transforms the input type of a schedule using an effectful function.
923
+ *
924
+ * **Details**
925
+ *
926
+ * This function modifies a schedule by applying an effectful transformation to
927
+ * its inputs. Instead of directly receiving values of type `In`, the schedule
928
+ * will now accept values of type `In2`, which are converted to `In` via an
929
+ * effectful function `f`.
930
+ *
931
+ * This is useful when the input transformation involves external dependencies,
932
+ * such as API calls, database lookups, or other asynchronous computations.
933
+ *
934
+ * @see {@link mapInput} If you need to use a pure transformation function.
935
+ *
936
+ * @since 2.0.0
937
+ * @category Mapping
938
+ */
939
+ <Out, In, R, In2, R2>(self: Schedule<Out, In, R>, f: (in2: In2) => Effect.Effect<In, never, R2>): Schedule<Out, In2, R | R2>
940
+ } = internal.mapInputEffect
941
+
942
+ /**
943
+ * Transforms the required context of a schedule.
944
+ *
945
+ * **Details**
946
+ *
947
+ * This function modifies a schedule by mapping its required context (`R`) into
948
+ * a new context (`R0`) using the provided function `f`.
949
+ *
950
+ * This is useful when you need to adapt a schedule to work with a different
951
+ * dependency environment without changing its core logic.
952
+ *
953
+ * @since 2.0.0
954
+ * @category Mapping
955
+ */
956
+ export const mapInputContext: {
957
+ /**
958
+ * Transforms the required context of a schedule.
959
+ *
960
+ * **Details**
961
+ *
962
+ * This function modifies a schedule by mapping its required context (`R`) into
963
+ * a new context (`R0`) using the provided function `f`.
964
+ *
965
+ * This is useful when you need to adapt a schedule to work with a different
966
+ * dependency environment without changing its core logic.
967
+ *
968
+ * @since 2.0.0
969
+ * @category Mapping
970
+ */
971
+ <R0, R>(f: (env0: Context.Context<R0>) => Context.Context<R>): <Out, In>(self: Schedule<Out, In, R>) => Schedule<Out, In, R0>
972
+ /**
973
+ * Transforms the required context of a schedule.
974
+ *
975
+ * **Details**
976
+ *
977
+ * This function modifies a schedule by mapping its required context (`R`) into
978
+ * a new context (`R0`) using the provided function `f`.
979
+ *
980
+ * This is useful when you need to adapt a schedule to work with a different
981
+ * dependency environment without changing its core logic.
982
+ *
983
+ * @since 2.0.0
984
+ * @category Mapping
985
+ */
986
+ <Out, In, R, R0>(
987
+ self: Schedule<Out, In, R>,
988
+ f: (env0: Context.Context<R0>) => Context.Context<R>
989
+ ): Schedule<Out, In, R0>
990
+ } = internal.mapInputContext
991
+
992
+ /**
993
+ * A schedule that recurs indefinitely, counting the number of recurrences.
994
+ *
995
+ * **Details**
996
+ *
997
+ * This schedule never stops and simply counts how many times it has executed.
998
+ * Each recurrence increases the count, starting from `0`.
999
+ *
1000
+ * This is useful when tracking the number of attempts in retry policies,
1001
+ * measuring execution loops, or implementing infinite polling scenarios.
1002
+ *
1003
+ * @since 2.0.0
1004
+ * @category Constructors
1005
+ */
1006
+ export const count: Schedule<number> = internal.count
1007
+
1008
+ /**
1009
+ * Creates a schedule that recurs based on a cron expression.
1010
+ *
1011
+ * **Details**
1012
+ *
1013
+ * This schedule automatically executes at intervals defined by a cron
1014
+ * expression. It triggers at the beginning of each matched interval and
1015
+ * produces timestamps representing the start and end of the cron window.
1016
+ *
1017
+ * The cron `expression` is validated lazily, meaning errors may only be
1018
+ * detected when the schedule is executed.
1019
+ *
1020
+ * @since 2.0.0
1021
+ * @category Cron
1022
+ */
1023
+ export const cron: {
1024
+ /**
1025
+ * Creates a schedule that recurs based on a cron expression.
1026
+ *
1027
+ * **Details**
1028
+ *
1029
+ * This schedule automatically executes at intervals defined by a cron
1030
+ * expression. It triggers at the beginning of each matched interval and
1031
+ * produces timestamps representing the start and end of the cron window.
1032
+ *
1033
+ * The cron `expression` is validated lazily, meaning errors may only be
1034
+ * detected when the schedule is executed.
1035
+ *
1036
+ * @since 2.0.0
1037
+ * @category Cron
1038
+ */
1039
+ (cron: Cron.Cron): Schedule<[number, number]>
1040
+ /**
1041
+ * Creates a schedule that recurs based on a cron expression.
1042
+ *
1043
+ * **Details**
1044
+ *
1045
+ * This schedule automatically executes at intervals defined by a cron
1046
+ * expression. It triggers at the beginning of each matched interval and
1047
+ * produces timestamps representing the start and end of the cron window.
1048
+ *
1049
+ * The cron `expression` is validated lazily, meaning errors may only be
1050
+ * detected when the schedule is executed.
1051
+ *
1052
+ * @since 2.0.0
1053
+ * @category Cron
1054
+ */
1055
+ (expression: string, tz?: DateTime.TimeZone | string): Schedule<[number, number]>
1056
+ } = internal.cron
1057
+
1058
+ /**
1059
+ * Cron-like schedule that recurs at a specific second of each minute.
1060
+ *
1061
+ * **Details**
1062
+ *
1063
+ * This schedule triggers at the specified `second` of each minute,
1064
+ * starting at zero nanoseconds. It produces a count of executions
1065
+ * (0, 1, 2, ...). The `second` parameter is validated lazily, meaning
1066
+ * invalid values will only be caught at runtime.
1067
+ *
1068
+ * @since 2.0.0
1069
+ * @category Cron
1070
+ */
1071
+ export const secondOfMinute: (second: number) => Schedule<number> = internal.secondOfMinute
1072
+
1073
+ /**
1074
+ * Creates a schedule that recurs every specified minute of each hour.
1075
+ *
1076
+ * **Details**
1077
+ *
1078
+ * This schedule triggers once per hour at the specified `minute`, starting
1079
+ * exactly at `minute:00` (zero seconds). The schedule produces a count of
1080
+ * executions (`0, 1, 2, ...`), representing how many times it has run.
1081
+ *
1082
+ * The `minute` parameter must be between `0` and `59`. It is validated lazily,
1083
+ * meaning an invalid value will cause errors only when the schedule is
1084
+ * executed.
1085
+ *
1086
+ * @since 2.0.0
1087
+ * @category Cron
1088
+ */
1089
+ export const minuteOfHour: (minute: number) => Schedule<number> = internal.minuteOfHour
1090
+
1091
+ /**
1092
+ * Creates a schedule that recurs at a specific hour of each day.
1093
+ *
1094
+ * **Details**
1095
+ *
1096
+ * This schedule triggers once per day at the specified `hour`, starting at zero
1097
+ * minutes of that hour. The schedule produces a count of executions (`0, 1, 2,
1098
+ * ...`), indicating how many times it has been triggered.
1099
+ *
1100
+ * The `hour` parameter must be between `0` (midnight) and `23` (11 PM). It is
1101
+ * validated lazily, meaning an invalid value will cause errors only when the
1102
+ * schedule is executed.
1103
+ *
1104
+ * This is useful for scheduling daily recurring tasks at a fixed time, such as
1105
+ * running batch jobs or refreshing data.
1106
+ *
1107
+ * @since 2.0.0
1108
+ * @category Cron
1109
+ */
1110
+ export const hourOfDay: (hour: number) => Schedule<number> = internal.hourOfDay
1111
+
1112
+ /**
1113
+ * Creates a schedule that recurs on a specific day of the month.
1114
+ *
1115
+ * **Details**
1116
+ *
1117
+ * This schedule triggers at midnight on the specified day of each month. It
1118
+ * will not execute in months that have fewer days than the given day. For
1119
+ * example, if the schedule is set to run on the 31st, it will not execute in
1120
+ * months with only 30 days.
1121
+ *
1122
+ * The schedule produces a count of executions, starting at 0 and incrementing
1123
+ * with each recurrence.
1124
+ *
1125
+ * The `day` parameter is validated lazily, meaning errors may only be detected
1126
+ * when the schedule is executed.
1127
+ *
1128
+ * @since 2.0.0
1129
+ * @category Cron
1130
+ */
1131
+ export const dayOfMonth: (day: number) => Schedule<number> = internal.dayOfMonth
1132
+
1133
+ /**
1134
+ * Creates a schedule that recurs on a specific day of the week.
1135
+ *
1136
+ * **Details**
1137
+ *
1138
+ * This schedule triggers at midnight on the specified day of the week. The
1139
+ * `day` parameter follows the standard convention where `Monday = 1` and
1140
+ * `Sunday = 7`. The schedule produces a count of executions, starting at 0 and
1141
+ * incrementing with each recurrence.
1142
+ *
1143
+ * The `day` parameter is validated lazily, meaning errors may only be detected
1144
+ * when the schedule is executed.
1145
+ *
1146
+ * @since 2.0.0
1147
+ * @category Cron
1148
+ */
1149
+ export const dayOfWeek: (day: number) => Schedule<number> = internal.dayOfWeek
1150
+
1151
+ /**
1152
+ * Modifies a schedule by adding a computed delay before each execution.
1153
+ *
1154
+ * **Details**
1155
+ *
1156
+ * This function adjusts an existing schedule by applying a transformation to
1157
+ * its delays. Instead of using the default interval, each delay is modified
1158
+ * using the provided function `f`, which takes the current delay and returns a
1159
+ * new delay.
1160
+ *
1161
+ * This is useful for dynamically adjusting wait times between executions, such
1162
+ * as introducing jitter, exponential backoff, or custom delay logic.
1163
+ *
1164
+ * @see {@link delayedEffect} If you need to compute the delay using an effectful function.
1165
+ *
1166
+ * @since 2.0.0
1167
+ * @category Timing & Delay
1168
+ */
1169
+ export const delayed: {
1170
+ /**
1171
+ * Modifies a schedule by adding a computed delay before each execution.
1172
+ *
1173
+ * **Details**
1174
+ *
1175
+ * This function adjusts an existing schedule by applying a transformation to
1176
+ * its delays. Instead of using the default interval, each delay is modified
1177
+ * using the provided function `f`, which takes the current delay and returns a
1178
+ * new delay.
1179
+ *
1180
+ * This is useful for dynamically adjusting wait times between executions, such
1181
+ * as introducing jitter, exponential backoff, or custom delay logic.
1182
+ *
1183
+ * @see {@link delayedEffect} If you need to compute the delay using an effectful function.
1184
+ *
1185
+ * @since 2.0.0
1186
+ * @category Timing & Delay
1187
+ */
1188
+ (f: (duration: Duration.Duration) => Duration.DurationInput): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
1189
+ /**
1190
+ * Modifies a schedule by adding a computed delay before each execution.
1191
+ *
1192
+ * **Details**
1193
+ *
1194
+ * This function adjusts an existing schedule by applying a transformation to
1195
+ * its delays. Instead of using the default interval, each delay is modified
1196
+ * using the provided function `f`, which takes the current delay and returns a
1197
+ * new delay.
1198
+ *
1199
+ * This is useful for dynamically adjusting wait times between executions, such
1200
+ * as introducing jitter, exponential backoff, or custom delay logic.
1201
+ *
1202
+ * @see {@link delayedEffect} If you need to compute the delay using an effectful function.
1203
+ *
1204
+ * @since 2.0.0
1205
+ * @category Timing & Delay
1206
+ */
1207
+ <Out, In, R>(
1208
+ self: Schedule<Out, In, R>,
1209
+ f: (duration: Duration.Duration) => Duration.DurationInput
1210
+ ): Schedule<Out, In, R>
1211
+ } = internal.delayed
1212
+
1213
+ /**
1214
+ * Modifies a schedule by adding an effectfully computed delay before each
1215
+ * execution.
1216
+ *
1217
+ * **Details**
1218
+ *
1219
+ * This function adjusts an existing schedule by introducing a delay that is
1220
+ * computed via an effect. Instead of using a fixed delay, each interval is
1221
+ * dynamically adjusted based on an effectful function `f`, which takes the
1222
+ * current delay and returns a new delay wrapped in an `Effect`.
1223
+ *
1224
+ * This is useful for adaptive scheduling where delays depend on external
1225
+ * factors, such as API calls, database queries, or dynamic system conditions.
1226
+ *
1227
+ * @see {@link delayed} If you need to compute the delay using a pure function.
1228
+ *
1229
+ * @since 2.0.0
1230
+ * @category Timing & Delay
1231
+ */
1232
+ export const delayedEffect: {
1233
+ /**
1234
+ * Modifies a schedule by adding an effectfully computed delay before each
1235
+ * execution.
1236
+ *
1237
+ * **Details**
1238
+ *
1239
+ * This function adjusts an existing schedule by introducing a delay that is
1240
+ * computed via an effect. Instead of using a fixed delay, each interval is
1241
+ * dynamically adjusted based on an effectful function `f`, which takes the
1242
+ * current delay and returns a new delay wrapped in an `Effect`.
1243
+ *
1244
+ * This is useful for adaptive scheduling where delays depend on external
1245
+ * factors, such as API calls, database queries, or dynamic system conditions.
1246
+ *
1247
+ * @see {@link delayed} If you need to compute the delay using a pure function.
1248
+ *
1249
+ * @since 2.0.0
1250
+ * @category Timing & Delay
1251
+ */
1252
+ <R2>(
1253
+ f: (duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, R2>
1254
+ ): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R2 | R>
1255
+ /**
1256
+ * Modifies a schedule by adding an effectfully computed delay before each
1257
+ * execution.
1258
+ *
1259
+ * **Details**
1260
+ *
1261
+ * This function adjusts an existing schedule by introducing a delay that is
1262
+ * computed via an effect. Instead of using a fixed delay, each interval is
1263
+ * dynamically adjusted based on an effectful function `f`, which takes the
1264
+ * current delay and returns a new delay wrapped in an `Effect`.
1265
+ *
1266
+ * This is useful for adaptive scheduling where delays depend on external
1267
+ * factors, such as API calls, database queries, or dynamic system conditions.
1268
+ *
1269
+ * @see {@link delayed} If you need to compute the delay using a pure function.
1270
+ *
1271
+ * @since 2.0.0
1272
+ * @category Timing & Delay
1273
+ */
1274
+ <Out, In, R, R2>(
1275
+ self: Schedule<Out, In, R>,
1276
+ f: (duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, R2>
1277
+ ): Schedule<Out, In, R | R2>
1278
+ } = internal.delayedEffect
1279
+
1280
+ /**
1281
+ * Uses the delays produced by a schedule to further delay its intervals.
1282
+ *
1283
+ * **Details**
1284
+ *
1285
+ * This function modifies a schedule by using its own output delays to control
1286
+ * its execution timing. Instead of executing immediately at each interval, the
1287
+ * schedule will be delayed by the duration it produces.
1288
+ *
1289
+ * @since 2.0.0
1290
+ * @category Timing & Delay
1291
+ */
1292
+ export const delayedSchedule: <In, R>(
1293
+ schedule: Schedule<Duration.Duration, In, R>
1294
+ ) => Schedule<Duration.Duration, In, R> = internal.delayedSchedule
1295
+
1296
+ /**
1297
+ * Transforms a schedule to output the delay between each occurrence.
1298
+ *
1299
+ * **Details**
1300
+ *
1301
+ * This function modifies an existing schedule so that instead of producing its
1302
+ * original output, it now returns the delay between each scheduled execution.
1303
+ *
1304
+ * @since 2.0.0
1305
+ * @category Monitoring
1306
+ */
1307
+ export const delays: <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Duration.Duration, In, R> = internal.delays
1308
+
1309
+ /**
1310
+ * Transforms both the input and output of a schedule.
1311
+ *
1312
+ * **Details**
1313
+ *
1314
+ * This function modifies an existing schedule by applying a transformation to
1315
+ * both its input values and its output values. The provided transformation
1316
+ * functions `onInput` and `onOutput` allow you to map the schedule to work with
1317
+ * a different input type while modifying its outputs as well.
1318
+ *
1319
+ * @see {@link mapBothEffect} If you need to use effectful transformation functions.
1320
+ *
1321
+ * @since 2.0.0
1322
+ * @category Mapping
1323
+ */
1324
+ export const mapBoth: {
1325
+ /**
1326
+ * Transforms both the input and output of a schedule.
1327
+ *
1328
+ * **Details**
1329
+ *
1330
+ * This function modifies an existing schedule by applying a transformation to
1331
+ * both its input values and its output values. The provided transformation
1332
+ * functions `onInput` and `onOutput` allow you to map the schedule to work with
1333
+ * a different input type while modifying its outputs as well.
1334
+ *
1335
+ * @see {@link mapBothEffect} If you need to use effectful transformation functions.
1336
+ *
1337
+ * @since 2.0.0
1338
+ * @category Mapping
1339
+ */
1340
+ <In2, In, Out, Out2>(
1341
+ options: { readonly onInput: (in2: In2) => In; readonly onOutput: (out: Out) => Out2 }
1342
+ ): <R>(self: Schedule<Out, In, R>) => Schedule<Out2, In2, R>
1343
+ /**
1344
+ * Transforms both the input and output of a schedule.
1345
+ *
1346
+ * **Details**
1347
+ *
1348
+ * This function modifies an existing schedule by applying a transformation to
1349
+ * both its input values and its output values. The provided transformation
1350
+ * functions `onInput` and `onOutput` allow you to map the schedule to work with
1351
+ * a different input type while modifying its outputs as well.
1352
+ *
1353
+ * @see {@link mapBothEffect} If you need to use effectful transformation functions.
1354
+ *
1355
+ * @since 2.0.0
1356
+ * @category Mapping
1357
+ */
1358
+ <Out, In, R, In2, Out2>(
1359
+ self: Schedule<Out, In, R>,
1360
+ options: { readonly onInput: (in2: In2) => In; readonly onOutput: (out: Out) => Out2 }
1361
+ ): Schedule<Out2, In2, R>
1362
+ } = internal.mapBoth
1363
+
1364
+ /**
1365
+ * Transforms both the input and output of a schedule using effectful
1366
+ * computations.
1367
+ *
1368
+ * **Details**
1369
+ *
1370
+ * This function modifies an existing schedule by applying effectful
1371
+ * transformations to both its input values and its output values. The provided
1372
+ * effectful functions `onInput` and `onOutput` allow you to transform inputs
1373
+ * and outputs using computations that may involve additional logic, resource
1374
+ * access, or side effects.
1375
+ *
1376
+ * @see {@link mapBoth} If you need to use pure transformation functions.
1377
+ *
1378
+ * @since 2.0.0
1379
+ * @category Mapping
1380
+ */
1381
+ export const mapBothEffect: {
1382
+ /**
1383
+ * Transforms both the input and output of a schedule using effectful
1384
+ * computations.
1385
+ *
1386
+ * **Details**
1387
+ *
1388
+ * This function modifies an existing schedule by applying effectful
1389
+ * transformations to both its input values and its output values. The provided
1390
+ * effectful functions `onInput` and `onOutput` allow you to transform inputs
1391
+ * and outputs using computations that may involve additional logic, resource
1392
+ * access, or side effects.
1393
+ *
1394
+ * @see {@link mapBoth} If you need to use pure transformation functions.
1395
+ *
1396
+ * @since 2.0.0
1397
+ * @category Mapping
1398
+ */
1399
+ <In2, In, R2, Out, R3, Out2>(
1400
+ options: {
1401
+ readonly onInput: (input: In2) => Effect.Effect<In, never, R2>
1402
+ readonly onOutput: (out: Out) => Effect.Effect<Out2, never, R3>
1403
+ }
1404
+ ): <R>(self: Schedule<Out, In, R>) => Schedule<Out2, In2, R2 | R3 | R>
1405
+ /**
1406
+ * Transforms both the input and output of a schedule using effectful
1407
+ * computations.
1408
+ *
1409
+ * **Details**
1410
+ *
1411
+ * This function modifies an existing schedule by applying effectful
1412
+ * transformations to both its input values and its output values. The provided
1413
+ * effectful functions `onInput` and `onOutput` allow you to transform inputs
1414
+ * and outputs using computations that may involve additional logic, resource
1415
+ * access, or side effects.
1416
+ *
1417
+ * @see {@link mapBoth} If you need to use pure transformation functions.
1418
+ *
1419
+ * @since 2.0.0
1420
+ * @category Mapping
1421
+ */
1422
+ <Out, In, R, In2, R2, Out2, R3>(
1423
+ self: Schedule<Out, In, R>,
1424
+ options: {
1425
+ readonly onInput: (input: In2) => Effect.Effect<In, never, R2>
1426
+ readonly onOutput: (out: Out) => Effect.Effect<Out2, never, R3>
1427
+ }
1428
+ ): Schedule<Out2, In2, R | R2 | R3>
1429
+ } = internal.mapBothEffect
1430
+
1431
+ /**
1432
+ * Creates a driver to manually control the execution of a schedule.
1433
+ *
1434
+ * **Details**
1435
+ *
1436
+ * This function returns a `ScheduleDriver`, which allows stepping through a
1437
+ * schedule manually while handling delays and sleeping appropriately. A driver
1438
+ * is useful when you need fine-grained control over how a schedule progresses,
1439
+ * rather than relying on automatic execution.
1440
+ *
1441
+ * The returned driver exposes methods for retrieving the current state,
1442
+ * executing the next step, and resetting the schedule when needed.
1443
+ *
1444
+ * @since 2.0.0
1445
+ * @category getter
1446
+ */
1447
+ export const driver: <Out, In, R>(
1448
+ self: Schedule<Out, In, R>
1449
+ ) => Effect.Effect<ScheduleDriver<Out, In, R>> = internal.driver
1450
+
1451
+ // TODO(4.0): remove?
1452
+ /**
1453
+ * Alias of {@link fromDelay}.
1454
+ *
1455
+ * @since 2.0.0
1456
+ * @category Constructors
1457
+ */
1458
+ export const duration: (duration: Duration.DurationInput) => Schedule<Duration.Duration> = internal.duration
1459
+
1460
+ // TODO(4.0): remove?
1461
+ /**
1462
+ * Alias of {@link union}.
1463
+ *
1464
+ * @since 2.0.0
1465
+ * @category Alternatives
1466
+ */
1467
+ export const either: {
1468
+ // TODO(4.0): remove?
1469
+ /**
1470
+ * Alias of {@link union}.
1471
+ *
1472
+ * @since 2.0.0
1473
+ * @category Alternatives
1474
+ */
1475
+ <Out2, In2, R2>(that: Schedule<Out2, In2, R2>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<[Out, Out2], In & In2, R2 | R>
1476
+ // TODO(4.0): remove?
1477
+ /**
1478
+ * Alias of {@link union}.
1479
+ *
1480
+ * @since 2.0.0
1481
+ * @category Alternatives
1482
+ */
1483
+ <Out, In, R, Out2, In2, R2>(self: Schedule<Out, In, R>, that: Schedule<Out2, In2, R2>): Schedule<[Out, Out2], In & In2, R | R2>
1484
+ } = internal.either
1485
+
1486
+ // TODO(4.0): remove?
1487
+ /**
1488
+ * Alias of {@link unionWith}.
1489
+ *
1490
+ * @since 2.0.0
1491
+ * @category Alternatives
1492
+ */
1493
+ export const eitherWith: {
1494
+ // TODO(4.0): remove?
1495
+ /**
1496
+ * Alias of {@link unionWith}.
1497
+ *
1498
+ * @since 2.0.0
1499
+ * @category Alternatives
1500
+ */
1501
+ <Out2, In2, R2>(
1502
+ that: Schedule<Out2, In2, R2>,
1503
+ f: (x: Intervals.Intervals, y: Intervals.Intervals) => Intervals.Intervals
1504
+ ): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<[Out, Out2], In & In2, R2 | R>
1505
+ // TODO(4.0): remove?
1506
+ /**
1507
+ * Alias of {@link unionWith}.
1508
+ *
1509
+ * @since 2.0.0
1510
+ * @category Alternatives
1511
+ */
1512
+ <Out, In, R, Out2, In2, R2>(
1513
+ self: Schedule<Out, In, R>,
1514
+ that: Schedule<Out2, In2, R2>,
1515
+ f: (x: Intervals.Intervals, y: Intervals.Intervals) => Intervals.Intervals
1516
+ ): Schedule<[Out, Out2], In & In2, R | R2>
1517
+ } = internal.eitherWith
1518
+
1519
+ /**
1520
+ * Creates a schedule that tracks the total elapsed duration since it started.
1521
+ *
1522
+ * **Details**
1523
+ *
1524
+ * This schedule executes continuously and returns the total time that has
1525
+ * passed since the first execution. The duration keeps increasing with each
1526
+ * step, providing a way to measure elapsed time.
1527
+ *
1528
+ * This is useful for tracking execution time, monitoring delays, or
1529
+ * implementing logic based on how long a process has been running.
1530
+ *
1531
+ * @since 2.0.0
1532
+ * @category Constructors
1533
+ */
1534
+ export const elapsed: Schedule<Duration.Duration> = internal.elapsed
1535
+
1536
+ /**
1537
+ * Attaches a finalizer to a schedule that runs when the schedule completes.
1538
+ *
1539
+ * **Details**
1540
+ *
1541
+ * This function returns a new schedule that executes a given finalizer when the
1542
+ * schedule reaches completion. Unlike `Effect.ensuring`, this method does not
1543
+ * guarantee the finalizer will run in all cases. If the schedule never
1544
+ * initializes or is not driven to completion, the finalizer may not execute.
1545
+ * However, if the schedule decides not to continue, the finalizer will be
1546
+ * invoked.
1547
+ *
1548
+ * This is useful for cleaning up resources, logging, or executing other side
1549
+ * effects when a schedule completes.
1550
+ *
1551
+ * @since 2.0.0
1552
+ * @category Finalization
1553
+ */
1554
+ export const ensuring: {
1555
+ /**
1556
+ * Attaches a finalizer to a schedule that runs when the schedule completes.
1557
+ *
1558
+ * **Details**
1559
+ *
1560
+ * This function returns a new schedule that executes a given finalizer when the
1561
+ * schedule reaches completion. Unlike `Effect.ensuring`, this method does not
1562
+ * guarantee the finalizer will run in all cases. If the schedule never
1563
+ * initializes or is not driven to completion, the finalizer may not execute.
1564
+ * However, if the schedule decides not to continue, the finalizer will be
1565
+ * invoked.
1566
+ *
1567
+ * This is useful for cleaning up resources, logging, or executing other side
1568
+ * effects when a schedule completes.
1569
+ *
1570
+ * @since 2.0.0
1571
+ * @category Finalization
1572
+ */
1573
+ <X>(finalizer: Effect.Effect<X, never, never>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
1574
+ /**
1575
+ * Attaches a finalizer to a schedule that runs when the schedule completes.
1576
+ *
1577
+ * **Details**
1578
+ *
1579
+ * This function returns a new schedule that executes a given finalizer when the
1580
+ * schedule reaches completion. Unlike `Effect.ensuring`, this method does not
1581
+ * guarantee the finalizer will run in all cases. If the schedule never
1582
+ * initializes or is not driven to completion, the finalizer may not execute.
1583
+ * However, if the schedule decides not to continue, the finalizer will be
1584
+ * invoked.
1585
+ *
1586
+ * This is useful for cleaning up resources, logging, or executing other side
1587
+ * effects when a schedule completes.
1588
+ *
1589
+ * @since 2.0.0
1590
+ * @category Finalization
1591
+ */
1592
+ <Out, In, R, X>(self: Schedule<Out, In, R>, finalizer: Effect.Effect<X, never, never>): Schedule<Out, In, R>
1593
+ } = internal.ensuring
1594
+
1595
+ /**
1596
+ * Creates a schedule that recurs indefinitely with exponentially increasing
1597
+ * delays.
1598
+ *
1599
+ * **Details**
1600
+ *
1601
+ * This schedule starts with an initial delay of `base` and increases the delay
1602
+ * exponentially on each repetition using the formula `base * factor^n`, where
1603
+ * `n` is the number of times the schedule has executed so far. If no `factor`
1604
+ * is provided, it defaults to `2`, causing the delay to double after each
1605
+ * execution.
1606
+ *
1607
+ * @since 2.0.0
1608
+ * @category Constructors
1609
+ */
1610
+ export const exponential: (
1611
+ base: Duration.DurationInput,
1612
+ factor?: number
1613
+ ) => Schedule<Duration.Duration> = internal.exponential
1614
+
1615
+ /**
1616
+ * Creates a schedule that recurs indefinitely with Fibonacci-based increasing
1617
+ * delays.
1618
+ *
1619
+ * **Details**
1620
+ *
1621
+ * This schedule starts with an initial delay of `one` and increases subsequent
1622
+ * delays by summing the two previous delays, following the Fibonacci sequence.
1623
+ * The delay pattern follows: `one, one, one + one, (one + one) + one, ...`,
1624
+ * resulting in `1s, 1s, 2s, 3s, 5s, 8s, 13s, ...` if `one = 1s`.
1625
+ *
1626
+ * This is useful for progressive backoff strategies, where delays grow
1627
+ * naturally over time without increasing as aggressively as an exponential
1628
+ * schedule.
1629
+ *
1630
+ * @since 2.0.0
1631
+ * @category Constructors
1632
+ */
1633
+ export const fibonacci: (one: Duration.DurationInput) => Schedule<Duration.Duration> = internal.fibonacci
1634
+
1635
+ /**
1636
+ * Creates a schedule that recurs at a fixed interval.
1637
+ *
1638
+ * **Details**
1639
+ *
1640
+ * This schedule executes at regular, evenly spaced intervals, returning the
1641
+ * number of times it has run so far. If the action being executed takes longer
1642
+ * than the interval, the next execution will happen immediately to prevent
1643
+ * "pile-ups," ensuring that the schedule remains consistent without overlapping
1644
+ * executions.
1645
+ *
1646
+ * ```text
1647
+ * |-----interval-----|-----interval-----|-----interval-----|
1648
+ * |---------action--------||action|-----|action|-----------|
1649
+ * ```
1650
+ *
1651
+ * @see {@link spaced} If you need to run from the end of the last execution.
1652
+ *
1653
+ * @since 2.0.0
1654
+ * @category Constructors
1655
+ */
1656
+ export const fixed: (interval: Duration.DurationInput) => Schedule<number> = internal.fixed
1657
+
1658
+ /**
1659
+ * Creates a schedule that recurs indefinitely, producing a count of
1660
+ * repetitions.
1661
+ *
1662
+ * **Details**
1663
+ *
1664
+ * This schedule runs indefinitely, returning an increasing count of executions
1665
+ * (`0, 1, 2, 3, ...`). Each step increments the count by one, allowing tracking
1666
+ * of how many times it has executed.
1667
+ *
1668
+ * @since 2.0.0
1669
+ * @category Constructors
1670
+ */
1671
+ export const forever: Schedule<number> = internal.forever
1672
+
1673
+ /**
1674
+ * Creates a schedule that recurs once after a specified duration.
1675
+ *
1676
+ * **Details**
1677
+ *
1678
+ * This schedule executes a single time after waiting for the given duration.
1679
+ * Once it has executed, it does not repeat.
1680
+ *
1681
+ * @see {@link fromDelays} If you need to create a schedule with multiple delays.
1682
+ *
1683
+ * @since 2.0.0
1684
+ * @category Constructors
1685
+ */
1686
+ export const fromDelay: (delay: Duration.DurationInput) => Schedule<Duration.Duration> = internal.fromDelay
1687
+
1688
+ /**
1689
+ * Creates a schedule that recurs once for each specified duration, applying the
1690
+ * given delays sequentially.
1691
+ *
1692
+ * **Details**
1693
+ *
1694
+ * This schedule executes multiple times, each time waiting for the
1695
+ * corresponding duration from the provided list of delays. The first execution
1696
+ * waits for `delay`, the next for the second value in `delays`, and so on. Once
1697
+ * all delays have been used, the schedule stops executing.
1698
+ *
1699
+ * This is useful for defining a custom delay sequence that does not follow a
1700
+ * fixed pattern like exponential or Fibonacci backoff.
1701
+ *
1702
+ * @since 2.0.0
1703
+ * @category Constructors
1704
+ */
1705
+ export const fromDelays: (
1706
+ delay: Duration.DurationInput,
1707
+ ...delays: Array<Duration.DurationInput>
1708
+ ) => Schedule<Duration.Duration> = internal.fromDelays
1709
+
1710
+ /**
1711
+ * Creates a schedule that always recurs, transforming input values using the
1712
+ * specified function.
1713
+ *
1714
+ * **Details**
1715
+ *
1716
+ * This schedule continuously executes and applies the given function `f` to
1717
+ * each input value, producing a transformed output. The schedule itself does
1718
+ * not control delays or stopping conditions; it simply transforms the input
1719
+ * values as they are processed.
1720
+ *
1721
+ * This is useful when defining schedules that map inputs to outputs, allowing
1722
+ * dynamic transformations of incoming data.
1723
+ *
1724
+ * @since 2.0.0
1725
+ * @category Constructors
1726
+ */
1727
+ export const fromFunction: <A, B>(f: (a: A) => B) => Schedule<B, A> = internal.fromFunction
1728
+
1729
+ /**
1730
+ * Creates a schedule that always recurs, passing inputs directly as outputs.
1731
+ *
1732
+ * **Details**
1733
+ *
1734
+ * This schedule runs indefinitely, returning each input value as its output
1735
+ * without modification. It effectively acts as a pass-through that simply
1736
+ * echoes its input values at each step.
1737
+ *
1738
+ * @since 2.0.0
1739
+ * @category Constructors
1740
+ */
1741
+ export const identity: <A>() => Schedule<A, A> = internal.identity
1742
+
1743
+ /**
1744
+ * Transforms a schedule to pass through its inputs as outputs.
1745
+ *
1746
+ * **Details**
1747
+ *
1748
+ * This function modifies an existing schedule so that it returns its input
1749
+ * values instead of its original output values. The schedule's timing remains
1750
+ * unchanged, but its outputs are replaced with whatever inputs it receives.
1751
+ *
1752
+ * @since 2.0.0
1753
+ */
1754
+ export const passthrough: <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<In, In, R> = internal.passthrough
1755
+
1756
+ /**
1757
+ * Combines two schedules, continuing only if both schedules want to continue,
1758
+ * using the longer delay.
1759
+ *
1760
+ * **Details**
1761
+ *
1762
+ * This function takes two schedules and creates a new schedule that only
1763
+ * continues execution if both schedules allow it. The interval between
1764
+ * recurrences is determined by the longer delay between the two schedules.
1765
+ *
1766
+ * The output of the resulting schedule is a tuple containing the outputs of
1767
+ * both schedules. The input type is the intersection of both schedules' input
1768
+ * types.
1769
+ *
1770
+ * This is useful when coordinating multiple scheduling conditions where
1771
+ * execution should proceed only when both schedules permit it.
1772
+ *
1773
+ * @see {@link intersectWith} If you need to use a custom merge function.
1774
+ *
1775
+ * @since 2.0.0
1776
+ * @category Composition
1777
+ */
1778
+ export const intersect: {
1779
+ /**
1780
+ * Combines two schedules, continuing only if both schedules want to continue,
1781
+ * using the longer delay.
1782
+ *
1783
+ * **Details**
1784
+ *
1785
+ * This function takes two schedules and creates a new schedule that only
1786
+ * continues execution if both schedules allow it. The interval between
1787
+ * recurrences is determined by the longer delay between the two schedules.
1788
+ *
1789
+ * The output of the resulting schedule is a tuple containing the outputs of
1790
+ * both schedules. The input type is the intersection of both schedules' input
1791
+ * types.
1792
+ *
1793
+ * This is useful when coordinating multiple scheduling conditions where
1794
+ * execution should proceed only when both schedules permit it.
1795
+ *
1796
+ * @see {@link intersectWith} If you need to use a custom merge function.
1797
+ *
1798
+ * @since 2.0.0
1799
+ * @category Composition
1800
+ */
1801
+ <Out2, In2, R2>(that: Schedule<Out2, In2, R2>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<[Out, Out2], In & In2, R2 | R>
1802
+ /**
1803
+ * Combines two schedules, continuing only if both schedules want to continue,
1804
+ * using the longer delay.
1805
+ *
1806
+ * **Details**
1807
+ *
1808
+ * This function takes two schedules and creates a new schedule that only
1809
+ * continues execution if both schedules allow it. The interval between
1810
+ * recurrences is determined by the longer delay between the two schedules.
1811
+ *
1812
+ * The output of the resulting schedule is a tuple containing the outputs of
1813
+ * both schedules. The input type is the intersection of both schedules' input
1814
+ * types.
1815
+ *
1816
+ * This is useful when coordinating multiple scheduling conditions where
1817
+ * execution should proceed only when both schedules permit it.
1818
+ *
1819
+ * @see {@link intersectWith} If you need to use a custom merge function.
1820
+ *
1821
+ * @since 2.0.0
1822
+ * @category Composition
1823
+ */
1824
+ <Out, In, R, Out2, In2, R2>(self: Schedule<Out, In, R>, that: Schedule<Out2, In2, R2>): Schedule<[Out, Out2], In & In2, R | R2>
1825
+ } = internal.intersect
1826
+
1827
+ /**
1828
+ * Combines two schedules, continuing only if both want to continue, merging
1829
+ * intervals using a custom function.
1830
+ *
1831
+ * **Details**
1832
+ *
1833
+ * This function takes two schedules and creates a new schedule that only
1834
+ * continues execution if both schedules allow it. Instead of automatically
1835
+ * using the longer delay (like {@link intersect}), this function applies a
1836
+ * user-provided merge function `f` to determine the next interval between
1837
+ * executions.
1838
+ *
1839
+ * The output of the resulting schedule is a tuple containing the outputs of
1840
+ * both schedules, and the input type is the intersection of both schedules'
1841
+ * input types.
1842
+ *
1843
+ * @since 2.0.0
1844
+ * @category Composition
1845
+ */
1846
+ export const intersectWith: {
1847
+ /**
1848
+ * Combines two schedules, continuing only if both want to continue, merging
1849
+ * intervals using a custom function.
1850
+ *
1851
+ * **Details**
1852
+ *
1853
+ * This function takes two schedules and creates a new schedule that only
1854
+ * continues execution if both schedules allow it. Instead of automatically
1855
+ * using the longer delay (like {@link intersect}), this function applies a
1856
+ * user-provided merge function `f` to determine the next interval between
1857
+ * executions.
1858
+ *
1859
+ * The output of the resulting schedule is a tuple containing the outputs of
1860
+ * both schedules, and the input type is the intersection of both schedules'
1861
+ * input types.
1862
+ *
1863
+ * @since 2.0.0
1864
+ * @category Composition
1865
+ */
1866
+ <Out2, In2, R2>(
1867
+ that: Schedule<Out2, In2, R2>,
1868
+ f: (x: Intervals.Intervals, y: Intervals.Intervals) => Intervals.Intervals
1869
+ ): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<[Out, Out2], In & In2, R2 | R>
1870
+ /**
1871
+ * Combines two schedules, continuing only if both want to continue, merging
1872
+ * intervals using a custom function.
1873
+ *
1874
+ * **Details**
1875
+ *
1876
+ * This function takes two schedules and creates a new schedule that only
1877
+ * continues execution if both schedules allow it. Instead of automatically
1878
+ * using the longer delay (like {@link intersect}), this function applies a
1879
+ * user-provided merge function `f` to determine the next interval between
1880
+ * executions.
1881
+ *
1882
+ * The output of the resulting schedule is a tuple containing the outputs of
1883
+ * both schedules, and the input type is the intersection of both schedules'
1884
+ * input types.
1885
+ *
1886
+ * @since 2.0.0
1887
+ * @category Composition
1888
+ */
1889
+ <Out, In, R, Out2, In2, R2>(
1890
+ self: Schedule<Out, In, R>,
1891
+ that: Schedule<Out2, In2, R2>,
1892
+ f: (x: Intervals.Intervals, y: Intervals.Intervals) => Intervals.Intervals
1893
+ ): Schedule<[Out, Out2], In & In2, R | R2>
1894
+ } = internal.intersectWith
1895
+
1896
+ /**
1897
+ * Returns a new schedule that randomly adjusts the interval size within a
1898
+ * range.
1899
+ *
1900
+ * **Details**
1901
+ *
1902
+ * This function modifies a schedule so that its delay between executions is
1903
+ * randomly varied within a range. By default, the delay is adjusted between
1904
+ * `80%` (`0.8 * interval`) and `120%` (`1.2 * interval`) of the original
1905
+ * interval size.
1906
+ *
1907
+ * This is useful for adding randomness to repeated executions, reducing
1908
+ * contention in distributed systems, and avoiding synchronized execution
1909
+ * patterns that can cause bottlenecks.
1910
+ *
1911
+ * @see {@link jitteredWith} If you need to specify custom min/max values.
1912
+ *
1913
+ * @since 2.0.0
1914
+ * @category Timing & Delay
1915
+ */
1916
+ export const jittered: <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R> = internal.jittered
1917
+
1918
+ /**
1919
+ * Returns a new schedule that randomly adjusts the interval size within a
1920
+ * user-defined range.
1921
+ *
1922
+ * **Details**
1923
+ *
1924
+ * This function modifies a schedule so that its delay between executions is
1925
+ * randomly varied within a specified range. Instead of using the default `0.8 -
1926
+ * 1.2` range like {@link jittered}, this function allows customizing the `min`
1927
+ * and `max` multipliers.
1928
+ *
1929
+ * The delay for each step will be adjusted within `min * original_interval` and
1930
+ * `max * original_interval`. If `min` and `max` are not provided, the defaults
1931
+ * are `0.8` and `1.2`, respectively.
1932
+ *
1933
+ * This is useful for introducing randomness into scheduling behavior while
1934
+ * having precise control over the jitter range.
1935
+ *
1936
+ * @since 2.0.0
1937
+ * @category Timing & Delay
1938
+ */
1939
+ export const jitteredWith: {
1940
+ /**
1941
+ * Returns a new schedule that randomly adjusts the interval size within a
1942
+ * user-defined range.
1943
+ *
1944
+ * **Details**
1945
+ *
1946
+ * This function modifies a schedule so that its delay between executions is
1947
+ * randomly varied within a specified range. Instead of using the default `0.8 -
1948
+ * 1.2` range like {@link jittered}, this function allows customizing the `min`
1949
+ * and `max` multipliers.
1950
+ *
1951
+ * The delay for each step will be adjusted within `min * original_interval` and
1952
+ * `max * original_interval`. If `min` and `max` are not provided, the defaults
1953
+ * are `0.8` and `1.2`, respectively.
1954
+ *
1955
+ * This is useful for introducing randomness into scheduling behavior while
1956
+ * having precise control over the jitter range.
1957
+ *
1958
+ * @since 2.0.0
1959
+ * @category Timing & Delay
1960
+ */
1961
+ (options: { min?: number | undefined; max?: number | undefined }): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
1962
+ /**
1963
+ * Returns a new schedule that randomly adjusts the interval size within a
1964
+ * user-defined range.
1965
+ *
1966
+ * **Details**
1967
+ *
1968
+ * This function modifies a schedule so that its delay between executions is
1969
+ * randomly varied within a specified range. Instead of using the default `0.8 -
1970
+ * 1.2` range like {@link jittered}, this function allows customizing the `min`
1971
+ * and `max` multipliers.
1972
+ *
1973
+ * The delay for each step will be adjusted within `min * original_interval` and
1974
+ * `max * original_interval`. If `min` and `max` are not provided, the defaults
1975
+ * are `0.8` and `1.2`, respectively.
1976
+ *
1977
+ * This is useful for introducing randomness into scheduling behavior while
1978
+ * having precise control over the jitter range.
1979
+ *
1980
+ * @since 2.0.0
1981
+ * @category Timing & Delay
1982
+ */
1983
+ <Out, In, R>(
1984
+ self: Schedule<Out, In, R>,
1985
+ options: { min?: number | undefined; max?: number | undefined }
1986
+ ): Schedule<Out, In, R>
1987
+ } = internal.jitteredWith
1988
+
1989
+ /**
1990
+ * Creates a schedule that recurs indefinitely, increasing the delay linearly.
1991
+ *
1992
+ * **Details**
1993
+ *
1994
+ * This schedule starts with an initial delay of `base` and increases the delay
1995
+ * on each recurrence in a linear fashion, following the formula:
1996
+ *
1997
+ * `delay = base * n`
1998
+ *
1999
+ * where `n` is the number of times the schedule has executed so far. This
2000
+ * results in increasing intervals between executions.
2001
+ *
2002
+ * This is useful for implementing linear backoff strategies where the wait time
2003
+ * between retries increases at a steady rate.
2004
+ *
2005
+ * @since 2.0.0
2006
+ * @category Constructors
2007
+ */
2008
+ export const linear: (base: Duration.DurationInput) => Schedule<Duration.Duration> = internal.linear
2009
+
2010
+ /**
2011
+ * Returns a new schedule that transforms its output using the specified
2012
+ * function.
2013
+ *
2014
+ * **Details**
2015
+ *
2016
+ * This function modifies an existing schedule so that its outputs are
2017
+ * transformed by the provided function `f`. The timing and recurrence behavior
2018
+ * of the schedule remain unchanged, but the values it produces are mapped to
2019
+ * new values.
2020
+ *
2021
+ * This is useful when composing schedules where you need to adjust the output
2022
+ * format or apply additional processing.
2023
+ *
2024
+ * @see {@link mapEffect} If you need to use an effectful transformation
2025
+ * function.
2026
+ *
2027
+ * @since 2.0.0
2028
+ * @category Mapping
2029
+ */
2030
+ export const map: {
2031
+ /**
2032
+ * Returns a new schedule that transforms its output using the specified
2033
+ * function.
2034
+ *
2035
+ * **Details**
2036
+ *
2037
+ * This function modifies an existing schedule so that its outputs are
2038
+ * transformed by the provided function `f`. The timing and recurrence behavior
2039
+ * of the schedule remain unchanged, but the values it produces are mapped to
2040
+ * new values.
2041
+ *
2042
+ * This is useful when composing schedules where you need to adjust the output
2043
+ * format or apply additional processing.
2044
+ *
2045
+ * @see {@link mapEffect} If you need to use an effectful transformation
2046
+ * function.
2047
+ *
2048
+ * @since 2.0.0
2049
+ * @category Mapping
2050
+ */
2051
+ <Out, Out2>(f: (out: Out) => Out2): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out2, In, R>
2052
+ /**
2053
+ * Returns a new schedule that transforms its output using the specified
2054
+ * function.
2055
+ *
2056
+ * **Details**
2057
+ *
2058
+ * This function modifies an existing schedule so that its outputs are
2059
+ * transformed by the provided function `f`. The timing and recurrence behavior
2060
+ * of the schedule remain unchanged, but the values it produces are mapped to
2061
+ * new values.
2062
+ *
2063
+ * This is useful when composing schedules where you need to adjust the output
2064
+ * format or apply additional processing.
2065
+ *
2066
+ * @see {@link mapEffect} If you need to use an effectful transformation
2067
+ * function.
2068
+ *
2069
+ * @since 2.0.0
2070
+ * @category Mapping
2071
+ */
2072
+ <Out, In, R, Out2>(self: Schedule<Out, In, R>, f: (out: Out) => Out2): Schedule<Out2, In, R>
2073
+ } = internal.map
2074
+
2075
+ /**
2076
+ * Returns a new schedule that applies an effectful transformation to its
2077
+ * output.
2078
+ *
2079
+ * **Details**
2080
+ *
2081
+ * This function modifies an existing schedule by applying an effectful function
2082
+ * `f` to its output values. The timing and recurrence behavior of the schedule
2083
+ * remain unchanged, but each output is mapped to a new value within an
2084
+ * `Effect`.
2085
+ *
2086
+ * This is useful when you need to perform side effects or asynchronous
2087
+ * transformations before passing the output forward.
2088
+ *
2089
+ * @see {@link map} If you need to use a pure transformation function.
2090
+ *
2091
+ * @since 2.0.0
2092
+ * @category Mapping
2093
+ */
2094
+ export const mapEffect: {
2095
+ /**
2096
+ * Returns a new schedule that applies an effectful transformation to its
2097
+ * output.
2098
+ *
2099
+ * **Details**
2100
+ *
2101
+ * This function modifies an existing schedule by applying an effectful function
2102
+ * `f` to its output values. The timing and recurrence behavior of the schedule
2103
+ * remain unchanged, but each output is mapped to a new value within an
2104
+ * `Effect`.
2105
+ *
2106
+ * This is useful when you need to perform side effects or asynchronous
2107
+ * transformations before passing the output forward.
2108
+ *
2109
+ * @see {@link map} If you need to use a pure transformation function.
2110
+ *
2111
+ * @since 2.0.0
2112
+ * @category Mapping
2113
+ */
2114
+ <Out, Out2, R2>(f: (out: Out) => Effect.Effect<Out2, never, R2>): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out2, In, R2 | R>
2115
+ /**
2116
+ * Returns a new schedule that applies an effectful transformation to its
2117
+ * output.
2118
+ *
2119
+ * **Details**
2120
+ *
2121
+ * This function modifies an existing schedule by applying an effectful function
2122
+ * `f` to its output values. The timing and recurrence behavior of the schedule
2123
+ * remain unchanged, but each output is mapped to a new value within an
2124
+ * `Effect`.
2125
+ *
2126
+ * This is useful when you need to perform side effects or asynchronous
2127
+ * transformations before passing the output forward.
2128
+ *
2129
+ * @see {@link map} If you need to use a pure transformation function.
2130
+ *
2131
+ * @since 2.0.0
2132
+ * @category Mapping
2133
+ */
2134
+ <Out, In, R, Out2, R2>(
2135
+ self: Schedule<Out, In, R>,
2136
+ f: (out: Out) => Effect.Effect<Out2, never, R2>
2137
+ ): Schedule<Out2, In, R | R2>
2138
+ } = internal.mapEffect
2139
+
2140
+ /**
2141
+ * Returns a new schedule that modifies the delay between executions using a
2142
+ * custom function.
2143
+ *
2144
+ * **Details**
2145
+ *
2146
+ * This function transforms an existing schedule by applying `f` to modify the
2147
+ * delay before each execution. The function receives both the schedule's output
2148
+ * (`out`) and the originally computed delay (`duration`), and returns a new
2149
+ * adjusted delay.
2150
+ *
2151
+ * @see {@link modifyDelayEffect} If you need to use an effectful function.
2152
+ *
2153
+ * @since 2.0.0
2154
+ * @category Timing & Delay
2155
+ */
2156
+ export const modifyDelay: {
2157
+ /**
2158
+ * Returns a new schedule that modifies the delay between executions using a
2159
+ * custom function.
2160
+ *
2161
+ * **Details**
2162
+ *
2163
+ * This function transforms an existing schedule by applying `f` to modify the
2164
+ * delay before each execution. The function receives both the schedule's output
2165
+ * (`out`) and the originally computed delay (`duration`), and returns a new
2166
+ * adjusted delay.
2167
+ *
2168
+ * @see {@link modifyDelayEffect} If you need to use an effectful function.
2169
+ *
2170
+ * @since 2.0.0
2171
+ * @category Timing & Delay
2172
+ */
2173
+ <Out>(f: (out: Out, duration: Duration.Duration) => Duration.DurationInput): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
2174
+ /**
2175
+ * Returns a new schedule that modifies the delay between executions using a
2176
+ * custom function.
2177
+ *
2178
+ * **Details**
2179
+ *
2180
+ * This function transforms an existing schedule by applying `f` to modify the
2181
+ * delay before each execution. The function receives both the schedule's output
2182
+ * (`out`) and the originally computed delay (`duration`), and returns a new
2183
+ * adjusted delay.
2184
+ *
2185
+ * @see {@link modifyDelayEffect} If you need to use an effectful function.
2186
+ *
2187
+ * @since 2.0.0
2188
+ * @category Timing & Delay
2189
+ */
2190
+ <Out, In, R>(
2191
+ self: Schedule<Out, In, R>,
2192
+ f: (out: Out, duration: Duration.Duration) => Duration.DurationInput
2193
+ ): Schedule<Out, In, R>
2194
+ } = internal.modifyDelay
2195
+
2196
+ /**
2197
+ * Returns a new schedule that modifies the delay before execution using an
2198
+ * effectful function.
2199
+ *
2200
+ * **Details**
2201
+ *
2202
+ * This function takes an existing schedule and applies an effectful function
2203
+ * `f` to dynamically adjust the delay before each execution. The function
2204
+ * receives both the schedule's output (`out`) and the originally computed delay
2205
+ * (`duration`), returning a new adjusted delay wrapped in an `Effect`.
2206
+ *
2207
+ * @see {@link modifyDelay} If you need to use a pure function.
2208
+ *
2209
+ * @since 2.0.0
2210
+ * @category Timing & Delay
2211
+ */
2212
+ export const modifyDelayEffect: {
2213
+ /**
2214
+ * Returns a new schedule that modifies the delay before execution using an
2215
+ * effectful function.
2216
+ *
2217
+ * **Details**
2218
+ *
2219
+ * This function takes an existing schedule and applies an effectful function
2220
+ * `f` to dynamically adjust the delay before each execution. The function
2221
+ * receives both the schedule's output (`out`) and the originally computed delay
2222
+ * (`duration`), returning a new adjusted delay wrapped in an `Effect`.
2223
+ *
2224
+ * @see {@link modifyDelay} If you need to use a pure function.
2225
+ *
2226
+ * @since 2.0.0
2227
+ * @category Timing & Delay
2228
+ */
2229
+ <Out, R2>(
2230
+ f: (out: Out, duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, R2>
2231
+ ): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R2 | R>
2232
+ /**
2233
+ * Returns a new schedule that modifies the delay before execution using an
2234
+ * effectful function.
2235
+ *
2236
+ * **Details**
2237
+ *
2238
+ * This function takes an existing schedule and applies an effectful function
2239
+ * `f` to dynamically adjust the delay before each execution. The function
2240
+ * receives both the schedule's output (`out`) and the originally computed delay
2241
+ * (`duration`), returning a new adjusted delay wrapped in an `Effect`.
2242
+ *
2243
+ * @see {@link modifyDelay} If you need to use a pure function.
2244
+ *
2245
+ * @since 2.0.0
2246
+ * @category Timing & Delay
2247
+ */
2248
+ <Out, In, R, R2>(
2249
+ self: Schedule<Out, In, R>,
2250
+ f: (out: Out, duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, R2>
2251
+ ): Schedule<Out, In, R | R2>
2252
+ } = internal.modifyDelayEffect
2253
+
2254
+ /**
2255
+ * Returns a new schedule that executes an effect every time the schedule makes
2256
+ * a decision.
2257
+ *
2258
+ * **Details**
2259
+ *
2260
+ * This function enhances an existing schedule by running an effectful function
2261
+ * `f` whenever a scheduling decision is made. The function receives the current
2262
+ * schedule output (`out`) and the decision (`ScheduleDecision`), allowing
2263
+ * additional logic to be executed, such as logging, monitoring, or side
2264
+ * effects.
2265
+ *
2266
+ * @since 2.0.0
2267
+ */
2268
+ export const onDecision: {
2269
+ /**
2270
+ * Returns a new schedule that executes an effect every time the schedule makes
2271
+ * a decision.
2272
+ *
2273
+ * **Details**
2274
+ *
2275
+ * This function enhances an existing schedule by running an effectful function
2276
+ * `f` whenever a scheduling decision is made. The function receives the current
2277
+ * schedule output (`out`) and the decision (`ScheduleDecision`), allowing
2278
+ * additional logic to be executed, such as logging, monitoring, or side
2279
+ * effects.
2280
+ *
2281
+ * @since 2.0.0
2282
+ */
2283
+ <Out, X, R2>(
2284
+ f: (out: Out, decision: ScheduleDecision.ScheduleDecision) => Effect.Effect<X, never, R2>
2285
+ ): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R2 | R>
2286
+ /**
2287
+ * Returns a new schedule that executes an effect every time the schedule makes
2288
+ * a decision.
2289
+ *
2290
+ * **Details**
2291
+ *
2292
+ * This function enhances an existing schedule by running an effectful function
2293
+ * `f` whenever a scheduling decision is made. The function receives the current
2294
+ * schedule output (`out`) and the decision (`ScheduleDecision`), allowing
2295
+ * additional logic to be executed, such as logging, monitoring, or side
2296
+ * effects.
2297
+ *
2298
+ * @since 2.0.0
2299
+ */
2300
+ <Out, In, R, X, R2>(
2301
+ self: Schedule<Out, In, R>,
2302
+ f: (out: Out, decision: ScheduleDecision.ScheduleDecision) => Effect.Effect<X, never, R2>
2303
+ ): Schedule<Out, In, R | R2>
2304
+ } = internal.onDecision
2305
+
2306
+ /**
2307
+ * A schedule that executes only once and then stops.
2308
+ *
2309
+ * **Details**
2310
+ *
2311
+ * This schedule triggers a single execution and then terminates. It does not
2312
+ * repeat or apply any additional logic.
2313
+ *
2314
+ * @since 2.0.0
2315
+ * @category Constructors
2316
+ */
2317
+ export const once: Schedule<void> = internal.once
2318
+
2319
+ /**
2320
+ * Returns a new schedule with a provided context, eliminating the need for
2321
+ * external dependencies.
2322
+ *
2323
+ * **Details**
2324
+ *
2325
+ * This function supplies a required `context` to a schedule, allowing it to run
2326
+ * without requiring external dependencies. After calling this function, the
2327
+ * schedule can be used freely without needing to pass a context at execution
2328
+ * time.
2329
+ *
2330
+ * This is useful when working with schedules that rely on contextual
2331
+ * information, such as logging services, database connections, or configuration
2332
+ * settings.
2333
+ *
2334
+ * @since 2.0.0
2335
+ * @category Context
2336
+ */
2337
+ export const provideContext: {
2338
+ /**
2339
+ * Returns a new schedule with a provided context, eliminating the need for
2340
+ * external dependencies.
2341
+ *
2342
+ * **Details**
2343
+ *
2344
+ * This function supplies a required `context` to a schedule, allowing it to run
2345
+ * without requiring external dependencies. After calling this function, the
2346
+ * schedule can be used freely without needing to pass a context at execution
2347
+ * time.
2348
+ *
2349
+ * This is useful when working with schedules that rely on contextual
2350
+ * information, such as logging services, database connections, or configuration
2351
+ * settings.
2352
+ *
2353
+ * @since 2.0.0
2354
+ * @category Context
2355
+ */
2356
+ <R>(context: Context.Context<R>): <Out, In>(self: Schedule<Out, In, R>) => Schedule<Out, In, never>
2357
+ /**
2358
+ * Returns a new schedule with a provided context, eliminating the need for
2359
+ * external dependencies.
2360
+ *
2361
+ * **Details**
2362
+ *
2363
+ * This function supplies a required `context` to a schedule, allowing it to run
2364
+ * without requiring external dependencies. After calling this function, the
2365
+ * schedule can be used freely without needing to pass a context at execution
2366
+ * time.
2367
+ *
2368
+ * This is useful when working with schedules that rely on contextual
2369
+ * information, such as logging services, database connections, or configuration
2370
+ * settings.
2371
+ *
2372
+ * @since 2.0.0
2373
+ * @category Context
2374
+ */
2375
+ <Out, In, R>(self: Schedule<Out, In, R>, context: Context.Context<R>): Schedule<Out, In, never>
2376
+ } = internal.provideContext
2377
+
2378
+ /**
2379
+ * Returns a new schedule with a single required service provided, eliminating
2380
+ * the need for external dependencies.
2381
+ *
2382
+ * **Details**
2383
+ *
2384
+ * This function supplies a single service dependency to a schedule, allowing it
2385
+ * to run without requiring that service externally. If a schedule depends on
2386
+ * multiple services, consider using `provideContext` instead.
2387
+ *
2388
+ * This is useful when working with schedules that require a specific service,
2389
+ * such as logging, metrics, or configuration retrieval.
2390
+ *
2391
+ * @since 2.0.0
2392
+ * @category Context
2393
+ */
2394
+ export const provideService: {
2395
+ /**
2396
+ * Returns a new schedule with a single required service provided, eliminating
2397
+ * the need for external dependencies.
2398
+ *
2399
+ * **Details**
2400
+ *
2401
+ * This function supplies a single service dependency to a schedule, allowing it
2402
+ * to run without requiring that service externally. If a schedule depends on
2403
+ * multiple services, consider using `provideContext` instead.
2404
+ *
2405
+ * This is useful when working with schedules that require a specific service,
2406
+ * such as logging, metrics, or configuration retrieval.
2407
+ *
2408
+ * @since 2.0.0
2409
+ * @category Context
2410
+ */
2411
+ <I, S>(tag: Context.Tag<I, S>, service: Types.NoInfer<S>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, Exclude<R, I>>
2412
+ /**
2413
+ * Returns a new schedule with a single required service provided, eliminating
2414
+ * the need for external dependencies.
2415
+ *
2416
+ * **Details**
2417
+ *
2418
+ * This function supplies a single service dependency to a schedule, allowing it
2419
+ * to run without requiring that service externally. If a schedule depends on
2420
+ * multiple services, consider using `provideContext` instead.
2421
+ *
2422
+ * This is useful when working with schedules that require a specific service,
2423
+ * such as logging, metrics, or configuration retrieval.
2424
+ *
2425
+ * @since 2.0.0
2426
+ * @category Context
2427
+ */
2428
+ <Out, In, R, I, S>(
2429
+ self: Schedule<Out, In, R>,
2430
+ tag: Context.Tag<I, S>,
2431
+ service: Types.NoInfer<S>
2432
+ ): Schedule<Out, In, Exclude<R, I>>
2433
+ } = internal.provideService
2434
+
2435
+ /**
2436
+ * A schedule that recurs until the given predicate evaluates to true.
2437
+ *
2438
+ * **Details**
2439
+ *
2440
+ * This schedule will continue executing as long as the provided predicate `f`
2441
+ * returns `false` for the input value. Once `f` evaluates to `true`, the
2442
+ * schedule stops recurring.
2443
+ *
2444
+ * This is useful for defining schedules that should stop when a certain
2445
+ * condition is met, such as detecting a success state, reaching a threshold, or
2446
+ * avoiding unnecessary retries.
2447
+ *
2448
+ * @see {@link recurUntilEffect} If you need to use an effectful predicate.
2449
+ *
2450
+ * @since 2.0.0
2451
+ * @category Recurrence Conditions
2452
+ */
2453
+ export const recurUntil: <A>(f: Predicate<A>) => Schedule<A, A> = internal.recurUntil
2454
+
2455
+ /**
2456
+ * A schedule that recurs until the given effectful predicate evaluates to true.
2457
+ *
2458
+ * **Details**
2459
+ *
2460
+ * This schedule continues executing as long as the provided effectful predicate
2461
+ * `f` returns `false`. Once `f` evaluates to `true`, the schedule stops
2462
+ * recurring. Unlike {@link recurUntil}, this function allows the stopping
2463
+ * condition to be computed asynchronously or based on external dependencies.
2464
+ *
2465
+ * This is useful when the stopping condition depends on an effectful
2466
+ * computation, such as checking a database, making an API call, or retrieving
2467
+ * system state dynamically.
2468
+ *
2469
+ * @see {@link recurUntil} If you need to use a pure predicate.
2470
+ *
2471
+ * @since 2.0.0
2472
+ * @category Recurrence Conditions
2473
+ */
2474
+ export const recurUntilEffect: <A, R>(f: (a: A) => Effect.Effect<boolean, never, R>) => Schedule<A, A, R> =
2475
+ internal.recurUntilEffect
2476
+
2477
+ /**
2478
+ * A schedule that recurs until the input value matches a partial function, then
2479
+ * maps the value.
2480
+ *
2481
+ * **Details**
2482
+ *
2483
+ * This schedule continues executing until the provided partial function `pf`
2484
+ * returns `Some(value)`. At that point, it stops and maps the resulting value
2485
+ * to an `Option<B>`. If `pf` returns `None`, the schedule continues.
2486
+ *
2487
+ * This is useful when defining schedules that should stop once a certain
2488
+ * condition is met and transform the final value before completion.
2489
+ *
2490
+ * @since 2.0.0
2491
+ * @category Recurrence Conditions
2492
+ */
2493
+ export const recurUntilOption: <A, B>(pf: (a: A) => Option.Option<B>) => Schedule<Option.Option<B>, A> =
2494
+ internal.recurUntilOption
2495
+
2496
+ /**
2497
+ * A schedule that recurs until the specified duration has elapsed.
2498
+ *
2499
+ * **Details**
2500
+ *
2501
+ * This schedule continues executing for the given `duration`, after which it
2502
+ * stops. The schedule outputs the elapsed time on each recurrence.
2503
+ *
2504
+ * This is useful for limiting the duration of retries, enforcing time-based
2505
+ * constraints, or ensuring that an operation does not run indefinitely.
2506
+ *
2507
+ * @since 2.0.0
2508
+ * @category Recurrence Conditions
2509
+ */
2510
+ export const recurUpTo: (duration: Duration.DurationInput) => Schedule<Duration.Duration> = internal.recurUpTo
2511
+
2512
+ /**
2513
+ * A schedule that recurs as long as the given predicate evaluates to true.
2514
+ *
2515
+ * **Details*
2516
+ *
2517
+ * This schedule continues executing as long as the provided predicate `f`
2518
+ * returns `true` for the input value. Once `f` evaluates to `false`, the
2519
+ * schedule stops recurring.
2520
+ *
2521
+ * @see {@link recurWhileEffect} If you need to use an effectful predicate.
2522
+ *
2523
+ * @since 2.0.0
2524
+ * @category Recurrence Conditions
2525
+ */
2526
+ export const recurWhile: <A>(f: Predicate<A>) => Schedule<A, A> = internal.recurWhile
2527
+
2528
+ /**
2529
+ * A schedule that recurs as long as the given effectful predicate evaluates to
2530
+ * true.
2531
+ *
2532
+ * **Details**
2533
+ *
2534
+ * This schedule continues executing as long as the provided effectful predicate
2535
+ * `f` returns `true`. Once `f` evaluates to `false`, the schedule stops
2536
+ * recurring. Unlike {@link recurWhile}, this function allows the condition to
2537
+ * be computed dynamically using an effectful computation.
2538
+ *
2539
+ * @see {@link recurWhile} If you need to use a pure predicate.
2540
+ *
2541
+ * @since 2.0.0
2542
+ * @category Recurrence Conditions
2543
+ */
2544
+ export const recurWhileEffect: <A, R>(f: (a: A) => Effect.Effect<boolean, never, R>) => Schedule<A, A, R> =
2545
+ internal.recurWhileEffect
2546
+
2547
+ /**
2548
+ * A schedule that recurs a fixed number of times before terminating.
2549
+ *
2550
+ * **Details**
2551
+ *
2552
+ * This schedule will continue executing until it has been stepped `n` times,
2553
+ * after which it will stop. The output of the schedule is the current count of
2554
+ * recurrences.
2555
+ *
2556
+ * @category Constructors
2557
+ * @since 2.0.0
2558
+ */
2559
+ export const recurs: (n: number) => Schedule<number> = internal.recurs
2560
+
2561
+ /**
2562
+ * Returns a new schedule that folds over the outputs of this one.
2563
+ *
2564
+ * **Details**
2565
+ *
2566
+ * This schedule transforms the output by accumulating values over time using a
2567
+ * reducer function `f`. It starts with an initial value `zero` and updates it
2568
+ * each time the schedule produces an output.
2569
+ *
2570
+ * This is useful for tracking statistics, aggregating results, or summarizing
2571
+ * data across multiple executions.
2572
+ *
2573
+ * @see {@link reduceEffect} If you need to use an effectful reducer function.
2574
+ *
2575
+ * @since 2.0.0
2576
+ * @category Reducing
2577
+ */
2578
+ export const reduce: {
2579
+ /**
2580
+ * Returns a new schedule that folds over the outputs of this one.
2581
+ *
2582
+ * **Details**
2583
+ *
2584
+ * This schedule transforms the output by accumulating values over time using a
2585
+ * reducer function `f`. It starts with an initial value `zero` and updates it
2586
+ * each time the schedule produces an output.
2587
+ *
2588
+ * This is useful for tracking statistics, aggregating results, or summarizing
2589
+ * data across multiple executions.
2590
+ *
2591
+ * @see {@link reduceEffect} If you need to use an effectful reducer function.
2592
+ *
2593
+ * @since 2.0.0
2594
+ * @category Reducing
2595
+ */
2596
+ <Out, Z>(zero: Z, f: (z: Z, out: Out) => Z): <In, R>(self: Schedule<Out, In, R>) => Schedule<Z, In, R>
2597
+ /**
2598
+ * Returns a new schedule that folds over the outputs of this one.
2599
+ *
2600
+ * **Details**
2601
+ *
2602
+ * This schedule transforms the output by accumulating values over time using a
2603
+ * reducer function `f`. It starts with an initial value `zero` and updates it
2604
+ * each time the schedule produces an output.
2605
+ *
2606
+ * This is useful for tracking statistics, aggregating results, or summarizing
2607
+ * data across multiple executions.
2608
+ *
2609
+ * @see {@link reduceEffect} If you need to use an effectful reducer function.
2610
+ *
2611
+ * @since 2.0.0
2612
+ * @category Reducing
2613
+ */
2614
+ <Out, In, R, Z>(self: Schedule<Out, In, R>, zero: Z, f: (z: Z, out: Out) => Z): Schedule<Z, In, R>
2615
+ } = internal.reduce
2616
+
2617
+ /**
2618
+ * Returns a new schedule that effectfully folds over the outputs of this one.
2619
+ *
2620
+ * **Details**
2621
+ *
2622
+ * This schedule accumulates outputs over time using an effectful reducer
2623
+ * function `f`. It starts with an initial value `zero` and updates it
2624
+ * asynchronously or based on external dependencies.
2625
+ *
2626
+ * This is useful for asynchronous state tracking, logging, external metrics
2627
+ * aggregation, or any scenario where accumulation needs to involve an effectful
2628
+ * computation.
2629
+ *
2630
+ * @see {@link reduce} If you need to use a pure reducer function.
2631
+ *
2632
+ * @since 2.0.0
2633
+ * @category Reducing
2634
+ */
2635
+ export const reduceEffect: {
2636
+ /**
2637
+ * Returns a new schedule that effectfully folds over the outputs of this one.
2638
+ *
2639
+ * **Details**
2640
+ *
2641
+ * This schedule accumulates outputs over time using an effectful reducer
2642
+ * function `f`. It starts with an initial value `zero` and updates it
2643
+ * asynchronously or based on external dependencies.
2644
+ *
2645
+ * This is useful for asynchronous state tracking, logging, external metrics
2646
+ * aggregation, or any scenario where accumulation needs to involve an effectful
2647
+ * computation.
2648
+ *
2649
+ * @see {@link reduce} If you need to use a pure reducer function.
2650
+ *
2651
+ * @since 2.0.0
2652
+ * @category Reducing
2653
+ */
2654
+ <Z, Out, R2>(zero: Z, f: (z: Z, out: Out) => Effect.Effect<Z, never, R2>): <In, R>(self: Schedule<Out, In, R>) => Schedule<Z, In, R2 | R>
2655
+ /**
2656
+ * Returns a new schedule that effectfully folds over the outputs of this one.
2657
+ *
2658
+ * **Details**
2659
+ *
2660
+ * This schedule accumulates outputs over time using an effectful reducer
2661
+ * function `f`. It starts with an initial value `zero` and updates it
2662
+ * asynchronously or based on external dependencies.
2663
+ *
2664
+ * This is useful for asynchronous state tracking, logging, external metrics
2665
+ * aggregation, or any scenario where accumulation needs to involve an effectful
2666
+ * computation.
2667
+ *
2668
+ * @see {@link reduce} If you need to use a pure reducer function.
2669
+ *
2670
+ * @since 2.0.0
2671
+ * @category Reducing
2672
+ */
2673
+ <Out, In, R, Z, R2>(
2674
+ self: Schedule<Out, In, R>,
2675
+ zero: Z,
2676
+ f: (z: Z, out: Out) => Effect.Effect<Z, never, R2>
2677
+ ): Schedule<Z, In, R | R2>
2678
+ } = internal.reduceEffect
2679
+
2680
+ // TODO(4.0): remove?
2681
+ /**
2682
+ * Alias of {@link forever}.
2683
+ *
2684
+ * @since 2.0.0
2685
+ * @category Constructors
2686
+ */
2687
+ export const repeatForever: Schedule<number> = internal.forever
2688
+
2689
+ /**
2690
+ * Returns a new schedule that outputs the number of repetitions of this one.
2691
+ *
2692
+ * **Details**
2693
+ *
2694
+ * This schedule tracks how many times the given schedule has executed and
2695
+ * outputs the count instead of the original values. The first execution starts
2696
+ * at `0`, and the count increases with each recurrence.
2697
+ *
2698
+ * @since 2.0.0
2699
+ * @category Monitoring
2700
+ */
2701
+ export const repetitions: <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<number, In, R> = internal.repetitions
2702
+
2703
+ /**
2704
+ * Returns a new schedule that automatically resets to its initial state after a
2705
+ * period of inactivity defined by `duration`.
2706
+ *
2707
+ * **Details**
2708
+ *
2709
+ * This function modifies a schedule so that if no inputs are received for the
2710
+ * specified `duration`, the schedule resets as if it were new.
2711
+ *
2712
+ * @see {@link resetWhen} If you need to reset based on output values.
2713
+ *
2714
+ * @since 2.0.0
2715
+ * @category State Management
2716
+ */
2717
+ export const resetAfter: {
2718
+ /**
2719
+ * Returns a new schedule that automatically resets to its initial state after a
2720
+ * period of inactivity defined by `duration`.
2721
+ *
2722
+ * **Details**
2723
+ *
2724
+ * This function modifies a schedule so that if no inputs are received for the
2725
+ * specified `duration`, the schedule resets as if it were new.
2726
+ *
2727
+ * @see {@link resetWhen} If you need to reset based on output values.
2728
+ *
2729
+ * @since 2.0.0
2730
+ * @category State Management
2731
+ */
2732
+ (duration: Duration.DurationInput): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
2733
+ /**
2734
+ * Returns a new schedule that automatically resets to its initial state after a
2735
+ * period of inactivity defined by `duration`.
2736
+ *
2737
+ * **Details**
2738
+ *
2739
+ * This function modifies a schedule so that if no inputs are received for the
2740
+ * specified `duration`, the schedule resets as if it were new.
2741
+ *
2742
+ * @see {@link resetWhen} If you need to reset based on output values.
2743
+ *
2744
+ * @since 2.0.0
2745
+ * @category State Management
2746
+ */
2747
+ <Out, In, R>(self: Schedule<Out, In, R>, duration: Duration.DurationInput): Schedule<Out, In, R>
2748
+ } = internal.resetAfter
2749
+
2750
+ /**
2751
+ * Resets the schedule when the specified predicate on the schedule output
2752
+ * evaluates to `true`.
2753
+ *
2754
+ * **Details**
2755
+ *
2756
+ * This function modifies a schedule so that it resets to its initial state
2757
+ * whenever the provided predicate `f` returns `true` for an output value.
2758
+ *
2759
+ * @see {@link resetAfter} If you need to reset based on inactivity.
2760
+ *
2761
+ * @since 2.0.0
2762
+ * @category State Management
2763
+ */
2764
+ export const resetWhen: {
2765
+ /**
2766
+ * Resets the schedule when the specified predicate on the schedule output
2767
+ * evaluates to `true`.
2768
+ *
2769
+ * **Details**
2770
+ *
2771
+ * This function modifies a schedule so that it resets to its initial state
2772
+ * whenever the provided predicate `f` returns `true` for an output value.
2773
+ *
2774
+ * @see {@link resetAfter} If you need to reset based on inactivity.
2775
+ *
2776
+ * @since 2.0.0
2777
+ * @category State Management
2778
+ */
2779
+ <Out>(f: Predicate<Out>): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
2780
+ /**
2781
+ * Resets the schedule when the specified predicate on the schedule output
2782
+ * evaluates to `true`.
2783
+ *
2784
+ * **Details**
2785
+ *
2786
+ * This function modifies a schedule so that it resets to its initial state
2787
+ * whenever the provided predicate `f` returns `true` for an output value.
2788
+ *
2789
+ * @see {@link resetAfter} If you need to reset based on inactivity.
2790
+ *
2791
+ * @since 2.0.0
2792
+ * @category State Management
2793
+ */
2794
+ <Out, In, R>(self: Schedule<Out, In, R>, f: Predicate<Out>): Schedule<Out, In, R>
2795
+ } = internal.resetWhen
2796
+
2797
+ /**
2798
+ * Runs a schedule using the provided inputs and collects all outputs.
2799
+ *
2800
+ * **Details**
2801
+ *
2802
+ * This function executes a given schedule with a sequence of input values and
2803
+ * accumulates all outputs into a `Chunk`. The schedule starts execution at the
2804
+ * specified `now` timestamp and proceeds according to its defined behavior.
2805
+ *
2806
+ * This is useful for batch processing, simulating execution, or testing
2807
+ * schedules with predefined input sequences.
2808
+ *
2809
+ * @since 2.0.0
2810
+ * @category Execution
2811
+ */
2812
+ export const run: {
2813
+ /**
2814
+ * Runs a schedule using the provided inputs and collects all outputs.
2815
+ *
2816
+ * **Details**
2817
+ *
2818
+ * This function executes a given schedule with a sequence of input values and
2819
+ * accumulates all outputs into a `Chunk`. The schedule starts execution at the
2820
+ * specified `now` timestamp and proceeds according to its defined behavior.
2821
+ *
2822
+ * This is useful for batch processing, simulating execution, or testing
2823
+ * schedules with predefined input sequences.
2824
+ *
2825
+ * @since 2.0.0
2826
+ * @category Execution
2827
+ */
2828
+ <In>(now: number, input: Iterable<In>): <Out, R>(self: Schedule<Out, In, R>) => Effect.Effect<Chunk.Chunk<Out>, never, R>
2829
+ /**
2830
+ * Runs a schedule using the provided inputs and collects all outputs.
2831
+ *
2832
+ * **Details**
2833
+ *
2834
+ * This function executes a given schedule with a sequence of input values and
2835
+ * accumulates all outputs into a `Chunk`. The schedule starts execution at the
2836
+ * specified `now` timestamp and proceeds according to its defined behavior.
2837
+ *
2838
+ * This is useful for batch processing, simulating execution, or testing
2839
+ * schedules with predefined input sequences.
2840
+ *
2841
+ * @since 2.0.0
2842
+ * @category Execution
2843
+ */
2844
+ <Out, In, R>(self: Schedule<Out, In, R>, now: number, input: Iterable<In>): Effect.Effect<Chunk.Chunk<Out>, never, R>
2845
+ } = internal.run
2846
+
2847
+ /**
2848
+ * Returns a schedule that recurs continuously, with each repetition
2849
+ * spaced by the specified `duration` from the last run.
2850
+ *
2851
+ * **Details**
2852
+ *
2853
+ * This schedule ensures that executions occur at a fixed interval,
2854
+ * maintaining a consistent delay between repetitions. The delay starts
2855
+ * from the end of the last execution, not from the schedule start time.
2856
+ *
2857
+ * @see {@link fixed} If you need to run at a fixed interval from the start.
2858
+ *
2859
+ * @since 2.0.0
2860
+ * @category Constructors
2861
+ */
2862
+ export const spaced: (duration: Duration.DurationInput) => Schedule<number> = internal.spaced
2863
+
2864
+ /**
2865
+ * A schedule that does not recur and stops immediately.
2866
+ *
2867
+ * @since 2.0.0
2868
+ * @category Constructors
2869
+ */
2870
+ export const stop: Schedule<void> = internal.stop
2871
+
2872
+ /**
2873
+ * Returns a schedule that recurs indefinitely, always producing the specified
2874
+ * constant value.
2875
+ *
2876
+ * @since 2.0.0
2877
+ * @category Constructors
2878
+ */
2879
+ export const succeed: <A>(value: A) => Schedule<A> = internal.succeed
2880
+
2881
+ /**
2882
+ * Returns a schedule that recurs indefinitely, evaluating the given function to
2883
+ * produce a constant value.
2884
+ *
2885
+ * @category Constructors
2886
+ * @since 2.0.0
2887
+ */
2888
+ export const sync: <A>(evaluate: LazyArg<A>) => Schedule<A> = internal.sync
2889
+
2890
+ /**
2891
+ * Returns a new schedule that runs the given effectful function for each input
2892
+ * before continuing execution.
2893
+ *
2894
+ * **Details**
2895
+ *
2896
+ * This function allows side effects to be performed on each input processed by
2897
+ * the schedule. It does not modify the schedule’s behavior but ensures that the
2898
+ * provided function `f` runs before each step.
2899
+ *
2900
+ * @since 2.0.0
2901
+ * @category Tapping
2902
+ */
2903
+ export const tapInput: {
2904
+ /**
2905
+ * Returns a new schedule that runs the given effectful function for each input
2906
+ * before continuing execution.
2907
+ *
2908
+ * **Details**
2909
+ *
2910
+ * This function allows side effects to be performed on each input processed by
2911
+ * the schedule. It does not modify the schedule’s behavior but ensures that the
2912
+ * provided function `f` runs before each step.
2913
+ *
2914
+ * @since 2.0.0
2915
+ * @category Tapping
2916
+ */
2917
+ <In2, X, R2>(f: (input: In2) => Effect.Effect<X, never, R2>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In & In2, R2 | R>
2918
+ /**
2919
+ * Returns a new schedule that runs the given effectful function for each input
2920
+ * before continuing execution.
2921
+ *
2922
+ * **Details**
2923
+ *
2924
+ * This function allows side effects to be performed on each input processed by
2925
+ * the schedule. It does not modify the schedule’s behavior but ensures that the
2926
+ * provided function `f` runs before each step.
2927
+ *
2928
+ * @since 2.0.0
2929
+ * @category Tapping
2930
+ */
2931
+ <Out, In, R, In2, X, R2>(self: Schedule<Out, In, R>, f: (input: In2) => Effect.Effect<X, never, R2>): Schedule<Out, In & In2, R | R2>
2932
+ } = internal.tapInput
2933
+
2934
+ /**
2935
+ * Returns a new schedule that runs the given effectful function for each output
2936
+ * before continuing execution.
2937
+ *
2938
+ * **Details**
2939
+ *
2940
+ * This function allows side effects to be performed on each output produced by
2941
+ * the schedule. It does not modify the schedule’s behavior but ensures that the
2942
+ * provided function `f` runs after each step.
2943
+ *
2944
+ * @since 2.0.0
2945
+ * @category Tapping
2946
+ */
2947
+ export const tapOutput: {
2948
+ /**
2949
+ * Returns a new schedule that runs the given effectful function for each output
2950
+ * before continuing execution.
2951
+ *
2952
+ * **Details**
2953
+ *
2954
+ * This function allows side effects to be performed on each output produced by
2955
+ * the schedule. It does not modify the schedule’s behavior but ensures that the
2956
+ * provided function `f` runs after each step.
2957
+ *
2958
+ * @since 2.0.0
2959
+ * @category Tapping
2960
+ */
2961
+ <X, R2, Out>(f: (out: Types.NoInfer<Out>) => Effect.Effect<X, never, R2>): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R2 | R>
2962
+ /**
2963
+ * Returns a new schedule that runs the given effectful function for each output
2964
+ * before continuing execution.
2965
+ *
2966
+ * **Details**
2967
+ *
2968
+ * This function allows side effects to be performed on each output produced by
2969
+ * the schedule. It does not modify the schedule’s behavior but ensures that the
2970
+ * provided function `f` runs after each step.
2971
+ *
2972
+ * @since 2.0.0
2973
+ * @category Tapping
2974
+ */
2975
+ <Out, In, R, X, R2>(self: Schedule<Out, In, R>, f: (out: Out) => Effect.Effect<X, never, R2>): Schedule<Out, In, R | R2>
2976
+ } = internal.tapOutput
2977
+
2978
+ /**
2979
+ * Creates a schedule that repeatedly applies a function to transform a state
2980
+ * value, producing a sequence of values.
2981
+ *
2982
+ * **Details**
2983
+ *
2984
+ * This function starts with an `initial` value and applies `f` recursively to
2985
+ * generate the next state at each step. The schedule continues indefinitely,
2986
+ * producing a stream of values by unfolding the state over time.
2987
+ *
2988
+ * @since 2.0.0
2989
+ * @category Constructors
2990
+ */
2991
+ export const unfold: <A>(initial: A, f: (a: A) => A) => Schedule<A> = internal.unfold
2992
+
2993
+ /**
2994
+ * Combines two schedules, continuing execution as long as at least one of them
2995
+ * allows it, using the shorter delay.
2996
+ *
2997
+ * **Details**
2998
+ *
2999
+ * This function combines two schedules into a single schedule that executes in
3000
+ * parallel. If either schedule allows continuation, the merged schedule
3001
+ * continues. When both schedules produce delays, the schedule selects the
3002
+ * shorter delay to determine the next step.
3003
+ *
3004
+ * The output of the new schedule is a tuple containing the outputs of both
3005
+ * schedules. The input type is the intersection of both schedules' input types.
3006
+ *
3007
+ * This is useful for scenarios where multiple scheduling conditions should be
3008
+ * considered, ensuring execution proceeds if at least one schedule permits it.
3009
+ *
3010
+ * @see {@link unionWith} If you need to use a custom merge function.
3011
+ *
3012
+ * @since 2.0.0
3013
+ * @category Composition
3014
+ */
3015
+ export const union: {
3016
+ /**
3017
+ * Combines two schedules, continuing execution as long as at least one of them
3018
+ * allows it, using the shorter delay.
3019
+ *
3020
+ * **Details**
3021
+ *
3022
+ * This function combines two schedules into a single schedule that executes in
3023
+ * parallel. If either schedule allows continuation, the merged schedule
3024
+ * continues. When both schedules produce delays, the schedule selects the
3025
+ * shorter delay to determine the next step.
3026
+ *
3027
+ * The output of the new schedule is a tuple containing the outputs of both
3028
+ * schedules. The input type is the intersection of both schedules' input types.
3029
+ *
3030
+ * This is useful for scenarios where multiple scheduling conditions should be
3031
+ * considered, ensuring execution proceeds if at least one schedule permits it.
3032
+ *
3033
+ * @see {@link unionWith} If you need to use a custom merge function.
3034
+ *
3035
+ * @since 2.0.0
3036
+ * @category Composition
3037
+ */
3038
+ <Out2, In2, R2>(that: Schedule<Out2, In2, R2>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<[Out, Out2], In & In2, R2 | R>
3039
+ /**
3040
+ * Combines two schedules, continuing execution as long as at least one of them
3041
+ * allows it, using the shorter delay.
3042
+ *
3043
+ * **Details**
3044
+ *
3045
+ * This function combines two schedules into a single schedule that executes in
3046
+ * parallel. If either schedule allows continuation, the merged schedule
3047
+ * continues. When both schedules produce delays, the schedule selects the
3048
+ * shorter delay to determine the next step.
3049
+ *
3050
+ * The output of the new schedule is a tuple containing the outputs of both
3051
+ * schedules. The input type is the intersection of both schedules' input types.
3052
+ *
3053
+ * This is useful for scenarios where multiple scheduling conditions should be
3054
+ * considered, ensuring execution proceeds if at least one schedule permits it.
3055
+ *
3056
+ * @see {@link unionWith} If you need to use a custom merge function.
3057
+ *
3058
+ * @since 2.0.0
3059
+ * @category Composition
3060
+ */
3061
+ <Out, In, R, Out2, In2, R2>(self: Schedule<Out, In, R>, that: Schedule<Out2, In2, R2>): Schedule<[Out, Out2], In & In2, R | R2>
3062
+ } = internal.union
3063
+
3064
+ /**
3065
+ * Combines two schedules, continuing execution as long as at least one of them
3066
+ * wants to continue, merging their intervals using a custom merge function.
3067
+ *
3068
+ * **Details**
3069
+ *
3070
+ * This function allows you to combine two schedules while defining how their
3071
+ * intervals should be merged. Unlike {@link union}, which simply selects the
3072
+ * shorter delay, this function lets you specify a custom merging strategy for
3073
+ * the schedules’ intervals.
3074
+ *
3075
+ * The merged schedule continues execution as long as at least one of the input
3076
+ * schedules allows it. The next interval is determined by applying the provided
3077
+ * merge function to the intervals of both schedules.
3078
+ *
3079
+ * The output of the resulting schedule is a tuple containing the outputs of
3080
+ * both schedules. The input type is the intersection of both schedules' input
3081
+ * types.
3082
+ *
3083
+ * @see {@link union} If you need to use the shorter delay.
3084
+ *
3085
+ * @since 2.0.0
3086
+ * @category Composition
3087
+ */
3088
+ export const unionWith: {
3089
+ /**
3090
+ * Combines two schedules, continuing execution as long as at least one of them
3091
+ * wants to continue, merging their intervals using a custom merge function.
3092
+ *
3093
+ * **Details**
3094
+ *
3095
+ * This function allows you to combine two schedules while defining how their
3096
+ * intervals should be merged. Unlike {@link union}, which simply selects the
3097
+ * shorter delay, this function lets you specify a custom merging strategy for
3098
+ * the schedules’ intervals.
3099
+ *
3100
+ * The merged schedule continues execution as long as at least one of the input
3101
+ * schedules allows it. The next interval is determined by applying the provided
3102
+ * merge function to the intervals of both schedules.
3103
+ *
3104
+ * The output of the resulting schedule is a tuple containing the outputs of
3105
+ * both schedules. The input type is the intersection of both schedules' input
3106
+ * types.
3107
+ *
3108
+ * @see {@link union} If you need to use the shorter delay.
3109
+ *
3110
+ * @since 2.0.0
3111
+ * @category Composition
3112
+ */
3113
+ <Out2, In2, R2>(
3114
+ that: Schedule<Out2, In2, R2>,
3115
+ f: (x: Intervals.Intervals, y: Intervals.Intervals) => Intervals.Intervals
3116
+ ): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<[Out, Out2], In & In2, R2 | R>
3117
+ /**
3118
+ * Combines two schedules, continuing execution as long as at least one of them
3119
+ * wants to continue, merging their intervals using a custom merge function.
3120
+ *
3121
+ * **Details**
3122
+ *
3123
+ * This function allows you to combine two schedules while defining how their
3124
+ * intervals should be merged. Unlike {@link union}, which simply selects the
3125
+ * shorter delay, this function lets you specify a custom merging strategy for
3126
+ * the schedules’ intervals.
3127
+ *
3128
+ * The merged schedule continues execution as long as at least one of the input
3129
+ * schedules allows it. The next interval is determined by applying the provided
3130
+ * merge function to the intervals of both schedules.
3131
+ *
3132
+ * The output of the resulting schedule is a tuple containing the outputs of
3133
+ * both schedules. The input type is the intersection of both schedules' input
3134
+ * types.
3135
+ *
3136
+ * @see {@link union} If you need to use the shorter delay.
3137
+ *
3138
+ * @since 2.0.0
3139
+ * @category Composition
3140
+ */
3141
+ <Out, In, R, Out2, In2, R2>(
3142
+ self: Schedule<Out, In, R>,
3143
+ that: Schedule<Out2, In2, R2>,
3144
+ f: (x: Intervals.Intervals, y: Intervals.Intervals) => Intervals.Intervals
3145
+ ): Schedule<[Out, Out2], In & In2, R | R2>
3146
+ } = internal.unionWith
3147
+
3148
+ /**
3149
+ * Returns a new schedule that stops execution when the given predicate on the
3150
+ * input evaluates to `true`.
3151
+ *
3152
+ * **Details**
3153
+ *
3154
+ * This function modifies an existing schedule so that it continues executing
3155
+ * only while the provided predicate returns `false` for incoming inputs. Once
3156
+ * an input satisfies the condition, the schedule terminates immediately.
3157
+ *
3158
+ * @see {@link untilInputEffect} If you need to use an effectful predicate.
3159
+ *
3160
+ * @since 2.0.0
3161
+ * @category Recurrence Conditions
3162
+ */
3163
+ export const untilInput: {
3164
+ /**
3165
+ * Returns a new schedule that stops execution when the given predicate on the
3166
+ * input evaluates to `true`.
3167
+ *
3168
+ * **Details**
3169
+ *
3170
+ * This function modifies an existing schedule so that it continues executing
3171
+ * only while the provided predicate returns `false` for incoming inputs. Once
3172
+ * an input satisfies the condition, the schedule terminates immediately.
3173
+ *
3174
+ * @see {@link untilInputEffect} If you need to use an effectful predicate.
3175
+ *
3176
+ * @since 2.0.0
3177
+ * @category Recurrence Conditions
3178
+ */
3179
+ <In>(f: Predicate<In>): <Out, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
3180
+ /**
3181
+ * Returns a new schedule that stops execution when the given predicate on the
3182
+ * input evaluates to `true`.
3183
+ *
3184
+ * **Details**
3185
+ *
3186
+ * This function modifies an existing schedule so that it continues executing
3187
+ * only while the provided predicate returns `false` for incoming inputs. Once
3188
+ * an input satisfies the condition, the schedule terminates immediately.
3189
+ *
3190
+ * @see {@link untilInputEffect} If you need to use an effectful predicate.
3191
+ *
3192
+ * @since 2.0.0
3193
+ * @category Recurrence Conditions
3194
+ */
3195
+ <Out, In, R>(self: Schedule<Out, In, R>, f: Predicate<In>): Schedule<Out, In, R>
3196
+ } = internal.untilInput
3197
+
3198
+ /**
3199
+ * Returns a new schedule that stops execution when the given effectful
3200
+ * predicate on the input evaluates to `true`.
3201
+ *
3202
+ * **Details**
3203
+ *
3204
+ * This function modifies an existing schedule so that it continues executing
3205
+ * only while the provided effectful predicate returns `false` for incoming
3206
+ * inputs. The predicate is an `Effect`, meaning it can involve asynchronous
3207
+ * computations or dependency-based logic.
3208
+ *
3209
+ * @see {@link untilInput} If you need to use a pure predicate.
3210
+ *
3211
+ * @since 2.0.0
3212
+ * @category Recurrence Conditions
3213
+ */
3214
+ export const untilInputEffect: {
3215
+ /**
3216
+ * Returns a new schedule that stops execution when the given effectful
3217
+ * predicate on the input evaluates to `true`.
3218
+ *
3219
+ * **Details**
3220
+ *
3221
+ * This function modifies an existing schedule so that it continues executing
3222
+ * only while the provided effectful predicate returns `false` for incoming
3223
+ * inputs. The predicate is an `Effect`, meaning it can involve asynchronous
3224
+ * computations or dependency-based logic.
3225
+ *
3226
+ * @see {@link untilInput} If you need to use a pure predicate.
3227
+ *
3228
+ * @since 2.0.0
3229
+ * @category Recurrence Conditions
3230
+ */
3231
+ <In, R2>(f: (input: In) => Effect.Effect<boolean, never, R2>): <Out, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R2 | R>
3232
+ /**
3233
+ * Returns a new schedule that stops execution when the given effectful
3234
+ * predicate on the input evaluates to `true`.
3235
+ *
3236
+ * **Details**
3237
+ *
3238
+ * This function modifies an existing schedule so that it continues executing
3239
+ * only while the provided effectful predicate returns `false` for incoming
3240
+ * inputs. The predicate is an `Effect`, meaning it can involve asynchronous
3241
+ * computations or dependency-based logic.
3242
+ *
3243
+ * @see {@link untilInput} If you need to use a pure predicate.
3244
+ *
3245
+ * @since 2.0.0
3246
+ * @category Recurrence Conditions
3247
+ */
3248
+ <Out, In, R, R2>(
3249
+ self: Schedule<Out, In, R>,
3250
+ f: (input: In) => Effect.Effect<boolean, never, R2>
3251
+ ): Schedule<Out, In, R | R2>
3252
+ } = internal.untilInputEffect
3253
+
3254
+ /**
3255
+ * Returns a new schedule that stops execution when the given predicate on the
3256
+ * output evaluates to `true`.
3257
+ *
3258
+ * **Details**
3259
+ *
3260
+ * This function modifies an existing schedule so that it only continues
3261
+ * executing while the given predicate returns false for its output values. Once
3262
+ * the predicate evaluates to `true`, execution stops.
3263
+ *
3264
+ * The output of the resulting schedule remains the same, but its duration is
3265
+ * now constrained by a stopping condition based on its own output.
3266
+ *
3267
+ * @see {@link untilOutputEffect} If you need to use an effectful predicate.
3268
+ *
3269
+ * @since 2.0.0
3270
+ * @category Recurrence Conditions
3271
+ */
3272
+ export const untilOutput: {
3273
+ /**
3274
+ * Returns a new schedule that stops execution when the given predicate on the
3275
+ * output evaluates to `true`.
3276
+ *
3277
+ * **Details**
3278
+ *
3279
+ * This function modifies an existing schedule so that it only continues
3280
+ * executing while the given predicate returns false for its output values. Once
3281
+ * the predicate evaluates to `true`, execution stops.
3282
+ *
3283
+ * The output of the resulting schedule remains the same, but its duration is
3284
+ * now constrained by a stopping condition based on its own output.
3285
+ *
3286
+ * @see {@link untilOutputEffect} If you need to use an effectful predicate.
3287
+ *
3288
+ * @since 2.0.0
3289
+ * @category Recurrence Conditions
3290
+ */
3291
+ <Out>(f: Predicate<Out>): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
3292
+ /**
3293
+ * Returns a new schedule that stops execution when the given predicate on the
3294
+ * output evaluates to `true`.
3295
+ *
3296
+ * **Details**
3297
+ *
3298
+ * This function modifies an existing schedule so that it only continues
3299
+ * executing while the given predicate returns false for its output values. Once
3300
+ * the predicate evaluates to `true`, execution stops.
3301
+ *
3302
+ * The output of the resulting schedule remains the same, but its duration is
3303
+ * now constrained by a stopping condition based on its own output.
3304
+ *
3305
+ * @see {@link untilOutputEffect} If you need to use an effectful predicate.
3306
+ *
3307
+ * @since 2.0.0
3308
+ * @category Recurrence Conditions
3309
+ */
3310
+ <Out, In, R>(self: Schedule<Out, In, R>, f: Predicate<Out>): Schedule<Out, In, R>
3311
+ } = internal.untilOutput
3312
+
3313
+ /**
3314
+ * Returns a new schedule that stops execution when the given effectful
3315
+ * predicate on the output evaluates to `true`.
3316
+ *
3317
+ * **Details**
3318
+ *
3319
+ * This function modifies an existing schedule so that it only continues
3320
+ * executing while the provided effectful predicate returns `false` for its
3321
+ * output values. Once the predicate returns `true`, execution stops.
3322
+ *
3323
+ * @see {@link untilOutput} If you need to use a pure predicate.
3324
+ *
3325
+ * @since 2.0.0
3326
+ * @category Recurrence Conditions
3327
+ */
3328
+ export const untilOutputEffect: {
3329
+ /**
3330
+ * Returns a new schedule that stops execution when the given effectful
3331
+ * predicate on the output evaluates to `true`.
3332
+ *
3333
+ * **Details**
3334
+ *
3335
+ * This function modifies an existing schedule so that it only continues
3336
+ * executing while the provided effectful predicate returns `false` for its
3337
+ * output values. Once the predicate returns `true`, execution stops.
3338
+ *
3339
+ * @see {@link untilOutput} If you need to use a pure predicate.
3340
+ *
3341
+ * @since 2.0.0
3342
+ * @category Recurrence Conditions
3343
+ */
3344
+ <Out, R2>(f: (out: Out) => Effect.Effect<boolean, never, R2>): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R2 | R>
3345
+ /**
3346
+ * Returns a new schedule that stops execution when the given effectful
3347
+ * predicate on the output evaluates to `true`.
3348
+ *
3349
+ * **Details**
3350
+ *
3351
+ * This function modifies an existing schedule so that it only continues
3352
+ * executing while the provided effectful predicate returns `false` for its
3353
+ * output values. Once the predicate returns `true`, execution stops.
3354
+ *
3355
+ * @see {@link untilOutput} If you need to use a pure predicate.
3356
+ *
3357
+ * @since 2.0.0
3358
+ * @category Recurrence Conditions
3359
+ */
3360
+ <Out, In, R, R2>(
3361
+ self: Schedule<Out, In, R>,
3362
+ f: (out: Out) => Effect.Effect<boolean, never, R2>
3363
+ ): Schedule<Out, In, R | R2>
3364
+ } = internal.untilOutputEffect
3365
+
3366
+ /**
3367
+ * Returns a new schedule that limits execution to a fixed duration.
3368
+ *
3369
+ * **Details**
3370
+ *
3371
+ * This function modifies an existing schedule to stop execution after a
3372
+ * specified duration has passed. The schedule continues as normal until the
3373
+ * duration is reached, at which point it stops automatically.
3374
+ *
3375
+ * @since 2.0.0
3376
+ * @category Recurrence Conditions
3377
+ */
3378
+ export const upTo: {
3379
+ /**
3380
+ * Returns a new schedule that limits execution to a fixed duration.
3381
+ *
3382
+ * **Details**
3383
+ *
3384
+ * This function modifies an existing schedule to stop execution after a
3385
+ * specified duration has passed. The schedule continues as normal until the
3386
+ * duration is reached, at which point it stops automatically.
3387
+ *
3388
+ * @since 2.0.0
3389
+ * @category Recurrence Conditions
3390
+ */
3391
+ (duration: Duration.DurationInput): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
3392
+ /**
3393
+ * Returns a new schedule that limits execution to a fixed duration.
3394
+ *
3395
+ * **Details**
3396
+ *
3397
+ * This function modifies an existing schedule to stop execution after a
3398
+ * specified duration has passed. The schedule continues as normal until the
3399
+ * duration is reached, at which point it stops automatically.
3400
+ *
3401
+ * @since 2.0.0
3402
+ * @category Recurrence Conditions
3403
+ */
3404
+ <Out, In, R>(self: Schedule<Out, In, R>, duration: Duration.DurationInput): Schedule<Out, In, R>
3405
+ } = internal.upTo
3406
+
3407
+ /**
3408
+ * Returns a new schedule that continues execution as long as the given
3409
+ * predicate on the input is true.
3410
+ *
3411
+ * **Details**
3412
+ *
3413
+ * This function modifies an existing schedule so that it only continues
3414
+ * execution while a specified predicate holds true for its input. If the
3415
+ * predicate evaluates to `false` at any step, the schedule stops.
3416
+ *
3417
+ * @see {@link whileInputEffect} If you need to use an effectful predicate.
3418
+ *
3419
+ * @since 2.0.0
3420
+ * @category Recurrence Conditions
3421
+ */
3422
+ export const whileInput: {
3423
+ /**
3424
+ * Returns a new schedule that continues execution as long as the given
3425
+ * predicate on the input is true.
3426
+ *
3427
+ * **Details**
3428
+ *
3429
+ * This function modifies an existing schedule so that it only continues
3430
+ * execution while a specified predicate holds true for its input. If the
3431
+ * predicate evaluates to `false` at any step, the schedule stops.
3432
+ *
3433
+ * @see {@link whileInputEffect} If you need to use an effectful predicate.
3434
+ *
3435
+ * @since 2.0.0
3436
+ * @category Recurrence Conditions
3437
+ */
3438
+ <In>(f: Predicate<In>): <Out, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
3439
+ /**
3440
+ * Returns a new schedule that continues execution as long as the given
3441
+ * predicate on the input is true.
3442
+ *
3443
+ * **Details**
3444
+ *
3445
+ * This function modifies an existing schedule so that it only continues
3446
+ * execution while a specified predicate holds true for its input. If the
3447
+ * predicate evaluates to `false` at any step, the schedule stops.
3448
+ *
3449
+ * @see {@link whileInputEffect} If you need to use an effectful predicate.
3450
+ *
3451
+ * @since 2.0.0
3452
+ * @category Recurrence Conditions
3453
+ */
3454
+ <Out, In, R>(self: Schedule<Out, In, R>, f: Predicate<In>): Schedule<Out, In, R>
3455
+ } = internal.whileInput
3456
+
3457
+ /**
3458
+ * Returns a new schedule that continues execution for as long as the given
3459
+ * effectful predicate on the input evaluates to `true`.
3460
+ *
3461
+ * **Details**
3462
+ *
3463
+ * This function modifies an existing schedule so that it only continues
3464
+ * execution while an effectful predicate holds true for its input. If the
3465
+ * predicate evaluates to `false` at any step, the schedule stops.
3466
+ *
3467
+ * @see {@link whileInput} If you need to use a pure predicate.
3468
+ *
3469
+ * @since 2.0.0
3470
+ * @category Recurrence Conditions
3471
+ */
3472
+ export const whileInputEffect: {
3473
+ /**
3474
+ * Returns a new schedule that continues execution for as long as the given
3475
+ * effectful predicate on the input evaluates to `true`.
3476
+ *
3477
+ * **Details**
3478
+ *
3479
+ * This function modifies an existing schedule so that it only continues
3480
+ * execution while an effectful predicate holds true for its input. If the
3481
+ * predicate evaluates to `false` at any step, the schedule stops.
3482
+ *
3483
+ * @see {@link whileInput} If you need to use a pure predicate.
3484
+ *
3485
+ * @since 2.0.0
3486
+ * @category Recurrence Conditions
3487
+ */
3488
+ <In, R2>(f: (input: In) => Effect.Effect<boolean, never, R2>): <Out, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R2 | R>
3489
+ /**
3490
+ * Returns a new schedule that continues execution for as long as the given
3491
+ * effectful predicate on the input evaluates to `true`.
3492
+ *
3493
+ * **Details**
3494
+ *
3495
+ * This function modifies an existing schedule so that it only continues
3496
+ * execution while an effectful predicate holds true for its input. If the
3497
+ * predicate evaluates to `false` at any step, the schedule stops.
3498
+ *
3499
+ * @see {@link whileInput} If you need to use a pure predicate.
3500
+ *
3501
+ * @since 2.0.0
3502
+ * @category Recurrence Conditions
3503
+ */
3504
+ <Out, In, R, R2>(
3505
+ self: Schedule<Out, In, R>,
3506
+ f: (input: In) => Effect.Effect<boolean, never, R2>
3507
+ ): Schedule<Out, In, R | R2>
3508
+ } = internal.whileInputEffect
3509
+
3510
+ /**
3511
+ * Returns a new schedule that continues execution for as long as the given
3512
+ * predicate on the output evaluates to `true`.
3513
+ *
3514
+ * **Details**
3515
+ *
3516
+ * This function modifies an existing schedule so that it only continues
3517
+ * execution while a provided condition holds true for its output. If the
3518
+ * predicate returns `false`, the schedule stops.
3519
+ *
3520
+ * @see {@link whileOutputEffect} If you need to use an effectful predicate.
3521
+ *
3522
+ * @since 2.0.0
3523
+ * @category Recurrence Conditions
3524
+ */
3525
+ export const whileOutput: {
3526
+ /**
3527
+ * Returns a new schedule that continues execution for as long as the given
3528
+ * predicate on the output evaluates to `true`.
3529
+ *
3530
+ * **Details**
3531
+ *
3532
+ * This function modifies an existing schedule so that it only continues
3533
+ * execution while a provided condition holds true for its output. If the
3534
+ * predicate returns `false`, the schedule stops.
3535
+ *
3536
+ * @see {@link whileOutputEffect} If you need to use an effectful predicate.
3537
+ *
3538
+ * @since 2.0.0
3539
+ * @category Recurrence Conditions
3540
+ */
3541
+ <Out>(f: Predicate<Out>): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R>
3542
+ /**
3543
+ * Returns a new schedule that continues execution for as long as the given
3544
+ * predicate on the output evaluates to `true`.
3545
+ *
3546
+ * **Details**
3547
+ *
3548
+ * This function modifies an existing schedule so that it only continues
3549
+ * execution while a provided condition holds true for its output. If the
3550
+ * predicate returns `false`, the schedule stops.
3551
+ *
3552
+ * @see {@link whileOutputEffect} If you need to use an effectful predicate.
3553
+ *
3554
+ * @since 2.0.0
3555
+ * @category Recurrence Conditions
3556
+ */
3557
+ <Out, In, R>(self: Schedule<Out, In, R>, f: Predicate<Out>): Schedule<Out, In, R>
3558
+ } = internal.whileOutput
3559
+
3560
+ /**
3561
+ * Returns a new schedule that continues execution for as long as the given
3562
+ * effectful predicate on the output evaluates to `true`.
3563
+ *
3564
+ * **Details**
3565
+ *
3566
+ * This function modifies an existing schedule so that it only continues
3567
+ * execution while an effectful condition holds true for its output. If the
3568
+ * effectful predicate returns `false`, the schedule stops.
3569
+ *
3570
+ * @see {@link whileOutput} If you need to use a pure predicate.
3571
+ *
3572
+ * @since 2.0.0
3573
+ * @category Recurrence Conditions
3574
+ */
3575
+ export const whileOutputEffect: {
3576
+ /**
3577
+ * Returns a new schedule that continues execution for as long as the given
3578
+ * effectful predicate on the output evaluates to `true`.
3579
+ *
3580
+ * **Details**
3581
+ *
3582
+ * This function modifies an existing schedule so that it only continues
3583
+ * execution while an effectful condition holds true for its output. If the
3584
+ * effectful predicate returns `false`, the schedule stops.
3585
+ *
3586
+ * @see {@link whileOutput} If you need to use a pure predicate.
3587
+ *
3588
+ * @since 2.0.0
3589
+ * @category Recurrence Conditions
3590
+ */
3591
+ <Out, R2>(f: (out: Out) => Effect.Effect<boolean, never, R2>): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In, R2 | R>
3592
+ /**
3593
+ * Returns a new schedule that continues execution for as long as the given
3594
+ * effectful predicate on the output evaluates to `true`.
3595
+ *
3596
+ * **Details**
3597
+ *
3598
+ * This function modifies an existing schedule so that it only continues
3599
+ * execution while an effectful condition holds true for its output. If the
3600
+ * effectful predicate returns `false`, the schedule stops.
3601
+ *
3602
+ * @see {@link whileOutput} If you need to use a pure predicate.
3603
+ *
3604
+ * @since 2.0.0
3605
+ * @category Recurrence Conditions
3606
+ */
3607
+ <Out, In, R, R2>(
3608
+ self: Schedule<Out, In, R>,
3609
+ f: (out: Out) => Effect.Effect<boolean, never, R2>
3610
+ ): Schedule<Out, In, R | R2>
3611
+ } = internal.whileOutputEffect
3612
+
3613
+ /**
3614
+ * Creates a schedule that divides time into fixed `interval`-long windows,
3615
+ * triggering execution at the start of each new window.
3616
+ *
3617
+ * **Details**
3618
+ *
3619
+ * This function produces a schedule that waits until the next time window
3620
+ * boundary before executing. Each window spans a fixed duration specified by
3621
+ * `interval`. If an action completes midway through a window, the schedule
3622
+ * waits until the next full window starts before proceeding.
3623
+ *
3624
+ * For example, `windowed(Duration.seconds(10))` would produce a schedule as
3625
+ * follows:
3626
+ *
3627
+ * ```text
3628
+ * 10s 10s 10s 10s
3629
+ * |----------|----------|----------|----------|
3630
+ * |action------|sleep---|act|-sleep|action----|
3631
+ * ```
3632
+ *
3633
+ * @since 2.0.0
3634
+ * @category Constructors
3635
+ */
3636
+ export const windowed: (interval: Duration.DurationInput) => Schedule<number> = internal.windowed
3637
+
3638
+ /**
3639
+ * The same as {@link intersect} but ignores the right output.
3640
+ *
3641
+ * @since 2.0.0
3642
+ * @category Composition
3643
+ */
3644
+ export const zipLeft: {
3645
+ /**
3646
+ * The same as {@link intersect} but ignores the right output.
3647
+ *
3648
+ * @since 2.0.0
3649
+ * @category Composition
3650
+ */
3651
+ <Out2, In2, R2>(that: Schedule<Out2, In2, R2>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out, In & In2, R2 | R>
3652
+ /**
3653
+ * The same as {@link intersect} but ignores the right output.
3654
+ *
3655
+ * @since 2.0.0
3656
+ * @category Composition
3657
+ */
3658
+ <Out, In, R, Out2, In2, R2>(self: Schedule<Out, In, R>, that: Schedule<Out2, In2, R2>): Schedule<Out, In & In2, R | R2>
3659
+ } = internal.zipLeft
3660
+
3661
+ /**
3662
+ * The same as {@link intersect} but ignores the left output.
3663
+ *
3664
+ * @since 2.0.0
3665
+ * @category Composition
3666
+ */
3667
+ export const zipRight: {
3668
+ /**
3669
+ * The same as {@link intersect} but ignores the left output.
3670
+ *
3671
+ * @since 2.0.0
3672
+ * @category Composition
3673
+ */
3674
+ <Out2, In2, R2>(that: Schedule<Out2, In2, R2>): <Out, In, R>(self: Schedule<Out, In, R>) => Schedule<Out2, In & In2, R2 | R>
3675
+ /**
3676
+ * The same as {@link intersect} but ignores the left output.
3677
+ *
3678
+ * @since 2.0.0
3679
+ * @category Composition
3680
+ */
3681
+ <Out, In, R, Out2, In2, R2>(self: Schedule<Out, In, R>, that: Schedule<Out2, In2, R2>): Schedule<Out2, In & In2, R | R2>
3682
+ } = internal.zipRight
3683
+
3684
+ /**
3685
+ * Equivalent to {@link intersect} followed by {@link map}.
3686
+ *
3687
+ * @since 2.0.0
3688
+ * @category Composition
3689
+ */
3690
+ export const zipWith: {
3691
+ /**
3692
+ * Equivalent to {@link intersect} followed by {@link map}.
3693
+ *
3694
+ * @since 2.0.0
3695
+ * @category Composition
3696
+ */
3697
+ <Out2, In2, R2, Out, Out3>(that: Schedule<Out2, In2, R2>, f: (out: Out, out2: Out2) => Out3): <In, R>(self: Schedule<Out, In, R>) => Schedule<Out3, In & In2, R2 | R>
3698
+ /**
3699
+ * Equivalent to {@link intersect} followed by {@link map}.
3700
+ *
3701
+ * @since 2.0.0
3702
+ * @category Composition
3703
+ */
3704
+ <Out, In, R, Out2, In2, R2, Out3>(
3705
+ self: Schedule<Out, In, R>,
3706
+ that: Schedule<Out2, In2, R2>,
3707
+ f: (out: Out, out2: Out2) => Out3
3708
+ ): Schedule<Out3, In & In2, R | R2>
3709
+ } = internal.zipWith
3710
+
3711
+ /**
3712
+ * @since 3.15.0
3713
+ * @category models
3714
+ */
3715
+ export interface CurrentIterationMetadata {
3716
+ readonly _: unique symbol
3717
+ }
3718
+
3719
+ /**
3720
+ * @since 3.15.0
3721
+ * @category models
3722
+ */
3723
+ export interface IterationMetadata {
3724
+ readonly input: unknown
3725
+ readonly output: unknown
3726
+ readonly recurrence: number
3727
+ readonly start: number
3728
+ readonly now: number
3729
+ readonly elapsed: Duration.Duration
3730
+ readonly elapsedSincePrevious: Duration.Duration
3731
+ }
3732
+
3733
+ /**
3734
+ * @since 3.15.0
3735
+ * @category models
3736
+ */
3737
+ export const CurrentIterationMetadata: Context.Reference<
3738
+ CurrentIterationMetadata,
3739
+ IterationMetadata
3740
+ > = internal.CurrentIterationMetadata