effect 4.0.0-beta.102 → 4.0.0-beta.104

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 (1637) hide show
  1. package/dist/Array.d.ts +971 -1037
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +381 -407
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +433 -756
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +200 -325
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +207 -267
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +107 -135
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Boolean.d.ts +146 -188
  14. package/dist/Boolean.d.ts.map +1 -1
  15. package/dist/Boolean.js +64 -84
  16. package/dist/Boolean.js.map +1 -1
  17. package/dist/Brand.js.map +1 -1
  18. package/dist/Cache.d.ts +405 -254
  19. package/dist/Cache.d.ts.map +1 -1
  20. package/dist/Cache.js +167 -102
  21. package/dist/Cache.js.map +1 -1
  22. package/dist/Cause.d.ts +167 -277
  23. package/dist/Cause.d.ts.map +1 -1
  24. package/dist/Cause.js +122 -176
  25. package/dist/Cause.js.map +1 -1
  26. package/dist/Channel.d.ts +730 -769
  27. package/dist/Channel.d.ts.map +1 -1
  28. package/dist/Channel.js +514 -440
  29. package/dist/Channel.js.map +1 -1
  30. package/dist/ChannelSchema.d.ts +1 -1
  31. package/dist/ChannelSchema.d.ts.map +1 -1
  32. package/dist/ChannelSchema.js.map +1 -1
  33. package/dist/Chunk.d.ts +834 -1173
  34. package/dist/Chunk.d.ts.map +1 -1
  35. package/dist/Chunk.js +326 -439
  36. package/dist/Chunk.js.map +1 -1
  37. package/dist/Clock.d.ts +180 -49
  38. package/dist/Clock.d.ts.map +1 -1
  39. package/dist/Clock.js +96 -31
  40. package/dist/Clock.js.map +1 -1
  41. package/dist/Combiner.d.ts +20 -33
  42. package/dist/Combiner.d.ts.map +1 -1
  43. package/dist/Combiner.js +18 -30
  44. package/dist/Combiner.js.map +1 -1
  45. package/dist/Config.d.ts +225 -173
  46. package/dist/Config.d.ts.map +1 -1
  47. package/dist/Config.js +357 -265
  48. package/dist/Config.js.map +1 -1
  49. package/dist/ConfigProvider.d.ts +194 -68
  50. package/dist/ConfigProvider.d.ts.map +1 -1
  51. package/dist/ConfigProvider.js +117 -81
  52. package/dist/ConfigProvider.js.map +1 -1
  53. package/dist/Console.d.ts +233 -33
  54. package/dist/Console.d.ts.map +1 -1
  55. package/dist/Console.js +232 -32
  56. package/dist/Console.js.map +1 -1
  57. package/dist/Context.d.ts +153 -276
  58. package/dist/Context.d.ts.map +1 -1
  59. package/dist/Context.js +171 -214
  60. package/dist/Context.js.map +1 -1
  61. package/dist/Cron.d.ts +68 -77
  62. package/dist/Cron.d.ts.map +1 -1
  63. package/dist/Cron.js +57 -66
  64. package/dist/Cron.js.map +1 -1
  65. package/dist/Crypto.d.ts +13 -15
  66. package/dist/Crypto.d.ts.map +1 -1
  67. package/dist/Crypto.js +22 -15
  68. package/dist/Crypto.js.map +1 -1
  69. package/dist/Data.d.ts +60 -80
  70. package/dist/Data.d.ts.map +1 -1
  71. package/dist/Data.js +16 -23
  72. package/dist/Data.js.map +1 -1
  73. package/dist/DateTime.d.ts +562 -660
  74. package/dist/DateTime.d.ts.map +1 -1
  75. package/dist/DateTime.js +307 -362
  76. package/dist/DateTime.js.map +1 -1
  77. package/dist/Deferred.d.ts +253 -256
  78. package/dist/Deferred.d.ts.map +1 -1
  79. package/dist/Deferred.js +104 -96
  80. package/dist/Deferred.js.map +1 -1
  81. package/dist/Duration.d.ts +216 -308
  82. package/dist/Duration.d.ts.map +1 -1
  83. package/dist/Duration.js +144 -187
  84. package/dist/Duration.js.map +1 -1
  85. package/dist/Effect.d.ts +2993 -3281
  86. package/dist/Effect.d.ts.map +1 -1
  87. package/dist/Effect.js +1360 -1546
  88. package/dist/Effect.js.map +1 -1
  89. package/dist/Effectable.js.map +1 -1
  90. package/dist/Encoding.d.ts +22 -40
  91. package/dist/Encoding.d.ts.map +1 -1
  92. package/dist/Encoding.js +22 -40
  93. package/dist/Encoding.js.map +1 -1
  94. package/dist/Equal.d.ts +33 -37
  95. package/dist/Equal.d.ts.map +1 -1
  96. package/dist/Equal.js +39 -23
  97. package/dist/Equal.js.map +1 -1
  98. package/dist/Equivalence.d.ts +103 -105
  99. package/dist/Equivalence.d.ts.map +1 -1
  100. package/dist/Equivalence.js +77 -79
  101. package/dist/Equivalence.js.map +1 -1
  102. package/dist/ErrorReporter.d.ts +51 -27
  103. package/dist/ErrorReporter.d.ts.map +1 -1
  104. package/dist/ErrorReporter.js +50 -26
  105. package/dist/ErrorReporter.js.map +1 -1
  106. package/dist/ExecutionPlan.d.ts +86 -55
  107. package/dist/ExecutionPlan.d.ts.map +1 -1
  108. package/dist/ExecutionPlan.js +8 -29
  109. package/dist/ExecutionPlan.js.map +1 -1
  110. package/dist/Exit.d.ts +116 -192
  111. package/dist/Exit.d.ts.map +1 -1
  112. package/dist/Exit.js +82 -130
  113. package/dist/Exit.js.map +1 -1
  114. package/dist/Fiber.d.ts +82 -146
  115. package/dist/Fiber.d.ts.map +1 -1
  116. package/dist/Fiber.js +48 -87
  117. package/dist/Fiber.js.map +1 -1
  118. package/dist/FiberHandle.d.ts +152 -105
  119. package/dist/FiberHandle.d.ts.map +1 -1
  120. package/dist/FiberHandle.js +106 -73
  121. package/dist/FiberHandle.js.map +1 -1
  122. package/dist/FiberMap.d.ts +213 -168
  123. package/dist/FiberMap.d.ts.map +1 -1
  124. package/dist/FiberMap.js +114 -89
  125. package/dist/FiberMap.js.map +1 -1
  126. package/dist/FiberSet.d.ts +123 -81
  127. package/dist/FiberSet.d.ts.map +1 -1
  128. package/dist/FiberSet.js +86 -60
  129. package/dist/FiberSet.js.map +1 -1
  130. package/dist/FileSystem.d.ts +154 -265
  131. package/dist/FileSystem.d.ts.map +1 -1
  132. package/dist/FileSystem.js +42 -147
  133. package/dist/FileSystem.js.map +1 -1
  134. package/dist/Filter.d.ts +61 -33
  135. package/dist/Filter.d.ts.map +1 -1
  136. package/dist/Filter.js +26 -15
  137. package/dist/Filter.js.map +1 -1
  138. package/dist/Formatter.d.ts +25 -33
  139. package/dist/Formatter.d.ts.map +1 -1
  140. package/dist/Formatter.js +48 -49
  141. package/dist/Formatter.js.map +1 -1
  142. package/dist/Function.d.ts +80 -148
  143. package/dist/Function.d.ts.map +1 -1
  144. package/dist/Function.js +45 -62
  145. package/dist/Function.js.map +1 -1
  146. package/dist/Graph.d.ts +360 -714
  147. package/dist/Graph.d.ts.map +1 -1
  148. package/dist/Graph.js +168 -297
  149. package/dist/Graph.js.map +1 -1
  150. package/dist/HKT.d.ts +12 -6
  151. package/dist/HKT.d.ts.map +1 -1
  152. package/dist/Hash.d.ts +47 -83
  153. package/dist/Hash.d.ts.map +1 -1
  154. package/dist/Hash.js +46 -68
  155. package/dist/Hash.js.map +1 -1
  156. package/dist/HashMap.d.ts +319 -411
  157. package/dist/HashMap.d.ts.map +1 -1
  158. package/dist/HashMap.js +122 -166
  159. package/dist/HashMap.js.map +1 -1
  160. package/dist/HashRing.d.ts.map +1 -1
  161. package/dist/HashRing.js +1 -0
  162. package/dist/HashRing.js.map +1 -1
  163. package/dist/HashSet.d.ts +177 -284
  164. package/dist/HashSet.d.ts.map +1 -1
  165. package/dist/HashSet.js +68 -109
  166. package/dist/HashSet.js.map +1 -1
  167. package/dist/Inspectable.d.ts +12 -12
  168. package/dist/Inspectable.js +8 -8
  169. package/dist/Inspectable.js.map +1 -1
  170. package/dist/Iterable.d.ts +620 -786
  171. package/dist/Iterable.d.ts.map +1 -1
  172. package/dist/Iterable.js +239 -316
  173. package/dist/Iterable.js.map +1 -1
  174. package/dist/JsonPatch.d.ts +11 -13
  175. package/dist/JsonPatch.d.ts.map +1 -1
  176. package/dist/JsonPatch.js +44 -102
  177. package/dist/JsonPatch.js.map +1 -1
  178. package/dist/JsonPointer.d.ts +8 -8
  179. package/dist/JsonPointer.js +8 -8
  180. package/dist/JsonPointer.js.map +1 -1
  181. package/dist/JsonSchema.d.ts +98 -44
  182. package/dist/JsonSchema.d.ts.map +1 -1
  183. package/dist/JsonSchema.js +297 -234
  184. package/dist/JsonSchema.js.map +1 -1
  185. package/dist/Latch.d.ts +23 -35
  186. package/dist/Latch.d.ts.map +1 -1
  187. package/dist/Latch.js +16 -28
  188. package/dist/Latch.js.map +1 -1
  189. package/dist/Layer.d.ts +359 -260
  190. package/dist/Layer.d.ts.map +1 -1
  191. package/dist/Layer.js +202 -180
  192. package/dist/Layer.js.map +1 -1
  193. package/dist/LayerMap.d.ts +42 -29
  194. package/dist/LayerMap.d.ts.map +1 -1
  195. package/dist/LayerMap.js +31 -21
  196. package/dist/LayerMap.js.map +1 -1
  197. package/dist/LayerRef.d.ts +6 -2
  198. package/dist/LayerRef.d.ts.map +1 -1
  199. package/dist/LayerRef.js +6 -2
  200. package/dist/LayerRef.js.map +1 -1
  201. package/dist/LogLevel.d.ts +114 -214
  202. package/dist/LogLevel.d.ts.map +1 -1
  203. package/dist/LogLevel.js +41 -76
  204. package/dist/LogLevel.js.map +1 -1
  205. package/dist/Logger.d.ts +218 -467
  206. package/dist/Logger.d.ts.map +1 -1
  207. package/dist/Logger.js +204 -450
  208. package/dist/Logger.js.map +1 -1
  209. package/dist/ManagedRuntime.d.ts +7 -5
  210. package/dist/ManagedRuntime.d.ts.map +1 -1
  211. package/dist/ManagedRuntime.js +7 -5
  212. package/dist/ManagedRuntime.js.map +1 -1
  213. package/dist/Match.d.ts +217 -252
  214. package/dist/Match.d.ts.map +1 -1
  215. package/dist/Match.js +150 -183
  216. package/dist/Match.js.map +1 -1
  217. package/dist/Metric.d.ts +442 -993
  218. package/dist/Metric.d.ts.map +1 -1
  219. package/dist/Metric.js +198 -642
  220. package/dist/Metric.js.map +1 -1
  221. package/dist/MutableHashMap.d.ts +144 -173
  222. package/dist/MutableHashMap.d.ts.map +1 -1
  223. package/dist/MutableHashMap.js +68 -79
  224. package/dist/MutableHashMap.js.map +1 -1
  225. package/dist/MutableHashSet.d.ts +84 -89
  226. package/dist/MutableHashSet.d.ts.map +1 -1
  227. package/dist/MutableHashSet.js +44 -47
  228. package/dist/MutableHashSet.js.map +1 -1
  229. package/dist/MutableList.d.ts +71 -370
  230. package/dist/MutableList.d.ts.map +1 -1
  231. package/dist/MutableList.js +59 -284
  232. package/dist/MutableList.js.map +1 -1
  233. package/dist/MutableRef.d.ts +420 -243
  234. package/dist/MutableRef.d.ts.map +1 -1
  235. package/dist/MutableRef.js +209 -120
  236. package/dist/MutableRef.js.map +1 -1
  237. package/dist/Newtype.d.ts +21 -14
  238. package/dist/Newtype.d.ts.map +1 -1
  239. package/dist/Newtype.js +15 -13
  240. package/dist/Newtype.js.map +1 -1
  241. package/dist/NonEmptyIterable.d.ts +7 -137
  242. package/dist/NonEmptyIterable.d.ts.map +1 -1
  243. package/dist/NonEmptyIterable.js +5 -93
  244. package/dist/NonEmptyIterable.js.map +1 -1
  245. package/dist/Number.d.ts +196 -233
  246. package/dist/Number.d.ts.map +1 -1
  247. package/dist/Number.js +90 -109
  248. package/dist/Number.js.map +1 -1
  249. package/dist/Optic.d.ts +97 -189
  250. package/dist/Optic.d.ts.map +1 -1
  251. package/dist/Optic.js +187 -290
  252. package/dist/Optic.js.map +1 -1
  253. package/dist/Option.d.ts +447 -812
  254. package/dist/Option.d.ts.map +1 -1
  255. package/dist/Option.js +211 -392
  256. package/dist/Option.js.map +1 -1
  257. package/dist/Order.d.ts +109 -109
  258. package/dist/Order.js +91 -91
  259. package/dist/Order.js.map +1 -1
  260. package/dist/Ordering.d.ts +20 -23
  261. package/dist/Ordering.d.ts.map +1 -1
  262. package/dist/Ordering.js +8 -9
  263. package/dist/Ordering.js.map +1 -1
  264. package/dist/PartitionedSemaphore.js.map +1 -1
  265. package/dist/Path.d.ts +38 -41
  266. package/dist/Path.d.ts.map +1 -1
  267. package/dist/Path.js +3 -4
  268. package/dist/Path.js.map +1 -1
  269. package/dist/Pipeable.d.ts +6 -5
  270. package/dist/Pipeable.d.ts.map +1 -1
  271. package/dist/Pipeable.js +2 -2
  272. package/dist/Pipeable.js.map +1 -1
  273. package/dist/PlatformError.d.ts +4 -4
  274. package/dist/PlatformError.js +3 -3
  275. package/dist/PlatformError.js.map +1 -1
  276. package/dist/Pool.d.ts +4 -2
  277. package/dist/Pool.d.ts.map +1 -1
  278. package/dist/Pool.js +4 -2
  279. package/dist/Pool.js.map +1 -1
  280. package/dist/Predicate.d.ts +200 -181
  281. package/dist/Predicate.d.ts.map +1 -1
  282. package/dist/Predicate.js +100 -108
  283. package/dist/Predicate.js.map +1 -1
  284. package/dist/PrimaryKey.d.ts +7 -7
  285. package/dist/PrimaryKey.js +5 -5
  286. package/dist/PrimaryKey.js.map +1 -1
  287. package/dist/PubSub.d.ts +425 -494
  288. package/dist/PubSub.d.ts.map +1 -1
  289. package/dist/PubSub.js +373 -362
  290. package/dist/PubSub.js.map +1 -1
  291. package/dist/Pull.d.ts +24 -18
  292. package/dist/Pull.d.ts.map +1 -1
  293. package/dist/Pull.js +11 -9
  294. package/dist/Pull.js.map +1 -1
  295. package/dist/Queue.d.ts +200 -159
  296. package/dist/Queue.d.ts.map +1 -1
  297. package/dist/Queue.js +162 -132
  298. package/dist/Queue.js.map +1 -1
  299. package/dist/Random.d.ts +49 -74
  300. package/dist/Random.d.ts.map +1 -1
  301. package/dist/Random.js +35 -54
  302. package/dist/Random.js.map +1 -1
  303. package/dist/RcMap.d.ts +121 -63
  304. package/dist/RcMap.d.ts.map +1 -1
  305. package/dist/RcMap.js +42 -21
  306. package/dist/RcMap.js.map +1 -1
  307. package/dist/RcRef.d.ts +24 -13
  308. package/dist/RcRef.d.ts.map +1 -1
  309. package/dist/RcRef.js +15 -9
  310. package/dist/RcRef.js.map +1 -1
  311. package/dist/Record.d.ts +291 -488
  312. package/dist/Record.d.ts.map +1 -1
  313. package/dist/Record.js +111 -202
  314. package/dist/Record.js.map +1 -1
  315. package/dist/Redactable.d.ts +6 -2
  316. package/dist/Redactable.d.ts.map +1 -1
  317. package/dist/Redactable.js +7 -2
  318. package/dist/Redactable.js.map +1 -1
  319. package/dist/Redacted.d.ts +25 -25
  320. package/dist/Redacted.d.ts.map +1 -1
  321. package/dist/Redacted.js +19 -20
  322. package/dist/Redacted.js.map +1 -1
  323. package/dist/Reducer.d.ts +8 -15
  324. package/dist/Reducer.d.ts.map +1 -1
  325. package/dist/Reducer.js +6 -12
  326. package/dist/Reducer.js.map +1 -1
  327. package/dist/Ref.d.ts +95 -165
  328. package/dist/Ref.d.ts.map +1 -1
  329. package/dist/Ref.js +75 -122
  330. package/dist/Ref.js.map +1 -1
  331. package/dist/References.d.ts +102 -168
  332. package/dist/References.d.ts.map +1 -1
  333. package/dist/References.js +102 -168
  334. package/dist/References.js.map +1 -1
  335. package/dist/RegExp.d.ts +10 -14
  336. package/dist/RegExp.d.ts.map +1 -1
  337. package/dist/RegExp.js +10 -14
  338. package/dist/RegExp.js.map +1 -1
  339. package/dist/Request.d.ts +31 -21
  340. package/dist/Request.d.ts.map +1 -1
  341. package/dist/Request.js +16 -13
  342. package/dist/Request.js.map +1 -1
  343. package/dist/RequestResolver.d.ts +201 -90
  344. package/dist/RequestResolver.d.ts.map +1 -1
  345. package/dist/RequestResolver.js +87 -41
  346. package/dist/RequestResolver.js.map +1 -1
  347. package/dist/Resource.js.map +1 -1
  348. package/dist/Result.d.ts +302 -470
  349. package/dist/Result.d.ts.map +1 -1
  350. package/dist/Result.js +133 -217
  351. package/dist/Result.js.map +1 -1
  352. package/dist/Runtime.d.ts +50 -75
  353. package/dist/Runtime.d.ts.map +1 -1
  354. package/dist/Runtime.js +39 -60
  355. package/dist/Runtime.js.map +1 -1
  356. package/dist/Schedule.d.ts +292 -1638
  357. package/dist/Schedule.d.ts.map +1 -1
  358. package/dist/Schedule.js +164 -805
  359. package/dist/Schedule.js.map +1 -1
  360. package/dist/Scheduler.d.ts +5 -5
  361. package/dist/Scheduler.d.ts.map +1 -1
  362. package/dist/Scheduler.js +18 -6
  363. package/dist/Scheduler.js.map +1 -1
  364. package/dist/Schema.d.ts +676 -674
  365. package/dist/Schema.d.ts.map +1 -1
  366. package/dist/Schema.js +513 -544
  367. package/dist/Schema.js.map +1 -1
  368. package/dist/SchemaAST.d.ts +30 -53
  369. package/dist/SchemaAST.d.ts.map +1 -1
  370. package/dist/SchemaAST.js +404 -301
  371. package/dist/SchemaAST.js.map +1 -1
  372. package/dist/SchemaError.d.ts +7 -6
  373. package/dist/SchemaError.d.ts.map +1 -1
  374. package/dist/SchemaError.js +7 -6
  375. package/dist/SchemaError.js.map +1 -1
  376. package/dist/SchemaGetter.d.ts +217 -174
  377. package/dist/SchemaGetter.d.ts.map +1 -1
  378. package/dist/SchemaGetter.js +218 -185
  379. package/dist/SchemaGetter.js.map +1 -1
  380. package/dist/SchemaIssue.d.ts +62 -190
  381. package/dist/SchemaIssue.d.ts.map +1 -1
  382. package/dist/SchemaIssue.js +73 -265
  383. package/dist/SchemaIssue.js.map +1 -1
  384. package/dist/SchemaParser.d.ts +2 -2
  385. package/dist/SchemaParser.d.ts.map +1 -1
  386. package/dist/SchemaParser.js +137 -107
  387. package/dist/SchemaParser.js.map +1 -1
  388. package/dist/SchemaRepresentation.d.ts +22 -36
  389. package/dist/SchemaRepresentation.d.ts.map +1 -1
  390. package/dist/SchemaRepresentation.js +20 -26
  391. package/dist/SchemaRepresentation.js.map +1 -1
  392. package/dist/SchemaTransformation.d.ts +114 -74
  393. package/dist/SchemaTransformation.d.ts.map +1 -1
  394. package/dist/SchemaTransformation.js +120 -85
  395. package/dist/SchemaTransformation.js.map +1 -1
  396. package/dist/Scope.d.ts +123 -151
  397. package/dist/Scope.d.ts.map +1 -1
  398. package/dist/Scope.js +72 -92
  399. package/dist/Scope.js.map +1 -1
  400. package/dist/ScopedCache.js +1 -1
  401. package/dist/ScopedCache.js.map +1 -1
  402. package/dist/ScopedRef.d.ts +3 -3
  403. package/dist/ScopedRef.js +2 -2
  404. package/dist/ScopedRef.js.map +1 -1
  405. package/dist/Semaphore.d.ts +96 -10
  406. package/dist/Semaphore.d.ts.map +1 -1
  407. package/dist/Semaphore.js +78 -39
  408. package/dist/Semaphore.js.map +1 -1
  409. package/dist/Sink.d.ts +118 -108
  410. package/dist/Sink.d.ts.map +1 -1
  411. package/dist/Sink.js +107 -100
  412. package/dist/Sink.js.map +1 -1
  413. package/dist/Stdio.d.ts +1 -1
  414. package/dist/Stdio.js.map +1 -1
  415. package/dist/Stream.d.ts +2442 -2953
  416. package/dist/Stream.d.ts.map +1 -1
  417. package/dist/Stream.js +1105 -1383
  418. package/dist/Stream.js.map +1 -1
  419. package/dist/String.d.ts +262 -308
  420. package/dist/String.d.ts.map +1 -1
  421. package/dist/String.js +184 -215
  422. package/dist/String.js.map +1 -1
  423. package/dist/Struct.d.ts +109 -114
  424. package/dist/Struct.d.ts.map +1 -1
  425. package/dist/Struct.js +41 -50
  426. package/dist/Struct.js.map +1 -1
  427. package/dist/SubscriptionRef.d.ts +282 -250
  428. package/dist/SubscriptionRef.d.ts.map +1 -1
  429. package/dist/SubscriptionRef.js +104 -92
  430. package/dist/SubscriptionRef.js.map +1 -1
  431. package/dist/Symbol.d.ts +3 -3
  432. package/dist/Symbol.js +3 -3
  433. package/dist/Symbol.js.map +1 -1
  434. package/dist/SynchronizedRef.js +1 -1
  435. package/dist/SynchronizedRef.js.map +1 -1
  436. package/dist/Take.js.map +1 -1
  437. package/dist/Terminal.d.ts +2 -2
  438. package/dist/Terminal.js +2 -2
  439. package/dist/Terminal.js.map +1 -1
  440. package/dist/Tracer.d.ts +100 -54
  441. package/dist/Tracer.d.ts.map +1 -1
  442. package/dist/Tracer.js +41 -24
  443. package/dist/Tracer.js.map +1 -1
  444. package/dist/Trie.d.ts +287 -679
  445. package/dist/Trie.d.ts.map +1 -1
  446. package/dist/Trie.js +109 -251
  447. package/dist/Trie.js.map +1 -1
  448. package/dist/Tuple.d.ts +98 -131
  449. package/dist/Tuple.d.ts.map +1 -1
  450. package/dist/Tuple.js +42 -57
  451. package/dist/Tuple.js.map +1 -1
  452. package/dist/TxChunk.d.ts +201 -121
  453. package/dist/TxChunk.d.ts.map +1 -1
  454. package/dist/TxChunk.js +85 -56
  455. package/dist/TxChunk.js.map +1 -1
  456. package/dist/TxDeferred.d.ts +62 -46
  457. package/dist/TxDeferred.d.ts.map +1 -1
  458. package/dist/TxDeferred.js +30 -22
  459. package/dist/TxDeferred.js.map +1 -1
  460. package/dist/TxHashMap.d.ts +631 -779
  461. package/dist/TxHashMap.d.ts.map +1 -1
  462. package/dist/TxHashMap.js +268 -330
  463. package/dist/TxHashMap.js.map +1 -1
  464. package/dist/TxHashSet.d.ts +297 -236
  465. package/dist/TxHashSet.d.ts.map +1 -1
  466. package/dist/TxHashSet.js +130 -100
  467. package/dist/TxHashSet.js.map +1 -1
  468. package/dist/TxPriorityQueue.d.ts +126 -95
  469. package/dist/TxPriorityQueue.d.ts.map +1 -1
  470. package/dist/TxPriorityQueue.js +74 -56
  471. package/dist/TxPriorityQueue.js.map +1 -1
  472. package/dist/TxPubSub.d.ts +101 -88
  473. package/dist/TxPubSub.d.ts.map +1 -1
  474. package/dist/TxPubSub.js +87 -66
  475. package/dist/TxPubSub.js.map +1 -1
  476. package/dist/TxQueue.d.ts +200 -180
  477. package/dist/TxQueue.d.ts.map +1 -1
  478. package/dist/TxQueue.js +160 -136
  479. package/dist/TxQueue.js.map +1 -1
  480. package/dist/TxReentrantLock.d.ts +89 -114
  481. package/dist/TxReentrantLock.d.ts.map +1 -1
  482. package/dist/TxReentrantLock.js +75 -53
  483. package/dist/TxReentrantLock.js.map +1 -1
  484. package/dist/TxRef.d.ts +51 -32
  485. package/dist/TxRef.d.ts.map +1 -1
  486. package/dist/TxRef.js +23 -15
  487. package/dist/TxRef.js.map +1 -1
  488. package/dist/TxSemaphore.d.ts +129 -95
  489. package/dist/TxSemaphore.d.ts.map +1 -1
  490. package/dist/TxSemaphore.js +85 -70
  491. package/dist/TxSemaphore.js.map +1 -1
  492. package/dist/TxSubscriptionRef.d.ts +97 -70
  493. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  494. package/dist/TxSubscriptionRef.js +44 -34
  495. package/dist/TxSubscriptionRef.js.map +1 -1
  496. package/dist/Types.d.ts +126 -67
  497. package/dist/Types.d.ts.map +1 -1
  498. package/dist/UndefinedOr.js.map +1 -1
  499. package/dist/Unify.d.ts +45 -65
  500. package/dist/Unify.d.ts.map +1 -1
  501. package/dist/Unify.js +6 -9
  502. package/dist/Unify.js.map +1 -1
  503. package/dist/Utils.d.ts +23 -16
  504. package/dist/Utils.d.ts.map +1 -1
  505. package/dist/Utils.js +3 -7
  506. package/dist/Utils.js.map +1 -1
  507. package/dist/index.js.map +1 -1
  508. package/dist/internal/array.js.map +1 -1
  509. package/dist/internal/core.js +1 -1
  510. package/dist/internal/core.js.map +1 -1
  511. package/dist/internal/dateTime.js +5 -1
  512. package/dist/internal/dateTime.js.map +1 -1
  513. package/dist/internal/doNotation.js.map +1 -1
  514. package/dist/internal/effect.js +77 -40
  515. package/dist/internal/effect.js.map +1 -1
  516. package/dist/internal/equal.js.map +1 -1
  517. package/dist/internal/errors.js.map +1 -1
  518. package/dist/internal/executionPlan.js +51 -3
  519. package/dist/internal/executionPlan.js.map +1 -1
  520. package/dist/internal/hashMap.js +12 -8
  521. package/dist/internal/hashMap.js.map +1 -1
  522. package/dist/internal/hashSet.js.map +1 -1
  523. package/dist/internal/layer.js.map +1 -1
  524. package/dist/internal/matcher.js +1 -1
  525. package/dist/internal/matcher.js.map +1 -1
  526. package/dist/internal/metric.js.map +1 -1
  527. package/dist/internal/option.js.map +1 -1
  528. package/dist/internal/persistence.d.ts +2 -0
  529. package/dist/internal/persistence.d.ts.map +1 -0
  530. package/dist/internal/persistence.js +3 -0
  531. package/dist/internal/persistence.js.map +1 -0
  532. package/dist/internal/random.js.map +1 -1
  533. package/dist/internal/rcRef.js.map +1 -1
  534. package/dist/internal/record.js.map +1 -1
  535. package/dist/internal/redacted.js.map +1 -1
  536. package/dist/internal/references.js +3 -0
  537. package/dist/internal/references.js.map +1 -1
  538. package/dist/internal/request.js.map +1 -1
  539. package/dist/internal/result.js.map +1 -1
  540. package/dist/internal/schedule.js.map +1 -1
  541. package/dist/internal/schema/annotations.js +2 -0
  542. package/dist/internal/schema/annotations.js.map +1 -1
  543. package/dist/internal/schema/cause.js.map +1 -1
  544. package/dist/internal/schema/fromJsonSchemaDocument.js +13 -11
  545. package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
  546. package/dist/internal/schema/fromRepresentation.js +8 -15
  547. package/dist/internal/schema/fromRepresentation.js.map +1 -1
  548. package/dist/internal/schema/parser.d.ts +14 -0
  549. package/dist/internal/schema/parser.d.ts.map +1 -0
  550. package/dist/internal/schema/parser.js +13 -0
  551. package/dist/internal/schema/parser.js.map +1 -0
  552. package/dist/internal/schema/schema.js.map +1 -1
  553. package/dist/internal/schema/toArbitrary.js +1 -1
  554. package/dist/internal/schema/toArbitrary.js.map +1 -1
  555. package/dist/internal/schema/toCodeDocument.js.map +1 -1
  556. package/dist/internal/schema/toEquivalence.js.map +1 -1
  557. package/dist/internal/schema/toJsonSchemaDocument.js +48 -6
  558. package/dist/internal/schema/toJsonSchemaDocument.js.map +1 -1
  559. package/dist/internal/schema/toRepresentation.js +87 -107
  560. package/dist/internal/schema/toRepresentation.js.map +1 -1
  561. package/dist/internal/stackTraceLimit.js.map +1 -1
  562. package/dist/internal/stream.js.map +1 -1
  563. package/dist/internal/tracer.js.map +1 -1
  564. package/dist/internal/trie.js +24 -10
  565. package/dist/internal/trie.js.map +1 -1
  566. package/dist/testing/FastCheck.d.ts +8 -7
  567. package/dist/testing/FastCheck.d.ts.map +1 -1
  568. package/dist/testing/FastCheck.js +8 -7
  569. package/dist/testing/FastCheck.js.map +1 -1
  570. package/dist/testing/TestClock.d.ts +57 -28
  571. package/dist/testing/TestClock.d.ts.map +1 -1
  572. package/dist/testing/TestClock.js +61 -19
  573. package/dist/testing/TestClock.js.map +1 -1
  574. package/dist/testing/TestConsole.d.ts +32 -31
  575. package/dist/testing/TestConsole.d.ts.map +1 -1
  576. package/dist/testing/TestConsole.js +24 -22
  577. package/dist/testing/TestConsole.js.map +1 -1
  578. package/dist/testing/TestSchema.d.ts +30 -30
  579. package/dist/testing/TestSchema.d.ts.map +1 -1
  580. package/dist/testing/TestSchema.js +25 -25
  581. package/dist/testing/TestSchema.js.map +1 -1
  582. package/dist/testing/index.js.map +1 -1
  583. package/dist/unstable/ai/AiError.d.ts +95 -118
  584. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  585. package/dist/unstable/ai/AiError.js +113 -136
  586. package/dist/unstable/ai/AiError.js.map +1 -1
  587. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  588. package/dist/unstable/ai/AnthropicStructuredOutput.js +1 -1
  589. package/dist/unstable/ai/AnthropicStructuredOutput.js.map +1 -1
  590. package/dist/unstable/ai/Chat.d.ts +132 -97
  591. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  592. package/dist/unstable/ai/Chat.js +56 -52
  593. package/dist/unstable/ai/Chat.js.map +1 -1
  594. package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
  595. package/dist/unstable/ai/IdGenerator.d.ts +32 -28
  596. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  597. package/dist/unstable/ai/IdGenerator.js +26 -21
  598. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  599. package/dist/unstable/ai/LanguageModel.d.ts +107 -67
  600. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  601. package/dist/unstable/ai/LanguageModel.js +108 -66
  602. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  603. package/dist/unstable/ai/McpProtocol.d.ts +30 -0
  604. package/dist/unstable/ai/McpProtocol.d.ts.map +1 -0
  605. package/dist/unstable/ai/McpProtocol.js +20 -0
  606. package/dist/unstable/ai/McpProtocol.js.map +1 -0
  607. package/dist/unstable/ai/McpSchema.d.ts +251 -185
  608. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  609. package/dist/unstable/ai/McpSchema.js +66 -58
  610. package/dist/unstable/ai/McpSchema.js.map +1 -1
  611. package/dist/unstable/ai/McpServer.d.ts +68 -59
  612. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  613. package/dist/unstable/ai/McpServer.js +695 -242
  614. package/dist/unstable/ai/McpServer.js.map +1 -1
  615. package/dist/unstable/ai/Model.d.ts +8 -19
  616. package/dist/unstable/ai/Model.d.ts.map +1 -1
  617. package/dist/unstable/ai/Model.js +9 -20
  618. package/dist/unstable/ai/Model.js.map +1 -1
  619. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  620. package/dist/unstable/ai/OpenAiStructuredOutput.js +1 -1
  621. package/dist/unstable/ai/OpenAiStructuredOutput.js.map +1 -1
  622. package/dist/unstable/ai/Prompt.d.ts +127 -41
  623. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  624. package/dist/unstable/ai/Prompt.js +59 -20
  625. package/dist/unstable/ai/Prompt.js.map +1 -1
  626. package/dist/unstable/ai/Response.d.ts +28 -14
  627. package/dist/unstable/ai/Response.d.ts.map +1 -1
  628. package/dist/unstable/ai/Response.js +9 -4
  629. package/dist/unstable/ai/Response.js.map +1 -1
  630. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  631. package/dist/unstable/ai/Telemetry.d.ts +46 -13
  632. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  633. package/dist/unstable/ai/Telemetry.js +18 -7
  634. package/dist/unstable/ai/Telemetry.js.map +1 -1
  635. package/dist/unstable/ai/Tokenizer.d.ts +14 -3
  636. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  637. package/dist/unstable/ai/Tokenizer.js +10 -2
  638. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  639. package/dist/unstable/ai/Tool.d.ts +59 -44
  640. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  641. package/dist/unstable/ai/Tool.js +48 -39
  642. package/dist/unstable/ai/Tool.js.map +1 -1
  643. package/dist/unstable/ai/Toolkit.d.ts +26 -8
  644. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  645. package/dist/unstable/ai/Toolkit.js +18 -4
  646. package/dist/unstable/ai/Toolkit.js.map +1 -1
  647. package/dist/unstable/ai/index.d.ts +4 -0
  648. package/dist/unstable/ai/index.d.ts.map +1 -1
  649. package/dist/unstable/ai/index.js +4 -0
  650. package/dist/unstable/ai/index.js.map +1 -1
  651. package/dist/unstable/ai/internal/codec-transformer.js.map +1 -1
  652. package/dist/unstable/ai/internal/mcpProtocol.d.ts +21 -0
  653. package/dist/unstable/ai/internal/mcpProtocol.d.ts.map +1 -0
  654. package/dist/unstable/ai/internal/mcpProtocol.js +22 -0
  655. package/dist/unstable/ai/internal/mcpProtocol.js.map +1 -0
  656. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts +2 -0
  657. package/dist/unstable/ai/internal/mcpProtocolRegistry.d.ts.map +1 -0
  658. package/dist/unstable/ai/internal/mcpProtocolRegistry.js +32 -0
  659. package/dist/unstable/ai/internal/mcpProtocolRegistry.js.map +1 -0
  660. package/dist/unstable/ai/internal/structured-output.js +14 -15
  661. package/dist/unstable/ai/internal/structured-output.js.map +1 -1
  662. package/dist/unstable/cli/Argument.d.ts +273 -69
  663. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  664. package/dist/unstable/cli/Argument.js +111 -33
  665. package/dist/unstable/cli/Argument.js.map +1 -1
  666. package/dist/unstable/cli/CliConfig.js.map +1 -1
  667. package/dist/unstable/cli/CliError.d.ts +70 -77
  668. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  669. package/dist/unstable/cli/CliError.js +66 -70
  670. package/dist/unstable/cli/CliError.js.map +1 -1
  671. package/dist/unstable/cli/CliOutput.d.ts +35 -54
  672. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  673. package/dist/unstable/cli/CliOutput.js +26 -42
  674. package/dist/unstable/cli/CliOutput.js.map +1 -1
  675. package/dist/unstable/cli/Command.d.ts +713 -115
  676. package/dist/unstable/cli/Command.d.ts.map +1 -1
  677. package/dist/unstable/cli/Command.js +245 -47
  678. package/dist/unstable/cli/Command.js.map +1 -1
  679. package/dist/unstable/cli/Completions.js.map +1 -1
  680. package/dist/unstable/cli/Flag.d.ts +418 -138
  681. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  682. package/dist/unstable/cli/Flag.js +197 -71
  683. package/dist/unstable/cli/Flag.js.map +1 -1
  684. package/dist/unstable/cli/GlobalFlag.d.ts +1 -1
  685. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  686. package/dist/unstable/cli/HelpDoc.d.ts +12 -4
  687. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  688. package/dist/unstable/cli/Param.d.ts +299 -83
  689. package/dist/unstable/cli/Param.d.ts.map +1 -1
  690. package/dist/unstable/cli/Param.js +143 -57
  691. package/dist/unstable/cli/Param.js.map +1 -1
  692. package/dist/unstable/cli/Primitive.d.ts +370 -149
  693. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  694. package/dist/unstable/cli/Primitive.js +375 -160
  695. package/dist/unstable/cli/Primitive.js.map +1 -1
  696. package/dist/unstable/cli/Prompt.d.ts +23 -14
  697. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  698. package/dist/unstable/cli/Prompt.js +54 -31
  699. package/dist/unstable/cli/Prompt.js.map +1 -1
  700. package/dist/unstable/cli/index.js.map +1 -1
  701. package/dist/unstable/cli/internal/ansi.js +2 -2
  702. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  703. package/dist/unstable/cli/internal/auto-suggest.js.map +1 -1
  704. package/dist/unstable/cli/internal/command.d.ts +2 -2
  705. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  706. package/dist/unstable/cli/internal/command.js +10 -9
  707. package/dist/unstable/cli/internal/command.js.map +1 -1
  708. package/dist/unstable/cli/internal/completions/bash.js +69 -9
  709. package/dist/unstable/cli/internal/completions/bash.js.map +1 -1
  710. package/dist/unstable/cli/internal/completions/descriptor.js +24 -18
  711. package/dist/unstable/cli/internal/completions/descriptor.js.map +1 -1
  712. package/dist/unstable/cli/internal/completions/fish.js +5 -5
  713. package/dist/unstable/cli/internal/completions/fish.js.map +1 -1
  714. package/dist/unstable/cli/internal/completions/zsh.js.map +1 -1
  715. package/dist/unstable/cli/internal/config.js.map +1 -1
  716. package/dist/unstable/cli/internal/help.d.ts.map +1 -1
  717. package/dist/unstable/cli/internal/help.js +4 -2
  718. package/dist/unstable/cli/internal/help.js.map +1 -1
  719. package/dist/unstable/cli/internal/lexer.js +17 -7
  720. package/dist/unstable/cli/internal/lexer.js.map +1 -1
  721. package/dist/unstable/cli/internal/parser.js +5 -5
  722. package/dist/unstable/cli/internal/parser.js.map +1 -1
  723. package/dist/unstable/cli/internal/wizard.js +2 -2
  724. package/dist/unstable/cli/internal/wizard.js.map +1 -1
  725. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  726. package/dist/unstable/cluster/ClusterError.js +7 -7
  727. package/dist/unstable/cluster/ClusterError.js.map +1 -1
  728. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  729. package/dist/unstable/cluster/ClusterSchema.d.ts +8 -8
  730. package/dist/unstable/cluster/ClusterSchema.js +8 -8
  731. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  732. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  733. package/dist/unstable/cluster/ClusterWorkflowEngine.js +6 -2
  734. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  735. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  736. package/dist/unstable/cluster/Entity.d.ts +10 -10
  737. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  738. package/dist/unstable/cluster/Entity.js +8 -8
  739. package/dist/unstable/cluster/Entity.js.map +1 -1
  740. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  741. package/dist/unstable/cluster/EntityId.js.map +1 -1
  742. package/dist/unstable/cluster/EntityProxy.d.ts +4 -2
  743. package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
  744. package/dist/unstable/cluster/EntityProxy.js +4 -2
  745. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  746. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  747. package/dist/unstable/cluster/EntityResource.d.ts +2 -2
  748. package/dist/unstable/cluster/EntityResource.js +2 -2
  749. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  750. package/dist/unstable/cluster/EntityType.js.map +1 -1
  751. package/dist/unstable/cluster/Envelope.d.ts +3 -3
  752. package/dist/unstable/cluster/Envelope.js +3 -3
  753. package/dist/unstable/cluster/Envelope.js.map +1 -1
  754. package/dist/unstable/cluster/HttpRunner.d.ts +2 -2
  755. package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
  756. package/dist/unstable/cluster/HttpRunner.js +6 -4
  757. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  758. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  759. package/dist/unstable/cluster/MachineId.js.map +1 -1
  760. package/dist/unstable/cluster/Message.d.ts +9 -9
  761. package/dist/unstable/cluster/Message.js +6 -6
  762. package/dist/unstable/cluster/Message.js.map +1 -1
  763. package/dist/unstable/cluster/MessageStorage.d.ts +15 -15
  764. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  765. package/dist/unstable/cluster/MessageStorage.js +13 -6
  766. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  767. package/dist/unstable/cluster/Reply.d.ts +8 -0
  768. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  769. package/dist/unstable/cluster/Reply.js +16 -4
  770. package/dist/unstable/cluster/Reply.js.map +1 -1
  771. package/dist/unstable/cluster/Runner.js.map +1 -1
  772. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  773. package/dist/unstable/cluster/RunnerHealth.d.ts +1 -1
  774. package/dist/unstable/cluster/RunnerHealth.js +1 -1
  775. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  776. package/dist/unstable/cluster/RunnerServer.d.ts +2 -1
  777. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  778. package/dist/unstable/cluster/RunnerServer.js +18 -16
  779. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  780. package/dist/unstable/cluster/RunnerStorage.d.ts +3 -4
  781. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  782. package/dist/unstable/cluster/RunnerStorage.js +8 -7
  783. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  784. package/dist/unstable/cluster/Runners.d.ts +6 -6
  785. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  786. package/dist/unstable/cluster/Runners.js +19 -10
  787. package/dist/unstable/cluster/Runners.js.map +1 -1
  788. package/dist/unstable/cluster/ShardId.js.map +1 -1
  789. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  790. package/dist/unstable/cluster/Sharding.js +25 -6
  791. package/dist/unstable/cluster/Sharding.js.map +1 -1
  792. package/dist/unstable/cluster/ShardingConfig.d.ts +3 -3
  793. package/dist/unstable/cluster/ShardingConfig.js +3 -3
  794. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  795. package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
  796. package/dist/unstable/cluster/SingleRunner.js.map +1 -1
  797. package/dist/unstable/cluster/Singleton.js.map +1 -1
  798. package/dist/unstable/cluster/SingletonAddress.d.ts +1 -1
  799. package/dist/unstable/cluster/SingletonAddress.js +1 -1
  800. package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
  801. package/dist/unstable/cluster/Snowflake.d.ts +8 -8
  802. package/dist/unstable/cluster/Snowflake.js +8 -8
  803. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  804. package/dist/unstable/cluster/SocketRunner.js.map +1 -1
  805. package/dist/unstable/cluster/SqlMessageStorage.js +1 -1
  806. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  807. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  808. package/dist/unstable/cluster/SqlRunnerStorage.js +20 -5
  809. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  810. package/dist/unstable/cluster/TestRunner.js.map +1 -1
  811. package/dist/unstable/cluster/index.js.map +1 -1
  812. package/dist/unstable/cluster/internal/entityManager.js +6 -6
  813. package/dist/unstable/cluster/internal/entityManager.js.map +1 -1
  814. package/dist/unstable/cluster/internal/entityReaper.js.map +1 -1
  815. package/dist/unstable/cluster/internal/hash.js.map +1 -1
  816. package/dist/unstable/cluster/internal/interruptors.js.map +1 -1
  817. package/dist/unstable/cluster/internal/resourceMap.js +2 -2
  818. package/dist/unstable/cluster/internal/resourceMap.js.map +1 -1
  819. package/dist/unstable/cluster/internal/resourceRef.js +17 -0
  820. package/dist/unstable/cluster/internal/resourceRef.js.map +1 -1
  821. package/dist/unstable/cluster/internal/shardLock.js.map +1 -1
  822. package/dist/unstable/devtools/DevTools.js.map +1 -1
  823. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  824. package/dist/unstable/devtools/DevToolsClient.js +7 -2
  825. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  826. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  827. package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
  828. package/dist/unstable/devtools/index.js.map +1 -1
  829. package/dist/unstable/encoding/Ini.d.ts +20 -0
  830. package/dist/unstable/encoding/Ini.d.ts.map +1 -0
  831. package/dist/unstable/encoding/Ini.js +153 -0
  832. package/dist/unstable/encoding/Ini.js.map +1 -0
  833. package/dist/unstable/encoding/Msgpack.d.ts +2 -1
  834. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  835. package/dist/unstable/encoding/Msgpack.js +27 -15
  836. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  837. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  838. package/dist/unstable/encoding/Ndjson.js +7 -1
  839. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  840. package/dist/unstable/encoding/Sse.d.ts +72 -8
  841. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  842. package/dist/unstable/encoding/Sse.js +72 -31
  843. package/dist/unstable/encoding/Sse.js.map +1 -1
  844. package/dist/unstable/encoding/Toml.d.ts +19 -0
  845. package/dist/unstable/encoding/Toml.d.ts.map +1 -0
  846. package/dist/unstable/encoding/Toml.js +434 -0
  847. package/dist/unstable/encoding/Toml.js.map +1 -0
  848. package/dist/unstable/encoding/Yaml.d.ts +19 -0
  849. package/dist/unstable/encoding/Yaml.d.ts.map +1 -0
  850. package/dist/unstable/encoding/Yaml.js +461 -0
  851. package/dist/unstable/encoding/Yaml.js.map +1 -0
  852. package/dist/unstable/encoding/index.d.ts +12 -0
  853. package/dist/unstable/encoding/index.d.ts.map +1 -1
  854. package/dist/unstable/encoding/index.js +12 -0
  855. package/dist/unstable/encoding/index.js.map +1 -1
  856. package/dist/unstable/eventlog/Event.d.ts +20 -20
  857. package/dist/unstable/eventlog/Event.js.map +1 -1
  858. package/dist/unstable/eventlog/EventGroup.d.ts +4 -4
  859. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  860. package/dist/unstable/eventlog/EventJournal.d.ts +16 -16
  861. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  862. package/dist/unstable/eventlog/EventJournal.js +26 -18
  863. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  864. package/dist/unstable/eventlog/EventLog.d.ts +3 -3
  865. package/dist/unstable/eventlog/EventLog.js +3 -3
  866. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  867. package/dist/unstable/eventlog/EventLogEncryption.d.ts +1 -1
  868. package/dist/unstable/eventlog/EventLogEncryption.js +1 -1
  869. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  870. package/dist/unstable/eventlog/EventLogMessage.d.ts +2 -2
  871. package/dist/unstable/eventlog/EventLogMessage.js +2 -2
  872. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  873. package/dist/unstable/eventlog/EventLogRemote.d.ts +15 -15
  874. package/dist/unstable/eventlog/EventLogRemote.js +1 -1
  875. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  876. package/dist/unstable/eventlog/EventLogServer.d.ts +11 -2
  877. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  878. package/dist/unstable/eventlog/EventLogServer.js +45 -21
  879. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  880. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +4 -4
  881. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  882. package/dist/unstable/eventlog/EventLogServerEncrypted.js +13 -5
  883. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  884. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +5 -5
  885. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  886. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +15 -7
  887. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  888. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +1 -1
  889. package/dist/unstable/eventlog/EventLogSessionAuth.js +1 -1
  890. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
  891. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
  892. package/dist/unstable/eventlog/SqlEventJournal.js +1 -4
  893. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  894. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  895. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  896. package/dist/unstable/eventlog/index.js.map +1 -1
  897. package/dist/unstable/eventlog/internal/identityRootSecretDerivation.js.map +1 -1
  898. package/dist/unstable/http/Cookies.d.ts +2 -2
  899. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  900. package/dist/unstable/http/Cookies.js +30 -18
  901. package/dist/unstable/http/Cookies.js.map +1 -1
  902. package/dist/unstable/http/Etag.d.ts +1 -1
  903. package/dist/unstable/http/Etag.js +1 -1
  904. package/dist/unstable/http/Etag.js.map +1 -1
  905. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  906. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  907. package/dist/unstable/http/FindMyWay/internal/queryString.d.ts +11 -0
  908. package/dist/unstable/http/FindMyWay/internal/queryString.d.ts.map +1 -0
  909. package/dist/unstable/http/FindMyWay/internal/queryString.js +259 -0
  910. package/dist/unstable/http/FindMyWay/internal/queryString.js.map +1 -0
  911. package/dist/unstable/http/FindMyWay/internal/router.d.ts +2 -0
  912. package/dist/unstable/http/FindMyWay/internal/router.d.ts.map +1 -0
  913. package/dist/unstable/http/FindMyWay/internal/router.js +665 -0
  914. package/dist/unstable/http/FindMyWay/internal/router.js.map +1 -0
  915. package/dist/unstable/http/FindMyWay.d.ts +33 -8
  916. package/dist/unstable/http/FindMyWay.d.ts.map +1 -1
  917. package/dist/unstable/http/FindMyWay.js +4 -7
  918. package/dist/unstable/http/FindMyWay.js.map +1 -1
  919. package/dist/unstable/http/Headers.d.ts +2 -2
  920. package/dist/unstable/http/Headers.js +2 -2
  921. package/dist/unstable/http/Headers.js.map +1 -1
  922. package/dist/unstable/http/HttpBody.d.ts +5 -3
  923. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  924. package/dist/unstable/http/HttpBody.js +11 -5
  925. package/dist/unstable/http/HttpBody.js.map +1 -1
  926. package/dist/unstable/http/HttpClient.d.ts +51 -44
  927. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  928. package/dist/unstable/http/HttpClient.js +46 -17
  929. package/dist/unstable/http/HttpClient.js.map +1 -1
  930. package/dist/unstable/http/HttpClientError.js +1 -1
  931. package/dist/unstable/http/HttpClientError.js.map +1 -1
  932. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  933. package/dist/unstable/http/HttpClientRequest.js +2 -12
  934. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  935. package/dist/unstable/http/HttpClientResponse.d.ts +4 -4
  936. package/dist/unstable/http/HttpClientResponse.js +3 -18
  937. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  938. package/dist/unstable/http/HttpEffect.d.ts +6 -6
  939. package/dist/unstable/http/HttpEffect.js +3 -3
  940. package/dist/unstable/http/HttpEffect.js.map +1 -1
  941. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  942. package/dist/unstable/http/HttpMethod.d.ts +6 -9
  943. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  944. package/dist/unstable/http/HttpMethod.js +6 -9
  945. package/dist/unstable/http/HttpMethod.js.map +1 -1
  946. package/dist/unstable/http/HttpMiddleware.d.ts +75 -9
  947. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  948. package/dist/unstable/http/HttpMiddleware.js +164 -39
  949. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  950. package/dist/unstable/http/HttpPlatform.d.ts +76 -0
  951. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  952. package/dist/unstable/http/HttpPlatform.js +53 -3
  953. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  954. package/dist/unstable/http/HttpRouter.d.ts +88 -89
  955. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  956. package/dist/unstable/http/HttpRouter.js +78 -79
  957. package/dist/unstable/http/HttpRouter.js.map +1 -1
  958. package/dist/unstable/http/HttpServer.d.ts +13 -13
  959. package/dist/unstable/http/HttpServer.js +6 -6
  960. package/dist/unstable/http/HttpServer.js.map +1 -1
  961. package/dist/unstable/http/HttpServerError.d.ts +2 -2
  962. package/dist/unstable/http/HttpServerError.js +2 -2
  963. package/dist/unstable/http/HttpServerError.js.map +1 -1
  964. package/dist/unstable/http/HttpServerRequest.d.ts +4 -4
  965. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  966. package/dist/unstable/http/HttpServerRequest.js +11 -10
  967. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  968. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  969. package/dist/unstable/http/HttpServerResponse.d.ts +22 -0
  970. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  971. package/dist/unstable/http/HttpServerResponse.js +17 -5
  972. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  973. package/dist/unstable/http/HttpStaticServer.d.ts +35 -7
  974. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
  975. package/dist/unstable/http/HttpStaticServer.js +35 -7
  976. package/dist/unstable/http/HttpStaticServer.js.map +1 -1
  977. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  978. package/dist/unstable/http/Multipart.d.ts +7 -7
  979. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  980. package/dist/unstable/http/Multipart.js +14 -7
  981. package/dist/unstable/http/Multipart.js.map +1 -1
  982. package/dist/unstable/http/MultipartParser/HeadersParser.d.ts +53 -0
  983. package/dist/unstable/http/MultipartParser/HeadersParser.d.ts.map +1 -0
  984. package/dist/unstable/http/MultipartParser/HeadersParser.js +14 -0
  985. package/dist/unstable/http/MultipartParser/HeadersParser.js.map +1 -0
  986. package/dist/unstable/http/MultipartParser/Search.d.ts +11 -0
  987. package/dist/unstable/http/MultipartParser/Search.d.ts.map +1 -0
  988. package/dist/unstable/http/MultipartParser/Search.js +14 -0
  989. package/dist/unstable/http/MultipartParser/Search.js.map +1 -0
  990. package/dist/unstable/http/MultipartParser/internal/contentType.d.ts +5 -0
  991. package/dist/unstable/http/MultipartParser/internal/contentType.d.ts.map +1 -0
  992. package/dist/unstable/http/MultipartParser/internal/contentType.js +82 -0
  993. package/dist/unstable/http/MultipartParser/internal/contentType.js.map +1 -0
  994. package/dist/unstable/http/MultipartParser/internal/headers.d.ts +3 -0
  995. package/dist/unstable/http/MultipartParser/internal/headers.d.ts.map +1 -0
  996. package/dist/unstable/http/MultipartParser/internal/headers.js +194 -0
  997. package/dist/unstable/http/MultipartParser/internal/headers.js.map +1 -0
  998. package/dist/unstable/http/MultipartParser/internal/multipart.d.ts +8 -0
  999. package/dist/unstable/http/MultipartParser/internal/multipart.d.ts.map +1 -0
  1000. package/dist/unstable/http/MultipartParser/internal/multipart.js +226 -0
  1001. package/dist/unstable/http/MultipartParser/internal/multipart.js.map +1 -0
  1002. package/dist/unstable/http/MultipartParser/internal/search.d.ts +5 -0
  1003. package/dist/unstable/http/MultipartParser/internal/search.d.ts.map +1 -0
  1004. package/dist/unstable/http/MultipartParser/internal/search.js +120 -0
  1005. package/dist/unstable/http/MultipartParser/internal/search.js.map +1 -0
  1006. package/dist/unstable/http/MultipartParser.d.ts +98 -0
  1007. package/dist/unstable/http/MultipartParser.d.ts.map +1 -0
  1008. package/dist/unstable/http/MultipartParser.js +23 -0
  1009. package/dist/unstable/http/MultipartParser.js.map +1 -0
  1010. package/dist/unstable/http/Template.d.ts.map +1 -1
  1011. package/dist/unstable/http/Template.js +2 -2
  1012. package/dist/unstable/http/Template.js.map +1 -1
  1013. package/dist/unstable/http/Url.d.ts +33 -63
  1014. package/dist/unstable/http/Url.d.ts.map +1 -1
  1015. package/dist/unstable/http/Url.js +14 -28
  1016. package/dist/unstable/http/Url.js.map +1 -1
  1017. package/dist/unstable/http/UrlParams.d.ts +10 -18
  1018. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  1019. package/dist/unstable/http/UrlParams.js +9 -17
  1020. package/dist/unstable/http/UrlParams.js.map +1 -1
  1021. package/dist/unstable/http/index.d.ts +1 -1
  1022. package/dist/unstable/http/index.d.ts.map +1 -1
  1023. package/dist/unstable/http/index.js +1 -1
  1024. package/dist/unstable/http/index.js.map +1 -1
  1025. package/dist/unstable/http/internal/compression.d.ts +2 -0
  1026. package/dist/unstable/http/internal/compression.d.ts.map +1 -0
  1027. package/dist/unstable/http/internal/compression.js +155 -0
  1028. package/dist/unstable/http/internal/compression.js.map +1 -0
  1029. package/dist/unstable/http/internal/httpBody.d.ts +2 -0
  1030. package/dist/unstable/http/internal/httpBody.d.ts.map +1 -0
  1031. package/dist/unstable/http/internal/httpBody.js +10 -0
  1032. package/dist/unstable/http/internal/httpBody.js.map +1 -0
  1033. package/dist/unstable/http/internal/preResponseHandler.js.map +1 -1
  1034. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  1035. package/dist/unstable/httpapi/HttpApi.js +5 -5
  1036. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  1037. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +1 -1
  1038. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  1039. package/dist/unstable/httpapi/HttpApiBuilder.js +78 -26
  1040. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  1041. package/dist/unstable/httpapi/HttpApiClient.d.ts +4 -5
  1042. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  1043. package/dist/unstable/httpapi/HttpApiClient.js +76 -38
  1044. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  1045. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +48 -46
  1046. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  1047. package/dist/unstable/httpapi/HttpApiEndpoint.js +73 -16
  1048. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  1049. package/dist/unstable/httpapi/HttpApiError.d.ts +18 -18
  1050. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  1051. package/dist/unstable/httpapi/HttpApiError.js +30 -30
  1052. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  1053. package/dist/unstable/httpapi/HttpApiGroup.d.ts +15 -15
  1054. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  1055. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +71 -24
  1056. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  1057. package/dist/unstable/httpapi/HttpApiMiddleware.js +57 -10
  1058. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  1059. package/dist/unstable/httpapi/HttpApiScalar.d.ts +0 -12
  1060. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  1061. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  1062. package/dist/unstable/httpapi/HttpApiSchema.d.ts +225 -6
  1063. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  1064. package/dist/unstable/httpapi/HttpApiSchema.js +174 -4
  1065. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  1066. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  1067. package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
  1068. package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
  1069. package/dist/unstable/httpapi/OpenApi.d.ts +21 -13
  1070. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  1071. package/dist/unstable/httpapi/OpenApi.js +58 -31
  1072. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  1073. package/dist/unstable/httpapi/index.js.map +1 -1
  1074. package/dist/unstable/httpapi/internal/html.js.map +1 -1
  1075. package/dist/unstable/httpapi/internal/httpApiScalar.js.map +1 -1
  1076. package/dist/unstable/httpapi/internal/httpApiSwagger.js.map +1 -1
  1077. package/dist/unstable/httpapi/internal/mediaType.js.map +1 -1
  1078. package/dist/unstable/observability/Otlp.js.map +1 -1
  1079. package/dist/unstable/observability/OtlpExporter.d.ts +13 -15
  1080. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  1081. package/dist/unstable/observability/OtlpExporter.js +19 -5
  1082. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  1083. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  1084. package/dist/unstable/observability/OtlpLogger.js +2 -2
  1085. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  1086. package/dist/unstable/observability/OtlpMetrics.d.ts +6 -3
  1087. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  1088. package/dist/unstable/observability/OtlpMetrics.js +28 -15
  1089. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  1090. package/dist/unstable/observability/OtlpResource.d.ts +16 -7
  1091. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  1092. package/dist/unstable/observability/OtlpResource.js +21 -12
  1093. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  1094. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  1095. package/dist/unstable/observability/OtlpTracer.js +1 -1
  1096. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  1097. package/dist/unstable/observability/PrometheusMetrics.d.ts +13 -4
  1098. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  1099. package/dist/unstable/observability/PrometheusMetrics.js +10 -3
  1100. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  1101. package/dist/unstable/observability/index.js.map +1 -1
  1102. package/dist/unstable/observability/internal/otlpEnv.js +1 -1
  1103. package/dist/unstable/observability/internal/otlpEnv.js.map +1 -1
  1104. package/dist/unstable/observability/internal/otlpProtobuf.js.map +1 -1
  1105. package/dist/unstable/observability/internal/protobuf.js +3 -0
  1106. package/dist/unstable/observability/internal/protobuf.js.map +1 -1
  1107. package/dist/unstable/persistence/KeyValueStore.d.ts +8 -3
  1108. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  1109. package/dist/unstable/persistence/KeyValueStore.js +22 -13
  1110. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  1111. package/dist/unstable/persistence/Persistable.d.ts +8 -8
  1112. package/dist/unstable/persistence/Persistable.js.map +1 -1
  1113. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  1114. package/dist/unstable/persistence/PersistedQueue.d.ts +6 -6
  1115. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  1116. package/dist/unstable/persistence/PersistedQueue.js +15 -15
  1117. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  1118. package/dist/unstable/persistence/Persistence.d.ts +3 -3
  1119. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  1120. package/dist/unstable/persistence/Persistence.js +108 -22
  1121. package/dist/unstable/persistence/Persistence.js.map +1 -1
  1122. package/dist/unstable/persistence/RateLimiter.d.ts +45 -24
  1123. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  1124. package/dist/unstable/persistence/RateLimiter.js +29 -45
  1125. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  1126. package/dist/unstable/persistence/Redis.d.ts +2 -2
  1127. package/dist/unstable/persistence/Redis.js +2 -2
  1128. package/dist/unstable/persistence/Redis.js.map +1 -1
  1129. package/dist/unstable/persistence/index.js.map +1 -1
  1130. package/dist/unstable/process/ChildProcess.d.ts +64 -21
  1131. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1132. package/dist/unstable/process/ChildProcess.js +14 -5
  1133. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1134. package/dist/unstable/process/ChildProcessSpawner.d.ts +21 -10
  1135. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1136. package/dist/unstable/process/ChildProcessSpawner.js +1 -1
  1137. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1138. package/dist/unstable/process/index.js.map +1 -1
  1139. package/dist/unstable/reactivity/AsyncResult.d.ts +8 -8
  1140. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  1141. package/dist/unstable/reactivity/AsyncResult.js +10 -10
  1142. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1143. package/dist/unstable/reactivity/Atom.d.ts +25 -22
  1144. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1145. package/dist/unstable/reactivity/Atom.js +14 -13
  1146. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1147. package/dist/unstable/reactivity/AtomHttpApi.d.ts +1 -1
  1148. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1149. package/dist/unstable/reactivity/AtomHttpApi.js +4 -1
  1150. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1151. package/dist/unstable/reactivity/AtomRef.js.map +1 -1
  1152. package/dist/unstable/reactivity/AtomRegistry.js +24 -3
  1153. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1154. package/dist/unstable/reactivity/AtomRpc.d.ts +1 -1
  1155. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1156. package/dist/unstable/reactivity/AtomRpc.js +4 -1
  1157. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1158. package/dist/unstable/reactivity/Hydration.d.ts +1 -1
  1159. package/dist/unstable/reactivity/Hydration.js +1 -1
  1160. package/dist/unstable/reactivity/Hydration.js.map +1 -1
  1161. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1162. package/dist/unstable/reactivity/index.js.map +1 -1
  1163. package/dist/unstable/rpc/Rpc.d.ts +35 -33
  1164. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1165. package/dist/unstable/rpc/Rpc.js +4 -2
  1166. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1167. package/dist/unstable/rpc/RpcClient.d.ts +26 -12
  1168. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1169. package/dist/unstable/rpc/RpcClient.js +30 -20
  1170. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1171. package/dist/unstable/rpc/RpcClientError.js +2 -2
  1172. package/dist/unstable/rpc/RpcClientError.js.map +1 -1
  1173. package/dist/unstable/rpc/RpcGroup.d.ts +8 -8
  1174. package/dist/unstable/rpc/RpcGroup.js +1 -1
  1175. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1176. package/dist/unstable/rpc/RpcMessage.d.ts +31 -30
  1177. package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
  1178. package/dist/unstable/rpc/RpcMessage.js +6 -6
  1179. package/dist/unstable/rpc/RpcMessage.js.map +1 -1
  1180. package/dist/unstable/rpc/RpcMiddleware.d.ts +10 -10
  1181. package/dist/unstable/rpc/RpcMiddleware.js +1 -1
  1182. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1183. package/dist/unstable/rpc/RpcSchema.d.ts +4 -4
  1184. package/dist/unstable/rpc/RpcSchema.js +3 -3
  1185. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1186. package/dist/unstable/rpc/RpcSerialization.d.ts +58 -7
  1187. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1188. package/dist/unstable/rpc/RpcSerialization.js +177 -96
  1189. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1190. package/dist/unstable/rpc/RpcServer.d.ts +13 -13
  1191. package/dist/unstable/rpc/RpcServer.js +17 -13
  1192. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1193. package/dist/unstable/rpc/RpcTest.js.map +1 -1
  1194. package/dist/unstable/rpc/RpcWorker.d.ts +5 -5
  1195. package/dist/unstable/rpc/RpcWorker.js +4 -4
  1196. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1197. package/dist/unstable/rpc/Utils.js.map +1 -1
  1198. package/dist/unstable/rpc/index.js.map +1 -1
  1199. package/dist/unstable/schema/Model.d.ts +53 -51
  1200. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1201. package/dist/unstable/schema/Model.js +35 -33
  1202. package/dist/unstable/schema/Model.js.map +1 -1
  1203. package/dist/unstable/schema/VariantSchema.d.ts +10 -10
  1204. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  1205. package/dist/unstable/schema/VariantSchema.js +19 -11
  1206. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1207. package/dist/unstable/schema/index.js.map +1 -1
  1208. package/dist/unstable/socket/Socket.d.ts +11 -3
  1209. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1210. package/dist/unstable/socket/Socket.js +37 -16
  1211. package/dist/unstable/socket/Socket.js.map +1 -1
  1212. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1213. package/dist/unstable/socket/index.js.map +1 -1
  1214. package/dist/unstable/sql/Migrator.js.map +1 -1
  1215. package/dist/unstable/sql/SqlClient.d.ts +1 -1
  1216. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1217. package/dist/unstable/sql/SqlClient.js +8 -4
  1218. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1219. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1220. package/dist/unstable/sql/SqlError.js +13 -13
  1221. package/dist/unstable/sql/SqlError.js.map +1 -1
  1222. package/dist/unstable/sql/SqlModel.d.ts +2 -2
  1223. package/dist/unstable/sql/SqlModel.js +2 -2
  1224. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1225. package/dist/unstable/sql/SqlResolver.d.ts +5 -5
  1226. package/dist/unstable/sql/SqlResolver.js +10 -8
  1227. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1228. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1229. package/dist/unstable/sql/SqlStream.js.map +1 -1
  1230. package/dist/unstable/sql/Statement.d.ts +6 -6
  1231. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  1232. package/dist/unstable/sql/Statement.js +23 -21
  1233. package/dist/unstable/sql/Statement.js.map +1 -1
  1234. package/dist/unstable/sql/index.js.map +1 -1
  1235. package/dist/unstable/workers/Transferable.d.ts +1 -1
  1236. package/dist/unstable/workers/Transferable.js +1 -1
  1237. package/dist/unstable/workers/Transferable.js.map +1 -1
  1238. package/dist/unstable/workers/Worker.d.ts +2 -2
  1239. package/dist/unstable/workers/Worker.js +2 -2
  1240. package/dist/unstable/workers/Worker.js.map +1 -1
  1241. package/dist/unstable/workers/WorkerError.d.ts +7 -7
  1242. package/dist/unstable/workers/WorkerError.js +11 -11
  1243. package/dist/unstable/workers/WorkerError.js.map +1 -1
  1244. package/dist/unstable/workers/WorkerRunner.d.ts +1 -1
  1245. package/dist/unstable/workers/WorkerRunner.js +1 -1
  1246. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1247. package/dist/unstable/workers/index.js.map +1 -1
  1248. package/dist/unstable/workflow/Activity.d.ts +2 -2
  1249. package/dist/unstable/workflow/Activity.js +2 -2
  1250. package/dist/unstable/workflow/Activity.js.map +1 -1
  1251. package/dist/unstable/workflow/DurableClock.d.ts +1 -1
  1252. package/dist/unstable/workflow/DurableClock.js +1 -1
  1253. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1254. package/dist/unstable/workflow/DurableDeferred.d.ts +10 -10
  1255. package/dist/unstable/workflow/DurableDeferred.js +5 -5
  1256. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1257. package/dist/unstable/workflow/DurableQueue.d.ts +22 -20
  1258. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  1259. package/dist/unstable/workflow/DurableQueue.js +22 -20
  1260. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  1261. package/dist/unstable/workflow/Workflow.d.ts +21 -21
  1262. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1263. package/dist/unstable/workflow/Workflow.js +13 -14
  1264. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1265. package/dist/unstable/workflow/WorkflowEngine.d.ts +2 -2
  1266. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  1267. package/dist/unstable/workflow/WorkflowEngine.js +3 -3
  1268. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1269. package/dist/unstable/workflow/WorkflowProxy.d.ts +4 -2
  1270. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  1271. package/dist/unstable/workflow/WorkflowProxy.js +4 -2
  1272. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  1273. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1274. package/dist/unstable/workflow/index.js.map +1 -1
  1275. package/dist/unstable/workflow/internal/crypto.js.map +1 -1
  1276. package/package.json +6 -13
  1277. package/src/Array.ts +982 -1045
  1278. package/src/BigDecimal.ts +433 -756
  1279. package/src/BigInt.ts +213 -269
  1280. package/src/Boolean.ts +146 -188
  1281. package/src/Cache.ts +410 -256
  1282. package/src/Cause.ts +167 -277
  1283. package/src/Channel.ts +892 -817
  1284. package/src/ChannelSchema.ts +1 -1
  1285. package/src/Chunk.ts +841 -1181
  1286. package/src/Clock.ts +181 -49
  1287. package/src/Combiner.ts +20 -33
  1288. package/src/Config.ts +636 -332
  1289. package/src/ConfigProvider.ts +218 -121
  1290. package/src/Console.ts +289 -39
  1291. package/src/Context.ts +322 -381
  1292. package/src/Cron.ts +68 -77
  1293. package/src/Crypto.ts +30 -23
  1294. package/src/Data.ts +60 -80
  1295. package/src/DateTime.ts +564 -660
  1296. package/src/Deferred.ts +253 -256
  1297. package/src/Duration.ts +232 -310
  1298. package/src/Effect.ts +3034 -3296
  1299. package/src/Encoding.ts +22 -40
  1300. package/src/Equal.ts +59 -41
  1301. package/src/Equivalence.ts +103 -105
  1302. package/src/ErrorReporter.ts +51 -27
  1303. package/src/ExecutionPlan.ts +91 -56
  1304. package/src/Exit.ts +116 -192
  1305. package/src/Fiber.ts +81 -148
  1306. package/src/FiberHandle.ts +152 -105
  1307. package/src/FiberMap.ts +225 -174
  1308. package/src/FiberSet.ts +125 -83
  1309. package/src/FileSystem.ts +156 -264
  1310. package/src/Filter.ts +61 -33
  1311. package/src/Formatter.ts +54 -56
  1312. package/src/Function.ts +82 -151
  1313. package/src/Graph.ts +416 -770
  1314. package/src/HKT.ts +12 -6
  1315. package/src/Hash.ts +52 -83
  1316. package/src/HashMap.ts +319 -411
  1317. package/src/HashRing.ts +1 -0
  1318. package/src/HashSet.ts +177 -284
  1319. package/src/Inspectable.ts +12 -12
  1320. package/src/Iterable.ts +631 -796
  1321. package/src/JsonPatch.ts +58 -112
  1322. package/src/JsonPointer.ts +8 -8
  1323. package/src/JsonSchema.ts +402 -244
  1324. package/src/Latch.ts +23 -35
  1325. package/src/Layer.ts +366 -265
  1326. package/src/LayerMap.ts +49 -29
  1327. package/src/LayerRef.ts +6 -2
  1328. package/src/LogLevel.ts +114 -214
  1329. package/src/Logger.ts +344 -697
  1330. package/src/ManagedRuntime.ts +7 -5
  1331. package/src/Match.ts +217 -252
  1332. package/src/Metric.ts +516 -1089
  1333. package/src/MutableHashMap.ts +218 -255
  1334. package/src/MutableHashSet.ts +84 -89
  1335. package/src/MutableList.ts +73 -370
  1336. package/src/MutableRef.ts +420 -243
  1337. package/src/Newtype.ts +21 -14
  1338. package/src/NonEmptyIterable.ts +7 -137
  1339. package/src/Number.ts +196 -233
  1340. package/src/Optic.ts +243 -383
  1341. package/src/Option.ts +447 -812
  1342. package/src/Order.ts +109 -109
  1343. package/src/Ordering.ts +20 -23
  1344. package/src/Path.ts +38 -41
  1345. package/src/Pipeable.ts +6 -5
  1346. package/src/PlatformError.ts +4 -4
  1347. package/src/Pool.ts +4 -2
  1348. package/src/Predicate.ts +200 -181
  1349. package/src/PrimaryKey.ts +7 -7
  1350. package/src/PubSub.ts +526 -552
  1351. package/src/Pull.ts +24 -18
  1352. package/src/Queue.ts +200 -159
  1353. package/src/Random.ts +49 -74
  1354. package/src/RcMap.ts +121 -63
  1355. package/src/RcRef.ts +24 -13
  1356. package/src/Record.ts +291 -488
  1357. package/src/Redactable.ts +10 -3
  1358. package/src/Redacted.ts +25 -25
  1359. package/src/Reducer.ts +8 -15
  1360. package/src/Ref.ts +221 -361
  1361. package/src/References.ts +102 -168
  1362. package/src/RegExp.ts +10 -14
  1363. package/src/Request.ts +31 -21
  1364. package/src/RequestResolver.ts +202 -91
  1365. package/src/Result.ts +312 -484
  1366. package/src/Runtime.ts +50 -75
  1367. package/src/Schedule.ts +311 -1737
  1368. package/src/Scheduler.ts +20 -7
  1369. package/src/Schema.ts +766 -786
  1370. package/src/SchemaAST.ts +522 -382
  1371. package/src/SchemaError.ts +7 -6
  1372. package/src/SchemaGetter.ts +242 -190
  1373. package/src/SchemaIssue.ts +89 -275
  1374. package/src/SchemaParser.ts +217 -124
  1375. package/src/SchemaRepresentation.ts +22 -40
  1376. package/src/SchemaTransformation.ts +129 -88
  1377. package/src/Scope.ts +123 -151
  1378. package/src/ScopedCache.ts +1 -1
  1379. package/src/ScopedRef.ts +4 -4
  1380. package/src/Semaphore.ts +152 -51
  1381. package/src/Sink.ts +129 -114
  1382. package/src/Stdio.ts +1 -1
  1383. package/src/Stream.ts +2679 -3133
  1384. package/src/String.ts +275 -312
  1385. package/src/Struct.ts +109 -114
  1386. package/src/SubscriptionRef.ts +284 -252
  1387. package/src/Symbol.ts +3 -3
  1388. package/src/SynchronizedRef.ts +1 -1
  1389. package/src/Terminal.ts +3 -3
  1390. package/src/Tracer.ts +102 -55
  1391. package/src/Trie.ts +287 -679
  1392. package/src/Tuple.ts +99 -131
  1393. package/src/TxChunk.ts +201 -121
  1394. package/src/TxDeferred.ts +62 -46
  1395. package/src/TxHashMap.ts +645 -799
  1396. package/src/TxHashSet.ts +443 -356
  1397. package/src/TxPriorityQueue.ts +130 -98
  1398. package/src/TxPubSub.ts +107 -80
  1399. package/src/TxQueue.ts +214 -183
  1400. package/src/TxReentrantLock.ts +136 -101
  1401. package/src/TxRef.ts +51 -32
  1402. package/src/TxSemaphore.ts +129 -95
  1403. package/src/TxSubscriptionRef.ts +97 -70
  1404. package/src/Types.ts +126 -67
  1405. package/src/Unify.ts +45 -65
  1406. package/src/Utils.ts +23 -16
  1407. package/src/internal/core.ts +2 -2
  1408. package/src/internal/dateTime.ts +7 -1
  1409. package/src/internal/effect.ts +93 -48
  1410. package/src/internal/executionPlan.ts +105 -10
  1411. package/src/internal/hashMap.ts +20 -14
  1412. package/src/internal/matcher.ts +2 -2
  1413. package/src/internal/persistence.ts +2 -0
  1414. package/src/internal/references.ts +3 -2
  1415. package/src/internal/schedule.ts +4 -4
  1416. package/src/internal/schema/annotations.ts +3 -0
  1417. package/src/internal/schema/fromJsonSchemaDocument.ts +15 -13
  1418. package/src/internal/schema/fromRepresentation.ts +10 -16
  1419. package/src/internal/schema/parser.ts +22 -0
  1420. package/src/internal/schema/toArbitrary.ts +3 -1
  1421. package/src/internal/schema/toJsonSchemaDocument.ts +60 -6
  1422. package/src/internal/schema/toRepresentation.ts +104 -119
  1423. package/src/internal/trie.ts +21 -12
  1424. package/src/testing/FastCheck.ts +8 -7
  1425. package/src/testing/TestClock.ts +85 -31
  1426. package/src/testing/TestConsole.ts +32 -31
  1427. package/src/testing/TestSchema.ts +30 -30
  1428. package/src/unstable/ai/AiError.ts +114 -137
  1429. package/src/unstable/ai/AnthropicStructuredOutput.ts +1 -1
  1430. package/src/unstable/ai/Chat.ts +133 -98
  1431. package/src/unstable/ai/IdGenerator.ts +32 -28
  1432. package/src/unstable/ai/LanguageModel.ts +111 -69
  1433. package/src/unstable/ai/McpProtocol.ts +48 -0
  1434. package/src/unstable/ai/McpSchema.ts +77 -66
  1435. package/src/unstable/ai/McpServer.ts +931 -305
  1436. package/src/unstable/ai/Model.ts +9 -20
  1437. package/src/unstable/ai/OpenAiStructuredOutput.ts +1 -1
  1438. package/src/unstable/ai/Prompt.ts +166 -49
  1439. package/src/unstable/ai/Response.ts +28 -14
  1440. package/src/unstable/ai/Telemetry.ts +46 -13
  1441. package/src/unstable/ai/Tokenizer.ts +14 -3
  1442. package/src/unstable/ai/Tool.ts +59 -44
  1443. package/src/unstable/ai/Toolkit.ts +26 -8
  1444. package/src/unstable/ai/index.ts +5 -0
  1445. package/src/unstable/ai/internal/mcpProtocol.ts +85 -0
  1446. package/src/unstable/ai/internal/mcpProtocolRegistry.ts +70 -0
  1447. package/src/unstable/ai/internal/structured-output.ts +13 -18
  1448. package/src/unstable/cli/Argument.ts +273 -69
  1449. package/src/unstable/cli/CliError.ts +79 -86
  1450. package/src/unstable/cli/CliOutput.ts +44 -58
  1451. package/src/unstable/cli/Command.ts +716 -116
  1452. package/src/unstable/cli/Flag.ts +418 -138
  1453. package/src/unstable/cli/GlobalFlag.ts +1 -1
  1454. package/src/unstable/cli/HelpDoc.ts +12 -4
  1455. package/src/unstable/cli/Param.ts +333 -97
  1456. package/src/unstable/cli/Primitive.ts +381 -154
  1457. package/src/unstable/cli/Prompt.ts +64 -34
  1458. package/src/unstable/cli/internal/ansi.ts +2 -2
  1459. package/src/unstable/cli/internal/command.ts +15 -10
  1460. package/src/unstable/cli/internal/completions/bash.ts +59 -9
  1461. package/src/unstable/cli/internal/completions/descriptor.ts +14 -20
  1462. package/src/unstable/cli/internal/completions/fish.ts +5 -7
  1463. package/src/unstable/cli/internal/help.ts +4 -2
  1464. package/src/unstable/cli/internal/lexer.ts +8 -2
  1465. package/src/unstable/cli/internal/parser.ts +5 -5
  1466. package/src/unstable/cli/internal/wizard.ts +2 -2
  1467. package/src/unstable/cluster/ClusterError.ts +7 -7
  1468. package/src/unstable/cluster/ClusterSchema.ts +8 -8
  1469. package/src/unstable/cluster/ClusterWorkflowEngine.ts +9 -2
  1470. package/src/unstable/cluster/Entity.ts +15 -16
  1471. package/src/unstable/cluster/EntityProxy.ts +4 -2
  1472. package/src/unstable/cluster/EntityResource.ts +2 -2
  1473. package/src/unstable/cluster/Envelope.ts +3 -3
  1474. package/src/unstable/cluster/HttpRunner.ts +6 -4
  1475. package/src/unstable/cluster/Message.ts +9 -9
  1476. package/src/unstable/cluster/MessageStorage.ts +24 -20
  1477. package/src/unstable/cluster/Reply.ts +25 -6
  1478. package/src/unstable/cluster/RunnerHealth.ts +1 -1
  1479. package/src/unstable/cluster/RunnerServer.ts +35 -8
  1480. package/src/unstable/cluster/RunnerStorage.ts +11 -9
  1481. package/src/unstable/cluster/Runners.ts +23 -12
  1482. package/src/unstable/cluster/Sharding.ts +42 -15
  1483. package/src/unstable/cluster/ShardingConfig.ts +3 -3
  1484. package/src/unstable/cluster/SingletonAddress.ts +1 -1
  1485. package/src/unstable/cluster/Snowflake.ts +8 -8
  1486. package/src/unstable/cluster/SqlMessageStorage.ts +1 -1
  1487. package/src/unstable/cluster/SqlRunnerStorage.ts +21 -5
  1488. package/src/unstable/cluster/internal/entityManager.ts +12 -16
  1489. package/src/unstable/cluster/internal/resourceMap.ts +5 -2
  1490. package/src/unstable/cluster/internal/resourceRef.ts +27 -5
  1491. package/src/unstable/devtools/DevToolsClient.ts +3 -2
  1492. package/src/unstable/encoding/Ini.ts +174 -0
  1493. package/src/unstable/encoding/Msgpack.ts +53 -36
  1494. package/src/unstable/encoding/Ndjson.ts +9 -1
  1495. package/src/unstable/encoding/Sse.ts +109 -37
  1496. package/src/unstable/encoding/Toml.ts +504 -0
  1497. package/src/unstable/encoding/Yaml.ts +541 -0
  1498. package/src/unstable/encoding/index.ts +15 -0
  1499. package/src/unstable/eventlog/Event.ts +20 -20
  1500. package/src/unstable/eventlog/EventGroup.ts +4 -4
  1501. package/src/unstable/eventlog/EventJournal.ts +29 -21
  1502. package/src/unstable/eventlog/EventLog.ts +3 -3
  1503. package/src/unstable/eventlog/EventLogEncryption.ts +1 -1
  1504. package/src/unstable/eventlog/EventLogMessage.ts +3 -3
  1505. package/src/unstable/eventlog/EventLogRemote.ts +1 -1
  1506. package/src/unstable/eventlog/EventLogServer.ts +41 -7
  1507. package/src/unstable/eventlog/EventLogServerEncrypted.ts +13 -5
  1508. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +15 -7
  1509. package/src/unstable/eventlog/EventLogSessionAuth.ts +1 -1
  1510. package/src/unstable/eventlog/SqlEventJournal.ts +6 -4
  1511. package/src/unstable/http/Cookies.ts +35 -21
  1512. package/src/unstable/http/Etag.ts +1 -1
  1513. package/src/unstable/http/FetchHttpClient.ts +3 -1
  1514. package/src/unstable/http/FindMyWay/internal/queryString.ts +420 -0
  1515. package/src/unstable/http/FindMyWay/internal/router.ts +950 -0
  1516. package/src/unstable/http/FindMyWay.ts +65 -6
  1517. package/src/unstable/http/Headers.ts +2 -2
  1518. package/src/unstable/http/HttpBody.ts +20 -5
  1519. package/src/unstable/http/HttpClient.ts +83 -55
  1520. package/src/unstable/http/HttpClientError.ts +1 -1
  1521. package/src/unstable/http/HttpClientRequest.ts +2 -12
  1522. package/src/unstable/http/HttpClientResponse.ts +5 -21
  1523. package/src/unstable/http/HttpEffect.ts +8 -8
  1524. package/src/unstable/http/HttpMethod.ts +6 -9
  1525. package/src/unstable/http/HttpMiddleware.ts +202 -39
  1526. package/src/unstable/http/HttpPlatform.ts +129 -6
  1527. package/src/unstable/http/HttpRouter.ts +102 -98
  1528. package/src/unstable/http/HttpServer.ts +13 -13
  1529. package/src/unstable/http/HttpServerError.ts +2 -2
  1530. package/src/unstable/http/HttpServerRequest.ts +18 -10
  1531. package/src/unstable/http/HttpServerResponse.ts +38 -6
  1532. package/src/unstable/http/HttpStaticServer.ts +35 -7
  1533. package/src/unstable/http/Multipart.ts +15 -8
  1534. package/src/unstable/http/MultipartParser/HeadersParser.ts +68 -0
  1535. package/src/unstable/http/MultipartParser/Search.ts +17 -0
  1536. package/src/unstable/http/MultipartParser/internal/contentType.ts +103 -0
  1537. package/src/unstable/http/MultipartParser/internal/headers.ts +615 -0
  1538. package/src/unstable/http/MultipartParser/internal/multipart.ts +262 -0
  1539. package/src/unstable/http/MultipartParser/internal/search.ts +167 -0
  1540. package/src/unstable/http/MultipartParser.ts +115 -0
  1541. package/src/unstable/http/Template.ts +6 -5
  1542. package/src/unstable/http/Url.ts +33 -63
  1543. package/src/unstable/http/UrlParams.ts +10 -18
  1544. package/src/unstable/http/index.ts +1 -1
  1545. package/src/unstable/http/internal/compression.ts +196 -0
  1546. package/src/unstable/http/internal/httpBody.ts +15 -0
  1547. package/src/unstable/httpapi/HttpApi.ts +6 -7
  1548. package/src/unstable/httpapi/HttpApiBuilder.ts +129 -30
  1549. package/src/unstable/httpapi/HttpApiClient.ts +117 -54
  1550. package/src/unstable/httpapi/HttpApiEndpoint.ts +159 -71
  1551. package/src/unstable/httpapi/HttpApiError.ts +46 -52
  1552. package/src/unstable/httpapi/HttpApiGroup.ts +15 -15
  1553. package/src/unstable/httpapi/HttpApiMiddleware.ts +71 -24
  1554. package/src/unstable/httpapi/HttpApiScalar.ts +0 -12
  1555. package/src/unstable/httpapi/HttpApiSchema.ts +359 -6
  1556. package/src/unstable/httpapi/OpenApi.ts +83 -33
  1557. package/src/unstable/observability/OtlpExporter.ts +35 -21
  1558. package/src/unstable/observability/OtlpLogger.ts +3 -1
  1559. package/src/unstable/observability/OtlpMetrics.ts +36 -19
  1560. package/src/unstable/observability/OtlpResource.ts +26 -17
  1561. package/src/unstable/observability/OtlpTracer.ts +1 -1
  1562. package/src/unstable/observability/PrometheusMetrics.ts +13 -4
  1563. package/src/unstable/observability/internal/otlpEnv.ts +1 -1
  1564. package/src/unstable/observability/internal/protobuf.ts +3 -0
  1565. package/src/unstable/persistence/KeyValueStore.ts +72 -49
  1566. package/src/unstable/persistence/Persistable.ts +8 -8
  1567. package/src/unstable/persistence/PersistedQueue.ts +18 -15
  1568. package/src/unstable/persistence/Persistence.ts +153 -26
  1569. package/src/unstable/persistence/RateLimiter.ts +77 -43
  1570. package/src/unstable/persistence/Redis.ts +3 -3
  1571. package/src/unstable/process/ChildProcess.ts +64 -21
  1572. package/src/unstable/process/ChildProcessSpawner.ts +21 -10
  1573. package/src/unstable/reactivity/AsyncResult.ts +12 -13
  1574. package/src/unstable/reactivity/Atom.ts +28 -25
  1575. package/src/unstable/reactivity/AtomHttpApi.ts +5 -4
  1576. package/src/unstable/reactivity/AtomRegistry.ts +24 -3
  1577. package/src/unstable/reactivity/AtomRpc.ts +5 -4
  1578. package/src/unstable/reactivity/Hydration.ts +1 -1
  1579. package/src/unstable/rpc/Rpc.ts +35 -33
  1580. package/src/unstable/rpc/RpcClient.ts +54 -27
  1581. package/src/unstable/rpc/RpcClientError.ts +2 -2
  1582. package/src/unstable/rpc/RpcGroup.ts +8 -8
  1583. package/src/unstable/rpc/RpcMessage.ts +31 -30
  1584. package/src/unstable/rpc/RpcMiddleware.ts +10 -10
  1585. package/src/unstable/rpc/RpcSchema.ts +4 -4
  1586. package/src/unstable/rpc/RpcSerialization.ts +167 -68
  1587. package/src/unstable/rpc/RpcServer.ts +18 -15
  1588. package/src/unstable/rpc/RpcWorker.ts +5 -5
  1589. package/src/unstable/schema/Model.ts +52 -50
  1590. package/src/unstable/schema/VariantSchema.ts +41 -23
  1591. package/src/unstable/socket/Socket.ts +41 -18
  1592. package/src/unstable/sql/SqlClient.ts +64 -56
  1593. package/src/unstable/sql/SqlError.ts +13 -13
  1594. package/src/unstable/sql/SqlModel.ts +2 -2
  1595. package/src/unstable/sql/SqlResolver.ts +13 -11
  1596. package/src/unstable/sql/Statement.ts +37 -31
  1597. package/src/unstable/workers/Transferable.ts +1 -1
  1598. package/src/unstable/workers/Worker.ts +2 -2
  1599. package/src/unstable/workers/WorkerError.ts +12 -12
  1600. package/src/unstable/workers/WorkerRunner.ts +1 -1
  1601. package/src/unstable/workflow/Activity.ts +2 -2
  1602. package/src/unstable/workflow/DurableClock.ts +1 -1
  1603. package/src/unstable/workflow/DurableDeferred.ts +10 -10
  1604. package/src/unstable/workflow/DurableQueue.ts +22 -20
  1605. package/src/unstable/workflow/Workflow.ts +23 -23
  1606. package/src/unstable/workflow/WorkflowEngine.ts +9 -4
  1607. package/src/unstable/workflow/WorkflowProxy.ts +4 -2
  1608. package/dist/internal/version.d.ts +0 -3
  1609. package/dist/internal/version.d.ts.map +0 -1
  1610. package/dist/internal/version.js +0 -2
  1611. package/dist/internal/version.js.map +0 -1
  1612. package/dist/unstable/http/Multipasta/HeadersParser.d.ts +0 -14
  1613. package/dist/unstable/http/Multipasta/HeadersParser.d.ts.map +0 -1
  1614. package/dist/unstable/http/Multipasta/HeadersParser.js +0 -14
  1615. package/dist/unstable/http/Multipasta/HeadersParser.js.map +0 -1
  1616. package/dist/unstable/http/Multipasta/Node.d.ts +0 -14
  1617. package/dist/unstable/http/Multipasta/Node.d.ts.map +0 -1
  1618. package/dist/unstable/http/Multipasta/Node.js +0 -14
  1619. package/dist/unstable/http/Multipasta/Node.js.map +0 -1
  1620. package/dist/unstable/http/Multipasta/Search.d.ts +0 -14
  1621. package/dist/unstable/http/Multipasta/Search.d.ts.map +0 -1
  1622. package/dist/unstable/http/Multipasta/Search.js +0 -14
  1623. package/dist/unstable/http/Multipasta/Search.js.map +0 -1
  1624. package/dist/unstable/http/Multipasta/Web.d.ts +0 -14
  1625. package/dist/unstable/http/Multipasta/Web.d.ts.map +0 -1
  1626. package/dist/unstable/http/Multipasta/Web.js +0 -14
  1627. package/dist/unstable/http/Multipasta/Web.js.map +0 -1
  1628. package/dist/unstable/http/Multipasta.d.ts +0 -15
  1629. package/dist/unstable/http/Multipasta.d.ts.map +0 -1
  1630. package/dist/unstable/http/Multipasta.js +0 -15
  1631. package/dist/unstable/http/Multipasta.js.map +0 -1
  1632. package/src/internal/version.ts +0 -2
  1633. package/src/unstable/http/Multipasta/HeadersParser.ts +0 -14
  1634. package/src/unstable/http/Multipasta/Node.ts +0 -14
  1635. package/src/unstable/http/Multipasta/Search.ts +0 -14
  1636. package/src/unstable/http/Multipasta/Web.ts +0 -14
  1637. package/src/unstable/http/Multipasta.ts +0 -15
package/src/Logger.ts CHANGED
@@ -42,23 +42,20 @@ const TypeId = "~effect/Logger"
42
42
  *
43
43
  * **Example** (Creating custom loggers)
44
44
  *
45
- * ```ts
45
+ * ```ts import.meta.vitest
46
46
  * import { Effect, Logger } from "effect"
47
47
  *
48
- * // Create a custom logger that accepts unknown messages and returns void
48
+ * const messages: Array<string> = []
49
49
  * const stringLogger = Logger.make<unknown, void>((options) => {
50
- * console.log(`[${options.logLevel}] ${options.message}`)
50
+ * messages.push(`[${options.logLevel}] ${options.message}`)
51
51
  * })
52
52
  *
53
- * // Create a logger that accepts any message type and returns a formatted string
54
- * const formattedLogger = Logger.make<unknown, string>((options) =>
55
- * `${options.date.toISOString()} [${options.logLevel}] ${options.message}`
56
- * )
57
- *
58
- * // Use the logger in an Effect program
59
53
  * const program = Effect.log("Hello World").pipe(
60
54
  * Effect.provide(Logger.layer([stringLogger]))
61
55
  * )
56
+ *
57
+ * Effect.runSync(program)
58
+ * messages // => ["[Info] Hello World"]
62
59
  * ```
63
60
  *
64
61
  * @category models
@@ -78,24 +75,24 @@ export interface Logger<in Message, out Output> extends Pipeable {
78
75
  *
79
76
  * **Example** (Accessing logger options)
80
77
  *
81
- * ```ts
78
+ * ```ts import.meta.vitest
82
79
  * import { Effect, Logger } from "effect"
83
80
  *
84
- * // Options interface provides all logging context
81
+ * const outputs: Array<unknown> = []
85
82
  * const detailedLogger = Logger.make((options) => {
86
- * const output = {
83
+ * outputs.push({
87
84
  * message: options.message,
88
85
  * level: options.logLevel,
89
- * timestamp: options.date.toISOString(),
90
- * fiberId: options.fiber.id,
91
- * hasCause: options.cause !== undefined
92
- * }
93
- * console.log(JSON.stringify(output))
86
+ * hasCause: options.cause.reasons.length > 0
87
+ * })
94
88
  * })
95
89
  *
96
90
  * const program = Effect.log("Processing request").pipe(
97
91
  * Effect.provide(Logger.layer([detailedLogger]))
98
92
  * )
93
+ *
94
+ * Effect.runSync(program)
95
+ * outputs // => [{ message: ["Processing request"], level: "Info", hasCause: false }]
99
96
  * ```
100
97
  *
101
98
  * @category options
@@ -114,16 +111,14 @@ export interface Options<out Message> {
114
111
  *
115
112
  * **Example** (Checking logger values)
116
113
  *
117
- * ```ts
114
+ * ```ts import.meta.vitest
118
115
  * import { Logger } from "effect"
119
116
  *
120
- * const myLogger = Logger.make((options) => {
121
- * console.log(options.message)
122
- * })
117
+ * const myLogger = Logger.make(() => undefined)
123
118
  *
124
- * console.log(Logger.isLogger(myLogger)) // true
125
- * console.log(Logger.isLogger("not a logger")) // false
126
- * console.log(Logger.isLogger({ log: () => {} })) // false
119
+ * Logger.isLogger(myLogger) // => true
120
+ * Logger.isLogger("not a logger") // => false
121
+ * Logger.isLogger({ log: () => {} }) // => false
127
122
  * ```
128
123
  *
129
124
  * @category guards
@@ -142,26 +137,26 @@ export const isLogger = (u: unknown): u is Logger<unknown, unknown> => Predicate
142
137
  *
143
138
  * **Example** (Accessing current loggers)
144
139
  *
145
- * ```ts
140
+ * ```ts import.meta.vitest
146
141
  * import { Effect, Logger } from "effect"
147
142
  *
148
- * // Access current loggers from fiber context
143
+ * const messages: Array<unknown> = []
144
+ * const customLogger = Logger.make((options) => {
145
+ * messages.push(options.message)
146
+ * })
149
147
  * const program = Effect.gen(function*() {
150
148
  * const currentLoggers = yield* Effect.service(Logger.CurrentLoggers)
151
- * console.log(`Number of active loggers: ${currentLoggers.size}`)
152
- *
153
- * // Add a custom logger to the set
154
- * const customLogger = Logger.make((options) => {
155
- * console.log(`Custom: ${options.message}`)
156
- * })
157
- *
158
149
  * yield* Effect.log("Hello from custom logger").pipe(
159
150
  * Effect.provide(Logger.layer([customLogger]))
160
151
  * )
152
+ * return currentLoggers.has(Logger.defaultLogger)
161
153
  * })
154
+ *
155
+ * Effect.runSync(program) // => true
156
+ * messages // => [["Hello from custom logger"]]
162
157
  * ```
163
158
  *
164
- * @category references
159
+ * @category services
165
160
  * @since 4.0.0
166
161
  */
167
162
  export const CurrentLoggers: Context.Reference<ReadonlySet<Logger<unknown, any>>> = effect.CurrentLoggers
@@ -184,7 +179,7 @@ export const CurrentLoggers: Context.Reference<ReadonlySet<Logger<unknown, any>>
184
179
  * @see {@link consolePretty} for the TTY-mode pretty console logger affected by this reference
185
180
  * @see {@link withConsoleError} for routing a specific formatter logger to `console.error`
186
181
  *
187
- * @category references
182
+ * @category services
188
183
  * @since 4.0.0
189
184
  */
190
185
  export const LogToStderr: Context.Reference<boolean> = effect.LogToStderr
@@ -199,27 +194,24 @@ export const LogToStderr: Context.Reference<boolean> = effect.LogToStderr
199
194
  *
200
195
  * **Example** (Transforming logger output)
201
196
  *
202
- * ```ts
203
- * import { Logger } from "effect"
197
+ * ```ts import.meta.vitest
198
+ * import { Effect, Logger } from "effect"
204
199
  *
205
- * // Create a logger that outputs objects
200
+ * const outputs: Array<unknown> = []
206
201
  * const structuredLogger = Logger.make((options) => ({
207
- * level: options.logLevel,
208
- * message: options.message,
209
- * timestamp: options.date.toISOString()
202
+ * message: options.message
210
203
  * }))
211
204
  *
212
- * // Transform the output to JSON strings
213
- * const jsonStringLogger = Logger.map(
214
- * structuredLogger,
215
- * (output) => JSON.stringify(output)
216
- * )
217
- *
218
205
  * // Transform to uppercase messages
219
206
  * const uppercaseLogger = Logger.map(
220
207
  * structuredLogger,
221
208
  * (output) => ({ ...output, message: String(output.message).toUpperCase() })
222
209
  * )
210
+ *
211
+ * const collector = Logger.make((options) => outputs.push(uppercaseLogger.log(options)))
212
+ * const program = Effect.log("hello").pipe(Effect.provide(Logger.layer([collector])))
213
+ * Effect.runSync(program)
214
+ * outputs // => [{ message: "HELLO" }]
223
215
  * ```
224
216
  *
225
217
  * @category mapping
@@ -236,27 +228,24 @@ export const map = dual<
236
228
  *
237
229
  * **Example** (Transforming logger output)
238
230
  *
239
- * ```ts
240
- * import { Logger } from "effect"
231
+ * ```ts import.meta.vitest
232
+ * import { Effect, Logger } from "effect"
241
233
  *
242
- * // Create a logger that outputs objects
234
+ * const outputs: Array<unknown> = []
243
235
  * const structuredLogger = Logger.make((options) => ({
244
- * level: options.logLevel,
245
- * message: options.message,
246
- * timestamp: options.date.toISOString()
236
+ * message: options.message
247
237
  * }))
248
238
  *
249
- * // Transform the output to JSON strings
250
- * const jsonStringLogger = Logger.map(
251
- * structuredLogger,
252
- * (output) => JSON.stringify(output)
253
- * )
254
- *
255
239
  * // Transform to uppercase messages
256
240
  * const uppercaseLogger = Logger.map(
257
241
  * structuredLogger,
258
242
  * (output) => ({ ...output, message: String(output.message).toUpperCase() })
259
243
  * )
244
+ *
245
+ * const collector = Logger.make((options) => outputs.push(uppercaseLogger.log(options)))
246
+ * const program = Effect.log("hello").pipe(Effect.provide(Logger.layer([collector])))
247
+ * Effect.runSync(program)
248
+ * outputs // => [{ message: "HELLO" }]
260
249
  * ```
261
250
  *
262
251
  * @category mapping
@@ -275,27 +264,24 @@ export const map = dual<
275
264
  *
276
265
  * **Example** (Transforming logger output)
277
266
  *
278
- * ```ts
279
- * import { Logger } from "effect"
267
+ * ```ts import.meta.vitest
268
+ * import { Effect, Logger } from "effect"
280
269
  *
281
- * // Create a logger that outputs objects
270
+ * const outputs: Array<unknown> = []
282
271
  * const structuredLogger = Logger.make((options) => ({
283
- * level: options.logLevel,
284
- * message: options.message,
285
- * timestamp: options.date.toISOString()
272
+ * message: options.message
286
273
  * }))
287
274
  *
288
- * // Transform the output to JSON strings
289
- * const jsonStringLogger = Logger.map(
290
- * structuredLogger,
291
- * (output) => JSON.stringify(output)
292
- * )
293
- *
294
275
  * // Transform to uppercase messages
295
276
  * const uppercaseLogger = Logger.map(
296
277
  * structuredLogger,
297
278
  * (output) => ({ ...output, message: String(output.message).toUpperCase() })
298
279
  * )
280
+ *
281
+ * const collector = Logger.make((options) => outputs.push(uppercaseLogger.log(options)))
282
+ * const program = Effect.log("hello").pipe(Effect.provide(Logger.layer([collector])))
283
+ * Effect.runSync(program)
284
+ * outputs // => [{ message: "HELLO" }]
299
285
  * ```
300
286
  *
301
287
  * @category mapping
@@ -315,20 +301,23 @@ export const map = dual<
315
301
  *
316
302
  * **Example** (Writing logger output with console.log)
317
303
  *
318
- * ```ts
304
+ * ```ts import.meta.vitest
319
305
  * import { Effect, Logger } from "effect"
306
+ * import { TestConsole } from "effect/testing"
320
307
  *
321
308
  * // Create a custom formatter
322
309
  * const customFormatter = Logger.make((options) =>
323
- * `[${options.date.toISOString()}] ${options.logLevel}: ${options.message}`
310
+ * `${options.logLevel}: ${options.message}`
324
311
  * )
325
312
  *
326
- * // Route to console
327
313
  * const consoleLogger = Logger.withConsoleLog(customFormatter)
328
314
  *
329
- * const program = Effect.log("Hello World").pipe(
330
- * Effect.provide(Logger.layer([consoleLogger]))
331
- * )
315
+ * const program = Effect.gen(function*() {
316
+ * yield* Effect.log("Hello World").pipe(Effect.provide(Logger.layer([consoleLogger])))
317
+ * return yield* TestConsole.logLines
318
+ * }).pipe(Effect.provide(TestConsole.layer))
319
+ *
320
+ * await Effect.runPromise(program) // => ["Info: Hello World"]
332
321
  * ```
333
322
  *
334
323
  * @category logging
@@ -352,20 +341,23 @@ export const withConsoleLog = <Message, Output>(
352
341
  *
353
342
  * **Example** (Writing logger output with console.error)
354
343
  *
355
- * ```ts
344
+ * ```ts import.meta.vitest
356
345
  * import { Effect, Logger } from "effect"
346
+ * import { TestConsole } from "effect/testing"
357
347
  *
358
348
  * // Create an error-specific formatter
359
349
  * const errorFormatter = Logger.make((options) =>
360
- * `ERROR [${options.date.toISOString()}]: ${options.message}`
350
+ * `ERROR: ${options.message}`
361
351
  * )
362
352
  *
363
- * // Route to console.error
364
353
  * const errorLogger = Logger.withConsoleError(errorFormatter)
365
354
  *
366
- * const program = Effect.logError("Database connection failed").pipe(
367
- * Effect.provide(Logger.layer([errorLogger]))
368
- * )
355
+ * const program = Effect.gen(function*() {
356
+ * yield* Effect.logError("Database connection failed").pipe(Effect.provide(Logger.layer([errorLogger])))
357
+ * return yield* TestConsole.errorLines
358
+ * }).pipe(Effect.provide(TestConsole.layer))
359
+ *
360
+ * await Effect.runPromise(program) // => ["ERROR: Database connection failed"]
369
361
  * ```
370
362
  *
371
363
  * @category logging
@@ -393,9 +385,15 @@ export const withConsoleError = <Message, Output>(
393
385
  *
394
386
  * **Example** (Writing logs with level-based console methods)
395
387
  *
396
- * ```ts
397
- * import { Effect, Logger } from "effect"
388
+ * ```ts import.meta.vitest
389
+ * import { Console, Effect, Logger } from "effect"
398
390
  *
391
+ * const messages: Array<ReadonlyArray<unknown>> = []
392
+ * const testConsole: Console.Console = Object.assign(Object.create(console), {
393
+ * info: (message: unknown) => messages.push(["info", message]),
394
+ * warn: (message: unknown) => messages.push(["warn", message]),
395
+ * error: (message: unknown) => messages.push(["error", message])
396
+ * })
399
397
  * const formatter = Logger.make((options) =>
400
398
  * `[${options.logLevel}] ${options.message}`
401
399
  * )
@@ -406,10 +404,14 @@ export const withConsoleError = <Message, Output>(
406
404
  * yield* Effect.logInfo("Info message") // -> console.info
407
405
  * yield* Effect.logWarning("Warning") // -> console.warn
408
406
  * yield* Effect.logError("Error occurred") // -> console.error
409
- * yield* Effect.logDebug("Debug info") // -> console.debug
410
- * }).pipe(
411
- * Effect.provide(Logger.layer([leveledLogger]))
412
- * )
407
+ * }).pipe(Effect.provide(Logger.layer([leveledLogger])))
408
+ * Effect.runSync(Effect.provideService(program, Console.Console, testConsole))
409
+ * const expected = [
410
+ * ["info", "[Info] Info message"],
411
+ * ["warn", "[Warn] Warning"],
412
+ * ["error", "[Error] Error occurred"]
413
+ * ]
414
+ * messages // => expected
413
415
  * ```
414
416
  *
415
417
  * @category logging
@@ -508,34 +510,20 @@ const format = (
508
510
  *
509
511
  * **Example** (Creating loggers from functions)
510
512
  *
511
- * ```ts
512
- * import { Effect, Logger, References } from "effect"
513
+ * ```ts import.meta.vitest
514
+ * import { Effect, Logger } from "effect"
513
515
  *
514
- * // Simple text logger
516
+ * const outputs: Array<string> = []
515
517
  * const textLogger = Logger.make((options) =>
516
- * `${options.date.toISOString()} [${options.logLevel}] ${options.message}`
518
+ * `${options.logLevel}: ${options.message}`
517
519
  * )
518
- *
519
- * // Structured object logger
520
- * const objectLogger = Logger.make((options) => ({
521
- * timestamp: options.date.toISOString(),
522
- * level: options.logLevel,
523
- * message: options.message,
524
- * fiberId: options.fiber.id,
525
- * annotations: options.fiber.getRef(References.CurrentLogAnnotations)
526
- * }))
527
- *
528
- * // Custom filtering logger
529
- * const filteredLogger = Logger.make((options) => {
530
- * if (options.logLevel === "Debug") {
531
- * return // Skip debug messages
532
- * }
533
- * return `${options.logLevel}: ${options.message}`
534
- * })
520
+ * const collector = Logger.make((options) => outputs.push(textLogger.log(options)))
535
521
  *
536
522
  * const program = Effect.log("Hello World").pipe(
537
- * Effect.provide(Logger.layer([textLogger]))
523
+ * Effect.provide(Logger.layer([collector]))
538
524
  * )
525
+ * Effect.runSync(program)
526
+ * outputs // => ["Info: Hello World"]
539
527
  * ```
540
528
  *
541
529
  * @category constructors
@@ -550,25 +538,10 @@ export const make: <Message, Output>(
550
538
  *
551
539
  * **Example** (Referencing the default logger)
552
540
  *
553
- * ```ts
554
- * import { Effect, Logger } from "effect"
555
- *
556
- * // Use the default logger (automatically used by Effect runtime)
557
- * const program = Effect.gen(function*() {
558
- * yield* Effect.log("This uses the default logger")
559
- * yield* Effect.logInfo("Info message")
560
- * yield* Effect.logError("Error message")
561
- * })
562
- *
563
- * // Explicitly use the default logger
564
- * const withDefaultLogger = Effect.log("Explicit default").pipe(
565
- * Effect.provide(Logger.layer([Logger.defaultLogger]))
566
- * )
541
+ * ```ts import.meta.vitest
542
+ * import { Logger } from "effect"
567
543
  *
568
- * // Compare with custom logger
569
- * const customLogger = Logger.make((options) => {
570
- * console.log(`CUSTOM: ${options.message}`)
571
- * })
544
+ * Logger.isLogger(Logger.defaultLogger) // => true
572
545
  * ```
573
546
  *
574
547
  * @category constructors
@@ -586,24 +559,24 @@ export const defaultLogger: Logger<unknown, void> = effect.defaultLogger
586
559
  *
587
560
  * **Example** (Formatting logs as simple strings)
588
561
  *
589
- * ```ts
562
+ * ```ts import.meta.vitest
590
563
  * import { Effect, Logger } from "effect"
564
+ * import { TestConsole } from "effect/testing"
591
565
  *
592
566
  * // Use the simple format logger
593
- * const simpleLoggerProgram = Effect.log("Hello Simple Format").pipe(
594
- * Effect.provide(Logger.layer([Logger.formatSimple]))
567
+ * const stableSimple = Logger.map(Logger.formatSimple, (output) =>
568
+ * output
569
+ * .replace(/timestamp=\S+ /, "")
570
+ * .replace(/fiber=#\d+ /, "")
595
571
  * )
596
- *
597
- * // Combine with console output
598
- * const consoleSimpleLogger = Logger.withConsoleLog(Logger.formatSimple)
599
- *
600
572
  * const program = Effect.gen(function*() {
601
- * yield* Effect.log("Application started")
602
- * yield* Effect.logInfo("Processing data")
603
- * yield* Effect.logWarning("Memory usage high")
604
- * }).pipe(
605
- * Effect.provide(Logger.layer([consoleSimpleLogger]))
606
- * )
573
+ * yield* Effect.log("Application started").pipe(
574
+ * Effect.provide(Logger.layer([Logger.withConsoleLog(stableSimple)]))
575
+ * )
576
+ * return yield* TestConsole.logLines
577
+ * }).pipe(Effect.provide(TestConsole.layer))
578
+ *
579
+ * await Effect.runPromise(program) // => ["level=Info message=\"Application started\""]
607
580
  * ```
608
581
  *
609
582
  * @category constructors
@@ -622,27 +595,23 @@ export const formatSimple = effect.loggerMake(format(escapeDoubleQuotes))
622
595
  *
623
596
  * **Example** (Formatting logs as logfmt)
624
597
  *
625
- * ```ts
598
+ * ```ts import.meta.vitest
626
599
  * import { Effect, Logger } from "effect"
600
+ * import { TestConsole } from "effect/testing"
627
601
  *
628
- * // Use the logfmt format logger
629
- * const logfmtLoggerProgram = Effect.log("Hello LogFmt Format").pipe(
630
- * Effect.provide(Logger.layer([Logger.formatLogFmt]))
631
- * )
632
- *
633
- * // Perfect for structured logging systems
634
- * const structuredProgram = Effect.gen(function*() {
635
- * yield* Effect.log("User login", { userId: 123, method: "OAuth" })
636
- * yield* Effect.logInfo("Request processed", {
637
- * duration: 45,
638
- * status: "success"
639
- * })
640
- * }).pipe(
641
- * Effect.provide(Logger.layer([Logger.withConsoleLog(Logger.formatLogFmt)]))
602
+ * const stableLogFmt = Logger.map(Logger.formatLogFmt, (output) =>
603
+ * output
604
+ * .replace(/timestamp=\S+ /, "")
605
+ * .replace(/fiber=#\d+ /, "")
642
606
  * )
607
+ * const program = Effect.gen(function*() {
608
+ * yield* Effect.log("User login").pipe(
609
+ * Effect.provide(Logger.layer([Logger.withConsoleLog(stableLogFmt)]))
610
+ * )
611
+ * return yield* TestConsole.logLines
612
+ * }).pipe(Effect.provide(TestConsole.layer))
643
613
  *
644
- * // Good for log aggregation systems like Splunk, ELK
645
- * const productionLogger = Logger.formatLogFmt
614
+ * await Effect.runPromise(program) // => ["level=Info message=\"User login\""]
646
615
  * ```
647
616
  *
648
617
  * @category constructors
@@ -662,30 +631,22 @@ export const formatLogFmt = effect.loggerMake(format(JSON.stringify, 0))
662
631
  *
663
632
  * **Example** (Formatting logs as structured objects)
664
633
  *
665
- * ```ts
634
+ * ```ts import.meta.vitest
666
635
  * import { Effect, Logger } from "effect"
636
+ * import { TestConsole } from "effect/testing"
667
637
  *
668
- * // Use the structured format logger
669
- * const structuredLoggerProgram = Effect.log("Hello Structured Format").pipe(
670
- * Effect.provide(Logger.layer([Logger.formatStructured]))
671
- * )
672
- *
673
- * // Perfect for JSON processing and analytics
674
- * const analyticsProgram = Effect.gen(function*() {
675
- * yield* Effect.log("User action", { action: "click", element: "button" })
676
- * yield* Effect.logInfo("API call", { endpoint: "/users", duration: 150 })
677
- * }).pipe(
678
- * Effect.annotateLogs("sessionId", "abc123"),
679
- * Effect.withLogSpan("request"),
680
- * Effect.provide(Logger.layer([Logger.formatStructured]))
681
- * )
638
+ * const stableStructured = Logger.map(Logger.formatStructured, (output) => ({
639
+ * message: output.message,
640
+ * level: output.level
641
+ * }))
642
+ * const program = Effect.gen(function*() {
643
+ * yield* Effect.log("User action").pipe(
644
+ * Effect.provide(Logger.layer([Logger.withConsoleLog(stableStructured)]))
645
+ * )
646
+ * return yield* TestConsole.logLines
647
+ * }).pipe(Effect.provide(TestConsole.layer))
682
648
  *
683
- * // Process structured output
684
- * const processingLogger = Logger.map(Logger.formatStructured, (output) => {
685
- * // Process the structured object
686
- * const enhanced = { ...output, processed: true }
687
- * return enhanced
688
- * })
649
+ * await Effect.runPromise(program) // => [{ message: "User action", level: "INFO" }]
689
650
  * ```
690
651
  *
691
652
  * @category constructors
@@ -740,35 +701,22 @@ export const formatStructured: Logger<unknown, {
740
701
  *
741
702
  * **Example** (Formatting logs as JSON)
742
703
  *
743
- * ```ts
744
- * import { Effect, Logger } from "effect"
745
- *
746
- * // Use the JSON format logger
747
- * const jsonLoggerProgram = Effect.log("Hello JSON Format").pipe(
748
- * Effect.provide(Logger.layer([Logger.formatJson]))
749
- * )
704
+ * ```ts import.meta.vitest
705
+ * import { Effect, Formatter, Logger } from "effect"
706
+ * import { TestConsole } from "effect/testing"
750
707
  *
751
- * // Perfect for log aggregation and processing systems
752
- * const productionProgram = Effect.gen(function*() {
753
- * yield* Effect.log("Server started", { port: 3000, env: "production" })
754
- * yield* Effect.logInfo("Request received", {
755
- * method: "GET",
756
- * path: "/api/users"
757
- * })
758
- * yield* Effect.logError("Database error", { error: "Connection timeout" })
759
- * }).pipe(
760
- * Effect.annotateLogs("service", "api-server"),
761
- * Effect.withLogSpan("request-processing"),
762
- * Effect.provide(Logger.layer([Logger.formatJson]))
763
- * )
764
- *
765
- * // Adapt the JSON string before giving it to an output sink
766
- * const envelopedJsonLogger = Logger.map(
767
- * Logger.formatJson,
768
- * (jsonString) => `{"service":"api-server","entry":${jsonString}}`
769
- * )
708
+ * const stableJson = Logger.map(Logger.formatJson, (json) => {
709
+ * const output = JSON.parse(json)
710
+ * return Formatter.formatJson({ message: output.message, level: output.level })
711
+ * })
712
+ * const program = Effect.gen(function*() {
713
+ * yield* Effect.log("Server started").pipe(
714
+ * Effect.provide(Logger.layer([Logger.withConsoleLog(stableJson)]))
715
+ * )
716
+ * return yield* TestConsole.logLines
717
+ * }).pipe(Effect.provide(TestConsole.layer))
770
718
  *
771
- * const envelopedConsoleLogger = Logger.withConsoleLog(envelopedJsonLogger)
719
+ * await Effect.runPromise(program) // => ["{\"message\":\"Server started\",\"level\":\"INFO\"}"]
772
720
  * ```
773
721
  *
774
722
  * @category constructors
@@ -787,43 +735,26 @@ export const formatJson = map(formatStructured, Formatter.formatJson)
787
735
  *
788
736
  * **Example** (Batching logger output)
789
737
  *
790
- * ```ts
791
- * import { Duration, Effect, Logger } from "effect"
738
+ * ```ts import.meta.vitest
739
+ * import { Effect, Logger } from "effect"
792
740
  *
793
- * // Create a batched logger that flushes every 5 seconds
794
- * const batchedLogger = Logger.batched(Logger.formatJson, {
795
- * window: Duration.seconds(5),
741
+ * const flushed: Array<ReadonlyArray<string>> = []
742
+ * const messageLogger = Logger.make((options) => String(options.message))
743
+ * const batchedLogger = Logger.batched(messageLogger, {
744
+ * window: "1 hour",
796
745
  * flush: (messages) =>
797
746
  * Effect.sync(() => {
798
- * console.log(`Flushing ${messages.length} log entries:`)
799
- * messages.forEach((msg, i) => console.log(`${i + 1}. ${msg}`))
747
+ * flushed.push(messages)
800
748
  * })
801
749
  * })
802
750
  *
803
- * const program = Effect.gen(function*() {
751
+ * const program = Effect.scoped(Effect.gen(function*() {
804
752
  * const logger = yield* batchedLogger
805
- *
806
- * yield* Effect.provide(
807
- * Effect.all([
808
- * Effect.log("Event 1"),
809
- * Effect.log("Event 2"),
810
- * Effect.log("Event 3"),
811
- * Effect.sleep(Duration.seconds(6)), // Trigger flush
812
- * Effect.log("Event 4")
813
- * ]),
814
- * Logger.layer([logger])
815
- * )
816
- * })
817
- *
818
- * // Remote batch logging example
819
- * const remoteBatchLogger = Logger.batched(Logger.formatStructured, {
820
- * window: Duration.seconds(10),
821
- * flush: (entries) =>
822
- * Effect.sync(() => {
823
- * // Send batch to remote logging service
824
- * console.log(`Sending ${entries.length} log entries to remote service`)
825
- * })
826
- * })
753
+ * yield* Effect.log("Event 1").pipe(Effect.provide(Logger.layer([logger])))
754
+ * yield* Effect.log("Event 2").pipe(Effect.provide(Logger.layer([logger])))
755
+ * }))
756
+ * await Effect.runPromise(program)
757
+ * flushed // => [["Event 1", "Event 2"]]
827
758
  * ```
828
759
  *
829
760
  * @category constructors
@@ -841,43 +772,26 @@ export const batched = dual<
841
772
  *
842
773
  * **Example** (Batching logger output)
843
774
  *
844
- * ```ts
845
- * import { Duration, Effect, Logger } from "effect"
775
+ * ```ts import.meta.vitest
776
+ * import { Effect, Logger } from "effect"
846
777
  *
847
- * // Create a batched logger that flushes every 5 seconds
848
- * const batchedLogger = Logger.batched(Logger.formatJson, {
849
- * window: Duration.seconds(5),
778
+ * const flushed: Array<ReadonlyArray<string>> = []
779
+ * const messageLogger = Logger.make((options) => String(options.message))
780
+ * const batchedLogger = Logger.batched(messageLogger, {
781
+ * window: "1 hour",
850
782
  * flush: (messages) =>
851
783
  * Effect.sync(() => {
852
- * console.log(`Flushing ${messages.length} log entries:`)
853
- * messages.forEach((msg, i) => console.log(`${i + 1}. ${msg}`))
784
+ * flushed.push(messages)
854
785
  * })
855
786
  * })
856
787
  *
857
- * const program = Effect.gen(function*() {
788
+ * const program = Effect.scoped(Effect.gen(function*() {
858
789
  * const logger = yield* batchedLogger
859
- *
860
- * yield* Effect.provide(
861
- * Effect.all([
862
- * Effect.log("Event 1"),
863
- * Effect.log("Event 2"),
864
- * Effect.log("Event 3"),
865
- * Effect.sleep(Duration.seconds(6)), // Trigger flush
866
- * Effect.log("Event 4")
867
- * ]),
868
- * Logger.layer([logger])
869
- * )
870
- * })
871
- *
872
- * // Remote batch logging example
873
- * const remoteBatchLogger = Logger.batched(Logger.formatStructured, {
874
- * window: Duration.seconds(10),
875
- * flush: (entries) =>
876
- * Effect.sync(() => {
877
- * // Send batch to remote logging service
878
- * console.log(`Sending ${entries.length} log entries to remote service`)
879
- * })
880
- * })
790
+ * yield* Effect.log("Event 1").pipe(Effect.provide(Logger.layer([logger])))
791
+ * yield* Effect.log("Event 2").pipe(Effect.provide(Logger.layer([logger])))
792
+ * }))
793
+ * await Effect.runPromise(program)
794
+ * flushed // => [["Event 1", "Event 2"]]
881
795
  * ```
882
796
  *
883
797
  * @category constructors
@@ -902,43 +816,26 @@ export const batched = dual<
902
816
  *
903
817
  * **Example** (Batching logger output)
904
818
  *
905
- * ```ts
906
- * import { Duration, Effect, Logger } from "effect"
819
+ * ```ts import.meta.vitest
820
+ * import { Effect, Logger } from "effect"
907
821
  *
908
- * // Create a batched logger that flushes every 5 seconds
909
- * const batchedLogger = Logger.batched(Logger.formatJson, {
910
- * window: Duration.seconds(5),
822
+ * const flushed: Array<ReadonlyArray<string>> = []
823
+ * const messageLogger = Logger.make((options) => String(options.message))
824
+ * const batchedLogger = Logger.batched(messageLogger, {
825
+ * window: "1 hour",
911
826
  * flush: (messages) =>
912
827
  * Effect.sync(() => {
913
- * console.log(`Flushing ${messages.length} log entries:`)
914
- * messages.forEach((msg, i) => console.log(`${i + 1}. ${msg}`))
828
+ * flushed.push(messages)
915
829
  * })
916
830
  * })
917
831
  *
918
- * const program = Effect.gen(function*() {
832
+ * const program = Effect.scoped(Effect.gen(function*() {
919
833
  * const logger = yield* batchedLogger
920
- *
921
- * yield* Effect.provide(
922
- * Effect.all([
923
- * Effect.log("Event 1"),
924
- * Effect.log("Event 2"),
925
- * Effect.log("Event 3"),
926
- * Effect.sleep(Duration.seconds(6)), // Trigger flush
927
- * Effect.log("Event 4")
928
- * ]),
929
- * Logger.layer([logger])
930
- * )
931
- * })
932
- *
933
- * // Remote batch logging example
934
- * const remoteBatchLogger = Logger.batched(Logger.formatStructured, {
935
- * window: Duration.seconds(10),
936
- * flush: (entries) =>
937
- * Effect.sync(() => {
938
- * // Send batch to remote logging service
939
- * console.log(`Sending ${entries.length} log entries to remote service`)
940
- * })
941
- * })
834
+ * yield* Effect.log("Event 1").pipe(Effect.provide(Logger.layer([logger])))
835
+ * yield* Effect.log("Event 2").pipe(Effect.provide(Logger.layer([logger])))
836
+ * }))
837
+ * await Effect.runPromise(program)
838
+ * flushed // => [["Event 1", "Event 2"]]
942
839
  * ```
943
840
  *
944
841
  * @category constructors
@@ -1000,35 +897,11 @@ export const batched = dual<
1000
897
  *
1001
898
  * **Example** (Logging with pretty console output)
1002
899
  *
1003
- * ```ts
1004
- * import { Effect, Logger } from "effect"
1005
- *
1006
- * // Use the pretty console logger with default settings
1007
- * const basicPretty = Effect.log("Hello Pretty Format").pipe(
1008
- * Effect.provide(Logger.layer([Logger.consolePretty()]))
1009
- * )
1010
- *
1011
- * // Configure pretty logger options
1012
- * const customPretty = Logger.consolePretty({
1013
- * colors: true,
1014
- * stderr: false,
1015
- * mode: "tty",
1016
- * formatDate: (date) => date.toLocaleTimeString()
1017
- * })
1018
- *
1019
- * // Perfect for development environment
1020
- * const developmentProgram = Effect.gen(function*() {
1021
- * yield* Effect.log("Application starting")
1022
- * yield* Effect.logInfo("Database connected")
1023
- * yield* Effect.logWarning("High memory usage detected")
1024
- * }).pipe(
1025
- * Effect.annotateLogs("environment", "development"),
1026
- * Effect.withLogSpan("startup"),
1027
- * Effect.provide(Logger.layer([customPretty]))
1028
- * )
900
+ * ```ts import.meta.vitest
901
+ * import { Logger } from "effect"
1029
902
  *
1030
- * // Disable colors for CI/CD environments
1031
- * const ciLogger = Logger.consolePretty({ colors: false })
903
+ * const prettyLogger = Logger.consolePretty({ colors: false })
904
+ * Logger.isLogger(prettyLogger) // => true
1032
905
  * ```
1033
906
  *
1034
907
  * @category constructors
@@ -1054,33 +927,10 @@ export const consolePretty: (
1054
927
  *
1055
928
  * **Example** (Logging logfmt output to the console)
1056
929
  *
1057
- * ```ts
1058
- * import { Effect, Logger } from "effect"
1059
- *
1060
- * // Use the console logfmt logger
1061
- * const logfmtProgram = Effect.log("Hello LogFmt Console").pipe(
1062
- * Effect.provide(Logger.layer([Logger.consoleLogFmt]))
1063
- * )
1064
- *
1065
- * // Great for production environments
1066
- * const productionProgram = Effect.gen(function*() {
1067
- * yield* Effect.log("Server started", { port: 8080, version: "1.0.0" })
1068
- * yield* Effect.logInfo("Request processed", { userId: 123, duration: 45 })
1069
- * yield* Effect.logError("Validation failed", {
1070
- * field: "email",
1071
- * value: "invalid"
1072
- * })
1073
- * }).pipe(
1074
- * Effect.annotateLogs("service", "api"),
1075
- * Effect.withLogSpan("request-handler"),
1076
- * Effect.provide(Logger.layer([Logger.consoleLogFmt]))
1077
- * )
930
+ * ```ts import.meta.vitest
931
+ * import { Logger } from "effect"
1078
932
  *
1079
- * // Combine with other loggers
1080
- * const multiLoggerLive = Logger.layer([
1081
- * Logger.consoleLogFmt,
1082
- * Logger.consolePretty()
1083
- * ])
933
+ * Logger.isLogger(Logger.consoleLogFmt) // => true
1084
934
  * ```
1085
935
  *
1086
936
  * @category constructors
@@ -1102,41 +952,10 @@ export const consoleLogFmt: Logger<unknown, void> = withConsoleLog(formatLogFmt)
1102
952
  *
1103
953
  * **Example** (Logging structured output to the console)
1104
954
  *
1105
- * ```ts
1106
- * import { Effect, Logger } from "effect"
1107
- *
1108
- * // Use the console structured logger
1109
- * const structuredProgram = Effect.log("Hello Structured Console").pipe(
1110
- * Effect.provide(Logger.layer([Logger.consoleStructured]))
1111
- * )
1112
- *
1113
- * // Perfect for development debugging
1114
- * const debugProgram = Effect.gen(function*() {
1115
- * yield* Effect.log("User event", {
1116
- * userId: 123,
1117
- * action: "login",
1118
- * ip: "192.168.1.1"
1119
- * })
1120
- * yield* Effect.logInfo("API call", {
1121
- * endpoint: "/users",
1122
- * method: "GET",
1123
- * duration: 120
1124
- * })
1125
- * }).pipe(
1126
- * Effect.annotateLogs("requestId", "req-123"),
1127
- * Effect.withLogSpan("authentication"),
1128
- * Effect.provide(Logger.layer([Logger.consoleStructured]))
1129
- * )
955
+ * ```ts import.meta.vitest
956
+ * import { Logger } from "effect"
1130
957
  *
1131
- * // Easy to parse and inspect object structure
1132
- * const inspectionProgram = Effect.gen(function*() {
1133
- * yield* Effect.log("Complex data", {
1134
- * user: { id: 1, name: "John" },
1135
- * metadata: { source: "api", version: 2 }
1136
- * })
1137
- * }).pipe(
1138
- * Effect.provide(Logger.layer([Logger.consoleStructured]))
1139
- * )
958
+ * Logger.isLogger(Logger.consoleStructured) // => true
1140
959
  * ```
1141
960
  *
1142
961
  * @category constructors
@@ -1156,46 +975,10 @@ export const consoleStructured: Logger<unknown, void> = withConsoleLog(formatStr
1156
975
  *
1157
976
  * **Example** (Logging JSON output to the console)
1158
977
  *
1159
- * ```ts
1160
- * import { Effect, Logger } from "effect"
1161
- *
1162
- * // Use the console JSON logger
1163
- * const jsonProgram = Effect.log("Hello JSON Console").pipe(
1164
- * Effect.provide(Logger.layer([Logger.consoleJson]))
1165
- * )
1166
- *
1167
- * // Perfect for production logging and log aggregation
1168
- * const productionProgram = Effect.gen(function*() {
1169
- * yield* Effect.log("Server started", { port: 3000, env: "production" })
1170
- * yield* Effect.logInfo("Request", {
1171
- * method: "POST",
1172
- * url: "/api/users",
1173
- * body: { name: "Alice" }
1174
- * })
1175
- * yield* Effect.logError("Database error", {
1176
- * error: "Connection timeout",
1177
- * retryCount: 3
1178
- * })
1179
- * }).pipe(
1180
- * Effect.annotateLogs("service", "user-api"),
1181
- * Effect.annotateLogs("version", "1.2.3"),
1182
- * Effect.withLogSpan("request-processing"),
1183
- * Effect.provide(Logger.layer([Logger.consoleJson]))
1184
- * )
978
+ * ```ts import.meta.vitest
979
+ * import { Logger } from "effect"
1185
980
  *
1186
- * // Easy to pipe to log aggregation services
1187
- * const productionSetup = Logger.layer([
1188
- * Logger.consoleJson, // For stdout JSON logs
1189
- * Logger.consolePretty() // For local debugging
1190
- * ])
1191
- *
1192
- * // Ideal for containerized environments (Docker, Kubernetes)
1193
- * const containerProgram = Effect.log("Container ready", {
1194
- * containerId: "abc123",
1195
- * image: "myapp:latest"
1196
- * }).pipe(
1197
- * Effect.provide(Logger.layer([Logger.consoleJson]))
1198
- * )
981
+ * Logger.isLogger(Logger.consoleJson) // => true
1199
982
  * ```
1200
983
  *
1201
984
  * @category constructors
@@ -1218,40 +1001,14 @@ export const consoleJson: Logger<unknown, void> = withConsoleLog(formatJson)
1218
1001
  *
1219
1002
  * **Example** (Recording logs as trace span events)
1220
1003
  *
1221
- * ```ts
1004
+ * ```ts import.meta.vitest
1222
1005
  * import { Effect, Logger } from "effect"
1223
1006
  *
1224
- * // Tracer logger is included by default - logs automatically become span events
1225
- * const defaultProgram = Effect.gen(function*() {
1226
- * yield* Effect.log("This automatically becomes a span event")
1227
- * yield* Effect.logInfo("Processing data")
1228
- * })
1229
- *
1230
- * // Explicitly combine tracer logger with other loggers
1231
- * const observabilityProgram = Effect.gen(function*() {
1232
- * yield* Effect.log("Operation started")
1233
- * yield* Effect.logInfo("Processing data")
1234
- * yield* Effect.logError("Error occurred")
1235
- * }).pipe(
1236
- * Effect.withLogSpan("data-processing"),
1237
- * Effect.provide(Logger.layer([
1238
- * Logger.tracerLogger,
1239
- * Logger.consoleJson
1240
- * ]))
1241
- * )
1242
- *
1243
- * // Perfect for correlating logs with traces in distributed systems
1244
- * const distributedProgram = Effect.gen(function*() {
1245
- * yield* Effect.log("Step 1: Fetching user data")
1246
- * yield* Effect.sleep("100 millis")
1247
- * yield* Effect.log("Step 2: Processing payment")
1248
- * yield* Effect.sleep("200 millis")
1249
- * yield* Effect.log("Step 3: Sending confirmation")
1250
- * }).pipe(
1251
- * Effect.withLogSpan("payment-workflow"),
1252
- * Effect.annotateLogs("userId", "user-123"),
1007
+ * const program = Effect.log("span event").pipe(
1008
+ * Effect.withSpan("operation"),
1253
1009
  * Effect.provide(Logger.layer([Logger.tracerLogger]))
1254
1010
  * )
1011
+ * Effect.runSync(program)
1255
1012
  * ```
1256
1013
  *
1257
1014
  * @category constructors
@@ -1270,37 +1027,23 @@ export const tracerLogger: Logger<unknown, void> = effect.tracerLogger
1270
1027
  *
1271
1028
  * **Example** (Providing logger layers)
1272
1029
  *
1273
- * ```ts
1030
+ * ```ts import.meta.vitest
1274
1031
  * import { Effect, Logger } from "effect"
1275
1032
  *
1276
- * // Single logger layer
1277
- * const JsonLoggerLive = Logger.layer([Logger.consoleJson])
1278
- *
1279
- * // Multiple loggers layer
1280
- * const MultiLoggerLive = Logger.layer([
1281
- * Logger.consoleJson,
1282
- * Logger.consolePretty(),
1283
- * Logger.formatStructured
1284
- * ])
1285
- *
1286
- * // Merge with existing loggers
1287
- * const AdditionalLoggerLive = Logger.layer(
1288
- * [Logger.consoleJson],
1289
- * { mergeWithExisting: true }
1290
- * )
1291
- *
1292
- * // Using multiple logger formats
1293
- * const jsonLogger = Logger.consoleJson
1294
- * const prettyLogger = Logger.consolePretty()
1295
- *
1296
- * const CustomLoggerLive = Logger.layer([jsonLogger, prettyLogger])
1033
+ * const messages: Array<unknown> = []
1034
+ * const customLogger = Logger.make((options) => {
1035
+ * messages.push(options.message)
1036
+ * })
1037
+ * const CustomLoggerLive = Logger.layer([customLogger])
1297
1038
  *
1298
1039
  * const program = Effect.log("Application started").pipe(
1299
1040
  * Effect.provide(CustomLoggerLive)
1300
1041
  * )
1042
+ * Effect.runSync(program)
1043
+ * messages // => [["Application started"]]
1301
1044
  * ```
1302
1045
  *
1303
- * @category context
1046
+ * @category layers
1304
1047
  * @since 4.0.0
1305
1048
  */
1306
1049
  export const layer = <
@@ -1338,91 +1081,59 @@ export const layer = <
1338
1081
  *
1339
1082
  * **Example** (Writing JSON logs to a file)
1340
1083
  *
1341
- * ```ts
1342
- * import { Effect, Layer, Logger } from "effect"
1343
- * import { NodeFileSystem, NodeRuntime } from "@effect/platform-node"
1344
- *
1345
- * const fileLogger = Logger.formatJson.pipe(
1346
- * Logger.toFile("/tmp/log.txt")
1347
- * )
1348
- * const LoggerLive = Logger.layer([fileLogger]).pipe(
1349
- * Layer.provide(NodeFileSystem.layer)
1350
- * )
1084
+ * ```ts import.meta.vitest
1085
+ * import { Effect, FileSystem, Logger } from "effect"
1351
1086
  *
1352
- * Effect.log("a").pipe(
1353
- * Effect.andThen(Effect.log("b")),
1354
- * Effect.andThen(Effect.log("c")),
1355
- * Effect.provide(LoggerLive),
1356
- * NodeRuntime.runMain
1357
- * )
1087
+ * const writes: Array<string> = []
1088
+ * const file = {
1089
+ * write: (buffer: Uint8Array) => Effect.sync(() => {
1090
+ * writes.push(new TextDecoder().decode(buffer).trim())
1091
+ * return FileSystem.Size(buffer.length)
1092
+ * })
1093
+ * } as unknown as FileSystem.File
1094
+ * const fileSystem = FileSystem.makeNoop({ open: () => Effect.succeed(file) })
1095
+ * const messageLogger = Logger.make((options) => String(options.message))
1096
+ *
1097
+ * const program = Effect.scoped(Effect.gen(function*() {
1098
+ * const fileLogger = yield* Logger.toFile(messageLogger, "/tmp/log.txt")
1099
+ * yield* Effect.log("a").pipe(Effect.provide(Logger.layer([fileLogger])))
1100
+ * yield* Effect.log("b").pipe(Effect.provide(Logger.layer([fileLogger])))
1101
+ * yield* Effect.log("c").pipe(Effect.provide(Logger.layer([fileLogger])))
1102
+ * })).pipe(Effect.provideService(FileSystem.FileSystem, fileSystem))
1103
+ *
1104
+ * await Effect.runPromise(program)
1105
+ * writes // => ["a\nb\nc"]
1358
1106
  * ```
1359
1107
  *
1360
1108
  * **Example** (Writing logs to files)
1361
1109
  *
1362
- * ```ts
1363
- * import { Duration, Effect, Logger } from "effect"
1364
- * import { NodeFileSystem } from "@effect/platform-node"
1365
- *
1366
- * // Basic file logging. The scope keeps the file open while logs are emitted
1367
- * // and flushes pending entries when it closes.
1368
- * const basicFileLogger = Effect.scoped(
1369
- * Effect.gen(function*() {
1370
- * const fileLogger = yield* Logger.formatJson.pipe(
1371
- * Logger.toFile("/tmp/app.log")
1372
- * )
1373
- *
1374
- * yield* Effect.log("Application started").pipe(
1375
- * Effect.provide(Logger.layer([fileLogger]))
1376
- * )
1377
- * })
1378
- * ).pipe(
1379
- * Effect.provide(NodeFileSystem.layer)
1380
- * )
1110
+ * ```ts import.meta.vitest
1111
+ * import { Effect, FileSystem, Logger } from "effect"
1381
1112
  *
1382
- * // File logger with custom batch window
1383
- * const batchedFileLogger = Effect.scoped(
1384
- * Effect.gen(function*() {
1385
- * const fileLogger = yield* Logger.formatLogFmt.pipe(
1386
- * Logger.toFile("/var/log/myapp.log", {
1387
- * flag: "a",
1388
- * batchWindow: Duration.seconds(5)
1389
- * })
1390
- * )
1391
- *
1392
- * yield* Effect.all([
1393
- * Effect.log("Event 1"),
1394
- * Effect.log("Event 2"),
1395
- * Effect.log("Event 3")
1396
- * ]).pipe(
1397
- * Effect.provide(Logger.layer([fileLogger]))
1398
- * )
1113
+ * const writes: Array<string> = []
1114
+ * const file = {
1115
+ * write: (buffer: Uint8Array) => Effect.sync(() => {
1116
+ * writes.push(new TextDecoder().decode(buffer).trim())
1117
+ * return FileSystem.Size(buffer.length)
1399
1118
  * })
1400
- * ).pipe(
1401
- * Effect.provide(NodeFileSystem.layer)
1402
- * )
1119
+ * } as unknown as FileSystem.File
1120
+ * const fileSystem = FileSystem.makeNoop({ open: () => Effect.succeed(file) })
1121
+ * const messageLogger = Logger.make((options) => String(options.message))
1403
1122
  *
1404
- * // Multiple loggers: console + file
1405
- * const multiLogger = Effect.scoped(
1406
- * Effect.gen(function*() {
1407
- * const fileLogger = yield* Logger.formatJson.pipe(
1408
- * Logger.toFile("/tmp/production.log")
1409
- * )
1410
- *
1411
- * const loggerLive = Logger.layer([
1412
- * Logger.consolePretty(),
1413
- * fileLogger
1414
- * ])
1415
- *
1416
- * yield* Effect.log("Production event").pipe(
1417
- * Effect.provide(loggerLive)
1418
- * )
1123
+ * const program = Effect.scoped(Effect.gen(function*() {
1124
+ * const fileLogger = yield* Logger.toFile(messageLogger, "/tmp/app.log", {
1125
+ * batchWindow: "1 hour"
1419
1126
  * })
1420
- * ).pipe(
1421
- * Effect.provide(NodeFileSystem.layer)
1422
- * )
1127
+ * yield* Effect.log("Application started").pipe(
1128
+ * Effect.provide(Logger.layer([fileLogger]))
1129
+ * )
1130
+ * })).pipe(Effect.provideService(FileSystem.FileSystem, fileSystem))
1131
+ *
1132
+ * await Effect.runPromise(program)
1133
+ * writes // => ["Application started"]
1423
1134
  * ```
1424
1135
  *
1425
- * @category file
1136
+ * @category logging
1426
1137
  * @since 4.0.0
1427
1138
  */
1428
1139
  export const toFile = dual<
@@ -1437,91 +1148,59 @@ export const toFile = dual<
1437
1148
  *
1438
1149
  * **Example** (Writing JSON logs to a file)
1439
1150
  *
1440
- * ```ts
1441
- * import { Effect, Layer, Logger } from "effect"
1442
- * import { NodeFileSystem, NodeRuntime } from "@effect/platform-node"
1443
- *
1444
- * const fileLogger = Logger.formatJson.pipe(
1445
- * Logger.toFile("/tmp/log.txt")
1446
- * )
1447
- * const LoggerLive = Logger.layer([fileLogger]).pipe(
1448
- * Layer.provide(NodeFileSystem.layer)
1449
- * )
1151
+ * ```ts import.meta.vitest
1152
+ * import { Effect, FileSystem, Logger } from "effect"
1450
1153
  *
1451
- * Effect.log("a").pipe(
1452
- * Effect.andThen(Effect.log("b")),
1453
- * Effect.andThen(Effect.log("c")),
1454
- * Effect.provide(LoggerLive),
1455
- * NodeRuntime.runMain
1456
- * )
1154
+ * const writes: Array<string> = []
1155
+ * const file = {
1156
+ * write: (buffer: Uint8Array) => Effect.sync(() => {
1157
+ * writes.push(new TextDecoder().decode(buffer).trim())
1158
+ * return FileSystem.Size(buffer.length)
1159
+ * })
1160
+ * } as unknown as FileSystem.File
1161
+ * const fileSystem = FileSystem.makeNoop({ open: () => Effect.succeed(file) })
1162
+ * const messageLogger = Logger.make((options) => String(options.message))
1163
+ *
1164
+ * const program = Effect.scoped(Effect.gen(function*() {
1165
+ * const fileLogger = yield* Logger.toFile(messageLogger, "/tmp/log.txt")
1166
+ * yield* Effect.log("a").pipe(Effect.provide(Logger.layer([fileLogger])))
1167
+ * yield* Effect.log("b").pipe(Effect.provide(Logger.layer([fileLogger])))
1168
+ * yield* Effect.log("c").pipe(Effect.provide(Logger.layer([fileLogger])))
1169
+ * })).pipe(Effect.provideService(FileSystem.FileSystem, fileSystem))
1170
+ *
1171
+ * await Effect.runPromise(program)
1172
+ * writes // => ["a\nb\nc"]
1457
1173
  * ```
1458
1174
  *
1459
1175
  * **Example** (Writing logs to files)
1460
1176
  *
1461
- * ```ts
1462
- * import { Duration, Effect, Logger } from "effect"
1463
- * import { NodeFileSystem } from "@effect/platform-node"
1177
+ * ```ts import.meta.vitest
1178
+ * import { Effect, FileSystem, Logger } from "effect"
1464
1179
  *
1465
- * // Basic file logging. The scope keeps the file open while logs are emitted
1466
- * // and flushes pending entries when it closes.
1467
- * const basicFileLogger = Effect.scoped(
1468
- * Effect.gen(function*() {
1469
- * const fileLogger = yield* Logger.formatJson.pipe(
1470
- * Logger.toFile("/tmp/app.log")
1471
- * )
1472
- *
1473
- * yield* Effect.log("Application started").pipe(
1474
- * Effect.provide(Logger.layer([fileLogger]))
1475
- * )
1180
+ * const writes: Array<string> = []
1181
+ * const file = {
1182
+ * write: (buffer: Uint8Array) => Effect.sync(() => {
1183
+ * writes.push(new TextDecoder().decode(buffer).trim())
1184
+ * return FileSystem.Size(buffer.length)
1476
1185
  * })
1477
- * ).pipe(
1478
- * Effect.provide(NodeFileSystem.layer)
1479
- * )
1480
- *
1481
- * // File logger with custom batch window
1482
- * const batchedFileLogger = Effect.scoped(
1483
- * Effect.gen(function*() {
1484
- * const fileLogger = yield* Logger.formatLogFmt.pipe(
1485
- * Logger.toFile("/var/log/myapp.log", {
1486
- * flag: "a",
1487
- * batchWindow: Duration.seconds(5)
1488
- * })
1489
- * )
1186
+ * } as unknown as FileSystem.File
1187
+ * const fileSystem = FileSystem.makeNoop({ open: () => Effect.succeed(file) })
1188
+ * const messageLogger = Logger.make((options) => String(options.message))
1490
1189
  *
1491
- * yield* Effect.all([
1492
- * Effect.log("Event 1"),
1493
- * Effect.log("Event 2"),
1494
- * Effect.log("Event 3")
1495
- * ]).pipe(
1496
- * Effect.provide(Logger.layer([fileLogger]))
1497
- * )
1190
+ * const program = Effect.scoped(Effect.gen(function*() {
1191
+ * const fileLogger = yield* Logger.toFile(messageLogger, "/tmp/app.log", {
1192
+ * batchWindow: "1 hour"
1498
1193
  * })
1499
- * ).pipe(
1500
- * Effect.provide(NodeFileSystem.layer)
1501
- * )
1502
- *
1503
- * // Multiple loggers: console + file
1504
- * const multiLogger = Effect.scoped(
1505
- * Effect.gen(function*() {
1506
- * const fileLogger = yield* Logger.formatJson.pipe(
1507
- * Logger.toFile("/tmp/production.log")
1508
- * )
1509
- *
1510
- * const loggerLive = Logger.layer([
1511
- * Logger.consolePretty(),
1512
- * fileLogger
1513
- * ])
1194
+ * yield* Effect.log("Application started").pipe(
1195
+ * Effect.provide(Logger.layer([fileLogger]))
1196
+ * )
1197
+ * })).pipe(Effect.provideService(FileSystem.FileSystem, fileSystem))
1514
1198
  *
1515
- * yield* Effect.log("Production event").pipe(
1516
- * Effect.provide(loggerLive)
1517
- * )
1518
- * })
1519
- * ).pipe(
1520
- * Effect.provide(NodeFileSystem.layer)
1521
- * )
1199
+ * await Effect.runPromise(program)
1200
+ * writes // => ["Application started"]
1522
1201
  * ```
1523
1202
  *
1524
- * @category file
1203
+ * @category logging
1525
1204
  * @since 4.0.0
1526
1205
  */
1527
1206
  (
@@ -1545,91 +1224,59 @@ export const toFile = dual<
1545
1224
  *
1546
1225
  * **Example** (Writing JSON logs to a file)
1547
1226
  *
1548
- * ```ts
1549
- * import { Effect, Layer, Logger } from "effect"
1550
- * import { NodeFileSystem, NodeRuntime } from "@effect/platform-node"
1551
- *
1552
- * const fileLogger = Logger.formatJson.pipe(
1553
- * Logger.toFile("/tmp/log.txt")
1554
- * )
1555
- * const LoggerLive = Logger.layer([fileLogger]).pipe(
1556
- * Layer.provide(NodeFileSystem.layer)
1557
- * )
1227
+ * ```ts import.meta.vitest
1228
+ * import { Effect, FileSystem, Logger } from "effect"
1558
1229
  *
1559
- * Effect.log("a").pipe(
1560
- * Effect.andThen(Effect.log("b")),
1561
- * Effect.andThen(Effect.log("c")),
1562
- * Effect.provide(LoggerLive),
1563
- * NodeRuntime.runMain
1564
- * )
1230
+ * const writes: Array<string> = []
1231
+ * const file = {
1232
+ * write: (buffer: Uint8Array) => Effect.sync(() => {
1233
+ * writes.push(new TextDecoder().decode(buffer).trim())
1234
+ * return FileSystem.Size(buffer.length)
1235
+ * })
1236
+ * } as unknown as FileSystem.File
1237
+ * const fileSystem = FileSystem.makeNoop({ open: () => Effect.succeed(file) })
1238
+ * const messageLogger = Logger.make((options) => String(options.message))
1239
+ *
1240
+ * const program = Effect.scoped(Effect.gen(function*() {
1241
+ * const fileLogger = yield* Logger.toFile(messageLogger, "/tmp/log.txt")
1242
+ * yield* Effect.log("a").pipe(Effect.provide(Logger.layer([fileLogger])))
1243
+ * yield* Effect.log("b").pipe(Effect.provide(Logger.layer([fileLogger])))
1244
+ * yield* Effect.log("c").pipe(Effect.provide(Logger.layer([fileLogger])))
1245
+ * })).pipe(Effect.provideService(FileSystem.FileSystem, fileSystem))
1246
+ *
1247
+ * await Effect.runPromise(program)
1248
+ * writes // => ["a\nb\nc"]
1565
1249
  * ```
1566
1250
  *
1567
1251
  * **Example** (Writing logs to files)
1568
1252
  *
1569
- * ```ts
1570
- * import { Duration, Effect, Logger } from "effect"
1571
- * import { NodeFileSystem } from "@effect/platform-node"
1572
- *
1573
- * // Basic file logging. The scope keeps the file open while logs are emitted
1574
- * // and flushes pending entries when it closes.
1575
- * const basicFileLogger = Effect.scoped(
1576
- * Effect.gen(function*() {
1577
- * const fileLogger = yield* Logger.formatJson.pipe(
1578
- * Logger.toFile("/tmp/app.log")
1579
- * )
1253
+ * ```ts import.meta.vitest
1254
+ * import { Effect, FileSystem, Logger } from "effect"
1580
1255
  *
1581
- * yield* Effect.log("Application started").pipe(
1582
- * Effect.provide(Logger.layer([fileLogger]))
1583
- * )
1256
+ * const writes: Array<string> = []
1257
+ * const file = {
1258
+ * write: (buffer: Uint8Array) => Effect.sync(() => {
1259
+ * writes.push(new TextDecoder().decode(buffer).trim())
1260
+ * return FileSystem.Size(buffer.length)
1584
1261
  * })
1585
- * ).pipe(
1586
- * Effect.provide(NodeFileSystem.layer)
1587
- * )
1588
- *
1589
- * // File logger with custom batch window
1590
- * const batchedFileLogger = Effect.scoped(
1591
- * Effect.gen(function*() {
1592
- * const fileLogger = yield* Logger.formatLogFmt.pipe(
1593
- * Logger.toFile("/var/log/myapp.log", {
1594
- * flag: "a",
1595
- * batchWindow: Duration.seconds(5)
1596
- * })
1597
- * )
1262
+ * } as unknown as FileSystem.File
1263
+ * const fileSystem = FileSystem.makeNoop({ open: () => Effect.succeed(file) })
1264
+ * const messageLogger = Logger.make((options) => String(options.message))
1598
1265
  *
1599
- * yield* Effect.all([
1600
- * Effect.log("Event 1"),
1601
- * Effect.log("Event 2"),
1602
- * Effect.log("Event 3")
1603
- * ]).pipe(
1604
- * Effect.provide(Logger.layer([fileLogger]))
1605
- * )
1266
+ * const program = Effect.scoped(Effect.gen(function*() {
1267
+ * const fileLogger = yield* Logger.toFile(messageLogger, "/tmp/app.log", {
1268
+ * batchWindow: "1 hour"
1606
1269
  * })
1607
- * ).pipe(
1608
- * Effect.provide(NodeFileSystem.layer)
1609
- * )
1610
- *
1611
- * // Multiple loggers: console + file
1612
- * const multiLogger = Effect.scoped(
1613
- * Effect.gen(function*() {
1614
- * const fileLogger = yield* Logger.formatJson.pipe(
1615
- * Logger.toFile("/tmp/production.log")
1616
- * )
1617
- *
1618
- * const loggerLive = Logger.layer([
1619
- * Logger.consolePretty(),
1620
- * fileLogger
1621
- * ])
1270
+ * yield* Effect.log("Application started").pipe(
1271
+ * Effect.provide(Logger.layer([fileLogger]))
1272
+ * )
1273
+ * })).pipe(Effect.provideService(FileSystem.FileSystem, fileSystem))
1622
1274
  *
1623
- * yield* Effect.log("Production event").pipe(
1624
- * Effect.provide(loggerLive)
1625
- * )
1626
- * })
1627
- * ).pipe(
1628
- * Effect.provide(NodeFileSystem.layer)
1629
- * )
1275
+ * await Effect.runPromise(program)
1276
+ * writes // => ["Application started"]
1630
1277
  * ```
1631
1278
  *
1632
- * @category file
1279
+ * @category logging
1633
1280
  * @since 4.0.0
1634
1281
  */
1635
1282
  <Message>(