effect 4.0.0-beta.65 → 4.0.0-beta.67

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 (1657) hide show
  1. package/dist/Array.d.ts +113 -67
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +28 -18
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +404 -337
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +190 -146
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +167 -97
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +87 -47
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Boolean.d.ts +62 -31
  14. package/dist/Boolean.d.ts.map +1 -1
  15. package/dist/Boolean.js +30 -15
  16. package/dist/Boolean.js.map +1 -1
  17. package/dist/Brand.d.ts +20 -1
  18. package/dist/Brand.d.ts.map +1 -1
  19. package/dist/Brand.js +16 -0
  20. package/dist/Brand.js.map +1 -1
  21. package/dist/Cache.d.ts +236 -132
  22. package/dist/Cache.d.ts.map +1 -1
  23. package/dist/Cache.js +133 -57
  24. package/dist/Cache.js.map +1 -1
  25. package/dist/Cause.d.ts +77 -65
  26. package/dist/Cause.d.ts.map +1 -1
  27. package/dist/Cause.js +43 -36
  28. package/dist/Cause.js.map +1 -1
  29. package/dist/Channel.d.ts +1518 -575
  30. package/dist/Channel.d.ts.map +1 -1
  31. package/dist/Channel.js +661 -287
  32. package/dist/Channel.js.map +1 -1
  33. package/dist/ChannelSchema.d.ts +119 -10
  34. package/dist/ChannelSchema.d.ts.map +1 -1
  35. package/dist/ChannelSchema.js +45 -6
  36. package/dist/ChannelSchema.js.map +1 -1
  37. package/dist/Chunk.d.ts +548 -379
  38. package/dist/Chunk.d.ts.map +1 -1
  39. package/dist/Chunk.js +238 -170
  40. package/dist/Chunk.js.map +1 -1
  41. package/dist/Clock.d.ts +15 -8
  42. package/dist/Clock.d.ts.map +1 -1
  43. package/dist/Clock.js +8 -4
  44. package/dist/Clock.js.map +1 -1
  45. package/dist/Combiner.d.ts +2 -4
  46. package/dist/Combiner.d.ts.map +1 -1
  47. package/dist/Combiner.js +2 -4
  48. package/dist/Combiner.js.map +1 -1
  49. package/dist/Config.d.ts +5 -4
  50. package/dist/Config.d.ts.map +1 -1
  51. package/dist/Config.js +9 -8
  52. package/dist/Config.js.map +1 -1
  53. package/dist/ConfigProvider.d.ts +1 -1
  54. package/dist/ConfigProvider.js +1 -1
  55. package/dist/Console.d.ts +76 -50
  56. package/dist/Console.d.ts.map +1 -1
  57. package/dist/Console.js +69 -46
  58. package/dist/Console.js.map +1 -1
  59. package/dist/Context.d.ts +386 -138
  60. package/dist/Context.d.ts.map +1 -1
  61. package/dist/Context.js +144 -62
  62. package/dist/Context.js.map +1 -1
  63. package/dist/Cron.d.ts +69 -48
  64. package/dist/Cron.d.ts.map +1 -1
  65. package/dist/Cron.js +96 -36
  66. package/dist/Cron.js.map +1 -1
  67. package/dist/Data.d.ts +3 -2
  68. package/dist/Data.d.ts.map +1 -1
  69. package/dist/Data.js.map +1 -1
  70. package/dist/DateTime.d.ts +875 -444
  71. package/dist/DateTime.d.ts.map +1 -1
  72. package/dist/DateTime.js +376 -217
  73. package/dist/DateTime.js.map +1 -1
  74. package/dist/Deferred.d.ts +367 -174
  75. package/dist/Deferred.d.ts.map +1 -1
  76. package/dist/Deferred.js +145 -71
  77. package/dist/Deferred.js.map +1 -1
  78. package/dist/Differ.d.ts +42 -0
  79. package/dist/Differ.d.ts.map +1 -1
  80. package/dist/Differ.js +36 -0
  81. package/dist/Duration.d.ts +329 -185
  82. package/dist/Duration.d.ts.map +1 -1
  83. package/dist/Duration.js +174 -106
  84. package/dist/Duration.js.map +1 -1
  85. package/dist/Effect.d.ts +2445 -2356
  86. package/dist/Effect.d.ts.map +1 -1
  87. package/dist/Effect.js +906 -758
  88. package/dist/Effect.js.map +1 -1
  89. package/dist/Effectable.d.ts +38 -3
  90. package/dist/Effectable.d.ts.map +1 -1
  91. package/dist/Effectable.js +3 -3
  92. package/dist/Effectable.js.map +1 -1
  93. package/dist/Encoding.d.ts +78 -28
  94. package/dist/Encoding.d.ts.map +1 -1
  95. package/dist/Encoding.js +75 -27
  96. package/dist/Encoding.js.map +1 -1
  97. package/dist/Equivalence.d.ts +14 -19
  98. package/dist/Equivalence.d.ts.map +1 -1
  99. package/dist/Equivalence.js +14 -19
  100. package/dist/Equivalence.js.map +1 -1
  101. package/dist/ErrorReporter.d.ts +66 -82
  102. package/dist/ErrorReporter.d.ts.map +1 -1
  103. package/dist/ErrorReporter.js +38 -29
  104. package/dist/ErrorReporter.js.map +1 -1
  105. package/dist/ExecutionPlan.d.ts +96 -12
  106. package/dist/ExecutionPlan.d.ts.map +1 -1
  107. package/dist/ExecutionPlan.js +21 -6
  108. package/dist/ExecutionPlan.js.map +1 -1
  109. package/dist/Exit.d.ts +7 -5
  110. package/dist/Exit.d.ts.map +1 -1
  111. package/dist/Exit.js.map +1 -1
  112. package/dist/Fiber.d.ts +72 -40
  113. package/dist/Fiber.d.ts.map +1 -1
  114. package/dist/Fiber.js +39 -21
  115. package/dist/Fiber.js.map +1 -1
  116. package/dist/FiberHandle.d.ts +119 -58
  117. package/dist/FiberHandle.d.ts.map +1 -1
  118. package/dist/FiberHandle.js +122 -40
  119. package/dist/FiberHandle.js.map +1 -1
  120. package/dist/FiberMap.d.ts +288 -160
  121. package/dist/FiberMap.d.ts.map +1 -1
  122. package/dist/FiberMap.js +176 -74
  123. package/dist/FiberMap.js.map +1 -1
  124. package/dist/FiberSet.d.ts +93 -52
  125. package/dist/FiberSet.d.ts.map +1 -1
  126. package/dist/FiberSet.js +97 -34
  127. package/dist/FiberSet.js.map +1 -1
  128. package/dist/FileSystem.d.ts +104 -73
  129. package/dist/FileSystem.d.ts.map +1 -1
  130. package/dist/FileSystem.js +53 -39
  131. package/dist/FileSystem.js.map +1 -1
  132. package/dist/Filter.d.ts +166 -88
  133. package/dist/Filter.d.ts.map +1 -1
  134. package/dist/Filter.js +68 -42
  135. package/dist/Filter.js.map +1 -1
  136. package/dist/Function.d.ts +154 -86
  137. package/dist/Function.d.ts.map +1 -1
  138. package/dist/Function.js +53 -37
  139. package/dist/Function.js.map +1 -1
  140. package/dist/Graph.d.ts +682 -365
  141. package/dist/Graph.d.ts.map +1 -1
  142. package/dist/Graph.js +308 -157
  143. package/dist/Graph.js.map +1 -1
  144. package/dist/HKT.d.ts +29 -13
  145. package/dist/HKT.d.ts.map +1 -1
  146. package/dist/Hash.d.ts +31 -18
  147. package/dist/Hash.d.ts.map +1 -1
  148. package/dist/Hash.js +25 -15
  149. package/dist/Hash.js.map +1 -1
  150. package/dist/HashMap.d.ts +444 -256
  151. package/dist/HashMap.d.ts.map +1 -1
  152. package/dist/HashMap.js +223 -105
  153. package/dist/HashMap.js.map +1 -1
  154. package/dist/HashRing.d.ts +36 -17
  155. package/dist/HashRing.d.ts.map +1 -1
  156. package/dist/HashRing.js +75 -8
  157. package/dist/HashRing.js.map +1 -1
  158. package/dist/HashSet.d.ts +194 -104
  159. package/dist/HashSet.d.ts.map +1 -1
  160. package/dist/HashSet.js +93 -38
  161. package/dist/HashSet.js.map +1 -1
  162. package/dist/Inspectable.d.ts +20 -9
  163. package/dist/Inspectable.d.ts.map +1 -1
  164. package/dist/Inspectable.js +16 -6
  165. package/dist/Inspectable.js.map +1 -1
  166. package/dist/Iterable.d.ts +309 -149
  167. package/dist/Iterable.d.ts.map +1 -1
  168. package/dist/Iterable.js +129 -65
  169. package/dist/Iterable.js.map +1 -1
  170. package/dist/JsonPatch.d.ts +4 -3
  171. package/dist/JsonPatch.d.ts.map +1 -1
  172. package/dist/JsonPatch.js +4 -3
  173. package/dist/JsonPatch.js.map +1 -1
  174. package/dist/Latch.d.ts +98 -15
  175. package/dist/Latch.d.ts.map +1 -1
  176. package/dist/Latch.js +41 -10
  177. package/dist/Latch.js.map +1 -1
  178. package/dist/Layer.d.ts +412 -309
  179. package/dist/Layer.d.ts.map +1 -1
  180. package/dist/Layer.js +262 -181
  181. package/dist/Layer.js.map +1 -1
  182. package/dist/LayerMap.d.ts +95 -21
  183. package/dist/LayerMap.d.ts.map +1 -1
  184. package/dist/LayerMap.js +58 -14
  185. package/dist/LayerMap.js.map +1 -1
  186. package/dist/LogLevel.d.ts +92 -131
  187. package/dist/LogLevel.d.ts.map +1 -1
  188. package/dist/LogLevel.js +25 -15
  189. package/dist/LogLevel.js.map +1 -1
  190. package/dist/Logger.d.ts +155 -99
  191. package/dist/Logger.d.ts.map +1 -1
  192. package/dist/Logger.js +211 -184
  193. package/dist/Logger.js.map +1 -1
  194. package/dist/ManagedRuntime.d.ts +75 -17
  195. package/dist/ManagedRuntime.d.ts.map +1 -1
  196. package/dist/ManagedRuntime.js +22 -16
  197. package/dist/ManagedRuntime.js.map +1 -1
  198. package/dist/Match.d.ts +133 -157
  199. package/dist/Match.d.ts.map +1 -1
  200. package/dist/Match.js +85 -76
  201. package/dist/Match.js.map +1 -1
  202. package/dist/Metric.d.ts +325 -284
  203. package/dist/Metric.d.ts.map +1 -1
  204. package/dist/Metric.js +217 -212
  205. package/dist/Metric.js.map +1 -1
  206. package/dist/MutableHashMap.d.ts +117 -58
  207. package/dist/MutableHashMap.d.ts.map +1 -1
  208. package/dist/MutableHashMap.js +52 -29
  209. package/dist/MutableHashMap.js.map +1 -1
  210. package/dist/MutableHashSet.d.ts +52 -30
  211. package/dist/MutableHashSet.d.ts.map +1 -1
  212. package/dist/MutableHashSet.js +94 -38
  213. package/dist/MutableHashSet.js.map +1 -1
  214. package/dist/MutableList.d.ts +92 -49
  215. package/dist/MutableList.d.ts.map +1 -1
  216. package/dist/MutableList.js +123 -71
  217. package/dist/MutableList.js.map +1 -1
  218. package/dist/MutableRef.d.ts +99 -62
  219. package/dist/MutableRef.d.ts.map +1 -1
  220. package/dist/MutableRef.js +79 -60
  221. package/dist/MutableRef.js.map +1 -1
  222. package/dist/Newtype.d.ts +3 -0
  223. package/dist/Newtype.d.ts.map +1 -1
  224. package/dist/Newtype.js.map +1 -1
  225. package/dist/NonEmptyIterable.d.ts +36 -39
  226. package/dist/NonEmptyIterable.d.ts.map +1 -1
  227. package/dist/NonEmptyIterable.js +34 -20
  228. package/dist/NonEmptyIterable.js.map +1 -1
  229. package/dist/Number.d.ts +116 -64
  230. package/dist/Number.d.ts.map +1 -1
  231. package/dist/Number.js +54 -30
  232. package/dist/Number.js.map +1 -1
  233. package/dist/Optic.d.ts +1 -2
  234. package/dist/Optic.d.ts.map +1 -1
  235. package/dist/Optic.js +0 -1
  236. package/dist/Optic.js.map +1 -1
  237. package/dist/Option.d.ts +38 -53
  238. package/dist/Option.d.ts.map +1 -1
  239. package/dist/Option.js +87 -11
  240. package/dist/Option.js.map +1 -1
  241. package/dist/Ordering.d.ts +43 -28
  242. package/dist/Ordering.d.ts.map +1 -1
  243. package/dist/Ordering.js +4 -2
  244. package/dist/Ordering.js.map +1 -1
  245. package/dist/PartitionedSemaphore.d.ts +225 -40
  246. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  247. package/dist/PartitionedSemaphore.js +113 -17
  248. package/dist/PartitionedSemaphore.js.map +1 -1
  249. package/dist/Path.d.ts +77 -13
  250. package/dist/Path.d.ts.map +1 -1
  251. package/dist/Path.js +48 -4
  252. package/dist/Path.js.map +1 -1
  253. package/dist/Pipeable.d.ts +71 -15
  254. package/dist/Pipeable.d.ts.map +1 -1
  255. package/dist/Pipeable.js +59 -12
  256. package/dist/Pipeable.js.map +1 -1
  257. package/dist/PlatformError.d.ts +74 -6
  258. package/dist/PlatformError.d.ts.map +1 -1
  259. package/dist/PlatformError.js +68 -5
  260. package/dist/PlatformError.js.map +1 -1
  261. package/dist/Pool.d.ts +66 -31
  262. package/dist/Pool.d.ts.map +1 -1
  263. package/dist/Pool.js +26 -24
  264. package/dist/Pool.js.map +1 -1
  265. package/dist/Predicate.d.ts +16 -21
  266. package/dist/Predicate.d.ts.map +1 -1
  267. package/dist/Predicate.js +9 -14
  268. package/dist/Predicate.js.map +1 -1
  269. package/dist/PrimaryKey.d.ts +9 -2
  270. package/dist/PrimaryKey.d.ts.map +1 -1
  271. package/dist/PrimaryKey.js +7 -1
  272. package/dist/PrimaryKey.js.map +1 -1
  273. package/dist/PubSub.d.ts +364 -262
  274. package/dist/PubSub.d.ts.map +1 -1
  275. package/dist/PubSub.js +245 -174
  276. package/dist/PubSub.js.map +1 -1
  277. package/dist/Pull.d.ts +94 -25
  278. package/dist/Pull.d.ts.map +1 -1
  279. package/dist/Pull.js +61 -13
  280. package/dist/Pull.js.map +1 -1
  281. package/dist/Queue.d.ts +284 -150
  282. package/dist/Queue.d.ts.map +1 -1
  283. package/dist/Queue.js +216 -113
  284. package/dist/Queue.js.map +1 -1
  285. package/dist/Random.d.ts +54 -35
  286. package/dist/Random.d.ts.map +1 -1
  287. package/dist/Random.js +36 -24
  288. package/dist/Random.js.map +1 -1
  289. package/dist/RcMap.d.ts +151 -141
  290. package/dist/RcMap.d.ts.map +1 -1
  291. package/dist/RcMap.js +66 -20
  292. package/dist/RcMap.js.map +1 -1
  293. package/dist/RcRef.d.ts +69 -32
  294. package/dist/RcRef.d.ts.map +1 -1
  295. package/dist/RcRef.js +33 -16
  296. package/dist/RcRef.js.map +1 -1
  297. package/dist/Record.d.ts +273 -129
  298. package/dist/Record.d.ts.map +1 -1
  299. package/dist/Record.js +117 -57
  300. package/dist/Record.js.map +1 -1
  301. package/dist/Redactable.d.ts +3 -3
  302. package/dist/Redactable.js +2 -2
  303. package/dist/Redacted.d.ts +63 -33
  304. package/dist/Redacted.d.ts.map +1 -1
  305. package/dist/Redacted.js +30 -14
  306. package/dist/Redacted.js.map +1 -1
  307. package/dist/Ref.d.ts +81 -52
  308. package/dist/Ref.d.ts.map +1 -1
  309. package/dist/Ref.js +54 -35
  310. package/dist/Ref.js.map +1 -1
  311. package/dist/References.d.ts +73 -31
  312. package/dist/References.d.ts.map +1 -1
  313. package/dist/References.js +66 -30
  314. package/dist/References.js.map +1 -1
  315. package/dist/RegExp.d.ts +11 -5
  316. package/dist/RegExp.d.ts.map +1 -1
  317. package/dist/RegExp.js +11 -5
  318. package/dist/RegExp.js.map +1 -1
  319. package/dist/Request.d.ts +158 -34
  320. package/dist/Request.d.ts.map +1 -1
  321. package/dist/Request.js +67 -12
  322. package/dist/Request.js.map +1 -1
  323. package/dist/RequestResolver.d.ts +261 -116
  324. package/dist/RequestResolver.d.ts.map +1 -1
  325. package/dist/RequestResolver.js +77 -41
  326. package/dist/RequestResolver.js.map +1 -1
  327. package/dist/Resource.d.ts +13 -7
  328. package/dist/Resource.d.ts.map +1 -1
  329. package/dist/Resource.js +44 -6
  330. package/dist/Resource.js.map +1 -1
  331. package/dist/Result.d.ts +26 -16
  332. package/dist/Result.d.ts.map +1 -1
  333. package/dist/Result.js +6 -6
  334. package/dist/Result.js.map +1 -1
  335. package/dist/Runtime.d.ts +43 -18
  336. package/dist/Runtime.d.ts.map +1 -1
  337. package/dist/Runtime.js +35 -16
  338. package/dist/Runtime.js.map +1 -1
  339. package/dist/Schedule.d.ts +545 -576
  340. package/dist/Schedule.d.ts.map +1 -1
  341. package/dist/Schedule.js +261 -247
  342. package/dist/Schedule.js.map +1 -1
  343. package/dist/Scheduler.d.ts +43 -6
  344. package/dist/Scheduler.d.ts.map +1 -1
  345. package/dist/Scheduler.js +33 -4
  346. package/dist/Scheduler.js.map +1 -1
  347. package/dist/Schema.d.ts +815 -294
  348. package/dist/Schema.d.ts.map +1 -1
  349. package/dist/Schema.js +287 -193
  350. package/dist/Schema.js.map +1 -1
  351. package/dist/SchemaAST.d.ts +24 -15
  352. package/dist/SchemaAST.d.ts.map +1 -1
  353. package/dist/SchemaAST.js +13 -9
  354. package/dist/SchemaAST.js.map +1 -1
  355. package/dist/SchemaGetter.d.ts +26 -13
  356. package/dist/SchemaGetter.d.ts.map +1 -1
  357. package/dist/SchemaGetter.js +24 -11
  358. package/dist/SchemaGetter.js.map +1 -1
  359. package/dist/SchemaIssue.d.ts +1 -8
  360. package/dist/SchemaIssue.d.ts.map +1 -1
  361. package/dist/SchemaIssue.js.map +1 -1
  362. package/dist/SchemaParser.d.ts +194 -25
  363. package/dist/SchemaParser.d.ts.map +1 -1
  364. package/dist/SchemaParser.js +220 -26
  365. package/dist/SchemaParser.js.map +1 -1
  366. package/dist/SchemaRepresentation.d.ts +2 -2
  367. package/dist/SchemaTransformation.d.ts +61 -41
  368. package/dist/SchemaTransformation.d.ts.map +1 -1
  369. package/dist/SchemaTransformation.js +56 -33
  370. package/dist/SchemaTransformation.js.map +1 -1
  371. package/dist/SchemaUtils.d.ts +7 -0
  372. package/dist/SchemaUtils.d.ts.map +1 -1
  373. package/dist/SchemaUtils.js +23 -0
  374. package/dist/SchemaUtils.js.map +1 -1
  375. package/dist/Scope.d.ts +102 -43
  376. package/dist/Scope.d.ts.map +1 -1
  377. package/dist/Scope.js +57 -23
  378. package/dist/Scope.js.map +1 -1
  379. package/dist/ScopedCache.d.ts +138 -46
  380. package/dist/ScopedCache.d.ts.map +1 -1
  381. package/dist/ScopedCache.js +80 -19
  382. package/dist/ScopedCache.js.map +1 -1
  383. package/dist/ScopedRef.d.ts +28 -8
  384. package/dist/ScopedRef.d.ts.map +1 -1
  385. package/dist/ScopedRef.js +25 -5
  386. package/dist/ScopedRef.js.map +1 -1
  387. package/dist/Semaphore.d.ts +64 -28
  388. package/dist/Semaphore.d.ts.map +1 -1
  389. package/dist/Semaphore.js +22 -13
  390. package/dist/Semaphore.js.map +1 -1
  391. package/dist/Sink.d.ts +458 -200
  392. package/dist/Sink.d.ts.map +1 -1
  393. package/dist/Sink.js +240 -89
  394. package/dist/Sink.js.map +1 -1
  395. package/dist/Stdio.d.ts +43 -6
  396. package/dist/Stdio.d.ts.map +1 -1
  397. package/dist/Stdio.js +33 -4
  398. package/dist/Stdio.js.map +1 -1
  399. package/dist/Stream.d.ts +1899 -1186
  400. package/dist/Stream.d.ts.map +1 -1
  401. package/dist/Stream.js +868 -525
  402. package/dist/Stream.js.map +1 -1
  403. package/dist/String.d.ts +171 -95
  404. package/dist/String.d.ts.map +1 -1
  405. package/dist/String.js +125 -67
  406. package/dist/String.js.map +1 -1
  407. package/dist/SubscriptionRef.d.ts +308 -203
  408. package/dist/SubscriptionRef.d.ts.map +1 -1
  409. package/dist/SubscriptionRef.js +125 -76
  410. package/dist/SubscriptionRef.js.map +1 -1
  411. package/dist/Symbol.d.ts +13 -5
  412. package/dist/Symbol.d.ts.map +1 -1
  413. package/dist/Symbol.js +13 -5
  414. package/dist/Symbol.js.map +1 -1
  415. package/dist/SynchronizedRef.d.ts +278 -62
  416. package/dist/SynchronizedRef.d.ts.map +1 -1
  417. package/dist/SynchronizedRef.js +116 -23
  418. package/dist/SynchronizedRef.js.map +1 -1
  419. package/dist/Take.d.ts +26 -2
  420. package/dist/Take.d.ts.map +1 -1
  421. package/dist/Take.js +4 -1
  422. package/dist/Take.js.map +1 -1
  423. package/dist/Terminal.d.ts +39 -7
  424. package/dist/Terminal.d.ts.map +1 -1
  425. package/dist/Terminal.js +10 -4
  426. package/dist/Terminal.js.map +1 -1
  427. package/dist/Tracer.d.ts +229 -55
  428. package/dist/Tracer.d.ts.map +1 -1
  429. package/dist/Tracer.js +94 -18
  430. package/dist/Tracer.js.map +1 -1
  431. package/dist/Trie.d.ts +213 -142
  432. package/dist/Trie.d.ts.map +1 -1
  433. package/dist/Trie.js +88 -60
  434. package/dist/Trie.js.map +1 -1
  435. package/dist/TxChunk.d.ts +182 -146
  436. package/dist/TxChunk.d.ts.map +1 -1
  437. package/dist/TxChunk.js +73 -56
  438. package/dist/TxChunk.js.map +1 -1
  439. package/dist/TxDeferred.d.ts +43 -29
  440. package/dist/TxDeferred.d.ts.map +1 -1
  441. package/dist/TxDeferred.js +22 -15
  442. package/dist/TxDeferred.js.map +1 -1
  443. package/dist/TxHashMap.d.ts +362 -222
  444. package/dist/TxHashMap.d.ts.map +1 -1
  445. package/dist/TxHashMap.js +171 -98
  446. package/dist/TxHashMap.js.map +1 -1
  447. package/dist/TxHashSet.d.ts +178 -104
  448. package/dist/TxHashSet.d.ts.map +1 -1
  449. package/dist/TxHashSet.js +84 -43
  450. package/dist/TxHashSet.js.map +1 -1
  451. package/dist/TxPriorityQueue.d.ts +93 -62
  452. package/dist/TxPriorityQueue.d.ts.map +1 -1
  453. package/dist/TxPriorityQueue.js +54 -36
  454. package/dist/TxPriorityQueue.js.map +1 -1
  455. package/dist/TxPubSub.d.ts +77 -49
  456. package/dist/TxPubSub.d.ts.map +1 -1
  457. package/dist/TxPubSub.js +60 -37
  458. package/dist/TxPubSub.js.map +1 -1
  459. package/dist/TxQueue.d.ts +279 -241
  460. package/dist/TxQueue.d.ts.map +1 -1
  461. package/dist/TxQueue.js +147 -101
  462. package/dist/TxQueue.js.map +1 -1
  463. package/dist/TxReentrantLock.d.ts +69 -46
  464. package/dist/TxReentrantLock.d.ts.map +1 -1
  465. package/dist/TxReentrantLock.js +48 -32
  466. package/dist/TxReentrantLock.js.map +1 -1
  467. package/dist/TxRef.d.ts +69 -40
  468. package/dist/TxRef.d.ts.map +1 -1
  469. package/dist/TxRef.js +35 -20
  470. package/dist/TxRef.js.map +1 -1
  471. package/dist/TxSemaphore.d.ts +101 -54
  472. package/dist/TxSemaphore.d.ts.map +1 -1
  473. package/dist/TxSemaphore.js +76 -34
  474. package/dist/TxSemaphore.js.map +1 -1
  475. package/dist/TxSubscriptionRef.d.ts +72 -48
  476. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  477. package/dist/TxSubscriptionRef.js +33 -22
  478. package/dist/TxSubscriptionRef.js.map +1 -1
  479. package/dist/Types.d.ts +34 -34
  480. package/dist/UndefinedOr.d.ts +48 -25
  481. package/dist/UndefinedOr.d.ts.map +1 -1
  482. package/dist/UndefinedOr.js +28 -25
  483. package/dist/UndefinedOr.js.map +1 -1
  484. package/dist/Unify.d.ts +71 -116
  485. package/dist/Unify.d.ts.map +1 -1
  486. package/dist/Unify.js +20 -6
  487. package/dist/Unify.js.map +1 -1
  488. package/dist/Utils.d.ts +4 -0
  489. package/dist/Utils.d.ts.map +1 -1
  490. package/dist/Utils.js +4 -0
  491. package/dist/Utils.js.map +1 -1
  492. package/dist/index.d.ts +81 -32
  493. package/dist/index.d.ts.map +1 -1
  494. package/dist/index.js +81 -32
  495. package/dist/index.js.map +1 -1
  496. package/dist/internal/concurrency.js +2 -2
  497. package/dist/internal/concurrency.js.map +1 -1
  498. package/dist/internal/core.js +8 -20
  499. package/dist/internal/core.js.map +1 -1
  500. package/dist/internal/effect.js +20 -19
  501. package/dist/internal/effect.js.map +1 -1
  502. package/dist/internal/executionPlan.js +2 -2
  503. package/dist/internal/executionPlan.js.map +1 -1
  504. package/dist/internal/option.js +5 -8
  505. package/dist/internal/option.js.map +1 -1
  506. package/dist/internal/result.js +5 -8
  507. package/dist/internal/result.js.map +1 -1
  508. package/dist/internal/schema/schema.js +1 -1
  509. package/dist/internal/schema/schema.js.map +1 -1
  510. package/dist/testing/FastCheck.d.ts +6 -3
  511. package/dist/testing/FastCheck.d.ts.map +1 -1
  512. package/dist/testing/FastCheck.js +6 -3
  513. package/dist/testing/FastCheck.js.map +1 -1
  514. package/dist/testing/TestClock.d.ts +39 -34
  515. package/dist/testing/TestClock.d.ts.map +1 -1
  516. package/dist/testing/TestClock.js +42 -12
  517. package/dist/testing/TestClock.js.map +1 -1
  518. package/dist/testing/TestConsole.d.ts +39 -30
  519. package/dist/testing/TestConsole.d.ts.map +1 -1
  520. package/dist/testing/TestConsole.js +25 -10
  521. package/dist/testing/TestConsole.js.map +1 -1
  522. package/dist/testing/TestSchema.js +7 -7
  523. package/dist/testing/TestSchema.js.map +1 -1
  524. package/dist/unstable/ai/AiError.d.ts +197 -130
  525. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  526. package/dist/unstable/ai/AiError.js +166 -102
  527. package/dist/unstable/ai/AiError.js.map +1 -1
  528. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  529. package/dist/unstable/ai/AnthropicStructuredOutput.js +2 -2
  530. package/dist/unstable/ai/Chat.d.ts +65 -41
  531. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  532. package/dist/unstable/ai/Chat.js +51 -33
  533. package/dist/unstable/ai/Chat.js.map +1 -1
  534. package/dist/unstable/ai/EmbeddingModel.d.ts +12 -11
  535. package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -1
  536. package/dist/unstable/ai/EmbeddingModel.js +9 -8
  537. package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
  538. package/dist/unstable/ai/IdGenerator.d.ts +28 -18
  539. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  540. package/dist/unstable/ai/IdGenerator.js +18 -11
  541. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  542. package/dist/unstable/ai/LanguageModel.d.ts +36 -30
  543. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  544. package/dist/unstable/ai/LanguageModel.js +21 -15
  545. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  546. package/dist/unstable/ai/McpSchema.d.ts +339 -119
  547. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  548. package/dist/unstable/ai/McpSchema.js +264 -98
  549. package/dist/unstable/ai/McpSchema.js.map +1 -1
  550. package/dist/unstable/ai/McpServer.d.ts +53 -19
  551. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  552. package/dist/unstable/ai/McpServer.js +65 -17
  553. package/dist/unstable/ai/McpServer.js.map +1 -1
  554. package/dist/unstable/ai/Model.d.ts +13 -7
  555. package/dist/unstable/ai/Model.d.ts.map +1 -1
  556. package/dist/unstable/ai/Model.js +11 -9
  557. package/dist/unstable/ai/Model.js.map +1 -1
  558. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  559. package/dist/unstable/ai/OpenAiStructuredOutput.js +2 -2
  560. package/dist/unstable/ai/Prompt.d.ts +194 -168
  561. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  562. package/dist/unstable/ai/Prompt.js +75 -66
  563. package/dist/unstable/ai/Prompt.js.map +1 -1
  564. package/dist/unstable/ai/Response.d.ts +153 -140
  565. package/dist/unstable/ai/Response.d.ts.map +1 -1
  566. package/dist/unstable/ai/Response.js +43 -48
  567. package/dist/unstable/ai/Response.js.map +1 -1
  568. package/dist/unstable/ai/ResponseIdTracker.d.ts +43 -4
  569. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
  570. package/dist/unstable/ai/ResponseIdTracker.js +27 -2
  571. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  572. package/dist/unstable/ai/Telemetry.d.ts +42 -32
  573. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  574. package/dist/unstable/ai/Telemetry.js +14 -10
  575. package/dist/unstable/ai/Telemetry.js.map +1 -1
  576. package/dist/unstable/ai/Tokenizer.d.ts +13 -8
  577. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  578. package/dist/unstable/ai/Tokenizer.js +10 -6
  579. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  580. package/dist/unstable/ai/Tool.d.ts +153 -84
  581. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  582. package/dist/unstable/ai/Tool.js +97 -44
  583. package/dist/unstable/ai/Tool.js.map +1 -1
  584. package/dist/unstable/ai/Toolkit.d.ts +33 -42
  585. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  586. package/dist/unstable/ai/Toolkit.js +35 -36
  587. package/dist/unstable/ai/Toolkit.js.map +1 -1
  588. package/dist/unstable/ai/index.d.ts +42 -24
  589. package/dist/unstable/ai/index.d.ts.map +1 -1
  590. package/dist/unstable/ai/index.js +42 -24
  591. package/dist/unstable/ai/index.js.map +1 -1
  592. package/dist/unstable/cli/Argument.d.ts +226 -134
  593. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  594. package/dist/unstable/cli/Argument.js +101 -65
  595. package/dist/unstable/cli/Argument.js.map +1 -1
  596. package/dist/unstable/cli/CliError.d.ts +72 -26
  597. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  598. package/dist/unstable/cli/CliError.js +86 -23
  599. package/dist/unstable/cli/CliError.js.map +1 -1
  600. package/dist/unstable/cli/CliOutput.d.ts +43 -13
  601. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  602. package/dist/unstable/cli/CliOutput.js +30 -6
  603. package/dist/unstable/cli/CliOutput.js.map +1 -1
  604. package/dist/unstable/cli/Command.d.ts +218 -117
  605. package/dist/unstable/cli/Command.d.ts.map +1 -1
  606. package/dist/unstable/cli/Command.js +45 -31
  607. package/dist/unstable/cli/Command.js.map +1 -1
  608. package/dist/unstable/cli/Completions.d.ts +7 -7
  609. package/dist/unstable/cli/Completions.js +1 -1
  610. package/dist/unstable/cli/Flag.d.ts +235 -142
  611. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  612. package/dist/unstable/cli/Flag.js +111 -71
  613. package/dist/unstable/cli/Flag.js.map +1 -1
  614. package/dist/unstable/cli/GlobalFlag.d.ts +42 -14
  615. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
  616. package/dist/unstable/cli/GlobalFlag.js +30 -7
  617. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  618. package/dist/unstable/cli/HelpDoc.d.ts +35 -10
  619. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  620. package/dist/unstable/cli/HelpDoc.js +21 -0
  621. package/dist/unstable/cli/Param.d.ts +79 -31
  622. package/dist/unstable/cli/Param.d.ts.map +1 -1
  623. package/dist/unstable/cli/Param.js +161 -99
  624. package/dist/unstable/cli/Param.js.map +1 -1
  625. package/dist/unstable/cli/Primitive.d.ts +79 -42
  626. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  627. package/dist/unstable/cli/Primitive.js +66 -35
  628. package/dist/unstable/cli/Primitive.js.map +1 -1
  629. package/dist/unstable/cli/Prompt.d.ts +178 -47
  630. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  631. package/dist/unstable/cli/Prompt.js +111 -31
  632. package/dist/unstable/cli/Prompt.js.map +1 -1
  633. package/dist/unstable/cli/internal/ansi.d.ts.map +1 -1
  634. package/dist/unstable/cli/internal/ansi.js +13 -0
  635. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  636. package/dist/unstable/cli/internal/command.d.ts +7 -7
  637. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  638. package/dist/unstable/cli/internal/command.js +12 -10
  639. package/dist/unstable/cli/internal/command.js.map +1 -1
  640. package/dist/unstable/cli/internal/config.d.ts +3 -0
  641. package/dist/unstable/cli/internal/config.d.ts.map +1 -1
  642. package/dist/unstable/cli/internal/config.js.map +1 -1
  643. package/dist/unstable/cli/internal/lexer.js.map +1 -1
  644. package/dist/unstable/cluster/ClusterCron.d.ts +35 -1
  645. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  646. package/dist/unstable/cluster/ClusterCron.js +35 -1
  647. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  648. package/dist/unstable/cluster/ClusterError.d.ts +56 -7
  649. package/dist/unstable/cluster/ClusterError.d.ts.map +1 -1
  650. package/dist/unstable/cluster/ClusterError.js +56 -7
  651. package/dist/unstable/cluster/ClusterError.js.map +1 -1
  652. package/dist/unstable/cluster/ClusterMetrics.d.ts +39 -5
  653. package/dist/unstable/cluster/ClusterMetrics.d.ts.map +1 -1
  654. package/dist/unstable/cluster/ClusterMetrics.js +39 -5
  655. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  656. package/dist/unstable/cluster/ClusterSchema.d.ts +61 -8
  657. package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
  658. package/dist/unstable/cluster/ClusterSchema.js +61 -8
  659. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  660. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +14 -2
  661. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  662. package/dist/unstable/cluster/ClusterWorkflowEngine.js +36 -3
  663. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  664. package/dist/unstable/cluster/DeliverAt.d.ts +39 -4
  665. package/dist/unstable/cluster/DeliverAt.d.ts.map +1 -1
  666. package/dist/unstable/cluster/DeliverAt.js +11 -3
  667. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  668. package/dist/unstable/cluster/Entity.d.ts +75 -16
  669. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  670. package/dist/unstable/cluster/Entity.js +78 -13
  671. package/dist/unstable/cluster/Entity.js.map +1 -1
  672. package/dist/unstable/cluster/EntityAddress.d.ts +30 -2
  673. package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
  674. package/dist/unstable/cluster/EntityAddress.js +30 -2
  675. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  676. package/dist/unstable/cluster/EntityId.d.ts +18 -3
  677. package/dist/unstable/cluster/EntityId.d.ts.map +1 -1
  678. package/dist/unstable/cluster/EntityId.js +15 -2
  679. package/dist/unstable/cluster/EntityId.js.map +1 -1
  680. package/dist/unstable/cluster/EntityProxy.d.ts +34 -2
  681. package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
  682. package/dist/unstable/cluster/EntityProxy.js +24 -2
  683. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  684. package/dist/unstable/cluster/EntityProxyServer.d.ts +17 -2
  685. package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
  686. package/dist/unstable/cluster/EntityProxyServer.js +40 -8
  687. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  688. package/dist/unstable/cluster/EntityResource.d.ts +43 -6
  689. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  690. package/dist/unstable/cluster/EntityResource.js +11 -4
  691. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  692. package/dist/unstable/cluster/EntityType.d.ts +27 -3
  693. package/dist/unstable/cluster/EntityType.d.ts.map +1 -1
  694. package/dist/unstable/cluster/EntityType.js +24 -2
  695. package/dist/unstable/cluster/EntityType.js.map +1 -1
  696. package/dist/unstable/cluster/Envelope.d.ts +105 -23
  697. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  698. package/dist/unstable/cluster/Envelope.js +88 -14
  699. package/dist/unstable/cluster/Envelope.js.map +1 -1
  700. package/dist/unstable/cluster/HttpRunner.d.ts +88 -13
  701. package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
  702. package/dist/unstable/cluster/HttpRunner.js +88 -13
  703. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  704. package/dist/unstable/cluster/K8sHttpClient.d.ts +49 -6
  705. package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
  706. package/dist/unstable/cluster/K8sHttpClient.js +31 -6
  707. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  708. package/dist/unstable/cluster/MachineId.d.ts +24 -3
  709. package/dist/unstable/cluster/MachineId.d.ts.map +1 -1
  710. package/dist/unstable/cluster/MachineId.js +21 -2
  711. package/dist/unstable/cluster/MachineId.js.map +1 -1
  712. package/dist/unstable/cluster/Message.d.ts +102 -13
  713. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  714. package/dist/unstable/cluster/Message.js +86 -10
  715. package/dist/unstable/cluster/Message.js.map +1 -1
  716. package/dist/unstable/cluster/MessageStorage.d.ts +127 -21
  717. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  718. package/dist/unstable/cluster/MessageStorage.js +71 -11
  719. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  720. package/dist/unstable/cluster/Reply.d.ts +101 -12
  721. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  722. package/dist/unstable/cluster/Reply.js +64 -8
  723. package/dist/unstable/cluster/Reply.js.map +1 -1
  724. package/dist/unstable/cluster/Runner.d.ts +47 -17
  725. package/dist/unstable/cluster/Runner.d.ts.map +1 -1
  726. package/dist/unstable/cluster/Runner.js +47 -17
  727. package/dist/unstable/cluster/Runner.js.map +1 -1
  728. package/dist/unstable/cluster/RunnerAddress.d.ts +34 -2
  729. package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
  730. package/dist/unstable/cluster/RunnerAddress.js +34 -2
  731. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  732. package/dist/unstable/cluster/RunnerHealth.d.ts +40 -12
  733. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  734. package/dist/unstable/cluster/RunnerHealth.js +40 -12
  735. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  736. package/dist/unstable/cluster/RunnerServer.d.ts +7 -4
  737. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  738. package/dist/unstable/cluster/RunnerServer.js +31 -4
  739. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  740. package/dist/unstable/cluster/RunnerStorage.d.ts +42 -5
  741. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  742. package/dist/unstable/cluster/RunnerStorage.js +38 -4
  743. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  744. package/dist/unstable/cluster/Runners.d.ts +73 -10
  745. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  746. package/dist/unstable/cluster/Runners.js +70 -9
  747. package/dist/unstable/cluster/Runners.js.map +1 -1
  748. package/dist/unstable/cluster/ShardId.d.ts +51 -5
  749. package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
  750. package/dist/unstable/cluster/ShardId.js +47 -4
  751. package/dist/unstable/cluster/ShardId.js.map +1 -1
  752. package/dist/unstable/cluster/Sharding.d.ts +10 -2
  753. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  754. package/dist/unstable/cluster/Sharding.js +35 -4
  755. package/dist/unstable/cluster/Sharding.js.map +1 -1
  756. package/dist/unstable/cluster/ShardingConfig.d.ts +65 -9
  757. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  758. package/dist/unstable/cluster/ShardingConfig.js +67 -10
  759. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  760. package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts +27 -6
  761. package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts.map +1 -1
  762. package/dist/unstable/cluster/ShardingRegistrationEvent.js +28 -4
  763. package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
  764. package/dist/unstable/cluster/SingleRunner.d.ts +23 -1
  765. package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
  766. package/dist/unstable/cluster/SingleRunner.js +23 -1
  767. package/dist/unstable/cluster/SingleRunner.js.map +1 -1
  768. package/dist/unstable/cluster/Singleton.d.ts +15 -1
  769. package/dist/unstable/cluster/Singleton.d.ts.map +1 -1
  770. package/dist/unstable/cluster/Singleton.js +15 -1
  771. package/dist/unstable/cluster/Singleton.js.map +1 -1
  772. package/dist/unstable/cluster/SingletonAddress.d.ts +21 -1
  773. package/dist/unstable/cluster/SingletonAddress.d.ts.map +1 -1
  774. package/dist/unstable/cluster/SingletonAddress.js +21 -1
  775. package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
  776. package/dist/unstable/cluster/Snowflake.d.ts +89 -19
  777. package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
  778. package/dist/unstable/cluster/Snowflake.js +48 -13
  779. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  780. package/dist/unstable/cluster/SocketRunner.d.ts +8 -2
  781. package/dist/unstable/cluster/SocketRunner.d.ts.map +1 -1
  782. package/dist/unstable/cluster/SocketRunner.js +29 -2
  783. package/dist/unstable/cluster/SocketRunner.js.map +1 -1
  784. package/dist/unstable/cluster/SqlMessageStorage.d.ts +11 -3
  785. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  786. package/dist/unstable/cluster/SqlMessageStorage.js +27 -3
  787. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  788. package/dist/unstable/cluster/SqlRunnerStorage.d.ts +11 -3
  789. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  790. package/dist/unstable/cluster/SqlRunnerStorage.js +46 -7
  791. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  792. package/dist/unstable/cluster/TestRunner.d.ts +18 -1
  793. package/dist/unstable/cluster/TestRunner.d.ts.map +1 -1
  794. package/dist/unstable/cluster/TestRunner.js +18 -1
  795. package/dist/unstable/cluster/TestRunner.js.map +1 -1
  796. package/dist/unstable/cluster/internal/hash.js +12 -0
  797. package/dist/unstable/cluster/internal/hash.js.map +1 -1
  798. package/dist/unstable/devtools/DevTools.d.ts +26 -3
  799. package/dist/unstable/devtools/DevTools.d.ts.map +1 -1
  800. package/dist/unstable/devtools/DevTools.js +26 -3
  801. package/dist/unstable/devtools/DevTools.js.map +1 -1
  802. package/dist/unstable/devtools/DevToolsClient.d.ts +20 -5
  803. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  804. package/dist/unstable/devtools/DevToolsClient.js +32 -5
  805. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  806. package/dist/unstable/devtools/DevToolsSchema.d.ts +184 -44
  807. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  808. package/dist/unstable/devtools/DevToolsSchema.js +102 -20
  809. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  810. package/dist/unstable/devtools/DevToolsServer.d.ts +27 -2
  811. package/dist/unstable/devtools/DevToolsServer.d.ts.map +1 -1
  812. package/dist/unstable/devtools/DevToolsServer.js +21 -1
  813. package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
  814. package/dist/unstable/encoding/Msgpack.d.ts +81 -12
  815. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  816. package/dist/unstable/encoding/Msgpack.js +75 -9
  817. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  818. package/dist/unstable/encoding/Ndjson.d.ts +149 -21
  819. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  820. package/dist/unstable/encoding/Ndjson.js +97 -13
  821. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  822. package/dist/unstable/encoding/Sse.d.ts +109 -18
  823. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  824. package/dist/unstable/encoding/Sse.js +69 -13
  825. package/dist/unstable/encoding/Sse.js.map +1 -1
  826. package/dist/unstable/eventlog/Event.d.ts +115 -30
  827. package/dist/unstable/eventlog/Event.d.ts.map +1 -1
  828. package/dist/unstable/eventlog/Event.js +22 -2
  829. package/dist/unstable/eventlog/Event.js.map +1 -1
  830. package/dist/unstable/eventlog/EventGroup.d.ts +50 -17
  831. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  832. package/dist/unstable/eventlog/EventGroup.js +24 -6
  833. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  834. package/dist/unstable/eventlog/EventJournal.d.ts +104 -20
  835. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  836. package/dist/unstable/eventlog/EventJournal.js +108 -16
  837. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  838. package/dist/unstable/eventlog/EventLog.d.ts +151 -31
  839. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  840. package/dist/unstable/eventlog/EventLog.js +111 -20
  841. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  842. package/dist/unstable/eventlog/EventLogEncryption.d.ts +42 -6
  843. package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
  844. package/dist/unstable/eventlog/EventLogEncryption.js +38 -5
  845. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  846. package/dist/unstable/eventlog/EventLogMessage.d.ts +96 -22
  847. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
  848. package/dist/unstable/eventlog/EventLogMessage.js +72 -16
  849. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  850. package/dist/unstable/eventlog/EventLogRemote.d.ts +35 -8
  851. package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
  852. package/dist/unstable/eventlog/EventLogRemote.js +54 -8
  853. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  854. package/dist/unstable/eventlog/EventLogServer.d.ts +17 -3
  855. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  856. package/dist/unstable/eventlog/EventLogServer.js +17 -3
  857. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  858. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +32 -6
  859. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  860. package/dist/unstable/eventlog/EventLogServerEncrypted.js +52 -6
  861. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  862. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +74 -16
  863. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  864. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +90 -16
  865. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  866. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +59 -15
  867. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -1
  868. package/dist/unstable/eventlog/EventLogSessionAuth.js +73 -14
  869. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
  870. package/dist/unstable/eventlog/SqlEventJournal.d.ts +10 -2
  871. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
  872. package/dist/unstable/eventlog/SqlEventJournal.js +28 -2
  873. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  874. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts +32 -3
  875. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
  876. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +32 -3
  877. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  878. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +10 -2
  879. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
  880. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +28 -2
  881. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  882. package/dist/unstable/http/Cookies.d.ts +156 -77
  883. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  884. package/dist/unstable/http/Cookies.js +93 -39
  885. package/dist/unstable/http/Cookies.js.map +1 -1
  886. package/dist/unstable/http/Etag.d.ts +40 -7
  887. package/dist/unstable/http/Etag.d.ts.map +1 -1
  888. package/dist/unstable/http/Etag.js +27 -4
  889. package/dist/unstable/http/Etag.js.map +1 -1
  890. package/dist/unstable/http/FetchHttpClient.d.ts +29 -3
  891. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  892. package/dist/unstable/http/FetchHttpClient.js +33 -4
  893. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  894. package/dist/unstable/http/FindMyWay.d.ts +1 -1
  895. package/dist/unstable/http/FindMyWay.js +1 -1
  896. package/dist/unstable/http/Headers.d.ts +182 -36
  897. package/dist/unstable/http/Headers.d.ts.map +1 -1
  898. package/dist/unstable/http/Headers.js +86 -16
  899. package/dist/unstable/http/Headers.js.map +1 -1
  900. package/dist/unstable/http/HttpBody.d.ts +114 -26
  901. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  902. package/dist/unstable/http/HttpBody.js +100 -22
  903. package/dist/unstable/http/HttpBody.js.map +1 -1
  904. package/dist/unstable/http/HttpClient.d.ts +205 -96
  905. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  906. package/dist/unstable/http/HttpClient.js +85 -39
  907. package/dist/unstable/http/HttpClient.js.map +1 -1
  908. package/dist/unstable/http/HttpClientError.d.ts +68 -12
  909. package/dist/unstable/http/HttpClientError.d.ts.map +1 -1
  910. package/dist/unstable/http/HttpClientError.js +71 -9
  911. package/dist/unstable/http/HttpClientError.js.map +1 -1
  912. package/dist/unstable/http/HttpClientRequest.d.ts +318 -100
  913. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  914. package/dist/unstable/http/HttpClientRequest.js +153 -47
  915. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  916. package/dist/unstable/http/HttpClientResponse.d.ts +59 -16
  917. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  918. package/dist/unstable/http/HttpClientResponse.js +44 -11
  919. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  920. package/dist/unstable/http/HttpEffect.d.ts +42 -16
  921. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  922. package/dist/unstable/http/HttpEffect.js +33 -13
  923. package/dist/unstable/http/HttpEffect.js.map +1 -1
  924. package/dist/unstable/http/HttpIncomingMessage.d.ts +47 -7
  925. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  926. package/dist/unstable/http/HttpIncomingMessage.js +44 -6
  927. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  928. package/dist/unstable/http/HttpMethod.d.ts +35 -5
  929. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  930. package/dist/unstable/http/HttpMethod.js +23 -1
  931. package/dist/unstable/http/HttpMethod.js.map +1 -1
  932. package/dist/unstable/http/HttpMiddleware.d.ts +37 -11
  933. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  934. package/dist/unstable/http/HttpMiddleware.js +70 -31
  935. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  936. package/dist/unstable/http/HttpPlatform.d.ts +34 -3
  937. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  938. package/dist/unstable/http/HttpPlatform.js +35 -4
  939. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  940. package/dist/unstable/http/HttpRouter.d.ts +194 -45
  941. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  942. package/dist/unstable/http/HttpRouter.js +122 -28
  943. package/dist/unstable/http/HttpRouter.js.map +1 -1
  944. package/dist/unstable/http/HttpServer.d.ts +151 -22
  945. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  946. package/dist/unstable/http/HttpServer.js +77 -12
  947. package/dist/unstable/http/HttpServer.js.map +1 -1
  948. package/dist/unstable/http/HttpServerError.d.ts +90 -10
  949. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  950. package/dist/unstable/http/HttpServerError.js +82 -8
  951. package/dist/unstable/http/HttpServerError.js.map +1 -1
  952. package/dist/unstable/http/HttpServerRequest.d.ts +125 -21
  953. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  954. package/dist/unstable/http/HttpServerRequest.js +112 -31
  955. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  956. package/dist/unstable/http/HttpServerRespondable.d.ts +32 -6
  957. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  958. package/dist/unstable/http/HttpServerRespondable.js +43 -5
  959. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  960. package/dist/unstable/http/HttpServerResponse.d.ts +390 -67
  961. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  962. package/dist/unstable/http/HttpServerResponse.js +209 -38
  963. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  964. package/dist/unstable/http/HttpStaticServer.d.ts +22 -4
  965. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
  966. package/dist/unstable/http/HttpStaticServer.js +22 -4
  967. package/dist/unstable/http/HttpStaticServer.js.map +1 -1
  968. package/dist/unstable/http/HttpTraceContext.d.ts +53 -6
  969. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  970. package/dist/unstable/http/HttpTraceContext.js +47 -5
  971. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  972. package/dist/unstable/http/Multipart.d.ts +178 -28
  973. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  974. package/dist/unstable/http/Multipart.js +130 -20
  975. package/dist/unstable/http/Multipart.js.map +1 -1
  976. package/dist/unstable/http/Multipasta/HeadersParser.d.ts +1 -1
  977. package/dist/unstable/http/Multipasta/HeadersParser.js +1 -1
  978. package/dist/unstable/http/Multipasta/Node.d.ts +1 -1
  979. package/dist/unstable/http/Multipasta/Node.js +1 -1
  980. package/dist/unstable/http/Multipasta/Search.d.ts +1 -1
  981. package/dist/unstable/http/Multipasta/Search.js +1 -1
  982. package/dist/unstable/http/Multipasta/Web.d.ts +1 -1
  983. package/dist/unstable/http/Multipasta/Web.js +1 -1
  984. package/dist/unstable/http/Multipasta.d.ts +1 -1
  985. package/dist/unstable/http/Multipasta.js +1 -1
  986. package/dist/unstable/http/Template.d.ts +53 -0
  987. package/dist/unstable/http/Template.d.ts.map +1 -1
  988. package/dist/unstable/http/Template.js +26 -0
  989. package/dist/unstable/http/Template.js.map +1 -1
  990. package/dist/unstable/http/Url.d.ts +56 -42
  991. package/dist/unstable/http/Url.d.ts.map +1 -1
  992. package/dist/unstable/http/Url.js +29 -15
  993. package/dist/unstable/http/Url.js.map +1 -1
  994. package/dist/unstable/http/UrlParams.d.ts +233 -49
  995. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  996. package/dist/unstable/http/UrlParams.js +116 -23
  997. package/dist/unstable/http/UrlParams.js.map +1 -1
  998. package/dist/unstable/httpapi/HttpApi.d.ts +49 -14
  999. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  1000. package/dist/unstable/httpapi/HttpApi.js +14 -8
  1001. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  1002. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +55 -16
  1003. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  1004. package/dist/unstable/httpapi/HttpApiBuilder.js +47 -9
  1005. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  1006. package/dist/unstable/httpapi/HttpApiClient.d.ts +58 -15
  1007. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  1008. package/dist/unstable/httpapi/HttpApiClient.js +43 -7
  1009. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  1010. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +214 -59
  1011. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  1012. package/dist/unstable/httpapi/HttpApiEndpoint.js +53 -9
  1013. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  1014. package/dist/unstable/httpapi/HttpApiError.d.ts +81 -1
  1015. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  1016. package/dist/unstable/httpapi/HttpApiError.js +98 -1
  1017. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  1018. package/dist/unstable/httpapi/HttpApiGroup.d.ts +87 -20
  1019. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  1020. package/dist/unstable/httpapi/HttpApiGroup.js +5 -2
  1021. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  1022. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +113 -22
  1023. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  1024. package/dist/unstable/httpapi/HttpApiMiddleware.js +49 -6
  1025. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  1026. package/dist/unstable/httpapi/HttpApiScalar.d.ts +19 -4
  1027. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  1028. package/dist/unstable/httpapi/HttpApiScalar.js +32 -2
  1029. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  1030. package/dist/unstable/httpapi/HttpApiSchema.d.ts +67 -30
  1031. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  1032. package/dist/unstable/httpapi/HttpApiSchema.js +48 -27
  1033. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  1034. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +74 -17
  1035. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  1036. package/dist/unstable/httpapi/HttpApiSecurity.js +38 -5
  1037. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  1038. package/dist/unstable/httpapi/HttpApiSwagger.d.ts +5 -2
  1039. package/dist/unstable/httpapi/HttpApiSwagger.d.ts.map +1 -1
  1040. package/dist/unstable/httpapi/HttpApiSwagger.js +24 -2
  1041. package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
  1042. package/dist/unstable/httpapi/HttpApiTest.d.ts +9 -2
  1043. package/dist/unstable/httpapi/HttpApiTest.d.ts.map +1 -1
  1044. package/dist/unstable/httpapi/HttpApiTest.js +28 -3
  1045. package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
  1046. package/dist/unstable/httpapi/OpenApi.d.ts +86 -15
  1047. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  1048. package/dist/unstable/httpapi/OpenApi.js +73 -15
  1049. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  1050. package/dist/unstable/observability/Otlp.d.ts +33 -3
  1051. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  1052. package/dist/unstable/observability/Otlp.js +14 -3
  1053. package/dist/unstable/observability/Otlp.js.map +1 -1
  1054. package/dist/unstable/observability/OtlpExporter.d.ts +8 -1
  1055. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  1056. package/dist/unstable/observability/OtlpExporter.js +32 -1
  1057. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  1058. package/dist/unstable/observability/OtlpLogger.d.ts +14 -2
  1059. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  1060. package/dist/unstable/observability/OtlpLogger.js +29 -2
  1061. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  1062. package/dist/unstable/observability/OtlpMetrics.d.ts +15 -4
  1063. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  1064. package/dist/unstable/observability/OtlpMetrics.js +32 -2
  1065. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  1066. package/dist/unstable/observability/OtlpResource.d.ts +49 -12
  1067. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  1068. package/dist/unstable/observability/OtlpResource.js +47 -5
  1069. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  1070. package/dist/unstable/observability/OtlpSerialization.d.ts +28 -3
  1071. package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
  1072. package/dist/unstable/observability/OtlpSerialization.js +28 -3
  1073. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  1074. package/dist/unstable/observability/OtlpTracer.d.ts +16 -2
  1075. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  1076. package/dist/unstable/observability/OtlpTracer.js +32 -2
  1077. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  1078. package/dist/unstable/observability/PrometheusMetrics.d.ts +32 -12
  1079. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  1080. package/dist/unstable/observability/PrometheusMetrics.js +7 -5
  1081. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  1082. package/dist/unstable/observability/index.d.ts +2 -1
  1083. package/dist/unstable/observability/index.d.ts.map +1 -1
  1084. package/dist/unstable/observability/index.js +2 -1
  1085. package/dist/unstable/observability/index.js.map +1 -1
  1086. package/dist/unstable/persistence/KeyValueStore.d.ts +93 -18
  1087. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  1088. package/dist/unstable/persistence/KeyValueStore.js +81 -21
  1089. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  1090. package/dist/unstable/persistence/Persistable.d.ts +76 -15
  1091. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  1092. package/dist/unstable/persistence/Persistable.js +22 -5
  1093. package/dist/unstable/persistence/Persistable.js.map +1 -1
  1094. package/dist/unstable/persistence/PersistedCache.d.ts +27 -2
  1095. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  1096. package/dist/unstable/persistence/PersistedCache.js +24 -1
  1097. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  1098. package/dist/unstable/persistence/PersistedQueue.d.ts +73 -16
  1099. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  1100. package/dist/unstable/persistence/PersistedQueue.js +60 -13
  1101. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  1102. package/dist/unstable/persistence/Persistence.d.ts +97 -16
  1103. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  1104. package/dist/unstable/persistence/Persistence.js +90 -14
  1105. package/dist/unstable/persistence/Persistence.js.map +1 -1
  1106. package/dist/unstable/persistence/RateLimiter.d.ts +97 -21
  1107. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  1108. package/dist/unstable/persistence/RateLimiter.js +82 -17
  1109. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  1110. package/dist/unstable/persistence/Redis.d.ts +26 -5
  1111. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  1112. package/dist/unstable/persistence/Redis.js +36 -4
  1113. package/dist/unstable/persistence/Redis.js.map +1 -1
  1114. package/dist/unstable/process/ChildProcess.d.ts +89 -109
  1115. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1116. package/dist/unstable/process/ChildProcess.js +74 -23
  1117. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1118. package/dist/unstable/process/ChildProcessSpawner.d.ts +22 -11
  1119. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1120. package/dist/unstable/process/ChildProcessSpawner.js +11 -6
  1121. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1122. package/dist/unstable/process/index.d.ts +2 -1
  1123. package/dist/unstable/process/index.d.ts.map +1 -1
  1124. package/dist/unstable/process/index.js +2 -1
  1125. package/dist/unstable/process/index.js.map +1 -1
  1126. package/dist/unstable/reactivity/AsyncResult.d.ts +196 -59
  1127. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  1128. package/dist/unstable/reactivity/AsyncResult.js +121 -36
  1129. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1130. package/dist/unstable/reactivity/Atom.d.ts +539 -130
  1131. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1132. package/dist/unstable/reactivity/Atom.js +256 -62
  1133. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1134. package/dist/unstable/reactivity/AtomHttpApi.d.ts +41 -2
  1135. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1136. package/dist/unstable/reactivity/AtomHttpApi.js +35 -1
  1137. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1138. package/dist/unstable/reactivity/AtomRef.d.ts +51 -7
  1139. package/dist/unstable/reactivity/AtomRef.d.ts.map +1 -1
  1140. package/dist/unstable/reactivity/AtomRef.js +29 -3
  1141. package/dist/unstable/reactivity/AtomRef.js.map +1 -1
  1142. package/dist/unstable/reactivity/AtomRegistry.d.ts +135 -21
  1143. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  1144. package/dist/unstable/reactivity/AtomRegistry.js +69 -10
  1145. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1146. package/dist/unstable/reactivity/AtomRpc.d.ts +36 -2
  1147. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1148. package/dist/unstable/reactivity/AtomRpc.js +29 -1
  1149. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1150. package/dist/unstable/reactivity/Hydration.d.ts +28 -5
  1151. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -1
  1152. package/dist/unstable/reactivity/Hydration.js +35 -3
  1153. package/dist/unstable/reactivity/Hydration.js.map +1 -1
  1154. package/dist/unstable/reactivity/Reactivity.d.ts +95 -13
  1155. package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
  1156. package/dist/unstable/reactivity/Reactivity.js +61 -7
  1157. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1158. package/dist/unstable/rpc/Rpc.d.ts +255 -56
  1159. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1160. package/dist/unstable/rpc/Rpc.js +44 -11
  1161. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1162. package/dist/unstable/rpc/RpcClient.d.ts +81 -19
  1163. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1164. package/dist/unstable/rpc/RpcClient.js +53 -13
  1165. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1166. package/dist/unstable/rpc/RpcClientError.d.ts +26 -2
  1167. package/dist/unstable/rpc/RpcClientError.d.ts.map +1 -1
  1168. package/dist/unstable/rpc/RpcClientError.js +26 -2
  1169. package/dist/unstable/rpc/RpcClientError.js.map +1 -1
  1170. package/dist/unstable/rpc/RpcGroup.d.ts +51 -8
  1171. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  1172. package/dist/unstable/rpc/RpcGroup.js +3 -1
  1173. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1174. package/dist/unstable/rpc/RpcMessage.d.ts +128 -32
  1175. package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
  1176. package/dist/unstable/rpc/RpcMessage.js +23 -7
  1177. package/dist/unstable/rpc/RpcMessage.js.map +1 -1
  1178. package/dist/unstable/rpc/RpcMiddleware.d.ts +100 -20
  1179. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  1180. package/dist/unstable/rpc/RpcMiddleware.js +39 -3
  1181. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1182. package/dist/unstable/rpc/RpcSchema.d.ts +38 -4
  1183. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  1184. package/dist/unstable/rpc/RpcSchema.js +34 -3
  1185. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1186. package/dist/unstable/rpc/RpcSerialization.d.ts +60 -13
  1187. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1188. package/dist/unstable/rpc/RpcSerialization.js +56 -12
  1189. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1190. package/dist/unstable/rpc/RpcServer.d.ts +73 -23
  1191. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  1192. package/dist/unstable/rpc/RpcServer.js +70 -23
  1193. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1194. package/dist/unstable/rpc/RpcTest.d.ts +20 -1
  1195. package/dist/unstable/rpc/RpcTest.d.ts.map +1 -1
  1196. package/dist/unstable/rpc/RpcTest.js +20 -1
  1197. package/dist/unstable/rpc/RpcTest.js.map +1 -1
  1198. package/dist/unstable/rpc/RpcWorker.d.ts +40 -6
  1199. package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
  1200. package/dist/unstable/rpc/RpcWorker.js +17 -5
  1201. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1202. package/dist/unstable/rpc/Utils.d.ts +8 -0
  1203. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  1204. package/dist/unstable/rpc/Utils.js +8 -0
  1205. package/dist/unstable/rpc/Utils.js.map +1 -1
  1206. package/dist/unstable/schema/Model.d.ts +130 -52
  1207. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1208. package/dist/unstable/schema/Model.js +79 -34
  1209. package/dist/unstable/schema/Model.js.map +1 -1
  1210. package/dist/unstable/schema/VariantSchema.d.ts +104 -24
  1211. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  1212. package/dist/unstable/schema/VariantSchema.js +22 -6
  1213. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1214. package/dist/unstable/socket/Socket.d.ts +167 -34
  1215. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1216. package/dist/unstable/socket/Socket.js +124 -29
  1217. package/dist/unstable/socket/Socket.js.map +1 -1
  1218. package/dist/unstable/socket/SocketServer.d.ts +58 -10
  1219. package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
  1220. package/dist/unstable/socket/SocketServer.js +43 -5
  1221. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1222. package/dist/unstable/sql/Migrator.d.ts +35 -4
  1223. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  1224. package/dist/unstable/sql/Migrator.js +45 -5
  1225. package/dist/unstable/sql/Migrator.js.map +1 -1
  1226. package/dist/unstable/sql/SqlClient.d.ts +34 -2
  1227. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1228. package/dist/unstable/sql/SqlClient.js +38 -1
  1229. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1230. package/dist/unstable/sql/SqlConnection.d.ts +31 -0
  1231. package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
  1232. package/dist/unstable/sql/SqlConnection.js +22 -0
  1233. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1234. package/dist/unstable/sql/SqlError.d.ts +99 -0
  1235. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  1236. package/dist/unstable/sql/SqlError.js +114 -0
  1237. package/dist/unstable/sql/SqlError.js.map +1 -1
  1238. package/dist/unstable/sql/SqlModel.d.ts +26 -5
  1239. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  1240. package/dist/unstable/sql/SqlModel.js +8 -4
  1241. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1242. package/dist/unstable/sql/SqlResolver.d.ts +56 -13
  1243. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  1244. package/dist/unstable/sql/SqlResolver.js +44 -10
  1245. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1246. package/dist/unstable/sql/SqlSchema.d.ts +29 -8
  1247. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  1248. package/dist/unstable/sql/SqlSchema.js +29 -8
  1249. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1250. package/dist/unstable/sql/SqlStream.d.ts +3 -0
  1251. package/dist/unstable/sql/SqlStream.d.ts.map +1 -1
  1252. package/dist/unstable/sql/SqlStream.js +23 -0
  1253. package/dist/unstable/sql/SqlStream.js.map +1 -1
  1254. package/dist/unstable/sql/Statement.d.ts +124 -0
  1255. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  1256. package/dist/unstable/sql/Statement.js +82 -0
  1257. package/dist/unstable/sql/Statement.js.map +1 -1
  1258. package/dist/unstable/sql/index.d.ts +1 -1
  1259. package/dist/unstable/sql/index.js +1 -1
  1260. package/dist/unstable/workers/Transferable.d.ts +65 -13
  1261. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  1262. package/dist/unstable/workers/Transferable.js +53 -10
  1263. package/dist/unstable/workers/Transferable.js.map +1 -1
  1264. package/dist/unstable/workers/Worker.d.ts +60 -8
  1265. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  1266. package/dist/unstable/workers/Worker.js +43 -4
  1267. package/dist/unstable/workers/Worker.js.map +1 -1
  1268. package/dist/unstable/workers/WorkerError.d.ts +31 -9
  1269. package/dist/unstable/workers/WorkerError.d.ts.map +1 -1
  1270. package/dist/unstable/workers/WorkerError.js +44 -7
  1271. package/dist/unstable/workers/WorkerError.js.map +1 -1
  1272. package/dist/unstable/workers/WorkerRunner.d.ts +32 -3
  1273. package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
  1274. package/dist/unstable/workers/WorkerRunner.js +24 -1
  1275. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1276. package/dist/unstable/workers/index.d.ts +1 -1
  1277. package/dist/unstable/workers/index.js +1 -1
  1278. package/dist/unstable/workflow/Activity.d.ts +61 -10
  1279. package/dist/unstable/workflow/Activity.d.ts.map +1 -1
  1280. package/dist/unstable/workflow/Activity.js +21 -6
  1281. package/dist/unstable/workflow/Activity.js.map +1 -1
  1282. package/dist/unstable/workflow/DurableClock.d.ts +12 -3
  1283. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  1284. package/dist/unstable/workflow/DurableClock.js +22 -2
  1285. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1286. package/dist/unstable/workflow/DurableDeferred.d.ts +126 -31
  1287. package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
  1288. package/dist/unstable/workflow/DurableDeferred.js +76 -13
  1289. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1290. package/dist/unstable/workflow/DurableQueue.d.ts +145 -0
  1291. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -0
  1292. package/dist/unstable/workflow/DurableQueue.js +200 -0
  1293. package/dist/unstable/workflow/DurableQueue.js.map +1 -0
  1294. package/dist/unstable/workflow/Workflow.d.ts +100 -31
  1295. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1296. package/dist/unstable/workflow/Workflow.js +76 -20
  1297. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1298. package/dist/unstable/workflow/WorkflowEngine.d.ts +40 -5
  1299. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  1300. package/dist/unstable/workflow/WorkflowEngine.js +16 -4
  1301. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1302. package/dist/unstable/workflow/WorkflowProxy.d.ts +32 -2
  1303. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  1304. package/dist/unstable/workflow/WorkflowProxy.js +2 -2
  1305. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  1306. package/dist/unstable/workflow/WorkflowProxyServer.d.ts +36 -2
  1307. package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
  1308. package/dist/unstable/workflow/WorkflowProxyServer.js +12 -6
  1309. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1310. package/dist/unstable/workflow/index.d.ts +4 -0
  1311. package/dist/unstable/workflow/index.d.ts.map +1 -1
  1312. package/dist/unstable/workflow/index.js +4 -0
  1313. package/dist/unstable/workflow/index.js.map +1 -1
  1314. package/package.json +11 -11
  1315. package/src/Array.ts +113 -67
  1316. package/src/BigDecimal.ts +404 -337
  1317. package/src/BigInt.ts +167 -97
  1318. package/src/Boolean.ts +62 -31
  1319. package/src/Brand.ts +20 -1
  1320. package/src/Cache.ts +331 -164
  1321. package/src/Cause.ts +77 -65
  1322. package/src/Channel.ts +1585 -607
  1323. package/src/ChannelSchema.ts +137 -12
  1324. package/src/Chunk.ts +549 -380
  1325. package/src/Clock.ts +15 -8
  1326. package/src/Combiner.ts +2 -4
  1327. package/src/Config.ts +12 -10
  1328. package/src/ConfigProvider.ts +1 -1
  1329. package/src/Console.ts +88 -58
  1330. package/src/Context.ts +397 -149
  1331. package/src/Cron.ts +111 -48
  1332. package/src/Data.ts +3 -2
  1333. package/src/DateTime.ts +876 -445
  1334. package/src/Deferred.ts +367 -174
  1335. package/src/Differ.ts +42 -0
  1336. package/src/Duration.ts +329 -185
  1337. package/src/Effect.ts +2474 -2395
  1338. package/src/Effectable.ts +39 -4
  1339. package/src/Encoding.ts +78 -28
  1340. package/src/Equivalence.ts +14 -19
  1341. package/src/ErrorReporter.ts +66 -82
  1342. package/src/ExecutionPlan.ts +97 -13
  1343. package/src/Exit.ts +7 -5
  1344. package/src/Fiber.ts +72 -40
  1345. package/src/FiberHandle.ts +158 -58
  1346. package/src/FiberMap.ts +329 -164
  1347. package/src/FiberSet.ts +130 -52
  1348. package/src/FileSystem.ts +106 -74
  1349. package/src/Filter.ts +166 -88
  1350. package/src/Function.ts +154 -86
  1351. package/src/Graph.ts +682 -365
  1352. package/src/HKT.ts +29 -13
  1353. package/src/Hash.ts +31 -18
  1354. package/src/HashMap.ts +444 -256
  1355. package/src/HashRing.ts +94 -17
  1356. package/src/HashSet.ts +194 -104
  1357. package/src/Inspectable.ts +22 -10
  1358. package/src/Iterable.ts +309 -149
  1359. package/src/JsonPatch.ts +4 -3
  1360. package/src/Latch.ts +98 -15
  1361. package/src/Layer.ts +488 -345
  1362. package/src/LayerMap.ts +98 -25
  1363. package/src/LogLevel.ts +92 -131
  1364. package/src/Logger.ts +357 -288
  1365. package/src/ManagedRuntime.ts +75 -17
  1366. package/src/Match.ts +133 -157
  1367. package/src/Metric.ts +355 -304
  1368. package/src/MutableHashMap.ts +161 -84
  1369. package/src/MutableHashSet.ts +122 -52
  1370. package/src/MutableList.ts +141 -81
  1371. package/src/MutableRef.ts +130 -90
  1372. package/src/Newtype.ts +3 -0
  1373. package/src/NonEmptyIterable.ts +36 -39
  1374. package/src/Number.ts +116 -64
  1375. package/src/Optic.ts +1 -2
  1376. package/src/Option.ts +41 -53
  1377. package/src/Ordering.ts +43 -28
  1378. package/src/PartitionedSemaphore.ts +225 -40
  1379. package/src/Path.ts +77 -13
  1380. package/src/Pipeable.ts +76 -21
  1381. package/src/PlatformError.ts +74 -6
  1382. package/src/Pool.ts +94 -31
  1383. package/src/Predicate.ts +16 -21
  1384. package/src/PrimaryKey.ts +9 -2
  1385. package/src/PubSub.ts +364 -262
  1386. package/src/Pull.ts +94 -25
  1387. package/src/Queue.ts +284 -150
  1388. package/src/Random.ts +54 -35
  1389. package/src/RcMap.ts +151 -141
  1390. package/src/RcRef.ts +69 -32
  1391. package/src/Record.ts +273 -129
  1392. package/src/Redactable.ts +3 -3
  1393. package/src/Redacted.ts +63 -33
  1394. package/src/Ref.ts +161 -104
  1395. package/src/References.ts +73 -31
  1396. package/src/RegExp.ts +11 -5
  1397. package/src/Request.ts +158 -34
  1398. package/src/RequestResolver.ts +277 -119
  1399. package/src/Resource.ts +45 -7
  1400. package/src/Result.ts +31 -18
  1401. package/src/Runtime.ts +45 -19
  1402. package/src/Schedule.ts +575 -600
  1403. package/src/Scheduler.ts +43 -6
  1404. package/src/Schema.ts +845 -319
  1405. package/src/SchemaAST.ts +25 -16
  1406. package/src/SchemaGetter.ts +32 -17
  1407. package/src/SchemaIssue.ts +1 -8
  1408. package/src/SchemaParser.ts +262 -38
  1409. package/src/SchemaTransformation.ts +61 -41
  1410. package/src/SchemaUtils.ts +23 -0
  1411. package/src/Scope.ts +102 -43
  1412. package/src/ScopedCache.ts +192 -56
  1413. package/src/ScopedRef.ts +28 -8
  1414. package/src/Semaphore.ts +64 -28
  1415. package/src/Sink.ts +458 -200
  1416. package/src/Stdio.ts +43 -6
  1417. package/src/Stream.ts +2043 -1256
  1418. package/src/String.ts +171 -95
  1419. package/src/SubscriptionRef.ts +308 -203
  1420. package/src/Symbol.ts +13 -5
  1421. package/src/SynchronizedRef.ts +278 -62
  1422. package/src/Take.ts +26 -2
  1423. package/src/Terminal.ts +40 -7
  1424. package/src/Tracer.ts +229 -55
  1425. package/src/Trie.ts +213 -142
  1426. package/src/TxChunk.ts +182 -146
  1427. package/src/TxDeferred.ts +43 -29
  1428. package/src/TxHashMap.ts +370 -230
  1429. package/src/TxHashSet.ts +250 -152
  1430. package/src/TxPriorityQueue.ts +96 -64
  1431. package/src/TxPubSub.ts +77 -49
  1432. package/src/TxQueue.ts +279 -241
  1433. package/src/TxReentrantLock.ts +70 -47
  1434. package/src/TxRef.ts +70 -41
  1435. package/src/TxSemaphore.ts +101 -54
  1436. package/src/TxSubscriptionRef.ts +72 -48
  1437. package/src/Types.ts +34 -34
  1438. package/src/UndefinedOr.ts +48 -25
  1439. package/src/Unify.ts +71 -116
  1440. package/src/Utils.ts +4 -0
  1441. package/src/index.ts +81 -32
  1442. package/src/internal/concurrency.ts +2 -2
  1443. package/src/internal/core.ts +12 -23
  1444. package/src/internal/effect.ts +25 -29
  1445. package/src/internal/executionPlan.ts +2 -2
  1446. package/src/internal/option.ts +5 -8
  1447. package/src/internal/result.ts +5 -8
  1448. package/src/internal/schema/schema.ts +1 -1
  1449. package/src/testing/FastCheck.ts +6 -3
  1450. package/src/testing/TestClock.ts +63 -34
  1451. package/src/testing/TestConsole.ts +49 -30
  1452. package/src/testing/TestSchema.ts +8 -8
  1453. package/src/unstable/ai/AiError.ts +187 -120
  1454. package/src/unstable/ai/AnthropicStructuredOutput.ts +2 -2
  1455. package/src/unstable/ai/Chat.ts +69 -43
  1456. package/src/unstable/ai/EmbeddingModel.ts +12 -11
  1457. package/src/unstable/ai/IdGenerator.ts +28 -18
  1458. package/src/unstable/ai/LanguageModel.ts +47 -46
  1459. package/src/unstable/ai/McpSchema.ts +339 -119
  1460. package/src/unstable/ai/McpServer.ts +78 -21
  1461. package/src/unstable/ai/Model.ts +23 -18
  1462. package/src/unstable/ai/OpenAiStructuredOutput.ts +2 -2
  1463. package/src/unstable/ai/Prompt.ts +210 -184
  1464. package/src/unstable/ai/Response.ts +159 -147
  1465. package/src/unstable/ai/ResponseIdTracker.ts +43 -4
  1466. package/src/unstable/ai/Telemetry.ts +42 -32
  1467. package/src/unstable/ai/Tokenizer.ts +13 -8
  1468. package/src/unstable/ai/Tool.ts +154 -85
  1469. package/src/unstable/ai/Toolkit.ts +81 -84
  1470. package/src/unstable/ai/index.ts +42 -24
  1471. package/src/unstable/cli/Argument.ts +226 -134
  1472. package/src/unstable/cli/CliError.ts +96 -26
  1473. package/src/unstable/cli/CliOutput.ts +43 -13
  1474. package/src/unstable/cli/Command.ts +225 -125
  1475. package/src/unstable/cli/Completions.ts +7 -7
  1476. package/src/unstable/cli/Flag.ts +235 -142
  1477. package/src/unstable/cli/GlobalFlag.ts +42 -14
  1478. package/src/unstable/cli/HelpDoc.ts +35 -10
  1479. package/src/unstable/cli/Param.ts +328 -190
  1480. package/src/unstable/cli/Primitive.ts +79 -42
  1481. package/src/unstable/cli/Prompt.ts +210 -58
  1482. package/src/unstable/cli/internal/ansi.ts +13 -0
  1483. package/src/unstable/cli/internal/command.ts +17 -15
  1484. package/src/unstable/cli/internal/config.ts +3 -0
  1485. package/src/unstable/cli/internal/lexer.ts +11 -0
  1486. package/src/unstable/cluster/ClusterCron.ts +35 -1
  1487. package/src/unstable/cluster/ClusterError.ts +56 -7
  1488. package/src/unstable/cluster/ClusterMetrics.ts +39 -5
  1489. package/src/unstable/cluster/ClusterSchema.ts +61 -8
  1490. package/src/unstable/cluster/ClusterWorkflowEngine.ts +36 -3
  1491. package/src/unstable/cluster/DeliverAt.ts +39 -4
  1492. package/src/unstable/cluster/Entity.ts +110 -19
  1493. package/src/unstable/cluster/EntityAddress.ts +30 -2
  1494. package/src/unstable/cluster/EntityId.ts +18 -3
  1495. package/src/unstable/cluster/EntityProxy.ts +34 -2
  1496. package/src/unstable/cluster/EntityProxyServer.ts +44 -8
  1497. package/src/unstable/cluster/EntityResource.ts +43 -6
  1498. package/src/unstable/cluster/EntityType.ts +27 -3
  1499. package/src/unstable/cluster/Envelope.ts +128 -23
  1500. package/src/unstable/cluster/HttpRunner.ts +88 -13
  1501. package/src/unstable/cluster/K8sHttpClient.ts +49 -6
  1502. package/src/unstable/cluster/MachineId.ts +24 -3
  1503. package/src/unstable/cluster/Message.ts +102 -13
  1504. package/src/unstable/cluster/MessageStorage.ts +128 -22
  1505. package/src/unstable/cluster/Reply.ts +101 -12
  1506. package/src/unstable/cluster/Runner.ts +47 -17
  1507. package/src/unstable/cluster/RunnerAddress.ts +34 -2
  1508. package/src/unstable/cluster/RunnerHealth.ts +40 -12
  1509. package/src/unstable/cluster/RunnerServer.ts +31 -4
  1510. package/src/unstable/cluster/RunnerStorage.ts +42 -5
  1511. package/src/unstable/cluster/Runners.ts +73 -10
  1512. package/src/unstable/cluster/ShardId.ts +51 -5
  1513. package/src/unstable/cluster/Sharding.ts +35 -4
  1514. package/src/unstable/cluster/ShardingConfig.ts +76 -11
  1515. package/src/unstable/cluster/ShardingRegistrationEvent.ts +31 -7
  1516. package/src/unstable/cluster/SingleRunner.ts +23 -1
  1517. package/src/unstable/cluster/Singleton.ts +15 -1
  1518. package/src/unstable/cluster/SingletonAddress.ts +21 -1
  1519. package/src/unstable/cluster/Snowflake.ts +89 -19
  1520. package/src/unstable/cluster/SocketRunner.ts +29 -2
  1521. package/src/unstable/cluster/SqlMessageStorage.ts +27 -3
  1522. package/src/unstable/cluster/SqlRunnerStorage.ts +46 -7
  1523. package/src/unstable/cluster/TestRunner.ts +18 -1
  1524. package/src/unstable/cluster/internal/hash.ts +12 -0
  1525. package/src/unstable/devtools/DevTools.ts +26 -3
  1526. package/src/unstable/devtools/DevToolsClient.ts +32 -5
  1527. package/src/unstable/devtools/DevToolsSchema.ts +201 -44
  1528. package/src/unstable/devtools/DevToolsServer.ts +27 -2
  1529. package/src/unstable/encoding/Msgpack.ts +97 -12
  1530. package/src/unstable/encoding/Ndjson.ts +149 -21
  1531. package/src/unstable/encoding/Sse.ts +109 -18
  1532. package/src/unstable/eventlog/Event.ts +131 -30
  1533. package/src/unstable/eventlog/EventGroup.ts +50 -17
  1534. package/src/unstable/eventlog/EventJournal.ts +120 -20
  1535. package/src/unstable/eventlog/EventLog.ts +151 -31
  1536. package/src/unstable/eventlog/EventLogEncryption.ts +42 -6
  1537. package/src/unstable/eventlog/EventLogMessage.ts +92 -18
  1538. package/src/unstable/eventlog/EventLogRemote.ts +54 -8
  1539. package/src/unstable/eventlog/EventLogServer.ts +33 -3
  1540. package/src/unstable/eventlog/EventLogServerEncrypted.ts +52 -6
  1541. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +90 -16
  1542. package/src/unstable/eventlog/EventLogSessionAuth.ts +77 -15
  1543. package/src/unstable/eventlog/SqlEventJournal.ts +28 -2
  1544. package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +32 -3
  1545. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +28 -2
  1546. package/src/unstable/http/Cookies.ts +156 -77
  1547. package/src/unstable/http/Etag.ts +40 -7
  1548. package/src/unstable/http/FetchHttpClient.ts +33 -4
  1549. package/src/unstable/http/FindMyWay.ts +1 -1
  1550. package/src/unstable/http/Headers.ts +252 -50
  1551. package/src/unstable/http/HttpBody.ts +130 -28
  1552. package/src/unstable/http/HttpClient.ts +206 -97
  1553. package/src/unstable/http/HttpClientError.ts +80 -12
  1554. package/src/unstable/http/HttpClientRequest.ts +320 -102
  1555. package/src/unstable/http/HttpClientResponse.ts +59 -16
  1556. package/src/unstable/http/HttpEffect.ts +66 -18
  1557. package/src/unstable/http/HttpIncomingMessage.ts +47 -7
  1558. package/src/unstable/http/HttpMethod.ts +35 -5
  1559. package/src/unstable/http/HttpMiddleware.ts +63 -16
  1560. package/src/unstable/http/HttpPlatform.ts +35 -4
  1561. package/src/unstable/http/HttpRouter.ts +221 -57
  1562. package/src/unstable/http/HttpServer.ts +152 -23
  1563. package/src/unstable/http/HttpServerError.ts +90 -10
  1564. package/src/unstable/http/HttpServerRequest.ts +136 -32
  1565. package/src/unstable/http/HttpServerRespondable.ts +49 -6
  1566. package/src/unstable/http/HttpServerResponse.ts +395 -72
  1567. package/src/unstable/http/HttpStaticServer.ts +22 -4
  1568. package/src/unstable/http/HttpTraceContext.ts +53 -6
  1569. package/src/unstable/http/Multipart.ts +179 -29
  1570. package/src/unstable/http/Multipasta/HeadersParser.ts +1 -1
  1571. package/src/unstable/http/Multipasta/Node.ts +1 -1
  1572. package/src/unstable/http/Multipasta/Search.ts +1 -1
  1573. package/src/unstable/http/Multipasta/Web.ts +1 -1
  1574. package/src/unstable/http/Multipasta.ts +1 -1
  1575. package/src/unstable/http/Template.ts +53 -0
  1576. package/src/unstable/http/Url.ts +56 -42
  1577. package/src/unstable/http/UrlParams.ts +233 -49
  1578. package/src/unstable/httpapi/HttpApi.ts +49 -14
  1579. package/src/unstable/httpapi/HttpApiBuilder.ts +86 -20
  1580. package/src/unstable/httpapi/HttpApiClient.ts +80 -16
  1581. package/src/unstable/httpapi/HttpApiEndpoint.ts +238 -59
  1582. package/src/unstable/httpapi/HttpApiError.ts +100 -1
  1583. package/src/unstable/httpapi/HttpApiGroup.ts +87 -20
  1584. package/src/unstable/httpapi/HttpApiMiddleware.ts +113 -23
  1585. package/src/unstable/httpapi/HttpApiScalar.ts +38 -4
  1586. package/src/unstable/httpapi/HttpApiSchema.ts +67 -30
  1587. package/src/unstable/httpapi/HttpApiSecurity.ts +74 -17
  1588. package/src/unstable/httpapi/HttpApiSwagger.ts +24 -2
  1589. package/src/unstable/httpapi/HttpApiTest.ts +31 -3
  1590. package/src/unstable/httpapi/OpenApi.ts +115 -15
  1591. package/src/unstable/observability/Otlp.ts +33 -3
  1592. package/src/unstable/observability/OtlpExporter.ts +32 -1
  1593. package/src/unstable/observability/OtlpLogger.ts +31 -2
  1594. package/src/unstable/observability/OtlpMetrics.ts +37 -4
  1595. package/src/unstable/observability/OtlpResource.ts +68 -12
  1596. package/src/unstable/observability/OtlpSerialization.ts +28 -3
  1597. package/src/unstable/observability/OtlpTracer.ts +38 -2
  1598. package/src/unstable/observability/PrometheusMetrics.ts +32 -12
  1599. package/src/unstable/observability/index.ts +2 -1
  1600. package/src/unstable/persistence/KeyValueStore.ts +108 -28
  1601. package/src/unstable/persistence/Persistable.ts +76 -15
  1602. package/src/unstable/persistence/PersistedCache.ts +27 -2
  1603. package/src/unstable/persistence/PersistedQueue.ts +98 -16
  1604. package/src/unstable/persistence/Persistence.ts +97 -16
  1605. package/src/unstable/persistence/RateLimiter.ts +98 -22
  1606. package/src/unstable/persistence/Redis.ts +42 -5
  1607. package/src/unstable/process/ChildProcess.ts +100 -79
  1608. package/src/unstable/process/ChildProcessSpawner.ts +22 -11
  1609. package/src/unstable/process/index.ts +2 -1
  1610. package/src/unstable/reactivity/AsyncResult.ts +202 -61
  1611. package/src/unstable/reactivity/Atom.ts +597 -143
  1612. package/src/unstable/reactivity/AtomHttpApi.ts +41 -2
  1613. package/src/unstable/reactivity/AtomRef.ts +51 -7
  1614. package/src/unstable/reactivity/AtomRegistry.ts +141 -22
  1615. package/src/unstable/reactivity/AtomRpc.ts +36 -2
  1616. package/src/unstable/reactivity/Hydration.ts +45 -5
  1617. package/src/unstable/reactivity/Reactivity.ts +95 -13
  1618. package/src/unstable/rpc/Rpc.ts +255 -56
  1619. package/src/unstable/rpc/RpcClient.ts +108 -20
  1620. package/src/unstable/rpc/RpcClientError.ts +26 -2
  1621. package/src/unstable/rpc/RpcGroup.ts +51 -8
  1622. package/src/unstable/rpc/RpcMessage.ts +128 -32
  1623. package/src/unstable/rpc/RpcMiddleware.ts +100 -20
  1624. package/src/unstable/rpc/RpcSchema.ts +38 -4
  1625. package/src/unstable/rpc/RpcSerialization.ts +60 -13
  1626. package/src/unstable/rpc/RpcServer.ts +108 -25
  1627. package/src/unstable/rpc/RpcTest.ts +20 -1
  1628. package/src/unstable/rpc/RpcWorker.ts +42 -8
  1629. package/src/unstable/rpc/Utils.ts +31 -0
  1630. package/src/unstable/schema/Model.ts +148 -52
  1631. package/src/unstable/schema/VariantSchema.ts +104 -24
  1632. package/src/unstable/socket/Socket.ts +168 -35
  1633. package/src/unstable/socket/SocketServer.ts +58 -10
  1634. package/src/unstable/sql/Migrator.ts +57 -5
  1635. package/src/unstable/sql/SqlClient.ts +55 -2
  1636. package/src/unstable/sql/SqlConnection.ts +31 -0
  1637. package/src/unstable/sql/SqlError.ts +117 -0
  1638. package/src/unstable/sql/SqlModel.ts +26 -5
  1639. package/src/unstable/sql/SqlResolver.ts +56 -13
  1640. package/src/unstable/sql/SqlSchema.ts +29 -8
  1641. package/src/unstable/sql/SqlStream.ts +23 -0
  1642. package/src/unstable/sql/Statement.ts +141 -0
  1643. package/src/unstable/sql/index.ts +1 -1
  1644. package/src/unstable/workers/Transferable.ts +65 -13
  1645. package/src/unstable/workers/Worker.ts +60 -8
  1646. package/src/unstable/workers/WorkerError.ts +50 -9
  1647. package/src/unstable/workers/WorkerRunner.ts +32 -3
  1648. package/src/unstable/workers/index.ts +1 -1
  1649. package/src/unstable/workflow/Activity.ts +62 -11
  1650. package/src/unstable/workflow/DurableClock.ts +26 -3
  1651. package/src/unstable/workflow/DurableDeferred.ts +146 -31
  1652. package/src/unstable/workflow/DurableQueue.ts +366 -0
  1653. package/src/unstable/workflow/Workflow.ts +122 -32
  1654. package/src/unstable/workflow/WorkflowEngine.ts +40 -5
  1655. package/src/unstable/workflow/WorkflowProxy.ts +32 -2
  1656. package/src/unstable/workflow/WorkflowProxyServer.ts +40 -6
  1657. package/src/unstable/workflow/index.ts +5 -0
@@ -1,4 +1,27 @@
1
1
  /**
2
+ * The `ShardId` module models the address of a shard inside an Effect Cluster
3
+ * shard group. A shard id is made from a string `group` and numeric `id`, and
4
+ * the module gives that pair stable equality, hashing, primary-key behavior,
5
+ * schema support, and conversion to and from the `group:id` string form used by
6
+ * routing and storage boundaries.
7
+ *
8
+ * **Common tasks**
9
+ *
10
+ * - Create or reuse a cached shard identifier with {@link make}
11
+ * - Check runtime values with {@link isShardId}
12
+ * - Encode or decode shard identifiers with {@link ShardId}
13
+ * - Format for logs, persistence, or transport with {@link toString}
14
+ * - Parse encoded shard keys with {@link fromString} or {@link fromStringEncoded}
15
+ *
16
+ * **Gotchas**
17
+ *
18
+ * - Equality and hashing are based on the `group:id` representation, so both
19
+ * fields must match for two shard ids to be equal
20
+ * - Encoded strings are split at the last `:`; groups may contain colons, but
21
+ * ids must parse as numbers
22
+ * - This module identifies shards after a routing or hashing decision; it does
23
+ * not choose a shard for an arbitrary entity key
24
+ *
2
25
  * @since 4.0.0
3
26
  */
4
27
  import * as Equal from "../../Equal.ts";
@@ -7,8 +30,11 @@ import * as PrimaryKey from "../../PrimaryKey.ts";
7
30
  import * as S from "../../Schema.ts";
8
31
  declare const TypeId = "~effect/cluster/ShardId";
9
32
  /**
10
- * @since 4.0.0
33
+ * Identifier for a shard within a shard group, with equality, hashing, and primary
34
+ * key behavior based on the `group:id` string form.
35
+ *
11
36
  * @category Models
37
+ * @since 4.0.0
12
38
  */
13
39
  export interface ShardId extends Equal.Equal, Hash.Hash, PrimaryKey.PrimaryKey {
14
40
  readonly [TypeId]: typeof TypeId;
@@ -16,29 +42,44 @@ export interface ShardId extends Equal.Equal, Hash.Hash, PrimaryKey.PrimaryKey {
16
42
  readonly id: number;
17
43
  }
18
44
  /**
19
- * @since 4.0.0
45
+ * Returns `true` when the value carries the `ShardId` runtime marker.
46
+ *
20
47
  * @category Guards
48
+ * @since 4.0.0
21
49
  */
22
50
  export declare const isShardId: (u: unknown) => u is ShardId;
23
51
  /**
24
- * @since 4.0.0
52
+ * Schema for `ShardId` values encoded as `{ group, id }` objects and decoded via
53
+ * `make`.
54
+ *
25
55
  * @category Schema
56
+ * @since 4.0.0
26
57
  */
27
58
  export declare const ShardId: S.declare<ShardId, ShardId>;
28
59
  /**
29
- * @since 4.0.0
60
+ * Creates or reuses the cached `ShardId` for the specified shard group and numeric
61
+ * id.
62
+ *
30
63
  * @category Constructors
64
+ * @since 4.0.0
31
65
  */
32
66
  export declare const make: (group: string, id: number) => ShardId;
33
67
  /**
34
- * @since 4.0.0
68
+ * Formats a shard identifier as `group:id`.
69
+ *
35
70
  * @category Conversions
71
+ * @since 4.0.0
36
72
  */
37
73
  export declare const toString: (shardId: {
38
74
  readonly group: string;
39
75
  readonly id: number;
40
76
  }) => string;
41
77
  /**
78
+ * Parses a `group:id` string into plain shard id parts.
79
+ *
80
+ * Throws an `Error` when the string has no colon separator or the id segment is
81
+ * not numeric.
82
+ *
42
83
  * @since 4.0.0
43
84
  */
44
85
  export declare function fromStringEncoded(s: string): {
@@ -46,6 +87,11 @@ export declare function fromStringEncoded(s: string): {
46
87
  readonly id: number;
47
88
  };
48
89
  /**
90
+ * Parses a `group:id` string into a cached `ShardId`.
91
+ *
92
+ * Throws an `Error` when the string has no colon separator or the id segment is
93
+ * not numeric.
94
+ *
49
95
  * @since 4.0.0
50
96
  */
51
97
  export declare function fromString(s: string): ShardId;
@@ -1 +1 @@
1
- {"version":3,"file":"ShardId.d.ts","sourceRoot":"","sources":["../../../src/unstable/cluster/ShardId.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,IAAI,MAAM,eAAe,CAAA;AAErC,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,CAAC,MAAM,iBAAiB,CAAA;AAGpC,QAAA,MAAM,MAAM,4BAA4B,CAAA;AAExC;;;GAGG;AACH,MAAM,WAAW,OAAQ,SAAQ,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU;IAC5E,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAA;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACpB;AAED;;;GAGG;AACH,eAAO,MAAM,SAAS,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAAiC,CAAA;AAE7E;;;GAGG;AACH,eAAO,MAAM,OAAO,6BAYlB,CAAA;AAEF;;;GAGG;AACH,eAAO,MAAM,IAAI,GAAI,OAAO,MAAM,EAAE,IAAI,MAAM,KAAG,OAQhD,CAAA;AA2BD;;;GAGG;AACH,eAAO,MAAM,QAAQ,GAAI,SAAS;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACpB,KAAG,MAEH,CAAA;AACD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACpB,CAWA;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAG7C"}
1
+ {"version":3,"file":"ShardId.d.ts","sourceRoot":"","sources":["../../../src/unstable/cluster/ShardId.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,OAAO,KAAK,KAAK,MAAM,gBAAgB,CAAA;AACvC,OAAO,KAAK,IAAI,MAAM,eAAe,CAAA;AAErC,OAAO,KAAK,UAAU,MAAM,qBAAqB,CAAA;AACjD,OAAO,KAAK,CAAC,MAAM,iBAAiB,CAAA;AAGpC,QAAA,MAAM,MAAM,4BAA4B,CAAA;AAExC;;;;;;GAMG;AACH,MAAM,WAAW,OAAQ,SAAQ,KAAK,CAAC,KAAK,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,UAAU;IAC5E,QAAQ,CAAC,CAAC,MAAM,CAAC,EAAE,OAAO,MAAM,CAAA;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACpB;AAED;;;;;GAKG;AACH,eAAO,MAAM,SAAS,GAAI,GAAG,OAAO,KAAG,CAAC,IAAI,OAAiC,CAAA;AAE7E;;;;;;GAMG;AACH,eAAO,MAAM,OAAO,6BAYlB,CAAA;AAEF;;;;;;GAMG;AACH,eAAO,MAAM,IAAI,GAAI,OAAO,MAAM,EAAE,IAAI,MAAM,KAAG,OAQhD,CAAA;AA2BD;;;;;GAKG;AACH,eAAO,MAAM,QAAQ,GAAI,SAAS;IAChC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACpB,KAAG,MAEH,CAAA;AACD;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,MAAM,GAAG;IAC5C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAA;IACtB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;CACpB,CAWA;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAG7C"}
@@ -1,4 +1,27 @@
1
1
  /**
2
+ * The `ShardId` module models the address of a shard inside an Effect Cluster
3
+ * shard group. A shard id is made from a string `group` and numeric `id`, and
4
+ * the module gives that pair stable equality, hashing, primary-key behavior,
5
+ * schema support, and conversion to and from the `group:id` string form used by
6
+ * routing and storage boundaries.
7
+ *
8
+ * **Common tasks**
9
+ *
10
+ * - Create or reuse a cached shard identifier with {@link make}
11
+ * - Check runtime values with {@link isShardId}
12
+ * - Encode or decode shard identifiers with {@link ShardId}
13
+ * - Format for logs, persistence, or transport with {@link toString}
14
+ * - Parse encoded shard keys with {@link fromString} or {@link fromStringEncoded}
15
+ *
16
+ * **Gotchas**
17
+ *
18
+ * - Equality and hashing are based on the `group:id` representation, so both
19
+ * fields must match for two shard ids to be equal
20
+ * - Encoded strings are split at the last `:`; groups may contain colons, but
21
+ * ids must parse as numbers
22
+ * - This module identifies shards after a routing or hashing decision; it does
23
+ * not choose a shard for an arbitrary entity key
24
+ *
2
25
  * @since 4.0.0
3
26
  */
4
27
  import * as Equal from "../../Equal.js";
@@ -9,13 +32,18 @@ import * as S from "../../Schema.js";
9
32
  import * as Getter from "../../SchemaGetter.js";
10
33
  const TypeId = "~effect/cluster/ShardId";
11
34
  /**
12
- * @since 4.0.0
35
+ * Returns `true` when the value carries the `ShardId` runtime marker.
36
+ *
13
37
  * @category Guards
38
+ * @since 4.0.0
14
39
  */
15
40
  export const isShardId = u => hasProperty(u, TypeId);
16
41
  /**
17
- * @since 4.0.0
42
+ * Schema for `ShardId` values encoded as `{ group, id }` objects and decoded via
43
+ * `make`.
44
+ *
18
45
  * @category Schema
46
+ * @since 4.0.0
19
47
  */
20
48
  export const ShardId = /*#__PURE__*/S.declare(isShardId, {
21
49
  toCodecJson: () => S.link()(S.Struct({
@@ -30,8 +58,11 @@ export const ShardId = /*#__PURE__*/S.declare(isShardId, {
30
58
  })
31
59
  });
32
60
  /**
33
- * @since 4.0.0
61
+ * Creates or reuses the cached `ShardId` for the specified shard group and numeric
62
+ * id.
63
+ *
34
64
  * @category Constructors
65
+ * @since 4.0.0
35
66
  */
36
67
  export const make = (group, id) => {
37
68
  const key = `${group}:${id}`;
@@ -65,13 +96,20 @@ const ShardIdProto = {
65
96
  }
66
97
  };
67
98
  /**
68
- * @since 4.0.0
99
+ * Formats a shard identifier as `group:id`.
100
+ *
69
101
  * @category Conversions
102
+ * @since 4.0.0
70
103
  */
71
104
  export const toString = shardId => {
72
105
  return `${shardId.group}:${shardId.id}`;
73
106
  };
74
107
  /**
108
+ * Parses a `group:id` string into plain shard id parts.
109
+ *
110
+ * Throws an `Error` when the string has no colon separator or the id segment is
111
+ * not numeric.
112
+ *
75
113
  * @since 4.0.0
76
114
  */
77
115
  export function fromStringEncoded(s) {
@@ -90,6 +128,11 @@ export function fromStringEncoded(s) {
90
128
  };
91
129
  }
92
130
  /**
131
+ * Parses a `group:id` string into a cached `ShardId`.
132
+ *
133
+ * Throws an `Error` when the string has no colon separator or the id segment is
134
+ * not numeric.
135
+ *
93
136
  * @since 4.0.0
94
137
  */
95
138
  export function fromString(s) {
@@ -1 +1 @@
1
- {"version":3,"file":"ShardId.js","names":["Equal","Hash","hasProperty","PrimaryKey","S","Getter","TypeId","isShardId","u","ShardId","declare","toCodecJson","link","Struct","group","String","id","Number","decode","transform","make","encode","passthrough","key","shardId","shardIdCache","get","makeProto","set","Map","self","Object","create","ShardIdProto","symbol","that","string","toString","fromStringEncoded","s","index","lastIndexOf","Error","substring","isNaN","fromString","encoded"],"sources":["../../../src/unstable/cluster/ShardId.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"ShardId.js","names":["Equal","Hash","hasProperty","PrimaryKey","S","Getter","TypeId","isShardId","u","ShardId","declare","toCodecJson","link","Struct","group","String","id","Number","decode","transform","make","encode","passthrough","key","shardId","shardIdCache","get","makeProto","set","Map","self","Object","create","ShardIdProto","symbol","that","string","toString","fromStringEncoded","s","index","lastIndexOf","Error","substring","isNaN","fromString","encoded"],"sources":["../../../src/unstable/cluster/ShardId.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -93,14 +93,22 @@ declare const Sharding_base: Context.ServiceClass<Sharding, "effect/cluster/Shar
93
93
  readonly activeEntityCount: Effect.Effect<number>;
94
94
  }>;
95
95
  /**
96
- * @since 4.0.0
96
+ * Cluster sharding service for registering entities and singletons, routing
97
+ * messages to owned shards, generating runner-local snowflake ids, and polling
98
+ * storage for persisted work.
99
+ *
97
100
  * @category models
101
+ * @since 4.0.0
98
102
  */
99
103
  export declare class Sharding extends Sharding_base {
100
104
  }
101
105
  /**
102
- * @since 4.0.0
106
+ * Layer that constructs the `Sharding` service from sharding configuration,
107
+ * runner communication, message storage, runner storage, runner health, the
108
+ * snowflake generator, and the entity reaper.
109
+ *
103
110
  * @category layers
111
+ * @since 4.0.0
104
112
  */
105
113
  export declare const layer: Layer.Layer<Sharding, never, ShardingConfig | Runners | MessageStorage.MessageStorage | RunnerStorage | RunnerHealth.RunnerHealth>;
106
114
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Sharding.d.ts","sourceRoot":"","sources":["../../../src/unstable/cluster/Sharding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Sharding.d.ts","sourceRoot":"","sources":["../../../src/unstable/cluster/Sharding.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,26 @@
1
1
  /**
2
+ * The `Sharding` module coordinates cluster-wide placement and delivery for
3
+ * entities and singletons. It hashes entity ids into shard ids, tracks which
4
+ * runner owns each shard, acquires local shard locks, and routes RPC messages
5
+ * to the runner that is responsible for the addressed entity.
6
+ *
7
+ * Use this module when building clustered services that need location
8
+ * transparency for stateful entities, singleton workloads that should run once
9
+ * per shard group, or durable message processing backed by cluster storage.
10
+ * Registered entity handlers are started on demand for shards owned by the
11
+ * current runner, while clients produced by {@link Sharding.makeClient} route
12
+ * requests through the sharding service instead of calling handlers directly.
13
+ *
14
+ * **Gotchas**
15
+ *
16
+ * - Shard assignment and shard acquisition are distinct: a runner may be
17
+ * assigned a shard before it has acquired the storage lock for that shard.
18
+ * - Routing depends on the entity shard group and the configured shard count,
19
+ * so changing either value affects where entity ids are placed.
20
+ * - Persisted messages are only read and dispatched for shards currently owned
21
+ * by the local runner; shutdown and runner health changes can temporarily
22
+ * move work between runners.
23
+ *
2
24
  * @since 4.0.0
3
25
  */
4
26
  import * as Arr from "../../Array.js";
@@ -47,17 +69,22 @@ import * as RunnerHealth from "./RunnerHealth.js";
47
69
  import { Runners } from "./Runners.js";
48
70
  import { RunnerStorage } from "./RunnerStorage.js";
49
71
  import { make as makeShardId } from "./ShardId.js";
50
- import { ShardingConfig } from "./ShardingConfig.js";
72
+ import { shardGroupConfig, ShardingConfig } from "./ShardingConfig.js";
51
73
  import { EntityRegistered, SingletonRegistered } from "./ShardingRegistrationEvent.js";
52
74
  import { SingletonAddress } from "./SingletonAddress.js";
53
75
  import * as Snowflake from "./Snowflake.js";
54
76
  /**
55
- * @since 4.0.0
77
+ * Cluster sharding service for registering entities and singletons, routing
78
+ * messages to owned shards, generating runner-local snowflake ids, and polling
79
+ * storage for persisted work.
80
+ *
56
81
  * @category models
82
+ * @since 4.0.0
57
83
  */
58
84
  export class Sharding extends /*#__PURE__*/Context.Service()("effect/cluster/Sharding") {}
59
85
  const make = /*#__PURE__*/Effect.gen(function* () {
60
86
  const config = yield* ShardingConfig;
87
+ const shardGroups = shardGroupConfig(config);
61
88
  const getRunnerAddress = () => Option.getOrUndefined(config.runnerAddress);
62
89
  const clock = yield* Clock;
63
90
  const runnersService = yield* Runners;
@@ -559,7 +586,7 @@ const make = /*#__PURE__*/Effect.gen(function* () {
559
586
  // entities that are shutting down).
560
587
  const selfRunner = initialRunnerAddress ? new Runner({
561
588
  address: initialRunnerAddress,
562
- groups: config.shardGroups,
589
+ groups: Array.from(shardGroups.assigned),
563
590
  weight: config.runnerShardWeight
564
591
  }) : undefined;
565
592
  let allRunners = MutableHashMap.empty();
@@ -993,8 +1020,12 @@ const make = /*#__PURE__*/Effect.gen(function* () {
993
1020
  return sharding;
994
1021
  });
995
1022
  /**
996
- * @since 4.0.0
1023
+ * Layer that constructs the `Sharding` service from sharding configuration,
1024
+ * runner communication, message storage, runner storage, runner health, the
1025
+ * snowflake generator, and the entity reaper.
1026
+ *
997
1027
  * @category layers
1028
+ * @since 4.0.0
998
1029
  */
999
1030
  export const layer = /*#__PURE__*/Layer.effect(Sharding)(make).pipe(/*#__PURE__*/Layer.provide([Snowflake.layerGenerator, EntityReaper.layer]));
1000
1031
  // Utilities
@@ -1 +1 @@
1
- {"version":3,"file":"Sharding.js","names":["Arr","Cause","Clock","Context","Duration","Effect","Equal","Fiber","FiberMap","constant","flow","HashRing","Latch","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","PubSub","CurrentLogAnnotations","Result","Schedule","Scope","Semaphore","Stream","RpcClient","RequestId","AlreadyProcessingMessage","EntityNotAssignedToRunner","ClusterMetrics","Persisted","ClusterSchema","make","makeEntityAddress","makeEntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runner","RunnerHealth","Runners","RunnerStorage","makeShardId","ShardingConfig","EntityRegistered","SingletonRegistered","SingletonAddress","Snowflake","Sharding","Service","gen","config","getRunnerAddress","getOrUndefined","runnerAddress","clock","runnersService","runnerHealth","snowflakeGen","Generator","shardingScope","scope","isShutdown","services","omit","context","runFork","runForkWith","runIn","storage","storageEnabled","noop","runnerStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","undefined","equals","getShardId","entityId","group","id","Math","abs","shardsPerGroup","isEntityOnLocalShards","has","shardId","addFinalizer","logDebug","pipe","annotateLogs","module","releasingShards","initialRunnerAddress","selfAddress","addFinalizerExit","ignore","releaseAll","releaseShardsMap","releaseShard","fnUntraced","fibers","state","values","status","push","forkScoped","manager","interruptShard","joinAll","release","remove","unregisterShardReplyHandlers","sandbox","effect","tapError","cause","fiber","runner","eventually","run","onlyIfMissing","releaseShards","hasUnsafe","openUnsafe","await","closeUnsafe","add","size","forkIn","syncSingletons","unacquiredShards","oacquired","acquire","timeoutOption","shardLockRefreshInterval","isNone","acquired","value","resetShards","length","storageReadLatch","open","shards","updateUnsafe","BigInt","sleep","catchCause","logWarning","repeat","spaced","entityMessagePollInterval","suspend","refresh","flatMap","includes","i","void","retry","times","schedule","logError","andThen","clearSelfShards","fixed","forever","delay","sync","clear","openStorageReadLatch","asVoid","storageReadLock","makeUnsafe","withStorageReadLock","withPermits","entityRegistrationTimeoutMillis","toMillis","fromInputUnsafe","entityRegistrationTimeout","storageStartMillis","currentTimeMillisUnsafe","index","messages","removableNotifications","Set","resetAddresses","processMessages","whileLoop","while","step","body","send","message","envelope","get","entityType","sinceStart","die","Error","isProcessing","isProcessingFor","_tag","pendingNotifications","requestId","entry","delete","resume","resumptionState","entityResumptionState","isSome","unprocessed","interrupts","set","error","findError","isFailure","hasInterrupts","saveReply","ReplyWithContext","fromDefect","nextUnsafe","defect","squash","success","resumeEntityFromStorage","take","forEach","clearProcessed","unprocessedMessages","fail","resetAddress","scoped","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","unprocessedMessagesById","sendWithRetry","catchTags","interrupt","MailboxFull","sendRetryInterval","e","entity","sendLocal","loop","waitForEntityManager","simulateRemoteSerialization","notifyLocal","discard","options","isLocal","notify","excludeReplies","envelopeId","waitUntilRead","callback","prevResume","storageOnly","sendOutgoing","retries","catchFilter","isPersisted","annotations","rpc","maybeRunner","runnerIsLocal","succeed","reset","matchCause","clearReplies","onSuccess","onFailure","selfRunner","groups","shardGroups","weight","runnerShardWeight","allRunners","healthyRunnerCount","runners","runnersHealthy","hashRings","nextRunners","healthyRunners","withTimeout","timeout","seconds","current","machineId","register","setMachineId","getRunners","changed","healthy","wasHealthy","j","ring","_","onRunnerUnavailable","prevRunners","newAssignments","getShards","shard","setRunnerHealth","refreshAssignmentsInterval","clientRequests","clients","client","makeNoSerialization","protocol","spanPrefix","type","disableTracing","ClientTracingEnabled","supportsAck","generateRequestId","flatten","onFromClient","getUnsafe","ClientAddressTag","getCurrent","requests","tag","respond","makeRequest","payload","headers","traceId","spanId","sampled","OutgoingRequest","lastReceivedReply","none","reply","Dynamic","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingEnvelope","AckChunk","replyId","lastChunkId","isUninterruptibleForClient","isTransientInterrupt","interruptors","some","Interrupt","withFiber","getShardGroup","clientFn","merge","proxyClient","Proxy","p","target","makeClient","_reply","clientId","exit","singletons","singletonFibers","withSingletonLock","registerSingleton","name","shardGroup","map","wrappedRun","never","provideService","provideContext","orDie","interruptible","publish","running","shouldBeRunning","fiberId","reaper","entityManagerLatches","registerEntity","build","sharding","mutate","preemptiveShutdown","shutdown","latch","checkRunner","isAlive","concurrency","runnerHealthCheckInterval","unregister","activeEntityCount","count","of","hasShardId","getSnowflake","pollStorage","layer","provide","layerGenerator"],"sources":["../../../src/unstable/cluster/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Sharding.js","names":["Arr","Cause","Clock","Context","Duration","Effect","Equal","Fiber","FiberMap","constant","flow","HashRing","Latch","Layer","MutableHashMap","MutableHashSet","MutableRef","Option","PubSub","CurrentLogAnnotations","Result","Schedule","Scope","Semaphore","Stream","RpcClient","RequestId","AlreadyProcessingMessage","EntityNotAssignedToRunner","ClusterMetrics","Persisted","ClusterSchema","make","makeEntityAddress","makeEntityId","Envelope","EntityManager","EntityReaper","hashString","internalInterruptors","ResourceMap","Message","MessageStorage","Reply","Runner","RunnerHealth","Runners","RunnerStorage","makeShardId","shardGroupConfig","ShardingConfig","EntityRegistered","SingletonRegistered","SingletonAddress","Snowflake","Sharding","Service","gen","config","shardGroups","getRunnerAddress","getOrUndefined","runnerAddress","clock","runnersService","runnerHealth","snowflakeGen","Generator","shardingScope","scope","isShutdown","services","omit","context","runFork","runForkWith","runIn","storage","storageEnabled","noop","runnerStorage","entityManagers","Map","shardAssignments","empty","selfShards","acquiredShards","activeShardsLatch","events","unbounded","getRegistrationEvents","fromPubSub","isLocalRunner","address","undefined","equals","getShardId","entityId","group","id","Math","abs","shardsPerGroup","isEntityOnLocalShards","has","shardId","addFinalizer","logDebug","pipe","annotateLogs","module","releasingShards","initialRunnerAddress","selfAddress","addFinalizerExit","ignore","releaseAll","releaseShardsMap","releaseShard","fnUntraced","fibers","state","values","status","push","forkScoped","manager","interruptShard","joinAll","release","remove","unregisterShardReplyHandlers","sandbox","effect","tapError","cause","fiber","runner","eventually","run","onlyIfMissing","releaseShards","hasUnsafe","openUnsafe","await","closeUnsafe","add","size","forkIn","syncSingletons","unacquiredShards","oacquired","acquire","timeoutOption","shardLockRefreshInterval","isNone","acquired","value","resetShards","length","storageReadLatch","open","shards","updateUnsafe","BigInt","sleep","catchCause","logWarning","repeat","spaced","entityMessagePollInterval","suspend","refresh","flatMap","includes","i","void","retry","times","schedule","logError","andThen","clearSelfShards","fixed","forever","delay","sync","clear","openStorageReadLatch","asVoid","storageReadLock","makeUnsafe","withStorageReadLock","withPermits","entityRegistrationTimeoutMillis","toMillis","fromInputUnsafe","entityRegistrationTimeout","storageStartMillis","currentTimeMillisUnsafe","index","messages","removableNotifications","Set","resetAddresses","processMessages","whileLoop","while","step","body","send","message","envelope","get","entityType","sinceStart","die","Error","isProcessing","isProcessingFor","_tag","pendingNotifications","requestId","entry","delete","resume","resumptionState","entityResumptionState","isSome","unprocessed","interrupts","set","error","findError","isFailure","hasInterrupts","saveReply","ReplyWithContext","fromDefect","nextUnsafe","defect","squash","success","resumeEntityFromStorage","take","forEach","clearProcessed","unprocessedMessages","fail","resetAddress","scoped","ensuring","lastReceivedMessage","resumeEntityFromStorageImpl","getOrThrow","done","messageIds","unprocessedMessagesById","sendWithRetry","catchTags","interrupt","MailboxFull","sendRetryInterval","e","entity","sendLocal","loop","waitForEntityManager","simulateRemoteSerialization","notifyLocal","discard","options","isLocal","notify","excludeReplies","envelopeId","waitUntilRead","callback","prevResume","storageOnly","sendOutgoing","retries","catchFilter","isPersisted","annotations","rpc","maybeRunner","runnerIsLocal","succeed","reset","matchCause","clearReplies","onSuccess","onFailure","selfRunner","groups","Array","from","assigned","weight","runnerShardWeight","allRunners","healthyRunnerCount","runners","runnersHealthy","hashRings","nextRunners","healthyRunners","withTimeout","timeout","seconds","current","machineId","register","setMachineId","getRunners","changed","healthy","wasHealthy","j","ring","_","onRunnerUnavailable","prevRunners","newAssignments","getShards","shard","setRunnerHealth","refreshAssignmentsInterval","clientRequests","clients","client","makeNoSerialization","protocol","spanPrefix","type","disableTracing","ClientTracingEnabled","supportsAck","generateRequestId","flatten","onFromClient","getUnsafe","ClientAddressTag","getCurrent","requests","tag","respond","makeRequest","payload","headers","traceId","spanId","sampled","OutgoingRequest","lastReceivedReply","none","reply","Dynamic","currentContext","makeClientRespond","write","clientRespondDiscard","OutgoingEnvelope","AckChunk","replyId","lastChunkId","isUninterruptibleForClient","isTransientInterrupt","interruptors","some","Interrupt","withFiber","getShardGroup","clientFn","merge","proxyClient","Proxy","p","target","makeClient","_reply","clientId","exit","singletons","singletonFibers","withSingletonLock","registerSingleton","name","shardGroup","map","wrappedRun","never","provideService","provideContext","orDie","interruptible","publish","running","shouldBeRunning","fiberId","reaper","entityManagerLatches","registerEntity","build","sharding","mutate","preemptiveShutdown","shutdown","latch","checkRunner","isAlive","concurrency","runnerHealthCheckInterval","unregister","activeEntityCount","count","of","hasShardId","getSnowflake","pollStorage","layer","provide","layerGenerator"],"sources":["../../../src/unstable/cluster/Sharding.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}