effect 4.0.0-beta.4 → 4.0.0-beta.41

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 (1235) hide show
  1. package/dist/Array.d.ts +213 -385
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +149 -102
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +82 -45
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +87 -38
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +39 -32
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +32 -29
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Brand.d.ts +1 -1
  14. package/dist/Brand.d.ts.map +1 -1
  15. package/dist/Brand.js +1 -1
  16. package/dist/Brand.js.map +1 -1
  17. package/dist/Cache.d.ts +2 -2
  18. package/dist/Cache.d.ts.map +1 -1
  19. package/dist/Cache.js +6 -5
  20. package/dist/Cache.js.map +1 -1
  21. package/dist/Cause.d.ts +33 -2
  22. package/dist/Cause.d.ts.map +1 -1
  23. package/dist/Cause.js +19 -0
  24. package/dist/Cause.js.map +1 -1
  25. package/dist/Channel.d.ts +130 -35
  26. package/dist/Channel.d.ts.map +1 -1
  27. package/dist/Channel.js +96 -45
  28. package/dist/Channel.js.map +1 -1
  29. package/dist/Chunk.d.ts +112 -304
  30. package/dist/Chunk.d.ts.map +1 -1
  31. package/dist/Chunk.js +56 -88
  32. package/dist/Chunk.js.map +1 -1
  33. package/dist/Combiner.d.ts +280 -13
  34. package/dist/Combiner.d.ts.map +1 -1
  35. package/dist/Combiner.js +198 -7
  36. package/dist/Combiner.js.map +1 -1
  37. package/dist/Config.d.ts +169 -9
  38. package/dist/Config.d.ts.map +1 -1
  39. package/dist/Config.js +69 -11
  40. package/dist/Config.js.map +1 -1
  41. package/dist/ConfigProvider.d.ts +1 -1
  42. package/dist/Cron.d.ts +11 -7
  43. package/dist/Cron.d.ts.map +1 -1
  44. package/dist/Cron.js +120 -63
  45. package/dist/Cron.js.map +1 -1
  46. package/dist/Data.d.ts +535 -366
  47. package/dist/Data.d.ts.map +1 -1
  48. package/dist/Data.js +132 -79
  49. package/dist/Data.js.map +1 -1
  50. package/dist/DateTime.d.ts +72 -253
  51. package/dist/DateTime.d.ts.map +1 -1
  52. package/dist/DateTime.js +15 -60
  53. package/dist/DateTime.js.map +1 -1
  54. package/dist/Deferred.d.ts +7 -5
  55. package/dist/Deferred.d.ts.map +1 -1
  56. package/dist/Deferred.js +7 -5
  57. package/dist/Deferred.js.map +1 -1
  58. package/dist/Duration.d.ts +62 -32
  59. package/dist/Duration.d.ts.map +1 -1
  60. package/dist/Duration.js +108 -78
  61. package/dist/Duration.js.map +1 -1
  62. package/dist/Effect.d.ts +1225 -951
  63. package/dist/Effect.d.ts.map +1 -1
  64. package/dist/Effect.js +398 -338
  65. package/dist/Effect.js.map +1 -1
  66. package/dist/Encoding.d.ts +194 -0
  67. package/dist/Encoding.d.ts.map +1 -0
  68. package/dist/Encoding.js +352 -0
  69. package/dist/Encoding.js.map +1 -0
  70. package/dist/Equal.d.ts +276 -109
  71. package/dist/Equal.d.ts.map +1 -1
  72. package/dist/Equal.js +124 -48
  73. package/dist/Equal.js.map +1 -1
  74. package/dist/Equivalence.d.ts +60 -3
  75. package/dist/Equivalence.d.ts.map +1 -1
  76. package/dist/Equivalence.js +70 -13
  77. package/dist/Equivalence.js.map +1 -1
  78. package/dist/ErrorReporter.d.ts +374 -0
  79. package/dist/ErrorReporter.d.ts.map +1 -0
  80. package/dist/ErrorReporter.js +245 -0
  81. package/dist/ErrorReporter.js.map +1 -0
  82. package/dist/Exit.d.ts +24 -12
  83. package/dist/Exit.d.ts.map +1 -1
  84. package/dist/Exit.js +8 -4
  85. package/dist/Exit.js.map +1 -1
  86. package/dist/Fiber.d.ts +5 -3
  87. package/dist/Fiber.d.ts.map +1 -1
  88. package/dist/Fiber.js.map +1 -1
  89. package/dist/FiberHandle.d.ts +9 -8
  90. package/dist/FiberHandle.d.ts.map +1 -1
  91. package/dist/FiberHandle.js +8 -7
  92. package/dist/FiberHandle.js.map +1 -1
  93. package/dist/FiberMap.d.ts +20 -19
  94. package/dist/FiberMap.d.ts.map +1 -1
  95. package/dist/FiberMap.js +6 -6
  96. package/dist/FiberMap.js.map +1 -1
  97. package/dist/FileSystem.d.ts +18 -17
  98. package/dist/FileSystem.d.ts.map +1 -1
  99. package/dist/FileSystem.js +17 -13
  100. package/dist/FileSystem.js.map +1 -1
  101. package/dist/Filter.d.ts +34 -38
  102. package/dist/Filter.d.ts.map +1 -1
  103. package/dist/Filter.js +15 -13
  104. package/dist/Filter.js.map +1 -1
  105. package/dist/Formatter.d.ts +131 -47
  106. package/dist/Formatter.d.ts.map +1 -1
  107. package/dist/Formatter.js +229 -51
  108. package/dist/Formatter.js.map +1 -1
  109. package/dist/Function.d.ts +1 -9
  110. package/dist/Function.d.ts.map +1 -1
  111. package/dist/Function.js +2 -10
  112. package/dist/Function.js.map +1 -1
  113. package/dist/Graph.d.ts +65 -65
  114. package/dist/Graph.d.ts.map +1 -1
  115. package/dist/Graph.js +60 -62
  116. package/dist/Graph.js.map +1 -1
  117. package/dist/HashMap.d.ts +26 -19
  118. package/dist/HashMap.d.ts.map +1 -1
  119. package/dist/HashMap.js +7 -5
  120. package/dist/HashMap.js.map +1 -1
  121. package/dist/Iterable.d.ts +50 -50
  122. package/dist/Iterable.d.ts.map +1 -1
  123. package/dist/Iterable.js +106 -34
  124. package/dist/Iterable.js.map +1 -1
  125. package/dist/JsonSchema.d.ts +299 -10
  126. package/dist/JsonSchema.d.ts.map +1 -1
  127. package/dist/JsonSchema.js +323 -4
  128. package/dist/JsonSchema.js.map +1 -1
  129. package/dist/Latch.d.ts +175 -0
  130. package/dist/Latch.d.ts.map +1 -0
  131. package/dist/Latch.js +130 -0
  132. package/dist/Latch.js.map +1 -0
  133. package/dist/Layer.d.ts +306 -129
  134. package/dist/Layer.d.ts.map +1 -1
  135. package/dist/Layer.js +93 -48
  136. package/dist/Layer.js.map +1 -1
  137. package/dist/LayerMap.d.ts +9 -8
  138. package/dist/LayerMap.d.ts.map +1 -1
  139. package/dist/LayerMap.js +3 -3
  140. package/dist/LayerMap.js.map +1 -1
  141. package/dist/LogLevel.d.ts +32 -0
  142. package/dist/LogLevel.d.ts.map +1 -1
  143. package/dist/LogLevel.js +28 -100
  144. package/dist/LogLevel.js.map +1 -1
  145. package/dist/Logger.d.ts +29 -95
  146. package/dist/Logger.d.ts.map +1 -1
  147. package/dist/Logger.js +2 -3
  148. package/dist/Logger.js.map +1 -1
  149. package/dist/ManagedRuntime.d.ts +2 -2
  150. package/dist/ManagedRuntime.d.ts.map +1 -1
  151. package/dist/ManagedRuntime.js +21 -9
  152. package/dist/ManagedRuntime.js.map +1 -1
  153. package/dist/Metric.d.ts +4 -6
  154. package/dist/Metric.d.ts.map +1 -1
  155. package/dist/Metric.js +3 -5
  156. package/dist/Metric.js.map +1 -1
  157. package/dist/MutableHashMap.d.ts +7 -0
  158. package/dist/MutableHashMap.d.ts.map +1 -1
  159. package/dist/MutableHashMap.js +8 -0
  160. package/dist/MutableHashMap.js.map +1 -1
  161. package/dist/MutableHashSet.d.ts +7 -0
  162. package/dist/MutableHashSet.d.ts.map +1 -1
  163. package/dist/MutableHashSet.js +8 -0
  164. package/dist/MutableHashSet.js.map +1 -1
  165. package/dist/Newtype.d.ts +291 -0
  166. package/dist/Newtype.d.ts.map +1 -0
  167. package/dist/Newtype.js +161 -0
  168. package/dist/Newtype.js.map +1 -0
  169. package/dist/Number.d.ts +74 -18
  170. package/dist/Number.d.ts.map +1 -1
  171. package/dist/Number.js +34 -15
  172. package/dist/Number.js.map +1 -1
  173. package/dist/Optic.d.ts +947 -18
  174. package/dist/Optic.d.ts.map +1 -1
  175. package/dist/Optic.js +454 -5
  176. package/dist/Optic.js.map +1 -1
  177. package/dist/Option.d.ts +25 -16
  178. package/dist/Option.d.ts.map +1 -1
  179. package/dist/Option.js +15 -9
  180. package/dist/Option.js.map +1 -1
  181. package/dist/Order.d.ts +6 -1
  182. package/dist/Order.d.ts.map +1 -1
  183. package/dist/Order.js +19 -14
  184. package/dist/Order.js.map +1 -1
  185. package/dist/PartitionedSemaphore.d.ts +146 -15
  186. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  187. package/dist/PartitionedSemaphore.js +174 -61
  188. package/dist/PartitionedSemaphore.js.map +1 -1
  189. package/dist/Pipeable.d.ts +17 -0
  190. package/dist/Pipeable.d.ts.map +1 -1
  191. package/dist/Pipeable.js +19 -1
  192. package/dist/Pipeable.js.map +1 -1
  193. package/dist/PlatformError.d.ts +10 -9
  194. package/dist/PlatformError.d.ts.map +1 -1
  195. package/dist/PlatformError.js +2 -2
  196. package/dist/PlatformError.js.map +1 -1
  197. package/dist/Pool.d.ts +6 -4
  198. package/dist/Pool.d.ts.map +1 -1
  199. package/dist/Pool.js +7 -5
  200. package/dist/Pool.js.map +1 -1
  201. package/dist/PubSub.d.ts +8 -6
  202. package/dist/PubSub.d.ts.map +1 -1
  203. package/dist/PubSub.js +18 -10
  204. package/dist/PubSub.js.map +1 -1
  205. package/dist/Pull.d.ts.map +1 -1
  206. package/dist/Pull.js +1 -1
  207. package/dist/Pull.js.map +1 -1
  208. package/dist/Queue.d.ts +9 -6
  209. package/dist/Queue.d.ts.map +1 -1
  210. package/dist/Queue.js +7 -5
  211. package/dist/Queue.js.map +1 -1
  212. package/dist/Random.d.ts +35 -1
  213. package/dist/Random.d.ts.map +1 -1
  214. package/dist/Random.js +46 -12
  215. package/dist/Random.js.map +1 -1
  216. package/dist/RcMap.d.ts +2 -2
  217. package/dist/RcMap.d.ts.map +1 -1
  218. package/dist/RcMap.js +1 -1
  219. package/dist/RcMap.js.map +1 -1
  220. package/dist/RcRef.d.ts +1 -1
  221. package/dist/RcRef.d.ts.map +1 -1
  222. package/dist/Record.d.ts +63 -160
  223. package/dist/Record.d.ts.map +1 -1
  224. package/dist/Record.js +37 -56
  225. package/dist/Record.js.map +1 -1
  226. package/dist/Reducer.d.ts +166 -7
  227. package/dist/Reducer.d.ts.map +1 -1
  228. package/dist/Reducer.js +135 -1
  229. package/dist/Reducer.js.map +1 -1
  230. package/dist/References.d.ts +242 -226
  231. package/dist/References.d.ts.map +1 -1
  232. package/dist/References.js +240 -247
  233. package/dist/References.js.map +1 -1
  234. package/dist/Request.d.ts +1 -1
  235. package/dist/Request.d.ts.map +1 -1
  236. package/dist/Request.js +2 -1
  237. package/dist/Request.js.map +1 -1
  238. package/dist/RequestResolver.d.ts +25 -45
  239. package/dist/RequestResolver.d.ts.map +1 -1
  240. package/dist/RequestResolver.js +10 -30
  241. package/dist/RequestResolver.js.map +1 -1
  242. package/dist/Resource.d.ts.map +1 -1
  243. package/dist/Resource.js +2 -1
  244. package/dist/Resource.js.map +1 -1
  245. package/dist/Result.d.ts +1 -1
  246. package/dist/Result.d.ts.map +1 -1
  247. package/dist/Result.js +1 -2
  248. package/dist/Result.js.map +1 -1
  249. package/dist/Runtime.d.ts +66 -0
  250. package/dist/Runtime.d.ts.map +1 -1
  251. package/dist/Runtime.js +79 -6
  252. package/dist/Runtime.js.map +1 -1
  253. package/dist/Schedule.d.ts +174 -291
  254. package/dist/Schedule.d.ts.map +1 -1
  255. package/dist/Schedule.js +160 -134
  256. package/dist/Schedule.js.map +1 -1
  257. package/dist/Scheduler.d.ts +34 -123
  258. package/dist/Scheduler.d.ts.map +1 -1
  259. package/dist/Scheduler.js +31 -123
  260. package/dist/Scheduler.js.map +1 -1
  261. package/dist/Schema.d.ts +2722 -247
  262. package/dist/Schema.d.ts.map +1 -1
  263. package/dist/Schema.js +1947 -224
  264. package/dist/Schema.js.map +1 -1
  265. package/dist/SchemaAST.d.ts +7 -2
  266. package/dist/SchemaAST.d.ts.map +1 -1
  267. package/dist/SchemaAST.js +131 -25
  268. package/dist/SchemaAST.js.map +1 -1
  269. package/dist/SchemaGetter.d.ts +5 -5
  270. package/dist/SchemaGetter.d.ts.map +1 -1
  271. package/dist/SchemaGetter.js +18 -18
  272. package/dist/SchemaGetter.js.map +1 -1
  273. package/dist/SchemaParser.d.ts +44 -54
  274. package/dist/SchemaParser.d.ts.map +1 -1
  275. package/dist/SchemaParser.js +55 -2
  276. package/dist/SchemaParser.js.map +1 -1
  277. package/dist/SchemaRepresentation.d.ts +46 -45
  278. package/dist/SchemaRepresentation.d.ts.map +1 -1
  279. package/dist/SchemaRepresentation.js +49 -24
  280. package/dist/SchemaRepresentation.js.map +1 -1
  281. package/dist/SchemaTransformation.d.ts +107 -3
  282. package/dist/SchemaTransformation.d.ts.map +1 -1
  283. package/dist/SchemaTransformation.js +173 -13
  284. package/dist/SchemaTransformation.js.map +1 -1
  285. package/dist/ScopedCache.d.ts +2 -2
  286. package/dist/ScopedCache.d.ts.map +1 -1
  287. package/dist/ScopedCache.js +1 -1
  288. package/dist/ScopedCache.js.map +1 -1
  289. package/dist/Semaphore.d.ts +307 -0
  290. package/dist/Semaphore.d.ts.map +1 -0
  291. package/dist/Semaphore.js +222 -0
  292. package/dist/Semaphore.js.map +1 -0
  293. package/dist/ServiceMap.d.ts +76 -52
  294. package/dist/ServiceMap.d.ts.map +1 -1
  295. package/dist/ServiceMap.js +45 -29
  296. package/dist/ServiceMap.js.map +1 -1
  297. package/dist/Sink.d.ts +18 -15
  298. package/dist/Sink.d.ts.map +1 -1
  299. package/dist/Sink.js +53 -6
  300. package/dist/Sink.js.map +1 -1
  301. package/dist/Stdio.d.ts +16 -4
  302. package/dist/Stdio.d.ts.map +1 -1
  303. package/dist/Stdio.js +18 -0
  304. package/dist/Stdio.js.map +1 -1
  305. package/dist/Stream.d.ts +284 -431
  306. package/dist/Stream.d.ts.map +1 -1
  307. package/dist/Stream.js +189 -88
  308. package/dist/Stream.js.map +1 -1
  309. package/dist/String.d.ts +114 -47
  310. package/dist/String.d.ts.map +1 -1
  311. package/dist/String.js +29 -47
  312. package/dist/String.js.map +1 -1
  313. package/dist/Struct.d.ts +23 -7
  314. package/dist/Struct.d.ts.map +1 -1
  315. package/dist/Struct.js +22 -0
  316. package/dist/Struct.js.map +1 -1
  317. package/dist/SubscriptionRef.d.ts +3 -3
  318. package/dist/SubscriptionRef.d.ts.map +1 -1
  319. package/dist/SubscriptionRef.js +85 -117
  320. package/dist/SubscriptionRef.js.map +1 -1
  321. package/dist/SynchronizedRef.d.ts +2 -1
  322. package/dist/SynchronizedRef.d.ts.map +1 -1
  323. package/dist/SynchronizedRef.js +2 -1
  324. package/dist/SynchronizedRef.js.map +1 -1
  325. package/dist/Terminal.d.ts +2 -1
  326. package/dist/Terminal.d.ts.map +1 -1
  327. package/dist/Terminal.js.map +1 -1
  328. package/dist/Tracer.d.ts +5 -4
  329. package/dist/Tracer.d.ts.map +1 -1
  330. package/dist/Tracer.js +2 -1
  331. package/dist/Tracer.js.map +1 -1
  332. package/dist/Trie.d.ts +44 -31
  333. package/dist/Trie.d.ts.map +1 -1
  334. package/dist/Trie.js +13 -9
  335. package/dist/Trie.js.map +1 -1
  336. package/dist/TxChunk.d.ts +37 -37
  337. package/dist/TxChunk.d.ts.map +1 -1
  338. package/dist/TxChunk.js +3 -3
  339. package/dist/TxChunk.js.map +1 -1
  340. package/dist/TxDeferred.d.ts +328 -0
  341. package/dist/TxDeferred.d.ts.map +1 -0
  342. package/dist/TxDeferred.js +197 -0
  343. package/dist/TxDeferred.js.map +1 -0
  344. package/dist/TxHashMap.d.ts +159 -140
  345. package/dist/TxHashMap.d.ts.map +1 -1
  346. package/dist/TxHashMap.js +51 -44
  347. package/dist/TxHashMap.js.map +1 -1
  348. package/dist/TxHashSet.d.ts +36 -36
  349. package/dist/TxHashSet.d.ts.map +1 -1
  350. package/dist/TxHashSet.js +16 -15
  351. package/dist/TxHashSet.js.map +1 -1
  352. package/dist/TxPriorityQueue.d.ts +609 -0
  353. package/dist/TxPriorityQueue.d.ts.map +1 -0
  354. package/dist/TxPriorityQueue.js +416 -0
  355. package/dist/TxPriorityQueue.js.map +1 -0
  356. package/dist/TxPubSub.d.ts +585 -0
  357. package/dist/TxPubSub.d.ts.map +1 -0
  358. package/dist/TxPubSub.js +521 -0
  359. package/dist/TxPubSub.js.map +1 -0
  360. package/dist/TxQueue.d.ts +32 -32
  361. package/dist/TxQueue.d.ts.map +1 -1
  362. package/dist/TxQueue.js +26 -26
  363. package/dist/TxQueue.js.map +1 -1
  364. package/dist/TxReentrantLock.d.ts +523 -0
  365. package/dist/TxReentrantLock.d.ts.map +1 -0
  366. package/dist/TxReentrantLock.js +504 -0
  367. package/dist/TxReentrantLock.js.map +1 -0
  368. package/dist/TxRef.d.ts +34 -34
  369. package/dist/TxRef.d.ts.map +1 -1
  370. package/dist/TxRef.js +21 -14
  371. package/dist/TxRef.js.map +1 -1
  372. package/dist/TxSemaphore.d.ts +170 -10
  373. package/dist/TxSemaphore.d.ts.map +1 -1
  374. package/dist/TxSemaphore.js +23 -8
  375. package/dist/TxSemaphore.js.map +1 -1
  376. package/dist/TxSubscriptionRef.d.ts +508 -0
  377. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  378. package/dist/TxSubscriptionRef.js +293 -0
  379. package/dist/TxSubscriptionRef.js.map +1 -0
  380. package/dist/Types.d.ts +80 -23
  381. package/dist/Types.d.ts.map +1 -1
  382. package/dist/Utils.d.ts +137 -65
  383. package/dist/Utils.d.ts.map +1 -1
  384. package/dist/Utils.js +38 -66
  385. package/dist/Utils.js.map +1 -1
  386. package/dist/index.d.ts +806 -55
  387. package/dist/index.d.ts.map +1 -1
  388. package/dist/index.js +806 -55
  389. package/dist/index.js.map +1 -1
  390. package/dist/internal/core.js +11 -3
  391. package/dist/internal/core.js.map +1 -1
  392. package/dist/internal/dateTime.js +77 -71
  393. package/dist/internal/dateTime.js.map +1 -1
  394. package/dist/internal/effect.js +284 -201
  395. package/dist/internal/effect.js.map +1 -1
  396. package/dist/internal/hashMap.js +7 -5
  397. package/dist/internal/hashMap.js.map +1 -1
  398. package/dist/internal/option.js +6 -0
  399. package/dist/internal/option.js.map +1 -1
  400. package/dist/internal/random.d.ts +2 -0
  401. package/dist/internal/random.d.ts.map +1 -0
  402. package/dist/internal/random.js +13 -0
  403. package/dist/internal/random.js.map +1 -0
  404. package/dist/internal/rcRef.js +3 -2
  405. package/dist/internal/rcRef.js.map +1 -1
  406. package/dist/internal/references.d.ts +2 -0
  407. package/dist/internal/references.d.ts.map +1 -0
  408. package/dist/internal/references.js +51 -0
  409. package/dist/internal/references.js.map +1 -0
  410. package/dist/internal/request.js +2 -2
  411. package/dist/internal/request.js.map +1 -1
  412. package/dist/internal/schema/annotations.js +2 -0
  413. package/dist/internal/schema/annotations.js.map +1 -1
  414. package/dist/internal/schema/representation.js +75 -106
  415. package/dist/internal/schema/representation.js.map +1 -1
  416. package/dist/internal/schema/schema.js +1 -0
  417. package/dist/internal/schema/schema.js.map +1 -1
  418. package/dist/internal/schema/to-codec.js +7 -10
  419. package/dist/internal/schema/to-codec.js.map +1 -1
  420. package/dist/internal/trie.js +8 -7
  421. package/dist/internal/trie.js.map +1 -1
  422. package/dist/testing/TestClock.d.ts +8 -7
  423. package/dist/testing/TestClock.d.ts.map +1 -1
  424. package/dist/testing/TestClock.js +6 -4
  425. package/dist/testing/TestClock.js.map +1 -1
  426. package/dist/testing/TestSchema.d.ts +266 -32
  427. package/dist/testing/TestSchema.d.ts.map +1 -1
  428. package/dist/testing/TestSchema.js +296 -23
  429. package/dist/testing/TestSchema.js.map +1 -1
  430. package/dist/testing/index.d.ts +64 -1
  431. package/dist/testing/index.d.ts.map +1 -1
  432. package/dist/testing/index.js +64 -1
  433. package/dist/testing/index.js.map +1 -1
  434. package/dist/unstable/ai/AiError.d.ts +136 -54
  435. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  436. package/dist/unstable/ai/AiError.js +28 -23
  437. package/dist/unstable/ai/AiError.js.map +1 -1
  438. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts.map +1 -1
  439. package/dist/unstable/ai/AnthropicStructuredOutput.js +4 -0
  440. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  441. package/dist/unstable/ai/Chat.d.ts +35 -7
  442. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  443. package/dist/unstable/ai/Chat.js +38 -44
  444. package/dist/unstable/ai/Chat.js.map +1 -1
  445. package/dist/unstable/ai/EmbeddingModel.d.ts +130 -0
  446. package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -0
  447. package/dist/unstable/ai/EmbeddingModel.js +127 -0
  448. package/dist/unstable/ai/EmbeddingModel.js.map +1 -0
  449. package/dist/unstable/ai/LanguageModel.d.ts +117 -47
  450. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  451. package/dist/unstable/ai/LanguageModel.js +258 -59
  452. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  453. package/dist/unstable/ai/McpSchema.d.ts +183 -88
  454. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  455. package/dist/unstable/ai/McpSchema.js +57 -12
  456. package/dist/unstable/ai/McpSchema.js.map +1 -1
  457. package/dist/unstable/ai/McpServer.d.ts +66 -13
  458. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  459. package/dist/unstable/ai/McpServer.js +193 -51
  460. package/dist/unstable/ai/McpServer.js.map +1 -1
  461. package/dist/unstable/ai/Model.d.ts +25 -7
  462. package/dist/unstable/ai/Model.d.ts.map +1 -1
  463. package/dist/unstable/ai/Model.js +22 -6
  464. package/dist/unstable/ai/Model.js.map +1 -1
  465. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts.map +1 -1
  466. package/dist/unstable/ai/OpenAiStructuredOutput.js +4 -0
  467. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  468. package/dist/unstable/ai/Prompt.d.ts +20 -20
  469. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  470. package/dist/unstable/ai/Response.d.ts +26 -26
  471. package/dist/unstable/ai/Response.d.ts.map +1 -1
  472. package/dist/unstable/ai/Response.js +1 -1
  473. package/dist/unstable/ai/Response.js.map +1 -1
  474. package/dist/unstable/ai/ResponseIdTracker.d.ts +38 -0
  475. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -0
  476. package/dist/unstable/ai/ResponseIdTracker.js +68 -0
  477. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -0
  478. package/dist/unstable/ai/Tool.d.ts +34 -4
  479. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  480. package/dist/unstable/ai/Tool.js +28 -10
  481. package/dist/unstable/ai/Tool.js.map +1 -1
  482. package/dist/unstable/ai/Toolkit.d.ts +1 -1
  483. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  484. package/dist/unstable/ai/Toolkit.js +4 -11
  485. package/dist/unstable/ai/Toolkit.js.map +1 -1
  486. package/dist/unstable/ai/index.d.ts +22 -1
  487. package/dist/unstable/ai/index.d.ts.map +1 -1
  488. package/dist/unstable/ai/index.js +22 -1
  489. package/dist/unstable/ai/index.js.map +1 -1
  490. package/dist/unstable/ai/internal/codec-transformer.js +0 -5
  491. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  492. package/dist/unstable/cli/Argument.d.ts +2 -4
  493. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  494. package/dist/unstable/cli/Argument.js +1 -3
  495. package/dist/unstable/cli/Argument.js.map +1 -1
  496. package/dist/unstable/cli/CliError.d.ts +27 -60
  497. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  498. package/dist/unstable/cli/CliError.js +25 -57
  499. package/dist/unstable/cli/CliError.js.map +1 -1
  500. package/dist/unstable/cli/CliOutput.d.ts +3 -2
  501. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  502. package/dist/unstable/cli/CliOutput.js +65 -10
  503. package/dist/unstable/cli/CliOutput.js.map +1 -1
  504. package/dist/unstable/cli/Command.d.ts +371 -58
  505. package/dist/unstable/cli/Command.d.ts.map +1 -1
  506. package/dist/unstable/cli/Command.js +328 -67
  507. package/dist/unstable/cli/Command.js.map +1 -1
  508. package/dist/unstable/cli/Completions.d.ts +16 -0
  509. package/dist/unstable/cli/Completions.d.ts.map +1 -0
  510. package/dist/unstable/cli/Completions.js +23 -0
  511. package/dist/unstable/cli/Completions.js.map +1 -0
  512. package/dist/unstable/cli/Flag.d.ts +2 -2
  513. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  514. package/dist/unstable/cli/Flag.js +1 -1
  515. package/dist/unstable/cli/Flag.js.map +1 -1
  516. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  517. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  518. package/dist/unstable/cli/GlobalFlag.js +118 -0
  519. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  520. package/dist/unstable/cli/HelpDoc.d.ts +81 -11
  521. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  522. package/dist/unstable/cli/Param.d.ts +4 -4
  523. package/dist/unstable/cli/Param.d.ts.map +1 -1
  524. package/dist/unstable/cli/Param.js +7 -7
  525. package/dist/unstable/cli/Param.js.map +1 -1
  526. package/dist/unstable/cli/Primitive.d.ts +2 -2
  527. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  528. package/dist/unstable/cli/Primitive.js +1 -1
  529. package/dist/unstable/cli/Primitive.js.map +1 -1
  530. package/dist/unstable/cli/Prompt.js +259 -85
  531. package/dist/unstable/cli/Prompt.js.map +1 -1
  532. package/dist/unstable/cli/index.d.ts +8 -0
  533. package/dist/unstable/cli/index.d.ts.map +1 -1
  534. package/dist/unstable/cli/index.js +8 -0
  535. package/dist/unstable/cli/index.js.map +1 -1
  536. package/dist/unstable/cli/internal/command.d.ts +40 -14
  537. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  538. package/dist/unstable/cli/internal/command.js +72 -46
  539. package/dist/unstable/cli/internal/command.js.map +1 -1
  540. package/dist/unstable/cli/internal/completions/CommandDescriptor.js +16 -4
  541. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
  542. package/dist/unstable/cli/internal/config.js +42 -0
  543. package/dist/unstable/cli/internal/config.js.map +1 -1
  544. package/dist/unstable/cli/internal/help.d.ts +33 -0
  545. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  546. package/dist/unstable/cli/internal/help.js +125 -0
  547. package/dist/unstable/cli/internal/help.js.map +1 -0
  548. package/dist/unstable/cli/internal/parser.js +61 -43
  549. package/dist/unstable/cli/internal/parser.js.map +1 -1
  550. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  551. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  552. package/dist/unstable/cluster/ClusterCron.js +1 -1
  553. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  554. package/dist/unstable/cluster/ClusterSchema.d.ts +18 -0
  555. package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
  556. package/dist/unstable/cluster/ClusterSchema.js +21 -1
  557. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  558. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +3 -2
  559. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  560. package/dist/unstable/cluster/ClusterWorkflowEngine.js +35 -29
  561. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  562. package/dist/unstable/cluster/DeliverAt.js +1 -1
  563. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  564. package/dist/unstable/cluster/Entity.d.ts +10 -8
  565. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  566. package/dist/unstable/cluster/Entity.js +8 -7
  567. package/dist/unstable/cluster/Entity.js.map +1 -1
  568. package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
  569. package/dist/unstable/cluster/EntityAddress.js +1 -1
  570. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  571. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  572. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  573. package/dist/unstable/cluster/Envelope.d.ts +1 -1
  574. package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
  575. package/dist/unstable/cluster/K8sHttpClient.js +4 -4
  576. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  577. package/dist/unstable/cluster/Message.d.ts +18 -15
  578. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  579. package/dist/unstable/cluster/Message.js +15 -7
  580. package/dist/unstable/cluster/Message.js.map +1 -1
  581. package/dist/unstable/cluster/MessageStorage.d.ts +33 -10
  582. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  583. package/dist/unstable/cluster/MessageStorage.js +36 -20
  584. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  585. package/dist/unstable/cluster/Reply.d.ts +8 -7
  586. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  587. package/dist/unstable/cluster/Reply.js +4 -3
  588. package/dist/unstable/cluster/Reply.js.map +1 -1
  589. package/dist/unstable/cluster/Runner.d.ts +1 -1
  590. package/dist/unstable/cluster/Runner.d.ts.map +1 -1
  591. package/dist/unstable/cluster/Runner.js +1 -1
  592. package/dist/unstable/cluster/Runner.js.map +1 -1
  593. package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
  594. package/dist/unstable/cluster/RunnerAddress.js +1 -1
  595. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  596. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  597. package/dist/unstable/cluster/RunnerServer.js +9 -8
  598. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  599. package/dist/unstable/cluster/Runners.d.ts +2 -1
  600. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  601. package/dist/unstable/cluster/Runners.js +11 -9
  602. package/dist/unstable/cluster/Runners.js.map +1 -1
  603. package/dist/unstable/cluster/ShardId.js +3 -3
  604. package/dist/unstable/cluster/ShardId.js.map +1 -1
  605. package/dist/unstable/cluster/Sharding.d.ts +2 -2
  606. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  607. package/dist/unstable/cluster/Sharding.js +51 -39
  608. package/dist/unstable/cluster/Sharding.js.map +1 -1
  609. package/dist/unstable/cluster/ShardingConfig.d.ts +26 -25
  610. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  611. package/dist/unstable/cluster/ShardingConfig.js +24 -24
  612. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  613. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  614. package/dist/unstable/cluster/SqlMessageStorage.js +25 -19
  615. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  616. package/dist/unstable/cluster/SqlRunnerStorage.js +1 -1
  617. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  618. package/dist/unstable/cluster/internal/entityManager.js +24 -18
  619. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  620. package/dist/unstable/cluster/internal/entityReaper.js +2 -1
  621. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  622. package/dist/unstable/cluster/internal/resourceRef.js +2 -1
  623. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  624. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  625. package/dist/unstable/devtools/DevToolsClient.js +4 -3
  626. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  627. package/dist/unstable/devtools/DevToolsSchema.d.ts +40 -40
  628. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  629. package/dist/unstable/devtools/DevToolsSchema.js +9 -2
  630. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  631. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  632. package/dist/unstable/encoding/Ndjson.d.ts +9 -9
  633. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  634. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  635. package/dist/unstable/encoding/Sse.d.ts +4 -4
  636. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  637. package/dist/unstable/encoding/Sse.js +1 -1
  638. package/dist/unstable/encoding/Sse.js.map +1 -1
  639. package/dist/unstable/eventlog/EventJournal.d.ts +2 -2
  640. package/dist/unstable/eventlog/EventJournal.js +2 -2
  641. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  642. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  643. package/dist/unstable/eventlog/EventLog.js +3 -2
  644. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  645. package/dist/unstable/eventlog/EventLogRemote.d.ts +6 -6
  646. package/dist/unstable/eventlog/SqlEventLogJournal.js +2 -2
  647. package/dist/unstable/eventlog/SqlEventLogJournal.js.map +1 -1
  648. package/dist/unstable/http/Cookies.d.ts +52 -7
  649. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  650. package/dist/unstable/http/Cookies.js +27 -6
  651. package/dist/unstable/http/Cookies.js.map +1 -1
  652. package/dist/unstable/http/Etag.d.ts.map +1 -1
  653. package/dist/unstable/http/Etag.js +5 -1
  654. package/dist/unstable/http/Etag.js.map +1 -1
  655. package/dist/unstable/http/Headers.d.ts +19 -2
  656. package/dist/unstable/http/Headers.d.ts.map +1 -1
  657. package/dist/unstable/http/Headers.js +40 -11
  658. package/dist/unstable/http/Headers.js.map +1 -1
  659. package/dist/unstable/http/HttpBody.d.ts +1 -1
  660. package/dist/unstable/http/HttpClient.d.ts +117 -15
  661. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  662. package/dist/unstable/http/HttpClient.js +191 -13
  663. package/dist/unstable/http/HttpClient.js.map +1 -1
  664. package/dist/unstable/http/HttpClientError.d.ts +7 -7
  665. package/dist/unstable/http/HttpClientRequest.d.ts +43 -15
  666. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  667. package/dist/unstable/http/HttpClientRequest.js +131 -21
  668. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  669. package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
  670. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  671. package/dist/unstable/http/HttpClientResponse.js +6 -1
  672. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  673. package/dist/unstable/http/HttpEffect.d.ts +7 -5
  674. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  675. package/dist/unstable/http/HttpEffect.js +46 -54
  676. package/dist/unstable/http/HttpEffect.js.map +1 -1
  677. package/dist/unstable/http/HttpIncomingMessage.d.ts +3 -2
  678. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  679. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  680. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  681. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  682. package/dist/unstable/http/HttpMethod.js +3 -3
  683. package/dist/unstable/http/HttpMethod.js.map +1 -1
  684. package/dist/unstable/http/HttpMiddleware.d.ts +1 -6
  685. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  686. package/dist/unstable/http/HttpMiddleware.js +24 -32
  687. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  688. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  689. package/dist/unstable/http/HttpPlatform.js +3 -2
  690. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  691. package/dist/unstable/http/HttpRouter.d.ts +2 -1
  692. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  693. package/dist/unstable/http/HttpRouter.js +7 -7
  694. package/dist/unstable/http/HttpRouter.js.map +1 -1
  695. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  696. package/dist/unstable/http/HttpServer.js +2 -2
  697. package/dist/unstable/http/HttpServer.js.map +1 -1
  698. package/dist/unstable/http/HttpServerError.d.ts +22 -34
  699. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  700. package/dist/unstable/http/HttpServerError.js +39 -45
  701. package/dist/unstable/http/HttpServerError.js.map +1 -1
  702. package/dist/unstable/http/HttpServerRequest.d.ts +15 -3
  703. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  704. package/dist/unstable/http/HttpServerRequest.js +301 -7
  705. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  706. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  707. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  708. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  709. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  710. package/dist/unstable/http/HttpServerResponse.d.ts +50 -3
  711. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  712. package/dist/unstable/http/HttpServerResponse.js +236 -1
  713. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  714. package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
  715. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
  716. package/dist/unstable/http/HttpStaticServer.js +353 -0
  717. package/dist/unstable/http/HttpStaticServer.js.map +1 -0
  718. package/dist/unstable/http/HttpTraceContext.d.ts +3 -2
  719. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  720. package/dist/unstable/http/HttpTraceContext.js +27 -15
  721. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  722. package/dist/unstable/http/Multipart.d.ts +3 -3
  723. package/dist/unstable/http/Url.d.ts +604 -0
  724. package/dist/unstable/http/Url.d.ts.map +1 -0
  725. package/dist/unstable/http/Url.js +256 -0
  726. package/dist/unstable/http/Url.js.map +1 -0
  727. package/dist/unstable/http/UrlParams.d.ts +19 -10
  728. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  729. package/dist/unstable/http/UrlParams.js +6 -7
  730. package/dist/unstable/http/UrlParams.js.map +1 -1
  731. package/dist/unstable/http/index.d.ts +8 -0
  732. package/dist/unstable/http/index.d.ts.map +1 -1
  733. package/dist/unstable/http/index.js +8 -0
  734. package/dist/unstable/http/index.js.map +1 -1
  735. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  736. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  737. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  738. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  739. package/dist/unstable/httpapi/HttpApi.d.ts +4 -4
  740. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  741. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  742. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +11 -5
  743. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  744. package/dist/unstable/httpapi/HttpApiBuilder.js +40 -27
  745. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  746. package/dist/unstable/httpapi/HttpApiClient.d.ts +83 -7
  747. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  748. package/dist/unstable/httpapi/HttpApiClient.js +78 -10
  749. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  750. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +207 -101
  751. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  752. package/dist/unstable/httpapi/HttpApiEndpoint.js +49 -43
  753. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  754. package/dist/unstable/httpapi/HttpApiError.d.ts +31 -14
  755. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  756. package/dist/unstable/httpapi/HttpApiError.js +125 -32
  757. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  758. package/dist/unstable/httpapi/HttpApiGroup.d.ts +4 -3
  759. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  760. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  761. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +46 -15
  762. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  763. package/dist/unstable/httpapi/HttpApiMiddleware.js +32 -3
  764. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  765. package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
  766. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  767. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  768. package/dist/unstable/httpapi/HttpApiSchema.d.ts +6 -3
  769. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  770. package/dist/unstable/httpapi/HttpApiSchema.js +20 -2
  771. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  772. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +2 -2
  773. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  774. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  775. package/dist/unstable/httpapi/OpenApi.d.ts +1 -0
  776. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  777. package/dist/unstable/httpapi/OpenApi.js +34 -26
  778. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  779. package/dist/unstable/observability/Otlp.d.ts +12 -12
  780. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  781. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  782. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  783. package/dist/unstable/observability/OtlpExporter.js +3 -3
  784. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  785. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  786. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  787. package/dist/unstable/observability/OtlpLogger.js +7 -4
  788. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  789. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  790. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  791. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  792. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  793. package/dist/unstable/observability/OtlpTracer.js +7 -3
  794. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  795. package/dist/unstable/persistence/KeyValueStore.d.ts +1 -1
  796. package/dist/unstable/persistence/KeyValueStore.js +6 -6
  797. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  798. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  799. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  800. package/dist/unstable/persistence/Persistable.js +1 -1
  801. package/dist/unstable/persistence/Persistable.js.map +1 -1
  802. package/dist/unstable/persistence/PersistedCache.d.ts +6 -5
  803. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  804. package/dist/unstable/persistence/PersistedCache.js +2 -1
  805. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  806. package/dist/unstable/persistence/PersistedQueue.d.ts +12 -12
  807. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  808. package/dist/unstable/persistence/PersistedQueue.js +12 -11
  809. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  810. package/dist/unstable/persistence/Persistence.d.ts +1 -1
  811. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  812. package/dist/unstable/persistence/Persistence.js +2 -2
  813. package/dist/unstable/persistence/Persistence.js.map +1 -1
  814. package/dist/unstable/persistence/RateLimiter.d.ts +3 -3
  815. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  816. package/dist/unstable/persistence/RateLimiter.js +1 -1
  817. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  818. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  819. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  820. package/dist/unstable/process/ChildProcess.js +1 -65
  821. package/dist/unstable/process/ChildProcess.js.map +1 -1
  822. package/dist/unstable/process/ChildProcessSpawner.d.ts +45 -7
  823. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  824. package/dist/unstable/process/ChildProcessSpawner.js +21 -1
  825. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  826. package/dist/unstable/reactivity/Atom.d.ts +73 -12
  827. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  828. package/dist/unstable/reactivity/Atom.js +108 -25
  829. package/dist/unstable/reactivity/Atom.js.map +1 -1
  830. package/dist/unstable/reactivity/AtomHttpApi.d.ts +17 -15
  831. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  832. package/dist/unstable/reactivity/AtomHttpApi.js +45 -15
  833. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  834. package/dist/unstable/reactivity/AtomRegistry.d.ts +6 -0
  835. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  836. package/dist/unstable/reactivity/AtomRegistry.js +54 -11
  837. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  838. package/dist/unstable/reactivity/AtomRpc.d.ts +9 -9
  839. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  840. package/dist/unstable/reactivity/AtomRpc.js +47 -21
  841. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  842. package/dist/unstable/reactivity/Hydration.d.ts +39 -0
  843. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -0
  844. package/dist/unstable/reactivity/Hydration.js +76 -0
  845. package/dist/unstable/reactivity/Hydration.js.map +1 -0
  846. package/dist/unstable/reactivity/index.d.ts +4 -0
  847. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  848. package/dist/unstable/reactivity/index.js +4 -0
  849. package/dist/unstable/reactivity/index.js.map +1 -1
  850. package/dist/unstable/rpc/Rpc.d.ts +6 -5
  851. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  852. package/dist/unstable/rpc/Rpc.js +4 -3
  853. package/dist/unstable/rpc/Rpc.js.map +1 -1
  854. package/dist/unstable/rpc/RpcClient.d.ts +5 -26
  855. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  856. package/dist/unstable/rpc/RpcClient.js +53 -43
  857. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  858. package/dist/unstable/rpc/RpcGroup.d.ts +3 -5
  859. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  860. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  861. package/dist/unstable/rpc/RpcMiddleware.d.ts +8 -8
  862. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  863. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  864. package/dist/unstable/rpc/RpcSchema.d.ts +13 -0
  865. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  866. package/dist/unstable/rpc/RpcSchema.js +17 -2
  867. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  868. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  869. package/dist/unstable/rpc/RpcSerialization.js +39 -11
  870. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  871. package/dist/unstable/rpc/RpcServer.d.ts +6 -10
  872. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  873. package/dist/unstable/rpc/RpcServer.js +20 -19
  874. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  875. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  876. package/dist/unstable/rpc/Utils.js +3 -2
  877. package/dist/unstable/rpc/Utils.js.map +1 -1
  878. package/dist/unstable/schema/Model.d.ts +22 -1
  879. package/dist/unstable/schema/Model.d.ts.map +1 -1
  880. package/dist/unstable/schema/Model.js +15 -0
  881. package/dist/unstable/schema/Model.js.map +1 -1
  882. package/dist/unstable/schema/VariantSchema.d.ts +6 -6
  883. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  884. package/dist/unstable/schema/VariantSchema.js +6 -6
  885. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  886. package/dist/unstable/socket/Socket.d.ts +6 -5
  887. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  888. package/dist/unstable/socket/Socket.js +12 -9
  889. package/dist/unstable/socket/Socket.js.map +1 -1
  890. package/dist/unstable/socket/SocketServer.d.ts +3 -3
  891. package/dist/unstable/sql/Migrator.d.ts +1 -1
  892. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  893. package/dist/unstable/sql/Migrator.js +2 -2
  894. package/dist/unstable/sql/Migrator.js.map +1 -1
  895. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  896. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  897. package/dist/unstable/sql/SqlClient.js +1 -1
  898. package/dist/unstable/sql/SqlClient.js.map +1 -1
  899. package/dist/unstable/sql/SqlError.d.ts +237 -17
  900. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  901. package/dist/unstable/sql/SqlError.js +260 -4
  902. package/dist/unstable/sql/SqlError.js.map +1 -1
  903. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  904. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  905. package/dist/unstable/sql/SqlModel.js +3 -3
  906. package/dist/unstable/sql/SqlModel.js.map +1 -1
  907. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  908. package/dist/unstable/sql/SqlResolver.js +17 -8
  909. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  910. package/dist/unstable/sql/SqlSchema.d.ts +17 -6
  911. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  912. package/dist/unstable/sql/SqlSchema.js +17 -7
  913. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  914. package/dist/unstable/sql/Statement.js +0 -1
  915. package/dist/unstable/sql/Statement.js.map +1 -1
  916. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  917. package/dist/unstable/workers/Worker.js +2 -1
  918. package/dist/unstable/workers/Worker.js.map +1 -1
  919. package/dist/unstable/workflow/Activity.d.ts +5 -0
  920. package/dist/unstable/workflow/Activity.d.ts.map +1 -1
  921. package/dist/unstable/workflow/Activity.js +13 -0
  922. package/dist/unstable/workflow/Activity.js.map +1 -1
  923. package/dist/unstable/workflow/DurableClock.d.ts +3 -3
  924. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  925. package/dist/unstable/workflow/DurableClock.js +3 -3
  926. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  927. package/dist/unstable/workflow/DurableDeferred.js +8 -8
  928. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  929. package/dist/unstable/workflow/Workflow.d.ts +5 -4
  930. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  931. package/dist/unstable/workflow/Workflow.js +1 -1
  932. package/dist/unstable/workflow/Workflow.js.map +1 -1
  933. package/dist/unstable/workflow/WorkflowEngine.d.ts +17 -5
  934. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  935. package/dist/unstable/workflow/WorkflowEngine.js +153 -12
  936. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  937. package/package.json +2 -2
  938. package/src/Array.ts +304 -447
  939. package/src/BigDecimal.ts +117 -66
  940. package/src/BigInt.ts +49 -41
  941. package/src/Brand.ts +1 -1
  942. package/src/Cache.ts +9 -8
  943. package/src/Cause.ts +37 -2
  944. package/src/Channel.ts +582 -154
  945. package/src/Chunk.ts +149 -331
  946. package/src/Combiner.ts +280 -13
  947. package/src/Config.ts +195 -25
  948. package/src/Cron.ts +155 -63
  949. package/src/Data.ts +539 -376
  950. package/src/DateTime.ts +75 -256
  951. package/src/Deferred.ts +8 -6
  952. package/src/Duration.ts +122 -66
  953. package/src/Effect.ts +1484 -1157
  954. package/src/Encoding.ts +879 -0
  955. package/src/Equal.ts +278 -111
  956. package/src/Equivalence.ts +114 -52
  957. package/src/ErrorReporter.ts +458 -0
  958. package/src/Exit.ts +24 -12
  959. package/src/Fiber.ts +12 -3
  960. package/src/FiberHandle.ts +10 -9
  961. package/src/FiberMap.ts +22 -22
  962. package/src/FileSystem.ts +34 -31
  963. package/src/Filter.ts +52 -63
  964. package/src/Formatter.ts +253 -51
  965. package/src/Function.ts +2 -10
  966. package/src/Graph.ts +131 -117
  967. package/src/HashMap.ts +26 -19
  968. package/src/Iterable.ts +117 -63
  969. package/src/JsonSchema.ts +383 -10
  970. package/src/Latch.ts +194 -0
  971. package/src/Layer.ts +394 -160
  972. package/src/LayerMap.ts +11 -9
  973. package/src/LogLevel.ts +37 -0
  974. package/src/Logger.ts +33 -100
  975. package/src/ManagedRuntime.ts +35 -22
  976. package/src/Metric.ts +6 -8
  977. package/src/MutableHashMap.ts +9 -0
  978. package/src/MutableHashSet.ts +9 -0
  979. package/src/Newtype.ts +308 -0
  980. package/src/Number.ts +85 -26
  981. package/src/Optic.ts +948 -19
  982. package/src/Option.ts +34 -24
  983. package/src/Order.ts +39 -32
  984. package/src/PartitionedSemaphore.ts +288 -56
  985. package/src/Pipeable.ts +32 -1
  986. package/src/PlatformError.ts +5 -5
  987. package/src/Pool.ts +13 -11
  988. package/src/PubSub.ts +30 -20
  989. package/src/Pull.ts +1 -1
  990. package/src/Queue.ts +11 -9
  991. package/src/Random.ts +51 -14
  992. package/src/RcMap.ts +5 -5
  993. package/src/RcRef.ts +1 -1
  994. package/src/Record.ts +94 -199
  995. package/src/Reducer.ts +166 -7
  996. package/src/References.ts +283 -287
  997. package/src/Request.ts +3 -2
  998. package/src/RequestResolver.ts +29 -49
  999. package/src/Resource.ts +2 -1
  1000. package/src/Result.ts +2 -4
  1001. package/src/Runtime.ts +102 -6
  1002. package/src/Schedule.ts +458 -449
  1003. package/src/Scheduler.ts +49 -126
  1004. package/src/Schema.ts +3298 -392
  1005. package/src/SchemaAST.ts +172 -33
  1006. package/src/SchemaGetter.ts +19 -21
  1007. package/src/SchemaParser.ts +92 -27
  1008. package/src/SchemaRepresentation.ts +51 -26
  1009. package/src/SchemaTransformation.ts +198 -13
  1010. package/src/ScopedCache.ts +3 -3
  1011. package/src/Semaphore.ts +444 -0
  1012. package/src/ServiceMap.ts +144 -97
  1013. package/src/Sink.ts +83 -28
  1014. package/src/Stdio.ts +27 -4
  1015. package/src/Stream.ts +687 -617
  1016. package/src/String.ts +122 -69
  1017. package/src/Struct.ts +33 -7
  1018. package/src/SubscriptionRef.ts +101 -120
  1019. package/src/SynchronizedRef.ts +3 -2
  1020. package/src/Terminal.ts +2 -1
  1021. package/src/Tracer.ts +6 -5
  1022. package/src/Trie.ts +44 -31
  1023. package/src/TxChunk.ts +72 -53
  1024. package/src/TxDeferred.ts +394 -0
  1025. package/src/TxHashMap.ts +409 -343
  1026. package/src/TxHashSet.ts +113 -118
  1027. package/src/TxPriorityQueue.ts +766 -0
  1028. package/src/TxPubSub.ts +789 -0
  1029. package/src/TxQueue.ts +241 -251
  1030. package/src/TxReentrantLock.ts +753 -0
  1031. package/src/TxRef.ts +50 -38
  1032. package/src/TxSemaphore.ts +217 -44
  1033. package/src/TxSubscriptionRef.ts +639 -0
  1034. package/src/Types.ts +73 -19
  1035. package/src/Utils.ts +137 -111
  1036. package/src/index.ts +816 -56
  1037. package/src/internal/core.ts +12 -5
  1038. package/src/internal/dateTime.ts +91 -96
  1039. package/src/internal/effect.ts +844 -432
  1040. package/src/internal/hashMap.ts +12 -10
  1041. package/src/internal/option.ts +7 -0
  1042. package/src/internal/random.ts +20 -0
  1043. package/src/internal/rcRef.ts +4 -3
  1044. package/src/internal/references.ts +72 -0
  1045. package/src/internal/request.ts +2 -2
  1046. package/src/internal/schema/annotations.ts +2 -0
  1047. package/src/internal/schema/representation.ts +73 -94
  1048. package/src/internal/schema/schema.ts +1 -0
  1049. package/src/internal/schema/to-codec.ts +7 -17
  1050. package/src/internal/trie.ts +21 -15
  1051. package/src/testing/TestClock.ts +13 -11
  1052. package/src/testing/TestSchema.ts +332 -35
  1053. package/src/testing/index.ts +64 -1
  1054. package/src/unstable/ai/AiError.ts +111 -54
  1055. package/src/unstable/ai/AnthropicStructuredOutput.ts +4 -0
  1056. package/src/unstable/ai/Chat.ts +134 -85
  1057. package/src/unstable/ai/EmbeddingModel.ts +209 -0
  1058. package/src/unstable/ai/LanguageModel.ts +683 -253
  1059. package/src/unstable/ai/McpSchema.ts +73 -13
  1060. package/src/unstable/ai/McpServer.ts +271 -61
  1061. package/src/unstable/ai/Model.ts +40 -9
  1062. package/src/unstable/ai/OpenAiStructuredOutput.ts +4 -0
  1063. package/src/unstable/ai/Prompt.ts +37 -37
  1064. package/src/unstable/ai/Response.ts +25 -25
  1065. package/src/unstable/ai/ResponseIdTracker.ts +97 -0
  1066. package/src/unstable/ai/Tool.ts +42 -16
  1067. package/src/unstable/ai/Toolkit.ts +5 -14
  1068. package/src/unstable/ai/index.ts +24 -1
  1069. package/src/unstable/ai/internal/codec-transformer.ts +0 -7
  1070. package/src/unstable/cli/Argument.ts +2 -4
  1071. package/src/unstable/cli/CliError.ts +47 -59
  1072. package/src/unstable/cli/CliOutput.ts +85 -13
  1073. package/src/unstable/cli/Command.ts +801 -192
  1074. package/src/unstable/cli/Completions.ts +36 -0
  1075. package/src/unstable/cli/Flag.ts +2 -2
  1076. package/src/unstable/cli/GlobalFlag.ts +242 -0
  1077. package/src/unstable/cli/HelpDoc.ts +91 -11
  1078. package/src/unstable/cli/Param.ts +15 -11
  1079. package/src/unstable/cli/Primitive.ts +2 -2
  1080. package/src/unstable/cli/Prompt.ts +265 -101
  1081. package/src/unstable/cli/index.ts +10 -0
  1082. package/src/unstable/cli/internal/command.ts +109 -63
  1083. package/src/unstable/cli/internal/completions/CommandDescriptor.ts +10 -4
  1084. package/src/unstable/cli/internal/config.ts +49 -0
  1085. package/src/unstable/cli/internal/help.ts +171 -0
  1086. package/src/unstable/cli/internal/parser.ts +71 -63
  1087. package/src/unstable/cluster/ClusterCron.ts +2 -2
  1088. package/src/unstable/cluster/ClusterSchema.ts +29 -1
  1089. package/src/unstable/cluster/ClusterWorkflowEngine.ts +62 -37
  1090. package/src/unstable/cluster/DeliverAt.ts +1 -1
  1091. package/src/unstable/cluster/Entity.ts +25 -22
  1092. package/src/unstable/cluster/EntityAddress.ts +1 -1
  1093. package/src/unstable/cluster/EntityResource.ts +4 -4
  1094. package/src/unstable/cluster/Envelope.ts +1 -1
  1095. package/src/unstable/cluster/K8sHttpClient.ts +5 -5
  1096. package/src/unstable/cluster/Message.ts +28 -15
  1097. package/src/unstable/cluster/MessageStorage.ts +66 -36
  1098. package/src/unstable/cluster/Reply.ts +7 -4
  1099. package/src/unstable/cluster/Runner.ts +1 -1
  1100. package/src/unstable/cluster/RunnerAddress.ts +1 -1
  1101. package/src/unstable/cluster/RunnerServer.ts +10 -13
  1102. package/src/unstable/cluster/Runners.ts +14 -12
  1103. package/src/unstable/cluster/ShardId.ts +2 -2
  1104. package/src/unstable/cluster/Sharding.ts +66 -49
  1105. package/src/unstable/cluster/ShardingConfig.ts +36 -37
  1106. package/src/unstable/cluster/SqlMessageStorage.ts +31 -19
  1107. package/src/unstable/cluster/SqlRunnerStorage.ts +1 -1
  1108. package/src/unstable/cluster/internal/entityManager.ts +50 -34
  1109. package/src/unstable/cluster/internal/entityReaper.ts +2 -1
  1110. package/src/unstable/cluster/internal/resourceRef.ts +2 -1
  1111. package/src/unstable/devtools/DevToolsClient.ts +23 -18
  1112. package/src/unstable/devtools/DevToolsSchema.ts +16 -3
  1113. package/src/unstable/encoding/Ndjson.ts +17 -17
  1114. package/src/unstable/encoding/Sse.ts +3 -5
  1115. package/src/unstable/eventlog/EventJournal.ts +2 -2
  1116. package/src/unstable/eventlog/EventLog.ts +3 -2
  1117. package/src/unstable/eventlog/SqlEventLogJournal.ts +2 -2
  1118. package/src/unstable/http/Cookies.ts +94 -11
  1119. package/src/unstable/http/Etag.ts +5 -3
  1120. package/src/unstable/http/Headers.ts +68 -18
  1121. package/src/unstable/http/HttpClient.ts +376 -34
  1122. package/src/unstable/http/HttpClientRequest.ts +151 -39
  1123. package/src/unstable/http/HttpClientResponse.ts +12 -6
  1124. package/src/unstable/http/HttpEffect.ts +54 -68
  1125. package/src/unstable/http/HttpIncomingMessage.ts +3 -2
  1126. package/src/unstable/http/HttpMethod.ts +16 -4
  1127. package/src/unstable/http/HttpMiddleware.ts +25 -39
  1128. package/src/unstable/http/HttpPlatform.ts +3 -2
  1129. package/src/unstable/http/HttpRouter.ts +9 -9
  1130. package/src/unstable/http/HttpServer.ts +3 -9
  1131. package/src/unstable/http/HttpServerError.ts +45 -47
  1132. package/src/unstable/http/HttpServerRequest.ts +407 -16
  1133. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  1134. package/src/unstable/http/HttpServerResponse.ts +345 -7
  1135. package/src/unstable/http/HttpStaticServer.ts +456 -0
  1136. package/src/unstable/http/HttpTraceContext.ts +31 -17
  1137. package/src/unstable/http/Multipart.ts +2 -2
  1138. package/src/unstable/http/Url.ts +650 -0
  1139. package/src/unstable/http/UrlParams.ts +31 -19
  1140. package/src/unstable/http/index.ts +10 -0
  1141. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  1142. package/src/unstable/httpapi/HttpApi.ts +6 -6
  1143. package/src/unstable/httpapi/HttpApiBuilder.ts +106 -41
  1144. package/src/unstable/httpapi/HttpApiClient.ts +180 -28
  1145. package/src/unstable/httpapi/HttpApiEndpoint.ts +216 -104
  1146. package/src/unstable/httpapi/HttpApiError.ts +108 -30
  1147. package/src/unstable/httpapi/HttpApiGroup.ts +7 -6
  1148. package/src/unstable/httpapi/HttpApiMiddleware.ts +83 -22
  1149. package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
  1150. package/src/unstable/httpapi/HttpApiSchema.ts +21 -3
  1151. package/src/unstable/httpapi/HttpApiSecurity.ts +3 -3
  1152. package/src/unstable/httpapi/OpenApi.ts +44 -29
  1153. package/src/unstable/observability/Otlp.ts +12 -12
  1154. package/src/unstable/observability/OtlpExporter.ts +8 -5
  1155. package/src/unstable/observability/OtlpLogger.ts +13 -9
  1156. package/src/unstable/observability/OtlpMetrics.ts +4 -4
  1157. package/src/unstable/observability/OtlpTracer.ts +12 -8
  1158. package/src/unstable/persistence/KeyValueStore.ts +6 -6
  1159. package/src/unstable/persistence/Persistable.ts +3 -3
  1160. package/src/unstable/persistence/PersistedCache.ts +20 -9
  1161. package/src/unstable/persistence/PersistedQueue.ts +25 -24
  1162. package/src/unstable/persistence/Persistence.ts +3 -3
  1163. package/src/unstable/persistence/RateLimiter.ts +4 -4
  1164. package/src/unstable/process/ChildProcess.ts +6 -208
  1165. package/src/unstable/process/ChildProcessSpawner.ts +75 -14
  1166. package/src/unstable/reactivity/Atom.ts +212 -54
  1167. package/src/unstable/reactivity/AtomHttpApi.ts +81 -41
  1168. package/src/unstable/reactivity/AtomRegistry.ts +66 -12
  1169. package/src/unstable/reactivity/AtomRpc.ts +51 -20
  1170. package/src/unstable/reactivity/Hydration.ts +112 -0
  1171. package/src/unstable/reactivity/index.ts +5 -0
  1172. package/src/unstable/rpc/Rpc.ts +12 -12
  1173. package/src/unstable/rpc/RpcClient.ts +67 -96
  1174. package/src/unstable/rpc/RpcGroup.ts +7 -7
  1175. package/src/unstable/rpc/RpcMiddleware.ts +15 -9
  1176. package/src/unstable/rpc/RpcSchema.ts +23 -5
  1177. package/src/unstable/rpc/RpcSerialization.ts +49 -11
  1178. package/src/unstable/rpc/RpcServer.ts +31 -35
  1179. package/src/unstable/rpc/Utils.ts +3 -2
  1180. package/src/unstable/schema/Model.ts +31 -0
  1181. package/src/unstable/schema/VariantSchema.ts +10 -10
  1182. package/src/unstable/socket/Socket.ts +31 -27
  1183. package/src/unstable/sql/Migrator.ts +7 -5
  1184. package/src/unstable/sql/SqlClient.ts +6 -4
  1185. package/src/unstable/sql/SqlError.ts +365 -11
  1186. package/src/unstable/sql/SqlModel.ts +5 -5
  1187. package/src/unstable/sql/SqlResolver.ts +17 -7
  1188. package/src/unstable/sql/SqlSchema.ts +42 -26
  1189. package/src/unstable/sql/Statement.ts +0 -1
  1190. package/src/unstable/workers/Worker.ts +2 -1
  1191. package/src/unstable/workflow/Activity.ts +23 -0
  1192. package/src/unstable/workflow/DurableClock.ts +8 -8
  1193. package/src/unstable/workflow/DurableDeferred.ts +8 -8
  1194. package/src/unstable/workflow/Workflow.ts +7 -3
  1195. package/src/unstable/workflow/WorkflowEngine.ts +211 -19
  1196. package/dist/NullOr.d.ts +0 -149
  1197. package/dist/NullOr.d.ts.map +0 -1
  1198. package/dist/NullOr.js +0 -152
  1199. package/dist/NullOr.js.map +0 -1
  1200. package/dist/encoding/Base64.d.ts +0 -67
  1201. package/dist/encoding/Base64.d.ts.map +0 -1
  1202. package/dist/encoding/Base64.js +0 -146
  1203. package/dist/encoding/Base64.js.map +0 -1
  1204. package/dist/encoding/Base64Url.d.ts +0 -60
  1205. package/dist/encoding/Base64Url.d.ts.map +0 -1
  1206. package/dist/encoding/Base64Url.js +0 -89
  1207. package/dist/encoding/Base64Url.js.map +0 -1
  1208. package/dist/encoding/EncodingError.d.ts +0 -31
  1209. package/dist/encoding/EncodingError.d.ts.map +0 -1
  1210. package/dist/encoding/EncodingError.js +0 -22
  1211. package/dist/encoding/EncodingError.js.map +0 -1
  1212. package/dist/encoding/Hex.d.ts +0 -61
  1213. package/dist/encoding/Hex.d.ts.map +0 -1
  1214. package/dist/encoding/Hex.js +0 -115
  1215. package/dist/encoding/Hex.js.map +0 -1
  1216. package/dist/encoding/index.d.ts +0 -26
  1217. package/dist/encoding/index.d.ts.map +0 -1
  1218. package/dist/encoding/index.js +0 -27
  1219. package/dist/encoding/index.js.map +0 -1
  1220. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  1221. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  1222. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  1223. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  1224. package/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
  1225. package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
  1226. package/dist/unstable/cli/internal/completions/Completions.js +0 -23
  1227. package/dist/unstable/cli/internal/completions/Completions.js.map +0 -1
  1228. package/src/NullOr.ts +0 -204
  1229. package/src/encoding/Base64.ts +0 -366
  1230. package/src/encoding/Base64Url.ts +0 -104
  1231. package/src/encoding/EncodingError.ts +0 -35
  1232. package/src/encoding/Hex.ts +0 -390
  1233. package/src/encoding/index.ts +0 -31
  1234. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
  1235. package/src/unstable/cli/internal/completions/Completions.ts +0 -31
package/src/Chunk.ts CHANGED
@@ -72,6 +72,7 @@ import * as RA from "./Array.ts"
72
72
  import type { NonEmptyReadonlyArray } from "./Array.ts"
73
73
  import * as Equal from "./Equal.ts"
74
74
  import * as Equivalence from "./Equivalence.ts"
75
+ import type * as Filter from "./Filter.ts"
75
76
  import { format } from "./Formatter.ts"
76
77
  import { dual, identity, pipe } from "./Function.ts"
77
78
  import * as Hash from "./Hash.ts"
@@ -84,9 +85,9 @@ import * as Order from "./Order.ts"
84
85
  import type { Pipeable } from "./Pipeable.ts"
85
86
  import { pipeArguments } from "./Pipeable.ts"
86
87
  import { hasProperty, type Predicate, type Refinement } from "./Predicate.ts"
88
+ import * as R from "./Result.ts"
87
89
  import type { Result } from "./Result.ts"
88
90
  import type { Covariant, NoInfer } from "./Types.ts"
89
- import * as UndefinedOr from "./UndefinedOr.ts"
90
91
 
91
92
  const TypeId = "~effect/collections/Chunk"
92
93
 
@@ -1515,19 +1516,19 @@ export const appendAll: {
1515
1516
  * @example
1516
1517
  * ```ts
1517
1518
  * import { Chunk } from "effect"
1518
- * import * as Option from "effect/Option"
1519
+ * import * as Result from "effect/Result"
1519
1520
  *
1520
1521
  * const chunk = Chunk.make("1", "2", "hello", "3", "world")
1521
1522
  * const numbers = Chunk.filterMap(chunk, (str) => {
1522
1523
  * const num = parseInt(str)
1523
- * return isNaN(num) ? Option.none() : Option.some(num)
1524
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1524
1525
  * })
1525
1526
  * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
1526
1527
  *
1527
1528
  * // With index parameter
1528
1529
  * const evenIndexNumbers = Chunk.filterMap(chunk, (str, i) => {
1529
1530
  * const num = parseInt(str)
1530
- * return isNaN(num) || i % 2 !== 0 ? Option.none() : Option.some(num)
1531
+ * return isNaN(num) || i % 2 !== 0 ? Result.failVoid : Result.succeed(num)
1531
1532
  * })
1532
1533
  * console.log(Chunk.toArray(evenIndexNumbers)) // [1]
1533
1534
  * ```
@@ -1542,19 +1543,19 @@ export const filterMap: {
1542
1543
  * @example
1543
1544
  * ```ts
1544
1545
  * import { Chunk } from "effect"
1545
- * import * as Option from "effect/Option"
1546
+ * import * as Result from "effect/Result"
1546
1547
  *
1547
1548
  * const chunk = Chunk.make("1", "2", "hello", "3", "world")
1548
1549
  * const numbers = Chunk.filterMap(chunk, (str) => {
1549
1550
  * const num = parseInt(str)
1550
- * return isNaN(num) ? Option.none() : Option.some(num)
1551
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1551
1552
  * })
1552
1553
  * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
1553
1554
  *
1554
1555
  * // With index parameter
1555
1556
  * const evenIndexNumbers = Chunk.filterMap(chunk, (str, i) => {
1556
1557
  * const num = parseInt(str)
1557
- * return isNaN(num) || i % 2 !== 0 ? Option.none() : Option.some(num)
1558
+ * return isNaN(num) || i % 2 !== 0 ? Result.failVoid : Result.succeed(num)
1558
1559
  * })
1559
1560
  * console.log(Chunk.toArray(evenIndexNumbers)) // [1]
1560
1561
  * ```
@@ -1562,26 +1563,26 @@ export const filterMap: {
1562
1563
  * @since 2.0.0
1563
1564
  * @category filtering
1564
1565
  */
1565
- <A, B>(f: (a: A, i: number) => Option<B>): (self: Chunk<A>) => Chunk<B>
1566
+ <A, B, X>(f: (input: A, i: number) => Result<B, X>): (self: Chunk<A>) => Chunk<B>
1566
1567
  /**
1567
1568
  * Returns a filtered and mapped subset of the elements.
1568
1569
  *
1569
1570
  * @example
1570
1571
  * ```ts
1571
1572
  * import { Chunk } from "effect"
1572
- * import * as Option from "effect/Option"
1573
+ * import * as Result from "effect/Result"
1573
1574
  *
1574
1575
  * const chunk = Chunk.make("1", "2", "hello", "3", "world")
1575
1576
  * const numbers = Chunk.filterMap(chunk, (str) => {
1576
1577
  * const num = parseInt(str)
1577
- * return isNaN(num) ? Option.none() : Option.some(num)
1578
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1578
1579
  * })
1579
1580
  * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
1580
1581
  *
1581
1582
  * // With index parameter
1582
1583
  * const evenIndexNumbers = Chunk.filterMap(chunk, (str, i) => {
1583
1584
  * const num = parseInt(str)
1584
- * return isNaN(num) || i % 2 !== 0 ? Option.none() : Option.some(num)
1585
+ * return isNaN(num) || i % 2 !== 0 ? Result.failVoid : Result.succeed(num)
1585
1586
  * })
1586
1587
  * console.log(Chunk.toArray(evenIndexNumbers)) // [1]
1587
1588
  * ```
@@ -1589,16 +1590,16 @@ export const filterMap: {
1589
1590
  * @since 2.0.0
1590
1591
  * @category filtering
1591
1592
  */
1592
- <A, B>(self: Chunk<A>, f: (a: A, i: number) => Option<B>): Chunk<B>
1593
+ <A, B, X>(self: Chunk<A>, f: (input: A, i: number) => Result<B, X>): Chunk<B>
1593
1594
  } = dual(
1594
1595
  2,
1595
- <A, B>(self: Chunk<A>, f: (a: A, i: number) => Option<B>): Chunk<B> => {
1596
+ <A, B, X>(self: Chunk<A>, f: (input: A, i: number) => Result<B, X>): Chunk<B> => {
1596
1597
  const as = RA.fromIterable(self)
1597
1598
  const out: Array<B> = []
1598
1599
  for (let i = 0; i < as.length; i++) {
1599
- const o = f(as[i], i)
1600
- if (O.isSome(o)) {
1601
- out.push(o.value)
1600
+ const result = f(as[i], i)
1601
+ if (R.isSuccess(result)) {
1602
+ out.push(result.success)
1602
1603
  }
1603
1604
  }
1604
1605
  return fromArrayUnsafe(out)
@@ -1716,17 +1717,17 @@ export const filter: {
1716
1717
  )
1717
1718
 
1718
1719
  /**
1719
- * Transforms all elements of the chunk for as long as the specified function returns some value
1720
+ * Transforms all elements of the chunk for as long as the specified function succeeds.
1720
1721
  *
1721
1722
  * @example
1722
1723
  * ```ts
1723
1724
  * import { Chunk } from "effect"
1724
- * import * as Option from "effect/Option"
1725
+ * import * as Result from "effect/Result"
1725
1726
  *
1726
1727
  * const chunk = Chunk.make("1", "2", "hello", "3", "4")
1727
1728
  * const result = Chunk.filterMapWhile(chunk, (s) => {
1728
1729
  * const num = parseInt(s)
1729
- * return isNaN(num) ? Option.none() : Option.some(num)
1730
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1730
1731
  * })
1731
1732
  * console.log(Chunk.toArray(result)) // [1, 2]
1732
1733
  * // Stops at "hello" and doesn't process "3", "4"
@@ -1734,7 +1735,7 @@ export const filter: {
1734
1735
  * // Compare with regular filterMap
1735
1736
  * const allNumbers = Chunk.filterMap(chunk, (s) => {
1736
1737
  * const num = parseInt(s)
1737
- * return isNaN(num) ? Option.none() : Option.some(num)
1738
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1738
1739
  * })
1739
1740
  * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3, 4]
1740
1741
  * ```
@@ -1744,17 +1745,17 @@ export const filter: {
1744
1745
  */
1745
1746
  export const filterMapWhile: {
1746
1747
  /**
1747
- * Transforms all elements of the chunk for as long as the specified function returns some value
1748
+ * Transforms all elements of the chunk for as long as the specified function succeeds.
1748
1749
  *
1749
1750
  * @example
1750
1751
  * ```ts
1751
1752
  * import { Chunk } from "effect"
1752
- * import * as Option from "effect/Option"
1753
+ * import * as Result from "effect/Result"
1753
1754
  *
1754
1755
  * const chunk = Chunk.make("1", "2", "hello", "3", "4")
1755
1756
  * const result = Chunk.filterMapWhile(chunk, (s) => {
1756
1757
  * const num = parseInt(s)
1757
- * return isNaN(num) ? Option.none() : Option.some(num)
1758
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1758
1759
  * })
1759
1760
  * console.log(Chunk.toArray(result)) // [1, 2]
1760
1761
  * // Stops at "hello" and doesn't process "3", "4"
@@ -1762,7 +1763,7 @@ export const filterMapWhile: {
1762
1763
  * // Compare with regular filterMap
1763
1764
  * const allNumbers = Chunk.filterMap(chunk, (s) => {
1764
1765
  * const num = parseInt(s)
1765
- * return isNaN(num) ? Option.none() : Option.some(num)
1766
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1766
1767
  * })
1767
1768
  * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3, 4]
1768
1769
  * ```
@@ -1770,19 +1771,19 @@ export const filterMapWhile: {
1770
1771
  * @since 2.0.0
1771
1772
  * @category filtering
1772
1773
  */
1773
- <A, B>(f: (a: A) => Option<B>): (self: Chunk<A>) => Chunk<B>
1774
+ <A, B, X>(f: Filter.Filter<A, B, X>): (self: Chunk<A>) => Chunk<B>
1774
1775
  /**
1775
- * Transforms all elements of the chunk for as long as the specified function returns some value
1776
+ * Transforms all elements of the chunk for as long as the specified function succeeds.
1776
1777
  *
1777
1778
  * @example
1778
1779
  * ```ts
1779
1780
  * import { Chunk } from "effect"
1780
- * import * as Option from "effect/Option"
1781
+ * import * as Result from "effect/Result"
1781
1782
  *
1782
1783
  * const chunk = Chunk.make("1", "2", "hello", "3", "4")
1783
1784
  * const result = Chunk.filterMapWhile(chunk, (s) => {
1784
1785
  * const num = parseInt(s)
1785
- * return isNaN(num) ? Option.none() : Option.some(num)
1786
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1786
1787
  * })
1787
1788
  * console.log(Chunk.toArray(result)) // [1, 2]
1788
1789
  * // Stops at "hello" and doesn't process "3", "4"
@@ -1790,7 +1791,7 @@ export const filterMapWhile: {
1790
1791
  * // Compare with regular filterMap
1791
1792
  * const allNumbers = Chunk.filterMap(chunk, (s) => {
1792
1793
  * const num = parseInt(s)
1793
- * return isNaN(num) ? Option.none() : Option.some(num)
1794
+ * return isNaN(num) ? Result.failVoid : Result.succeed(num)
1794
1795
  * })
1795
1796
  * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3, 4]
1796
1797
  * ```
@@ -1798,13 +1799,13 @@ export const filterMapWhile: {
1798
1799
  * @since 2.0.0
1799
1800
  * @category filtering
1800
1801
  */
1801
- <A, B>(self: Chunk<A>, f: (a: A) => Option<B>): Chunk<B>
1802
- } = dual(2, <A, B>(self: Chunk<A>, f: (a: A) => Option<B>): Chunk<B> => {
1802
+ <A, B, X>(self: Chunk<A>, f: Filter.Filter<A, B, X>): Chunk<B>
1803
+ } = dual(2, <A, B, X>(self: Chunk<A>, f: Filter.Filter<A, B, X>): Chunk<B> => {
1803
1804
  const out: Array<B> = []
1804
1805
  for (const a of self) {
1805
- const b = f(a)
1806
- if (O.isSome(b)) {
1807
- out.push(b.value)
1806
+ const result = f(a)
1807
+ if (R.isSuccess(result)) {
1808
+ out.push(result.success)
1808
1809
  } else {
1809
1810
  break
1810
1811
  }
@@ -1829,7 +1830,15 @@ export const filterMapWhile: {
1829
1830
  * @category filtering
1830
1831
  * @since 2.0.0
1831
1832
  */
1832
- export const compact = <A>(self: Chunk<Option<A>>): Chunk<A> => filterMap(self, identity)
1833
+ export const compact = <A>(self: Chunk<Option<A>>): Chunk<A> => {
1834
+ const out: Array<A> = []
1835
+ for (const option of self) {
1836
+ if (O.isSome(option)) {
1837
+ out.push(option.value)
1838
+ }
1839
+ }
1840
+ return fromArrayUnsafe(out)
1841
+ }
1833
1842
 
1834
1843
  /**
1835
1844
  * Applies a function to each element in a chunk and returns a new chunk containing the concatenated mapped elements.
@@ -2769,31 +2778,21 @@ export const mapAccum: {
2769
2778
  })
2770
2779
 
2771
2780
  /**
2772
- * Separate elements based on a predicate that also exposes the index of the element.
2781
+ * Splits a chunk using a `Filter` into failures and successes.
2782
+ *
2783
+ * - Returns `[excluded, satisfying]`.
2784
+ * - The filter receives `(element, index)`.
2773
2785
  *
2774
2786
  * @example
2775
2787
  * ```ts
2776
- * import { Chunk } from "effect"
2788
+ * import { Chunk, Result } from "effect"
2777
2789
  *
2778
- * const chunk = Chunk.make(1, 2, 3, 4, 5, 6)
2779
- * const [odds, evens] = Chunk.partition(chunk, (n) => n % 2 === 0)
2780
- * console.log(Chunk.toArray(odds)) // [1, 3, 5]
2781
- * console.log(Chunk.toArray(evens)) // [2, 4, 6]
2782
- *
2783
- * // With index parameter
2784
- * const words = Chunk.make("a", "bb", "ccc", "dddd")
2785
- * const [short, long] = Chunk.partition(words, (word, i) => word.length > i)
2786
- * console.log(Chunk.toArray(short)) // ["a", "bb"]
2787
- * console.log(Chunk.toArray(long)) // ["ccc", "dddd"]
2788
- *
2789
- * // With refinement
2790
- * const mixed = Chunk.make("hello", 42, "world", 100)
2791
- * const [strings, numbers] = Chunk.partition(
2792
- * mixed,
2793
- * (x): x is number => typeof x === "number"
2790
+ * const [excluded, satisfying] = Chunk.partition(Chunk.make(1, -2, 3), (n, i) =>
2791
+ * n > 0 ? Result.succeed(n + i) : Result.fail(`negative:${n}`)
2794
2792
  * )
2795
- * console.log(Chunk.toArray(strings)) // ["hello", "world"]
2796
- * console.log(Chunk.toArray(numbers)) // [42, 100]
2793
+ *
2794
+ * console.log(Chunk.toArray(excluded)) // ["negative:-2"]
2795
+ * console.log(Chunk.toArray(satisfying)) // [1, 5]
2797
2796
  * ```
2798
2797
  *
2799
2798
  * @category filtering
@@ -2801,247 +2800,60 @@ export const mapAccum: {
2801
2800
  */
2802
2801
  export const partition: {
2803
2802
  /**
2804
- * Separate elements based on a predicate that also exposes the index of the element.
2805
- *
2806
- * @example
2807
- * ```ts
2808
- * import { Chunk } from "effect"
2809
- *
2810
- * const chunk = Chunk.make(1, 2, 3, 4, 5, 6)
2811
- * const [odds, evens] = Chunk.partition(chunk, (n) => n % 2 === 0)
2812
- * console.log(Chunk.toArray(odds)) // [1, 3, 5]
2813
- * console.log(Chunk.toArray(evens)) // [2, 4, 6]
2814
- *
2815
- * // With index parameter
2816
- * const words = Chunk.make("a", "bb", "ccc", "dddd")
2817
- * const [short, long] = Chunk.partition(words, (word, i) => word.length > i)
2818
- * console.log(Chunk.toArray(short)) // ["a", "bb"]
2819
- * console.log(Chunk.toArray(long)) // ["ccc", "dddd"]
2820
- *
2821
- * // With refinement
2822
- * const mixed = Chunk.make("hello", 42, "world", 100)
2823
- * const [strings, numbers] = Chunk.partition(
2824
- * mixed,
2825
- * (x): x is number => typeof x === "number"
2826
- * )
2827
- * console.log(Chunk.toArray(strings)) // ["hello", "world"]
2828
- * console.log(Chunk.toArray(numbers)) // [42, 100]
2829
- * ```
2803
+ * Splits a chunk using a `Filter` into failures and successes.
2830
2804
  *
2831
- * @category filtering
2832
- * @since 2.0.0
2833
- */
2834
- <A, B extends A>(refinement: (a: NoInfer<A>, i: number) => a is B): (self: Chunk<A>) => [excluded: Chunk<Exclude<A, B>>, satisfying: Chunk<B>]
2835
- /**
2836
- * Separate elements based on a predicate that also exposes the index of the element.
2805
+ * - Returns `[excluded, satisfying]`.
2806
+ * - The filter receives `(element, index)`.
2837
2807
  *
2838
2808
  * @example
2839
2809
  * ```ts
2840
- * import { Chunk } from "effect"
2810
+ * import { Chunk, Result } from "effect"
2841
2811
  *
2842
- * const chunk = Chunk.make(1, 2, 3, 4, 5, 6)
2843
- * const [odds, evens] = Chunk.partition(chunk, (n) => n % 2 === 0)
2844
- * console.log(Chunk.toArray(odds)) // [1, 3, 5]
2845
- * console.log(Chunk.toArray(evens)) // [2, 4, 6]
2846
- *
2847
- * // With index parameter
2848
- * const words = Chunk.make("a", "bb", "ccc", "dddd")
2849
- * const [short, long] = Chunk.partition(words, (word, i) => word.length > i)
2850
- * console.log(Chunk.toArray(short)) // ["a", "bb"]
2851
- * console.log(Chunk.toArray(long)) // ["ccc", "dddd"]
2852
- *
2853
- * // With refinement
2854
- * const mixed = Chunk.make("hello", 42, "world", 100)
2855
- * const [strings, numbers] = Chunk.partition(
2856
- * mixed,
2857
- * (x): x is number => typeof x === "number"
2812
+ * const [excluded, satisfying] = Chunk.partition(Chunk.make(1, -2, 3), (n, i) =>
2813
+ * n > 0 ? Result.succeed(n + i) : Result.fail(`negative:${n}`)
2858
2814
  * )
2859
- * console.log(Chunk.toArray(strings)) // ["hello", "world"]
2860
- * console.log(Chunk.toArray(numbers)) // [42, 100]
2861
- * ```
2862
2815
  *
2863
- * @category filtering
2864
- * @since 2.0.0
2865
- */
2866
- <A>(predicate: (a: NoInfer<A>, i: number) => boolean): (self: Chunk<A>) => [excluded: Chunk<A>, satisfying: Chunk<A>]
2867
- /**
2868
- * Separate elements based on a predicate that also exposes the index of the element.
2869
- *
2870
- * @example
2871
- * ```ts
2872
- * import { Chunk } from "effect"
2873
- *
2874
- * const chunk = Chunk.make(1, 2, 3, 4, 5, 6)
2875
- * const [odds, evens] = Chunk.partition(chunk, (n) => n % 2 === 0)
2876
- * console.log(Chunk.toArray(odds)) // [1, 3, 5]
2877
- * console.log(Chunk.toArray(evens)) // [2, 4, 6]
2878
- *
2879
- * // With index parameter
2880
- * const words = Chunk.make("a", "bb", "ccc", "dddd")
2881
- * const [short, long] = Chunk.partition(words, (word, i) => word.length > i)
2882
- * console.log(Chunk.toArray(short)) // ["a", "bb"]
2883
- * console.log(Chunk.toArray(long)) // ["ccc", "dddd"]
2884
- *
2885
- * // With refinement
2886
- * const mixed = Chunk.make("hello", 42, "world", 100)
2887
- * const [strings, numbers] = Chunk.partition(
2888
- * mixed,
2889
- * (x): x is number => typeof x === "number"
2890
- * )
2891
- * console.log(Chunk.toArray(strings)) // ["hello", "world"]
2892
- * console.log(Chunk.toArray(numbers)) // [42, 100]
2816
+ * console.log(Chunk.toArray(excluded)) // ["negative:-2"]
2817
+ * console.log(Chunk.toArray(satisfying)) // [1, 5]
2893
2818
  * ```
2894
2819
  *
2895
2820
  * @category filtering
2896
2821
  * @since 2.0.0
2897
2822
  */
2898
- <A, B extends A>(self: Chunk<A>, refinement: (a: A, i: number) => a is B): [excluded: Chunk<Exclude<A, B>>, satisfying: Chunk<B>]
2823
+ <A, Pass, Fail>(f: (input: NoInfer<A>, i: number) => Result<Pass, Fail>): (self: Chunk<A>) => [excluded: Chunk<Fail>, satisfying: Chunk<Pass>]
2899
2824
  /**
2900
- * Separate elements based on a predicate that also exposes the index of the element.
2825
+ * Splits a chunk using a `Filter` into failures and successes.
2826
+ *
2827
+ * - Returns `[excluded, satisfying]`.
2828
+ * - The filter receives `(element, index)`.
2901
2829
  *
2902
2830
  * @example
2903
2831
  * ```ts
2904
- * import { Chunk } from "effect"
2905
- *
2906
- * const chunk = Chunk.make(1, 2, 3, 4, 5, 6)
2907
- * const [odds, evens] = Chunk.partition(chunk, (n) => n % 2 === 0)
2908
- * console.log(Chunk.toArray(odds)) // [1, 3, 5]
2909
- * console.log(Chunk.toArray(evens)) // [2, 4, 6]
2910
- *
2911
- * // With index parameter
2912
- * const words = Chunk.make("a", "bb", "ccc", "dddd")
2913
- * const [short, long] = Chunk.partition(words, (word, i) => word.length > i)
2914
- * console.log(Chunk.toArray(short)) // ["a", "bb"]
2915
- * console.log(Chunk.toArray(long)) // ["ccc", "dddd"]
2832
+ * import { Chunk, Result } from "effect"
2916
2833
  *
2917
- * // With refinement
2918
- * const mixed = Chunk.make("hello", 42, "world", 100)
2919
- * const [strings, numbers] = Chunk.partition(
2920
- * mixed,
2921
- * (x): x is number => typeof x === "number"
2834
+ * const [excluded, satisfying] = Chunk.partition(Chunk.make(1, -2, 3), (n, i) =>
2835
+ * n > 0 ? Result.succeed(n + i) : Result.fail(`negative:${n}`)
2922
2836
  * )
2923
- * console.log(Chunk.toArray(strings)) // ["hello", "world"]
2924
- * console.log(Chunk.toArray(numbers)) // [42, 100]
2837
+ *
2838
+ * console.log(Chunk.toArray(excluded)) // ["negative:-2"]
2839
+ * console.log(Chunk.toArray(satisfying)) // [1, 5]
2925
2840
  * ```
2926
2841
  *
2927
2842
  * @category filtering
2928
2843
  * @since 2.0.0
2929
2844
  */
2930
- <A>(self: Chunk<A>, predicate: (a: A, i: number) => boolean): [excluded: Chunk<A>, satisfying: Chunk<A>]
2845
+ <A, Pass, Fail>(self: Chunk<A>, f: (input: A, i: number) => Result<Pass, Fail>): [excluded: Chunk<Fail>, satisfying: Chunk<Pass>]
2931
2846
  } = dual(
2932
2847
  2,
2933
- <A>(self: Chunk<A>, predicate: (a: A, i: number) => boolean): [excluded: Chunk<A>, satisfying: Chunk<A>] =>
2934
- pipe(
2935
- RA.partition(toReadonlyArray(self), predicate),
2936
- ([l, r]) => [fromArrayUnsafe(l), fromArrayUnsafe(r)]
2937
- )
2848
+ <A, Pass, Fail>(
2849
+ self: Chunk<A>,
2850
+ f: (input: A, i: number) => Result<Pass, Fail>
2851
+ ): [excluded: Chunk<Fail>, satisfying: Chunk<Pass>] => {
2852
+ const [excluded, satisfying] = RA.partition(self, f)
2853
+ return [fromArrayUnsafe(excluded), fromArrayUnsafe(satisfying)]
2854
+ }
2938
2855
  )
2939
2856
 
2940
- /**
2941
- * Partitions the elements of this chunk into two chunks using f.
2942
- *
2943
- * @example
2944
- * ```ts
2945
- * import { Chunk } from "effect"
2946
- * import * as Result from "effect/Result"
2947
- *
2948
- * const chunk = Chunk.make("1", "hello", "2", "world", "3")
2949
- * const [errors, numbers] = Chunk.partitionMap(chunk, (str) => {
2950
- * const num = parseInt(str)
2951
- * return isNaN(num)
2952
- * ? Result.fail(`"${str}" is not a number`)
2953
- * : Result.succeed(num)
2954
- * })
2955
- *
2956
- * console.log(Chunk.toArray(errors)) // ['"hello" is not a number', '"world" is not a number']
2957
- * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
2958
- *
2959
- * // All successes
2960
- * const validNumbers = Chunk.make("1", "2", "3")
2961
- * const [noErrors, allNumbers] = Chunk.partitionMap(
2962
- * validNumbers,
2963
- * (str) => Result.succeed(parseInt(str))
2964
- * )
2965
- * console.log(Chunk.toArray(noErrors)) // []
2966
- * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3]
2967
- * ```
2968
- *
2969
- * @category filtering
2970
- * @since 2.0.0
2971
- */
2972
- export const partitionMap: {
2973
- /**
2974
- * Partitions the elements of this chunk into two chunks using f.
2975
- *
2976
- * @example
2977
- * ```ts
2978
- * import { Chunk } from "effect"
2979
- * import * as Result from "effect/Result"
2980
- *
2981
- * const chunk = Chunk.make("1", "hello", "2", "world", "3")
2982
- * const [errors, numbers] = Chunk.partitionMap(chunk, (str) => {
2983
- * const num = parseInt(str)
2984
- * return isNaN(num)
2985
- * ? Result.fail(`"${str}" is not a number`)
2986
- * : Result.succeed(num)
2987
- * })
2988
- *
2989
- * console.log(Chunk.toArray(errors)) // ['"hello" is not a number', '"world" is not a number']
2990
- * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
2991
- *
2992
- * // All successes
2993
- * const validNumbers = Chunk.make("1", "2", "3")
2994
- * const [noErrors, allNumbers] = Chunk.partitionMap(
2995
- * validNumbers,
2996
- * (str) => Result.succeed(parseInt(str))
2997
- * )
2998
- * console.log(Chunk.toArray(noErrors)) // []
2999
- * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3]
3000
- * ```
3001
- *
3002
- * @category filtering
3003
- * @since 2.0.0
3004
- */
3005
- <A, B, C>(f: (a: A) => Result<C, B>): (self: Chunk<A>) => [left: Chunk<B>, right: Chunk<C>]
3006
- /**
3007
- * Partitions the elements of this chunk into two chunks using f.
3008
- *
3009
- * @example
3010
- * ```ts
3011
- * import { Chunk } from "effect"
3012
- * import * as Result from "effect/Result"
3013
- *
3014
- * const chunk = Chunk.make("1", "hello", "2", "world", "3")
3015
- * const [errors, numbers] = Chunk.partitionMap(chunk, (str) => {
3016
- * const num = parseInt(str)
3017
- * return isNaN(num)
3018
- * ? Result.fail(`"${str}" is not a number`)
3019
- * : Result.succeed(num)
3020
- * })
3021
- *
3022
- * console.log(Chunk.toArray(errors)) // ['"hello" is not a number', '"world" is not a number']
3023
- * console.log(Chunk.toArray(numbers)) // [1, 2, 3]
3024
- *
3025
- * // All successes
3026
- * const validNumbers = Chunk.make("1", "2", "3")
3027
- * const [noErrors, allNumbers] = Chunk.partitionMap(
3028
- * validNumbers,
3029
- * (str) => Result.succeed(parseInt(str))
3030
- * )
3031
- * console.log(Chunk.toArray(noErrors)) // []
3032
- * console.log(Chunk.toArray(allNumbers)) // [1, 2, 3]
3033
- * ```
3034
- *
3035
- * @category filtering
3036
- * @since 2.0.0
3037
- */
3038
- <A, B, C>(self: Chunk<A>, f: (a: A) => Result<C, B>): [left: Chunk<B>, right: Chunk<C>]
3039
- } = dual(2, <A, B, C>(self: Chunk<A>, f: (a: A) => Result<C, B>): [left: Chunk<B>, right: Chunk<C>] =>
3040
- pipe(
3041
- RA.partitionMap(toReadonlyArray(self), f),
3042
- ([l, r]) => [fromArrayUnsafe(l), fromArrayUnsafe(r)]
3043
- ))
3044
-
3045
2857
  /**
3046
2858
  * Partitions the elements of this chunk into two chunks.
3047
2859
  *
@@ -3654,7 +3466,7 @@ export const splitWhere: {
3654
3466
  * @since 2.0.0
3655
3467
  * @category elements
3656
3468
  */
3657
- export const tail = <A>(self: Chunk<A>): Chunk<A> | undefined => self.length > 0 ? drop(self, 1) : undefined
3469
+ export const tail = <A>(self: Chunk<A>): O.Option<Chunk<A>> => self.length > 0 ? O.some(drop(self, 1)) : O.none()
3658
3470
 
3659
3471
  /**
3660
3472
  * Returns every elements after the first.
@@ -4283,15 +4095,15 @@ export const remove: {
4283
4095
  *
4284
4096
  * const chunk = Chunk.make(1, 2, 3, 4)
4285
4097
  * const result = Chunk.modify(chunk, 1, (n) => n * 10)
4286
- * console.log(result) // { _id: 'Chunk', values: [ 1, 20, 3, 4 ] }
4098
+ * console.log(result) // Option.some(Chunk.make(1, 20, 3, 4))
4287
4099
  *
4288
4100
  * // Index out of bounds returns None
4289
- * const outOfBounds = chunk?.pipe(Chunk.modify(10, (n) => n * 10))
4290
- * console.log(outOfBounds === undefined) // true
4101
+ * const outOfBounds = chunk.pipe(Chunk.modify(10, (n) => n * 10))
4102
+ * console.log(outOfBounds) // Option.none()
4291
4103
  *
4292
4104
  * // Negative index returns None
4293
- * const negative = chunk?.pipe(Chunk.modify(-1, (n) => n * 10))
4294
- * console.log(negative === undefined) // true
4105
+ * const negative = chunk.pipe(Chunk.modify(-1, (n) => n * 10))
4106
+ * console.log(negative) // Option.none()
4295
4107
  * ```
4296
4108
  *
4297
4109
  * @category elements
@@ -4308,21 +4120,21 @@ export const modify: {
4308
4120
  *
4309
4121
  * const chunk = Chunk.make(1, 2, 3, 4)
4310
4122
  * const result = Chunk.modify(chunk, 1, (n) => n * 10)
4311
- * console.log(result) // { _id: 'Chunk', values: [ 1, 20, 3, 4 ] }
4123
+ * console.log(result) // Option.some(Chunk.make(1, 20, 3, 4))
4312
4124
  *
4313
4125
  * // Index out of bounds returns None
4314
- * const outOfBounds = chunk?.pipe(Chunk.modify(10, (n) => n * 10))
4315
- * console.log(outOfBounds === undefined) // true
4126
+ * const outOfBounds = chunk.pipe(Chunk.modify(10, (n) => n * 10))
4127
+ * console.log(outOfBounds) // Option.none()
4316
4128
  *
4317
4129
  * // Negative index returns None
4318
- * const negative = chunk?.pipe(Chunk.modify(-1, (n) => n * 10))
4319
- * console.log(negative === undefined) // true
4130
+ * const negative = chunk.pipe(Chunk.modify(-1, (n) => n * 10))
4131
+ * console.log(negative) // Option.none()
4320
4132
  * ```
4321
4133
  *
4322
4134
  * @category elements
4323
4135
  * @since 2.0.0
4324
4136
  */
4325
- <A, B>(i: number, f: (a: A) => B): (self: Chunk<A>) => Chunk<A | B> | undefined
4137
+ <A, B>(i: number, f: (a: A) => B): (self: Chunk<A>) => O.Option<Chunk<A | B>>
4326
4138
  /**
4327
4139
  * Applies a function to the element at the specified index, creating a new `Chunk`,
4328
4140
  * or returns `None` if the index is out of bounds.
@@ -4333,25 +4145,25 @@ export const modify: {
4333
4145
  *
4334
4146
  * const chunk = Chunk.make(1, 2, 3, 4)
4335
4147
  * const result = Chunk.modify(chunk, 1, (n) => n * 10)
4336
- * console.log(result) // { _id: 'Chunk', values: [ 1, 20, 3, 4 ] }
4148
+ * console.log(result) // Option.some(Chunk.make(1, 20, 3, 4))
4337
4149
  *
4338
4150
  * // Index out of bounds returns None
4339
- * const outOfBounds = chunk?.pipe(Chunk.modify(10, (n) => n * 10))
4340
- * console.log(outOfBounds === undefined) // true
4151
+ * const outOfBounds = chunk.pipe(Chunk.modify(10, (n) => n * 10))
4152
+ * console.log(outOfBounds) // Option.none()
4341
4153
  *
4342
4154
  * // Negative index returns None
4343
- * const negative = chunk?.pipe(Chunk.modify(-1, (n) => n * 10))
4344
- * console.log(negative === undefined) // true
4155
+ * const negative = chunk.pipe(Chunk.modify(-1, (n) => n * 10))
4156
+ * console.log(negative) // Option.none()
4345
4157
  * ```
4346
4158
  *
4347
4159
  * @category elements
4348
4160
  * @since 2.0.0
4349
4161
  */
4350
- <A, B>(self: Chunk<A>, i: number, f: (a: A) => B): Chunk<A | B> | undefined
4162
+ <A, B>(self: Chunk<A>, i: number, f: (a: A) => B): O.Option<Chunk<A | B>>
4351
4163
  } = dual(
4352
4164
  3,
4353
- <A, B>(self: Chunk<A>, i: number, f: (a: A) => B): Chunk<A | B> | undefined =>
4354
- UndefinedOr.map(RA.modify(toReadonlyArray(self), i, f), fromArrayUnsafe)
4165
+ <A, B>(self: Chunk<A>, i: number, f: (a: A) => B): O.Option<Chunk<A | B>> =>
4166
+ pipe(RA.modify(toReadonlyArray(self), i, f), O.map(fromArrayUnsafe))
4355
4167
  )
4356
4168
 
4357
4169
  /**
@@ -4364,15 +4176,15 @@ export const modify: {
4364
4176
  *
4365
4177
  * const chunk = Chunk.make("a", "b", "c", "d")
4366
4178
  * const result = Chunk.replace(chunk, 1, "X")
4367
- * console.log(result) // { _id: 'Chunk', values: [ 'a', 'X', 'c', 'd' ] }
4179
+ * console.log(result) // Option.some(Chunk.make("a", "X", "c", "d"))
4368
4180
  *
4369
4181
  * // Index out of bounds returns None
4370
- * const outOfBounds = chunk?.pipe(Chunk.replace(10, "Y"))
4371
- * console.log(outOfBounds === undefined) // true
4182
+ * const outOfBounds = chunk.pipe(Chunk.replace(10, "Y"))
4183
+ * console.log(outOfBounds) // Option.none()
4372
4184
  *
4373
4185
  * // Negative index returns None
4374
- * const negative = chunk?.pipe(Chunk.replace(-1, "Z"))
4375
- * console.log(negative === undefined) // true
4186
+ * const negative = chunk.pipe(Chunk.replace(-1, "Z"))
4187
+ * console.log(negative) // Option.none()
4376
4188
  * ```
4377
4189
  *
4378
4190
  * @category elements
@@ -4389,21 +4201,21 @@ export const replace: {
4389
4201
  *
4390
4202
  * const chunk = Chunk.make("a", "b", "c", "d")
4391
4203
  * const result = Chunk.replace(chunk, 1, "X")
4392
- * console.log(result) // { _id: 'Chunk', values: [ 'a', 'X', 'c', 'd' ] }
4204
+ * console.log(result) // Option.some(Chunk.make("a", "X", "c", "d"))
4393
4205
  *
4394
4206
  * // Index out of bounds returns None
4395
- * const outOfBounds = chunk?.pipe(Chunk.replace(10, "Y"))
4396
- * console.log(outOfBounds === undefined) // true
4207
+ * const outOfBounds = chunk.pipe(Chunk.replace(10, "Y"))
4208
+ * console.log(outOfBounds) // Option.none()
4397
4209
  *
4398
4210
  * // Negative index returns None
4399
- * const negative = chunk?.pipe(Chunk.replace(-1, "Z"))
4400
- * console.log(negative === undefined) // true
4211
+ * const negative = chunk.pipe(Chunk.replace(-1, "Z"))
4212
+ * console.log(negative) // Option.none()
4401
4213
  * ```
4402
4214
  *
4403
4215
  * @category elements
4404
4216
  * @since 2.0.0
4405
4217
  */
4406
- <B>(i: number, b: B): <A>(self: Chunk<A>) => Chunk<B | A> | undefined
4218
+ <B>(i: number, b: B): <A>(self: Chunk<A>) => O.Option<Chunk<B | A>>
4407
4219
  /**
4408
4220
  * Change the element at the specified index, creating a new `Chunk`,
4409
4221
  * or returns `None` if the index is out of bounds.
@@ -4414,22 +4226,22 @@ export const replace: {
4414
4226
  *
4415
4227
  * const chunk = Chunk.make("a", "b", "c", "d")
4416
4228
  * const result = Chunk.replace(chunk, 1, "X")
4417
- * console.log(result) // { _id: 'Chunk', values: [ 'a', 'X', 'c', 'd' ] }
4229
+ * console.log(result) // Option.some(Chunk.make("a", "X", "c", "d"))
4418
4230
  *
4419
4231
  * // Index out of bounds returns None
4420
- * const outOfBounds = chunk?.pipe(Chunk.replace(10, "Y"))
4421
- * console.log(outOfBounds === undefined) // true
4232
+ * const outOfBounds = chunk.pipe(Chunk.replace(10, "Y"))
4233
+ * console.log(outOfBounds) // Option.none()
4422
4234
  *
4423
4235
  * // Negative index returns None
4424
- * const negative = chunk?.pipe(Chunk.replace(-1, "Z"))
4425
- * console.log(negative === undefined) // true
4236
+ * const negative = chunk.pipe(Chunk.replace(-1, "Z"))
4237
+ * console.log(negative) // Option.none()
4426
4238
  * ```
4427
4239
  *
4428
4240
  * @category elements
4429
4241
  * @since 2.0.0
4430
4242
  */
4431
- <A, B>(self: Chunk<A>, i: number, b: B): Chunk<B | A> | undefined
4432
- } = dual(3, <A, B>(self: Chunk<A>, i: number, b: B): Chunk<B | A> | undefined => modify(self, i, () => b))
4243
+ <A, B>(self: Chunk<A>, i: number, b: B): O.Option<Chunk<B | A>>
4244
+ } = dual(3, <A, B>(self: Chunk<A>, i: number, b: B): O.Option<Chunk<B | A>> => modify(self, i, () => b))
4433
4245
 
4434
4246
  /**
4435
4247
  * Return a Chunk of length n with element i initialized with f(i).
@@ -4790,15 +4602,15 @@ export const findFirst: {
4790
4602
  *
4791
4603
  * const chunk = Chunk.make(1, 2, 3, 4, 5)
4792
4604
  * const result = Chunk.findFirstIndex(chunk, (n) => n > 3)
4793
- * console.log(result) // 3
4605
+ * console.log(result) // Option.some(3)
4794
4606
  *
4795
4607
  * // No match found
4796
4608
  * const notFound = Chunk.findFirstIndex(chunk, (n) => n > 10)
4797
- * console.log(notFound) // undefined
4609
+ * console.log(notFound) // Option.none()
4798
4610
  *
4799
4611
  * // Find first even number
4800
4612
  * const firstEven = Chunk.findFirstIndex(chunk, (n) => n % 2 === 0)
4801
- * console.log(firstEven) // 1
4613
+ * console.log(firstEven) // Option.some(1)
4802
4614
  * ```
4803
4615
  *
4804
4616
  * @category elements
@@ -4814,21 +4626,21 @@ export const findFirstIndex: {
4814
4626
  *
4815
4627
  * const chunk = Chunk.make(1, 2, 3, 4, 5)
4816
4628
  * const result = Chunk.findFirstIndex(chunk, (n) => n > 3)
4817
- * console.log(result) // 3
4629
+ * console.log(result) // Option.some(3)
4818
4630
  *
4819
4631
  * // No match found
4820
4632
  * const notFound = Chunk.findFirstIndex(chunk, (n) => n > 10)
4821
- * console.log(notFound) // undefined
4633
+ * console.log(notFound) // Option.none()
4822
4634
  *
4823
4635
  * // Find first even number
4824
4636
  * const firstEven = Chunk.findFirstIndex(chunk, (n) => n % 2 === 0)
4825
- * console.log(firstEven) // 1
4637
+ * console.log(firstEven) // Option.some(1)
4826
4638
  * ```
4827
4639
  *
4828
4640
  * @category elements
4829
4641
  * @since 2.0.0
4830
4642
  */
4831
- <A>(predicate: Predicate<A>): (self: Chunk<A>) => number | undefined
4643
+ <A>(predicate: Predicate<A>): (self: Chunk<A>) => O.Option<number>
4832
4644
  /**
4833
4645
  * Return the first index for which a predicate holds.
4834
4646
  *
@@ -4838,22 +4650,25 @@ export const findFirstIndex: {
4838
4650
  *
4839
4651
  * const chunk = Chunk.make(1, 2, 3, 4, 5)
4840
4652
  * const result = Chunk.findFirstIndex(chunk, (n) => n > 3)
4841
- * console.log(result) // 3
4653
+ * console.log(result) // Option.some(3)
4842
4654
  *
4843
4655
  * // No match found
4844
4656
  * const notFound = Chunk.findFirstIndex(chunk, (n) => n > 10)
4845
- * console.log(notFound) // undefined
4657
+ * console.log(notFound) // Option.none()
4846
4658
  *
4847
4659
  * // Find first even number
4848
4660
  * const firstEven = Chunk.findFirstIndex(chunk, (n) => n % 2 === 0)
4849
- * console.log(firstEven) // 1
4661
+ * console.log(firstEven) // Option.some(1)
4850
4662
  * ```
4851
4663
  *
4852
4664
  * @category elements
4853
4665
  * @since 2.0.0
4854
4666
  */
4855
- <A>(self: Chunk<A>, predicate: Predicate<A>): number | undefined
4856
- } = RA.findFirstIndex
4667
+ <A>(self: Chunk<A>, predicate: Predicate<A>): O.Option<number>
4668
+ } = dual(
4669
+ 2,
4670
+ <A>(self: Chunk<A>, predicate: Predicate<A>): O.Option<number> => RA.findFirstIndex(self, predicate)
4671
+ )
4857
4672
 
4858
4673
  /**
4859
4674
  * Find the last element for which a predicate holds.
@@ -4996,15 +4811,15 @@ export const findLast: {
4996
4811
  *
4997
4812
  * const chunk = Chunk.make(1, 2, 3, 4, 5)
4998
4813
  * const result = Chunk.findLastIndex(chunk, (n) => n < 4)
4999
- * console.log(result) // 2
4814
+ * console.log(result) // Option.some(2)
5000
4815
  *
5001
4816
  * // No match found
5002
4817
  * const notFound = Chunk.findLastIndex(chunk, (n) => n > 10)
5003
- * console.log(notFound) // undefined
4818
+ * console.log(notFound) // Option.none()
5004
4819
  *
5005
4820
  * // Find last even number index
5006
4821
  * const lastEven = Chunk.findLastIndex(chunk, (n) => n % 2 === 0)
5007
- * console.log(lastEven) // 3
4822
+ * console.log(lastEven) // Option.some(3)
5008
4823
  * ```
5009
4824
  *
5010
4825
  * @category elements
@@ -5020,21 +4835,21 @@ export const findLastIndex: {
5020
4835
  *
5021
4836
  * const chunk = Chunk.make(1, 2, 3, 4, 5)
5022
4837
  * const result = Chunk.findLastIndex(chunk, (n) => n < 4)
5023
- * console.log(result) // 2
4838
+ * console.log(result) // Option.some(2)
5024
4839
  *
5025
4840
  * // No match found
5026
4841
  * const notFound = Chunk.findLastIndex(chunk, (n) => n > 10)
5027
- * console.log(notFound) // undefined
4842
+ * console.log(notFound) // Option.none()
5028
4843
  *
5029
4844
  * // Find last even number index
5030
4845
  * const lastEven = Chunk.findLastIndex(chunk, (n) => n % 2 === 0)
5031
- * console.log(lastEven) // 3
4846
+ * console.log(lastEven) // Option.some(3)
5032
4847
  * ```
5033
4848
  *
5034
4849
  * @category elements
5035
4850
  * @since 2.0.0
5036
4851
  */
5037
- <A>(predicate: Predicate<A>): (self: Chunk<A>) => number | undefined
4852
+ <A>(predicate: Predicate<A>): (self: Chunk<A>) => O.Option<number>
5038
4853
  /**
5039
4854
  * Return the last index for which a predicate holds.
5040
4855
  *
@@ -5044,22 +4859,25 @@ export const findLastIndex: {
5044
4859
  *
5045
4860
  * const chunk = Chunk.make(1, 2, 3, 4, 5)
5046
4861
  * const result = Chunk.findLastIndex(chunk, (n) => n < 4)
5047
- * console.log(result) // 2
4862
+ * console.log(result) // Option.some(2)
5048
4863
  *
5049
4864
  * // No match found
5050
4865
  * const notFound = Chunk.findLastIndex(chunk, (n) => n > 10)
5051
- * console.log(notFound) // undefined
4866
+ * console.log(notFound) // Option.none()
5052
4867
  *
5053
4868
  * // Find last even number index
5054
4869
  * const lastEven = Chunk.findLastIndex(chunk, (n) => n % 2 === 0)
5055
- * console.log(lastEven) // 3
4870
+ * console.log(lastEven) // Option.some(3)
5056
4871
  * ```
5057
4872
  *
5058
4873
  * @category elements
5059
4874
  * @since 2.0.0
5060
4875
  */
5061
- <A>(self: Chunk<A>, predicate: Predicate<A>): number | undefined
5062
- } = RA.findLastIndex
4876
+ <A>(self: Chunk<A>, predicate: Predicate<A>): O.Option<number>
4877
+ } = dual(
4878
+ 2,
4879
+ <A>(self: Chunk<A>, predicate: Predicate<A>): O.Option<number> => RA.findLastIndex(self, predicate)
4880
+ )
5063
4881
 
5064
4882
  /**
5065
4883
  * Check if a predicate holds true for every `Chunk` element.