effect 4.0.0-beta.3 → 4.0.0-beta.31

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 (1008) hide show
  1. package/dist/Array.d.ts +126 -299
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +102 -62
  4. package/dist/Array.js.map +1 -1
  5. package/dist/Brand.d.ts +1 -1
  6. package/dist/Brand.d.ts.map +1 -1
  7. package/dist/Brand.js +1 -1
  8. package/dist/Brand.js.map +1 -1
  9. package/dist/Cache.d.ts +2 -2
  10. package/dist/Cache.d.ts.map +1 -1
  11. package/dist/Cache.js +6 -5
  12. package/dist/Cache.js.map +1 -1
  13. package/dist/Cause.d.ts +2 -2
  14. package/dist/Cause.d.ts.map +1 -1
  15. package/dist/Channel.d.ts +118 -32
  16. package/dist/Channel.d.ts.map +1 -1
  17. package/dist/Channel.js +82 -37
  18. package/dist/Channel.js.map +1 -1
  19. package/dist/Chunk.d.ts +54 -247
  20. package/dist/Chunk.d.ts.map +1 -1
  21. package/dist/Chunk.js +36 -67
  22. package/dist/Chunk.js.map +1 -1
  23. package/dist/Combiner.d.ts +280 -13
  24. package/dist/Combiner.d.ts.map +1 -1
  25. package/dist/Combiner.js +198 -7
  26. package/dist/Combiner.js.map +1 -1
  27. package/dist/Config.d.ts +165 -9
  28. package/dist/Config.d.ts.map +1 -1
  29. package/dist/Config.js +65 -10
  30. package/dist/Config.js.map +1 -1
  31. package/dist/ConfigProvider.d.ts +1 -1
  32. package/dist/Cron.d.ts +1 -1
  33. package/dist/Cron.js +3 -3
  34. package/dist/Cron.js.map +1 -1
  35. package/dist/Data.d.ts +535 -366
  36. package/dist/Data.d.ts.map +1 -1
  37. package/dist/Data.js +132 -79
  38. package/dist/Data.js.map +1 -1
  39. package/dist/DateTime.d.ts +56 -238
  40. package/dist/DateTime.d.ts.map +1 -1
  41. package/dist/DateTime.js +7 -52
  42. package/dist/DateTime.js.map +1 -1
  43. package/dist/Duration.d.ts +39 -11
  44. package/dist/Duration.d.ts.map +1 -1
  45. package/dist/Duration.js +88 -59
  46. package/dist/Duration.js.map +1 -1
  47. package/dist/Effect.d.ts +1206 -924
  48. package/dist/Effect.d.ts.map +1 -1
  49. package/dist/Effect.js +390 -329
  50. package/dist/Effect.js.map +1 -1
  51. package/dist/Encoding.d.ts +194 -0
  52. package/dist/Encoding.d.ts.map +1 -0
  53. package/dist/Encoding.js +352 -0
  54. package/dist/Encoding.js.map +1 -0
  55. package/dist/Equal.d.ts +276 -109
  56. package/dist/Equal.d.ts.map +1 -1
  57. package/dist/Equal.js +124 -48
  58. package/dist/Equal.js.map +1 -1
  59. package/dist/ErrorReporter.d.ts +374 -0
  60. package/dist/ErrorReporter.d.ts.map +1 -0
  61. package/dist/ErrorReporter.js +244 -0
  62. package/dist/ErrorReporter.js.map +1 -0
  63. package/dist/Exit.d.ts +24 -12
  64. package/dist/Exit.d.ts.map +1 -1
  65. package/dist/Exit.js +8 -4
  66. package/dist/Exit.js.map +1 -1
  67. package/dist/Fiber.d.ts +3 -2
  68. package/dist/Fiber.d.ts.map +1 -1
  69. package/dist/Fiber.js.map +1 -1
  70. package/dist/FileSystem.d.ts +1 -1
  71. package/dist/FileSystem.d.ts.map +1 -1
  72. package/dist/FileSystem.js +5 -5
  73. package/dist/FileSystem.js.map +1 -1
  74. package/dist/Filter.d.ts +34 -38
  75. package/dist/Filter.d.ts.map +1 -1
  76. package/dist/Filter.js +15 -13
  77. package/dist/Filter.js.map +1 -1
  78. package/dist/Formatter.d.ts +131 -47
  79. package/dist/Formatter.d.ts.map +1 -1
  80. package/dist/Formatter.js +229 -51
  81. package/dist/Formatter.js.map +1 -1
  82. package/dist/Function.d.ts +1 -9
  83. package/dist/Function.d.ts.map +1 -1
  84. package/dist/Function.js +2 -10
  85. package/dist/Function.js.map +1 -1
  86. package/dist/Graph.d.ts +1 -1
  87. package/dist/Graph.d.ts.map +1 -1
  88. package/dist/Graph.js +5 -8
  89. package/dist/Graph.js.map +1 -1
  90. package/dist/HashMap.d.ts +15 -14
  91. package/dist/HashMap.d.ts.map +1 -1
  92. package/dist/HashMap.js +4 -4
  93. package/dist/HashMap.js.map +1 -1
  94. package/dist/Iterable.d.ts +39 -39
  95. package/dist/Iterable.d.ts.map +1 -1
  96. package/dist/Iterable.js +94 -22
  97. package/dist/Iterable.js.map +1 -1
  98. package/dist/JsonSchema.d.ts +299 -10
  99. package/dist/JsonSchema.d.ts.map +1 -1
  100. package/dist/JsonSchema.js +323 -4
  101. package/dist/JsonSchema.js.map +1 -1
  102. package/dist/Latch.d.ts +109 -0
  103. package/dist/Latch.d.ts.map +1 -0
  104. package/dist/Latch.js +72 -0
  105. package/dist/Latch.js.map +1 -0
  106. package/dist/Layer.d.ts +217 -127
  107. package/dist/Layer.d.ts.map +1 -1
  108. package/dist/Layer.js +51 -46
  109. package/dist/Layer.js.map +1 -1
  110. package/dist/LayerMap.d.ts +8 -8
  111. package/dist/LayerMap.d.ts.map +1 -1
  112. package/dist/LayerMap.js +3 -3
  113. package/dist/LogLevel.d.ts +32 -0
  114. package/dist/LogLevel.d.ts.map +1 -1
  115. package/dist/LogLevel.js +28 -100
  116. package/dist/LogLevel.js.map +1 -1
  117. package/dist/Logger.d.ts +29 -95
  118. package/dist/Logger.d.ts.map +1 -1
  119. package/dist/Logger.js +2 -3
  120. package/dist/Logger.js.map +1 -1
  121. package/dist/ManagedRuntime.d.ts +2 -2
  122. package/dist/ManagedRuntime.js +2 -2
  123. package/dist/Metric.d.ts +4 -6
  124. package/dist/Metric.d.ts.map +1 -1
  125. package/dist/Metric.js +3 -5
  126. package/dist/Metric.js.map +1 -1
  127. package/dist/Newtype.d.ts +291 -0
  128. package/dist/Newtype.d.ts.map +1 -0
  129. package/dist/Newtype.js +161 -0
  130. package/dist/Newtype.js.map +1 -0
  131. package/dist/Optic.d.ts +947 -18
  132. package/dist/Optic.d.ts.map +1 -1
  133. package/dist/Optic.js +454 -5
  134. package/dist/Optic.js.map +1 -1
  135. package/dist/Option.d.ts +23 -16
  136. package/dist/Option.d.ts.map +1 -1
  137. package/dist/Option.js +15 -9
  138. package/dist/Option.js.map +1 -1
  139. package/dist/Pipeable.d.ts +17 -0
  140. package/dist/Pipeable.d.ts.map +1 -1
  141. package/dist/Pipeable.js +19 -1
  142. package/dist/Pipeable.js.map +1 -1
  143. package/dist/PlatformError.d.ts +10 -9
  144. package/dist/PlatformError.d.ts.map +1 -1
  145. package/dist/PlatformError.js +2 -2
  146. package/dist/PlatformError.js.map +1 -1
  147. package/dist/Pool.d.ts +6 -4
  148. package/dist/Pool.d.ts.map +1 -1
  149. package/dist/Pool.js +7 -5
  150. package/dist/Pool.js.map +1 -1
  151. package/dist/PubSub.d.ts +3 -2
  152. package/dist/PubSub.d.ts.map +1 -1
  153. package/dist/PubSub.js +3 -2
  154. package/dist/PubSub.js.map +1 -1
  155. package/dist/Pull.d.ts.map +1 -1
  156. package/dist/Pull.js +1 -1
  157. package/dist/Pull.js.map +1 -1
  158. package/dist/Queue.d.ts.map +1 -1
  159. package/dist/Queue.js +0 -1
  160. package/dist/Queue.js.map +1 -1
  161. package/dist/Random.d.ts +35 -1
  162. package/dist/Random.d.ts.map +1 -1
  163. package/dist/Random.js +46 -12
  164. package/dist/Random.js.map +1 -1
  165. package/dist/RcMap.d.ts +2 -2
  166. package/dist/RcMap.d.ts.map +1 -1
  167. package/dist/RcMap.js +1 -1
  168. package/dist/RcMap.js.map +1 -1
  169. package/dist/RcRef.d.ts +1 -1
  170. package/dist/RcRef.d.ts.map +1 -1
  171. package/dist/Record.d.ts +23 -120
  172. package/dist/Record.d.ts.map +1 -1
  173. package/dist/Record.js +21 -41
  174. package/dist/Record.js.map +1 -1
  175. package/dist/Reducer.d.ts +166 -7
  176. package/dist/Reducer.d.ts.map +1 -1
  177. package/dist/Reducer.js +135 -1
  178. package/dist/Reducer.js.map +1 -1
  179. package/dist/References.d.ts +9 -4
  180. package/dist/References.d.ts.map +1 -1
  181. package/dist/References.js +6 -1
  182. package/dist/References.js.map +1 -1
  183. package/dist/Request.d.ts +1 -1
  184. package/dist/Request.d.ts.map +1 -1
  185. package/dist/Request.js +2 -1
  186. package/dist/Request.js.map +1 -1
  187. package/dist/RequestResolver.d.ts +25 -45
  188. package/dist/RequestResolver.d.ts.map +1 -1
  189. package/dist/RequestResolver.js +10 -30
  190. package/dist/RequestResolver.js.map +1 -1
  191. package/dist/Result.d.ts +1 -1
  192. package/dist/Result.d.ts.map +1 -1
  193. package/dist/Result.js +1 -2
  194. package/dist/Result.js.map +1 -1
  195. package/dist/Runtime.d.ts +66 -0
  196. package/dist/Runtime.d.ts.map +1 -1
  197. package/dist/Runtime.js +79 -6
  198. package/dist/Runtime.js.map +1 -1
  199. package/dist/Schedule.d.ts +191 -102
  200. package/dist/Schedule.d.ts.map +1 -1
  201. package/dist/Schedule.js +152 -66
  202. package/dist/Schedule.js.map +1 -1
  203. package/dist/Scheduler.d.ts +9 -0
  204. package/dist/Scheduler.d.ts.map +1 -1
  205. package/dist/Scheduler.js +11 -0
  206. package/dist/Scheduler.js.map +1 -1
  207. package/dist/Schema.d.ts +2647 -224
  208. package/dist/Schema.d.ts.map +1 -1
  209. package/dist/Schema.js +1863 -209
  210. package/dist/Schema.js.map +1 -1
  211. package/dist/SchemaAST.d.ts +2 -2
  212. package/dist/SchemaAST.d.ts.map +1 -1
  213. package/dist/SchemaAST.js +131 -25
  214. package/dist/SchemaAST.js.map +1 -1
  215. package/dist/SchemaGetter.d.ts +5 -5
  216. package/dist/SchemaGetter.d.ts.map +1 -1
  217. package/dist/SchemaGetter.js +12 -14
  218. package/dist/SchemaGetter.js.map +1 -1
  219. package/dist/SchemaParser.d.ts +5 -0
  220. package/dist/SchemaParser.d.ts.map +1 -1
  221. package/dist/SchemaParser.js +10 -0
  222. package/dist/SchemaParser.js.map +1 -1
  223. package/dist/SchemaRepresentation.d.ts +46 -45
  224. package/dist/SchemaRepresentation.d.ts.map +1 -1
  225. package/dist/SchemaRepresentation.js +49 -24
  226. package/dist/SchemaRepresentation.js.map +1 -1
  227. package/dist/SchemaTransformation.d.ts +107 -3
  228. package/dist/SchemaTransformation.d.ts.map +1 -1
  229. package/dist/SchemaTransformation.js +159 -4
  230. package/dist/SchemaTransformation.js.map +1 -1
  231. package/dist/ScopedCache.d.ts +2 -2
  232. package/dist/ScopedCache.d.ts.map +1 -1
  233. package/dist/ScopedCache.js +1 -1
  234. package/dist/ScopedCache.js.map +1 -1
  235. package/dist/Semaphore.d.ts +211 -0
  236. package/dist/Semaphore.d.ts.map +1 -0
  237. package/dist/{PartitionedSemaphore.js → Semaphore.js} +97 -13
  238. package/dist/Semaphore.js.map +1 -0
  239. package/dist/ServiceMap.d.ts +41 -31
  240. package/dist/ServiceMap.d.ts.map +1 -1
  241. package/dist/ServiceMap.js +3 -3
  242. package/dist/ServiceMap.js.map +1 -1
  243. package/dist/Sink.d.ts +13 -13
  244. package/dist/Sink.d.ts.map +1 -1
  245. package/dist/Sink.js +53 -6
  246. package/dist/Sink.js.map +1 -1
  247. package/dist/Stdio.d.ts +16 -4
  248. package/dist/Stdio.d.ts.map +1 -1
  249. package/dist/Stdio.js +18 -0
  250. package/dist/Stdio.js.map +1 -1
  251. package/dist/Stream.d.ts +250 -428
  252. package/dist/Stream.d.ts.map +1 -1
  253. package/dist/Stream.js +137 -82
  254. package/dist/Stream.js.map +1 -1
  255. package/dist/Struct.d.ts +16 -0
  256. package/dist/Struct.d.ts.map +1 -1
  257. package/dist/Struct.js +22 -0
  258. package/dist/Struct.js.map +1 -1
  259. package/dist/SubscriptionRef.d.ts +2 -1
  260. package/dist/SubscriptionRef.d.ts.map +1 -1
  261. package/dist/SubscriptionRef.js +2 -1
  262. package/dist/SubscriptionRef.js.map +1 -1
  263. package/dist/SynchronizedRef.d.ts +2 -1
  264. package/dist/SynchronizedRef.d.ts.map +1 -1
  265. package/dist/SynchronizedRef.js +2 -1
  266. package/dist/SynchronizedRef.js.map +1 -1
  267. package/dist/Trie.d.ts +18 -17
  268. package/dist/Trie.d.ts.map +1 -1
  269. package/dist/Trie.js +5 -5
  270. package/dist/Trie.js.map +1 -1
  271. package/dist/TxChunk.d.ts +37 -37
  272. package/dist/TxChunk.d.ts.map +1 -1
  273. package/dist/TxChunk.js +3 -3
  274. package/dist/TxChunk.js.map +1 -1
  275. package/dist/TxDeferred.d.ts +328 -0
  276. package/dist/TxDeferred.d.ts.map +1 -0
  277. package/dist/TxDeferred.js +196 -0
  278. package/dist/TxDeferred.js.map +1 -0
  279. package/dist/TxHashMap.d.ts +84 -83
  280. package/dist/TxHashMap.d.ts.map +1 -1
  281. package/dist/TxHashMap.js +24 -24
  282. package/dist/TxHashMap.js.map +1 -1
  283. package/dist/TxHashSet.d.ts +35 -35
  284. package/dist/TxHashSet.d.ts.map +1 -1
  285. package/dist/TxHashSet.js +14 -14
  286. package/dist/TxHashSet.js.map +1 -1
  287. package/dist/TxPriorityQueue.d.ts +609 -0
  288. package/dist/TxPriorityQueue.d.ts.map +1 -0
  289. package/dist/TxPriorityQueue.js +415 -0
  290. package/dist/TxPriorityQueue.js.map +1 -0
  291. package/dist/TxPubSub.d.ts +585 -0
  292. package/dist/TxPubSub.d.ts.map +1 -0
  293. package/dist/TxPubSub.js +521 -0
  294. package/dist/TxPubSub.js.map +1 -0
  295. package/dist/TxQueue.d.ts +32 -32
  296. package/dist/TxQueue.d.ts.map +1 -1
  297. package/dist/TxQueue.js +26 -26
  298. package/dist/TxQueue.js.map +1 -1
  299. package/dist/TxReentrantLock.d.ts +523 -0
  300. package/dist/TxReentrantLock.d.ts.map +1 -0
  301. package/dist/TxReentrantLock.js +504 -0
  302. package/dist/TxReentrantLock.js.map +1 -0
  303. package/dist/TxRef.d.ts +34 -34
  304. package/dist/TxRef.d.ts.map +1 -1
  305. package/dist/TxRef.js +21 -14
  306. package/dist/TxRef.js.map +1 -1
  307. package/dist/TxSemaphore.d.ts +8 -8
  308. package/dist/TxSemaphore.d.ts.map +1 -1
  309. package/dist/TxSemaphore.js +7 -7
  310. package/dist/TxSemaphore.js.map +1 -1
  311. package/dist/TxSubscriptionRef.d.ts +508 -0
  312. package/dist/TxSubscriptionRef.d.ts.map +1 -0
  313. package/dist/TxSubscriptionRef.js +293 -0
  314. package/dist/TxSubscriptionRef.js.map +1 -0
  315. package/dist/Types.d.ts +80 -23
  316. package/dist/Types.d.ts.map +1 -1
  317. package/dist/Utils.d.ts +137 -65
  318. package/dist/Utils.d.ts.map +1 -1
  319. package/dist/Utils.js +38 -66
  320. package/dist/Utils.js.map +1 -1
  321. package/dist/index.d.ts +718 -23
  322. package/dist/index.d.ts.map +1 -1
  323. package/dist/index.js +718 -23
  324. package/dist/index.js.map +1 -1
  325. package/dist/internal/core.js +11 -3
  326. package/dist/internal/core.js.map +1 -1
  327. package/dist/internal/dateTime.js +60 -61
  328. package/dist/internal/dateTime.js.map +1 -1
  329. package/dist/internal/effect.js +265 -127
  330. package/dist/internal/effect.js.map +1 -1
  331. package/dist/internal/hashMap.js +5 -4
  332. package/dist/internal/hashMap.js.map +1 -1
  333. package/dist/internal/random.d.ts +2 -0
  334. package/dist/internal/random.d.ts.map +1 -0
  335. package/dist/internal/random.js +13 -0
  336. package/dist/internal/random.js.map +1 -0
  337. package/dist/internal/rcRef.js +3 -2
  338. package/dist/internal/rcRef.js.map +1 -1
  339. package/dist/internal/request.js +2 -2
  340. package/dist/internal/request.js.map +1 -1
  341. package/dist/internal/schema/annotations.js +2 -0
  342. package/dist/internal/schema/annotations.js.map +1 -1
  343. package/dist/internal/schema/representation.js +47 -106
  344. package/dist/internal/schema/representation.js.map +1 -1
  345. package/dist/internal/schema/schema.js +1 -0
  346. package/dist/internal/schema/schema.js.map +1 -1
  347. package/dist/internal/schema/to-codec.js +7 -10
  348. package/dist/internal/schema/to-codec.js.map +1 -1
  349. package/dist/internal/trie.js +5 -4
  350. package/dist/internal/trie.js.map +1 -1
  351. package/dist/testing/TestClock.d.ts +8 -7
  352. package/dist/testing/TestClock.d.ts.map +1 -1
  353. package/dist/testing/TestClock.js +6 -4
  354. package/dist/testing/TestClock.js.map +1 -1
  355. package/dist/testing/TestSchema.d.ts +266 -32
  356. package/dist/testing/TestSchema.d.ts.map +1 -1
  357. package/dist/testing/TestSchema.js +296 -23
  358. package/dist/testing/TestSchema.js.map +1 -1
  359. package/dist/testing/index.d.ts +64 -1
  360. package/dist/testing/index.d.ts.map +1 -1
  361. package/dist/testing/index.js +64 -1
  362. package/dist/testing/index.js.map +1 -1
  363. package/dist/unstable/ai/AiError.d.ts +134 -51
  364. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  365. package/dist/unstable/ai/AiError.js +19 -16
  366. package/dist/unstable/ai/AiError.js.map +1 -1
  367. package/dist/unstable/ai/Chat.d.ts +7 -8
  368. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  369. package/dist/unstable/ai/Chat.js +38 -44
  370. package/dist/unstable/ai/Chat.js.map +1 -1
  371. package/dist/unstable/ai/LanguageModel.d.ts +45 -45
  372. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  373. package/dist/unstable/ai/LanguageModel.js +107 -124
  374. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  375. package/dist/unstable/ai/McpSchema.d.ts +183 -88
  376. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  377. package/dist/unstable/ai/McpSchema.js +57 -12
  378. package/dist/unstable/ai/McpSchema.js.map +1 -1
  379. package/dist/unstable/ai/McpServer.d.ts +66 -13
  380. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  381. package/dist/unstable/ai/McpServer.js +193 -51
  382. package/dist/unstable/ai/McpServer.js.map +1 -1
  383. package/dist/unstable/ai/Model.d.ts +25 -7
  384. package/dist/unstable/ai/Model.d.ts.map +1 -1
  385. package/dist/unstable/ai/Model.js +22 -6
  386. package/dist/unstable/ai/Model.js.map +1 -1
  387. package/dist/unstable/ai/Prompt.d.ts +20 -20
  388. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  389. package/dist/unstable/ai/Response.d.ts +26 -26
  390. package/dist/unstable/ai/Response.d.ts.map +1 -1
  391. package/dist/unstable/ai/Response.js +1 -1
  392. package/dist/unstable/ai/Response.js.map +1 -1
  393. package/dist/unstable/ai/Tool.d.ts +20 -4
  394. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  395. package/dist/unstable/ai/Tool.js +14 -9
  396. package/dist/unstable/ai/Tool.js.map +1 -1
  397. package/dist/unstable/ai/Toolkit.d.ts +1 -1
  398. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  399. package/dist/unstable/ai/Toolkit.js +4 -11
  400. package/dist/unstable/ai/Toolkit.js.map +1 -1
  401. package/dist/unstable/ai/index.d.ts +1 -1
  402. package/dist/unstable/ai/index.js +1 -1
  403. package/dist/unstable/ai/internal/codec-transformer.js +0 -5
  404. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  405. package/dist/unstable/cli/CliError.d.ts +27 -60
  406. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  407. package/dist/unstable/cli/CliError.js +25 -57
  408. package/dist/unstable/cli/CliError.js.map +1 -1
  409. package/dist/unstable/cli/CliOutput.js +59 -6
  410. package/dist/unstable/cli/CliOutput.js.map +1 -1
  411. package/dist/unstable/cli/Command.d.ts +368 -56
  412. package/dist/unstable/cli/Command.d.ts.map +1 -1
  413. package/dist/unstable/cli/Command.js +325 -64
  414. package/dist/unstable/cli/Command.js.map +1 -1
  415. package/dist/unstable/cli/Completions.d.ts +16 -0
  416. package/dist/unstable/cli/Completions.d.ts.map +1 -0
  417. package/dist/unstable/cli/Completions.js +23 -0
  418. package/dist/unstable/cli/Completions.js.map +1 -0
  419. package/dist/unstable/cli/GlobalFlag.d.ts +125 -0
  420. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -0
  421. package/dist/unstable/cli/GlobalFlag.js +118 -0
  422. package/dist/unstable/cli/GlobalFlag.js.map +1 -0
  423. package/dist/unstable/cli/HelpDoc.d.ts +70 -2
  424. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  425. package/dist/unstable/cli/Primitive.d.ts +1 -1
  426. package/dist/unstable/cli/Primitive.js +1 -1
  427. package/dist/unstable/cli/Prompt.js +35 -8
  428. package/dist/unstable/cli/Prompt.js.map +1 -1
  429. package/dist/unstable/cli/index.d.ts +8 -0
  430. package/dist/unstable/cli/index.d.ts.map +1 -1
  431. package/dist/unstable/cli/index.js +8 -0
  432. package/dist/unstable/cli/index.js.map +1 -1
  433. package/dist/unstable/cli/internal/command.d.ts +40 -14
  434. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  435. package/dist/unstable/cli/internal/command.js +72 -46
  436. package/dist/unstable/cli/internal/command.js.map +1 -1
  437. package/dist/unstable/cli/internal/completions/CommandDescriptor.js +7 -2
  438. package/dist/unstable/cli/internal/completions/CommandDescriptor.js.map +1 -1
  439. package/dist/unstable/cli/internal/config.js +42 -0
  440. package/dist/unstable/cli/internal/config.js.map +1 -1
  441. package/dist/unstable/cli/internal/help.d.ts +33 -0
  442. package/dist/unstable/cli/internal/help.d.ts.map +1 -0
  443. package/dist/unstable/cli/internal/help.js +125 -0
  444. package/dist/unstable/cli/internal/help.js.map +1 -0
  445. package/dist/unstable/cli/internal/parser.js +55 -42
  446. package/dist/unstable/cli/internal/parser.js.map +1 -1
  447. package/dist/unstable/cluster/ClusterCron.d.ts +1 -1
  448. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  449. package/dist/unstable/cluster/ClusterCron.js +1 -1
  450. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  451. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  452. package/dist/unstable/cluster/ClusterWorkflowEngine.js +5 -4
  453. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  454. package/dist/unstable/cluster/DeliverAt.js +1 -1
  455. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  456. package/dist/unstable/cluster/Entity.d.ts +7 -6
  457. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  458. package/dist/unstable/cluster/Entity.js.map +1 -1
  459. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  460. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  461. package/dist/unstable/cluster/Envelope.d.ts +1 -1
  462. package/dist/unstable/cluster/K8sHttpClient.d.ts +1 -1
  463. package/dist/unstable/cluster/K8sHttpClient.js +4 -4
  464. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  465. package/dist/unstable/cluster/Message.d.ts +10 -10
  466. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  467. package/dist/unstable/cluster/MessageStorage.js +2 -1
  468. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  469. package/dist/unstable/cluster/Reply.d.ts +6 -6
  470. package/dist/unstable/cluster/Runner.d.ts +1 -1
  471. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  472. package/dist/unstable/cluster/Runners.js +4 -3
  473. package/dist/unstable/cluster/Runners.js.map +1 -1
  474. package/dist/unstable/cluster/Sharding.d.ts +2 -2
  475. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  476. package/dist/unstable/cluster/Sharding.js +9 -7
  477. package/dist/unstable/cluster/Sharding.js.map +1 -1
  478. package/dist/unstable/cluster/ShardingConfig.d.ts +21 -21
  479. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  480. package/dist/unstable/cluster/ShardingConfig.js +20 -20
  481. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  482. package/dist/unstable/cluster/SqlRunnerStorage.js +1 -1
  483. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  484. package/dist/unstable/cluster/internal/entityManager.js +5 -4
  485. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  486. package/dist/unstable/cluster/internal/entityReaper.js +2 -1
  487. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  488. package/dist/unstable/cluster/internal/resourceRef.js +2 -1
  489. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  490. package/dist/unstable/devtools/DevToolsSchema.d.ts +36 -36
  491. package/dist/unstable/encoding/Msgpack.d.ts +1 -1
  492. package/dist/unstable/encoding/Ndjson.d.ts +9 -9
  493. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  494. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  495. package/dist/unstable/encoding/Sse.d.ts +4 -4
  496. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  497. package/dist/unstable/encoding/Sse.js +1 -1
  498. package/dist/unstable/encoding/Sse.js.map +1 -1
  499. package/dist/unstable/eventlog/EventJournal.d.ts +2 -2
  500. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  501. package/dist/unstable/eventlog/EventLog.js +2 -1
  502. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  503. package/dist/unstable/eventlog/EventLogRemote.d.ts +6 -6
  504. package/dist/unstable/http/Cookies.d.ts +47 -3
  505. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  506. package/dist/unstable/http/Cookies.js +24 -2
  507. package/dist/unstable/http/Cookies.js.map +1 -1
  508. package/dist/unstable/http/Headers.d.ts +16 -0
  509. package/dist/unstable/http/Headers.d.ts.map +1 -1
  510. package/dist/unstable/http/Headers.js +38 -10
  511. package/dist/unstable/http/Headers.js.map +1 -1
  512. package/dist/unstable/http/HttpBody.d.ts +3 -3
  513. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  514. package/dist/unstable/http/HttpBody.js +6 -6
  515. package/dist/unstable/http/HttpBody.js.map +1 -1
  516. package/dist/unstable/http/HttpClient.d.ts +117 -15
  517. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  518. package/dist/unstable/http/HttpClient.js +189 -12
  519. package/dist/unstable/http/HttpClient.js.map +1 -1
  520. package/dist/unstable/http/HttpClientError.d.ts +7 -7
  521. package/dist/unstable/http/HttpClientRequest.d.ts +16 -11
  522. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  523. package/dist/unstable/http/HttpClientRequest.js +31 -20
  524. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  525. package/dist/unstable/http/HttpClientResponse.d.ts +2 -1
  526. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  527. package/dist/unstable/http/HttpClientResponse.js +4 -0
  528. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  529. package/dist/unstable/http/HttpEffect.d.ts +7 -5
  530. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  531. package/dist/unstable/http/HttpEffect.js +46 -54
  532. package/dist/unstable/http/HttpEffect.js.map +1 -1
  533. package/dist/unstable/http/HttpIncomingMessage.d.ts +1 -1
  534. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  535. package/dist/unstable/http/HttpMethod.d.ts +4 -4
  536. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  537. package/dist/unstable/http/HttpMethod.js +3 -3
  538. package/dist/unstable/http/HttpMethod.js.map +1 -1
  539. package/dist/unstable/http/HttpMiddleware.d.ts +1 -6
  540. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  541. package/dist/unstable/http/HttpMiddleware.js +8 -17
  542. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  543. package/dist/unstable/http/HttpServerError.d.ts +20 -33
  544. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  545. package/dist/unstable/http/HttpServerError.js +37 -44
  546. package/dist/unstable/http/HttpServerError.js.map +1 -1
  547. package/dist/unstable/http/HttpServerRequest.d.ts +12 -1
  548. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  549. package/dist/unstable/http/HttpServerRequest.js +291 -1
  550. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  551. package/dist/unstable/http/HttpServerRespondable.d.ts +2 -2
  552. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  553. package/dist/unstable/http/HttpServerRespondable.js +5 -5
  554. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  555. package/dist/unstable/http/HttpServerResponse.d.ts +50 -3
  556. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  557. package/dist/unstable/http/HttpServerResponse.js +234 -1
  558. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  559. package/dist/unstable/http/HttpStaticServer.d.ts +69 -0
  560. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -0
  561. package/dist/unstable/http/HttpStaticServer.js +353 -0
  562. package/dist/unstable/http/HttpStaticServer.js.map +1 -0
  563. package/dist/unstable/http/Multipart.d.ts +3 -3
  564. package/dist/unstable/http/UrlParams.d.ts +14 -6
  565. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  566. package/dist/unstable/http/UrlParams.js +1 -1
  567. package/dist/unstable/http/UrlParams.js.map +1 -1
  568. package/dist/unstable/http/index.d.ts +4 -0
  569. package/dist/unstable/http/index.d.ts.map +1 -1
  570. package/dist/unstable/http/index.js +4 -0
  571. package/dist/unstable/http/index.js.map +1 -1
  572. package/dist/unstable/http/internal/preResponseHandler.d.ts +2 -0
  573. package/dist/unstable/http/internal/preResponseHandler.d.ts.map +1 -0
  574. package/dist/unstable/http/internal/preResponseHandler.js +10 -0
  575. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -0
  576. package/dist/unstable/httpapi/HttpApi.d.ts +4 -4
  577. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  578. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  579. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +11 -5
  580. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  581. package/dist/unstable/httpapi/HttpApiBuilder.js +28 -18
  582. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  583. package/dist/unstable/httpapi/HttpApiClient.d.ts +66 -6
  584. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  585. package/dist/unstable/httpapi/HttpApiClient.js +40 -3
  586. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  587. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +41 -54
  588. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  589. package/dist/unstable/httpapi/HttpApiEndpoint.js +17 -26
  590. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  591. package/dist/unstable/httpapi/HttpApiError.d.ts +16 -14
  592. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  593. package/dist/unstable/httpapi/HttpApiError.js +44 -29
  594. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  595. package/dist/unstable/httpapi/HttpApiGroup.d.ts +4 -3
  596. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  597. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  598. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +4 -4
  599. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  600. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  601. package/dist/unstable/httpapi/HttpApiScalar.d.ts +6 -0
  602. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  603. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  604. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +2 -2
  605. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  606. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  607. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  608. package/dist/unstable/httpapi/OpenApi.js +32 -21
  609. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  610. package/dist/unstable/observability/Otlp.d.ts +12 -12
  611. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  612. package/dist/unstable/observability/OtlpExporter.d.ts +2 -2
  613. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  614. package/dist/unstable/observability/OtlpExporter.js +1 -1
  615. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  616. package/dist/unstable/observability/OtlpLogger.d.ts +4 -4
  617. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  618. package/dist/unstable/observability/OtlpLogger.js +7 -4
  619. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  620. package/dist/unstable/observability/OtlpMetrics.d.ts +4 -4
  621. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  622. package/dist/unstable/observability/OtlpTracer.d.ts +4 -4
  623. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  624. package/dist/unstable/persistence/KeyValueStore.d.ts +1 -1
  625. package/dist/unstable/persistence/KeyValueStore.js +6 -6
  626. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  627. package/dist/unstable/persistence/Persistable.d.ts +2 -2
  628. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  629. package/dist/unstable/persistence/Persistable.js +1 -1
  630. package/dist/unstable/persistence/Persistable.js.map +1 -1
  631. package/dist/unstable/persistence/PersistedCache.d.ts +6 -5
  632. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  633. package/dist/unstable/persistence/PersistedCache.js +2 -1
  634. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  635. package/dist/unstable/persistence/PersistedQueue.d.ts +12 -12
  636. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  637. package/dist/unstable/persistence/PersistedQueue.js +12 -11
  638. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  639. package/dist/unstable/persistence/Persistence.d.ts +1 -1
  640. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  641. package/dist/unstable/persistence/Persistence.js +2 -2
  642. package/dist/unstable/persistence/Persistence.js.map +1 -1
  643. package/dist/unstable/persistence/RateLimiter.d.ts +3 -3
  644. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  645. package/dist/unstable/persistence/RateLimiter.js +1 -1
  646. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  647. package/dist/unstable/process/ChildProcess.d.ts +5 -128
  648. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  649. package/dist/unstable/process/ChildProcess.js +1 -65
  650. package/dist/unstable/process/ChildProcess.js.map +1 -1
  651. package/dist/unstable/process/ChildProcessSpawner.d.ts +45 -7
  652. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  653. package/dist/unstable/process/ChildProcessSpawner.js +21 -1
  654. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  655. package/dist/unstable/reactivity/Atom.d.ts +73 -12
  656. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  657. package/dist/unstable/reactivity/Atom.js +107 -20
  658. package/dist/unstable/reactivity/Atom.js.map +1 -1
  659. package/dist/unstable/reactivity/AtomHttpApi.d.ts +10 -12
  660. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  661. package/dist/unstable/reactivity/AtomHttpApi.js +42 -12
  662. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  663. package/dist/unstable/reactivity/AtomRegistry.d.ts +6 -0
  664. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  665. package/dist/unstable/reactivity/AtomRegistry.js +50 -9
  666. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  667. package/dist/unstable/reactivity/AtomRpc.d.ts +9 -9
  668. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  669. package/dist/unstable/reactivity/AtomRpc.js +47 -21
  670. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  671. package/dist/unstable/reactivity/Hydration.d.ts +39 -0
  672. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -0
  673. package/dist/unstable/reactivity/Hydration.js +76 -0
  674. package/dist/unstable/reactivity/Hydration.js.map +1 -0
  675. package/dist/unstable/reactivity/index.d.ts +4 -0
  676. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  677. package/dist/unstable/reactivity/index.js +4 -0
  678. package/dist/unstable/reactivity/index.js.map +1 -1
  679. package/dist/unstable/rpc/Rpc.d.ts +5 -5
  680. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  681. package/dist/unstable/rpc/Rpc.js.map +1 -1
  682. package/dist/unstable/rpc/RpcClient.d.ts +5 -26
  683. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  684. package/dist/unstable/rpc/RpcClient.js +6 -13
  685. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  686. package/dist/unstable/rpc/RpcGroup.d.ts +3 -5
  687. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  688. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  689. package/dist/unstable/rpc/RpcMiddleware.d.ts +8 -8
  690. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  691. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  692. package/dist/unstable/rpc/RpcSchema.d.ts +13 -0
  693. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  694. package/dist/unstable/rpc/RpcSchema.js +14 -0
  695. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  696. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  697. package/dist/unstable/rpc/RpcSerialization.js +34 -9
  698. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  699. package/dist/unstable/rpc/RpcServer.d.ts +5 -9
  700. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  701. package/dist/unstable/rpc/RpcServer.js +17 -17
  702. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  703. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  704. package/dist/unstable/rpc/Utils.js +3 -2
  705. package/dist/unstable/rpc/Utils.js.map +1 -1
  706. package/dist/unstable/schema/Model.d.ts +22 -1
  707. package/dist/unstable/schema/Model.d.ts.map +1 -1
  708. package/dist/unstable/schema/Model.js +15 -0
  709. package/dist/unstable/schema/Model.js.map +1 -1
  710. package/dist/unstable/schema/VariantSchema.d.ts +5 -5
  711. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  712. package/dist/unstable/schema/VariantSchema.js +6 -6
  713. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  714. package/dist/unstable/socket/Socket.d.ts +4 -4
  715. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  716. package/dist/unstable/socket/Socket.js +6 -5
  717. package/dist/unstable/socket/Socket.js.map +1 -1
  718. package/dist/unstable/socket/SocketServer.d.ts +3 -3
  719. package/dist/unstable/sql/Migrator.d.ts +1 -1
  720. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  721. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  722. package/dist/unstable/sql/SqlError.d.ts +14 -14
  723. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  724. package/dist/unstable/sql/SqlError.js +9 -3
  725. package/dist/unstable/sql/SqlError.js.map +1 -1
  726. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  727. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  728. package/dist/unstable/sql/SqlModel.js +3 -3
  729. package/dist/unstable/sql/SqlModel.js.map +1 -1
  730. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  731. package/dist/unstable/sql/SqlResolver.js +17 -8
  732. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  733. package/dist/unstable/sql/SqlSchema.d.ts +17 -6
  734. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  735. package/dist/unstable/sql/SqlSchema.js +17 -7
  736. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  737. package/dist/unstable/sql/Statement.js +0 -1
  738. package/dist/unstable/sql/Statement.js.map +1 -1
  739. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  740. package/dist/unstable/workers/Worker.js +2 -1
  741. package/dist/unstable/workers/Worker.js.map +1 -1
  742. package/dist/unstable/workflow/DurableClock.d.ts +3 -3
  743. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  744. package/dist/unstable/workflow/DurableClock.js +3 -3
  745. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  746. package/dist/unstable/workflow/DurableDeferred.js +2 -2
  747. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  748. package/dist/unstable/workflow/Workflow.d.ts +3 -3
  749. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  750. package/dist/unstable/workflow/Workflow.js +1 -1
  751. package/dist/unstable/workflow/Workflow.js.map +1 -1
  752. package/dist/unstable/workflow/WorkflowEngine.d.ts +12 -1
  753. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  754. package/dist/unstable/workflow/WorkflowEngine.js +137 -1
  755. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  756. package/package.json +2 -2
  757. package/src/Array.ts +192 -342
  758. package/src/Brand.ts +1 -1
  759. package/src/Cache.ts +9 -8
  760. package/src/Cause.ts +2 -2
  761. package/src/Channel.ts +557 -141
  762. package/src/Chunk.ts +81 -268
  763. package/src/Combiner.ts +280 -13
  764. package/src/Config.ts +186 -24
  765. package/src/Cron.ts +3 -3
  766. package/src/Data.ts +539 -376
  767. package/src/DateTime.ts +59 -241
  768. package/src/Duration.ts +91 -36
  769. package/src/Effect.ts +1477 -1126
  770. package/src/Encoding.ts +879 -0
  771. package/src/Equal.ts +278 -111
  772. package/src/ErrorReporter.ts +457 -0
  773. package/src/Exit.ts +24 -12
  774. package/src/Fiber.ts +10 -2
  775. package/src/FileSystem.ts +7 -8
  776. package/src/Filter.ts +52 -63
  777. package/src/Formatter.ts +253 -51
  778. package/src/Function.ts +2 -10
  779. package/src/Graph.ts +24 -11
  780. package/src/HashMap.ts +15 -14
  781. package/src/Iterable.ts +104 -50
  782. package/src/JsonSchema.ts +383 -10
  783. package/src/Latch.ts +112 -0
  784. package/src/Layer.ts +245 -150
  785. package/src/LayerMap.ts +9 -9
  786. package/src/LogLevel.ts +37 -0
  787. package/src/Logger.ts +33 -100
  788. package/src/ManagedRuntime.ts +2 -2
  789. package/src/Metric.ts +6 -8
  790. package/src/Newtype.ts +308 -0
  791. package/src/Optic.ts +948 -19
  792. package/src/Option.ts +32 -24
  793. package/src/Pipeable.ts +32 -1
  794. package/src/PlatformError.ts +5 -5
  795. package/src/Pool.ts +13 -11
  796. package/src/PubSub.ts +10 -9
  797. package/src/Pull.ts +1 -1
  798. package/src/Queue.ts +0 -1
  799. package/src/Random.ts +51 -14
  800. package/src/RcMap.ts +5 -5
  801. package/src/RcRef.ts +1 -1
  802. package/src/Record.ts +42 -152
  803. package/src/Reducer.ts +166 -7
  804. package/src/References.ts +10 -5
  805. package/src/Request.ts +3 -2
  806. package/src/RequestResolver.ts +29 -49
  807. package/src/Result.ts +2 -4
  808. package/src/Runtime.ts +102 -6
  809. package/src/Schedule.ts +462 -242
  810. package/src/Scheduler.ts +12 -0
  811. package/src/Schema.ts +3116 -312
  812. package/src/SchemaAST.ts +166 -33
  813. package/src/SchemaGetter.ts +15 -17
  814. package/src/SchemaParser.ts +11 -0
  815. package/src/SchemaRepresentation.ts +51 -26
  816. package/src/SchemaTransformation.ts +189 -4
  817. package/src/ScopedCache.ts +3 -3
  818. package/src/Semaphore.ts +356 -0
  819. package/src/ServiceMap.ts +50 -40
  820. package/src/Sink.ts +78 -26
  821. package/src/Stdio.ts +27 -4
  822. package/src/Stream.ts +586 -608
  823. package/src/Struct.ts +26 -0
  824. package/src/SubscriptionRef.ts +3 -2
  825. package/src/SynchronizedRef.ts +3 -2
  826. package/src/Trie.ts +18 -17
  827. package/src/TxChunk.ts +72 -53
  828. package/src/TxDeferred.ts +394 -0
  829. package/src/TxHashMap.ts +332 -285
  830. package/src/TxHashSet.ts +111 -116
  831. package/src/TxPriorityQueue.ts +767 -0
  832. package/src/TxPubSub.ts +789 -0
  833. package/src/TxQueue.ts +241 -251
  834. package/src/TxReentrantLock.ts +753 -0
  835. package/src/TxRef.ts +50 -38
  836. package/src/TxSemaphore.ts +29 -32
  837. package/src/TxSubscriptionRef.ts +639 -0
  838. package/src/Types.ts +73 -19
  839. package/src/Utils.ts +137 -111
  840. package/src/index.ts +728 -24
  841. package/src/internal/core.ts +12 -5
  842. package/src/internal/dateTime.ts +69 -81
  843. package/src/internal/effect.ts +775 -302
  844. package/src/internal/hashMap.ts +8 -7
  845. package/src/internal/random.ts +20 -0
  846. package/src/internal/rcRef.ts +4 -3
  847. package/src/internal/request.ts +2 -2
  848. package/src/internal/schema/annotations.ts +2 -0
  849. package/src/internal/schema/representation.ts +45 -94
  850. package/src/internal/schema/schema.ts +1 -0
  851. package/src/internal/schema/to-codec.ts +7 -17
  852. package/src/internal/trie.ts +15 -9
  853. package/src/testing/TestClock.ts +13 -11
  854. package/src/testing/TestSchema.ts +332 -35
  855. package/src/testing/index.ts +64 -1
  856. package/src/unstable/ai/AiError.ts +105 -48
  857. package/src/unstable/ai/Chat.ts +58 -74
  858. package/src/unstable/ai/LanguageModel.ts +294 -158
  859. package/src/unstable/ai/McpSchema.ts +73 -13
  860. package/src/unstable/ai/McpServer.ts +271 -61
  861. package/src/unstable/ai/Model.ts +40 -9
  862. package/src/unstable/ai/Prompt.ts +37 -37
  863. package/src/unstable/ai/Response.ts +25 -25
  864. package/src/unstable/ai/Tool.ts +20 -14
  865. package/src/unstable/ai/Toolkit.ts +5 -14
  866. package/src/unstable/ai/index.ts +1 -1
  867. package/src/unstable/ai/internal/codec-transformer.ts +0 -7
  868. package/src/unstable/cli/CliError.ts +47 -59
  869. package/src/unstable/cli/CliOutput.ts +75 -6
  870. package/src/unstable/cli/Command.ts +796 -187
  871. package/src/unstable/cli/Completions.ts +36 -0
  872. package/src/unstable/cli/GlobalFlag.ts +242 -0
  873. package/src/unstable/cli/HelpDoc.ts +80 -2
  874. package/src/unstable/cli/Primitive.ts +1 -1
  875. package/src/unstable/cli/Prompt.ts +31 -9
  876. package/src/unstable/cli/index.ts +10 -0
  877. package/src/unstable/cli/internal/command.ts +109 -63
  878. package/src/unstable/cli/internal/completions/CommandDescriptor.ts +7 -2
  879. package/src/unstable/cli/internal/config.ts +49 -0
  880. package/src/unstable/cli/internal/help.ts +171 -0
  881. package/src/unstable/cli/internal/parser.ts +66 -61
  882. package/src/unstable/cluster/ClusterCron.ts +2 -2
  883. package/src/unstable/cluster/ClusterWorkflowEngine.ts +6 -5
  884. package/src/unstable/cluster/DeliverAt.ts +1 -1
  885. package/src/unstable/cluster/Entity.ts +11 -10
  886. package/src/unstable/cluster/EntityResource.ts +4 -4
  887. package/src/unstable/cluster/Envelope.ts +1 -1
  888. package/src/unstable/cluster/K8sHttpClient.ts +5 -5
  889. package/src/unstable/cluster/MessageStorage.ts +3 -5
  890. package/src/unstable/cluster/Runners.ts +6 -5
  891. package/src/unstable/cluster/Sharding.ts +12 -10
  892. package/src/unstable/cluster/ShardingConfig.ts +30 -31
  893. package/src/unstable/cluster/SqlRunnerStorage.ts +1 -1
  894. package/src/unstable/cluster/internal/entityManager.ts +9 -8
  895. package/src/unstable/cluster/internal/entityReaper.ts +2 -1
  896. package/src/unstable/cluster/internal/resourceRef.ts +2 -1
  897. package/src/unstable/encoding/Ndjson.ts +17 -17
  898. package/src/unstable/encoding/Sse.ts +3 -5
  899. package/src/unstable/eventlog/EventLog.ts +2 -1
  900. package/src/unstable/http/Cookies.ts +87 -3
  901. package/src/unstable/http/Headers.ts +62 -13
  902. package/src/unstable/http/HttpBody.ts +6 -6
  903. package/src/unstable/http/HttpClient.ts +374 -33
  904. package/src/unstable/http/HttpClientRequest.ts +38 -30
  905. package/src/unstable/http/HttpClientResponse.ts +9 -4
  906. package/src/unstable/http/HttpEffect.ts +54 -68
  907. package/src/unstable/http/HttpIncomingMessage.ts +1 -1
  908. package/src/unstable/http/HttpMethod.ts +16 -4
  909. package/src/unstable/http/HttpMiddleware.ts +9 -24
  910. package/src/unstable/http/HttpServerError.ts +42 -45
  911. package/src/unstable/http/HttpServerRequest.ts +391 -4
  912. package/src/unstable/http/HttpServerRespondable.ts +6 -6
  913. package/src/unstable/http/HttpServerResponse.ts +337 -4
  914. package/src/unstable/http/HttpStaticServer.ts +456 -0
  915. package/src/unstable/http/Multipart.ts +2 -2
  916. package/src/unstable/http/UrlParams.ts +20 -5
  917. package/src/unstable/http/index.ts +5 -0
  918. package/src/unstable/http/internal/preResponseHandler.ts +15 -0
  919. package/src/unstable/httpapi/HttpApi.ts +6 -6
  920. package/src/unstable/httpapi/HttpApiBuilder.ts +83 -30
  921. package/src/unstable/httpapi/HttpApiClient.ts +100 -11
  922. package/src/unstable/httpapi/HttpApiEndpoint.ts +71 -87
  923. package/src/unstable/httpapi/HttpApiError.ts +51 -28
  924. package/src/unstable/httpapi/HttpApiGroup.ts +7 -6
  925. package/src/unstable/httpapi/HttpApiMiddleware.ts +4 -4
  926. package/src/unstable/httpapi/HttpApiScalar.ts +6 -0
  927. package/src/unstable/httpapi/HttpApiSecurity.ts +3 -3
  928. package/src/unstable/httpapi/OpenApi.ts +41 -23
  929. package/src/unstable/observability/Otlp.ts +12 -12
  930. package/src/unstable/observability/OtlpExporter.ts +3 -3
  931. package/src/unstable/observability/OtlpLogger.ts +13 -9
  932. package/src/unstable/observability/OtlpMetrics.ts +4 -4
  933. package/src/unstable/observability/OtlpTracer.ts +4 -4
  934. package/src/unstable/persistence/KeyValueStore.ts +6 -6
  935. package/src/unstable/persistence/Persistable.ts +3 -3
  936. package/src/unstable/persistence/PersistedCache.ts +20 -9
  937. package/src/unstable/persistence/PersistedQueue.ts +25 -24
  938. package/src/unstable/persistence/Persistence.ts +3 -3
  939. package/src/unstable/persistence/RateLimiter.ts +4 -4
  940. package/src/unstable/process/ChildProcess.ts +6 -208
  941. package/src/unstable/process/ChildProcessSpawner.ts +75 -14
  942. package/src/unstable/reactivity/Atom.ts +211 -50
  943. package/src/unstable/reactivity/AtomHttpApi.ts +66 -31
  944. package/src/unstable/reactivity/AtomRegistry.ts +61 -9
  945. package/src/unstable/reactivity/AtomRpc.ts +51 -20
  946. package/src/unstable/reactivity/Hydration.ts +112 -0
  947. package/src/unstable/reactivity/index.ts +5 -0
  948. package/src/unstable/rpc/Rpc.ts +7 -9
  949. package/src/unstable/rpc/RpcClient.ts +12 -54
  950. package/src/unstable/rpc/RpcGroup.ts +7 -7
  951. package/src/unstable/rpc/RpcMiddleware.ts +15 -9
  952. package/src/unstable/rpc/RpcSchema.ts +17 -0
  953. package/src/unstable/rpc/RpcSerialization.ts +44 -9
  954. package/src/unstable/rpc/RpcServer.ts +28 -32
  955. package/src/unstable/rpc/Utils.ts +3 -2
  956. package/src/unstable/schema/Model.ts +31 -0
  957. package/src/unstable/schema/VariantSchema.ts +9 -9
  958. package/src/unstable/socket/Socket.ts +16 -17
  959. package/src/unstable/sql/SqlClient.ts +1 -1
  960. package/src/unstable/sql/SqlError.ts +11 -9
  961. package/src/unstable/sql/SqlModel.ts +5 -5
  962. package/src/unstable/sql/SqlResolver.ts +17 -7
  963. package/src/unstable/sql/SqlSchema.ts +42 -26
  964. package/src/unstable/sql/Statement.ts +0 -1
  965. package/src/unstable/workers/Worker.ts +2 -1
  966. package/src/unstable/workflow/DurableClock.ts +8 -8
  967. package/src/unstable/workflow/DurableDeferred.ts +2 -2
  968. package/src/unstable/workflow/Workflow.ts +6 -2
  969. package/src/unstable/workflow/WorkflowEngine.ts +185 -2
  970. package/dist/PartitionedSemaphore.d.ts +0 -52
  971. package/dist/PartitionedSemaphore.d.ts.map +0 -1
  972. package/dist/PartitionedSemaphore.js.map +0 -1
  973. package/dist/encoding/Base64.d.ts +0 -67
  974. package/dist/encoding/Base64.d.ts.map +0 -1
  975. package/dist/encoding/Base64.js +0 -146
  976. package/dist/encoding/Base64.js.map +0 -1
  977. package/dist/encoding/Base64Url.d.ts +0 -60
  978. package/dist/encoding/Base64Url.d.ts.map +0 -1
  979. package/dist/encoding/Base64Url.js +0 -89
  980. package/dist/encoding/Base64Url.js.map +0 -1
  981. package/dist/encoding/EncodingError.d.ts +0 -31
  982. package/dist/encoding/EncodingError.d.ts.map +0 -1
  983. package/dist/encoding/EncodingError.js +0 -22
  984. package/dist/encoding/EncodingError.js.map +0 -1
  985. package/dist/encoding/Hex.d.ts +0 -61
  986. package/dist/encoding/Hex.d.ts.map +0 -1
  987. package/dist/encoding/Hex.js +0 -115
  988. package/dist/encoding/Hex.js.map +0 -1
  989. package/dist/encoding/index.d.ts +0 -26
  990. package/dist/encoding/index.d.ts.map +0 -1
  991. package/dist/encoding/index.js +0 -27
  992. package/dist/encoding/index.js.map +0 -1
  993. package/dist/unstable/cli/internal/builtInFlags.d.ts +0 -7
  994. package/dist/unstable/cli/internal/builtInFlags.d.ts.map +0 -1
  995. package/dist/unstable/cli/internal/builtInFlags.js +0 -44
  996. package/dist/unstable/cli/internal/builtInFlags.js.map +0 -1
  997. package/dist/unstable/cli/internal/completions/Completions.d.ts +0 -2
  998. package/dist/unstable/cli/internal/completions/Completions.d.ts.map +0 -1
  999. package/dist/unstable/cli/internal/completions/Completions.js +0 -23
  1000. package/dist/unstable/cli/internal/completions/Completions.js.map +0 -1
  1001. package/src/PartitionedSemaphore.ts +0 -182
  1002. package/src/encoding/Base64.ts +0 -366
  1003. package/src/encoding/Base64Url.ts +0 -104
  1004. package/src/encoding/EncodingError.ts +0 -35
  1005. package/src/encoding/Hex.ts +0 -390
  1006. package/src/encoding/index.ts +0 -31
  1007. package/src/unstable/cli/internal/builtInFlags.ts +0 -78
  1008. package/src/unstable/cli/internal/completions/Completions.ts +0 -31
@@ -135,7 +135,7 @@ export interface Service {
135
135
  */
136
136
  readonly generateObject: <
137
137
  ObjectEncoded extends Record<string, any>,
138
- StructuredOutputSchema extends Schema.Codec<any, ObjectEncoded, any, any>,
138
+ StructuredOutputSchema extends Schema.Encoder<ObjectEncoded, unknown>,
139
139
  Options extends NoExcessProperties<
140
140
  GenerateObjectOptions<any, StructuredOutputSchema>,
141
141
  Options
@@ -180,22 +180,6 @@ export type CodecTransformer = <T, E, RD, RE>(schema: Schema.Codec<T, E, RD, RE>
180
180
  readonly jsonSchema: JsonSchema.JsonSchema
181
181
  }
182
182
 
183
- /**
184
- * A `ServiceMap.Reference` that holds the current `CodecTransformer` used by
185
- * `LanguageModel.generateObject` to adapt structured output schemas for the
186
- * active provider.
187
- *
188
- * By default, this is the identity function (no transformation). Provider
189
- * packages (e.g. `@effect/ai-anthropic`) override this reference with a
190
- * provider-specific transformer so that schemas are automatically rewritten
191
- * before being sent to the model as well as before decoding the generated value.
192
- *
193
- * @since 4.0.0
194
- * @category services
195
- */
196
- export const CurrentCodecTransformer: ServiceMap.Reference<CodecTransformer> =
197
- InternalCodecTransformer.CurrentCodecTransformer
198
-
199
183
  /**
200
184
  * The default codec transformer that passes schemas through without
201
185
  * provider-specific rewrites.
@@ -221,15 +205,7 @@ export interface GenerateTextOptions<Tools extends Record<string, Tool.Any>> {
221
205
  * A toolkit containing both the tools and the tool call handler to use to
222
206
  * augment text generation.
223
207
  */
224
- readonly toolkit?:
225
- | Toolkit.WithHandler<Tools>
226
- | Effect.Yieldable<
227
- Toolkit.Toolkit<Tools>,
228
- Toolkit.WithHandler<Tools>,
229
- never,
230
- any
231
- >
232
- | undefined
208
+ readonly toolkit?: ToolkitOption<Tools> | undefined
233
209
 
234
210
  /**
235
211
  * The tool choice mode for the language model.
@@ -483,6 +459,89 @@ export class GenerateObjectResponse<
483
459
  // Utility Types
484
460
  // =============================================================================
485
461
 
462
+ /**
463
+ * The supported toolkit option shapes for language model operations.
464
+ *
465
+ * @since 4.0.0
466
+ * @category utility types
467
+ */
468
+ export type ToolkitOption<
469
+ Tools extends Record<string, Tool.Any>,
470
+ E = never,
471
+ R = any
472
+ > = Tools extends any ? (
473
+ | Toolkit.WithHandler<Tools>
474
+ | Effect.Yieldable<
475
+ Toolkit.Toolkit<Tools>,
476
+ Toolkit.WithHandler<Tools>,
477
+ E,
478
+ R
479
+ >
480
+ )
481
+ : never
482
+
483
+ type ExtractToolsFromToolkitOption<ToolkitValue> = ToolkitValue extends Toolkit.WithHandler<infer Tools> ? Tools
484
+ : ToolkitValue extends Effect.Yieldable<
485
+ Toolkit.Toolkit<infer Tools>,
486
+ Toolkit.WithHandler<infer _Tools>,
487
+ infer _E,
488
+ infer _R
489
+ > ? Tools
490
+ : never
491
+
492
+ /**
493
+ * Utility type that extracts the toolset from LanguageModel options.
494
+ *
495
+ * @since 4.0.0
496
+ * @category utility types
497
+ */
498
+ export type ExtractTools<Options> = Options extends {
499
+ readonly toolkit: infer ToolkitValue
500
+ } ? ExtractToolsFromToolkitOption<Exclude<ToolkitValue, undefined>>
501
+ : {}
502
+
503
+ type ExtractErrorFromToolkitOption<ToolkitValue, DisableToolCallResolution extends boolean> = ToolkitValue extends
504
+ Toolkit.WithHandler<infer Tools> ?
505
+ | AiError.AiError
506
+ | (DisableToolCallResolution extends true ? never : Tool.HandlerError<Tools[keyof Tools]>)
507
+ : ToolkitValue extends Effect.Yieldable<
508
+ Toolkit.Toolkit<infer Tools>,
509
+ Toolkit.WithHandler<infer _Tools>,
510
+ infer E,
511
+ infer _R
512
+ > ? AiError.AiError | E | (DisableToolCallResolution extends true ? never : Tool.HandlerError<Tools[keyof Tools]>)
513
+ : AiError.AiError
514
+
515
+ type ExtractServicesFromToolkitOption<ToolkitValue> = ToolkitValue extends Toolkit.WithHandler<infer Tools> ?
516
+ | Tool.HandlerServices<Tools[keyof Tools]>
517
+ | Tool.ResultDecodingServices<Tools[keyof Tools]>
518
+ : ToolkitValue extends Effect.Yieldable<
519
+ Toolkit.Toolkit<infer Tools>,
520
+ Toolkit.WithHandler<infer _Tools>,
521
+ infer _E,
522
+ infer R
523
+ > ?
524
+ | Tool.HandlerServices<Tools[keyof Tools]>
525
+ | Tool.ResultDecodingServices<Tools[keyof Tools]>
526
+ | R
527
+ : never
528
+
529
+ type ExtractToolkitResolutionError<ToolkitValue> = ToolkitValue extends Effect.Yieldable<
530
+ Toolkit.Toolkit<infer _Tools>,
531
+ Toolkit.WithHandler<infer _Tools>,
532
+ infer E,
533
+ infer _R
534
+ > ? E
535
+ : never
536
+
537
+ type ExtractToolkitResolutionServices<ToolkitValue> = ToolkitValue extends Effect.Yieldable<
538
+ Toolkit.Toolkit<infer _Tools>,
539
+ Toolkit.WithHandler<infer _Tools>,
540
+ infer _E,
541
+ infer R
542
+ > ? R
543
+ : never
544
+
486
545
  /**
487
546
  * Utility type that extracts the error type from LanguageModel options.
488
547
  *
@@ -493,29 +552,15 @@ export class GenerateObjectResponse<
493
552
  * @category utility types
494
553
  */
495
554
  export type ExtractError<Options> = Options extends {
496
- readonly toolkit: Toolkit.WithHandler<infer _Tools>
497
555
  readonly disableToolCallResolution: true
498
- } ? AiError.AiError
499
- : Options extends {
500
- readonly toolkit: Effect.Yieldable<
501
- Toolkit.Toolkit<infer _Tools>,
502
- Toolkit.WithHandler<infer _Tools>,
503
- infer _E,
504
- infer _R
505
- >
506
- readonly disableToolCallResolution: true
507
- } ? AiError.AiError | _E
556
+ readonly toolkit: infer ToolkitValue
557
+ } ? ExtractErrorFromToolkitOption<Exclude<ToolkitValue, undefined>, true>
508
558
  : Options extends {
509
- readonly toolkit: Toolkit.WithHandler<infer _Tools>
510
- } ? AiError.AiError | Tool.HandlerError<_Tools[keyof _Tools]>
559
+ readonly toolkit: infer ToolkitValue
560
+ } ? ExtractErrorFromToolkitOption<Exclude<ToolkitValue, undefined>, false>
511
561
  : Options extends {
512
- readonly toolkit: Effect.Yieldable<
513
- Toolkit.Toolkit<infer _Tools>,
514
- Toolkit.WithHandler<infer _Tools>,
515
- infer _E,
516
- infer _R
517
- >
518
- } ? AiError.AiError | Tool.HandlerError<_Tools[keyof _Tools]> | _E
562
+ readonly disableToolCallResolution: true
563
+ } ? AiError.AiError
519
564
  : AiError.AiError
520
565
 
521
566
  /**
@@ -527,27 +572,11 @@ export type ExtractError<Options> = Options extends {
527
572
  * @category utility types
528
573
  */
529
574
  export type ExtractServices<Options> = Options extends {
530
- readonly toolkit: Toolkit.WithHandler<infer _Tools>
531
- }
532
- // Required for tool call execution
533
- ?
534
- | Tool.ResultEncodingServices<_Tools[keyof _Tools]>
535
- // Required for decoding large language model responses
536
- | Tool.ResultDecodingServices<_Tools[keyof _Tools]>
575
+ readonly disableToolCallResolution: true
576
+ } ? never
537
577
  : Options extends {
538
- readonly toolkit: Effect.Yieldable<
539
- Toolkit.Toolkit<infer _Tools>,
540
- Toolkit.WithHandler<infer _Tools>,
541
- infer _E,
542
- infer _R
543
- >
544
- }
545
- // Required for tool call execution
546
- ?
547
- | Tool.ResultEncodingServices<_Tools[keyof _Tools]>
548
- // Required for decoding large language model responses
549
- | Tool.ResultDecodingServices<_Tools[keyof _Tools]>
550
- | _R
578
+ readonly toolkit: infer Toolkit
579
+ } ? ExtractServicesFromToolkitOption<Exclude<Toolkit, undefined>>
551
580
  : never
552
581
 
553
582
  // =============================================================================
@@ -622,12 +651,15 @@ export interface ProviderOptions {
622
651
  }
623
652
 
624
653
  /**
625
- * Parameters required to construct a LanguageModel service.
654
+ * Creates a LanguageModel service from provider-specific implementations.
655
+ *
656
+ * This constructor takes provider-specific implementations for text generation
657
+ * and streaming text generation and returns a LanguageModel service.
626
658
  *
627
659
  * @since 4.0.0
628
- * @category models
660
+ * @category constructors
629
661
  */
630
- export interface ConstructorParams {
662
+ export const make: (params: {
631
663
  /**
632
664
  * A method which requests text generation from the large language model
633
665
  * provider.
@@ -648,19 +680,14 @@ export interface ConstructorParams {
648
680
  readonly streamText: (
649
681
  options: ProviderOptions
650
682
  ) => Stream.Stream<Response.StreamPartEncoded, AiError.AiError, IdGenerator>
651
- }
652
683
 
653
- /**
654
- * Creates a LanguageModel service from provider-specific implementations.
655
- *
656
- * This constructor takes provider-specific implementations for text generation
657
- * and streaming text generation and returns a LanguageModel service.
658
- *
659
- * @since 4.0.0
660
- * @category constructors
661
- */
662
- export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effect.fnUntraced(function*(params) {
663
- const codecTransformer = yield* InternalCodecTransformer.CurrentCodecTransformer
684
+ /**
685
+ * A function that transforms a `Schema.Codec` into a provider-compatible form
686
+ * for structured output generation.
687
+ */
688
+ readonly codecTransformer?: CodecTransformer | undefined
689
+ }) => Effect.Effect<Service> = Effect.fnUntraced(function*(params) {
690
+ const codecTransformer = params.codecTransformer ?? defaultCodecTransformer
664
691
 
665
692
  const parentSpanTransformer = yield* Effect.serviceOption(
666
693
  CurrentSpanTransformer
@@ -721,14 +748,13 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
721
748
  })
722
749
  )),
723
750
  (effect, span) => Effect.withParentSpan(effect, span, { captureStackTrace: false }),
724
- Effect.provideService(IdGenerator, idGenerator),
725
- Effect.provideService(InternalCodecTransformer.CurrentCodecTransformer, codecTransformer)
751
+ Effect.provideService(IdGenerator, idGenerator)
726
752
  )
727
753
  ) as any
728
754
 
729
755
  const generateObject = <
730
756
  ObjectEncoded extends Record<string, any>,
731
- StructuredOutputSchema extends Schema.Codec<any, ObjectEncoded, any, any>,
757
+ StructuredOutputSchema extends Schema.Encoder<ObjectEncoded, unknown>,
732
758
  Options extends NoExcessProperties<
733
759
  GenerateObjectOptions<any, StructuredOutputSchema>,
734
760
  Options
@@ -800,8 +826,7 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
800
826
  })
801
827
  )),
802
828
  (effect, span) => Effect.withParentSpan(effect, span, { captureStackTrace: false }),
803
- Effect.provideService(IdGenerator, idGenerator),
804
- Effect.provideService(InternalCodecTransformer.CurrentCodecTransformer, codecTransformer)
829
+ Effect.provideService(IdGenerator, idGenerator)
805
830
  )
806
831
  ) as any
807
832
  }
@@ -872,8 +897,7 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
872
897
  })
873
898
  : error
874
899
  ),
875
- Stream.provideService(IdGenerator, idGenerator),
876
- Stream.provideService(InternalCodecTransformer.CurrentCodecTransformer, codecTransformer)
900
+ Stream.provideService(IdGenerator, idGenerator)
877
901
  ) as any
878
902
 
879
903
  const generateContent: <
@@ -949,9 +973,8 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
949
973
  return content as Array<Response.Part<Tools>>
950
974
  }
951
975
 
952
- // Pre-resolve tool approvals before calling the LLM
976
+ // Pre-resolve pending tool approvals before calling the LLM
953
977
  if (hasPendingApprovals) {
954
- // Validate all approved tools exist in the toolkit
955
978
  for (const approval of approved) {
956
979
  if (approval.toolCall && !toolkit.tools[approval.toolCall.name]) {
957
980
  return yield* AiError.make({
@@ -965,7 +988,6 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
965
988
  }
966
989
  }
967
990
 
968
- // Execute approved tools and create denial results
969
991
  const approvedResults = yield* executeApprovedToolCalls(
970
992
  approved,
971
993
  toolkit,
@@ -974,18 +996,29 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
974
996
  const deniedResults = createDenialResults(denied)
975
997
  const preResolvedResults = [...approvedResults, ...deniedResults]
976
998
 
977
- // Add pre-resolved results to the prompt
978
999
  if (preResolvedResults.length > 0) {
979
- const toolMessage = Prompt.makeMessage("tool", {
980
- content: preResolvedResults
981
- })
982
1000
  providerOptions.prompt = Prompt.fromMessages([
983
1001
  ...providerOptions.prompt.content,
984
- toolMessage
1002
+ Prompt.makeMessage("tool", { content: preResolvedResults })
985
1003
  ])
986
1004
  }
987
1005
  }
988
1006
 
1007
+ // Strip all resolved approval artifacts (both current and from previous
1008
+ // rounds) in a single pass before sending to the provider.
1009
+ {
1010
+ const { approved: allResolved, denied: allDenied } = collectToolApprovals(
1011
+ providerOptions.prompt.content
1012
+ )
1013
+ if (allResolved.length > 0 || allDenied.length > 0) {
1014
+ providerOptions.prompt = stripResolvedApprovals(
1015
+ providerOptions.prompt,
1016
+ allResolved,
1017
+ allDenied
1018
+ )
1019
+ }
1020
+ }
1021
+
989
1022
  const tools = typeof toolChoice === "object" && "oneOf" in toolChoice
990
1023
  ? Object.values(toolkit.tools).filter((tool) => toolChoice.oneOf.includes(tool.name))
991
1024
  : Object.values(toolkit.tools)
@@ -1040,21 +1073,11 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
1040
1073
  AiError.AiError | Schema.SchemaError,
1041
1074
  IdGenerator
1042
1075
  >,
1043
- Options extends {
1044
- readonly toolkit: Effect.Effect<
1045
- Toolkit.WithHandler<Tools>,
1046
- infer _E,
1047
- infer _R
1048
- >
1049
- } ? _E
1076
+ Options extends { readonly toolkit: infer ToolkitValue } ?
1077
+ ExtractToolkitResolutionError<Exclude<ToolkitValue, undefined>>
1050
1078
  : never,
1051
- Options extends {
1052
- readonly toolkit: Effect.Effect<
1053
- Toolkit.WithHandler<Tools>,
1054
- infer _E,
1055
- infer _R
1056
- >
1057
- } ? _R
1079
+ Options extends { readonly toolkit: infer ToolkitValue } ?
1080
+ ExtractToolkitResolutionServices<Exclude<ToolkitValue, undefined>>
1058
1081
  : never
1059
1082
  > = Effect.fnUntraced(function*<
1060
1083
  Tools extends Record<string, Tool.Any>,
@@ -1099,9 +1122,7 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
1099
1122
  }
1100
1123
 
1101
1124
  // If there is a toolkit resolve and apply it to the provider options
1102
- const toolkit = "asEffect" in options.toolkit
1103
- ? yield* options.toolkit
1104
- : options.toolkit
1125
+ const toolkit = yield* resolveToolkit<Tools, any, any>(options.toolkit)
1105
1126
 
1106
1127
  // If the toolkit is empty, return immediately
1107
1128
  if (Object.values(toolkit.tools).length === 0) {
@@ -1130,9 +1151,10 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
1130
1151
  >
1131
1152
  }
1132
1153
 
1133
- // Pre-resolve tool approvals before calling the LLM
1154
+ // Pre-resolve pending tool approvals before calling the LLM
1155
+ let preResolvedStreamParts: Array<Response.StreamPart<Tools>> = []
1156
+
1134
1157
  if (hasPendingApprovals) {
1135
- // Validate all approved tools exist in the toolkit
1136
1158
  for (const approval of pendingApproved) {
1137
1159
  if (approval.toolCall && !toolkit.tools[approval.toolCall.name]) {
1138
1160
  return yield* AiError.make({
@@ -1146,7 +1168,6 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
1146
1168
  }
1147
1169
  }
1148
1170
 
1149
- // Execute approved tools and create denial results
1150
1171
  const approvedResults = yield* executeApprovedToolCalls(
1151
1172
  pendingApproved,
1152
1173
  toolkit,
@@ -1155,16 +1176,44 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
1155
1176
  const deniedResults = createDenialResults(pendingDenied)
1156
1177
  const preResolvedResults = [...approvedResults, ...deniedResults]
1157
1178
 
1158
- // Add pre-resolved results to the prompt
1159
1179
  if (preResolvedResults.length > 0) {
1160
- const toolMessage = Prompt.makeMessage("tool", {
1161
- content: preResolvedResults
1162
- })
1163
1180
  providerOptions.prompt = Prompt.fromMessages([
1164
1181
  ...providerOptions.prompt.content,
1165
- toolMessage
1182
+ Prompt.makeMessage("tool", { content: preResolvedResults })
1166
1183
  ])
1167
1184
  }
1185
+
1186
+ // Emit pre-resolved tool-results as stream parts so Chat.streamText
1187
+ // persists them to history. This lets collectToolApprovals find them
1188
+ // on subsequent rounds and skip the now-resolved approvals.
1189
+ // Note: r.result is already encoded (from executeApprovedToolCalls /
1190
+ // createDenialResults), so it goes into both result and encodedResult.
1191
+ for (const r of preResolvedResults) {
1192
+ preResolvedStreamParts.push(
1193
+ Response.makePart("tool-result", {
1194
+ id: r.id,
1195
+ name: r.name,
1196
+ providerExecuted: false,
1197
+ preliminary: false,
1198
+ result: r.result,
1199
+ encodedResult: r.result,
1200
+ isFailure: r.isFailure
1201
+ }) as Response.StreamPart<Tools>
1202
+ )
1203
+ }
1204
+ }
1205
+
1206
+ // Strip all resolved approval artifacts (both current and from previous
1207
+ // rounds) in a single pass before sending to the provider.
1208
+ const { approved: allResolved, denied: allDenied } = collectToolApprovals(
1209
+ providerOptions.prompt.content
1210
+ )
1211
+ if (allResolved.length > 0 || allDenied.length > 0) {
1212
+ providerOptions.prompt = stripResolvedApprovals(
1213
+ providerOptions.prompt,
1214
+ allResolved,
1215
+ allDenied
1216
+ )
1168
1217
  }
1169
1218
 
1170
1219
  const tools = typeof toolChoice === "object" && "oneOf" in toolChoice
@@ -1196,11 +1245,17 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
1196
1245
  const queue = yield* Queue.make<
1197
1246
  Response.StreamPart<Tools>,
1198
1247
  | AiError.AiError
1199
- | AiError.AiErrorReason
1200
1248
  | Cause.Done
1201
1249
  | Schema.SchemaError
1202
1250
  >()
1203
1251
 
1252
+ // Emit pre-resolved tool results so Chat.streamText persists them to
1253
+ // history. This ensures collectToolApprovals({ excludeResolved }) can
1254
+ // find the corresponding tool-results on future rounds.
1255
+ if (preResolvedStreamParts.length > 0) {
1256
+ yield* Queue.offerAll(queue, preResolvedStreamParts)
1257
+ }
1258
+
1204
1259
  // FiberSet to track concurrent tool call handlers
1205
1260
  const toolCallFibers = yield* FiberSet.make<void, AiError.AiError>()
1206
1261
 
@@ -1310,20 +1365,27 @@ export const make: (params: ConstructorParams) => Effect.Effect<Service> = Effec
1310
1365
  * @since 4.0.0
1311
1366
  * @category text generation
1312
1367
  */
1313
- export const generateText = <
1314
- Options extends NoExcessProperties<GenerateTextOptions<any>, Options>,
1315
- Tools extends Record<string, Tool.Any> = {}
1368
+ export function generateText<
1369
+ Options extends NoExcessProperties<GenerateTextOptions<any>, Options>
1316
1370
  >(
1317
- options: Options & GenerateTextOptions<Tools>
1371
+ options: Options & GenerateTextOptions<ExtractTools<Options>>
1318
1372
  ): Effect.Effect<
1319
- GenerateTextResponse<Tools>,
1373
+ GenerateTextResponse<ExtractTools<Options>>,
1320
1374
  ExtractError<Options>,
1321
1375
  LanguageModel | ExtractServices<Options>
1322
- > =>
1323
- Effect.flatMap(
1376
+ >
1377
+ export function generateText(
1378
+ options: GenerateTextOptions<any>
1379
+ ): Effect.Effect<
1380
+ GenerateTextResponse<any>,
1381
+ AiError.AiError,
1382
+ LanguageModel
1383
+ > {
1384
+ return Effect.flatMap(
1324
1385
  Effect.service(LanguageModel),
1325
- (model) => model.generateText(options)
1386
+ (model) => model.generateText(options as any)
1326
1387
  )
1388
+ }
1327
1389
 
1328
1390
  /**
1329
1391
  * Generate a structured object from a schema using a language model.
@@ -1357,25 +1419,32 @@ export const generateText = <
1357
1419
  * @since 4.0.0
1358
1420
  * @category object generation
1359
1421
  */
1360
- export const generateObject = <
1422
+ export function generateObject<
1361
1423
  ObjectEncoded extends Record<string, any>,
1362
- StructuredOutputSchema extends Schema.Codec<any, ObjectEncoded, any, any>,
1424
+ StructuredOutputSchema extends Schema.Encoder<ObjectEncoded, unknown>,
1363
1425
  Options extends NoExcessProperties<
1364
1426
  GenerateObjectOptions<any, StructuredOutputSchema>,
1365
1427
  Options
1366
- >,
1367
- Tools extends Record<string, Tool.Any> = {}
1428
+ >
1368
1429
  >(
1369
- options: Options & GenerateObjectOptions<Tools, StructuredOutputSchema>
1430
+ options: Options & GenerateObjectOptions<ExtractTools<Options>, StructuredOutputSchema>
1370
1431
  ): Effect.Effect<
1371
- GenerateObjectResponse<Tools, StructuredOutputSchema["Type"]>,
1432
+ GenerateObjectResponse<ExtractTools<Options>, StructuredOutputSchema["Type"]>,
1372
1433
  ExtractError<Options>,
1373
1434
  ExtractServices<Options> | StructuredOutputSchema["DecodingServices"] | LanguageModel
1374
- > =>
1375
- Effect.flatMap(
1435
+ >
1436
+ export function generateObject(
1437
+ options: GenerateObjectOptions<any, Schema.Top>
1438
+ ): Effect.Effect<
1439
+ GenerateObjectResponse<any, any>,
1440
+ AiError.AiError,
1441
+ LanguageModel
1442
+ > {
1443
+ return Effect.flatMap(
1376
1444
  Effect.service(LanguageModel),
1377
- (model) => model.generateObject(options)
1378
- )
1445
+ (model) => model.generateObject(options as any)
1446
+ ) as any
1447
+ }
1379
1448
 
1380
1449
  /**
1381
1450
  * Generate text using a language model with streaming output.
@@ -1401,20 +1470,27 @@ export const generateObject = <
1401
1470
  * @since 4.0.0
1402
1471
  * @category text generation
1403
1472
  */
1404
- export const streamText = <
1405
- Options extends NoExcessProperties<GenerateTextOptions<any>, Options>,
1406
- Tools extends Record<string, Tool.Any> = {}
1473
+ export function streamText<
1474
+ Options extends NoExcessProperties<GenerateTextOptions<any>, Options>
1407
1475
  >(
1408
- options: Options & GenerateTextOptions<Tools>
1476
+ options: Options & GenerateTextOptions<ExtractTools<Options>>
1409
1477
  ): Stream.Stream<
1410
- Response.StreamPart<Tools>,
1478
+ Response.StreamPart<ExtractTools<Options>>,
1411
1479
  ExtractError<Options>,
1412
1480
  ExtractServices<Options> | LanguageModel
1413
- > =>
1414
- Stream.unwrap(Effect.map(
1481
+ >
1482
+ export function streamText(
1483
+ options: GenerateTextOptions<any>
1484
+ ): Stream.Stream<
1485
+ Response.StreamPart<any>,
1486
+ AiError.AiError,
1487
+ LanguageModel
1488
+ > {
1489
+ return Stream.unwrap(Effect.map(
1415
1490
  Effect.service(LanguageModel),
1416
- (model) => model.streamText(options)
1417
- ))
1491
+ (model) => model.streamText(options as any)
1492
+ )) as any
1493
+ }
1418
1494
 
1419
1495
  // =============================================================================
1420
1496
  // Tool Approval Helpers
@@ -1506,6 +1582,63 @@ const collectToolApprovals = (
1506
1582
  return { approved, denied }
1507
1583
  }
1508
1584
 
1585
+ /**
1586
+ * Strip resolved approval artifacts from the prompt before sending to the
1587
+ * provider. After pre-resolving approvals (executing approved tools and
1588
+ * creating denial results), the original `tool-approval-request` parts in
1589
+ * assistant messages and `tool-approval-response` parts in tool messages are
1590
+ * no longer needed. Leaving them in causes provider-specific errors (e.g.
1591
+ * OpenAI rejects `mcp_approval_response` items that reference approval
1592
+ * requests it never issued).
1593
+ */
1594
+ const stripResolvedApprovals = (
1595
+ prompt: Prompt.Prompt,
1596
+ approved: ReadonlyArray<ApprovalResult>,
1597
+ denied: ReadonlyArray<ApprovalResult>
1598
+ ): Prompt.Prompt => {
1599
+ const resolvedApprovalIds = new Set<string>()
1600
+ for (const a of approved) resolvedApprovalIds.add(a.approvalId)
1601
+ for (const d of denied) resolvedApprovalIds.add(d.approvalId)
1602
+
1603
+ const cleanedMessages: Array<Prompt.Message> = []
1604
+
1605
+ for (const message of prompt.content) {
1606
+ if (message.role === "assistant") {
1607
+ const filteredContent = message.content.filter(
1608
+ (part) =>
1609
+ part.type !== "tool-approval-request" ||
1610
+ !resolvedApprovalIds.has(part.approvalId)
1611
+ )
1612
+ if (filteredContent.length > 0) {
1613
+ cleanedMessages.push(
1614
+ Prompt.makeMessage("assistant", {
1615
+ content: filteredContent,
1616
+ options: message.options
1617
+ })
1618
+ )
1619
+ }
1620
+ } else if (message.role === "tool") {
1621
+ const filteredContent = message.content.filter(
1622
+ (part) =>
1623
+ part.type !== "tool-approval-response" ||
1624
+ !resolvedApprovalIds.has(part.approvalId)
1625
+ )
1626
+ if (filteredContent.length > 0) {
1627
+ cleanedMessages.push(
1628
+ Prompt.makeMessage("tool", {
1629
+ content: filteredContent,
1630
+ options: message.options
1631
+ })
1632
+ )
1633
+ }
1634
+ } else {
1635
+ cleanedMessages.push(message)
1636
+ }
1637
+ }
1638
+
1639
+ return Prompt.fromMessages(cleanedMessages)
1640
+ }
1641
+
1509
1642
  const isApprovalNeeded = Effect.fnUntraced(function*<T extends Tool.Any>(
1510
1643
  tool: T,
1511
1644
  toolCall: Response.ToolCallPartEncoded,
@@ -1734,11 +1867,11 @@ const resolveToolCalls = <Tools extends Record<string, Tool.Any>>(
1734
1867
  // =============================================================================
1735
1868
 
1736
1869
  const resolveToolkit = <Tools extends Record<string, Tool.Any>, E, R>(
1737
- toolkit:
1738
- | Toolkit.WithHandler<Tools>
1739
- | Effect.Yieldable<Toolkit.Toolkit<any>, Toolkit.WithHandler<Tools>, E, R>
1870
+ toolkit: ToolkitOption<Tools, E, R>
1740
1871
  ): Effect.Effect<Toolkit.WithHandler<Tools>, E, R> =>
1741
- "asEffect" in toolkit ? toolkit.asEffect() : Effect.succeed(toolkit)
1872
+ ("asEffect" in toolkit
1873
+ ? toolkit.asEffect()
1874
+ : Effect.succeed(toolkit as unknown as Toolkit.WithHandler<Tools>)) as any
1742
1875
 
1743
1876
  /** @internal */
1744
1877
  export const getObjectName = <StructuredOutputSchema extends Schema.Top>(
@@ -1761,29 +1894,32 @@ export const getObjectName = <StructuredOutputSchema extends Schema.Top>(
1761
1894
  const resolveStructuredOutput = Effect.fnUntraced(function*<
1762
1895
  StructuredOutputSchema extends Schema.Top
1763
1896
  >(response: ReadonlyArray<Response.AllParts<any>>, schema: StructuredOutputSchema) {
1764
- const text: Array<string> = []
1897
+ const texts: Array<string> = []
1765
1898
  for (const part of response) {
1766
1899
  if (part.type === "text") {
1767
- text.push(part.text)
1900
+ texts.push(part.text)
1768
1901
  }
1769
1902
  }
1770
1903
 
1904
+ const text = texts.join("")
1905
+
1771
1906
  if (text.length === 0) {
1772
1907
  return yield* AiError.make({
1773
1908
  module: "LanguageModel",
1774
1909
  method: "generateObject",
1775
1910
  reason: new AiError.StructuredOutputError({
1776
- description: "No text content in response"
1911
+ description: "No text content in response",
1912
+ responseText: text
1777
1913
  })
1778
1914
  })
1779
1915
  }
1780
1916
 
1781
1917
  const decode = Schema.decodeEffect(Schema.fromJsonString(schema))
1782
- return yield* Effect.mapError(decode(text.join("")), (error) =>
1918
+ return yield* Effect.mapError(decode(text), (error) =>
1783
1919
  AiError.make({
1784
1920
  module: "LanguageModel",
1785
1921
  method: "generateObject",
1786
- reason: AiError.StructuredOutputError.fromSchemaError(error)
1922
+ reason: AiError.StructuredOutputError.fromSchemaError(error, text)
1787
1923
  }))
1788
1924
  })
1789
1925