effect 4.0.0-beta.3 → 4.0.0-beta.30

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 (983) hide show
  1. package/dist/Array.d.ts +126 -299
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +102 -62
  4. package/dist/Array.js.map +1 -1
  5. package/dist/Brand.d.ts +1 -1
  6. package/dist/Brand.d.ts.map +1 -1
  7. package/dist/Brand.js +1 -1
  8. package/dist/Brand.js.map +1 -1
  9. package/dist/Cache.d.ts +2 -2
  10. package/dist/Cache.d.ts.map +1 -1
  11. package/dist/Cache.js +6 -5
  12. package/dist/Cache.js.map +1 -1
  13. package/dist/Cause.d.ts +2 -2
  14. package/dist/Cause.d.ts.map +1 -1
  15. package/dist/Channel.d.ts +116 -30
  16. package/dist/Channel.d.ts.map +1 -1
  17. package/dist/Channel.js +82 -37
  18. package/dist/Channel.js.map +1 -1
  19. package/dist/Chunk.d.ts +54 -247
  20. package/dist/Chunk.d.ts.map +1 -1
  21. package/dist/Chunk.js +36 -67
  22. package/dist/Chunk.js.map +1 -1
  23. package/dist/Combiner.d.ts +280 -13
  24. package/dist/Combiner.d.ts.map +1 -1
  25. package/dist/Combiner.js +198 -7
  26. package/dist/Combiner.js.map +1 -1
  27. package/dist/Config.d.ts +165 -9
  28. package/dist/Config.d.ts.map +1 -1
  29. package/dist/Config.js +65 -10
  30. package/dist/Config.js.map +1 -1
  31. package/dist/ConfigProvider.d.ts +1 -1
  32. package/dist/Cron.d.ts +1 -1
  33. package/dist/Data.d.ts +535 -366
  34. package/dist/Data.d.ts.map +1 -1
  35. package/dist/Data.js +132 -79
  36. package/dist/Data.js.map +1 -1
  37. package/dist/DateTime.d.ts +23 -161
  38. package/dist/DateTime.d.ts.map +1 -1
  39. package/dist/DateTime.js +6 -51
  40. package/dist/DateTime.js.map +1 -1
  41. package/dist/Duration.d.ts +11 -11
  42. package/dist/Duration.d.ts.map +1 -1
  43. package/dist/Duration.js +11 -11
  44. package/dist/Duration.js.map +1 -1
  45. package/dist/Effect.d.ts +1206 -924
  46. package/dist/Effect.d.ts.map +1 -1
  47. package/dist/Effect.js +390 -329
  48. package/dist/Effect.js.map +1 -1
  49. package/dist/Encoding.d.ts +194 -0
  50. package/dist/Encoding.d.ts.map +1 -0
  51. package/dist/Encoding.js +352 -0
  52. package/dist/Encoding.js.map +1 -0
  53. package/dist/Equal.d.ts +276 -109
  54. package/dist/Equal.d.ts.map +1 -1
  55. package/dist/Equal.js +124 -48
  56. package/dist/Equal.js.map +1 -1
  57. package/dist/ErrorReporter.d.ts +374 -0
  58. package/dist/ErrorReporter.d.ts.map +1 -0
  59. package/dist/ErrorReporter.js +244 -0
  60. package/dist/ErrorReporter.js.map +1 -0
  61. package/dist/Exit.d.ts +24 -12
  62. package/dist/Exit.d.ts.map +1 -1
  63. package/dist/Exit.js +8 -4
  64. package/dist/Exit.js.map +1 -1
  65. package/dist/Fiber.d.ts +3 -2
  66. package/dist/Fiber.d.ts.map +1 -1
  67. package/dist/Fiber.js.map +1 -1
  68. package/dist/FileSystem.d.ts +1 -1
  69. package/dist/FileSystem.d.ts.map +1 -1
  70. package/dist/FileSystem.js +5 -5
  71. package/dist/FileSystem.js.map +1 -1
  72. package/dist/Filter.d.ts +34 -38
  73. package/dist/Filter.d.ts.map +1 -1
  74. package/dist/Filter.js +15 -13
  75. package/dist/Filter.js.map +1 -1
  76. package/dist/Formatter.d.ts +131 -47
  77. package/dist/Formatter.d.ts.map +1 -1
  78. package/dist/Formatter.js +229 -51
  79. package/dist/Formatter.js.map +1 -1
  80. package/dist/Function.d.ts +1 -9
  81. package/dist/Function.d.ts.map +1 -1
  82. package/dist/Function.js +2 -10
  83. package/dist/Function.js.map +1 -1
  84. package/dist/Graph.d.ts +1 -1
  85. package/dist/Graph.d.ts.map +1 -1
  86. package/dist/Graph.js +5 -8
  87. package/dist/Graph.js.map +1 -1
  88. package/dist/HashMap.d.ts +15 -14
  89. package/dist/HashMap.d.ts.map +1 -1
  90. package/dist/HashMap.js +4 -4
  91. package/dist/HashMap.js.map +1 -1
  92. package/dist/Iterable.d.ts +39 -39
  93. package/dist/Iterable.d.ts.map +1 -1
  94. package/dist/Iterable.js +94 -22
  95. package/dist/Iterable.js.map +1 -1
  96. package/dist/JsonSchema.d.ts +299 -10
  97. package/dist/JsonSchema.d.ts.map +1 -1
  98. package/dist/JsonSchema.js +323 -4
  99. package/dist/JsonSchema.js.map +1 -1
  100. package/dist/Latch.d.ts +109 -0
  101. package/dist/Latch.d.ts.map +1 -0
  102. package/dist/Latch.js +72 -0
  103. package/dist/Latch.js.map +1 -0
  104. package/dist/Layer.d.ts +121 -126
  105. package/dist/Layer.d.ts.map +1 -1
  106. package/dist/Layer.js +43 -44
  107. package/dist/Layer.js.map +1 -1
  108. package/dist/LayerMap.d.ts +8 -8
  109. package/dist/LayerMap.d.ts.map +1 -1
  110. package/dist/LayerMap.js +3 -3
  111. package/dist/LogLevel.d.ts +32 -0
  112. package/dist/LogLevel.d.ts.map +1 -1
  113. package/dist/LogLevel.js +28 -100
  114. package/dist/LogLevel.js.map +1 -1
  115. package/dist/Logger.d.ts +29 -95
  116. package/dist/Logger.d.ts.map +1 -1
  117. package/dist/Logger.js +2 -3
  118. package/dist/Logger.js.map +1 -1
  119. package/dist/ManagedRuntime.d.ts +2 -2
  120. package/dist/ManagedRuntime.js +2 -2
  121. package/dist/Metric.d.ts +4 -6
  122. package/dist/Metric.d.ts.map +1 -1
  123. package/dist/Metric.js +3 -5
  124. package/dist/Metric.js.map +1 -1
  125. package/dist/Newtype.d.ts +291 -0
  126. package/dist/Newtype.d.ts.map +1 -0
  127. package/dist/Newtype.js +161 -0
  128. package/dist/Newtype.js.map +1 -0
  129. package/dist/Optic.d.ts +947 -18
  130. package/dist/Optic.d.ts.map +1 -1
  131. package/dist/Optic.js +454 -5
  132. package/dist/Optic.js.map +1 -1
  133. package/dist/Option.d.ts +23 -16
  134. package/dist/Option.d.ts.map +1 -1
  135. package/dist/Option.js +15 -9
  136. package/dist/Option.js.map +1 -1
  137. package/dist/Pipeable.d.ts +17 -0
  138. package/dist/Pipeable.d.ts.map +1 -1
  139. package/dist/Pipeable.js +19 -1
  140. package/dist/Pipeable.js.map +1 -1
  141. package/dist/PlatformError.d.ts +10 -9
  142. package/dist/PlatformError.d.ts.map +1 -1
  143. package/dist/PlatformError.js +2 -2
  144. package/dist/PlatformError.js.map +1 -1
  145. package/dist/Pool.d.ts +6 -4
  146. package/dist/Pool.d.ts.map +1 -1
  147. package/dist/Pool.js +7 -5
  148. package/dist/Pool.js.map +1 -1
  149. package/dist/PubSub.d.ts +3 -2
  150. package/dist/PubSub.d.ts.map +1 -1
  151. package/dist/PubSub.js +3 -2
  152. package/dist/PubSub.js.map +1 -1
  153. package/dist/Pull.d.ts.map +1 -1
  154. package/dist/Pull.js +1 -1
  155. package/dist/Pull.js.map +1 -1
  156. package/dist/Queue.d.ts.map +1 -1
  157. package/dist/Queue.js +0 -1
  158. package/dist/Queue.js.map +1 -1
  159. package/dist/Random.d.ts +35 -1
  160. package/dist/Random.d.ts.map +1 -1
  161. package/dist/Random.js +46 -12
  162. package/dist/Random.js.map +1 -1
  163. package/dist/RcMap.d.ts +2 -2
  164. package/dist/RcMap.d.ts.map +1 -1
  165. package/dist/RcMap.js +1 -1
  166. package/dist/RcMap.js.map +1 -1
  167. package/dist/RcRef.d.ts +1 -1
  168. package/dist/RcRef.d.ts.map +1 -1
  169. package/dist/Record.d.ts +23 -120
  170. package/dist/Record.d.ts.map +1 -1
  171. package/dist/Record.js +21 -41
  172. package/dist/Record.js.map +1 -1
  173. package/dist/Reducer.d.ts +166 -7
  174. package/dist/Reducer.d.ts.map +1 -1
  175. package/dist/Reducer.js +135 -1
  176. package/dist/Reducer.js.map +1 -1
  177. package/dist/References.d.ts +9 -4
  178. package/dist/References.d.ts.map +1 -1
  179. package/dist/References.js +6 -1
  180. package/dist/References.js.map +1 -1
  181. package/dist/Request.d.ts +1 -1
  182. package/dist/Request.d.ts.map +1 -1
  183. package/dist/Request.js +2 -1
  184. package/dist/Request.js.map +1 -1
  185. package/dist/RequestResolver.d.ts +25 -45
  186. package/dist/RequestResolver.d.ts.map +1 -1
  187. package/dist/RequestResolver.js +10 -30
  188. package/dist/RequestResolver.js.map +1 -1
  189. package/dist/Result.d.ts +1 -1
  190. package/dist/Result.d.ts.map +1 -1
  191. package/dist/Result.js +1 -2
  192. package/dist/Result.js.map +1 -1
  193. package/dist/Runtime.d.ts +66 -0
  194. package/dist/Runtime.d.ts.map +1 -1
  195. package/dist/Runtime.js +79 -6
  196. package/dist/Runtime.js.map +1 -1
  197. package/dist/Schedule.d.ts +191 -102
  198. package/dist/Schedule.d.ts.map +1 -1
  199. package/dist/Schedule.js +152 -66
  200. package/dist/Schedule.js.map +1 -1
  201. package/dist/Scheduler.d.ts +9 -0
  202. package/dist/Scheduler.d.ts.map +1 -1
  203. package/dist/Scheduler.js +11 -0
  204. package/dist/Scheduler.js.map +1 -1
  205. package/dist/Schema.d.ts +309 -88
  206. package/dist/Schema.d.ts.map +1 -1
  207. package/dist/Schema.js +499 -109
  208. package/dist/Schema.js.map +1 -1
  209. package/dist/SchemaAST.d.ts.map +1 -1
  210. package/dist/SchemaAST.js +129 -23
  211. package/dist/SchemaAST.js.map +1 -1
  212. package/dist/SchemaGetter.d.ts +5 -5
  213. package/dist/SchemaGetter.d.ts.map +1 -1
  214. package/dist/SchemaGetter.js +12 -14
  215. package/dist/SchemaGetter.js.map +1 -1
  216. package/dist/SchemaParser.d.ts +5 -0
  217. package/dist/SchemaParser.d.ts.map +1 -1
  218. package/dist/SchemaParser.js +10 -0
  219. package/dist/SchemaParser.js.map +1 -1
  220. package/dist/SchemaRepresentation.d.ts +44 -43
  221. package/dist/SchemaRepresentation.d.ts.map +1 -1
  222. package/dist/SchemaRepresentation.js +49 -24
  223. package/dist/SchemaRepresentation.js.map +1 -1
  224. package/dist/SchemaTransformation.d.ts +107 -3
  225. package/dist/SchemaTransformation.d.ts.map +1 -1
  226. package/dist/SchemaTransformation.js +159 -4
  227. package/dist/SchemaTransformation.js.map +1 -1
  228. package/dist/ScopedCache.d.ts +2 -2
  229. package/dist/ScopedCache.d.ts.map +1 -1
  230. package/dist/ScopedCache.js +1 -1
  231. package/dist/ScopedCache.js.map +1 -1
  232. package/dist/Semaphore.d.ts +211 -0
  233. package/dist/Semaphore.d.ts.map +1 -0
  234. package/dist/{PartitionedSemaphore.js → Semaphore.js} +97 -13
  235. package/dist/Semaphore.js.map +1 -0
  236. package/dist/ServiceMap.d.ts +41 -31
  237. package/dist/ServiceMap.d.ts.map +1 -1
  238. package/dist/ServiceMap.js +3 -3
  239. package/dist/ServiceMap.js.map +1 -1
  240. package/dist/Sink.d.ts +13 -13
  241. package/dist/Sink.d.ts.map +1 -1
  242. package/dist/Sink.js +53 -6
  243. package/dist/Sink.js.map +1 -1
  244. package/dist/Stdio.d.ts +16 -4
  245. package/dist/Stdio.d.ts.map +1 -1
  246. package/dist/Stdio.js +18 -0
  247. package/dist/Stdio.js.map +1 -1
  248. package/dist/Stream.d.ts +250 -428
  249. package/dist/Stream.d.ts.map +1 -1
  250. package/dist/Stream.js +137 -82
  251. package/dist/Stream.js.map +1 -1
  252. package/dist/Struct.d.ts +16 -0
  253. package/dist/Struct.d.ts.map +1 -1
  254. package/dist/Struct.js +22 -0
  255. package/dist/Struct.js.map +1 -1
  256. package/dist/SubscriptionRef.d.ts +2 -1
  257. package/dist/SubscriptionRef.d.ts.map +1 -1
  258. package/dist/SubscriptionRef.js +2 -1
  259. package/dist/SubscriptionRef.js.map +1 -1
  260. package/dist/SynchronizedRef.d.ts +2 -1
  261. package/dist/SynchronizedRef.d.ts.map +1 -1
  262. package/dist/SynchronizedRef.js +2 -1
  263. package/dist/SynchronizedRef.js.map +1 -1
  264. package/dist/Trie.d.ts +18 -17
  265. package/dist/Trie.d.ts.map +1 -1
  266. package/dist/Trie.js +5 -5
  267. package/dist/Trie.js.map +1 -1
  268. package/dist/TxChunk.d.ts +37 -37
  269. package/dist/TxChunk.d.ts.map +1 -1
  270. package/dist/TxChunk.js +3 -3
  271. package/dist/TxChunk.js.map +1 -1
  272. package/dist/TxDeferred.d.ts +328 -0
  273. package/dist/TxDeferred.d.ts.map +1 -0
  274. package/dist/TxDeferred.js +196 -0
  275. package/dist/TxDeferred.js.map +1 -0
  276. package/dist/TxHashMap.d.ts +84 -83
  277. package/dist/TxHashMap.d.ts.map +1 -1
  278. package/dist/TxHashMap.js +24 -24
  279. package/dist/TxHashMap.js.map +1 -1
  280. package/dist/TxHashSet.d.ts +35 -35
  281. package/dist/TxHashSet.d.ts.map +1 -1
  282. package/dist/TxHashSet.js +14 -14
  283. package/dist/TxHashSet.js.map +1 -1
  284. package/dist/TxPriorityQueue.d.ts +609 -0
  285. package/dist/TxPriorityQueue.d.ts.map +1 -0
  286. package/dist/TxPriorityQueue.js +415 -0
  287. package/dist/TxPriorityQueue.js.map +1 -0
  288. package/dist/TxPubSub.d.ts +585 -0
  289. package/dist/TxPubSub.d.ts.map +1 -0
  290. package/dist/TxPubSub.js +521 -0
  291. package/dist/TxPubSub.js.map +1 -0
  292. package/dist/TxQueue.d.ts +32 -32
  293. package/dist/TxQueue.d.ts.map +1 -1
  294. package/dist/TxQueue.js +26 -26
  295. package/dist/TxQueue.js.map +1 -1
  296. package/dist/TxReentrantLock.d.ts +523 -0
  297. package/dist/TxReentrantLock.d.ts.map +1 -0
  298. package/dist/TxReentrantLock.js +504 -0
  299. package/dist/TxReentrantLock.js.map +1 -0
  300. package/dist/TxRef.d.ts +34 -34
  301. package/dist/TxRef.d.ts.map +1 -1
  302. package/dist/TxRef.js +21 -14
  303. package/dist/TxRef.js.map +1 -1
  304. package/dist/TxSemaphore.d.ts +8 -8
  305. package/dist/TxSemaphore.d.ts.map +1 -1
  306. package/dist/TxSemaphore.js +7 -7
  307. package/dist/TxSemaphore.js.map +1 -1
  308. package/dist/TxSubscriptionRef.d.ts +508 -0
  309. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  310. package/dist/TxSubscriptionRef.js +293 -0
  311. package/dist/TxSubscriptionRef.js.map +1 -0
  312. package/dist/Types.d.ts +80 -23
  313. package/dist/Types.d.ts.map +1 -1
  314. package/dist/Utils.d.ts +137 -65
  315. package/dist/Utils.d.ts.map +1 -1
  316. package/dist/Utils.js +38 -66
  317. package/dist/Utils.js.map +1 -1
  318. package/dist/index.d.ts +718 -23
  319. package/dist/index.d.ts.map +1 -1
  320. package/dist/index.js +718 -23
  321. package/dist/index.js.map +1 -1
  322. package/dist/internal/core.js +11 -3
  323. package/dist/internal/core.js.map +1 -1
  324. package/dist/internal/dateTime.js +3 -11
  325. package/dist/internal/dateTime.js.map +1 -1
  326. package/dist/internal/effect.js +264 -126
  327. package/dist/internal/effect.js.map +1 -1
  328. package/dist/internal/hashMap.js +5 -4
  329. package/dist/internal/hashMap.js.map +1 -1
  330. package/dist/internal/random.d.ts +2 -0
  331. package/dist/internal/random.d.ts.map +1 -0
  332. package/dist/internal/random.js +13 -0
  333. package/dist/internal/random.js.map +1 -0
  334. package/dist/internal/rcRef.js +3 -2
  335. package/dist/internal/rcRef.js.map +1 -1
  336. package/dist/internal/request.js +2 -2
  337. package/dist/internal/request.js.map +1 -1
  338. package/dist/internal/schema/annotations.js +2 -0
  339. package/dist/internal/schema/annotations.js.map +1 -1
  340. package/dist/internal/schema/representation.js +47 -106
  341. package/dist/internal/schema/representation.js.map +1 -1
  342. package/dist/internal/schema/schema.js +1 -0
  343. package/dist/internal/schema/schema.js.map +1 -1
  344. package/dist/internal/schema/to-codec.js +7 -10
  345. package/dist/internal/schema/to-codec.js.map +1 -1
  346. package/dist/internal/trie.js +5 -4
  347. package/dist/internal/trie.js.map +1 -1
  348. package/dist/testing/TestClock.d.ts +8 -7
  349. package/dist/testing/TestClock.d.ts.map +1 -1
  350. package/dist/testing/TestClock.js +6 -4
  351. package/dist/testing/TestClock.js.map +1 -1
  352. package/dist/testing/TestSchema.d.ts +266 -32
  353. package/dist/testing/TestSchema.d.ts.map +1 -1
  354. package/dist/testing/TestSchema.js +296 -23
  355. package/dist/testing/TestSchema.js.map +1 -1
  356. package/dist/testing/index.d.ts +64 -1
  357. package/dist/testing/index.d.ts.map +1 -1
  358. package/dist/testing/index.js +64 -1
  359. package/dist/testing/index.js.map +1 -1
  360. package/dist/unstable/ai/AiError.d.ts +134 -51
  361. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  362. package/dist/unstable/ai/AiError.js +19 -16
  363. package/dist/unstable/ai/AiError.js.map +1 -1
  364. package/dist/unstable/ai/Chat.d.ts +5 -5
  365. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  366. package/dist/unstable/ai/Chat.js +38 -44
  367. package/dist/unstable/ai/Chat.js.map +1 -1
  368. package/dist/unstable/ai/LanguageModel.d.ts +16 -30
  369. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  370. package/dist/unstable/ai/LanguageModel.js +97 -37
  371. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  372. package/dist/unstable/ai/McpSchema.d.ts +183 -88
  373. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  374. package/dist/unstable/ai/McpSchema.js +57 -12
  375. package/dist/unstable/ai/McpSchema.js.map +1 -1
  376. package/dist/unstable/ai/McpServer.d.ts +66 -13
  377. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  378. package/dist/unstable/ai/McpServer.js +193 -51
  379. package/dist/unstable/ai/McpServer.js.map +1 -1
  380. package/dist/unstable/ai/Model.d.ts +25 -7
  381. package/dist/unstable/ai/Model.d.ts.map +1 -1
  382. package/dist/unstable/ai/Model.js +22 -6
  383. package/dist/unstable/ai/Model.js.map +1 -1
  384. package/dist/unstable/ai/Prompt.d.ts +20 -20
  385. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  386. package/dist/unstable/ai/Response.d.ts +26 -26
  387. package/dist/unstable/ai/Response.d.ts.map +1 -1
  388. package/dist/unstable/ai/Response.js +1 -1
  389. package/dist/unstable/ai/Response.js.map +1 -1
  390. package/dist/unstable/ai/Tool.d.ts +20 -4
  391. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  392. package/dist/unstable/ai/Tool.js +14 -9
  393. package/dist/unstable/ai/Tool.js.map +1 -1
  394. package/dist/unstable/ai/Toolkit.d.ts +1 -1
  395. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  396. package/dist/unstable/ai/Toolkit.js +4 -11
  397. package/dist/unstable/ai/Toolkit.js.map +1 -1
  398. package/dist/unstable/ai/index.d.ts +1 -1
  399. package/dist/unstable/ai/index.js +1 -1
  400. package/dist/unstable/ai/internal/codec-transformer.js +0 -5
  401. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  402. package/dist/unstable/cli/CliError.d.ts +27 -60
  403. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  404. package/dist/unstable/cli/CliError.js +25 -57
  405. package/dist/unstable/cli/CliError.js.map +1 -1
  406. package/dist/unstable/cli/CliOutput.js +59 -6
  407. package/dist/unstable/cli/CliOutput.js.map +1 -1
  408. package/dist/unstable/cli/Command.d.ts +368 -56
  409. package/dist/unstable/cli/Command.d.ts.map +1 -1
  410. package/dist/unstable/cli/Command.js +325 -64
  411. package/dist/unstable/cli/Command.js.map +1 -1
  412. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  413. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  414. package/dist/unstable/cli/GlobalFlag.js +118 -0
  415. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  416. package/dist/unstable/cli/HelpDoc.d.ts +70 -2
  417. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  418. package/dist/unstable/cli/Primitive.d.ts +1 -1
  419. package/dist/unstable/cli/Primitive.js +1 -1
  420. package/dist/unstable/cli/Prompt.js +35 -8
  421. package/dist/unstable/cli/Prompt.js.map +1 -1
  422. package/dist/unstable/cli/index.d.ts +4 -0
  423. package/dist/unstable/cli/index.d.ts.map +1 -1
  424. package/dist/unstable/cli/index.js +4 -0
  425. package/dist/unstable/cli/index.js.map +1 -1
  426. package/dist/unstable/cli/internal/command.d.ts +40 -14
  427. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  428. package/dist/unstable/cli/internal/command.js +72 -46
  429. package/dist/unstable/cli/internal/command.js.map +1 -1
  430. package/dist/unstable/cli/internal/completions/CommandDescriptor.js +7 -2
  431. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
  432. package/dist/unstable/cli/internal/config.js +42 -0
  433. package/dist/unstable/cli/internal/config.js.map +1 -1
  434. package/dist/unstable/cli/internal/help.d.ts +33 -0
  435. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  436. package/dist/unstable/cli/internal/help.js +125 -0
  437. package/dist/unstable/cli/internal/help.js.map +1 -0
  438. package/dist/unstable/cli/internal/parser.js +55 -42
  439. package/dist/unstable/cli/internal/parser.js.map +1 -1
  440. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  441. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  442. package/dist/unstable/cluster/ClusterCron.js +1 -1
  443. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  444. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  445. package/dist/unstable/cluster/ClusterWorkflowEngine.js +4 -3
  446. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  447. package/dist/unstable/cluster/Entity.d.ts +7 -6
  448. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  449. package/dist/unstable/cluster/Entity.js.map +1 -1
  450. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  451. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  452. package/dist/unstable/cluster/Envelope.d.ts +1 -1
  453. package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
  454. package/dist/unstable/cluster/K8sHttpClient.js +4 -4
  455. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  456. package/dist/unstable/cluster/Message.d.ts +10 -10
  457. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  458. package/dist/unstable/cluster/MessageStorage.js +2 -1
  459. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  460. package/dist/unstable/cluster/Reply.d.ts +6 -6
  461. package/dist/unstable/cluster/Runner.d.ts +1 -1
  462. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  463. package/dist/unstable/cluster/Runners.js +4 -3
  464. package/dist/unstable/cluster/Runners.js.map +1 -1
  465. package/dist/unstable/cluster/Sharding.d.ts +2 -2
  466. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  467. package/dist/unstable/cluster/Sharding.js +9 -7
  468. package/dist/unstable/cluster/Sharding.js.map +1 -1
  469. package/dist/unstable/cluster/ShardingConfig.d.ts +21 -21
  470. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  471. package/dist/unstable/cluster/ShardingConfig.js +20 -20
  472. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  473. package/dist/unstable/cluster/SqlRunnerStorage.js +1 -1
  474. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  475. package/dist/unstable/cluster/internal/entityManager.js +5 -4
  476. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  477. package/dist/unstable/cluster/internal/entityReaper.js +2 -1
  478. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  479. package/dist/unstable/cluster/internal/resourceRef.js +2 -1
  480. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  481. package/dist/unstable/devtools/DevToolsSchema.d.ts +36 -36
  482. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  483. package/dist/unstable/encoding/Ndjson.d.ts +1 -1
  484. package/dist/unstable/encoding/Sse.d.ts +4 -4
  485. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  486. package/dist/unstable/encoding/Sse.js +1 -1
  487. package/dist/unstable/encoding/Sse.js.map +1 -1
  488. package/dist/unstable/eventlog/EventJournal.d.ts +2 -2
  489. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  490. package/dist/unstable/eventlog/EventLog.js +2 -1
  491. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  492. package/dist/unstable/eventlog/EventLogRemote.d.ts +6 -6
  493. package/dist/unstable/http/Cookies.d.ts +47 -3
  494. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  495. package/dist/unstable/http/Cookies.js +24 -2
  496. package/dist/unstable/http/Cookies.js.map +1 -1
  497. package/dist/unstable/http/Headers.d.ts +16 -0
  498. package/dist/unstable/http/Headers.d.ts.map +1 -1
  499. package/dist/unstable/http/Headers.js +38 -10
  500. package/dist/unstable/http/Headers.js.map +1 -1
  501. package/dist/unstable/http/HttpBody.d.ts +3 -3
  502. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  503. package/dist/unstable/http/HttpBody.js +6 -6
  504. package/dist/unstable/http/HttpBody.js.map +1 -1
  505. package/dist/unstable/http/HttpClient.d.ts +117 -15
  506. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  507. package/dist/unstable/http/HttpClient.js +189 -12
  508. package/dist/unstable/http/HttpClient.js.map +1 -1
  509. package/dist/unstable/http/HttpClientError.d.ts +7 -7
  510. package/dist/unstable/http/HttpClientRequest.d.ts +16 -11
  511. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  512. package/dist/unstable/http/HttpClientRequest.js +31 -20
  513. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  514. package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
  515. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  516. package/dist/unstable/http/HttpClientResponse.js +4 -0
  517. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  518. package/dist/unstable/http/HttpEffect.d.ts +7 -5
  519. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  520. package/dist/unstable/http/HttpEffect.js +46 -54
  521. package/dist/unstable/http/HttpEffect.js.map +1 -1
  522. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  523. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  524. package/dist/unstable/http/HttpMethod.js +3 -3
  525. package/dist/unstable/http/HttpMethod.js.map +1 -1
  526. package/dist/unstable/http/HttpMiddleware.d.ts +1 -6
  527. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  528. package/dist/unstable/http/HttpMiddleware.js +8 -17
  529. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  530. package/dist/unstable/http/HttpServerError.d.ts +20 -33
  531. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  532. package/dist/unstable/http/HttpServerError.js +37 -44
  533. package/dist/unstable/http/HttpServerError.js.map +1 -1
  534. package/dist/unstable/http/HttpServerRequest.d.ts +12 -1
  535. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  536. package/dist/unstable/http/HttpServerRequest.js +291 -1
  537. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  538. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  539. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  540. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  541. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  542. package/dist/unstable/http/HttpServerResponse.d.ts +50 -3
  543. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  544. package/dist/unstable/http/HttpServerResponse.js +234 -1
  545. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  546. package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
  547. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
  548. package/dist/unstable/http/HttpStaticServer.js +353 -0
  549. package/dist/unstable/http/HttpStaticServer.js.map +1 -0
  550. package/dist/unstable/http/Multipart.d.ts +3 -3
  551. package/dist/unstable/http/UrlParams.d.ts +14 -6
  552. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  553. package/dist/unstable/http/UrlParams.js +1 -1
  554. package/dist/unstable/http/UrlParams.js.map +1 -1
  555. package/dist/unstable/http/index.d.ts +4 -0
  556. package/dist/unstable/http/index.d.ts.map +1 -1
  557. package/dist/unstable/http/index.js +4 -0
  558. package/dist/unstable/http/index.js.map +1 -1
  559. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  560. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  561. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  562. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  563. package/dist/unstable/httpapi/HttpApi.d.ts +4 -4
  564. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  565. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  566. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +11 -5
  567. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  568. package/dist/unstable/httpapi/HttpApiBuilder.js +28 -18
  569. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  570. package/dist/unstable/httpapi/HttpApiClient.d.ts +66 -6
  571. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  572. package/dist/unstable/httpapi/HttpApiClient.js +40 -3
  573. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  574. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +41 -54
  575. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  576. package/dist/unstable/httpapi/HttpApiEndpoint.js +17 -26
  577. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  578. package/dist/unstable/httpapi/HttpApiError.d.ts +16 -14
  579. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  580. package/dist/unstable/httpapi/HttpApiError.js +44 -29
  581. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  582. package/dist/unstable/httpapi/HttpApiGroup.d.ts +4 -3
  583. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  584. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  585. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +4 -4
  586. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  587. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  588. package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
  589. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  590. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  591. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +2 -2
  592. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  593. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  594. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  595. package/dist/unstable/httpapi/OpenApi.js +32 -21
  596. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  597. package/dist/unstable/observability/Otlp.d.ts +12 -12
  598. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  599. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  600. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  601. package/dist/unstable/observability/OtlpExporter.js +1 -1
  602. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  603. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  604. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  605. package/dist/unstable/observability/OtlpLogger.js +7 -4
  606. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  607. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  608. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  609. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  610. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  611. package/dist/unstable/persistence/KeyValueStore.d.ts +1 -1
  612. package/dist/unstable/persistence/KeyValueStore.js +6 -6
  613. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  614. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  615. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  616. package/dist/unstable/persistence/PersistedCache.d.ts +6 -5
  617. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  618. package/dist/unstable/persistence/PersistedCache.js +2 -1
  619. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  620. package/dist/unstable/persistence/PersistedQueue.d.ts +12 -12
  621. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  622. package/dist/unstable/persistence/PersistedQueue.js +12 -11
  623. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  624. package/dist/unstable/persistence/Persistence.d.ts +1 -1
  625. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  626. package/dist/unstable/persistence/Persistence.js +2 -2
  627. package/dist/unstable/persistence/Persistence.js.map +1 -1
  628. package/dist/unstable/persistence/RateLimiter.d.ts +3 -3
  629. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  630. package/dist/unstable/persistence/RateLimiter.js +1 -1
  631. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  632. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  633. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  634. package/dist/unstable/process/ChildProcess.js +1 -65
  635. package/dist/unstable/process/ChildProcess.js.map +1 -1
  636. package/dist/unstable/process/ChildProcessSpawner.d.ts +45 -7
  637. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  638. package/dist/unstable/process/ChildProcessSpawner.js +21 -1
  639. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  640. package/dist/unstable/reactivity/Atom.d.ts +73 -12
  641. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  642. package/dist/unstable/reactivity/Atom.js +107 -20
  643. package/dist/unstable/reactivity/Atom.js.map +1 -1
  644. package/dist/unstable/reactivity/AtomHttpApi.d.ts +10 -12
  645. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  646. package/dist/unstable/reactivity/AtomHttpApi.js +42 -12
  647. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  648. package/dist/unstable/reactivity/AtomRegistry.d.ts +6 -0
  649. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  650. package/dist/unstable/reactivity/AtomRegistry.js +50 -9
  651. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  652. package/dist/unstable/reactivity/AtomRpc.d.ts +9 -9
  653. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  654. package/dist/unstable/reactivity/AtomRpc.js +47 -21
  655. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  656. package/dist/unstable/reactivity/Hydration.d.ts +39 -0
  657. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -0
  658. package/dist/unstable/reactivity/Hydration.js +76 -0
  659. package/dist/unstable/reactivity/Hydration.js.map +1 -0
  660. package/dist/unstable/reactivity/index.d.ts +4 -0
  661. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  662. package/dist/unstable/reactivity/index.js +4 -0
  663. package/dist/unstable/reactivity/index.js.map +1 -1
  664. package/dist/unstable/rpc/Rpc.d.ts +5 -5
  665. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  666. package/dist/unstable/rpc/Rpc.js.map +1 -1
  667. package/dist/unstable/rpc/RpcClient.d.ts +5 -26
  668. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  669. package/dist/unstable/rpc/RpcClient.js +6 -13
  670. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  671. package/dist/unstable/rpc/RpcGroup.d.ts +2 -2
  672. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  673. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  674. package/dist/unstable/rpc/RpcMiddleware.d.ts +8 -8
  675. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  676. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  677. package/dist/unstable/rpc/RpcSchema.d.ts +13 -0
  678. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  679. package/dist/unstable/rpc/RpcSchema.js +14 -0
  680. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  681. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  682. package/dist/unstable/rpc/RpcSerialization.js +34 -9
  683. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  684. package/dist/unstable/rpc/RpcServer.d.ts +5 -9
  685. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  686. package/dist/unstable/rpc/RpcServer.js +17 -17
  687. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  688. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  689. package/dist/unstable/rpc/Utils.js +3 -2
  690. package/dist/unstable/rpc/Utils.js.map +1 -1
  691. package/dist/unstable/schema/Model.d.ts +22 -1
  692. package/dist/unstable/schema/Model.d.ts.map +1 -1
  693. package/dist/unstable/schema/Model.js +15 -0
  694. package/dist/unstable/schema/Model.js.map +1 -1
  695. package/dist/unstable/schema/VariantSchema.d.ts +5 -5
  696. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  697. package/dist/unstable/schema/VariantSchema.js +6 -6
  698. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  699. package/dist/unstable/socket/Socket.d.ts +4 -4
  700. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  701. package/dist/unstable/socket/Socket.js +6 -5
  702. package/dist/unstable/socket/Socket.js.map +1 -1
  703. package/dist/unstable/socket/SocketServer.d.ts +3 -3
  704. package/dist/unstable/sql/Migrator.d.ts +1 -1
  705. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  706. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  707. package/dist/unstable/sql/SqlError.d.ts +14 -14
  708. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  709. package/dist/unstable/sql/SqlError.js +9 -3
  710. package/dist/unstable/sql/SqlError.js.map +1 -1
  711. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  712. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  713. package/dist/unstable/sql/SqlModel.js +3 -3
  714. package/dist/unstable/sql/SqlModel.js.map +1 -1
  715. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  716. package/dist/unstable/sql/SqlResolver.js +17 -8
  717. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  718. package/dist/unstable/sql/SqlSchema.d.ts +17 -6
  719. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  720. package/dist/unstable/sql/SqlSchema.js +17 -7
  721. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  722. package/dist/unstable/sql/Statement.js +0 -1
  723. package/dist/unstable/sql/Statement.js.map +1 -1
  724. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  725. package/dist/unstable/workers/Worker.js +2 -1
  726. package/dist/unstable/workers/Worker.js.map +1 -1
  727. package/dist/unstable/workflow/DurableClock.d.ts +3 -3
  728. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  729. package/dist/unstable/workflow/DurableClock.js +3 -3
  730. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  731. package/dist/unstable/workflow/DurableDeferred.js +2 -2
  732. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  733. package/dist/unstable/workflow/Workflow.d.ts +3 -3
  734. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  735. package/dist/unstable/workflow/Workflow.js +1 -1
  736. package/dist/unstable/workflow/Workflow.js.map +1 -1
  737. package/dist/unstable/workflow/WorkflowEngine.d.ts +12 -1
  738. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  739. package/dist/unstable/workflow/WorkflowEngine.js +137 -1
  740. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  741. package/package.json +2 -2
  742. package/src/Array.ts +192 -342
  743. package/src/Brand.ts +1 -1
  744. package/src/Cache.ts +9 -8
  745. package/src/Cause.ts +2 -2
  746. package/src/Channel.ts +554 -138
  747. package/src/Chunk.ts +81 -268
  748. package/src/Combiner.ts +280 -13
  749. package/src/Config.ts +186 -24
  750. package/src/Data.ts +539 -376
  751. package/src/DateTime.ts +24 -164
  752. package/src/Duration.ts +13 -13
  753. package/src/Effect.ts +1477 -1126
  754. package/src/Encoding.ts +879 -0
  755. package/src/Equal.ts +278 -111
  756. package/src/ErrorReporter.ts +457 -0
  757. package/src/Exit.ts +24 -12
  758. package/src/Fiber.ts +10 -2
  759. package/src/FileSystem.ts +7 -8
  760. package/src/Filter.ts +52 -63
  761. package/src/Formatter.ts +253 -51
  762. package/src/Function.ts +2 -10
  763. package/src/Graph.ts +24 -11
  764. package/src/HashMap.ts +15 -14
  765. package/src/Iterable.ts +104 -50
  766. package/src/JsonSchema.ts +383 -10
  767. package/src/Latch.ts +112 -0
  768. package/src/Layer.ts +123 -132
  769. package/src/LayerMap.ts +9 -9
  770. package/src/LogLevel.ts +37 -0
  771. package/src/Logger.ts +33 -100
  772. package/src/ManagedRuntime.ts +2 -2
  773. package/src/Metric.ts +6 -8
  774. package/src/Newtype.ts +308 -0
  775. package/src/Optic.ts +948 -19
  776. package/src/Option.ts +32 -24
  777. package/src/Pipeable.ts +32 -1
  778. package/src/PlatformError.ts +5 -5
  779. package/src/Pool.ts +13 -11
  780. package/src/PubSub.ts +10 -9
  781. package/src/Pull.ts +1 -1
  782. package/src/Queue.ts +0 -1
  783. package/src/Random.ts +51 -14
  784. package/src/RcMap.ts +5 -5
  785. package/src/RcRef.ts +1 -1
  786. package/src/Record.ts +42 -152
  787. package/src/Reducer.ts +166 -7
  788. package/src/References.ts +10 -5
  789. package/src/Request.ts +3 -2
  790. package/src/RequestResolver.ts +29 -49
  791. package/src/Result.ts +2 -4
  792. package/src/Runtime.ts +102 -6
  793. package/src/Schedule.ts +462 -242
  794. package/src/Scheduler.ts +12 -0
  795. package/src/Schema.ts +796 -194
  796. package/src/SchemaAST.ts +164 -31
  797. package/src/SchemaGetter.ts +15 -17
  798. package/src/SchemaParser.ts +11 -0
  799. package/src/SchemaRepresentation.ts +49 -24
  800. package/src/SchemaTransformation.ts +189 -4
  801. package/src/ScopedCache.ts +3 -3
  802. package/src/Semaphore.ts +356 -0
  803. package/src/ServiceMap.ts +50 -40
  804. package/src/Sink.ts +78 -26
  805. package/src/Stdio.ts +27 -4
  806. package/src/Stream.ts +586 -608
  807. package/src/Struct.ts +26 -0
  808. package/src/SubscriptionRef.ts +3 -2
  809. package/src/SynchronizedRef.ts +3 -2
  810. package/src/Trie.ts +18 -17
  811. package/src/TxChunk.ts +72 -53
  812. package/src/TxDeferred.ts +394 -0
  813. package/src/TxHashMap.ts +332 -285
  814. package/src/TxHashSet.ts +111 -116
  815. package/src/TxPriorityQueue.ts +767 -0
  816. package/src/TxPubSub.ts +789 -0
  817. package/src/TxQueue.ts +241 -251
  818. package/src/TxReentrantLock.ts +753 -0
  819. package/src/TxRef.ts +50 -38
  820. package/src/TxSemaphore.ts +29 -32
  821. package/src/TxSubscriptionRef.ts +639 -0
  822. package/src/Types.ts +73 -19
  823. package/src/Utils.ts +137 -111
  824. package/src/index.ts +728 -24
  825. package/src/internal/core.ts +12 -5
  826. package/src/internal/dateTime.ts +9 -30
  827. package/src/internal/effect.ts +774 -301
  828. package/src/internal/hashMap.ts +8 -7
  829. package/src/internal/random.ts +20 -0
  830. package/src/internal/rcRef.ts +4 -3
  831. package/src/internal/request.ts +2 -2
  832. package/src/internal/schema/annotations.ts +2 -0
  833. package/src/internal/schema/representation.ts +45 -94
  834. package/src/internal/schema/schema.ts +1 -0
  835. package/src/internal/schema/to-codec.ts +7 -17
  836. package/src/internal/trie.ts +15 -9
  837. package/src/testing/TestClock.ts +13 -11
  838. package/src/testing/TestSchema.ts +332 -35
  839. package/src/testing/index.ts +64 -1
  840. package/src/unstable/ai/AiError.ts +105 -48
  841. package/src/unstable/ai/Chat.ts +47 -61
  842. package/src/unstable/ai/LanguageModel.ts +153 -68
  843. package/src/unstable/ai/McpSchema.ts +73 -13
  844. package/src/unstable/ai/McpServer.ts +271 -61
  845. package/src/unstable/ai/Model.ts +40 -9
  846. package/src/unstable/ai/Prompt.ts +37 -37
  847. package/src/unstable/ai/Response.ts +25 -25
  848. package/src/unstable/ai/Tool.ts +20 -14
  849. package/src/unstable/ai/Toolkit.ts +5 -14
  850. package/src/unstable/ai/index.ts +1 -1
  851. package/src/unstable/ai/internal/codec-transformer.ts +0 -7
  852. package/src/unstable/cli/CliError.ts +47 -59
  853. package/src/unstable/cli/CliOutput.ts +75 -6
  854. package/src/unstable/cli/Command.ts +796 -187
  855. package/src/unstable/cli/GlobalFlag.ts +243 -0
  856. package/src/unstable/cli/HelpDoc.ts +80 -2
  857. package/src/unstable/cli/Primitive.ts +1 -1
  858. package/src/unstable/cli/Prompt.ts +31 -9
  859. package/src/unstable/cli/index.ts +5 -0
  860. package/src/unstable/cli/internal/command.ts +109 -63
  861. package/src/unstable/cli/internal/completions/CommandDescriptor.ts +7 -2
  862. package/src/unstable/cli/internal/config.ts +49 -0
  863. package/src/unstable/cli/internal/help.ts +171 -0
  864. package/src/unstable/cli/internal/parser.ts +66 -61
  865. package/src/unstable/cluster/ClusterCron.ts +2 -2
  866. package/src/unstable/cluster/ClusterWorkflowEngine.ts +5 -4
  867. package/src/unstable/cluster/Entity.ts +11 -10
  868. package/src/unstable/cluster/EntityResource.ts +4 -4
  869. package/src/unstable/cluster/Envelope.ts +1 -1
  870. package/src/unstable/cluster/K8sHttpClient.ts +5 -5
  871. package/src/unstable/cluster/MessageStorage.ts +3 -5
  872. package/src/unstable/cluster/Runners.ts +6 -5
  873. package/src/unstable/cluster/Sharding.ts +12 -10
  874. package/src/unstable/cluster/ShardingConfig.ts +30 -31
  875. package/src/unstable/cluster/SqlRunnerStorage.ts +1 -1
  876. package/src/unstable/cluster/internal/entityManager.ts +9 -8
  877. package/src/unstable/cluster/internal/entityReaper.ts +2 -1
  878. package/src/unstable/cluster/internal/resourceRef.ts +2 -1
  879. package/src/unstable/encoding/Sse.ts +3 -5
  880. package/src/unstable/eventlog/EventLog.ts +2 -1
  881. package/src/unstable/http/Cookies.ts +87 -3
  882. package/src/unstable/http/Headers.ts +62 -13
  883. package/src/unstable/http/HttpBody.ts +6 -6
  884. package/src/unstable/http/HttpClient.ts +374 -33
  885. package/src/unstable/http/HttpClientRequest.ts +38 -30
  886. package/src/unstable/http/HttpClientResponse.ts +7 -2
  887. package/src/unstable/http/HttpEffect.ts +54 -68
  888. package/src/unstable/http/HttpMethod.ts +16 -4
  889. package/src/unstable/http/HttpMiddleware.ts +9 -24
  890. package/src/unstable/http/HttpServerError.ts +42 -45
  891. package/src/unstable/http/HttpServerRequest.ts +389 -2
  892. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  893. package/src/unstable/http/HttpServerResponse.ts +337 -4
  894. package/src/unstable/http/HttpStaticServer.ts +456 -0
  895. package/src/unstable/http/Multipart.ts +2 -2
  896. package/src/unstable/http/UrlParams.ts +20 -5
  897. package/src/unstable/http/index.ts +5 -0
  898. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  899. package/src/unstable/httpapi/HttpApi.ts +6 -6
  900. package/src/unstable/httpapi/HttpApiBuilder.ts +81 -28
  901. package/src/unstable/httpapi/HttpApiClient.ts +100 -11
  902. package/src/unstable/httpapi/HttpApiEndpoint.ts +71 -87
  903. package/src/unstable/httpapi/HttpApiError.ts +51 -28
  904. package/src/unstable/httpapi/HttpApiGroup.ts +7 -6
  905. package/src/unstable/httpapi/HttpApiMiddleware.ts +4 -4
  906. package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
  907. package/src/unstable/httpapi/HttpApiSecurity.ts +3 -3
  908. package/src/unstable/httpapi/OpenApi.ts +41 -23
  909. package/src/unstable/observability/Otlp.ts +12 -12
  910. package/src/unstable/observability/OtlpExporter.ts +3 -3
  911. package/src/unstable/observability/OtlpLogger.ts +13 -9
  912. package/src/unstable/observability/OtlpMetrics.ts +4 -4
  913. package/src/unstable/observability/OtlpTracer.ts +4 -4
  914. package/src/unstable/persistence/KeyValueStore.ts +6 -6
  915. package/src/unstable/persistence/Persistable.ts +2 -2
  916. package/src/unstable/persistence/PersistedCache.ts +20 -9
  917. package/src/unstable/persistence/PersistedQueue.ts +25 -24
  918. package/src/unstable/persistence/Persistence.ts +3 -3
  919. package/src/unstable/persistence/RateLimiter.ts +4 -4
  920. package/src/unstable/process/ChildProcess.ts +6 -208
  921. package/src/unstable/process/ChildProcessSpawner.ts +75 -14
  922. package/src/unstable/reactivity/Atom.ts +211 -50
  923. package/src/unstable/reactivity/AtomHttpApi.ts +66 -31
  924. package/src/unstable/reactivity/AtomRegistry.ts +61 -9
  925. package/src/unstable/reactivity/AtomRpc.ts +51 -20
  926. package/src/unstable/reactivity/Hydration.ts +112 -0
  927. package/src/unstable/reactivity/index.ts +5 -0
  928. package/src/unstable/rpc/Rpc.ts +7 -9
  929. package/src/unstable/rpc/RpcClient.ts +12 -54
  930. package/src/unstable/rpc/RpcGroup.ts +4 -4
  931. package/src/unstable/rpc/RpcMiddleware.ts +15 -9
  932. package/src/unstable/rpc/RpcSchema.ts +17 -0
  933. package/src/unstable/rpc/RpcSerialization.ts +44 -9
  934. package/src/unstable/rpc/RpcServer.ts +28 -32
  935. package/src/unstable/rpc/Utils.ts +3 -2
  936. package/src/unstable/schema/Model.ts +31 -0
  937. package/src/unstable/schema/VariantSchema.ts +9 -9
  938. package/src/unstable/socket/Socket.ts +16 -17
  939. package/src/unstable/sql/SqlClient.ts +1 -1
  940. package/src/unstable/sql/SqlError.ts +11 -9
  941. package/src/unstable/sql/SqlModel.ts +5 -5
  942. package/src/unstable/sql/SqlResolver.ts +17 -7
  943. package/src/unstable/sql/SqlSchema.ts +42 -26
  944. package/src/unstable/sql/Statement.ts +0 -1
  945. package/src/unstable/workers/Worker.ts +2 -1
  946. package/src/unstable/workflow/DurableClock.ts +8 -8
  947. package/src/unstable/workflow/DurableDeferred.ts +2 -2
  948. package/src/unstable/workflow/Workflow.ts +6 -2
  949. package/src/unstable/workflow/WorkflowEngine.ts +185 -2
  950. package/dist/PartitionedSemaphore.d.ts +0 -52
  951. package/dist/PartitionedSemaphore.d.ts.map +0 -1
  952. package/dist/PartitionedSemaphore.js.map +0 -1
  953. package/dist/encoding/Base64.d.ts +0 -67
  954. package/dist/encoding/Base64.d.ts.map +0 -1
  955. package/dist/encoding/Base64.js +0 -146
  956. package/dist/encoding/Base64.js.map +0 -1
  957. package/dist/encoding/Base64Url.d.ts +0 -60
  958. package/dist/encoding/Base64Url.d.ts.map +0 -1
  959. package/dist/encoding/Base64Url.js +0 -89
  960. package/dist/encoding/Base64Url.js.map +0 -1
  961. package/dist/encoding/EncodingError.d.ts +0 -31
  962. package/dist/encoding/EncodingError.d.ts.map +0 -1
  963. package/dist/encoding/EncodingError.js +0 -22
  964. package/dist/encoding/EncodingError.js.map +0 -1
  965. package/dist/encoding/Hex.d.ts +0 -61
  966. package/dist/encoding/Hex.d.ts.map +0 -1
  967. package/dist/encoding/Hex.js +0 -115
  968. package/dist/encoding/Hex.js.map +0 -1
  969. package/dist/encoding/index.d.ts +0 -26
  970. package/dist/encoding/index.d.ts.map +0 -1
  971. package/dist/encoding/index.js +0 -27
  972. package/dist/encoding/index.js.map +0 -1
  973. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  974. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  975. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  976. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  977. package/src/PartitionedSemaphore.ts +0 -182
  978. package/src/encoding/Base64.ts +0 -366
  979. package/src/encoding/Base64Url.ts +0 -104
  980. package/src/encoding/EncodingError.ts +0 -35
  981. package/src/encoding/Hex.ts +0 -390
  982. package/src/encoding/index.ts +0 -31
  983. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
package/dist/Stream.d.ts CHANGED
@@ -8,11 +8,11 @@ import * as Duration from "./Duration.ts";
8
8
  import * as Effect from "./Effect.ts";
9
9
  import * as ExecutionPlan from "./ExecutionPlan.ts";
10
10
  import * as Exit from "./Exit.ts";
11
- import * as Filter from "./Filter.ts";
11
+ import type * as Filter from "./Filter.ts";
12
12
  import type { LazyArg } from "./Function.ts";
13
13
  import type { TypeLambda } from "./HKT.ts";
14
14
  import type * as Layer from "./Layer.ts";
15
- import type { LogLevel } from "./LogLevel.ts";
15
+ import type { Severity } from "./LogLevel.ts";
16
16
  import * as Option from "./Option.ts";
17
17
  import type { Pipeable } from "./Pipeable.ts";
18
18
  import type { Predicate, Refinement } from "./Predicate.ts";
@@ -26,7 +26,7 @@ import * as ServiceMap from "./ServiceMap.ts";
26
26
  import * as Sink from "./Sink.ts";
27
27
  import type * as Take from "./Take.ts";
28
28
  import type { ParentSpan, SpanOptions } from "./Tracer.ts";
29
- import type { Covariant, ExcludeReason, ExcludeTag, ExtractReason, ExtractTag, NoInfer, ReasonTags, Tags, unassigned } from "./Types.ts";
29
+ import type { Covariant, ExcludeReason, ExcludeTag, ExtractReason, ExtractTag, NarrowReason, NoInfer, OmitReason, ReasonTags, Tags, unassigned } from "./Types.ts";
30
30
  import type * as Unify from "./Unify.ts";
31
31
  declare const TypeId = "~effect/Stream";
32
32
  /**
@@ -401,7 +401,7 @@ export declare const fromEffectSchedule: <A, E, R, X, AS extends A, ES, RS>(effe
401
401
  * @since 2.0.0
402
402
  * @category Constructors
403
403
  */
404
- export declare const tick: (interval: Duration.DurationInput) => Stream<void>;
404
+ export declare const tick: (interval: Duration.Input) => Stream<void>;
405
405
  /**
406
406
  * Creates a stream from a pull effect, such as one produced by `Stream.toPull`.
407
407
  *
@@ -823,6 +823,10 @@ export declare const fromIteratorSucceed: <A>(iterator: IterableIterator<A>, max
823
823
  /**
824
824
  * Creates a new `Stream` from an iterable collection of values.
825
825
  *
826
+ * **Options**
827
+ *
828
+ * - `chunkSize`: Maximum number of values emitted per chunk.
829
+ *
826
830
  * @example
827
831
  * ```ts
828
832
  * import { Console, Effect, Stream } from "effect"
@@ -842,7 +846,9 @@ export declare const fromIteratorSucceed: <A>(iterator: IterableIterator<A>, max
842
846
  * @since 2.0.0
843
847
  * @category Constructors
844
848
  */
845
- export declare const fromIterable: <A>(iterable: Iterable<A>) => Stream<A>;
849
+ export declare const fromIterable: <A>(iterable: Iterable<A>, options?: {
850
+ readonly chunkSize?: number | undefined;
851
+ }) => Stream<A>;
846
852
  /**
847
853
  * Creates a stream from an effect producing an iterable of values.
848
854
  *
@@ -1083,7 +1089,9 @@ export declare const fromPubSubTake: <A, E>(pubsub: PubSub.PubSub<Take.Take<A, E
1083
1089
  *
1084
1090
  * @example
1085
1091
  * ```ts
1086
- * import { Console, Effect, Stream } from "effect"
1092
+ * import { Console, Data, Effect, Stream } from "effect"
1093
+ *
1094
+ * class StreamError extends Data.TaggedError("StreamError")<{ readonly cause: unknown }> {}
1087
1095
  *
1088
1096
  * const readableStream = new ReadableStream({
1089
1097
  * start(controller) {
@@ -1097,7 +1105,7 @@ export declare const fromPubSubTake: <A, E>(pubsub: PubSub.PubSub<Take.Take<A, E
1097
1105
  * const program = Effect.gen(function*() {
1098
1106
  * const stream = Stream.fromReadableStream({
1099
1107
  * evaluate: () => readableStream,
1100
- * onError: (error) => new Error(String(error))
1108
+ * onError: (cause) => new StreamError({ cause })
1101
1109
  * })
1102
1110
  * const values = yield* Stream.runCollect(stream)
1103
1111
  * yield* Console.log(values)
@@ -1120,7 +1128,9 @@ export declare const fromReadableStream: <A, E>(options: {
1120
1128
  *
1121
1129
  * @example
1122
1130
  * ```ts
1123
- * import { Console, Effect, Stream } from "effect"
1131
+ * import { Console, Data, Effect, Stream } from "effect"
1132
+ *
1133
+ * class StreamError extends Data.TaggedError("StreamError")<{ readonly cause: unknown }> {}
1124
1134
  *
1125
1135
  * const iterable = (async function*() {
1126
1136
  * yield 1
@@ -1129,7 +1139,7 @@ export declare const fromReadableStream: <A, E>(options: {
1129
1139
  * })()
1130
1140
  *
1131
1141
  * const program = Effect.gen(function*() {
1132
- * const stream = Stream.fromAsyncIterable(iterable, (error) => new Error(String(error)))
1142
+ * const stream = Stream.fromAsyncIterable(iterable, (cause) => new StreamError({ cause }))
1133
1143
  * const values = yield* Stream.runCollect(stream)
1134
1144
  * yield* Console.log(values)
1135
1145
  * })
@@ -2767,7 +2777,7 @@ export declare const timeout: {
2767
2777
  * @since 2.0.0
2768
2778
  * @category Rate Limiting
2769
2779
  */
2770
- (duration: Duration.DurationInput): <A, E, R>(self: Stream<A, E, R>) => Stream<A, E, R>;
2780
+ (duration: Duration.Input): <A, E, R>(self: Stream<A, E, R>) => Stream<A, E, R>;
2771
2781
  /**
2772
2782
  * Ends the stream if it does not produce a value within the specified duration.
2773
2783
  *
@@ -2791,7 +2801,7 @@ export declare const timeout: {
2791
2801
  * @since 2.0.0
2792
2802
  * @category Rate Limiting
2793
2803
  */
2794
- <A, E, R>(self: Stream<A, E, R>, duration: Duration.DurationInput): Stream<A, E, R>;
2804
+ <A, E, R>(self: Stream<A, E, R>, duration: Duration.Input): Stream<A, E, R>;
2795
2805
  };
2796
2806
  /**
2797
2807
  * Repeats each element of the stream according to the provided schedule,
@@ -4775,7 +4785,7 @@ export declare const filter: {
4775
4785
  * @since 2.0.0
4776
4786
  * @category Filtering
4777
4787
  */
4778
- <A, Result extends Filter.ResultOrBool>(filter: Filter.OrPredicate<NoInfer<A>, Result>): <E, R>(self: Stream<A, E, R>) => Stream<Filter.Pass<A, Result>, E, R>;
4788
+ <A>(predicate: Predicate<NoInfer<A>>): <E, R>(self: Stream<A, E, R>) => Stream<A, E, R>;
4779
4789
  /**
4780
4790
  * Filters a stream to the elements that satisfy a predicate.
4781
4791
  *
@@ -4821,20 +4831,38 @@ export declare const filter: {
4821
4831
  * @since 2.0.0
4822
4832
  * @category Filtering
4823
4833
  */
4824
- <A, E, R, Result extends Filter.ResultOrBool>(self: Stream<A, E, R>, filter: Filter.OrPredicate<NoInfer<A>, Result>): Stream<Filter.Pass<A, Result>, E, R>;
4834
+ <A, E, R>(self: Stream<A, E, R>, predicate: Predicate<A>): Stream<A, E, R>;
4825
4835
  };
4826
4836
  /**
4827
- * Effectfully filters and maps elements in a single pass.
4837
+ * Filters and maps stream elements in one pass using a `Filter`.
4838
+ *
4839
+ * @since 4.0.0
4840
+ * @category Filtering
4841
+ */
4842
+ export declare const filterMap: {
4843
+ /**
4844
+ * Filters and maps stream elements in one pass using a `Filter`.
4845
+ *
4846
+ * @since 4.0.0
4847
+ * @category Filtering
4848
+ */
4849
+ <A, B, X>(filter: Filter.Filter<NoInfer<A>, B, X>): <E, R>(self: Stream<A, E, R>) => Stream<B, E, R>;
4850
+ /**
4851
+ * Filters and maps stream elements in one pass using a `Filter`.
4852
+ *
4853
+ * @since 4.0.0
4854
+ * @category Filtering
4855
+ */
4856
+ <A, E, R, B, X>(self: Stream<A, E, R>, filter: Filter.Filter<A, B, X>): Stream<B, E, R>;
4857
+ };
4858
+ /**
4859
+ * Effectfully filters elements in a single pass.
4828
4860
  *
4829
4861
  * @example
4830
4862
  * ```ts
4831
- * import { Console, Effect, Filter, Result, Stream } from "effect"
4832
- *
4833
- * const filter = Filter.makeEffect((n: number) =>
4834
- * Effect.succeed(n > 2 ? Result.succeed(n + 1) : Result.fail(n))
4835
- * )
4863
+ * import { Console, Effect, Stream } from "effect"
4836
4864
  *
4837
- * const stream = Stream.make(1, 2, 3, 4).pipe(Stream.filterEffect(filter))
4865
+ * const stream = Stream.make(1, 2, 3, 4).pipe(Stream.filterEffect((n) => Effect.succeed(n > 2)))
4838
4866
  *
4839
4867
  * const program = Effect.gen(function*() {
4840
4868
  * const result = yield* Stream.runCollect(stream)
@@ -4842,7 +4870,7 @@ export declare const filter: {
4842
4870
  * })
4843
4871
  *
4844
4872
  * Effect.runPromise(program)
4845
- * // Output: [ 4, 5 ]
4873
+ * // Output: [ 3, 4 ]
4846
4874
  * ```
4847
4875
  *
4848
4876
  * @since 2.0.0
@@ -4850,17 +4878,13 @@ export declare const filter: {
4850
4878
  */
4851
4879
  export declare const filterEffect: {
4852
4880
  /**
4853
- * Effectfully filters and maps elements in a single pass.
4881
+ * Effectfully filters elements in a single pass.
4854
4882
  *
4855
4883
  * @example
4856
4884
  * ```ts
4857
- * import { Console, Effect, Filter, Result, Stream } from "effect"
4858
- *
4859
- * const filter = Filter.makeEffect((n: number) =>
4860
- * Effect.succeed(n > 2 ? Result.succeed(n + 1) : Result.fail(n))
4861
- * )
4885
+ * import { Console, Effect, Stream } from "effect"
4862
4886
  *
4863
- * const stream = Stream.make(1, 2, 3, 4).pipe(Stream.filterEffect(filter))
4887
+ * const stream = Stream.make(1, 2, 3, 4).pipe(Stream.filterEffect((n) => Effect.succeed(n > 2)))
4864
4888
  *
4865
4889
  * const program = Effect.gen(function*() {
4866
4890
  * const result = yield* Stream.runCollect(stream)
@@ -4868,25 +4892,21 @@ export declare const filterEffect: {
4868
4892
  * })
4869
4893
  *
4870
4894
  * Effect.runPromise(program)
4871
- * // Output: [ 4, 5 ]
4895
+ * // Output: [ 3, 4 ]
4872
4896
  * ```
4873
4897
  *
4874
4898
  * @since 2.0.0
4875
4899
  * @category Filtering
4876
4900
  */
4877
- <A, B, X, EX, RX>(filter: Filter.FilterEffect<A, B, X, EX, RX>): <E, R>(self: Stream<A, E, R>) => Stream<B, E | EX, R | RX>;
4901
+ <A, EX, RX>(predicate: (a: NoInfer<A>, i: number) => Effect.Effect<boolean, EX, RX>): <E, R>(self: Stream<A, E, R>) => Stream<A, E | EX, R | RX>;
4878
4902
  /**
4879
- * Effectfully filters and maps elements in a single pass.
4903
+ * Effectfully filters elements in a single pass.
4880
4904
  *
4881
4905
  * @example
4882
4906
  * ```ts
4883
- * import { Console, Effect, Filter, Result, Stream } from "effect"
4884
- *
4885
- * const filter = Filter.makeEffect((n: number) =>
4886
- * Effect.succeed(n > 2 ? Result.succeed(n + 1) : Result.fail(n))
4887
- * )
4907
+ * import { Console, Effect, Stream } from "effect"
4888
4908
  *
4889
- * const stream = Stream.make(1, 2, 3, 4).pipe(Stream.filterEffect(filter))
4909
+ * const stream = Stream.make(1, 2, 3, 4).pipe(Stream.filterEffect((n) => Effect.succeed(n > 2)))
4890
4910
  *
4891
4911
  * const program = Effect.gen(function*() {
4892
4912
  * const result = yield* Stream.runCollect(stream)
@@ -4894,28 +4914,48 @@ export declare const filterEffect: {
4894
4914
  * })
4895
4915
  *
4896
4916
  * Effect.runPromise(program)
4897
- * // Output: [ 4, 5 ]
4917
+ * // Output: [ 3, 4 ]
4898
4918
  * ```
4899
4919
  *
4900
4920
  * @since 2.0.0
4901
4921
  * @category Filtering
4902
4922
  */
4923
+ <A, E, R, EX, RX>(self: Stream<A, E, R>, predicate: (a: NoInfer<A>, i: number) => Effect.Effect<boolean, EX, RX>): Stream<A, E | EX, R | RX>;
4924
+ };
4925
+ /**
4926
+ * Effectfully filters and maps elements in a single pass.
4927
+ *
4928
+ * @since 4.0.0
4929
+ * @category Filtering
4930
+ */
4931
+ export declare const filterMapEffect: {
4932
+ /**
4933
+ * Effectfully filters and maps elements in a single pass.
4934
+ *
4935
+ * @since 4.0.0
4936
+ * @category Filtering
4937
+ */
4938
+ <A, B, X, EX, RX>(filter: Filter.FilterEffect<NoInfer<A>, B, X, EX, RX>): <E, R>(self: Stream<A, E, R>) => Stream<B, E | EX, R | RX>;
4939
+ /**
4940
+ * Effectfully filters and maps elements in a single pass.
4941
+ *
4942
+ * @since 4.0.0
4943
+ * @category Filtering
4944
+ */
4903
4945
  <A, E, R, B, X, EX, RX>(self: Stream<A, E, R>, filter: Filter.FilterEffect<A, B, X, EX, RX>): Stream<B, E | EX, R | RX>;
4904
4946
  };
4905
4947
  /**
4906
- * Partitions a stream using a Filter and exposes passing and failing values as queues.
4948
+ * Partitions a stream using a `Filter` and exposes passing and failing values as queues.
4907
4949
  *
4908
4950
  * Each queue fails with the stream error or `Cause.Done` when the source ends.
4909
4951
  *
4910
4952
  * @example
4911
4953
  * ```ts
4912
- * import { Console, Effect, Filter, Result, Stream } from "effect"
4954
+ * import { Console, Effect, Result, Stream } from "effect"
4913
4955
  *
4914
4956
  * const program = Effect.gen(function*() {
4915
4957
  * const [passes, fails] = yield* Stream.make(1, 2, 3, 4).pipe(
4916
- * Stream.partitionQueue(
4917
- * Filter.make((n) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n)))
4918
- * )
4958
+ * Stream.partitionQueue((n) => n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
4919
4959
  * )
4920
4960
  *
4921
4961
  * const passValues = yield* Stream.fromQueue(passes).pipe(Stream.runCollect)
@@ -4935,19 +4975,17 @@ export declare const filterEffect: {
4935
4975
  */
4936
4976
  export declare const partitionQueue: {
4937
4977
  /**
4938
- * Partitions a stream using a Filter and exposes passing and failing values as queues.
4978
+ * Partitions a stream using a `Filter` and exposes passing and failing values as queues.
4939
4979
  *
4940
4980
  * Each queue fails with the stream error or `Cause.Done` when the source ends.
4941
4981
  *
4942
4982
  * @example
4943
4983
  * ```ts
4944
- * import { Console, Effect, Filter, Result, Stream } from "effect"
4984
+ * import { Console, Effect, Result, Stream } from "effect"
4945
4985
  *
4946
4986
  * const program = Effect.gen(function*() {
4947
4987
  * const [passes, fails] = yield* Stream.make(1, 2, 3, 4).pipe(
4948
- * Stream.partitionQueue(
4949
- * Filter.make((n) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n)))
4950
- * )
4988
+ * Stream.partitionQueue((n) => n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
4951
4989
  * )
4952
4990
  *
4953
4991
  * const passValues = yield* Stream.fromQueue(passes).pipe(Stream.runCollect)
@@ -4965,100 +5003,24 @@ export declare const partitionQueue: {
4965
5003
  * @since 4.0.0
4966
5004
  * @category Filtering
4967
5005
  */
4968
- <A, B extends A>(refinement: Refinement<NoInfer<A>, B>, options?: {
5006
+ <A, Pass, Fail>(filter: Filter.Filter<NoInfer<A>, Pass, Fail>, options?: {
4969
5007
  readonly capacity?: number | "unbounded" | undefined;
4970
5008
  }): <E, R>(self: Stream<A, E, R>) => Effect.Effect<[
4971
- passes: Queue.Dequeue<B, E | Cause.Done>,
4972
- fails: Queue.Dequeue<Exclude<A, B>, E | Cause.Done>
5009
+ passes: Queue.Dequeue<Pass, E | Cause.Done>,
5010
+ fails: Queue.Dequeue<Fail, E | Cause.Done>
4973
5011
  ], never, R | Scope.Scope>;
4974
5012
  /**
4975
- * Partitions a stream using a Filter and exposes passing and failing values as queues.
5013
+ * Partitions a stream using a `Filter` and exposes passing and failing values as queues.
4976
5014
  *
4977
5015
  * Each queue fails with the stream error or `Cause.Done` when the source ends.
4978
5016
  *
4979
5017
  * @example
4980
5018
  * ```ts
4981
- * import { Console, Effect, Filter, Result, Stream } from "effect"
4982
- *
4983
- * const program = Effect.gen(function*() {
4984
- * const [passes, fails] = yield* Stream.make(1, 2, 3, 4).pipe(
4985
- * Stream.partitionQueue(
4986
- * Filter.make((n) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n)))
4987
- * )
4988
- * )
4989
- *
4990
- * const passValues = yield* Stream.fromQueue(passes).pipe(Stream.runCollect)
4991
- * const failValues = yield* Stream.fromQueue(fails).pipe(Stream.runCollect)
4992
- *
4993
- * yield* Console.log(passValues)
4994
- * // Output: [ 2, 4 ]
4995
- * yield* Console.log(failValues)
4996
- * // Output: [ 1, 3 ]
4997
- * })
4998
- *
4999
- * Effect.runPromise(Effect.scoped(program))
5000
- * ```
5001
- *
5002
- * @since 4.0.0
5003
- * @category Filtering
5004
- */
5005
- <A, Result extends Filter.ResultOrBool>(filter: Filter.OrPredicate<NoInfer<A>, Result>, options?: {
5006
- readonly capacity?: number | "unbounded" | undefined;
5007
- }): <E, R>(self: Stream<A, E, R>) => Effect.Effect<[
5008
- passes: Queue.Dequeue<Filter.Pass<A, Result>, E | Cause.Done>,
5009
- fails: Queue.Dequeue<Filter.Fail<A, Result>, E | Cause.Done>
5010
- ], never, R | Scope.Scope>;
5011
- /**
5012
- * Partitions a stream using a Filter and exposes passing and failing values as queues.
5013
- *
5014
- * Each queue fails with the stream error or `Cause.Done` when the source ends.
5015
- *
5016
- * @example
5017
- * ```ts
5018
- * import { Console, Effect, Filter, Result, Stream } from "effect"
5019
- *
5020
- * const program = Effect.gen(function*() {
5021
- * const [passes, fails] = yield* Stream.make(1, 2, 3, 4).pipe(
5022
- * Stream.partitionQueue(
5023
- * Filter.make((n) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n)))
5024
- * )
5025
- * )
5026
- *
5027
- * const passValues = yield* Stream.fromQueue(passes).pipe(Stream.runCollect)
5028
- * const failValues = yield* Stream.fromQueue(fails).pipe(Stream.runCollect)
5029
- *
5030
- * yield* Console.log(passValues)
5031
- * // Output: [ 2, 4 ]
5032
- * yield* Console.log(failValues)
5033
- * // Output: [ 1, 3 ]
5034
- * })
5035
- *
5036
- * Effect.runPromise(Effect.scoped(program))
5037
- * ```
5038
- *
5039
- * @since 4.0.0
5040
- * @category Filtering
5041
- */
5042
- <A, E, R, B extends A>(self: Stream<A, E, R>, refinement: Refinement<A, B>, options?: {
5043
- readonly capacity?: number | "unbounded" | undefined;
5044
- }): Effect.Effect<[
5045
- passes: Queue.Dequeue<B, E | Cause.Done>,
5046
- fails: Queue.Dequeue<Exclude<A, B>, E | Cause.Done>
5047
- ], never, R | Scope.Scope>;
5048
- /**
5049
- * Partitions a stream using a Filter and exposes passing and failing values as queues.
5050
- *
5051
- * Each queue fails with the stream error or `Cause.Done` when the source ends.
5052
- *
5053
- * @example
5054
- * ```ts
5055
- * import { Console, Effect, Filter, Result, Stream } from "effect"
5019
+ * import { Console, Effect, Result, Stream } from "effect"
5056
5020
  *
5057
5021
  * const program = Effect.gen(function*() {
5058
5022
  * const [passes, fails] = yield* Stream.make(1, 2, 3, 4).pipe(
5059
- * Stream.partitionQueue(
5060
- * Filter.make((n) => (n % 2 === 0 ? Result.succeed(n) : Result.fail(n)))
5061
- * )
5023
+ * Stream.partitionQueue((n) => n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
5062
5024
  * )
5063
5025
  *
5064
5026
  * const passValues = yield* Stream.fromQueue(passes).pipe(Stream.runCollect)
@@ -5076,119 +5038,49 @@ export declare const partitionQueue: {
5076
5038
  * @since 4.0.0
5077
5039
  * @category Filtering
5078
5040
  */
5079
- <A, E, R, Result extends Filter.ResultOrBool>(self: Stream<A, E, R>, filter: Filter.OrPredicate<NoInfer<A>, Result>, options?: {
5041
+ <A, E, R, Pass, Fail>(self: Stream<A, E, R>, filter: Filter.Filter<NoInfer<A>, Pass, Fail>, options?: {
5080
5042
  readonly capacity?: number | "unbounded" | undefined;
5081
5043
  }): Effect.Effect<[
5082
- passes: Queue.Dequeue<Filter.Pass<A, Result>, E | Cause.Done>,
5083
- fails: Queue.Dequeue<Filter.Fail<A, Result>, E | Cause.Done>
5044
+ passes: Queue.Dequeue<Pass, E | Cause.Done>,
5045
+ fails: Queue.Dequeue<Fail, E | Cause.Done>
5084
5046
  ], never, R | Scope.Scope>;
5085
5047
  };
5086
5048
  /**
5087
- * Splits a stream using an effectful filter, producing pass and fail streams.
5049
+ * Splits a stream using an effectful `Filter`, producing pass and fail streams.
5088
5050
  *
5089
5051
  * @since 4.0.0
5090
5052
  * @category Filtering
5091
- *
5092
- * @example
5093
- * ```ts
5094
- * import { Console, Effect, Result, Stream } from "effect"
5095
- *
5096
- * const program = Effect.scoped(
5097
- * Effect.gen(function*() {
5098
- * const [evens, odds] = yield* Stream.make(1, 2, 3, 4).pipe(
5099
- * Stream.partitionEffect((n) =>
5100
- * Effect.succeed(n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
5101
- * )
5102
- * )
5103
- * const result = yield* Effect.all({
5104
- * evens: Stream.runCollect(evens),
5105
- * odds: Stream.runCollect(odds)
5106
- * })
5107
- * yield* Console.log(result)
5108
- * })
5109
- * )
5110
- *
5111
- * Effect.runPromise(program)
5112
- * // Output: { evens: [ 2, 4 ], odds: [ 1, 3 ] }
5113
- * ```
5114
5053
  */
5115
5054
  export declare const partitionEffect: {
5116
5055
  /**
5117
- * Splits a stream using an effectful filter, producing pass and fail streams.
5056
+ * Splits a stream using an effectful `Filter`, producing pass and fail streams.
5118
5057
  *
5119
5058
  * @since 4.0.0
5120
5059
  * @category Filtering
5121
- *
5122
- * @example
5123
- * ```ts
5124
- * import { Console, Effect, Result, Stream } from "effect"
5125
- *
5126
- * const program = Effect.scoped(
5127
- * Effect.gen(function*() {
5128
- * const [evens, odds] = yield* Stream.make(1, 2, 3, 4).pipe(
5129
- * Stream.partitionEffect((n) =>
5130
- * Effect.succeed(n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
5131
- * )
5132
- * )
5133
- * const result = yield* Effect.all({
5134
- * evens: Stream.runCollect(evens),
5135
- * odds: Stream.runCollect(odds)
5136
- * })
5137
- * yield* Console.log(result)
5138
- * })
5139
- * )
5140
- *
5141
- * Effect.runPromise(program)
5142
- * // Output: { evens: [ 2, 4 ], odds: [ 1, 3 ] }
5143
- * ```
5144
5060
  */
5145
- <A, B, X, EX, RX>(filter: Filter.FilterEffect<A, B, X, EX, RX>, options?: {
5061
+ <A, Pass, Fail, EX, RX>(filter: Filter.FilterEffect<NoInfer<A>, Pass, Fail, EX, RX>, options?: {
5146
5062
  readonly capacity?: number | "unbounded" | undefined;
5147
5063
  readonly concurrency?: number | "unbounded" | undefined;
5148
5064
  }): <E, R>(self: Stream<A, E, R>) => Effect.Effect<[
5149
- passes: Stream<B, E | EX>,
5150
- fails: Stream<X, E | EX>
5065
+ passes: Stream<Pass, E | EX>,
5066
+ fails: Stream<Fail, E | EX>
5151
5067
  ], never, R | RX | Scope.Scope>;
5152
5068
  /**
5153
- * Splits a stream using an effectful filter, producing pass and fail streams.
5069
+ * Splits a stream using an effectful `Filter`, producing pass and fail streams.
5154
5070
  *
5155
5071
  * @since 4.0.0
5156
5072
  * @category Filtering
5157
- *
5158
- * @example
5159
- * ```ts
5160
- * import { Console, Effect, Result, Stream } from "effect"
5161
- *
5162
- * const program = Effect.scoped(
5163
- * Effect.gen(function*() {
5164
- * const [evens, odds] = yield* Stream.make(1, 2, 3, 4).pipe(
5165
- * Stream.partitionEffect((n) =>
5166
- * Effect.succeed(n % 2 === 0 ? Result.succeed(n) : Result.fail(n))
5167
- * )
5168
- * )
5169
- * const result = yield* Effect.all({
5170
- * evens: Stream.runCollect(evens),
5171
- * odds: Stream.runCollect(odds)
5172
- * })
5173
- * yield* Console.log(result)
5174
- * })
5175
- * )
5176
- *
5177
- * Effect.runPromise(program)
5178
- * // Output: { evens: [ 2, 4 ], odds: [ 1, 3 ] }
5179
- * ```
5180
5073
  */
5181
- <A, E, R, B, X, EX, RX>(self: Stream<A, E, R>, filter: Filter.FilterEffect<A, B, X, EX, RX>, options?: {
5074
+ <A, E, R, Pass, Fail, EX, RX>(self: Stream<A, E, R>, filter: Filter.FilterEffect<NoInfer<A>, Pass, Fail, EX, RX>, options?: {
5182
5075
  readonly capacity?: number | "unbounded" | undefined;
5183
5076
  readonly concurrency?: number | "unbounded" | undefined;
5184
5077
  }): Effect.Effect<[
5185
- passes: Stream<B, E | EX>,
5186
- fails: Stream<X, E | EX>
5078
+ passes: Stream<Pass, E | EX>,
5079
+ fails: Stream<Fail, E | EX>
5187
5080
  ], never, R | RX | Scope.Scope>;
5188
5081
  };
5189
5082
  /**
5190
- * Splits a stream into excluded and satisfying substreams using a predicate,
5191
- * refinement, or Filter.
5083
+ * Splits a stream into excluded and satisfying substreams using a `Filter`.
5192
5084
  *
5193
5085
  * The faster stream may advance up to `bufferSize` elements ahead of the slower
5194
5086
  * one.
@@ -5198,12 +5090,12 @@ export declare const partitionEffect: {
5198
5090
  *
5199
5091
  * @example
5200
5092
  * ```ts
5201
- * import { Console, Effect, Stream } from "effect"
5093
+ * import { Console, Effect, Result, Stream } from "effect"
5202
5094
  *
5203
5095
  * const program = Effect.gen(function*() {
5204
5096
  * const [excluded, satisfying] = yield* Stream.partition(
5205
5097
  * Stream.make(1, 2, 3, 4),
5206
- * (n) => n % 2 === 0
5098
+ * (n) => n % 2 === 0 ? Result.succeed(n) : Result.fail(n)
5207
5099
  * )
5208
5100
  * const left = yield* Stream.runCollect(excluded)
5209
5101
  * const right = yield* Stream.runCollect(satisfying)
@@ -5216,42 +5108,7 @@ export declare const partitionEffect: {
5216
5108
  */
5217
5109
  export declare const partition: {
5218
5110
  /**
5219
- * Splits a stream into excluded and satisfying substreams using a predicate,
5220
- * refinement, or Filter.
5221
- *
5222
- * The faster stream may advance up to `bufferSize` elements ahead of the slower
5223
- * one.
5224
- *
5225
- * @since 4.0.0
5226
- * @category Filtering
5227
- *
5228
- * @example
5229
- * ```ts
5230
- * import { Console, Effect, Stream } from "effect"
5231
- *
5232
- * const program = Effect.gen(function*() {
5233
- * const [excluded, satisfying] = yield* Stream.partition(
5234
- * Stream.make(1, 2, 3, 4),
5235
- * (n) => n % 2 === 0
5236
- * )
5237
- * const left = yield* Stream.runCollect(excluded)
5238
- * const right = yield* Stream.runCollect(satisfying)
5239
- * yield* Console.log(left)
5240
- * // Output: [ 1, 3 ]
5241
- * yield* Console.log(right)
5242
- * // Output: [ 2, 4 ]
5243
- * })
5244
- * ```
5245
- */
5246
- <C extends A, B extends A, A = C>(refinement: Refinement<NoInfer<A>, B>, options?: {
5247
- readonly bufferSize?: number | undefined;
5248
- }): <E, R>(self: Stream<C, E, R>) => Effect.Effect<[
5249
- excluded: Stream<Exclude<C, B>, E>,
5250
- satisfying: Stream<B, E>
5251
- ], never, R | Scope.Scope>;
5252
- /**
5253
- * Splits a stream into excluded and satisfying substreams using a predicate,
5254
- * refinement, or Filter.
5111
+ * Splits a stream into excluded and satisfying substreams using a `Filter`.
5255
5112
  *
5256
5113
  * The faster stream may advance up to `bufferSize` elements ahead of the slower
5257
5114
  * one.
@@ -5261,12 +5118,12 @@ export declare const partition: {
5261
5118
  *
5262
5119
  * @example
5263
5120
  * ```ts
5264
- * import { Console, Effect, Stream } from "effect"
5121
+ * import { Console, Effect, Result, Stream } from "effect"
5265
5122
  *
5266
5123
  * const program = Effect.gen(function*() {
5267
5124
  * const [excluded, satisfying] = yield* Stream.partition(
5268
5125
  * Stream.make(1, 2, 3, 4),
5269
- * (n) => n % 2 === 0
5126
+ * (n) => n % 2 === 0 ? Result.succeed(n) : Result.fail(n)
5270
5127
  * )
5271
5128
  * const left = yield* Stream.runCollect(excluded)
5272
5129
  * const right = yield* Stream.runCollect(satisfying)
@@ -5277,49 +5134,14 @@ export declare const partition: {
5277
5134
  * })
5278
5135
  * ```
5279
5136
  */
5280
- <A, Result extends Filter.ResultOrBool>(filter: Filter.OrPredicate<NoInfer<A>, Result>, options?: {
5137
+ <A, Pass, Fail>(filter: Filter.Filter<NoInfer<A>, Pass, Fail>, options?: {
5281
5138
  readonly bufferSize?: number | undefined;
5282
5139
  }): <E, R>(self: Stream<A, E, R>) => Effect.Effect<[
5283
- excluded: Stream<Filter.Fail<A, Result>, E>,
5284
- satisfying: Stream<Filter.Pass<A, Result>, E>
5285
- ], never, R | Scope.Scope>;
5286
- /**
5287
- * Splits a stream into excluded and satisfying substreams using a predicate,
5288
- * refinement, or Filter.
5289
- *
5290
- * The faster stream may advance up to `bufferSize` elements ahead of the slower
5291
- * one.
5292
- *
5293
- * @since 4.0.0
5294
- * @category Filtering
5295
- *
5296
- * @example
5297
- * ```ts
5298
- * import { Console, Effect, Stream } from "effect"
5299
- *
5300
- * const program = Effect.gen(function*() {
5301
- * const [excluded, satisfying] = yield* Stream.partition(
5302
- * Stream.make(1, 2, 3, 4),
5303
- * (n) => n % 2 === 0
5304
- * )
5305
- * const left = yield* Stream.runCollect(excluded)
5306
- * const right = yield* Stream.runCollect(satisfying)
5307
- * yield* Console.log(left)
5308
- * // Output: [ 1, 3 ]
5309
- * yield* Console.log(right)
5310
- * // Output: [ 2, 4 ]
5311
- * })
5312
- * ```
5313
- */
5314
- <C extends A, E, R, B extends A, A = C>(self: Stream<C, E, R>, refinement: Refinement<A, B>, options?: {
5315
- readonly bufferSize?: number | undefined;
5316
- }): Effect.Effect<[
5317
- excluded: Stream<Exclude<C, B>, E>,
5318
- satisfying: Stream<B, E>
5140
+ excluded: Stream<Fail, E>,
5141
+ satisfying: Stream<Pass, E>
5319
5142
  ], never, R | Scope.Scope>;
5320
5143
  /**
5321
- * Splits a stream into excluded and satisfying substreams using a predicate,
5322
- * refinement, or Filter.
5144
+ * Splits a stream into excluded and satisfying substreams using a `Filter`.
5323
5145
  *
5324
5146
  * The faster stream may advance up to `bufferSize` elements ahead of the slower
5325
5147
  * one.
@@ -5329,12 +5151,12 @@ export declare const partition: {
5329
5151
  *
5330
5152
  * @example
5331
5153
  * ```ts
5332
- * import { Console, Effect, Stream } from "effect"
5154
+ * import { Console, Effect, Result, Stream } from "effect"
5333
5155
  *
5334
5156
  * const program = Effect.gen(function*() {
5335
5157
  * const [excluded, satisfying] = yield* Stream.partition(
5336
5158
  * Stream.make(1, 2, 3, 4),
5337
- * (n) => n % 2 === 0
5159
+ * (n) => n % 2 === 0 ? Result.succeed(n) : Result.fail(n)
5338
5160
  * )
5339
5161
  * const left = yield* Stream.runCollect(excluded)
5340
5162
  * const right = yield* Stream.runCollect(satisfying)
@@ -5345,11 +5167,11 @@ export declare const partition: {
5345
5167
  * })
5346
5168
  * ```
5347
5169
  */
5348
- <A, E, R, Result extends Filter.ResultOrBool>(self: Stream<A, E, R>, filter: Filter.OrPredicate<NoInfer<A>, Result>, options?: {
5170
+ <A, E, R, Pass, Fail>(self: Stream<A, E, R>, filter: Filter.Filter<NoInfer<A>, Pass, Fail>, options?: {
5349
5171
  readonly bufferSize?: number | undefined;
5350
5172
  }): Effect.Effect<[
5351
- excluded: Stream<Filter.Fail<A, Result>, E>,
5352
- satisfying: Stream<Filter.Pass<A, Result>, E>
5173
+ excluded: Stream<Fail, E>,
5174
+ satisfying: Stream<Pass, E>
5353
5175
  ], never, R | Scope.Scope>;
5354
5176
  };
5355
5177
  /**
@@ -6043,7 +5865,7 @@ export declare const tapError: {
6043
5865
  <A, E, R, A2, E2, R2>(self: Stream<A, E, R>, f: (error: E) => Effect.Effect<A2, E2, R2>): Stream<A, E | E2, R | R2>;
6044
5866
  };
6045
5867
  /**
6046
- * Recovers from errors that match a filter by switching to a recovery stream.
5868
+ * Recovers from errors that match a predicate by switching to a recovery stream.
6047
5869
  *
6048
5870
  * When a failure matches the filter, the stream switches to the recovery
6049
5871
  * stream. Non-matching failures propagate downstream, so the error type is
@@ -6057,12 +5879,12 @@ export declare const tapError: {
6057
5879
  *
6058
5880
  * @example
6059
5881
  * ```ts
6060
- * import { Console, Effect, Filter, Stream } from "effect"
5882
+ * import { Console, Effect, Stream } from "effect"
6061
5883
  *
6062
5884
  * const stream = Stream.make(1, 2).pipe(
6063
5885
  * Stream.concat(Stream.fail(42)),
6064
5886
  * Stream.catchIf(
6065
- * Filter.fromPredicate((error): error is 42 => error === 42),
5887
+ * (error): error is 42 => error === 42,
6066
5888
  * () => Stream.make(999)
6067
5889
  * )
6068
5890
  * )
@@ -6081,7 +5903,7 @@ export declare const tapError: {
6081
5903
  */
6082
5904
  export declare const catchIf: {
6083
5905
  /**
6084
- * Recovers from errors that match a filter by switching to a recovery stream.
5906
+ * Recovers from errors that match a predicate by switching to a recovery stream.
6085
5907
  *
6086
5908
  * When a failure matches the filter, the stream switches to the recovery
6087
5909
  * stream. Non-matching failures propagate downstream, so the error type is
@@ -6095,12 +5917,12 @@ export declare const catchIf: {
6095
5917
  *
6096
5918
  * @example
6097
5919
  * ```ts
6098
- * import { Console, Effect, Filter, Stream } from "effect"
5920
+ * import { Console, Effect, Stream } from "effect"
6099
5921
  *
6100
5922
  * const stream = Stream.make(1, 2).pipe(
6101
5923
  * Stream.concat(Stream.fail(42)),
6102
5924
  * Stream.catchIf(
6103
- * Filter.fromPredicate((error): error is 42 => error === 42),
5925
+ * (error): error is 42 => error === 42,
6104
5926
  * () => Stream.make(999)
6105
5927
  * )
6106
5928
  * )
@@ -6119,7 +5941,7 @@ export declare const catchIf: {
6119
5941
  */
6120
5942
  <E, EB extends E, A2, E2, R2, A3 = never, E3 = Exclude<E, EB>, R3 = never>(refinement: Refinement<NoInfer<E>, EB>, f: (e: EB) => Stream<A2, E2, R2>, orElse?: ((e: Exclude<E, EB>) => Stream<A3, E3, R3>) | undefined): <A, R>(self: Stream<A, E, R>) => Stream<A2 | A | A3, E2 | E3, R2 | R | R3>;
6121
5943
  /**
6122
- * Recovers from errors that match a filter by switching to a recovery stream.
5944
+ * Recovers from errors that match a predicate by switching to a recovery stream.
6123
5945
  *
6124
5946
  * When a failure matches the filter, the stream switches to the recovery
6125
5947
  * stream. Non-matching failures propagate downstream, so the error type is
@@ -6133,12 +5955,12 @@ export declare const catchIf: {
6133
5955
  *
6134
5956
  * @example
6135
5957
  * ```ts
6136
- * import { Console, Effect, Filter, Stream } from "effect"
5958
+ * import { Console, Effect, Stream } from "effect"
6137
5959
  *
6138
5960
  * const stream = Stream.make(1, 2).pipe(
6139
5961
  * Stream.concat(Stream.fail(42)),
6140
5962
  * Stream.catchIf(
6141
- * Filter.fromPredicate((error): error is 42 => error === 42),
5963
+ * (error): error is 42 => error === 42,
6142
5964
  * () => Stream.make(999)
6143
5965
  * )
6144
5966
  * )
@@ -6155,9 +5977,9 @@ export declare const catchIf: {
6155
5977
  * @since 4.0.0
6156
5978
  * @category Error Handling
6157
5979
  */
6158
- <E, Result extends Filter.ResultOrBool, A2, E2, R2, A3 = never, E3 = Filter.Fail<E, Result>, R3 = never>(filter: Filter.OrPredicate<NoInfer<E>, Result>, f: (failure: Filter.Pass<E, Result>) => Stream<A2, E2, R2>, orElse?: ((failure: Filter.Fail<E, Result>) => Stream<A3, E3, R3>) | undefined): <A, R>(self: Stream<A, E, R>) => Stream<A | A2 | A3, E2 | E3, R | R2 | R3>;
5980
+ <E, A2, E2, R2, A3 = never, E3 = E, R3 = never>(predicate: Predicate<NoInfer<E>>, f: (e: NoInfer<E>) => Stream<A2, E2, R2>, orElse?: ((e: NoInfer<E>) => Stream<A3, E3, R3>) | undefined): <A, R>(self: Stream<A, E, R>) => Stream<A2 | A | A3, E2 | E3, R2 | R | R3>;
6159
5981
  /**
6160
- * Recovers from errors that match a filter by switching to a recovery stream.
5982
+ * Recovers from errors that match a predicate by switching to a recovery stream.
6161
5983
  *
6162
5984
  * When a failure matches the filter, the stream switches to the recovery
6163
5985
  * stream. Non-matching failures propagate downstream, so the error type is
@@ -6171,12 +5993,12 @@ export declare const catchIf: {
6171
5993
  *
6172
5994
  * @example
6173
5995
  * ```ts
6174
- * import { Console, Effect, Filter, Stream } from "effect"
5996
+ * import { Console, Effect, Stream } from "effect"
6175
5997
  *
6176
5998
  * const stream = Stream.make(1, 2).pipe(
6177
5999
  * Stream.concat(Stream.fail(42)),
6178
6000
  * Stream.catchIf(
6179
- * Filter.fromPredicate((error): error is 42 => error === 42),
6001
+ * (error): error is 42 => error === 42,
6180
6002
  * () => Stream.make(999)
6181
6003
  * )
6182
6004
  * )
@@ -6195,7 +6017,7 @@ export declare const catchIf: {
6195
6017
  */
6196
6018
  <A, E, R, EB extends E, A2, E2, R2, A3 = never, E3 = Exclude<E, EB>, R3 = never>(self: Stream<A, E, R>, refinement: Refinement<E, EB>, f: (e: EB) => Stream<A2, E2, R2>, orElse?: ((e: Exclude<E, EB>) => Stream<A3, E3, R3>) | undefined): Stream<A | A2 | A3, E2 | E3, R | R2 | R3>;
6197
6019
  /**
6198
- * Recovers from errors that match a filter by switching to a recovery stream.
6020
+ * Recovers from errors that match a predicate by switching to a recovery stream.
6199
6021
  *
6200
6022
  * When a failure matches the filter, the stream switches to the recovery
6201
6023
  * stream. Non-matching failures propagate downstream, so the error type is
@@ -6209,12 +6031,12 @@ export declare const catchIf: {
6209
6031
  *
6210
6032
  * @example
6211
6033
  * ```ts
6212
- * import { Console, Effect, Filter, Stream } from "effect"
6034
+ * import { Console, Effect, Stream } from "effect"
6213
6035
  *
6214
6036
  * const stream = Stream.make(1, 2).pipe(
6215
6037
  * Stream.concat(Stream.fail(42)),
6216
6038
  * Stream.catchIf(
6217
- * Filter.fromPredicate((error): error is 42 => error === 42),
6039
+ * (error): error is 42 => error === 42,
6218
6040
  * () => Stream.make(999)
6219
6041
  * )
6220
6042
  * )
@@ -6231,7 +6053,32 @@ export declare const catchIf: {
6231
6053
  * @since 4.0.0
6232
6054
  * @category Error Handling
6233
6055
  */
6234
- <A, E, R, Result extends Filter.ResultOrBool, A2, E2, R2, A3 = never, E3 = Filter.Fail<E, Result>, R3 = never>(self: Stream<A, E, R>, filter: Filter.OrPredicate<NoInfer<E>, Result>, f: (failure: Filter.Pass<E, Result>) => Stream<A2, E2, R2>, orElse?: ((failure: Filter.Fail<E, Result>) => Stream<A3, E3, R3>) | undefined): Stream<A | A2 | A3, E2 | E3, R | R2 | R3>;
6056
+ <A, E, R, A2, E2, R2, A3 = never, E3 = E, R3 = never>(self: Stream<A, E, R>, predicate: Predicate<E>, f: (e: E) => Stream<A2, E2, R2>, orElse?: ((e: E) => Stream<A3, E3, R3>) | undefined): Stream<A | A2 | A3, E2 | E3, R | R2 | R3>;
6057
+ };
6058
+ /**
6059
+ * Recovers from errors that match a `Filter` by switching to a recovery
6060
+ * stream.
6061
+ *
6062
+ * @since 4.0.0
6063
+ * @category Error Handling
6064
+ */
6065
+ export declare const catchFilter: {
6066
+ /**
6067
+ * Recovers from errors that match a `Filter` by switching to a recovery
6068
+ * stream.
6069
+ *
6070
+ * @since 4.0.0
6071
+ * @category Error Handling
6072
+ */
6073
+ <E, EB, A2, E2, R2, X, A3 = never, E3 = X, R3 = never>(filter: Filter.Filter<NoInfer<E>, EB, X>, f: (failure: EB) => Stream<A2, E2, R2>, orElse?: ((failure: X) => Stream<A3, E3, R3>) | undefined): <A, R>(self: Stream<A, E, R>) => Stream<A | A2 | A3, E2 | E3, R | R2 | R3>;
6074
+ /**
6075
+ * Recovers from errors that match a `Filter` by switching to a recovery
6076
+ * stream.
6077
+ *
6078
+ * @since 4.0.0
6079
+ * @category Error Handling
6080
+ */
6081
+ <A, E, R, EB, A2, E2, R2, X, A3 = never, E3 = X, R3 = never>(self: Stream<A, E, R>, filter: Filter.Filter<NoInfer<E>, EB, X>, f: (failure: EB) => Stream<A2, E2, R2>, orElse?: ((failure: X) => Stream<A3, E3, R3>) | undefined): Stream<A | A2 | A3, E2 | E3, R | R2 | R3>;
6235
6082
  };
6236
6083
  /**
6237
6084
  * Recovers from failures whose `_tag` matches the provided value by switching to
@@ -6567,7 +6414,7 @@ export declare const catchReason: {
6567
6414
  * @since 4.0.0
6568
6415
  * @category Error Handling
6569
6416
  */
6570
- <K extends Tags<E>, E, RK extends ReasonTags<ExtractTag<NoInfer<E>, K>>, A2, E2, R2, A3 = unassigned, E3 = never, R3 = never>(errorTag: K, reasonTag: RK, f: (reason: ExtractReason<ExtractTag<NoInfer<E>, K>, RK>) => Stream<A2, E2, R2>, orElse?: ((reason: ExcludeReason<ExtractTag<NoInfer<E>, K>, RK>) => Stream<A3, E3, R3>) | undefined): <A, R>(self: Stream<A, E, R>) => Stream<A | A2 | Exclude<A3, unassigned>, (A3 extends unassigned ? E : ExcludeTag<E, K>) | E2 | E3, R | R2 | R3>;
6417
+ <K extends Tags<E>, E, RK extends ReasonTags<ExtractTag<NoInfer<E>, K>>, A2, E2, R2, A3 = unassigned, E3 = never, R3 = never>(errorTag: K, reasonTag: RK, f: (reason: ExtractReason<ExtractTag<NoInfer<E>, K>, RK>, error: NarrowReason<ExtractTag<NoInfer<E>, K>, RK>) => Stream<A2, E2, R2>, orElse?: ((reason: ExcludeReason<ExtractTag<NoInfer<E>, K>, RK>, error: OmitReason<ExtractTag<NoInfer<E>, K>, RK>) => Stream<A3, E3, R3>) | undefined): <A, R>(self: Stream<A, E, R>) => Stream<A | A2 | Exclude<A3, unassigned>, (A3 extends unassigned ? E : ExcludeTag<E, K>) | E2 | E3, R | R2 | R3>;
6571
6418
  /**
6572
6419
  * Catches a specific reason within a tagged error.
6573
6420
  *
@@ -6611,7 +6458,7 @@ export declare const catchReason: {
6611
6458
  * @since 4.0.0
6612
6459
  * @category Error Handling
6613
6460
  */
6614
- <A, E, R, K extends Tags<E>, RK extends ReasonTags<ExtractTag<E, K>>, A2, E2, R2, A3 = unassigned, E3 = never, R3 = never>(self: Stream<A, E, R>, errorTag: K, reasonTag: RK, f: (reason: ExtractReason<ExtractTag<E, K>, RK>) => Stream<A2, E2, R2>, orElse?: ((reason: ExcludeReason<ExtractTag<E, K>, RK>) => Stream<A3, E3, R3>) | undefined): Stream<A | A2 | Exclude<A3, unassigned>, (A3 extends unassigned ? E : ExcludeTag<E, K>) | E2 | E3, R | R2 | R3>;
6461
+ <A, E, R, K extends Tags<E>, RK extends ReasonTags<ExtractTag<E, K>>, A2, E2, R2, A3 = unassigned, E3 = never, R3 = never>(self: Stream<A, E, R>, errorTag: K, reasonTag: RK, f: (reason: ExtractReason<ExtractTag<E, K>, RK>, error: NarrowReason<ExtractTag<E, K>, RK>) => Stream<A2, E2, R2>, orElse?: ((reason: ExcludeReason<ExtractTag<E, K>, RK>, error: OmitReason<ExtractTag<E, K>, RK>) => Stream<A3, E3, R3>) | undefined): Stream<A | A2 | Exclude<A3, unassigned>, (A3 extends unassigned ? E : ExcludeTag<E, K>) | E2 | E3, R | R2 | R3>;
6615
6462
  };
6616
6463
  /**
6617
6464
  * Catches multiple reasons within a tagged error using an object of handlers.
@@ -6697,8 +6544,8 @@ export declare const catchReasons: {
6697
6544
  * @category Error Handling
6698
6545
  */
6699
6546
  <K extends Tags<E>, E, Cases extends {
6700
- [RK in ReasonTags<ExtractTag<NoInfer<E>, K>>]+?: (reason: ExtractReason<ExtractTag<NoInfer<E>, K>, RK>) => Stream<any, any, any>;
6701
- }, A2 = unassigned, E2 = never, R2 = never>(errorTag: K, cases: Cases, orElse?: ((reason: ExcludeReason<ExtractTag<NoInfer<E>, K>, Extract<keyof Cases, string>>) => Stream<A2, E2, R2>) | undefined): <A, R>(self: Stream<A, E, R>) => Stream<A | Exclude<A2, unassigned> | {
6547
+ [RK in ReasonTags<ExtractTag<NoInfer<E>, K>>]+?: (reason: ExtractReason<ExtractTag<NoInfer<E>, K>, RK>, error: NarrowReason<ExtractTag<NoInfer<E>, K>, RK>) => Stream<any, any, any>;
6548
+ }, A2 = unassigned, E2 = never, R2 = never>(errorTag: K, cases: Cases, orElse?: ((reason: ExcludeReason<ExtractTag<NoInfer<E>, K>, Extract<keyof Cases, string>>, error: OmitReason<ExtractTag<NoInfer<E>, K>, Extract<keyof Cases, string>>) => Stream<A2, E2, R2>) | undefined): <A, R>(self: Stream<A, E, R>) => Stream<A | Exclude<A2, unassigned> | {
6702
6549
  [RK in keyof Cases]: Cases[RK] extends (...args: Array<any>) => Stream<infer A, any, any> ? A : never;
6703
6550
  }[keyof Cases], (A2 extends unassigned ? E : ExcludeTag<E, K>) | E2 | {
6704
6551
  [RK in keyof Cases]: Cases[RK] extends (...args: Array<any>) => Stream<any, infer E, any> ? E : never;
@@ -6747,8 +6594,8 @@ export declare const catchReasons: {
6747
6594
  * @category Error Handling
6748
6595
  */
6749
6596
  <A, E, R, K extends Tags<E>, Cases extends {
6750
- [RK in ReasonTags<ExtractTag<E, K>>]+?: (reason: ExtractReason<ExtractTag<E, K>, RK>) => Stream<any, any, any>;
6751
- }, A2 = unassigned, E2 = never, R2 = never>(self: Stream<A, E, R>, errorTag: K, cases: Cases, orElse?: ((reason: ExcludeReason<ExtractTag<NoInfer<E>, K>, Extract<keyof Cases, string>>) => Stream<A2, E2, R2>) | undefined): Stream<A | Exclude<A2, unassigned> | {
6597
+ [RK in ReasonTags<ExtractTag<E, K>>]+?: (reason: ExtractReason<ExtractTag<E, K>, RK>, error: NarrowReason<ExtractTag<E, K>, RK>) => Stream<any, any, any>;
6598
+ }, A2 = unassigned, E2 = never, R2 = never>(self: Stream<A, E, R>, errorTag: K, cases: Cases, orElse?: ((reason: ExcludeReason<ExtractTag<NoInfer<E>, K>, Extract<keyof Cases, string>>, error: OmitReason<ExtractTag<NoInfer<E>, K>, Extract<keyof Cases, string>>) => Stream<A2, E2, R2>) | undefined): Stream<A | Exclude<A2, unassigned> | {
6752
6599
  [RK in keyof Cases]: Cases[RK] extends (...args: Array<any>) => Stream<infer A, any, any> ? A : never;
6753
6600
  }[keyof Cases], (A2 extends unassigned ? E : ExcludeTag<E, K>) | E2 | {
6754
6601
  [RK in keyof Cases]: Cases[RK] extends (...args: Array<any>) => Stream<any, infer E, any> ? E : never;
@@ -6896,7 +6743,7 @@ export declare const catchCauseIf: {
6896
6743
  * @since 4.0.0
6897
6744
  * @category Error Handling
6898
6745
  */
6899
- <E, Result extends Filter.ResultOrBool<Cause.Cause<any>>, A2, E2, R2>(filter: Filter.OrPredicate<Cause.Cause<E>, Result>, f: (failure: Filter.Pass<Cause.Cause<E>, Result>, cause: Cause.Cause<E>) => Stream<A2, E2, R2>): <A, R>(self: Stream<A, E, R>) => Stream<A | A2, Cause.Cause.Error<Filter.Fail<Cause.Cause<E>, Result>> | E2, R2 | R>;
6746
+ <E, A2, E2, R2>(predicate: Predicate<Cause.Cause<E>>, f: (cause: Cause.Cause<E>) => Stream<A2, E2, R2>): <A, R>(self: Stream<A, E, R>) => Stream<A | A2, E | E2, R2 | R>;
6900
6747
  /**
6901
6748
  * Recovers from stream failures by filtering the `Cause` and switching to a recovery stream.
6902
6749
  * Non-matching causes are re-emitted as failures.
@@ -6930,7 +6777,32 @@ export declare const catchCauseIf: {
6930
6777
  * @since 4.0.0
6931
6778
  * @category Error Handling
6932
6779
  */
6933
- <A, E, R, A2, E2, R2, Result extends Filter.ResultOrBool<Cause.Cause<any>>>(self: Stream<A, E, R>, filter: Filter.OrPredicate<Cause.Cause<E>, Result>, f: (failure: Filter.Pass<Cause.Cause<E>, Result>, cause: Cause.Cause<E>) => Stream<A2, E2, R2>): Stream<A | A2, Cause.Cause.Error<Filter.Fail<Cause.Cause<E>, Result>> | E2, R | R2>;
6780
+ <A, E, R, A2, E2, R2>(self: Stream<A, E, R>, predicate: Predicate<Cause.Cause<E>>, f: (cause: Cause.Cause<E>) => Stream<A2, E2, R2>): Stream<A | A2, E | E2, R | R2>;
6781
+ };
6782
+ /**
6783
+ * Recovers from stream failures by filtering the `Cause` and switching to a
6784
+ * recovery stream.
6785
+ *
6786
+ * @since 4.0.0
6787
+ * @category Error Handling
6788
+ */
6789
+ export declare const catchCauseFilter: {
6790
+ /**
6791
+ * Recovers from stream failures by filtering the `Cause` and switching to a
6792
+ * recovery stream.
6793
+ *
6794
+ * @since 4.0.0
6795
+ * @category Error Handling
6796
+ */
6797
+ <E, EB, A2, E2, R2, X extends Cause.Cause<any>>(filter: Filter.Filter<Cause.Cause<E>, EB, X>, f: (failure: EB, cause: Cause.Cause<E>) => Stream<A2, E2, R2>): <A, R>(self: Stream<A, E, R>) => Stream<A | A2, Cause.Cause.Error<X> | E2, R2 | R>;
6798
+ /**
6799
+ * Recovers from stream failures by filtering the `Cause` and switching to a
6800
+ * recovery stream.
6801
+ *
6802
+ * @since 4.0.0
6803
+ * @category Error Handling
6804
+ */
6805
+ <A, E, R, EB, A2, E2, R2, X extends Cause.Cause<any>>(self: Stream<A, E, R>, filter: Filter.Filter<Cause.Cause<E>, EB, X>, f: (failure: EB, cause: Cause.Cause<E>) => Stream<A2, E2, R2>): Stream<A | A2, Cause.Cause.Error<X> | E2, R | R2>;
6934
6806
  };
6935
6807
  /**
6936
6808
  * Switches to a fallback stream if this stream is empty.
@@ -7134,9 +7006,9 @@ export declare const orDie: <A, E, R>(self: Stream<A, E, R>) => Stream<A, never,
7134
7006
  * @category Error Handling
7135
7007
  */
7136
7008
  export declare const ignore: <Arg extends Stream<any, any, any> | {
7137
- readonly log?: boolean | LogLevel | undefined;
7009
+ readonly log?: boolean | Severity | undefined;
7138
7010
  } | undefined>(selfOrOptions: Arg, options?: {
7139
- readonly log?: boolean | LogLevel | undefined;
7011
+ readonly log?: boolean | Severity | undefined;
7140
7012
  } | undefined) => [Arg] extends [Stream<infer A, infer _E, infer R>] ? Stream<A, never, R> : <A, E, R>(self: Stream<A, E, R>) => Stream<A, never, R>;
7141
7013
  /**
7142
7014
  * Ignores the stream's failure cause, including defects, and ends the stream.
@@ -7159,9 +7031,9 @@ export declare const ignore: <Arg extends Stream<any, any, any> | {
7159
7031
  * @category Error Handling
7160
7032
  */
7161
7033
  export declare const ignoreCause: <Arg extends Stream<any, any, any> | {
7162
- readonly log?: boolean | LogLevel | undefined;
7034
+ readonly log?: boolean | Severity | undefined;
7163
7035
  } | undefined>(streamOrOptions: Arg, options?: {
7164
- readonly log?: boolean | LogLevel | undefined;
7036
+ readonly log?: boolean | Severity | undefined;
7165
7037
  } | undefined) => [Arg] extends [Stream<infer A, infer _E, infer R>] ? Stream<A, never, R> : <A, E, R>(self: Stream<A, E, R>) => Stream<A, never, R>;
7166
7038
  /**
7167
7039
  * When the stream fails, retry it according to the given schedule.
@@ -7811,7 +7683,7 @@ export declare const takeWhile: {
7811
7683
  * @since 2.0.0
7812
7684
  * @category Filtering
7813
7685
  */
7814
- <A, B, X>(f: Filter.Filter<NoInfer<A>, B, X>): <E, R>(self: Stream<A, E, R>) => Stream<B, E, R>;
7686
+ <A, E, R, B extends A>(self: Stream<A, E, R>, refinement: (a: NoInfer<A>, n: number) => a is B): Stream<B, E, R>;
7815
7687
  /**
7816
7688
  * Takes the longest initial prefix of elements that satisfy the predicate.
7817
7689
  *
@@ -7835,52 +7707,26 @@ export declare const takeWhile: {
7835
7707
  * @since 2.0.0
7836
7708
  * @category Filtering
7837
7709
  */
7838
- <A, E, R, B extends A>(self: Stream<A, E, R>, refinement: (a: NoInfer<A>, n: number) => a is B): Stream<B, E, R>;
7710
+ <A, E, R>(self: Stream<A, E, R>, predicate: (a: NoInfer<A>, n: number) => boolean): Stream<A, E, R>;
7711
+ };
7712
+ /**
7713
+ * Takes the longest initial prefix of elements that satisfy the filter.
7714
+ *
7715
+ * @since 4.0.0
7716
+ * @category Filtering
7717
+ */
7718
+ export declare const takeWhileFilter: {
7839
7719
  /**
7840
- * Takes the longest initial prefix of elements that satisfy the predicate.
7841
- *
7842
- * @example
7843
- * ```ts
7844
- * import { Console, Effect, Stream } from "effect"
7845
- *
7846
- * const stream = Stream.range(1, 5).pipe(
7847
- * Stream.takeWhile((n) => n % 3 !== 0)
7848
- * )
7720
+ * Takes the longest initial prefix of elements that satisfy the filter.
7849
7721
  *
7850
- * const program = Effect.gen(function*() {
7851
- * const result = yield* Stream.runCollect(stream)
7852
- * yield* Console.log(result)
7853
- * })
7854
- *
7855
- * Effect.runPromise(program)
7856
- * // Output: [ 1, 2 ]
7857
- * ```
7858
- *
7859
- * @since 2.0.0
7722
+ * @since 4.0.0
7860
7723
  * @category Filtering
7861
7724
  */
7862
- <A, E, R>(self: Stream<A, E, R>, predicate: (a: NoInfer<A>, n: number) => boolean): Stream<A, E, R>;
7725
+ <A, B, X>(f: Filter.Filter<NoInfer<A>, B, X>): <E, R>(self: Stream<A, E, R>) => Stream<B, E, R>;
7863
7726
  /**
7864
- * Takes the longest initial prefix of elements that satisfy the predicate.
7865
- *
7866
- * @example
7867
- * ```ts
7868
- * import { Console, Effect, Stream } from "effect"
7869
- *
7870
- * const stream = Stream.range(1, 5).pipe(
7871
- * Stream.takeWhile((n) => n % 3 !== 0)
7872
- * )
7727
+ * Takes the longest initial prefix of elements that satisfy the filter.
7873
7728
  *
7874
- * const program = Effect.gen(function*() {
7875
- * const result = yield* Stream.runCollect(stream)
7876
- * yield* Console.log(result)
7877
- * })
7878
- *
7879
- * Effect.runPromise(program)
7880
- * // Output: [ 1, 2 ]
7881
- * ```
7882
- *
7883
- * @since 2.0.0
7729
+ * @since 4.0.0
7884
7730
  * @category Filtering
7885
7731
  */
7886
7732
  <A, E, R, B, X>(self: Stream<A, E, R>, f: Filter.Filter<NoInfer<A>, B, X>): Stream<B, E, R>;
@@ -8236,53 +8082,29 @@ export declare const dropWhile: {
8236
8082
  * @since 2.0.0
8237
8083
  * @category Filtering
8238
8084
  */
8239
- <A, B, X>(f: Filter.Filter<NoInfer<A>, B, X>): <E, R>(self: Stream<A, E, R>) => Stream<A, E, R>;
8085
+ <A, E, R>(self: Stream<A, E, R>, predicate: (a: NoInfer<A>, index: number) => boolean): Stream<A, E, R>;
8086
+ };
8087
+ /**
8088
+ * Drops elements while the filter succeeds.
8089
+ *
8090
+ * @since 4.0.0
8091
+ * @category Filtering
8092
+ */
8093
+ export declare const dropWhileFilter: {
8240
8094
  /**
8241
- * Drops elements from the stream while the specified predicate evaluates to `true`.
8242
- *
8243
- * @example
8244
- * ```ts
8245
- * import { Console, Effect, Stream } from "effect"
8246
- *
8247
- * const program = Effect.gen(function*() {
8248
- * const values = yield* Stream.make(1, 2, 3, 4, 5).pipe(
8249
- * Stream.dropWhile((n) => n < 3),
8250
- * Stream.runCollect
8251
- * )
8252
- * yield* Console.log(values)
8253
- * })
8254
- *
8255
- * Effect.runPromise(program)
8256
- * // Output: [ 3, 4, 5 ]
8257
- * ```
8095
+ * Drops elements while the filter succeeds.
8258
8096
  *
8259
- * @since 2.0.0
8097
+ * @since 4.0.0
8260
8098
  * @category Filtering
8261
8099
  */
8262
- <A, E, R>(self: Stream<A, E, R>, predicate: (a: NoInfer<A>, index: number) => boolean): Stream<A, E, R>;
8100
+ <A, B, X>(filter: Filter.Filter<NoInfer<A>, B, X>): <E, R>(self: Stream<A, E, R>) => Stream<A, E, R>;
8263
8101
  /**
8264
- * Drops elements from the stream while the specified predicate evaluates to `true`.
8265
- *
8266
- * @example
8267
- * ```ts
8268
- * import { Console, Effect, Stream } from "effect"
8269
- *
8270
- * const program = Effect.gen(function*() {
8271
- * const values = yield* Stream.make(1, 2, 3, 4, 5).pipe(
8272
- * Stream.dropWhile((n) => n < 3),
8273
- * Stream.runCollect
8274
- * )
8275
- * yield* Console.log(values)
8276
- * })
8102
+ * Drops elements while the filter succeeds.
8277
8103
  *
8278
- * Effect.runPromise(program)
8279
- * // Output: [ 3, 4, 5 ]
8280
- * ```
8281
- *
8282
- * @since 2.0.0
8104
+ * @since 4.0.0
8283
8105
  * @category Filtering
8284
8106
  */
8285
- <A, E, R, B, X>(self: Stream<A, E, R>, f: Filter.Filter<NoInfer<A>, B, X>): Stream<A, E, R>;
8107
+ <A, E, R, B, X>(self: Stream<A, E, R>, filter: Filter.Filter<NoInfer<A>, B, X>): Stream<A, E, R>;
8286
8108
  };
8287
8109
  /**
8288
8110
  * Drops elements while the specified effectful predicate evaluates to `true`.
@@ -9557,7 +9379,7 @@ export declare const debounce: {
9557
9379
  * @since 2.0.0
9558
9380
  * @category Rate Limiting
9559
9381
  */
9560
- (duration: Duration.DurationInput): <A, E, R>(self: Stream<A, E, R>) => Stream<A, E, R>;
9382
+ (duration: Duration.Input): <A, E, R>(self: Stream<A, E, R>) => Stream<A, E, R>;
9561
9383
  /**
9562
9384
  * Drops earlier elements within the debounce window and emits only the latest element after the pause.
9563
9385
  *
@@ -9581,7 +9403,7 @@ export declare const debounce: {
9581
9403
  * @since 2.0.0
9582
9404
  * @category Rate Limiting
9583
9405
  */
9584
- <A, E, R>(self: Stream<A, E, R>, duration: Duration.DurationInput): Stream<A, E, R>;
9406
+ <A, E, R>(self: Stream<A, E, R>, duration: Duration.Input): Stream<A, E, R>;
9585
9407
  };
9586
9408
  /**
9587
9409
  * Delays the arrays of this stream according to the given bandwidth
@@ -9659,7 +9481,7 @@ export declare const throttleEffect: {
9659
9481
  <A, E2, R2>(options: {
9660
9482
  readonly cost: (arr: Arr.NonEmptyReadonlyArray<A>) => Effect.Effect<number, E2, R2>;
9661
9483
  readonly units: number;
9662
- readonly duration: Duration.DurationInput;
9484
+ readonly duration: Duration.Input;
9663
9485
  readonly burst?: number | undefined;
9664
9486
  readonly strategy?: "enforce" | "shape" | undefined;
9665
9487
  }): <E, R>(self: Stream<A, E, R>) => Stream<A, E2 | E, R2 | R>;
@@ -9702,7 +9524,7 @@ export declare const throttleEffect: {
9702
9524
  <A, E, R, E2, R2>(self: Stream<A, E, R>, options: {
9703
9525
  readonly cost: (arr: Arr.NonEmptyReadonlyArray<A>) => Effect.Effect<number, E2, R2>;
9704
9526
  readonly units: number;
9705
- readonly duration: Duration.DurationInput;
9527
+ readonly duration: Duration.Input;
9706
9528
  readonly burst?: number | undefined;
9707
9529
  readonly strategy?: "enforce" | "shape" | undefined;
9708
9530
  }): Stream<A, E | E2, R | R2>;
@@ -9781,7 +9603,7 @@ export declare const throttle: {
9781
9603
  <A>(options: {
9782
9604
  readonly cost: (arr: Arr.NonEmptyReadonlyArray<A>) => number;
9783
9605
  readonly units: number;
9784
- readonly duration: Duration.DurationInput;
9606
+ readonly duration: Duration.Input;
9785
9607
  readonly burst?: number | undefined;
9786
9608
  readonly strategy?: "enforce" | "shape" | undefined;
9787
9609
  }): <E, R>(self: Stream<A, E, R>) => Stream<A, E, R>;
@@ -9823,7 +9645,7 @@ export declare const throttle: {
9823
9645
  <A, E, R>(self: Stream<A, E, R>, options: {
9824
9646
  readonly cost: (arr: Arr.NonEmptyReadonlyArray<A>) => number;
9825
9647
  readonly units: number;
9826
- readonly duration: Duration.DurationInput;
9648
+ readonly duration: Duration.Input;
9827
9649
  readonly burst?: number | undefined;
9828
9650
  readonly strategy?: "enforce" | "shape" | undefined;
9829
9651
  }): Stream<A, E, R>;
@@ -9951,7 +9773,7 @@ export declare const groupedWithin: {
9951
9773
  * @since 2.0.0
9952
9774
  * @category Grouping
9953
9775
  */
9954
- (chunkSize: number, duration: Duration.DurationInput): <A, E, R>(self: Stream<A, E, R>) => Stream<Array<A>, E, R>;
9776
+ (chunkSize: number, duration: Duration.Input): <A, E, R>(self: Stream<A, E, R>) => Stream<Array<A>, E, R>;
9955
9777
  /**
9956
9778
  * Partitions the stream into arrays, emitting when the chunk size is reached
9957
9779
  * or the duration passes.
@@ -9975,7 +9797,7 @@ export declare const groupedWithin: {
9975
9797
  * @since 2.0.0
9976
9798
  * @category Grouping
9977
9799
  */
9978
- <A, E, R>(self: Stream<A, E, R>, chunkSize: number, duration: Duration.DurationInput): Stream<Array<A>, E, R>;
9800
+ <A, E, R>(self: Stream<A, E, R>, chunkSize: number, duration: Duration.Input): Stream<Array<A>, E, R>;
9979
9801
  };
9980
9802
  /**
9981
9803
  * Groups elements into keyed substreams using an effectful classifier.
@@ -10042,7 +9864,7 @@ export declare const groupBy: {
10042
9864
  */
10043
9865
  <A, K, V, E2, R2>(f: (a: NoInfer<A>) => Effect.Effect<readonly [K, V], E2, R2>, options?: {
10044
9866
  readonly bufferSize?: number | undefined;
10045
- readonly idleTimeToLive?: Duration.DurationInput | undefined;
9867
+ readonly idleTimeToLive?: Duration.Input | undefined;
10046
9868
  }): <E, R>(self: Stream<A, E, R>) => Stream<readonly [K, Stream<V>], E | E2, R | R2>;
10047
9869
  /**
10048
9870
  * Groups elements into keyed substreams using an effectful classifier.
@@ -10077,7 +9899,7 @@ export declare const groupBy: {
10077
9899
  */
10078
9900
  <A, E, R, K, V, E2, R2>(self: Stream<A, E, R>, f: (a: NoInfer<A>) => Effect.Effect<readonly [K, V], E2, R2>, options?: {
10079
9901
  readonly bufferSize?: number | undefined;
10080
- readonly idleTimeToLive?: Duration.DurationInput | undefined;
9902
+ readonly idleTimeToLive?: Duration.Input | undefined;
10081
9903
  }): Stream<readonly [K, Stream<V>], E | E2, R | R2>;
10082
9904
  };
10083
9905
  /**
@@ -10141,7 +9963,7 @@ export declare const groupByKey: {
10141
9963
  */
10142
9964
  <A, K>(f: (a: NoInfer<A>) => K, options?: {
10143
9965
  readonly bufferSize?: number | undefined;
10144
- readonly idleTimeToLive?: Duration.DurationInput | undefined;
9966
+ readonly idleTimeToLive?: Duration.Input | undefined;
10145
9967
  }): <E, R>(self: Stream<A, E, R>) => Stream<readonly [K, Stream<A>], E, R>;
10146
9968
  /**
10147
9969
  * Groups elements by a key and emits a stream per key.
@@ -10174,7 +9996,7 @@ export declare const groupByKey: {
10174
9996
  */
10175
9997
  <A, E, R, K>(self: Stream<A, E, R>, f: (a: NoInfer<A>) => K, options?: {
10176
9998
  readonly bufferSize?: number | undefined;
10177
- readonly idleTimeToLive?: Duration.DurationInput | undefined;
9999
+ readonly idleTimeToLive?: Duration.Input | undefined;
10178
10000
  }): Stream<readonly [K, Stream<A>], E, R>;
10179
10001
  };
10180
10002
  /**
@@ -10559,12 +10381,12 @@ export declare const share: {
10559
10381
  (options: {
10560
10382
  readonly capacity: "unbounded";
10561
10383
  readonly replay?: number | undefined;
10562
- readonly idleTimeToLive?: Duration.DurationInput | undefined;
10384
+ readonly idleTimeToLive?: Duration.Input | undefined;
10563
10385
  } | {
10564
10386
  readonly capacity: number;
10565
10387
  readonly strategy?: "sliding" | "dropping" | "suspend" | undefined;
10566
10388
  readonly replay?: number | undefined;
10567
- readonly idleTimeToLive?: Duration.DurationInput | undefined;
10389
+ readonly idleTimeToLive?: Duration.Input | undefined;
10568
10390
  }): <A, E, R>(self: Stream<A, E, R>) => Effect.Effect<Stream<A, E>, never, Scope.Scope | R>;
10569
10391
  /**
10570
10392
  * Returns a new Stream that multicasts the original stream, subscribing when the first consumer starts.
@@ -10600,12 +10422,12 @@ export declare const share: {
10600
10422
  <A, E, R>(self: Stream<A, E, R>, options: {
10601
10423
  readonly capacity: "unbounded";
10602
10424
  readonly replay?: number | undefined;
10603
- readonly idleTimeToLive?: Duration.DurationInput | undefined;
10425
+ readonly idleTimeToLive?: Duration.Input | undefined;
10604
10426
  } | {
10605
10427
  readonly capacity: number;
10606
10428
  readonly strategy?: "sliding" | "dropping" | "suspend" | undefined;
10607
10429
  readonly replay?: number | undefined;
10608
- readonly idleTimeToLive?: Duration.DurationInput | undefined;
10430
+ readonly idleTimeToLive?: Duration.Input | undefined;
10609
10431
  }): Effect.Effect<Stream<A, E>, never, Scope.Scope | R>;
10610
10432
  };
10611
10433
  /**
@@ -12457,7 +12279,7 @@ export declare const provideService: {
12457
12279
  * @since 4.0.0
12458
12280
  * @category Services
12459
12281
  */
12460
- <I, S>(key: ServiceMap.Service<I, S>, service: NoInfer<S>): <A, E, R>(self: Stream<A, E, R>) => Stream<A, E, Exclude<R, I>>;
12282
+ <I, S>(key: ServiceMap.Key<I, S>, service: NoInfer<S>): <A, E, R>(self: Stream<A, E, R>) => Stream<A, E, Exclude<R, I>>;
12461
12283
  /**
12462
12284
  * Provides the stream with a single required service, eliminating that
12463
12285
  * requirement from its environment.
@@ -12494,7 +12316,7 @@ export declare const provideService: {
12494
12316
  * @since 4.0.0
12495
12317
  * @category Services
12496
12318
  */
12497
- <A, E, R, I, S>(self: Stream<A, E, R>, key: ServiceMap.Service<I, S>, service: NoInfer<S>): Stream<A, E, Exclude<R, I>>;
12319
+ <A, E, R, I, S>(self: Stream<A, E, R>, key: ServiceMap.Key<I, S>, service: NoInfer<S>): Stream<A, E, Exclude<R, I>>;
12498
12320
  };
12499
12321
  /**
12500
12322
  * Provides a service to the stream using an effect, removing the requirement and adding the effect's error and environment.
@@ -12573,7 +12395,7 @@ export declare const provideServiceEffect: {
12573
12395
  * @since 4.0.0
12574
12396
  * @category Services
12575
12397
  */
12576
- <I, S, ES, RS>(key: ServiceMap.Service<I, S>, service: Effect.Effect<NoInfer<S>, ES, RS>): <A, E, R>(self: Stream<A, E, R>) => Stream<A, E | ES, Exclude<R, I> | RS>;
12398
+ <I, S, ES, RS>(key: ServiceMap.Key<I, S>, service: Effect.Effect<NoInfer<S>, ES, RS>): <A, E, R>(self: Stream<A, E, R>) => Stream<A, E | ES, Exclude<R, I> | RS>;
12577
12399
  /**
12578
12400
  * Provides a service to the stream using an effect, removing the requirement and adding the effect's error and environment.
12579
12401
  *
@@ -12612,7 +12434,7 @@ export declare const provideServiceEffect: {
12612
12434
  * @since 4.0.0
12613
12435
  * @category Services
12614
12436
  */
12615
- <A, E, R, I, S, ES, RS>(self: Stream<A, E, R>, key: ServiceMap.Service<I, S>, service: Effect.Effect<NoInfer<S>, ES, RS>): Stream<A, E | ES, Exclude<R, I> | RS>;
12437
+ <A, E, R, I, S, ES, RS>(self: Stream<A, E, R>, key: ServiceMap.Key<I, S>, service: Effect.Effect<NoInfer<S>, ES, RS>): Stream<A, E | ES, Exclude<R, I> | RS>;
12616
12438
  };
12617
12439
  /**
12618
12440
  * Transforms the stream's required services by mapping the current service map
@@ -12786,7 +12608,7 @@ export declare const updateService: {
12786
12608
  * @since 2.0.0
12787
12609
  * @category Services
12788
12610
  */
12789
- <I, S>(key: ServiceMap.Service<I, S>, f: (service: NoInfer<S>) => S): <A, E, R>(self: Stream<A, E, R>) => Stream<A, E, R | I>;
12611
+ <I, S>(key: ServiceMap.Key<I, S>, f: (service: NoInfer<S>) => S): <A, E, R>(self: Stream<A, E, R>) => Stream<A, E, R | I>;
12790
12612
  /**
12791
12613
  * Updates a single service in the stream environment by applying a function.
12792
12614
  *
@@ -12812,7 +12634,7 @@ export declare const updateService: {
12812
12634
  * @since 2.0.0
12813
12635
  * @category Services
12814
12636
  */
12815
- <A, E, R, I, S>(self: Stream<A, E, R>, key: ServiceMap.Service<I, S>, f: (service: NoInfer<S>) => S): Stream<A, E, R | I>;
12637
+ <A, E, R, I, S>(self: Stream<A, E, R>, key: ServiceMap.Key<I, S>, f: (service: NoInfer<S>) => S): Stream<A, E, R | I>;
12816
12638
  };
12817
12639
  /**
12818
12640
  * Wraps the stream with a new span for tracing.