effect 2.0.0-next.55 → 2.0.0-next.56

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 (652) hide show
  1. package/README.md +14 -9
  2. package/dist/cjs/Cache.js.map +1 -1
  3. package/dist/cjs/Cause.js +53 -18
  4. package/dist/cjs/Cause.js.map +1 -1
  5. package/dist/cjs/ChildExecutorDecision.js.map +1 -1
  6. package/dist/cjs/Chunk.js +5 -5
  7. package/dist/cjs/Chunk.js.map +1 -1
  8. package/dist/cjs/Data.js +11 -20
  9. package/dist/cjs/Data.js.map +1 -1
  10. package/dist/cjs/Duration.js +4 -0
  11. package/dist/cjs/Duration.js.map +1 -1
  12. package/dist/cjs/Effect.js +11 -4
  13. package/dist/cjs/Effect.js.map +1 -1
  14. package/dist/cjs/Either.js +9 -2
  15. package/dist/cjs/Either.js.map +1 -1
  16. package/dist/cjs/Exit.js.map +1 -1
  17. package/dist/cjs/Fiber.js.map +1 -1
  18. package/dist/cjs/HashMap.js.map +1 -1
  19. package/dist/cjs/KeyedPool.js.map +1 -1
  20. package/dist/cjs/List.js.map +1 -1
  21. package/dist/cjs/MergeState.js.map +1 -1
  22. package/dist/cjs/MetricPolling.js +2 -2
  23. package/dist/cjs/MetricPolling.js.map +1 -1
  24. package/dist/cjs/MetricState.js.map +1 -1
  25. package/dist/cjs/NonEmptyIterable.js.map +1 -1
  26. package/dist/cjs/Option.js +2 -2
  27. package/dist/cjs/Option.js.map +1 -1
  28. package/dist/cjs/Pipeable.js.map +1 -1
  29. package/dist/cjs/Predicate.js +17 -1
  30. package/dist/cjs/Predicate.js.map +1 -1
  31. package/dist/cjs/PrimaryKey.js +15 -0
  32. package/dist/cjs/PrimaryKey.js.map +1 -0
  33. package/dist/cjs/Queue.js +6 -1
  34. package/dist/cjs/Queue.js.map +1 -1
  35. package/dist/cjs/ReadonlyArray.js +2 -0
  36. package/dist/cjs/ReadonlyArray.js.map +1 -1
  37. package/dist/cjs/ReadonlyRecord.js +2 -2
  38. package/dist/cjs/ReadonlyRecord.js.map +1 -1
  39. package/dist/cjs/RedBlackTree.js.map +1 -1
  40. package/dist/cjs/Request.js +35 -1
  41. package/dist/cjs/Request.js.map +1 -1
  42. package/dist/cjs/STM.js +1 -1
  43. package/dist/cjs/STM.js.map +1 -1
  44. package/dist/cjs/Sink.js.map +1 -1
  45. package/dist/cjs/SortedMap.js +4 -1
  46. package/dist/cjs/SortedMap.js.map +1 -1
  47. package/dist/cjs/SortedSet.js +2 -2
  48. package/dist/cjs/SortedSet.js.map +1 -1
  49. package/dist/cjs/Stream.js.map +1 -1
  50. package/dist/cjs/SubscriptionRef.js.map +1 -1
  51. package/dist/cjs/TPubSub.js.map +1 -1
  52. package/dist/cjs/TestAnnotation.js +3 -1
  53. package/dist/cjs/TestAnnotation.js.map +1 -1
  54. package/dist/cjs/TestClock.js.map +1 -1
  55. package/dist/cjs/UpstreamPullRequest.js.map +1 -1
  56. package/dist/cjs/index.js +4 -2
  57. package/dist/cjs/index.js.map +1 -1
  58. package/dist/cjs/internal/cache.js.map +1 -1
  59. package/dist/cjs/internal/cause.js +4 -103
  60. package/dist/cjs/internal/cause.js.map +1 -1
  61. package/dist/cjs/internal/channel/continuation.js.map +1 -1
  62. package/dist/cjs/internal/configProvider.js +13 -1
  63. package/dist/cjs/internal/configProvider.js.map +1 -1
  64. package/dist/cjs/internal/core-effect.js +7 -7
  65. package/dist/cjs/internal/core-effect.js.map +1 -1
  66. package/dist/cjs/internal/core-stream.js.map +1 -1
  67. package/dist/cjs/internal/core.js +159 -11
  68. package/dist/cjs/internal/core.js.map +1 -1
  69. package/dist/cjs/internal/data.js +4 -22
  70. package/dist/cjs/internal/data.js.map +1 -1
  71. package/dist/cjs/internal/dataSource.js +1 -1
  72. package/dist/cjs/internal/dataSource.js.map +1 -1
  73. package/dist/cjs/internal/deferred.js.map +1 -1
  74. package/dist/cjs/internal/differ/orPatch.js.map +1 -1
  75. package/dist/cjs/internal/effect/circular.js.map +1 -1
  76. package/dist/cjs/internal/effectable.js +21 -3
  77. package/dist/cjs/internal/effectable.js.map +1 -1
  78. package/dist/cjs/internal/fiberMessage.js.map +1 -1
  79. package/dist/cjs/internal/fiberRuntime.js +9 -10
  80. package/dist/cjs/internal/fiberRuntime.js.map +1 -1
  81. package/dist/cjs/internal/hashMap.js +1 -1
  82. package/dist/cjs/internal/hashMap.js.map +1 -1
  83. package/dist/cjs/internal/hashSet.js +2 -2
  84. package/dist/cjs/internal/hashSet.js.map +1 -1
  85. package/dist/cjs/internal/keyedPool.js.map +1 -1
  86. package/dist/cjs/internal/layer.js.map +1 -1
  87. package/dist/cjs/internal/metric/polling.js +7 -7
  88. package/dist/cjs/internal/metric/polling.js.map +1 -1
  89. package/dist/cjs/internal/metric.js +4 -0
  90. package/dist/cjs/internal/metric.js.map +1 -1
  91. package/dist/cjs/internal/pool.js.map +1 -1
  92. package/dist/cjs/internal/pubsub.js +24 -23
  93. package/dist/cjs/internal/pubsub.js.map +1 -1
  94. package/dist/cjs/internal/queue.js +10 -1
  95. package/dist/cjs/internal/queue.js.map +1 -1
  96. package/dist/cjs/internal/redBlackTree.js +5 -1
  97. package/dist/cjs/internal/redBlackTree.js.map +1 -1
  98. package/dist/cjs/internal/reloadable.js.map +1 -1
  99. package/dist/cjs/internal/request.js +29 -15
  100. package/dist/cjs/internal/request.js.map +1 -1
  101. package/dist/cjs/internal/resource.js +2 -2
  102. package/dist/cjs/internal/resource.js.map +1 -1
  103. package/dist/cjs/internal/runtime.js +2 -3
  104. package/dist/cjs/internal/runtime.js.map +1 -1
  105. package/dist/cjs/internal/schedule.js +6 -7
  106. package/dist/cjs/internal/schedule.js.map +1 -1
  107. package/dist/cjs/internal/scopedCache.js.map +1 -1
  108. package/dist/cjs/internal/scopedRef.js.map +1 -1
  109. package/dist/cjs/internal/sink.js +1 -1
  110. package/dist/cjs/internal/sink.js.map +1 -1
  111. package/dist/cjs/internal/stm/core.js +2 -2
  112. package/dist/cjs/internal/stm/core.js.map +1 -1
  113. package/dist/cjs/internal/stm/tArray.js.map +1 -1
  114. package/dist/cjs/internal/stm/tDeferred.js.map +1 -1
  115. package/dist/cjs/internal/stm/tMap.js.map +1 -1
  116. package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
  117. package/dist/cjs/internal/stm/tPubSub.js +17 -14
  118. package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
  119. package/dist/cjs/internal/stm/tQueue.js +6 -7
  120. package/dist/cjs/internal/stm/tQueue.js.map +1 -1
  121. package/dist/cjs/internal/stm/tSemaphore.js +2 -2
  122. package/dist/cjs/internal/stm/tSemaphore.js.map +1 -1
  123. package/dist/cjs/internal/stm/tSet.js.map +1 -1
  124. package/dist/cjs/internal/stream.js +4 -4
  125. package/dist/cjs/internal/stream.js.map +1 -1
  126. package/dist/cjs/internal/subscriptionRef.js.map +1 -1
  127. package/dist/cjs/internal/take.js +1 -1
  128. package/dist/cjs/internal/take.js.map +1 -1
  129. package/dist/cjs/internal/version.js +1 -1
  130. package/dist/dts/Brand.d.ts +4 -4
  131. package/dist/dts/Brand.d.ts.map +1 -1
  132. package/dist/dts/Cache.d.ts +15 -14
  133. package/dist/dts/Cache.d.ts.map +1 -1
  134. package/dist/dts/Cause.d.ts +92 -25
  135. package/dist/dts/Cause.d.ts.map +1 -1
  136. package/dist/dts/Channel.d.ts +4 -4
  137. package/dist/dts/Channel.d.ts.map +1 -1
  138. package/dist/dts/ChildExecutorDecision.d.ts.map +1 -1
  139. package/dist/dts/Chunk.d.ts +26 -24
  140. package/dist/dts/Chunk.d.ts.map +1 -1
  141. package/dist/dts/Clock.d.ts +4 -4
  142. package/dist/dts/Clock.d.ts.map +1 -1
  143. package/dist/dts/Config.d.ts +4 -4
  144. package/dist/dts/Config.d.ts.map +1 -1
  145. package/dist/dts/ConfigError.d.ts +7 -7
  146. package/dist/dts/ConfigError.d.ts.map +1 -1
  147. package/dist/dts/ConfigProvider.d.ts +3 -3
  148. package/dist/dts/ConfigProvider.d.ts.map +1 -1
  149. package/dist/dts/ConfigProviderPathPatch.d.ts +1 -1
  150. package/dist/dts/ConfigProviderPathPatch.d.ts.map +1 -1
  151. package/dist/dts/Console.d.ts +36 -36
  152. package/dist/dts/Console.d.ts.map +1 -1
  153. package/dist/dts/Context.d.ts +4 -4
  154. package/dist/dts/Context.d.ts.map +1 -1
  155. package/dist/dts/Data.d.ts +3 -17
  156. package/dist/dts/Data.d.ts.map +1 -1
  157. package/dist/dts/Deferred.d.ts +4 -4
  158. package/dist/dts/Deferred.d.ts.map +1 -1
  159. package/dist/dts/Differ.d.ts +9 -9
  160. package/dist/dts/Differ.d.ts.map +1 -1
  161. package/dist/dts/Duration.d.ts +1 -1
  162. package/dist/dts/Duration.d.ts.map +1 -1
  163. package/dist/dts/Effect.d.ts +34 -20
  164. package/dist/dts/Effect.d.ts.map +1 -1
  165. package/dist/dts/Either.d.ts +15 -3
  166. package/dist/dts/Either.d.ts.map +1 -1
  167. package/dist/dts/Equal.d.ts +1 -1
  168. package/dist/dts/Equal.d.ts.map +1 -1
  169. package/dist/dts/Equivalence.d.ts +1 -1
  170. package/dist/dts/Equivalence.d.ts.map +1 -1
  171. package/dist/dts/Exit.d.ts +5 -3
  172. package/dist/dts/Exit.d.ts.map +1 -1
  173. package/dist/dts/Fiber.d.ts +12 -12
  174. package/dist/dts/Fiber.d.ts.map +1 -1
  175. package/dist/dts/FiberRef.d.ts +3 -3
  176. package/dist/dts/FiberRef.d.ts.map +1 -1
  177. package/dist/dts/GroupBy.d.ts +2 -2
  178. package/dist/dts/GroupBy.d.ts.map +1 -1
  179. package/dist/dts/Hash.d.ts +1 -1
  180. package/dist/dts/Hash.d.ts.map +1 -1
  181. package/dist/dts/HashMap.d.ts +6 -4
  182. package/dist/dts/HashMap.d.ts.map +1 -1
  183. package/dist/dts/HashSet.d.ts +9 -9
  184. package/dist/dts/HashSet.d.ts.map +1 -1
  185. package/dist/dts/Inspectable.d.ts +3 -3
  186. package/dist/dts/Inspectable.d.ts.map +1 -1
  187. package/dist/dts/KeyedPool.d.ts +5 -5
  188. package/dist/dts/KeyedPool.d.ts.map +1 -1
  189. package/dist/dts/Layer.d.ts +2 -2
  190. package/dist/dts/Layer.d.ts.map +1 -1
  191. package/dist/dts/List.d.ts +16 -16
  192. package/dist/dts/List.d.ts.map +1 -1
  193. package/dist/dts/Logger.d.ts +4 -4
  194. package/dist/dts/Logger.d.ts.map +1 -1
  195. package/dist/dts/Match.d.ts +11 -11
  196. package/dist/dts/Match.d.ts.map +1 -1
  197. package/dist/dts/MergeDecision.d.ts +2 -2
  198. package/dist/dts/MergeDecision.d.ts.map +1 -1
  199. package/dist/dts/MergeState.d.ts +5 -5
  200. package/dist/dts/MergeState.d.ts.map +1 -1
  201. package/dist/dts/Metric.d.ts +5 -5
  202. package/dist/dts/Metric.d.ts.map +1 -1
  203. package/dist/dts/MetricHook.d.ts +4 -4
  204. package/dist/dts/MetricHook.d.ts.map +1 -1
  205. package/dist/dts/MetricKey.d.ts +2 -2
  206. package/dist/dts/MetricKey.d.ts.map +1 -1
  207. package/dist/dts/MetricKeyType.d.ts +2 -2
  208. package/dist/dts/MetricKeyType.d.ts.map +1 -1
  209. package/dist/dts/MetricPair.d.ts +2 -2
  210. package/dist/dts/MetricPair.d.ts.map +1 -1
  211. package/dist/dts/MetricPolling.d.ts +16 -16
  212. package/dist/dts/MetricPolling.d.ts.map +1 -1
  213. package/dist/dts/MetricRegistry.d.ts +7 -7
  214. package/dist/dts/MetricRegistry.d.ts.map +1 -1
  215. package/dist/dts/MetricState.d.ts +4 -4
  216. package/dist/dts/MetricState.d.ts.map +1 -1
  217. package/dist/dts/MutableHashMap.d.ts +1 -1
  218. package/dist/dts/MutableHashMap.d.ts.map +1 -1
  219. package/dist/dts/MutableHashSet.d.ts +1 -1
  220. package/dist/dts/MutableHashSet.d.ts.map +1 -1
  221. package/dist/dts/MutableList.d.ts +1 -1
  222. package/dist/dts/MutableList.d.ts.map +1 -1
  223. package/dist/dts/MutableQueue.d.ts +1 -1
  224. package/dist/dts/MutableQueue.d.ts.map +1 -1
  225. package/dist/dts/MutableRef.d.ts +1 -1
  226. package/dist/dts/MutableRef.d.ts.map +1 -1
  227. package/dist/dts/NonEmptyIterable.d.ts +2 -2
  228. package/dist/dts/NonEmptyIterable.d.ts.map +1 -1
  229. package/dist/dts/Option.d.ts +13 -11
  230. package/dist/dts/Option.d.ts.map +1 -1
  231. package/dist/dts/Order.d.ts +1 -1
  232. package/dist/dts/Order.d.ts.map +1 -1
  233. package/dist/dts/Pipeable.d.ts +21 -23
  234. package/dist/dts/Pipeable.d.ts.map +1 -1
  235. package/dist/dts/Pool.d.ts +4 -4
  236. package/dist/dts/Pool.d.ts.map +1 -1
  237. package/dist/dts/Predicate.d.ts +17 -2
  238. package/dist/dts/Predicate.d.ts.map +1 -1
  239. package/dist/dts/PrimaryKey.d.ts +16 -0
  240. package/dist/dts/PrimaryKey.d.ts.map +1 -0
  241. package/dist/dts/PubSub.d.ts +3 -3
  242. package/dist/dts/PubSub.d.ts.map +1 -1
  243. package/dist/dts/Queue.d.ts +46 -27
  244. package/dist/dts/Queue.d.ts.map +1 -1
  245. package/dist/dts/Random.d.ts +3 -3
  246. package/dist/dts/Random.d.ts.map +1 -1
  247. package/dist/dts/ReadonlyArray.d.ts +36 -36
  248. package/dist/dts/ReadonlyArray.d.ts.map +1 -1
  249. package/dist/dts/ReadonlyRecord.d.ts +13 -11
  250. package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
  251. package/dist/dts/RedBlackTree.d.ts +5 -2
  252. package/dist/dts/RedBlackTree.d.ts.map +1 -1
  253. package/dist/dts/Ref.d.ts +3 -3
  254. package/dist/dts/Ref.d.ts.map +1 -1
  255. package/dist/dts/Reloadable.d.ts +3 -3
  256. package/dist/dts/Reloadable.d.ts.map +1 -1
  257. package/dist/dts/Request.d.ts +49 -8
  258. package/dist/dts/Request.d.ts.map +1 -1
  259. package/dist/dts/RequestBlock.d.ts +8 -8
  260. package/dist/dts/RequestBlock.d.ts.map +1 -1
  261. package/dist/dts/RequestResolver.d.ts +5 -5
  262. package/dist/dts/RequestResolver.d.ts.map +1 -1
  263. package/dist/dts/Resource.d.ts +4 -4
  264. package/dist/dts/Resource.d.ts.map +1 -1
  265. package/dist/dts/Runtime.d.ts +3 -3
  266. package/dist/dts/Runtime.d.ts.map +1 -1
  267. package/dist/dts/STM.d.ts +9 -9
  268. package/dist/dts/STM.d.ts.map +1 -1
  269. package/dist/dts/Schedule.d.ts +6 -6
  270. package/dist/dts/Schedule.d.ts.map +1 -1
  271. package/dist/dts/Scheduler.d.ts +3 -3
  272. package/dist/dts/Scheduler.d.ts.map +1 -1
  273. package/dist/dts/ScopedCache.d.ts +9 -9
  274. package/dist/dts/ScopedCache.d.ts.map +1 -1
  275. package/dist/dts/ScopedRef.d.ts +3 -3
  276. package/dist/dts/ScopedRef.d.ts.map +1 -1
  277. package/dist/dts/SingleProducerAsyncInput.d.ts +7 -7
  278. package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
  279. package/dist/dts/Sink.d.ts +7 -4
  280. package/dist/dts/Sink.d.ts.map +1 -1
  281. package/dist/dts/SortedMap.d.ts +5 -2
  282. package/dist/dts/SortedMap.d.ts.map +1 -1
  283. package/dist/dts/SortedSet.d.ts +6 -12
  284. package/dist/dts/SortedSet.d.ts.map +1 -1
  285. package/dist/dts/Stream.d.ts +27 -19
  286. package/dist/dts/Stream.d.ts.map +1 -1
  287. package/dist/dts/StreamEmit.d.ts +12 -12
  288. package/dist/dts/StreamEmit.d.ts.map +1 -1
  289. package/dist/dts/SubscriptionRef.d.ts +3 -3
  290. package/dist/dts/SubscriptionRef.d.ts.map +1 -1
  291. package/dist/dts/Supervisor.d.ts +9 -9
  292. package/dist/dts/Supervisor.d.ts.map +1 -1
  293. package/dist/dts/SynchronizedRef.d.ts +4 -4
  294. package/dist/dts/SynchronizedRef.d.ts.map +1 -1
  295. package/dist/dts/TArray.d.ts +3 -3
  296. package/dist/dts/TArray.d.ts.map +1 -1
  297. package/dist/dts/TDeferred.d.ts +4 -4
  298. package/dist/dts/TDeferred.d.ts.map +1 -1
  299. package/dist/dts/TMap.d.ts +4 -4
  300. package/dist/dts/TMap.d.ts.map +1 -1
  301. package/dist/dts/TPriorityQueue.d.ts +3 -3
  302. package/dist/dts/TPriorityQueue.d.ts.map +1 -1
  303. package/dist/dts/TPubSub.d.ts +4 -1
  304. package/dist/dts/TPubSub.d.ts.map +1 -1
  305. package/dist/dts/TQueue.d.ts +9 -9
  306. package/dist/dts/TQueue.d.ts.map +1 -1
  307. package/dist/dts/TRandom.d.ts +3 -3
  308. package/dist/dts/TRandom.d.ts.map +1 -1
  309. package/dist/dts/TRef.d.ts +3 -3
  310. package/dist/dts/TRef.d.ts.map +1 -1
  311. package/dist/dts/TSet.d.ts +3 -3
  312. package/dist/dts/TSet.d.ts.map +1 -1
  313. package/dist/dts/Take.d.ts +2 -2
  314. package/dist/dts/Take.d.ts.map +1 -1
  315. package/dist/dts/TestAnnotation.d.ts +5 -3
  316. package/dist/dts/TestAnnotation.d.ts.map +1 -1
  317. package/dist/dts/TestAnnotations.d.ts +2 -2
  318. package/dist/dts/TestAnnotations.d.ts.map +1 -1
  319. package/dist/dts/TestClock.d.ts +3 -3
  320. package/dist/dts/TestClock.d.ts.map +1 -1
  321. package/dist/dts/TestLive.d.ts +1 -1
  322. package/dist/dts/TestLive.d.ts.map +1 -1
  323. package/dist/dts/TestSized.d.ts +1 -1
  324. package/dist/dts/TestSized.d.ts.map +1 -1
  325. package/dist/dts/Tracer.d.ts +5 -5
  326. package/dist/dts/Tracer.d.ts.map +1 -1
  327. package/dist/dts/Types.d.ts +7 -0
  328. package/dist/dts/Types.d.ts.map +1 -1
  329. package/dist/dts/UpstreamPullRequest.d.ts +2 -2
  330. package/dist/dts/UpstreamPullRequest.d.ts.map +1 -1
  331. package/dist/dts/UpstreamPullStrategy.d.ts +3 -3
  332. package/dist/dts/UpstreamPullStrategy.d.ts.map +1 -1
  333. package/dist/dts/Utils.d.ts +1 -1
  334. package/dist/dts/Utils.d.ts.map +1 -1
  335. package/dist/dts/index.d.ts +4 -0
  336. package/dist/dts/index.d.ts.map +1 -1
  337. package/dist/dts/internal/core-stream.d.ts.map +1 -1
  338. package/dist/dts/internal/fiberScope.d.ts +1 -1
  339. package/dist/dts/internal/fiberScope.d.ts.map +1 -1
  340. package/dist/dts/internal/stream/handoffSignal.d.ts +1 -1
  341. package/dist/dts/internal/stream/handoffSignal.d.ts.map +1 -1
  342. package/dist/dts/internal/version.d.ts +1 -1
  343. package/dist/esm/Cache.js.map +1 -1
  344. package/dist/esm/Cause.js +52 -17
  345. package/dist/esm/Cause.js.map +1 -1
  346. package/dist/esm/ChildExecutorDecision.js.map +1 -1
  347. package/dist/esm/Chunk.js +5 -5
  348. package/dist/esm/Chunk.js.map +1 -1
  349. package/dist/esm/Data.js +10 -19
  350. package/dist/esm/Data.js.map +1 -1
  351. package/dist/esm/Duration.js +4 -0
  352. package/dist/esm/Duration.js.map +1 -1
  353. package/dist/esm/Effect.js +7 -0
  354. package/dist/esm/Effect.js.map +1 -1
  355. package/dist/esm/Either.js +8 -1
  356. package/dist/esm/Either.js.map +1 -1
  357. package/dist/esm/Exit.js.map +1 -1
  358. package/dist/esm/Fiber.js.map +1 -1
  359. package/dist/esm/HashMap.js.map +1 -1
  360. package/dist/esm/KeyedPool.js.map +1 -1
  361. package/dist/esm/List.js.map +1 -1
  362. package/dist/esm/MergeState.js.map +1 -1
  363. package/dist/esm/MetricPolling.js +1 -1
  364. package/dist/esm/MetricPolling.js.map +1 -1
  365. package/dist/esm/MetricState.js.map +1 -1
  366. package/dist/esm/NonEmptyIterable.js.map +1 -1
  367. package/dist/esm/Option.js +2 -2
  368. package/dist/esm/Option.js.map +1 -1
  369. package/dist/esm/Pipeable.js.map +1 -1
  370. package/dist/esm/Predicate.js +15 -0
  371. package/dist/esm/Predicate.js.map +1 -1
  372. package/dist/esm/PrimaryKey.js +9 -0
  373. package/dist/esm/PrimaryKey.js.map +1 -0
  374. package/dist/esm/Queue.js +5 -0
  375. package/dist/esm/Queue.js.map +1 -1
  376. package/dist/esm/ReadonlyArray.js +2 -0
  377. package/dist/esm/ReadonlyArray.js.map +1 -1
  378. package/dist/esm/ReadonlyRecord.js +2 -2
  379. package/dist/esm/ReadonlyRecord.js.map +1 -1
  380. package/dist/esm/RedBlackTree.js.map +1 -1
  381. package/dist/esm/Request.js +34 -0
  382. package/dist/esm/Request.js.map +1 -1
  383. package/dist/esm/STM.js +1 -1
  384. package/dist/esm/STM.js.map +1 -1
  385. package/dist/esm/Sink.js.map +1 -1
  386. package/dist/esm/SortedMap.js +4 -1
  387. package/dist/esm/SortedMap.js.map +1 -1
  388. package/dist/esm/SortedSet.js +2 -2
  389. package/dist/esm/SortedSet.js.map +1 -1
  390. package/dist/esm/Stream.js.map +1 -1
  391. package/dist/esm/SubscriptionRef.js.map +1 -1
  392. package/dist/esm/TPubSub.js.map +1 -1
  393. package/dist/esm/TestAnnotation.js +3 -1
  394. package/dist/esm/TestAnnotation.js.map +1 -1
  395. package/dist/esm/TestClock.js.map +1 -1
  396. package/dist/esm/UpstreamPullRequest.js.map +1 -1
  397. package/dist/esm/index.js +4 -0
  398. package/dist/esm/index.js.map +1 -1
  399. package/dist/esm/internal/cache.js.map +1 -1
  400. package/dist/esm/internal/cause.js +3 -96
  401. package/dist/esm/internal/cause.js.map +1 -1
  402. package/dist/esm/internal/channel/continuation.js.map +1 -1
  403. package/dist/esm/internal/configProvider.js +13 -1
  404. package/dist/esm/internal/configProvider.js.map +1 -1
  405. package/dist/esm/internal/core-effect.js +7 -7
  406. package/dist/esm/internal/core-effect.js.map +1 -1
  407. package/dist/esm/internal/core-stream.js.map +1 -1
  408. package/dist/esm/internal/core.js +151 -10
  409. package/dist/esm/internal/core.js.map +1 -1
  410. package/dist/esm/internal/data.js +3 -21
  411. package/dist/esm/internal/data.js.map +1 -1
  412. package/dist/esm/internal/dataSource.js +1 -1
  413. package/dist/esm/internal/dataSource.js.map +1 -1
  414. package/dist/esm/internal/deferred.js.map +1 -1
  415. package/dist/esm/internal/differ/orPatch.js.map +1 -1
  416. package/dist/esm/internal/effect/circular.js.map +1 -1
  417. package/dist/esm/internal/effectable.js +20 -2
  418. package/dist/esm/internal/effectable.js.map +1 -1
  419. package/dist/esm/internal/fiberMessage.js.map +1 -1
  420. package/dist/esm/internal/fiberRuntime.js +9 -10
  421. package/dist/esm/internal/fiberRuntime.js.map +1 -1
  422. package/dist/esm/internal/hashMap.js +1 -1
  423. package/dist/esm/internal/hashMap.js.map +1 -1
  424. package/dist/esm/internal/hashSet.js +2 -2
  425. package/dist/esm/internal/hashSet.js.map +1 -1
  426. package/dist/esm/internal/keyedPool.js.map +1 -1
  427. package/dist/esm/internal/layer.js.map +1 -1
  428. package/dist/esm/internal/metric/polling.js +6 -6
  429. package/dist/esm/internal/metric/polling.js.map +1 -1
  430. package/dist/esm/internal/metric.js +4 -0
  431. package/dist/esm/internal/metric.js.map +1 -1
  432. package/dist/esm/internal/pool.js.map +1 -1
  433. package/dist/esm/internal/pubsub.js +24 -23
  434. package/dist/esm/internal/pubsub.js.map +1 -1
  435. package/dist/esm/internal/queue.js +9 -0
  436. package/dist/esm/internal/queue.js.map +1 -1
  437. package/dist/esm/internal/redBlackTree.js +5 -1
  438. package/dist/esm/internal/redBlackTree.js.map +1 -1
  439. package/dist/esm/internal/reloadable.js.map +1 -1
  440. package/dist/esm/internal/request.js +27 -14
  441. package/dist/esm/internal/request.js.map +1 -1
  442. package/dist/esm/internal/resource.js +2 -2
  443. package/dist/esm/internal/resource.js.map +1 -1
  444. package/dist/esm/internal/runtime.js +1 -2
  445. package/dist/esm/internal/runtime.js.map +1 -1
  446. package/dist/esm/internal/schedule.js +6 -7
  447. package/dist/esm/internal/schedule.js.map +1 -1
  448. package/dist/esm/internal/scopedCache.js.map +1 -1
  449. package/dist/esm/internal/scopedRef.js.map +1 -1
  450. package/dist/esm/internal/sink.js +1 -1
  451. package/dist/esm/internal/sink.js.map +1 -1
  452. package/dist/esm/internal/stm/core.js +2 -2
  453. package/dist/esm/internal/stm/core.js.map +1 -1
  454. package/dist/esm/internal/stm/tArray.js.map +1 -1
  455. package/dist/esm/internal/stm/tDeferred.js.map +1 -1
  456. package/dist/esm/internal/stm/tMap.js.map +1 -1
  457. package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
  458. package/dist/esm/internal/stm/tPubSub.js +17 -14
  459. package/dist/esm/internal/stm/tPubSub.js.map +1 -1
  460. package/dist/esm/internal/stm/tQueue.js +6 -7
  461. package/dist/esm/internal/stm/tQueue.js.map +1 -1
  462. package/dist/esm/internal/stm/tSemaphore.js +2 -2
  463. package/dist/esm/internal/stm/tSemaphore.js.map +1 -1
  464. package/dist/esm/internal/stm/tSet.js.map +1 -1
  465. package/dist/esm/internal/stream.js +4 -4
  466. package/dist/esm/internal/stream.js.map +1 -1
  467. package/dist/esm/internal/subscriptionRef.js.map +1 -1
  468. package/dist/esm/internal/take.js +1 -1
  469. package/dist/esm/internal/take.js.map +1 -1
  470. package/dist/esm/internal/version.js +1 -1
  471. package/dist/esm/package.json +1 -1
  472. package/package.json +10 -2
  473. package/src/Brand.ts +4 -4
  474. package/src/Cache.ts +15 -17
  475. package/src/Cause.ts +124 -40
  476. package/src/Channel.ts +4 -4
  477. package/src/ChildExecutorDecision.ts +10 -2
  478. package/src/Chunk.ts +44 -36
  479. package/src/Clock.ts +4 -4
  480. package/src/Config.ts +4 -4
  481. package/src/ConfigError.ts +8 -8
  482. package/src/ConfigProvider.ts +5 -5
  483. package/src/ConfigProviderPathPatch.ts +1 -1
  484. package/src/Console.ts +36 -36
  485. package/src/Context.ts +4 -4
  486. package/src/Data.ts +13 -44
  487. package/src/Deferred.ts +4 -4
  488. package/src/Differ.ts +9 -9
  489. package/src/Duration.ts +5 -0
  490. package/src/Effect.ts +88 -26
  491. package/src/Either.ts +28 -5
  492. package/src/Equal.ts +1 -1
  493. package/src/Equivalence.ts +1 -1
  494. package/src/Exit.ts +21 -7
  495. package/src/Fiber.ts +20 -14
  496. package/src/FiberRef.ts +7 -7
  497. package/src/GroupBy.ts +2 -2
  498. package/src/Hash.ts +1 -1
  499. package/src/HashMap.ts +6 -4
  500. package/src/HashSet.ts +11 -11
  501. package/src/Inspectable.ts +3 -3
  502. package/src/KeyedPool.ts +13 -7
  503. package/src/Layer.ts +2 -2
  504. package/src/List.ts +24 -22
  505. package/src/Logger.ts +4 -4
  506. package/src/Match.ts +11 -11
  507. package/src/MergeDecision.ts +2 -2
  508. package/src/MergeState.ts +11 -5
  509. package/src/Metric.ts +5 -5
  510. package/src/MetricHook.ts +4 -4
  511. package/src/MetricKey.ts +2 -2
  512. package/src/MetricKeyType.ts +2 -2
  513. package/src/MetricPair.ts +2 -2
  514. package/src/MetricPolling.ts +22 -22
  515. package/src/MetricRegistry.ts +9 -9
  516. package/src/MetricState.ts +6 -4
  517. package/src/MutableHashMap.ts +1 -1
  518. package/src/MutableHashSet.ts +1 -1
  519. package/src/MutableList.ts +1 -1
  520. package/src/MutableQueue.ts +1 -1
  521. package/src/MutableRef.ts +1 -1
  522. package/src/NonEmptyIterable.ts +2 -2
  523. package/src/Option.ts +18 -15
  524. package/src/Order.ts +1 -1
  525. package/src/Pipeable.ts +275 -277
  526. package/src/Pool.ts +4 -4
  527. package/src/Predicate.ts +21 -2
  528. package/src/PrimaryKey.ts +17 -0
  529. package/src/PubSub.ts +3 -3
  530. package/src/Queue.ts +52 -30
  531. package/src/Random.ts +3 -3
  532. package/src/ReadonlyArray.ts +51 -66
  533. package/src/ReadonlyRecord.ts +37 -35
  534. package/src/RedBlackTree.ts +5 -2
  535. package/src/Ref.ts +3 -3
  536. package/src/Reloadable.ts +3 -3
  537. package/src/Request.ts +53 -8
  538. package/src/RequestBlock.ts +9 -9
  539. package/src/RequestResolver.ts +5 -5
  540. package/src/Resource.ts +4 -4
  541. package/src/Runtime.ts +3 -3
  542. package/src/STM.ts +23 -12
  543. package/src/Schedule.ts +7 -7
  544. package/src/Scheduler.ts +3 -3
  545. package/src/Scope.ts +3 -3
  546. package/src/ScopedCache.ts +9 -9
  547. package/src/ScopedRef.ts +3 -3
  548. package/src/SingleProducerAsyncInput.ts +7 -7
  549. package/src/Sink.ts +23 -9
  550. package/src/SortedMap.ts +9 -3
  551. package/src/SortedSet.ts +26 -41
  552. package/src/Stream.ts +70 -29
  553. package/src/StreamEmit.ts +12 -12
  554. package/src/SubscriptionRef.ts +5 -3
  555. package/src/Supervisor.ts +10 -10
  556. package/src/SynchronizedRef.ts +4 -4
  557. package/src/TArray.ts +4 -4
  558. package/src/TDeferred.ts +5 -5
  559. package/src/TMap.ts +5 -5
  560. package/src/TPriorityQueue.ts +4 -4
  561. package/src/TPubSub.ts +6 -3
  562. package/src/TQueue.ts +9 -9
  563. package/src/TRandom.ts +3 -3
  564. package/src/TRef.ts +4 -4
  565. package/src/TSet.ts +4 -4
  566. package/src/Take.ts +2 -2
  567. package/src/TestAnnotation.ts +8 -4
  568. package/src/TestAnnotations.ts +2 -2
  569. package/src/TestClock.ts +3 -5
  570. package/src/TestLive.ts +1 -1
  571. package/src/TestSized.ts +1 -1
  572. package/src/Tracer.ts +6 -6
  573. package/src/Types.ts +8 -0
  574. package/src/UpstreamPullRequest.ts +10 -4
  575. package/src/UpstreamPullStrategy.ts +3 -3
  576. package/src/Utils.ts +1 -1
  577. package/src/index.ts +5 -0
  578. package/src/internal/blockedRequests.ts +6 -6
  579. package/src/internal/cache.ts +12 -12
  580. package/src/internal/cause.ts +14 -138
  581. package/src/internal/channel/channelExecutor.ts +1 -1
  582. package/src/internal/channel/channelState.ts +5 -5
  583. package/src/internal/channel/continuation.ts +52 -32
  584. package/src/internal/channel/mergeDecision.ts +1 -1
  585. package/src/internal/channel/singleProducerAsyncInput.ts +1 -1
  586. package/src/internal/channel/subexecutor.ts +7 -7
  587. package/src/internal/config.ts +6 -6
  588. package/src/internal/configProvider.ts +14 -1
  589. package/src/internal/core-effect.ts +49 -38
  590. package/src/internal/core-stream.ts +18 -21
  591. package/src/internal/core.ts +286 -38
  592. package/src/internal/data.ts +3 -22
  593. package/src/internal/dataSource.ts +1 -1
  594. package/src/internal/deferred.ts +5 -5
  595. package/src/internal/differ/contextPatch.ts +5 -5
  596. package/src/internal/differ/orPatch.ts +18 -6
  597. package/src/internal/effect/circular.ts +3 -3
  598. package/src/internal/effectable.ts +23 -4
  599. package/src/internal/fiberMessage.ts +1 -4
  600. package/src/internal/fiberRuntime.ts +14 -15
  601. package/src/internal/fiberScope.ts +1 -1
  602. package/src/internal/groupBy.ts +1 -1
  603. package/src/internal/hashMap/node.ts +5 -5
  604. package/src/internal/hashMap.ts +23 -22
  605. package/src/internal/hashSet.ts +18 -20
  606. package/src/internal/keyedPool.ts +4 -4
  607. package/src/internal/layer.ts +6 -12
  608. package/src/internal/metric/key.ts +1 -1
  609. package/src/internal/metric/polling.ts +26 -26
  610. package/src/internal/metric.ts +4 -0
  611. package/src/internal/pool.ts +2 -2
  612. package/src/internal/pubsub.ts +64 -61
  613. package/src/internal/queue.ts +20 -6
  614. package/src/internal/redBlackTree/iterator.ts +1 -1
  615. package/src/internal/redBlackTree/node.ts +1 -1
  616. package/src/internal/redBlackTree.ts +7 -2
  617. package/src/internal/ref.ts +1 -1
  618. package/src/internal/reloadable.ts +1 -1
  619. package/src/internal/request.ts +39 -13
  620. package/src/internal/resource.ts +4 -4
  621. package/src/internal/ringBuffer.ts +1 -1
  622. package/src/internal/runtime.ts +2 -3
  623. package/src/internal/schedule.ts +6 -7
  624. package/src/internal/scopedCache.ts +7 -5
  625. package/src/internal/scopedRef.ts +1 -1
  626. package/src/internal/sink.ts +6 -3
  627. package/src/internal/stack.ts +1 -1
  628. package/src/internal/stm/core.ts +3 -3
  629. package/src/internal/stm/stm/stmState.ts +1 -1
  630. package/src/internal/stm/stm/tExit.ts +3 -3
  631. package/src/internal/stm/stm/tryCommit.ts +1 -1
  632. package/src/internal/stm/stm/versioned.ts +1 -1
  633. package/src/internal/stm/stm.ts +2 -2
  634. package/src/internal/stm/tArray.ts +2 -2
  635. package/src/internal/stm/tDeferred.ts +3 -3
  636. package/src/internal/stm/tMap.ts +3 -3
  637. package/src/internal/stm/tPriorityQueue.ts +2 -2
  638. package/src/internal/stm/tPubSub.ts +43 -38
  639. package/src/internal/stm/tQueue.ts +7 -8
  640. package/src/internal/stm/tReentrantLock.ts +2 -2
  641. package/src/internal/stm/tRef.ts +1 -1
  642. package/src/internal/stm/tSemaphore.ts +2 -2
  643. package/src/internal/stm/tSet.ts +2 -2
  644. package/src/internal/stream/debounceState.ts +2 -2
  645. package/src/internal/stream/handoff.ts +3 -3
  646. package/src/internal/stream/handoffSignal.ts +2 -2
  647. package/src/internal/stream/pull.ts +1 -1
  648. package/src/internal/stream.ts +66 -33
  649. package/src/internal/subscriptionRef.ts +2 -2
  650. package/src/internal/supervisor.ts +3 -3
  651. package/src/internal/take.ts +2 -2
  652. package/src/internal/version.ts +1 -1
@@ -21,9 +21,9 @@ export type NodeInspectSymbol = typeof NodeInspectSymbol
21
21
  * @category models
22
22
  */
23
23
  export interface Inspectable {
24
- readonly toString: () => string
25
- readonly toJSON: () => unknown
26
- readonly [NodeInspectSymbol]: () => unknown
24
+ toString(): string
25
+ toJSON(): unknown
26
+ [NodeInspectSymbol](): unknown
27
27
  }
28
28
 
29
29
  /**
package/src/KeyedPool.ts CHANGED
@@ -26,21 +26,21 @@ export type KeyedPoolTypeId = typeof KeyedPoolTypeId
26
26
  * @since 2.0.0
27
27
  * @category models
28
28
  */
29
- export interface KeyedPool<K, E, A> extends KeyedPool.Variance<K, E, A>, Pipeable {
29
+ export interface KeyedPool<in K, out E, in out A> extends KeyedPool.Variance<K, E, A>, Pipeable {
30
30
  /**
31
31
  * Retrieves an item from the pool belonging to the given key in a scoped
32
32
  * effect. Note that if acquisition fails, then the returned effect will fail
33
33
  * for that same reason. Retrying a failed acquisition attempt will repeat the
34
34
  * acquisition attempt.
35
35
  */
36
- readonly get: (key: K) => Effect.Effect<Scope.Scope, E, A>
36
+ get(key: K): Effect.Effect<Scope.Scope, E, A>
37
37
 
38
38
  /**
39
39
  * Invalidates the specified item. This will cause the pool to eventually
40
40
  * reallocate the item, although this reallocation may occur lazily rather
41
41
  * than eagerly.
42
42
  */
43
- readonly invalidate: (item: A) => Effect.Effect<never, never, void>
43
+ invalidate(item: A): Effect.Effect<never, never, void>
44
44
  }
45
45
 
46
46
  /**
@@ -51,11 +51,11 @@ export declare namespace KeyedPool {
51
51
  * @since 2.0.0
52
52
  * @category models
53
53
  */
54
- export interface Variance<K, E, A> {
54
+ export interface Variance<in K, out E, in out A> {
55
55
  readonly [KeyedPoolTypeId]: {
56
56
  readonly _K: (_: K) => void
57
57
  readonly _E: (_: never) => E
58
- readonly _A: (_: never) => A
58
+ readonly _A: (_: A) => A
59
59
  }
60
60
  }
61
61
  }
@@ -70,7 +70,10 @@ export declare namespace KeyedPool {
70
70
  * @category constructors
71
71
  */
72
72
  export const make: <K, R, E, A>(
73
- options: { readonly acquire: (key: K) => Effect.Effect<R, E, A>; readonly size: number }
73
+ options: {
74
+ readonly acquire: (key: K) => Effect.Effect<R, E, A>
75
+ readonly size: number
76
+ }
74
77
  ) => Effect.Effect<Scope.Scope | R, never, KeyedPool<K, E, A>> = internal.make
75
78
 
76
79
  /**
@@ -85,7 +88,10 @@ export const make: <K, R, E, A>(
85
88
  * @category constructors
86
89
  */
87
90
  export const makeWith: <K, R, E, A>(
88
- options: { readonly acquire: (key: K) => Effect.Effect<R, E, A>; readonly size: (key: K) => number }
91
+ options: {
92
+ readonly acquire: (key: K) => Effect.Effect<R, E, A>
93
+ readonly size: (key: K) => number
94
+ }
89
95
  ) => Effect.Effect<Scope.Scope | R, never, KeyedPool<K, E, A>> = internal.makeWith
90
96
 
91
97
  /**
package/src/Layer.ts CHANGED
@@ -58,7 +58,7 @@ export type LayerTypeId = typeof LayerTypeId
58
58
  * @since 2.0.0
59
59
  * @category models
60
60
  */
61
- export interface Layer<RIn, E, ROut> extends Layer.Variance<RIn, E, ROut>, Pipeable {}
61
+ export interface Layer<out RIn, out E, in ROut> extends Layer.Variance<RIn, E, ROut>, Pipeable {}
62
62
 
63
63
  /**
64
64
  * @since 2.0.0
@@ -68,7 +68,7 @@ export declare namespace Layer {
68
68
  * @since 2.0.0
69
69
  * @category models
70
70
  */
71
- export interface Variance<RIn, E, ROut> {
71
+ export interface Variance<out RIn, out E, in ROut> {
72
72
  readonly [LayerTypeId]: {
73
73
  readonly _RIn: (_: never) => RIn
74
74
  readonly _E: (_: never) => E
package/src/List.ts CHANGED
@@ -62,7 +62,7 @@ export type TypeId = typeof TypeId
62
62
  * @since 2.0.0
63
63
  * @category models
64
64
  */
65
- export interface Nil<A> extends Iterable<A>, Equal.Equal, Pipeable, Inspectable {
65
+ export interface Nil<out A> extends Iterable<A>, Equal.Equal, Pipeable, Inspectable {
66
66
  readonly [TypeId]: TypeId
67
67
  readonly _tag: "Nil"
68
68
  }
@@ -71,7 +71,7 @@ export interface Nil<A> extends Iterable<A>, Equal.Equal, Pipeable, Inspectable
71
71
  * @since 2.0.0
72
72
  * @category models
73
73
  */
74
- export interface Cons<A> extends Iterable<A>, Equal.Equal, Pipeable, Inspectable {
74
+ export interface Cons<out A> extends Iterable<A>, Equal.Equal, Pipeable, Inspectable {
75
75
  readonly [TypeId]: TypeId
76
76
  readonly _tag: "Cons"
77
77
  readonly head: A
@@ -461,9 +461,9 @@ export const every: {
461
461
  * @category elements
462
462
  */
463
463
  export const some: {
464
- <A>(predicate: Predicate<A>): <B extends A>(self: List<B>) => self is Cons<B>
465
- <B extends A, A = B>(self: List<B>, predicate: Predicate<A>): self is Cons<B>
466
- } = dual(2, <B extends A, A = B>(self: List<B>, predicate: Predicate<A>): self is Cons<B> => {
464
+ <B extends A, A = B>(predicate: Predicate<A>): (self: List<B>) => self is Cons<B>
465
+ <A>(self: List<A>, predicate: Predicate<A>): self is Cons<A>
466
+ } = dual(2, <A>(self: List<A>, predicate: Predicate<A>): self is Cons<A> => {
467
467
  let these = self
468
468
  while (!isNil(these)) {
469
469
  if (predicate(these.head)) {
@@ -481,11 +481,11 @@ export const some: {
481
481
  * @category combinators
482
482
  */
483
483
  export const filter: {
484
- <C extends A, B extends A, A = C>(refinement: Refinement<A, B>): (self: List<C>) => List<B>
484
+ <A, B extends A>(refinement: Refinement<A, B>): (self: List<A>) => List<B>
485
485
  <B extends A, A = B>(predicate: Predicate<A>): (self: List<B>) => List<B>
486
- <C extends A, B extends A, A = C>(self: List<C>, refinement: Refinement<A, B>): List<B>
487
- <B extends A, A = B>(self: List<B>, predicate: Predicate<A>): List<B>
488
- } = dual(2, <B extends A, A = B>(self: List<B>, predicate: Predicate<A>): List<B> => noneIn(self, predicate, false))
486
+ <A, B extends A>(self: List<A>, refinement: Refinement<A, B>): List<B>
487
+ <A>(self: List<A>, predicate: Predicate<A>): List<A>
488
+ } = dual(2, <A>(self: List<A>, predicate: Predicate<A>): List<A> => noneIn(self, predicate, false))
489
489
 
490
490
  // everything seen so far is not included
491
491
  const noneIn = <A>(
@@ -618,7 +618,7 @@ export const compact = <A>(self: List<Option.Option<A>>): List<A> => filterMap(s
618
618
  */
619
619
  export const findFirst: {
620
620
  <A, B extends A>(refinement: Refinement<A, B>): (self: List<A>) => Option.Option<B>
621
- <A>(predicate: Predicate<A>): (self: List<A>) => Option.Option<A>
621
+ <B extends A, A = B>(predicate: Predicate<A>): (self: List<B>) => Option.Option<B>
622
622
  <A, B extends A>(self: List<A>, refinement: Refinement<A, B>): Option.Option<B>
623
623
  <A>(self: List<A>, predicate: Predicate<A>): Option.Option<A>
624
624
  } = dual(2, <A>(self: List<A>, predicate: Predicate<A>): Option.Option<A> => {
@@ -760,13 +760,15 @@ export const map: {
760
760
  * @category combinators
761
761
  */
762
762
  export const partition: {
763
- <C extends A, B extends A, A = C>(refinement: Refinement<A, B>): (self: List<C>) => [List<Exclude<C, B>>, List<B>]
764
- <B extends A, A = B>(predicate: (a: A) => boolean): (self: List<B>) => [List<B>, List<B>]
765
- <C extends A, B extends A, A = C>(self: List<C>, refinement: Refinement<A, B>): [List<Exclude<C, B>>, List<B>]
766
- <B extends A, A = B>(self: List<B>, predicate: (a: A) => boolean): [List<B>, List<B>]
767
- } = dual(2, <B extends A, A = B>(self: List<B>, predicate: (a: A) => boolean): [List<B>, List<B>] => {
768
- const left: Array<B> = []
769
- const right: Array<B> = []
763
+ <C extends A, B extends A, A = C>(
764
+ refinement: Refinement<A, B>
765
+ ): (self: List<C>) => [excluded: List<Exclude<C, B>>, satisfying: List<B>]
766
+ <B extends A, A = B>(predicate: Predicate<A>): (self: List<B>) => [excluded: List<B>, satisfying: List<B>]
767
+ <A, B extends A>(self: List<A>, refinement: Refinement<A, B>): [excluded: List<Exclude<A, B>>, satisfying: List<B>]
768
+ <A>(self: List<A>, predicate: Predicate<A>): [excluded: List<A>, satisfying: List<A>]
769
+ } = dual(2, <A>(self: List<A>, predicate: Predicate<A>): [excluded: List<A>, satisfying: List<A>] => {
770
+ const left: Array<A> = []
771
+ const right: Array<A> = []
770
772
  for (const a of self) {
771
773
  if (predicate(a)) {
772
774
  right.push(a)
@@ -786,9 +788,9 @@ export const partition: {
786
788
  * @category combinators
787
789
  */
788
790
  export const partitionMap: {
789
- <A, B, C>(f: (a: A) => Either.Either<B, C>): (self: List<A>) => [List<B>, List<C>]
790
- <A, B, C>(self: List<A>, f: (a: A) => Either.Either<B, C>): [List<B>, List<C>]
791
- } = dual(2, <A, B, C>(self: List<A>, f: (a: A) => Either.Either<B, C>): [List<B>, List<C>] => {
791
+ <A, B, C>(f: (a: A) => Either.Either<B, C>): (self: List<A>) => [left: List<B>, right: List<C>]
792
+ <A, B, C>(self: List<A>, f: (a: A) => Either.Either<B, C>): [left: List<B>, right: List<C>]
793
+ } = dual(2, <A, B, C>(self: List<A>, f: (a: A) => Either.Either<B, C>): [left: List<B>, right: List<C>] => {
792
794
  const left: Array<B> = []
793
795
  const right: Array<C> = []
794
796
  for (const a of self) {
@@ -865,8 +867,8 @@ export const reverse = <A>(self: List<A>): List<A> => {
865
867
  * @category combinators
866
868
  */
867
869
  export const splitAt: {
868
- (n: number): <A>(self: List<A>) => [List<A>, List<A>]
869
- <A>(self: List<A>, n: number): [List<A>, List<A>]
870
+ (n: number): <A>(self: List<A>) => [beforeIndex: List<A>, fromIndex: List<A>]
871
+ <A>(self: List<A>, n: number): [beforeIndex: List<A>, fromIndex: List<A>]
870
872
  } = dual(2, <A>(self: List<A>, n: number): [List<A>, List<A>] => [take(self, n), drop(self, n)])
871
873
 
872
874
  /**
package/src/Logger.ts CHANGED
@@ -35,8 +35,8 @@ export type LoggerTypeId = typeof LoggerTypeId
35
35
  * @since 2.0.0
36
36
  * @category models
37
37
  */
38
- export interface Logger<Message, Output> extends Logger.Variance<Message, Output>, Pipeable {
39
- readonly log: (options: Logger.Options<Message>) => Output
38
+ export interface Logger<in Message, out Output> extends Logger.Variance<Message, Output>, Pipeable {
39
+ log(options: Logger.Options<Message>): Output
40
40
  }
41
41
 
42
42
  /**
@@ -47,7 +47,7 @@ export declare namespace Logger {
47
47
  * @since 2.0.0
48
48
  * @category models
49
49
  */
50
- export interface Variance<Message, Output> {
50
+ export interface Variance<in Message, out Output> {
51
51
  readonly [LoggerTypeId]: {
52
52
  readonly _Message: (_: Message) => void
53
53
  readonly _Output: (_: never) => Output
@@ -58,7 +58,7 @@ export declare namespace Logger {
58
58
  * @since 2.0.0
59
59
  * @category models
60
60
  */
61
- export interface Options<Message> {
61
+ export interface Options<out Message> {
62
62
  readonly fiberId: FiberId.FiberId
63
63
  readonly logLevel: LogLevel.LogLevel
64
64
  readonly message: Message
package/src/Match.ts CHANGED
@@ -33,7 +33,7 @@ export type Matcher<Input, Filters, RemainingApplied, Result, Provided> =
33
33
  * @category model
34
34
  * @since 1.0.0
35
35
  */
36
- export interface TypeMatcher<Input, Filters, Remaining, Result> extends Pipeable {
36
+ export interface TypeMatcher<in Input, out Filters, out Remaining, out Result> extends Pipeable {
37
37
  readonly _tag: "TypeMatcher"
38
38
  readonly [MatcherTypeId]: {
39
39
  readonly _input: (_: Input) => unknown
@@ -42,14 +42,14 @@ export interface TypeMatcher<Input, Filters, Remaining, Result> extends Pipeable
42
42
  readonly _result: (_: never) => Result
43
43
  }
44
44
  readonly cases: ReadonlyArray<Case>
45
- readonly add: <I, R, RA, A>(_case: Case) => TypeMatcher<I, R, RA, A>
45
+ add<I, R, RA, A>(_case: Case): TypeMatcher<I, R, RA, A>
46
46
  }
47
47
 
48
48
  /**
49
49
  * @category model
50
50
  * @since 1.0.0
51
51
  */
52
- export interface ValueMatcher<Input, Filters, Remaining, Result, Provided> extends Pipeable {
52
+ export interface ValueMatcher<in Input, Filters, out Remaining, out Result, Provided> extends Pipeable {
53
53
  readonly _tag: "ValueMatcher"
54
54
  readonly [MatcherTypeId]: {
55
55
  readonly _input: (_: Input) => unknown
@@ -58,7 +58,7 @@ export interface ValueMatcher<Input, Filters, Remaining, Result, Provided> exten
58
58
  }
59
59
  readonly provided: Provided
60
60
  readonly value: Either.Either<Remaining, Provided>
61
- readonly add: <I, R, RA, A, Pr>(_case: Case) => ValueMatcher<I, R, RA, A, Pr>
61
+ add<I, R, RA, A, Pr>(_case: Case): ValueMatcher<I, R, RA, A, Pr>
62
62
  }
63
63
 
64
64
  /**
@@ -73,8 +73,8 @@ export type Case = When | Not
73
73
  */
74
74
  export interface When {
75
75
  readonly _tag: "When"
76
- readonly guard: (u: unknown) => boolean
77
- readonly evaluate: (input: unknown) => any
76
+ guard(u: unknown): boolean
77
+ evaluate(input: unknown): any
78
78
  }
79
79
 
80
80
  /**
@@ -83,8 +83,8 @@ export interface When {
83
83
  */
84
84
  export interface Not {
85
85
  readonly _tag: "Not"
86
- readonly guard: (u: unknown) => boolean
87
- readonly evaluate: (input: unknown) => any
86
+ guard(u: unknown): boolean
87
+ evaluate(input: unknown): any
88
88
  }
89
89
 
90
90
  /**
@@ -550,7 +550,7 @@ export type SafeRefinementId = typeof SafeRefinementId
550
550
  * @category model
551
551
  * @since 1.0.0
552
552
  */
553
- export interface SafeRefinement<A, R = A> {
553
+ export interface SafeRefinement<in A, out R = A> {
554
554
  readonly [SafeRefinementId]: (a: A) => R
555
555
  }
556
556
 
@@ -652,7 +652,7 @@ export declare namespace Types {
652
652
  /**
653
653
  * @since 1.0.0
654
654
  */
655
- export interface Without<X> {
655
+ export interface Without<out X> {
656
656
  readonly _tag: "Without"
657
657
  readonly _X: X
658
658
  }
@@ -660,7 +660,7 @@ export declare namespace Types {
660
660
  /**
661
661
  * @since 1.0.0
662
662
  */
663
- export interface Only<X> {
663
+ export interface Only<out X> {
664
664
  readonly _tag: "Only"
665
665
  readonly _X: X
666
666
  }
@@ -21,7 +21,7 @@ export type MergeDecisionTypeId = typeof MergeDecisionTypeId
21
21
  * @since 2.0.0
22
22
  * @category models
23
23
  */
24
- export interface MergeDecision<R, E0, Z0, E, Z> extends MergeDecision.Variance<R, E0, Z0, E, Z> {}
24
+ export interface MergeDecision<out R, in E0, in Z0, out E, out Z> extends MergeDecision.Variance<R, E0, Z0, E, Z> {}
25
25
 
26
26
  /**
27
27
  * @since 2.0.0
@@ -31,7 +31,7 @@ export declare namespace MergeDecision {
31
31
  * @since 2.0.0
32
32
  * @category models
33
33
  */
34
- export interface Variance<R, E0, Z0, E, Z> {
34
+ export interface Variance<out R, in E0, in Z0, out E, out Z> {
35
35
  readonly [MergeDecisionTypeId]: {
36
36
  _R: (_: never) => R
37
37
  _E0: (_: E0) => void
package/src/MergeState.ts CHANGED
@@ -45,7 +45,9 @@ export declare namespace MergeState {
45
45
  * @since 2.0.0
46
46
  * @category models
47
47
  */
48
- export interface BothRunning<_Env, Err, Err1, _Err2, Elem, Done, Done1, _Done2> extends MergeState.Proto {
48
+ export interface BothRunning<_Env, out Err, out Err1, _Err2, out Elem, out Done, out Done1, _Done2>
49
+ extends MergeState.Proto
50
+ {
49
51
  readonly _tag: "BothRunning"
50
52
  readonly left: Fiber.Fiber<Err, Either.Either<Done, Elem>>
51
53
  readonly right: Fiber.Fiber<Err1, Either.Either<Done1, Elem>>
@@ -55,18 +57,22 @@ export interface BothRunning<_Env, Err, Err1, _Err2, Elem, Done, Done1, _Done2>
55
57
  * @since 2.0.0
56
58
  * @category models
57
59
  */
58
- export interface LeftDone<Env, _Err, Err1, Err2, _Elem, _Done, Done1, Done2> extends MergeState.Proto {
60
+ export interface LeftDone<out Env, _Err, in Err1, out Err2, _Elem, _Done, in Done1, out Done2>
61
+ extends MergeState.Proto
62
+ {
59
63
  readonly _tag: "LeftDone"
60
- readonly f: (exit: Exit.Exit<Err1, Done1>) => Effect.Effect<Env, Err2, Done2>
64
+ f(exit: Exit.Exit<Err1, Done1>): Effect.Effect<Env, Err2, Done2>
61
65
  }
62
66
 
63
67
  /**
64
68
  * @since 2.0.0
65
69
  * @category models
66
70
  */
67
- export interface RightDone<Env, Err, _Err1, Err2, _Elem, Done, _Done1, Done2> extends MergeState.Proto {
71
+ export interface RightDone<out Env, in Err, _Err1, out Err2, _Elem, in Done, _Done1, out Done2>
72
+ extends MergeState.Proto
73
+ {
68
74
  readonly _tag: "RightDone"
69
- readonly f: (exit: Exit.Exit<Err, Done>) => Effect.Effect<Env, Err2, Done2>
75
+ f(exit: Exit.Exit<Err, Done>): Effect.Effect<Env, Err2, Done2>
70
76
  }
71
77
 
72
78
  /**
package/src/Metric.ts CHANGED
@@ -49,15 +49,15 @@ export type MetricTypeId = typeof MetricTypeId
49
49
  * @since 2.0.0
50
50
  * @category models
51
51
  */
52
- export interface Metric<Type, In, Out> extends Metric.Variance<Type, In, Out>, Pipeable {
52
+ export interface Metric<in out Type, in In, out Out> extends Metric.Variance<Type, In, Out>, Pipeable {
53
53
  /**
54
54
  * The type of the underlying primitive metric. For example, this could be
55
55
  * `MetricKeyType.Counter` or `MetricKeyType.Gauge`.
56
56
  */
57
57
  readonly keyType: Type
58
- readonly unsafeUpdate: (input: In, extraTags: HashSet.HashSet<MetricLabel.MetricLabel>) => void
59
- readonly unsafeValue: (extraTags: HashSet.HashSet<MetricLabel.MetricLabel>) => Out
60
- /** */
58
+ unsafeUpdate(input: In, extraTags: HashSet.HashSet<MetricLabel.MetricLabel>): void
59
+ unsafeValue(extraTags: HashSet.HashSet<MetricLabel.MetricLabel>): Out
60
+ register(): this
61
61
  <R, E, A extends In>(effect: Effect.Effect<R, E, A>): Effect.Effect<R, E, A>
62
62
  }
63
63
 
@@ -121,7 +121,7 @@ export declare namespace Metric {
121
121
  * @since 2.0.0
122
122
  * @category models
123
123
  */
124
- export interface Variance<Type, In, Out> {
124
+ export interface Variance<in out Type, in In, out Out> {
125
125
  readonly [MetricTypeId]: {
126
126
  readonly _Type: (_: Type) => Type
127
127
  readonly _In: (_: In) => void
package/src/MetricHook.ts CHANGED
@@ -23,9 +23,9 @@ export type MetricHookTypeId = typeof MetricHookTypeId
23
23
  * @since 2.0.0
24
24
  * @category models
25
25
  */
26
- export interface MetricHook<In, Out> extends MetricHook.Variance<In, Out>, Pipeable {
27
- readonly get: () => Out
28
- readonly update: (input: In) => void
26
+ export interface MetricHook<in In, out Out> extends MetricHook.Variance<In, Out>, Pipeable {
27
+ get(): Out
28
+ update(input: In): void
29
29
  }
30
30
 
31
31
  /**
@@ -78,7 +78,7 @@ export declare namespace MetricHook {
78
78
  * @since 2.0.0
79
79
  * @category models
80
80
  */
81
- export interface Variance<In, Out> {
81
+ export interface Variance<in In, out Out> {
82
82
  readonly [MetricHookTypeId]: {
83
83
  readonly _In: (_: In) => void
84
84
  readonly _Out: (_: never) => Out
package/src/MetricKey.ts CHANGED
@@ -34,7 +34,7 @@ export type MetricKeyTypeId = typeof MetricKeyTypeId
34
34
  * @since 2.0.0
35
35
  * @category models
36
36
  */
37
- export interface MetricKey<Type extends MetricKeyType.MetricKeyType<any, any>>
37
+ export interface MetricKey<out Type extends MetricKeyType.MetricKeyType<any, any>>
38
38
  extends MetricKey.Variance<Type>, Equal.Equal, Pipeable
39
39
  {
40
40
  readonly name: string
@@ -87,7 +87,7 @@ export declare namespace MetricKey {
87
87
  * @since 2.0.0
88
88
  * @category models
89
89
  */
90
- export interface Variance<Type> {
90
+ export interface Variance<out Type> {
91
91
  readonly [MetricKeyTypeId]: {
92
92
  _Type: (_: never) => Type
93
93
  }
@@ -85,7 +85,7 @@ export type SummaryKeyTypeTypeId = typeof SummaryKeyTypeTypeId
85
85
  * @since 2.0.0
86
86
  * @category modelz
87
87
  */
88
- export interface MetricKeyType<In, Out> extends MetricKeyType.Variance<In, Out>, Equal.Equal, Pipeable {}
88
+ export interface MetricKeyType<in In, out Out> extends MetricKeyType.Variance<In, Out>, Equal.Equal, Pipeable {}
89
89
 
90
90
  /**
91
91
  * @since 2.0.0
@@ -149,7 +149,7 @@ export declare namespace MetricKeyType {
149
149
  * @since 2.0.0
150
150
  * @category models
151
151
  */
152
- export interface Variance<In, Out> {
152
+ export interface Variance<in In, out Out> {
153
153
  readonly [MetricKeyTypeTypeId]: {
154
154
  readonly _In: (_: In) => void
155
155
  readonly _Out: (_: never) => Out
package/src/MetricPair.ts CHANGED
@@ -23,7 +23,7 @@ export type MetricPairTypeId = typeof MetricPairTypeId
23
23
  * @since 2.0.0
24
24
  * @category model
25
25
  */
26
- export interface MetricPair<Type extends MetricKeyType.MetricKeyType<any, any>>
26
+ export interface MetricPair<out Type extends MetricKeyType.MetricKeyType<any, any>>
27
27
  extends MetricPair.Variance<Type>, Pipeable
28
28
  {
29
29
  readonly metricKey: MetricKey.MetricKey<Type>
@@ -44,7 +44,7 @@ export declare namespace MetricPair {
44
44
  * @since 2.0.0
45
45
  * @category models
46
46
  */
47
- export interface Variance<Type extends MetricKeyType.MetricKeyType<any, any>> {
47
+ export interface Variance<out Type extends MetricKeyType.MetricKeyType<any, any>> {
48
48
  readonly [MetricPairTypeId]: {
49
49
  readonly _Type: (_: never) => Type
50
50
  }
@@ -13,25 +13,25 @@ import type * as Scope from "./Scope.js"
13
13
  * @since 2.0.0
14
14
  * @category symbols
15
15
  */
16
- export const PollingMetricTypeId: unique symbol = internal.PollingMetricTypeId
16
+ export const MetricPollingTypeId: unique symbol = internal.MetricPollingTypeId
17
17
 
18
18
  /**
19
19
  * @since 2.0.0
20
20
  * @category symbols
21
21
  */
22
- export type PollingMetricTypeId = typeof PollingMetricTypeId
22
+ export type MetricPollingTypeId = typeof MetricPollingTypeId
23
23
 
24
24
  /**
25
- * A `PollingMetric` is a combination of a metric and an effect that polls for
25
+ * A `MetricPolling` is a combination of a metric and an effect that polls for
26
26
  * updates to the metric.
27
27
  *
28
28
  * @since 2.0.0
29
29
  * @category models
30
30
  */
31
- export interface PollingMetric<Type, In, R, E, Out> extends Pipeable {
32
- readonly [PollingMetricTypeId]: PollingMetricTypeId
31
+ export interface MetricPolling<in out Type, in out In, out R, out E, out Out> extends Pipeable {
32
+ readonly [MetricPollingTypeId]: MetricPollingTypeId
33
33
  /**
34
- * The metric that this `PollingMetric` polls to update.
34
+ * The metric that this `MetricPolling` polls to update.
35
35
  */
36
36
  readonly metric: Metric.Metric<Type, In, Out>
37
37
  /**
@@ -49,7 +49,7 @@ export interface PollingMetric<Type, In, R, E, Out> extends Pipeable {
49
49
  export const make: <Type, In, Out, R, E>(
50
50
  metric: Metric.Metric<Type, In, Out>,
51
51
  poll: Effect.Effect<R, E, In>
52
- ) => PollingMetric<Type, In, R, E, Out> = internal.make
52
+ ) => MetricPolling<Type, In, R, E, Out> = internal.make
53
53
 
54
54
  /**
55
55
  * Collects all of the polling metrics into a single polling metric, which
@@ -59,8 +59,8 @@ export const make: <Type, In, Out, R, E>(
59
59
  * @category constructors
60
60
  */
61
61
  export const collectAll: <R, E, Out>(
62
- iterable: Iterable<PollingMetric<any, any, R, E, Out>>
63
- ) => PollingMetric<Array<any>, Array<any>, R, E, Array<Out>> = internal.collectAll
62
+ iterable: Iterable<MetricPolling<any, any, R, E, Out>>
63
+ ) => MetricPolling<Array<any>, Array<any>, R, E, Array<Out>> = internal.collectAll
64
64
 
65
65
  /**
66
66
  * Returns an effect that will launch the polling metric in a background
@@ -73,10 +73,10 @@ export const launch: {
73
73
  <R2, A2>(
74
74
  schedule: Schedule.Schedule<R2, unknown, A2>
75
75
  ): <Type, In, R, E, Out>(
76
- self: PollingMetric<Type, In, R, E, Out>
76
+ self: MetricPolling<Type, In, R, E, Out>
77
77
  ) => Effect.Effect<R2 | R | Scope.Scope, never, Fiber.Fiber<E, A2>>
78
78
  <Type, In, R, E, Out, R2, A2>(
79
- self: PollingMetric<Type, In, R, E, Out>,
79
+ self: MetricPolling<Type, In, R, E, Out>,
80
80
  schedule: Schedule.Schedule<R2, unknown, A2>
81
81
  ): Effect.Effect<Scope.Scope | R | R2, never, Fiber.Fiber<E, A2>>
82
82
  } = internal.launch
@@ -87,7 +87,7 @@ export const launch: {
87
87
  * @since 2.0.0
88
88
  * @category utils
89
89
  */
90
- export const poll: <Type, In, R, E, Out>(self: PollingMetric<Type, In, R, E, Out>) => Effect.Effect<R, E, In> =
90
+ export const poll: <Type, In, R, E, Out>(self: MetricPolling<Type, In, R, E, Out>) => Effect.Effect<R, E, In> =
91
91
  internal.poll
92
92
 
93
93
  /**
@@ -97,7 +97,7 @@ export const poll: <Type, In, R, E, Out>(self: PollingMetric<Type, In, R, E, Out
97
97
  * @category utils
98
98
  */
99
99
  export const pollAndUpdate: <Type, In, R, E, Out>(
100
- self: PollingMetric<Type, In, R, E, Out>
100
+ self: MetricPolling<Type, In, R, E, Out>
101
101
  ) => Effect.Effect<R, E, void> = internal.pollAndUpdate
102
102
 
103
103
  /**
@@ -110,11 +110,11 @@ export const pollAndUpdate: <Type, In, R, E, Out>(
110
110
  export const retry: {
111
111
  <R2, E, _>(
112
112
  policy: Schedule.Schedule<R2, E, _>
113
- ): <Type, In, R, Out>(self: PollingMetric<Type, In, R, E, Out>) => PollingMetric<Type, In, R2 | R, E, Out>
113
+ ): <Type, In, R, Out>(self: MetricPolling<Type, In, R, E, Out>) => MetricPolling<Type, In, R2 | R, E, Out>
114
114
  <Type, In, R, Out, R2, E, _>(
115
- self: PollingMetric<Type, In, R, E, Out>,
115
+ self: MetricPolling<Type, In, R, E, Out>,
116
116
  policy: Schedule.Schedule<R2, E, _>
117
- ): PollingMetric<Type, In, R | R2, E, Out>
117
+ ): MetricPolling<Type, In, R | R2, E, Out>
118
118
  } = internal.retry
119
119
 
120
120
  /**
@@ -125,10 +125,10 @@ export const retry: {
125
125
  */
126
126
  export const zip: {
127
127
  <Type2, In2, R2, E2, Out2>(
128
- that: PollingMetric<Type2, In2, R2, E2, Out2>
128
+ that: MetricPolling<Type2, In2, R2, E2, Out2>
129
129
  ): <Type, In, R, E, Out>(
130
- self: PollingMetric<Type, In, R, E, Out>
131
- ) => PollingMetric<
130
+ self: MetricPolling<Type, In, R, E, Out>
131
+ ) => MetricPolling<
132
132
  readonly [Type, Type2], // readonly because invariant
133
133
  readonly [In, In2], // readonly because contravariant
134
134
  R2 | R,
@@ -136,9 +136,9 @@ export const zip: {
136
136
  [Out, Out2]
137
137
  >
138
138
  <Type, In, R, E, Out, Type2, In2, R2, E2, Out2>(
139
- self: PollingMetric<Type, In, R, E, Out>,
140
- that: PollingMetric<Type2, In2, R2, E2, Out2>
141
- ): PollingMetric<
139
+ self: MetricPolling<Type, In, R, E, Out>,
140
+ that: MetricPolling<Type2, In2, R2, E2, Out2>
141
+ ): MetricPolling<
142
142
  readonly [Type, Type2], // readonly because invariant
143
143
  readonly [In, In2], // readonly because contravariant
144
144
  R | R2,
@@ -26,20 +26,20 @@ export type MetricRegistryTypeId = typeof MetricRegistryTypeId
26
26
  */
27
27
  export interface MetricRegistry {
28
28
  readonly [MetricRegistryTypeId]: MetricRegistryTypeId
29
- readonly snapshot: () => HashSet.HashSet<MetricPair.MetricPair.Untyped>
30
- readonly get: <Type extends MetricKeyType.MetricKeyType<any, any>>(
29
+ snapshot(): HashSet.HashSet<MetricPair.MetricPair.Untyped>
30
+ get<Type extends MetricKeyType.MetricKeyType<any, any>>(
31
31
  key: MetricKey.MetricKey<Type>
32
- ) => MetricHook.MetricHook<
32
+ ): MetricHook.MetricHook<
33
33
  MetricKeyType.MetricKeyType.InType<typeof key["keyType"]>,
34
34
  MetricKeyType.MetricKeyType.OutType<typeof key["keyType"]>
35
35
  >
36
- readonly getCounter: <A extends (number | bigint)>(
36
+ getCounter<A extends (number | bigint)>(
37
37
  key: MetricKey.MetricKey.Counter<A>
38
- ) => MetricHook.MetricHook.Counter<A>
39
- readonly getFrequency: (key: MetricKey.MetricKey.Frequency) => MetricHook.MetricHook.Frequency
40
- readonly getGauge: <A extends (number | bigint)>(key: MetricKey.MetricKey.Gauge<A>) => MetricHook.MetricHook.Gauge<A>
41
- readonly getHistogram: (key: MetricKey.MetricKey.Histogram) => MetricHook.MetricHook.Histogram
42
- readonly getSummary: (key: MetricKey.MetricKey.Summary) => MetricHook.MetricHook.Summary
38
+ ): MetricHook.MetricHook.Counter<A>
39
+ getFrequency(key: MetricKey.MetricKey.Frequency): MetricHook.MetricHook.Frequency
40
+ getGauge<A extends (number | bigint)>(key: MetricKey.MetricKey.Gauge<A>): MetricHook.MetricHook.Gauge<A>
41
+ getHistogram(key: MetricKey.MetricKey.Histogram): MetricHook.MetricHook.Histogram
42
+ getSummary(key: MetricKey.MetricKey.Summary): MetricHook.MetricHook.Summary
43
43
  }
44
44
 
45
45
  /**