effect 4.0.1 → 4.0.3

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 (1085) hide show
  1. package/ai-docs/package.json +2 -2
  2. package/ai-docs/tsconfig.json +2 -1
  3. package/dist/Array.d.ts +339 -0
  4. package/dist/Array.d.ts.map +1 -1
  5. package/dist/Array.js +143 -3
  6. package/dist/Array.js.map +1 -1
  7. package/dist/BigDecimal.d.ts +88 -0
  8. package/dist/BigDecimal.d.ts.map +1 -1
  9. package/dist/BigDecimal.js +44 -0
  10. package/dist/BigDecimal.js.map +1 -1
  11. package/dist/BigInt.d.ts +68 -0
  12. package/dist/BigInt.d.ts.map +1 -1
  13. package/dist/BigInt.js +36 -0
  14. package/dist/BigInt.js.map +1 -1
  15. package/dist/Boolean.d.ts +34 -0
  16. package/dist/Boolean.d.ts.map +1 -1
  17. package/dist/Boolean.js +18 -0
  18. package/dist/Boolean.js.map +1 -1
  19. package/dist/Brand.d.ts +9 -0
  20. package/dist/Brand.d.ts.map +1 -1
  21. package/dist/Brand.js +6 -0
  22. package/dist/Brand.js.map +1 -1
  23. package/dist/ByteSize.d.ts +86 -0
  24. package/dist/ByteSize.d.ts.map +1 -1
  25. package/dist/ByteSize.js +51 -0
  26. package/dist/ByteSize.js.map +1 -1
  27. package/dist/Cache.d.ts +38 -1
  28. package/dist/Cache.d.ts.map +1 -1
  29. package/dist/Cache.js +27 -7
  30. package/dist/Cache.js.map +1 -1
  31. package/dist/Cause.d.ts +82 -0
  32. package/dist/Cause.d.ts.map +1 -1
  33. package/dist/Cause.js +60 -0
  34. package/dist/Cause.js.map +1 -1
  35. package/dist/Channel.d.ts +327 -4
  36. package/dist/Channel.d.ts.map +1 -1
  37. package/dist/Channel.js +168 -8
  38. package/dist/Channel.js.map +1 -1
  39. package/dist/ChannelSchema.d.ts +11 -0
  40. package/dist/ChannelSchema.d.ts.map +1 -1
  41. package/dist/ChannelSchema.js +6 -0
  42. package/dist/ChannelSchema.js.map +1 -1
  43. package/dist/Chunk.d.ts +192 -0
  44. package/dist/Chunk.d.ts.map +1 -1
  45. package/dist/Chunk.js +78 -0
  46. package/dist/Chunk.js.map +1 -1
  47. package/dist/Clock.d.ts +7 -0
  48. package/dist/Clock.d.ts.map +1 -1
  49. package/dist/Clock.js +5 -0
  50. package/dist/Clock.js.map +1 -1
  51. package/dist/Combiner.d.ts +10 -0
  52. package/dist/Combiner.d.ts.map +1 -1
  53. package/dist/Combiner.js +8 -0
  54. package/dist/Combiner.js.map +1 -1
  55. package/dist/Config.d.ts +52 -12
  56. package/dist/Config.d.ts.map +1 -1
  57. package/dist/Config.js +55 -5
  58. package/dist/Config.js.map +1 -1
  59. package/dist/ConfigProvider.d.ts +28 -0
  60. package/dist/ConfigProvider.d.ts.map +1 -1
  61. package/dist/ConfigProvider.js +19 -0
  62. package/dist/ConfigProvider.js.map +1 -1
  63. package/dist/Console.d.ts +22 -0
  64. package/dist/Console.d.ts.map +1 -1
  65. package/dist/Console.js +20 -0
  66. package/dist/Console.js.map +1 -1
  67. package/dist/Context.d.ts +50 -0
  68. package/dist/Context.d.ts.map +1 -1
  69. package/dist/Context.js +24 -3
  70. package/dist/Context.js.map +1 -1
  71. package/dist/Cron.d.ts +16 -0
  72. package/dist/Cron.d.ts.map +1 -1
  73. package/dist/Cron.js +26 -1
  74. package/dist/Cron.js.map +1 -1
  75. package/dist/Crypto.d.ts +38 -5
  76. package/dist/Crypto.d.ts.map +1 -1
  77. package/dist/Crypto.js +11 -2
  78. package/dist/Crypto.js.map +1 -1
  79. package/dist/Data.d.ts +13 -0
  80. package/dist/Data.d.ts.map +1 -1
  81. package/dist/Data.js +5 -0
  82. package/dist/Data.js.map +1 -1
  83. package/dist/DateTime.d.ts +180 -6
  84. package/dist/DateTime.d.ts.map +1 -1
  85. package/dist/DateTime.js +98 -6
  86. package/dist/DateTime.js.map +1 -1
  87. package/dist/Deferred.d.ts +51 -0
  88. package/dist/Deferred.d.ts.map +1 -1
  89. package/dist/Deferred.js +22 -0
  90. package/dist/Deferred.js.map +1 -1
  91. package/dist/Differ.d.ts +2 -0
  92. package/dist/Differ.d.ts.map +1 -1
  93. package/dist/Differ.js +1 -0
  94. package/dist/Duration.d.ts +96 -6
  95. package/dist/Duration.d.ts.map +1 -1
  96. package/dist/Duration.js +80 -8
  97. package/dist/Duration.js.map +1 -1
  98. package/dist/Effect.d.ts +527 -0
  99. package/dist/Effect.d.ts.map +1 -1
  100. package/dist/Effect.js +240 -5
  101. package/dist/Effect.js.map +1 -1
  102. package/dist/Effectable.d.ts +4 -0
  103. package/dist/Effectable.d.ts.map +1 -1
  104. package/dist/Effectable.js +3 -0
  105. package/dist/Effectable.js.map +1 -1
  106. package/dist/Equal.d.ts +8 -0
  107. package/dist/Equal.d.ts.map +1 -1
  108. package/dist/Equal.js +9 -1
  109. package/dist/Equal.js.map +1 -1
  110. package/dist/Equivalence.d.ts +21 -0
  111. package/dist/Equivalence.d.ts.map +1 -1
  112. package/dist/Equivalence.js +16 -0
  113. package/dist/Equivalence.js.map +1 -1
  114. package/dist/ErrorReporter.d.ts +36 -0
  115. package/dist/ErrorReporter.d.ts.map +1 -1
  116. package/dist/ErrorReporter.js +11 -0
  117. package/dist/ErrorReporter.js.map +1 -1
  118. package/dist/ExecutionPlan.d.ts +49 -8
  119. package/dist/ExecutionPlan.d.ts.map +1 -1
  120. package/dist/ExecutionPlan.js +7 -0
  121. package/dist/ExecutionPlan.js.map +1 -1
  122. package/dist/Exit.d.ts +40 -0
  123. package/dist/Exit.d.ts.map +1 -1
  124. package/dist/Exit.js +27 -0
  125. package/dist/Exit.js.map +1 -1
  126. package/dist/Fiber.d.ts +20 -0
  127. package/dist/Fiber.d.ts.map +1 -1
  128. package/dist/Fiber.js +11 -0
  129. package/dist/Fiber.js.map +1 -1
  130. package/dist/FiberHandle.d.ts +21 -0
  131. package/dist/FiberHandle.d.ts.map +1 -1
  132. package/dist/FiberHandle.js +21 -4
  133. package/dist/FiberHandle.js.map +1 -1
  134. package/dist/FiberMap.d.ts +35 -0
  135. package/dist/FiberMap.d.ts.map +1 -1
  136. package/dist/FiberMap.js +19 -0
  137. package/dist/FiberMap.js.map +1 -1
  138. package/dist/FiberSet.d.ts +20 -0
  139. package/dist/FiberSet.d.ts.map +1 -1
  140. package/dist/FiberSet.js +14 -0
  141. package/dist/FiberSet.js.map +1 -1
  142. package/dist/FileSystem.d.ts +59 -2
  143. package/dist/FileSystem.d.ts.map +1 -1
  144. package/dist/FileSystem.js +8 -0
  145. package/dist/FileSystem.js.map +1 -1
  146. package/dist/Filter.d.ts +55 -0
  147. package/dist/Filter.d.ts.map +1 -1
  148. package/dist/Filter.js +28 -0
  149. package/dist/Filter.js.map +1 -1
  150. package/dist/Formatter.d.ts +3 -0
  151. package/dist/Formatter.d.ts.map +1 -1
  152. package/dist/Formatter.js +39 -1
  153. package/dist/Formatter.js.map +1 -1
  154. package/dist/Function.d.ts +30 -0
  155. package/dist/Function.d.ts.map +1 -1
  156. package/dist/Function.js +20 -0
  157. package/dist/Function.js.map +1 -1
  158. package/dist/Graph.d.ts +247 -12
  159. package/dist/Graph.d.ts.map +1 -1
  160. package/dist/Graph.js +149 -28
  161. package/dist/Graph.js.map +1 -1
  162. package/dist/HKT.d.ts +5 -0
  163. package/dist/HKT.d.ts.map +1 -1
  164. package/dist/Hash.d.ts +14 -0
  165. package/dist/Hash.d.ts.map +1 -1
  166. package/dist/Hash.js +12 -0
  167. package/dist/Hash.js.map +1 -1
  168. package/dist/HashMap.d.ts +91 -0
  169. package/dist/HashMap.d.ts.map +1 -1
  170. package/dist/HashMap.js +39 -0
  171. package/dist/HashMap.js.map +1 -1
  172. package/dist/HashRing.d.ts +17 -0
  173. package/dist/HashRing.d.ts.map +1 -1
  174. package/dist/HashRing.js +9 -0
  175. package/dist/HashRing.js.map +1 -1
  176. package/dist/HashSet.d.ts +49 -0
  177. package/dist/HashSet.d.ts.map +1 -1
  178. package/dist/HashSet.js +19 -0
  179. package/dist/HashSet.js.map +1 -1
  180. package/dist/Inspectable.d.ts +7 -0
  181. package/dist/Inspectable.d.ts.map +1 -1
  182. package/dist/Inspectable.js +6 -0
  183. package/dist/Inspectable.js.map +1 -1
  184. package/dist/Iterable.d.ts +127 -0
  185. package/dist/Iterable.d.ts.map +1 -1
  186. package/dist/Iterable.js +51 -0
  187. package/dist/Iterable.js.map +1 -1
  188. package/dist/JsonPatch.d.ts +4 -0
  189. package/dist/JsonPatch.d.ts.map +1 -1
  190. package/dist/JsonPatch.js +3 -0
  191. package/dist/JsonPatch.js.map +1 -1
  192. package/dist/JsonPointer.d.ts +5 -0
  193. package/dist/JsonPointer.d.ts.map +1 -1
  194. package/dist/JsonPointer.js +5 -0
  195. package/dist/JsonPointer.js.map +1 -1
  196. package/dist/JsonSchema.d.ts +16 -0
  197. package/dist/JsonSchema.d.ts.map +1 -1
  198. package/dist/JsonSchema.js +11 -0
  199. package/dist/JsonSchema.js.map +1 -1
  200. package/dist/Latch.d.ts +14 -0
  201. package/dist/Latch.d.ts.map +1 -1
  202. package/dist/Latch.js +10 -0
  203. package/dist/Latch.js.map +1 -1
  204. package/dist/Layer.d.ts +100 -0
  205. package/dist/Layer.d.ts.map +1 -1
  206. package/dist/Layer.js +45 -1
  207. package/dist/Layer.js.map +1 -1
  208. package/dist/LayerMap.d.ts +7 -0
  209. package/dist/LayerMap.d.ts.map +1 -1
  210. package/dist/LayerMap.js +4 -0
  211. package/dist/LayerMap.js.map +1 -1
  212. package/dist/LayerRef.d.ts +5 -0
  213. package/dist/LayerRef.d.ts.map +1 -1
  214. package/dist/LayerRef.js +3 -0
  215. package/dist/LayerRef.js.map +1 -1
  216. package/dist/LogLevel.d.ts +20 -0
  217. package/dist/LogLevel.d.ts.map +1 -1
  218. package/dist/LogLevel.js +9 -0
  219. package/dist/LogLevel.js.map +1 -1
  220. package/dist/Logger.d.ts +25 -0
  221. package/dist/Logger.d.ts.map +1 -1
  222. package/dist/Logger.js +30 -4
  223. package/dist/Logger.js.map +1 -1
  224. package/dist/ManagedRuntime.d.ts +5 -0
  225. package/dist/ManagedRuntime.d.ts.map +1 -1
  226. package/dist/ManagedRuntime.js +9 -1
  227. package/dist/ManagedRuntime.js.map +1 -1
  228. package/dist/Match.d.ts +51 -0
  229. package/dist/Match.d.ts.map +1 -1
  230. package/dist/Match.js +39 -0
  231. package/dist/Match.js.map +1 -1
  232. package/dist/Metric.d.ts +59 -0
  233. package/dist/Metric.d.ts.map +1 -1
  234. package/dist/Metric.js +31 -0
  235. package/dist/Metric.js.map +1 -1
  236. package/dist/MutableHashMap.d.ts +32 -0
  237. package/dist/MutableHashMap.d.ts.map +1 -1
  238. package/dist/MutableHashMap.js +16 -0
  239. package/dist/MutableHashMap.js.map +1 -1
  240. package/dist/MutableHashSet.d.ts +16 -0
  241. package/dist/MutableHashSet.d.ts.map +1 -1
  242. package/dist/MutableHashSet.js +10 -0
  243. package/dist/MutableHashSet.js.map +1 -1
  244. package/dist/MutableList.d.ts +20 -0
  245. package/dist/MutableList.d.ts.map +1 -1
  246. package/dist/MutableList.js +18 -0
  247. package/dist/MutableList.js.map +1 -1
  248. package/dist/MutableRef.d.ts +31 -0
  249. package/dist/MutableRef.d.ts.map +1 -1
  250. package/dist/MutableRef.js +17 -0
  251. package/dist/MutableRef.js.map +1 -1
  252. package/dist/Newtype.d.ts +9 -0
  253. package/dist/Newtype.d.ts.map +1 -1
  254. package/dist/Newtype.js +6 -0
  255. package/dist/Newtype.js.map +1 -1
  256. package/dist/NonEmptyIterable.d.ts +4 -0
  257. package/dist/NonEmptyIterable.d.ts.map +1 -1
  258. package/dist/NonEmptyIterable.js +2 -0
  259. package/dist/NonEmptyIterable.js.map +1 -1
  260. package/dist/Number.d.ts +61 -0
  261. package/dist/Number.d.ts.map +1 -1
  262. package/dist/Number.js +31 -0
  263. package/dist/Number.js.map +1 -1
  264. package/dist/Optic.d.ts +41 -0
  265. package/dist/Optic.d.ts.map +1 -1
  266. package/dist/Optic.js +20 -0
  267. package/dist/Optic.js.map +1 -1
  268. package/dist/Option.d.ts +134 -0
  269. package/dist/Option.d.ts.map +1 -1
  270. package/dist/Option.js +61 -0
  271. package/dist/Option.js.map +1 -1
  272. package/dist/Order.d.ts +29 -0
  273. package/dist/Order.d.ts.map +1 -1
  274. package/dist/Order.js +24 -0
  275. package/dist/Order.js.map +1 -1
  276. package/dist/Ordering.d.ts +7 -0
  277. package/dist/Ordering.d.ts.map +1 -1
  278. package/dist/Ordering.js +3 -0
  279. package/dist/Ordering.js.map +1 -1
  280. package/dist/PartitionedSemaphore.d.ts +24 -0
  281. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  282. package/dist/PartitionedSemaphore.js +47 -21
  283. package/dist/PartitionedSemaphore.js.map +1 -1
  284. package/dist/Path.d.ts +6 -0
  285. package/dist/Path.d.ts.map +1 -1
  286. package/dist/Path.js +4 -0
  287. package/dist/Path.js.map +1 -1
  288. package/dist/Pipeable.d.ts +7 -0
  289. package/dist/Pipeable.d.ts.map +1 -1
  290. package/dist/Pipeable.js +5 -0
  291. package/dist/Pipeable.js.map +1 -1
  292. package/dist/PlatformError.d.ts +8 -0
  293. package/dist/PlatformError.d.ts.map +1 -1
  294. package/dist/PlatformError.js +7 -0
  295. package/dist/PlatformError.js.map +1 -1
  296. package/dist/Pool.d.ts +19 -0
  297. package/dist/Pool.d.ts.map +1 -1
  298. package/dist/Pool.js +8 -1
  299. package/dist/Pool.js.map +1 -1
  300. package/dist/Predicate.d.ts +84 -0
  301. package/dist/Predicate.d.ts.map +1 -1
  302. package/dist/Predicate.js +48 -0
  303. package/dist/Predicate.js.map +1 -1
  304. package/dist/PrimaryKey.d.ts +5 -0
  305. package/dist/PrimaryKey.d.ts.map +1 -1
  306. package/dist/PrimaryKey.js +4 -0
  307. package/dist/PrimaryKey.js.map +1 -1
  308. package/dist/PubSub.d.ts +67 -5
  309. package/dist/PubSub.d.ts.map +1 -1
  310. package/dist/PubSub.js +60 -8
  311. package/dist/PubSub.js.map +1 -1
  312. package/dist/Pull.d.ts +20 -0
  313. package/dist/Pull.d.ts.map +1 -1
  314. package/dist/Pull.js +10 -0
  315. package/dist/Pull.js.map +1 -1
  316. package/dist/Queue.d.ts +60 -0
  317. package/dist/Queue.d.ts.map +1 -1
  318. package/dist/Queue.js +58 -8
  319. package/dist/Queue.js.map +1 -1
  320. package/dist/Random.d.ts +13 -0
  321. package/dist/Random.d.ts.map +1 -1
  322. package/dist/Random.js +9 -0
  323. package/dist/Random.js.map +1 -1
  324. package/dist/RcMap.d.ts +23 -0
  325. package/dist/RcMap.d.ts.map +1 -1
  326. package/dist/RcMap.js +8 -0
  327. package/dist/RcMap.js.map +1 -1
  328. package/dist/RcRef.d.ts +6 -0
  329. package/dist/RcRef.d.ts.map +1 -1
  330. package/dist/RcRef.js +3 -0
  331. package/dist/RcRef.js.map +1 -1
  332. package/dist/Record.d.ts +100 -0
  333. package/dist/Record.d.ts.map +1 -1
  334. package/dist/Record.js +43 -0
  335. package/dist/Record.js.map +1 -1
  336. package/dist/Redactable.d.ts +6 -0
  337. package/dist/Redactable.d.ts.map +1 -1
  338. package/dist/Redactable.js +4 -0
  339. package/dist/Redactable.js.map +1 -1
  340. package/dist/Redacted.d.ts +8 -0
  341. package/dist/Redacted.d.ts.map +1 -1
  342. package/dist/Redacted.js +6 -0
  343. package/dist/Redacted.js.map +1 -1
  344. package/dist/Reducer.d.ts +4 -0
  345. package/dist/Reducer.d.ts.map +1 -1
  346. package/dist/Reducer.js +3 -0
  347. package/dist/Reducer.js.map +1 -1
  348. package/dist/Ref.d.ts +20 -0
  349. package/dist/Ref.d.ts.map +1 -1
  350. package/dist/Ref.js +16 -0
  351. package/dist/Ref.js.map +1 -1
  352. package/dist/References.d.ts +21 -0
  353. package/dist/References.d.ts.map +1 -1
  354. package/dist/References.js +19 -0
  355. package/dist/References.js.map +1 -1
  356. package/dist/RegExp.d.ts +3 -0
  357. package/dist/RegExp.d.ts.map +1 -1
  358. package/dist/RegExp.js +4 -0
  359. package/dist/RegExp.js.map +1 -1
  360. package/dist/Request.d.ts +32 -0
  361. package/dist/Request.d.ts.map +1 -1
  362. package/dist/Request.js +12 -0
  363. package/dist/Request.js.map +1 -1
  364. package/dist/RequestResolver.d.ts +42 -0
  365. package/dist/RequestResolver.d.ts.map +1 -1
  366. package/dist/RequestResolver.js +27 -6
  367. package/dist/RequestResolver.js.map +1 -1
  368. package/dist/Resource.d.ts +6 -0
  369. package/dist/Resource.d.ts.map +1 -1
  370. package/dist/Resource.js +6 -0
  371. package/dist/Resource.js.map +1 -1
  372. package/dist/Result.d.ts +91 -0
  373. package/dist/Result.d.ts.map +1 -1
  374. package/dist/Result.js +41 -0
  375. package/dist/Result.js.map +1 -1
  376. package/dist/Runtime.d.ts +9 -0
  377. package/dist/Runtime.d.ts.map +1 -1
  378. package/dist/Runtime.js +7 -0
  379. package/dist/Runtime.js.map +1 -1
  380. package/dist/Schedule.d.ts +57 -0
  381. package/dist/Schedule.d.ts.map +1 -1
  382. package/dist/Schedule.js +32 -0
  383. package/dist/Schedule.js.map +1 -1
  384. package/dist/Scheduler.d.ts +7 -0
  385. package/dist/Scheduler.d.ts.map +1 -1
  386. package/dist/Scheduler.js +5 -0
  387. package/dist/Scheduler.js.map +1 -1
  388. package/dist/Schema.d.ts +969 -2
  389. package/dist/Schema.d.ts.map +1 -1
  390. package/dist/Schema.js +635 -5
  391. package/dist/Schema.js.map +1 -1
  392. package/dist/SchemaAST.d.ts +107 -0
  393. package/dist/SchemaAST.d.ts.map +1 -1
  394. package/dist/SchemaAST.js +81 -1
  395. package/dist/SchemaAST.js.map +1 -1
  396. package/dist/SchemaGetter.d.ts +69 -2
  397. package/dist/SchemaGetter.d.ts.map +1 -1
  398. package/dist/SchemaGetter.js +63 -4
  399. package/dist/SchemaGetter.js.map +1 -1
  400. package/dist/SchemaIssue.d.ts +33 -0
  401. package/dist/SchemaIssue.d.ts.map +1 -1
  402. package/dist/SchemaIssue.js +18 -0
  403. package/dist/SchemaIssue.js.map +1 -1
  404. package/dist/SchemaParser.d.ts +25 -0
  405. package/dist/SchemaParser.d.ts.map +1 -1
  406. package/dist/SchemaParser.js +26 -0
  407. package/dist/SchemaParser.js.map +1 -1
  408. package/dist/SchemaRepresentation.d.ts +147 -0
  409. package/dist/SchemaRepresentation.d.ts.map +1 -1
  410. package/dist/SchemaRepresentation.js +99 -0
  411. package/dist/SchemaRepresentation.js.map +1 -1
  412. package/dist/SchemaTransformation.d.ts +53 -0
  413. package/dist/SchemaTransformation.d.ts.map +1 -1
  414. package/dist/SchemaTransformation.js +46 -0
  415. package/dist/SchemaTransformation.js.map +1 -1
  416. package/dist/Scope.d.ts +19 -0
  417. package/dist/Scope.d.ts.map +1 -1
  418. package/dist/Scope.js +12 -0
  419. package/dist/Scope.js.map +1 -1
  420. package/dist/ScopedCache.d.ts +34 -0
  421. package/dist/ScopedCache.d.ts.map +1 -1
  422. package/dist/ScopedCache.js +26 -3
  423. package/dist/ScopedCache.js.map +1 -1
  424. package/dist/ScopedRef.d.ts +9 -0
  425. package/dist/ScopedRef.d.ts.map +1 -1
  426. package/dist/ScopedRef.js +6 -0
  427. package/dist/ScopedRef.js.map +1 -1
  428. package/dist/Semaphore.d.ts +26 -0
  429. package/dist/Semaphore.d.ts.map +1 -1
  430. package/dist/Semaphore.js +10 -0
  431. package/dist/Semaphore.js.map +1 -1
  432. package/dist/Sink.d.ts +125 -1
  433. package/dist/Sink.d.ts.map +1 -1
  434. package/dist/Sink.js +75 -1
  435. package/dist/Sink.js.map +1 -1
  436. package/dist/StandardSchema.d.ts +1 -0
  437. package/dist/StandardSchema.d.ts.map +1 -1
  438. package/dist/StandardSchema.js +1 -0
  439. package/dist/Stdio.d.ts +14 -1
  440. package/dist/Stdio.d.ts.map +1 -1
  441. package/dist/Stdio.js +6 -0
  442. package/dist/Stdio.js.map +1 -1
  443. package/dist/Stream.d.ts +569 -11
  444. package/dist/Stream.d.ts.map +1 -1
  445. package/dist/Stream.js +266 -18
  446. package/dist/Stream.js.map +1 -1
  447. package/dist/String.d.ts +87 -0
  448. package/dist/String.d.ts.map +1 -1
  449. package/dist/String.js +61 -0
  450. package/dist/String.js.map +1 -1
  451. package/dist/Struct.d.ts +46 -0
  452. package/dist/Struct.d.ts.map +1 -1
  453. package/dist/Struct.js +19 -0
  454. package/dist/Struct.js.map +1 -1
  455. package/dist/SubscriptionRef.d.ts +65 -0
  456. package/dist/SubscriptionRef.d.ts.map +1 -1
  457. package/dist/SubscriptionRef.js +25 -0
  458. package/dist/SubscriptionRef.js.map +1 -1
  459. package/dist/Symbol.d.ts +2 -0
  460. package/dist/Symbol.d.ts.map +1 -1
  461. package/dist/Symbol.js +2 -0
  462. package/dist/Symbol.js.map +1 -1
  463. package/dist/SynchronizedRef.d.ts +63 -0
  464. package/dist/SynchronizedRef.d.ts.map +1 -1
  465. package/dist/SynchronizedRef.js +24 -0
  466. package/dist/SynchronizedRef.js.map +1 -1
  467. package/dist/Take.d.ts +3 -0
  468. package/dist/Take.d.ts.map +1 -1
  469. package/dist/Take.js +1 -0
  470. package/dist/Take.js.map +1 -1
  471. package/dist/Terminal.d.ts +8 -0
  472. package/dist/Terminal.d.ts.map +1 -1
  473. package/dist/Terminal.js +4 -0
  474. package/dist/Terminal.js.map +1 -1
  475. package/dist/Tracer.d.ts +23 -0
  476. package/dist/Tracer.d.ts.map +1 -1
  477. package/dist/Tracer.js +12 -0
  478. package/dist/Tracer.js.map +1 -1
  479. package/dist/Trie.d.ts +68 -0
  480. package/dist/Trie.d.ts.map +1 -1
  481. package/dist/Trie.js +28 -0
  482. package/dist/Trie.js.map +1 -1
  483. package/dist/Tuple.d.ts +38 -0
  484. package/dist/Tuple.d.ts.map +1 -1
  485. package/dist/Tuple.js +18 -0
  486. package/dist/Tuple.js.map +1 -1
  487. package/dist/TxChunk.d.ts +52 -0
  488. package/dist/TxChunk.d.ts.map +1 -1
  489. package/dist/TxChunk.js +23 -0
  490. package/dist/TxChunk.js.map +1 -1
  491. package/dist/TxDeferred.d.ts +15 -0
  492. package/dist/TxDeferred.d.ts.map +1 -1
  493. package/dist/TxDeferred.js +8 -0
  494. package/dist/TxDeferred.js.map +1 -1
  495. package/dist/TxHashMap.d.ts +83 -0
  496. package/dist/TxHashMap.d.ts.map +1 -1
  497. package/dist/TxHashMap.js +52 -7
  498. package/dist/TxHashMap.js.map +1 -1
  499. package/dist/TxHashSet.d.ts +51 -0
  500. package/dist/TxHashSet.d.ts.map +1 -1
  501. package/dist/TxHashSet.js +29 -4
  502. package/dist/TxHashSet.js.map +1 -1
  503. package/dist/TxPriorityQueue.d.ts +30 -0
  504. package/dist/TxPriorityQueue.d.ts.map +1 -1
  505. package/dist/TxPriorityQueue.js +22 -1
  506. package/dist/TxPriorityQueue.js.map +1 -1
  507. package/dist/TxPubSub.d.ts +25 -0
  508. package/dist/TxPubSub.d.ts.map +1 -1
  509. package/dist/TxPubSub.js +19 -0
  510. package/dist/TxPubSub.js.map +1 -1
  511. package/dist/TxQueue.d.ts +51 -0
  512. package/dist/TxQueue.d.ts.map +1 -1
  513. package/dist/TxQueue.js +30 -0
  514. package/dist/TxQueue.js.map +1 -1
  515. package/dist/TxReentrantLock.d.ts +24 -0
  516. package/dist/TxReentrantLock.d.ts.map +1 -1
  517. package/dist/TxReentrantLock.js +32 -18
  518. package/dist/TxReentrantLock.js.map +1 -1
  519. package/dist/TxRef.d.ts +14 -0
  520. package/dist/TxRef.d.ts.map +1 -1
  521. package/dist/TxRef.js +7 -0
  522. package/dist/TxRef.js.map +1 -1
  523. package/dist/TxSemaphore.d.ts +25 -0
  524. package/dist/TxSemaphore.d.ts.map +1 -1
  525. package/dist/TxSemaphore.js +29 -13
  526. package/dist/TxSemaphore.js.map +1 -1
  527. package/dist/TxSubscriptionRef.d.ts +25 -0
  528. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  529. package/dist/TxSubscriptionRef.js +12 -0
  530. package/dist/TxSubscriptionRef.js.map +1 -1
  531. package/dist/Types.d.ts +36 -0
  532. package/dist/Types.d.ts.map +1 -1
  533. package/dist/Types.js +1 -0
  534. package/dist/UndefinedOr.d.ts +15 -0
  535. package/dist/UndefinedOr.d.ts.map +1 -1
  536. package/dist/UndefinedOr.js +9 -0
  537. package/dist/UndefinedOr.js.map +1 -1
  538. package/dist/Unify.d.ts +15 -0
  539. package/dist/Unify.d.ts.map +1 -1
  540. package/dist/Unify.js +2 -0
  541. package/dist/Unify.js.map +1 -1
  542. package/dist/Utils.d.ts +4 -0
  543. package/dist/Utils.d.ts.map +1 -1
  544. package/dist/Utils.js +1 -0
  545. package/dist/Utils.js.map +1 -1
  546. package/dist/Version.d.ts +26 -0
  547. package/dist/Version.d.ts.map +1 -0
  548. package/dist/Version.js +36 -0
  549. package/dist/Version.js.map +1 -0
  550. package/dist/ai/Chat.js +1 -1
  551. package/dist/ai/Chat.js.map +1 -1
  552. package/dist/ai/DecisionModel.d.ts +22 -0
  553. package/dist/ai/DecisionModel.d.ts.map +1 -1
  554. package/dist/ai/DecisionModel.js +22 -4
  555. package/dist/ai/DecisionModel.js.map +1 -1
  556. package/dist/ai/LanguageModel.d.ts.map +1 -1
  557. package/dist/ai/LanguageModel.js +14 -13
  558. package/dist/ai/LanguageModel.js.map +1 -1
  559. package/dist/ai/McpServer.d.ts +38 -11
  560. package/dist/ai/McpServer.d.ts.map +1 -1
  561. package/dist/ai/McpServer.js +276 -190
  562. package/dist/ai/McpServer.js.map +1 -1
  563. package/dist/ai/Telemetry.d.ts +49 -41
  564. package/dist/ai/Telemetry.d.ts.map +1 -1
  565. package/dist/ai/Telemetry.js +6 -8
  566. package/dist/ai/Telemetry.js.map +1 -1
  567. package/dist/ai/internal/mcpProtocol/v2026_07_28.js +5 -0
  568. package/dist/ai/internal/mcpProtocol/v2026_07_28.js.map +1 -1
  569. package/dist/ai/internal/mcpProtocol.js.map +1 -1
  570. package/dist/ai/internal/mcpRuntime.js +80 -46
  571. package/dist/ai/internal/mcpRuntime.js.map +1 -1
  572. package/dist/ai/internal/mcpStatefulRuntime.js +1 -0
  573. package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
  574. package/dist/cli/CliOutput.d.ts +27 -0
  575. package/dist/cli/CliOutput.d.ts.map +1 -1
  576. package/dist/cli/CliOutput.js +33 -10
  577. package/dist/cli/CliOutput.js.map +1 -1
  578. package/dist/cli/Command.d.ts.map +1 -1
  579. package/dist/cli/Command.js +6 -3
  580. package/dist/cli/Command.js.map +1 -1
  581. package/dist/cli/Completions.d.ts +3 -3
  582. package/dist/cli/Completions.d.ts.map +1 -1
  583. package/dist/cli/Completions.js +8 -5
  584. package/dist/cli/Completions.js.map +1 -1
  585. package/dist/cli/GlobalFlag.d.ts +5 -4
  586. package/dist/cli/GlobalFlag.d.ts.map +1 -1
  587. package/dist/cli/GlobalFlag.js +3 -3
  588. package/dist/cli/GlobalFlag.js.map +1 -1
  589. package/dist/cli/Prompt.d.ts +17 -1
  590. package/dist/cli/Prompt.d.ts.map +1 -1
  591. package/dist/cli/Prompt.js +119 -114
  592. package/dist/cli/Prompt.js.map +1 -1
  593. package/dist/cli/internal/ansi.d.ts +0 -1
  594. package/dist/cli/internal/ansi.d.ts.map +1 -1
  595. package/dist/cli/internal/ansi.js +20 -3
  596. package/dist/cli/internal/ansi.js.map +1 -1
  597. package/dist/cli/internal/completions/powershell.d.ts +2 -0
  598. package/dist/cli/internal/completions/powershell.d.ts.map +1 -0
  599. package/dist/cli/internal/completions/powershell.js +273 -0
  600. package/dist/cli/internal/completions/powershell.js.map +1 -0
  601. package/dist/cli/internal/completions/zsh.js +3 -2
  602. package/dist/cli/internal/completions/zsh.js.map +1 -1
  603. package/dist/cli/internal/wizard.d.ts +3 -3
  604. package/dist/cli/internal/wizard.d.ts.map +1 -1
  605. package/dist/cli/internal/wizard.js +21 -18
  606. package/dist/cli/internal/wizard.js.map +1 -1
  607. package/dist/cluster/ClusterSchema.d.ts +28 -0
  608. package/dist/cluster/ClusterSchema.d.ts.map +1 -1
  609. package/dist/cluster/ClusterSchema.js +30 -0
  610. package/dist/cluster/ClusterSchema.js.map +1 -1
  611. package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  612. package/dist/cluster/ClusterWorkflowEngine.js +10 -18
  613. package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
  614. package/dist/cluster/K8sHttpClient.d.ts.map +1 -1
  615. package/dist/cluster/K8sHttpClient.js +5 -2
  616. package/dist/cluster/K8sHttpClient.js.map +1 -1
  617. package/dist/cluster/MessageStorage.d.ts +18 -3
  618. package/dist/cluster/MessageStorage.d.ts.map +1 -1
  619. package/dist/cluster/MessageStorage.js +31 -11
  620. package/dist/cluster/MessageStorage.js.map +1 -1
  621. package/dist/cluster/Runners.d.ts.map +1 -1
  622. package/dist/cluster/Runners.js +8 -2
  623. package/dist/cluster/Runners.js.map +1 -1
  624. package/dist/cluster/Sharding.d.ts.map +1 -1
  625. package/dist/cluster/Sharding.js +181 -62
  626. package/dist/cluster/Sharding.js.map +1 -1
  627. package/dist/cluster/SqlMessageStorage.d.ts +59 -19
  628. package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
  629. package/dist/cluster/SqlMessageStorage.js +84 -55
  630. package/dist/cluster/SqlMessageStorage.js.map +1 -1
  631. package/dist/cluster/SqlRunnerStorage.d.ts +68 -19
  632. package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
  633. package/dist/cluster/SqlRunnerStorage.js +191 -113
  634. package/dist/cluster/SqlRunnerStorage.js.map +1 -1
  635. package/dist/cluster/internal/entityManager.js +104 -37
  636. package/dist/cluster/internal/entityManager.js.map +1 -1
  637. package/dist/encoding/Base64.d.ts +4 -0
  638. package/dist/encoding/Base64.d.ts.map +1 -1
  639. package/dist/encoding/Base64.js +4 -0
  640. package/dist/encoding/Base64.js.map +1 -1
  641. package/dist/encoding/Base64Url.d.ts +4 -0
  642. package/dist/encoding/Base64Url.d.ts.map +1 -1
  643. package/dist/encoding/Base64Url.js +4 -0
  644. package/dist/encoding/Base64Url.js.map +1 -1
  645. package/dist/encoding/EncodingError.d.ts +4 -0
  646. package/dist/encoding/EncodingError.d.ts.map +1 -1
  647. package/dist/encoding/EncodingError.js +4 -0
  648. package/dist/encoding/EncodingError.js.map +1 -1
  649. package/dist/encoding/Hex.d.ts +5 -0
  650. package/dist/encoding/Hex.d.ts.map +1 -1
  651. package/dist/encoding/Hex.js +5 -0
  652. package/dist/encoding/Hex.js.map +1 -1
  653. package/dist/encoding/Toml.js +2 -2
  654. package/dist/encoding/Toml.js.map +1 -1
  655. package/dist/encoding/Yaml.d.ts.map +1 -1
  656. package/dist/encoding/Yaml.js +6 -4
  657. package/dist/encoding/Yaml.js.map +1 -1
  658. package/dist/encoding/index.d.ts +4 -0
  659. package/dist/encoding/index.d.ts.map +1 -1
  660. package/dist/encoding/index.js +4 -0
  661. package/dist/encoding/index.js.map +1 -1
  662. package/dist/eventlog/SqlEventJournal.js +8 -4
  663. package/dist/eventlog/SqlEventJournal.js.map +1 -1
  664. package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +27 -10
  665. package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
  666. package/dist/eventlog/SqlEventLogServerUnencrypted.js +49 -7
  667. package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  668. package/dist/http/FindMyWay/internal/router.js +3 -6
  669. package/dist/http/FindMyWay/internal/router.js.map +1 -1
  670. package/dist/http/Headers.d.ts +3 -1
  671. package/dist/http/Headers.d.ts.map +1 -1
  672. package/dist/http/Headers.js +4 -2
  673. package/dist/http/Headers.js.map +1 -1
  674. package/dist/http/HttpClient.d.ts +15 -0
  675. package/dist/http/HttpClient.d.ts.map +1 -1
  676. package/dist/http/HttpClient.js +79 -23
  677. package/dist/http/HttpClient.js.map +1 -1
  678. package/dist/http/HttpClientResponse.js +3 -1
  679. package/dist/http/HttpClientResponse.js.map +1 -1
  680. package/dist/http/HttpEffect.d.ts +3 -0
  681. package/dist/http/HttpEffect.d.ts.map +1 -1
  682. package/dist/http/HttpEffect.js +5 -2
  683. package/dist/http/HttpEffect.js.map +1 -1
  684. package/dist/http/HttpMiddleware.d.ts +17 -0
  685. package/dist/http/HttpMiddleware.d.ts.map +1 -1
  686. package/dist/http/HttpMiddleware.js +56 -39
  687. package/dist/http/HttpMiddleware.js.map +1 -1
  688. package/dist/http/HttpServer.d.ts +1 -1
  689. package/dist/http/HttpServer.d.ts.map +1 -1
  690. package/dist/http/HttpTraceContext.d.ts.map +1 -1
  691. package/dist/http/HttpTraceContext.js +4 -2
  692. package/dist/http/HttpTraceContext.js.map +1 -1
  693. package/dist/http/internal/tracing.d.ts +2 -0
  694. package/dist/http/internal/tracing.d.ts.map +1 -0
  695. package/dist/http/internal/tracing.js +37 -0
  696. package/dist/http/internal/tracing.js.map +1 -0
  697. package/dist/http-api/HttpApiBuilder.js +2 -1
  698. package/dist/http-api/HttpApiBuilder.js.map +1 -1
  699. package/dist/http-api/HttpApiClient.d.ts +12 -3
  700. package/dist/http-api/HttpApiClient.d.ts.map +1 -1
  701. package/dist/http-api/HttpApiClient.js.map +1 -1
  702. package/dist/http-api/HttpApiError.d.ts +4 -3
  703. package/dist/http-api/HttpApiError.d.ts.map +1 -1
  704. package/dist/http-api/HttpApiError.js +7 -4
  705. package/dist/http-api/HttpApiError.js.map +1 -1
  706. package/dist/http-api/HttpApiSecurity.d.ts +8 -8
  707. package/dist/http-api/HttpApiSecurity.js +8 -8
  708. package/dist/index.d.ts +155 -0
  709. package/dist/index.d.ts.map +1 -1
  710. package/dist/index.js +155 -0
  711. package/dist/index.js.map +1 -1
  712. package/dist/internal/arbitrary/array.js +3 -3
  713. package/dist/internal/arbitrary/array.js.map +1 -1
  714. package/dist/internal/arbitrary/model.js +26 -11
  715. package/dist/internal/arbitrary/model.js.map +1 -1
  716. package/dist/internal/arbitrary/runner.js +8 -8
  717. package/dist/internal/arbitrary/runner.js.map +1 -1
  718. package/dist/internal/arbitrary/schema.js +4 -5
  719. package/dist/internal/arbitrary/schema.js.map +1 -1
  720. package/dist/internal/effect.js +53 -46
  721. package/dist/internal/effect.js.map +1 -1
  722. package/dist/internal/schedule.js +7 -5
  723. package/dist/internal/schedule.js.map +1 -1
  724. package/dist/internal/schema/standardSchema.js +2 -2
  725. package/dist/internal/schema/standardSchema.js.map +1 -1
  726. package/dist/internal/version.d.ts +2 -0
  727. package/dist/internal/version.d.ts.map +1 -0
  728. package/dist/internal/version.js +3 -0
  729. package/dist/internal/version.js.map +1 -0
  730. package/dist/net/AddressResolver.d.ts +145 -0
  731. package/dist/net/AddressResolver.d.ts.map +1 -0
  732. package/dist/net/AddressResolver.js +114 -0
  733. package/dist/net/AddressResolver.js.map +1 -0
  734. package/dist/net/Dns.d.ts +596 -0
  735. package/dist/net/Dns.d.ts.map +1 -0
  736. package/dist/net/Dns.js +549 -0
  737. package/dist/net/Dns.js.map +1 -0
  738. package/dist/net/Host.d.ts +320 -0
  739. package/dist/net/Host.d.ts.map +1 -0
  740. package/dist/net/Host.js +342 -0
  741. package/dist/net/Host.js.map +1 -0
  742. package/dist/net/IpInterface.d.ts +76 -3
  743. package/dist/net/IpInterface.d.ts.map +1 -1
  744. package/dist/net/IpInterface.js +53 -4
  745. package/dist/net/IpInterface.js.map +1 -1
  746. package/dist/net/IpNetwork.d.ts +82 -8
  747. package/dist/net/IpNetwork.d.ts.map +1 -1
  748. package/dist/net/IpNetwork.js +60 -4
  749. package/dist/net/IpNetwork.js.map +1 -1
  750. package/dist/net/NetAddress.d.ts +388 -35
  751. package/dist/net/NetAddress.d.ts.map +1 -1
  752. package/dist/net/NetAddress.js +350 -34
  753. package/dist/net/NetAddress.js.map +1 -1
  754. package/dist/net/index.d.ts +15 -0
  755. package/dist/net/index.d.ts.map +1 -1
  756. package/dist/net/index.js +15 -0
  757. package/dist/net/index.js.map +1 -1
  758. package/dist/observability/OtlpExporter.d.ts.map +1 -1
  759. package/dist/observability/OtlpExporter.js +5 -6
  760. package/dist/observability/OtlpExporter.js.map +1 -1
  761. package/dist/observability/OtlpLogger.d.ts.map +1 -1
  762. package/dist/observability/OtlpLogger.js +23 -27
  763. package/dist/observability/OtlpLogger.js.map +1 -1
  764. package/dist/observability/OtlpMetrics.d.ts +5 -3
  765. package/dist/observability/OtlpMetrics.d.ts.map +1 -1
  766. package/dist/observability/OtlpMetrics.js +36 -115
  767. package/dist/observability/OtlpMetrics.js.map +1 -1
  768. package/dist/observability/OtlpResource.d.ts +4 -3
  769. package/dist/observability/OtlpResource.d.ts.map +1 -1
  770. package/dist/observability/OtlpResource.js +20 -23
  771. package/dist/observability/OtlpResource.js.map +1 -1
  772. package/dist/observability/OtlpTracer.d.ts +1 -0
  773. package/dist/observability/OtlpTracer.d.ts.map +1 -1
  774. package/dist/observability/OtlpTracer.js +32 -36
  775. package/dist/observability/OtlpTracer.js.map +1 -1
  776. package/dist/observability/PrometheusMetrics.js +1 -0
  777. package/dist/observability/PrometheusMetrics.js.map +1 -1
  778. package/dist/observability/internal/otlpProtobuf.js +32 -1
  779. package/dist/observability/internal/otlpProtobuf.js.map +1 -1
  780. package/dist/persistence/PersistedQueue.d.ts +32 -3
  781. package/dist/persistence/PersistedQueue.d.ts.map +1 -1
  782. package/dist/persistence/PersistedQueue.js +75 -16
  783. package/dist/persistence/PersistedQueue.js.map +1 -1
  784. package/dist/reactivity/AsyncResult.d.ts +1 -1
  785. package/dist/reactivity/Atom.d.ts +5 -5
  786. package/dist/reactivity/Atom.d.ts.map +1 -1
  787. package/dist/reactivity/Atom.js +9 -5
  788. package/dist/reactivity/Atom.js.map +1 -1
  789. package/dist/reactivity/AtomHttpApi.d.ts +2 -2
  790. package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
  791. package/dist/reactivity/AtomRegistry.d.ts +8 -0
  792. package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
  793. package/dist/reactivity/AtomRegistry.js.map +1 -1
  794. package/dist/rpc/RpcClient.d.ts +41 -7
  795. package/dist/rpc/RpcClient.d.ts.map +1 -1
  796. package/dist/rpc/RpcClient.js +50 -25
  797. package/dist/rpc/RpcClient.js.map +1 -1
  798. package/dist/rpc/RpcServer.d.ts +6 -0
  799. package/dist/rpc/RpcServer.d.ts.map +1 -1
  800. package/dist/rpc/RpcServer.js +59 -40
  801. package/dist/rpc/RpcServer.js.map +1 -1
  802. package/dist/rpc/internal/tracing.d.ts +2 -0
  803. package/dist/rpc/internal/tracing.d.ts.map +1 -0
  804. package/dist/rpc/internal/tracing.js +18 -0
  805. package/dist/rpc/internal/tracing.js.map +1 -0
  806. package/dist/schema/SchemaCompiler/runtime.js +9 -1
  807. package/dist/schema/SchemaCompiler/runtime.js.map +1 -1
  808. package/dist/socket/DatagramSocket.d.ts +456 -0
  809. package/dist/socket/DatagramSocket.d.ts.map +1 -0
  810. package/dist/socket/DatagramSocket.js +535 -0
  811. package/dist/socket/DatagramSocket.js.map +1 -0
  812. package/dist/socket/Socket.d.ts +14 -1
  813. package/dist/socket/Socket.d.ts.map +1 -1
  814. package/dist/socket/Socket.js +9 -1
  815. package/dist/socket/Socket.js.map +1 -1
  816. package/dist/socket/index.d.ts +5 -0
  817. package/dist/socket/index.d.ts.map +1 -1
  818. package/dist/socket/index.js +5 -0
  819. package/dist/socket/index.js.map +1 -1
  820. package/dist/sql/Migrator.d.ts.map +1 -1
  821. package/dist/sql/Migrator.js +7 -2
  822. package/dist/sql/Migrator.js.map +1 -1
  823. package/dist/sql/SqlClient.d.ts +7 -1
  824. package/dist/sql/SqlClient.d.ts.map +1 -1
  825. package/dist/sql/SqlClient.js +35 -10
  826. package/dist/sql/SqlClient.js.map +1 -1
  827. package/dist/sql/Statement.d.ts +21 -1
  828. package/dist/sql/Statement.d.ts.map +1 -1
  829. package/dist/sql/Statement.js +55 -7
  830. package/dist/sql/Statement.js.map +1 -1
  831. package/dist/testing/TestClock.d.ts +8 -0
  832. package/dist/testing/TestClock.d.ts.map +1 -1
  833. package/dist/testing/TestClock.js +7 -0
  834. package/dist/testing/TestClock.js.map +1 -1
  835. package/dist/testing/TestConsole.d.ts +7 -0
  836. package/dist/testing/TestConsole.d.ts.map +1 -1
  837. package/dist/testing/TestConsole.js +6 -0
  838. package/dist/testing/TestConsole.js.map +1 -1
  839. package/dist/testing/TestCrypto.d.ts +73 -0
  840. package/dist/testing/TestCrypto.d.ts.map +1 -0
  841. package/dist/testing/TestCrypto.js +87 -0
  842. package/dist/testing/TestCrypto.js.map +1 -0
  843. package/dist/testing/index.d.ts +8 -0
  844. package/dist/testing/index.d.ts.map +1 -1
  845. package/dist/testing/index.js +8 -0
  846. package/dist/testing/index.js.map +1 -1
  847. package/dist/workflow/DurableDeferred.d.ts +54 -0
  848. package/dist/workflow/DurableDeferred.d.ts.map +1 -1
  849. package/dist/workflow/DurableDeferred.js +78 -49
  850. package/dist/workflow/DurableDeferred.js.map +1 -1
  851. package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
  852. package/dist/workflow/WorkflowEngine.js +2 -1
  853. package/dist/workflow/WorkflowEngine.js.map +1 -1
  854. package/package.json +3 -3
  855. package/src/Array.ts +351 -3
  856. package/src/BigDecimal.ts +88 -0
  857. package/src/BigInt.ts +68 -0
  858. package/src/Boolean.ts +34 -0
  859. package/src/Brand.ts +10 -0
  860. package/src/ByteSize.ts +87 -0
  861. package/src/Cache.ts +50 -8
  862. package/src/Cause.ts +82 -0
  863. package/src/Channel.ts +368 -18
  864. package/src/ChannelSchema.ts +13 -0
  865. package/src/Chunk.ts +193 -0
  866. package/src/Clock.ts +7 -0
  867. package/src/Combiner.ts +10 -0
  868. package/src/Config.ts +82 -8
  869. package/src/ConfigProvider.ts +28 -0
  870. package/src/Console.ts +26 -0
  871. package/src/Context.ts +53 -3
  872. package/src/Cron.ts +32 -1
  873. package/src/Crypto.ts +48 -9
  874. package/src/Data.ts +13 -0
  875. package/src/DateTime.ts +180 -6
  876. package/src/Deferred.ts +51 -0
  877. package/src/Differ.ts +2 -0
  878. package/src/Duration.ts +126 -16
  879. package/src/Effect.ts +539 -5
  880. package/src/Effectable.ts +4 -0
  881. package/src/Equal.ts +12 -1
  882. package/src/Equivalence.ts +22 -0
  883. package/src/ErrorReporter.ts +36 -0
  884. package/src/ExecutionPlan.ts +58 -14
  885. package/src/Exit.ts +40 -0
  886. package/src/Fiber.ts +20 -0
  887. package/src/FiberHandle.ts +29 -4
  888. package/src/FiberMap.ts +38 -0
  889. package/src/FiberSet.ts +21 -0
  890. package/src/FileSystem.ts +64 -2
  891. package/src/Filter.ts +55 -0
  892. package/src/Formatter.ts +42 -1
  893. package/src/Function.ts +30 -0
  894. package/src/Graph.ts +317 -36
  895. package/src/HKT.ts +5 -0
  896. package/src/Hash.ts +15 -0
  897. package/src/HashMap.ts +91 -0
  898. package/src/HashRing.ts +18 -0
  899. package/src/HashSet.ts +53 -0
  900. package/src/Inspectable.ts +8 -0
  901. package/src/Iterable.ts +127 -0
  902. package/src/JsonPatch.ts +5 -0
  903. package/src/JsonPointer.ts +5 -0
  904. package/src/JsonSchema.ts +17 -0
  905. package/src/Latch.ts +14 -0
  906. package/src/Layer.ts +101 -1
  907. package/src/LayerMap.ts +7 -0
  908. package/src/LayerRef.ts +5 -0
  909. package/src/LogLevel.ts +20 -0
  910. package/src/Logger.ts +41 -5
  911. package/src/ManagedRuntime.ts +12 -1
  912. package/src/Match.ts +52 -0
  913. package/src/Metric.ts +69 -0
  914. package/src/MutableHashMap.ts +44 -0
  915. package/src/MutableHashSet.ts +17 -0
  916. package/src/MutableList.ts +21 -0
  917. package/src/MutableRef.ts +32 -0
  918. package/src/Newtype.ts +9 -0
  919. package/src/NonEmptyIterable.ts +4 -0
  920. package/src/Number.ts +61 -0
  921. package/src/Optic.ts +57 -0
  922. package/src/Option.ts +134 -0
  923. package/src/Order.ts +30 -0
  924. package/src/Ordering.ts +7 -0
  925. package/src/PartitionedSemaphore.ts +61 -22
  926. package/src/Path.ts +6 -0
  927. package/src/Pipeable.ts +7 -0
  928. package/src/PlatformError.ts +8 -0
  929. package/src/Pool.ts +20 -1
  930. package/src/Predicate.ts +85 -0
  931. package/src/PrimaryKey.ts +5 -0
  932. package/src/PubSub.ts +90 -9
  933. package/src/Pull.ts +20 -0
  934. package/src/Queue.ts +80 -10
  935. package/src/Random.ts +13 -0
  936. package/src/RcMap.ts +23 -0
  937. package/src/RcRef.ts +6 -0
  938. package/src/Record.ts +100 -0
  939. package/src/Redactable.ts +6 -0
  940. package/src/Redacted.ts +8 -0
  941. package/src/Reducer.ts +4 -0
  942. package/src/Ref.ts +42 -0
  943. package/src/References.ts +21 -0
  944. package/src/RegExp.ts +4 -0
  945. package/src/Request.ts +32 -0
  946. package/src/RequestResolver.ts +59 -10
  947. package/src/Resource.ts +7 -0
  948. package/src/Result.ts +93 -0
  949. package/src/Runtime.ts +10 -0
  950. package/src/Schedule.ts +61 -0
  951. package/src/Scheduler.ts +7 -0
  952. package/src/Schema.ts +1168 -9
  953. package/src/SchemaAST.ts +115 -1
  954. package/src/SchemaGetter.ts +80 -4
  955. package/src/SchemaIssue.ts +34 -0
  956. package/src/SchemaParser.ts +26 -0
  957. package/src/SchemaRepresentation.ts +148 -0
  958. package/src/SchemaTransformation.ts +53 -0
  959. package/src/Scope.ts +19 -0
  960. package/src/ScopedCache.ts +55 -3
  961. package/src/ScopedRef.ts +9 -0
  962. package/src/Semaphore.ts +26 -0
  963. package/src/Sink.ts +126 -2
  964. package/src/StandardSchema.ts +1 -0
  965. package/src/Stdio.ts +16 -2
  966. package/src/Stream.ts +633 -26
  967. package/src/String.ts +87 -0
  968. package/src/Struct.ts +46 -0
  969. package/src/SubscriptionRef.ts +65 -0
  970. package/src/Symbol.ts +2 -0
  971. package/src/SynchronizedRef.ts +63 -0
  972. package/src/Take.ts +3 -0
  973. package/src/Terminal.ts +8 -0
  974. package/src/Tracer.ts +23 -0
  975. package/src/Trie.ts +68 -0
  976. package/src/Tuple.ts +38 -0
  977. package/src/TxChunk.ts +52 -0
  978. package/src/TxDeferred.ts +15 -0
  979. package/src/TxHashMap.ts +97 -6
  980. package/src/TxHashSet.ts +83 -3
  981. package/src/TxPriorityQueue.ts +34 -2
  982. package/src/TxPubSub.ts +26 -0
  983. package/src/TxQueue.ts +51 -0
  984. package/src/TxReentrantLock.ts +53 -36
  985. package/src/TxRef.ts +14 -0
  986. package/src/TxSemaphore.ts +47 -31
  987. package/src/TxSubscriptionRef.ts +25 -0
  988. package/src/Types.ts +36 -0
  989. package/src/UndefinedOr.ts +15 -0
  990. package/src/Unify.ts +15 -0
  991. package/src/Utils.ts +4 -0
  992. package/src/Version.ts +38 -0
  993. package/src/ai/Chat.ts +1 -1
  994. package/src/ai/DecisionModel.ts +42 -1
  995. package/src/ai/LanguageModel.ts +16 -19
  996. package/src/ai/McpServer.ts +169 -58
  997. package/src/ai/Telemetry.ts +62 -58
  998. package/src/ai/internal/mcpProtocol/v2026_07_28.ts +5 -0
  999. package/src/ai/internal/mcpProtocol.ts +3 -0
  1000. package/src/ai/internal/mcpRuntime.ts +86 -43
  1001. package/src/ai/internal/mcpStatefulRuntime.ts +2 -0
  1002. package/src/cli/CliOutput.ts +33 -16
  1003. package/src/cli/Command.ts +4 -3
  1004. package/src/cli/Completions.ts +9 -6
  1005. package/src/cli/GlobalFlag.ts +19 -11
  1006. package/src/cli/Prompt.ts +159 -149
  1007. package/src/cli/internal/ansi.ts +26 -3
  1008. package/src/cli/internal/completions/powershell.ts +322 -0
  1009. package/src/cli/internal/completions/zsh.ts +4 -2
  1010. package/src/cli/internal/wizard.ts +34 -26
  1011. package/src/cluster/ClusterSchema.ts +32 -0
  1012. package/src/cluster/ClusterWorkflowEngine.ts +13 -24
  1013. package/src/cluster/K8sHttpClient.ts +12 -2
  1014. package/src/cluster/MessageStorage.ts +45 -14
  1015. package/src/cluster/Runners.ts +8 -2
  1016. package/src/cluster/Sharding.ts +207 -49
  1017. package/src/cluster/SqlMessageStorage.ts +118 -84
  1018. package/src/cluster/SqlRunnerStorage.ts +224 -128
  1019. package/src/cluster/internal/entityManager.ts +151 -55
  1020. package/src/encoding/Base64.ts +4 -0
  1021. package/src/encoding/Base64Url.ts +4 -0
  1022. package/src/encoding/EncodingError.ts +5 -0
  1023. package/src/encoding/Hex.ts +5 -0
  1024. package/src/encoding/Toml.ts +2 -2
  1025. package/src/encoding/Yaml.ts +8 -4
  1026. package/src/encoding/index.ts +4 -0
  1027. package/src/eventlog/SqlEventJournal.ts +18 -4
  1028. package/src/eventlog/SqlEventLogServerUnencrypted.ts +282 -235
  1029. package/src/http/FindMyWay/internal/router.ts +4 -7
  1030. package/src/http/Headers.ts +8 -2
  1031. package/src/http/HttpClient.ts +100 -29
  1032. package/src/http/HttpClientResponse.ts +3 -1
  1033. package/src/http/HttpEffect.ts +11 -2
  1034. package/src/http/HttpMiddleware.ts +60 -45
  1035. package/src/http/HttpServer.ts +1 -1
  1036. package/src/http/HttpTraceContext.ts +8 -2
  1037. package/src/http/internal/tracing.ts +52 -0
  1038. package/src/http-api/HttpApiBuilder.ts +5 -1
  1039. package/src/http-api/HttpApiClient.ts +13 -4
  1040. package/src/http-api/HttpApiError.ts +8 -4
  1041. package/src/http-api/HttpApiSecurity.ts +8 -8
  1042. package/src/index.ts +156 -0
  1043. package/src/internal/arbitrary/array.ts +3 -3
  1044. package/src/internal/arbitrary/model.ts +37 -14
  1045. package/src/internal/arbitrary/runner.ts +7 -7
  1046. package/src/internal/arbitrary/schema.ts +4 -3
  1047. package/src/internal/effect.ts +62 -58
  1048. package/src/internal/schedule.ts +23 -17
  1049. package/src/internal/schema/standardSchema.ts +2 -2
  1050. package/src/internal/version.ts +2 -0
  1051. package/src/net/AddressResolver.ts +222 -0
  1052. package/src/net/Dns.ts +1035 -0
  1053. package/src/net/Host.ts +472 -0
  1054. package/src/net/IpInterface.ts +117 -7
  1055. package/src/net/IpNetwork.ts +116 -17
  1056. package/src/net/NetAddress.ts +611 -76
  1057. package/src/net/index.ts +18 -0
  1058. package/src/observability/OtlpExporter.ts +9 -6
  1059. package/src/observability/OtlpLogger.ts +20 -21
  1060. package/src/observability/OtlpMetrics.ts +46 -116
  1061. package/src/observability/OtlpResource.ts +18 -27
  1062. package/src/observability/OtlpTracer.ts +34 -40
  1063. package/src/observability/PrometheusMetrics.ts +1 -0
  1064. package/src/observability/internal/otlpProtobuf.ts +60 -0
  1065. package/src/persistence/PersistedQueue.ts +146 -53
  1066. package/src/reactivity/AsyncResult.ts +1 -1
  1067. package/src/reactivity/Atom.ts +10 -6
  1068. package/src/reactivity/AtomHttpApi.ts +2 -4
  1069. package/src/reactivity/AtomRegistry.ts +7 -0
  1070. package/src/rpc/RpcClient.ts +87 -41
  1071. package/src/rpc/RpcServer.ts +85 -48
  1072. package/src/rpc/internal/tracing.ts +22 -0
  1073. package/src/schema/SchemaCompiler/runtime.ts +4 -1
  1074. package/src/socket/DatagramSocket.ts +919 -0
  1075. package/src/socket/Socket.ts +22 -2
  1076. package/src/socket/index.ts +6 -0
  1077. package/src/sql/Migrator.ts +21 -5
  1078. package/src/sql/SqlClient.ts +43 -19
  1079. package/src/sql/Statement.ts +59 -7
  1080. package/src/testing/TestClock.ts +9 -0
  1081. package/src/testing/TestConsole.ts +8 -0
  1082. package/src/testing/TestCrypto.ts +94 -0
  1083. package/src/testing/index.ts +9 -0
  1084. package/src/workflow/DurableDeferred.ts +123 -48
  1085. package/src/workflow/WorkflowEngine.ts +2 -1
package/src/Duration.ts CHANGED
@@ -7,6 +7,7 @@
7
7
  * from common input shapes, unit conversions, comparisons, arithmetic,
8
8
  * formatting, and reusable reducer or combiner helpers.
9
9
  *
10
+ * @stability stable
10
11
  * @since 2.0.0
11
12
  */
12
13
  import * as Combiner from "./Combiner.ts"
@@ -35,11 +36,12 @@ const bigint1e3 = BigInt(1_000)
35
36
  const bigint1e6 = BigInt(1_000_000)
36
37
  const bigint1e9 = BigInt(1_000_000_000)
37
38
 
38
- const roundTiesAwayFromZero = (input: number): bigint =>
39
- BigInt(input < 0 ? Math.ceil(input - 0.5) : Math.floor(input + 0.5))
39
+ const roundTiesAwayFromZero = (input: number): bigint => BigInt(Math.sign(input) * Math.round(Math.abs(input)))
40
40
 
41
41
  const roundMillisToNanos = (millis: number): bigint => roundTiesAwayFromZero(millis * 1_000_000)
42
42
 
43
+ const fromNanosNumber = (nanos: number): Duration => make(Number.isFinite(nanos) ? roundTiesAwayFromZero(nanos) : nanos)
44
+
43
45
  const parseNanos = (input: string, scale: bigint): bigint => {
44
46
  const decimalIndex = input.indexOf(".")
45
47
  if (decimalIndex === -1) return BigInt(input) * scale
@@ -50,9 +52,13 @@ const parseNanos = (input: string, scale: bigint): bigint => {
50
52
  const scaled = (
51
53
  BigInt(input.slice(isNegative ? 1 : 0, decimalIndex)) * fractionalScale + BigInt(fractional)
52
54
  ) * scale
53
- const rounded = scaled / fractionalScale +
54
- (scaled % fractionalScale * bigint2 >= fractionalScale ? bigint1 : bigint0)
55
- return isNegative ? -rounded : rounded
55
+ return divideTiesAwayFromZero(isNegative ? -scaled : scaled, fractionalScale)
56
+ }
57
+
58
+ const divideTiesAwayFromZero = (numerator: bigint, denominator: bigint): bigint => {
59
+ const absolute = numerator < bigint0 ? -numerator : numerator
60
+ const rounded = absolute / denominator + (absolute % denominator * bigint2 >= denominator ? bigint1 : bigint0)
61
+ return numerator < bigint0 ? -rounded : rounded
56
62
  }
57
63
 
58
64
  const nanosToHrTime = (nanos: bigint): [seconds: number, nanos: number] => {
@@ -78,6 +84,7 @@ const nanosToHrTime = (nanos: bigint): [seconds: number, nanos: number] => {
78
84
  * @see {@link DurationValue} for the tagged representation exposed by the
79
85
  * `value` field
80
86
  *
87
+ * @stability stable
81
88
  * @category models
82
89
  * @since 2.0.0
83
90
  */
@@ -104,6 +111,7 @@ export interface Duration extends Equal.Equal, Pipeable, Inspectable.Inspectable
104
111
  * representation
105
112
  * @see {@link match} for pattern matching without reading `value` directly
106
113
  *
114
+ * @stability stable
107
115
  * @category models
108
116
  * @since 2.0.0
109
117
  */
@@ -123,6 +131,7 @@ export type DurationValue =
123
131
  *
124
132
  * @see {@link Input} for the full duration input union
125
133
  *
134
+ * @stability stable
126
135
  * @category models
127
136
  * @since 2.0.0
128
137
  */
@@ -166,6 +175,7 @@ export type Unit =
166
175
  * @see {@link DurationObject} for object-shaped duration input
167
176
  * @see {@link Unit} for supported string units
168
177
  *
178
+ * @stability stable
169
179
  * @category models
170
180
  * @since 4.0.0
171
181
  */
@@ -197,6 +207,7 @@ export type Input =
197
207
  * Duration.fromInputUnsafe({ seconds: 1, nanoseconds: 500 }) // => Duration.nanos(1_000_000_500n)
198
208
  * ```
199
209
  *
210
+ * @stability stable
200
211
  * @category models
201
212
  * @since 4.0.0
202
213
  */
@@ -236,6 +247,7 @@ const DURATION_REGEXP = /^(-?\d+(?:\.\d+)?)\s+(nanos?|micros?|millis?|seconds?|m
236
247
  * Duration.fromInputUnsafe([2, 500_000_000]) // => Duration.nanos(2_500_000_000n)
237
248
  * ```
238
249
  *
250
+ * @stability stable
239
251
  * @category constructors
240
252
  * @since 4.0.0
241
253
  */
@@ -300,7 +312,7 @@ export const fromInputUnsafe = (input: Input): Duration => {
300
312
  if (input[0] === Infinity || input[1] === Infinity) {
301
313
  return infinity
302
314
  }
303
- return make(roundTiesAwayFromZero(input[0] * 1_000_000_000 + input[1]))
315
+ return fromNanosNumber(input[0] * 1_000_000_000 + input[1])
304
316
  }
305
317
  const obj = input as DurationObject
306
318
  let millis = 0
@@ -312,9 +324,7 @@ export const fromInputUnsafe = (input: Input): Duration => {
312
324
  if (obj.seconds) millis += obj.seconds * 1_000
313
325
  if (obj.milliseconds) millis += obj.milliseconds
314
326
  if (!obj.microseconds && !obj.nanoseconds) return make(millis)
315
- return make(roundTiesAwayFromZero(
316
- millis * 1_000_000 + (obj.microseconds ?? 0) * 1_000 + (obj.nanoseconds ?? 0)
317
- ))
327
+ return fromNanosNumber(millis * 1_000_000 + (obj.microseconds ?? 0) * 1_000 + (obj.nanoseconds ?? 0))
318
328
  }
319
329
  }
320
330
  return invalid(input)
@@ -337,6 +347,7 @@ const invalid = (input: unknown): never => {
337
347
  * Duration.fromInput("invalid" as any) // => Option.none()
338
348
  * ```
339
349
  *
350
+ * @stability stable
340
351
  * @category constructors
341
352
  * @since 4.0.0
342
353
  */
@@ -431,6 +442,7 @@ const make = (input: number | bigint): Duration => {
431
442
  * Duration.isDuration(1000) // => false
432
443
  * ```
433
444
  *
445
+ * @stability stable
434
446
  * @category guards
435
447
  * @since 2.0.0
436
448
  */
@@ -448,6 +460,7 @@ export const isDuration = (u: unknown): u is Duration => hasProperty(u, TypeId)
448
460
  * Duration.isFinite(Duration.infinity) // => false
449
461
  * ```
450
462
  *
463
+ * @stability stable
451
464
  * @category predicates
452
465
  * @since 2.0.0
453
466
  */
@@ -466,6 +479,7 @@ export const isFinite = (self: Duration): boolean =>
466
479
  * Duration.isZero(Duration.seconds(1)) // => false
467
480
  * ```
468
481
  *
482
+ * @stability stable
469
483
  * @category predicates
470
484
  * @since 3.5.0
471
485
  */
@@ -494,6 +508,7 @@ export const isZero = (self: Duration): boolean => {
494
508
  * Duration.isNegative(Duration.negativeInfinity) // => true
495
509
  * ```
496
510
  *
511
+ * @stability stable
497
512
  * @category predicates
498
513
  * @since 4.0.0
499
514
  */
@@ -523,6 +538,7 @@ export const isNegative = (self: Duration): boolean => {
523
538
  * Duration.isPositive(Duration.infinity) // => true
524
539
  * ```
525
540
  *
541
+ * @stability stable
526
542
  * @category predicates
527
543
  * @since 4.0.0
528
544
  */
@@ -551,6 +567,7 @@ export const isPositive = (self: Duration): boolean => {
551
567
  * Duration.abs(Duration.negativeInfinity) // => Duration.infinity
552
568
  * ```
553
569
  *
570
+ * @stability stable
554
571
  * @category math
555
572
  * @since 4.0.0
556
573
  */
@@ -578,6 +595,7 @@ export const abs = (self: Duration): Duration => {
578
595
  * Duration.negate(Duration.infinity) // => Duration.negativeInfinity
579
596
  * ```
580
597
  *
598
+ * @stability stable
581
599
  * @category math
582
600
  * @since 4.0.0
583
601
  */
@@ -605,6 +623,7 @@ export const negate = (self: Duration): Duration => {
605
623
  * Duration.toMillis(Duration.zero) // => 0
606
624
  * ```
607
625
  *
626
+ * @stability stable
608
627
  * @category constructors
609
628
  * @since 2.0.0
610
629
  */
@@ -621,6 +640,7 @@ export const zero: Duration = make(0)
621
640
  * Duration.toMillis(Duration.infinity) // => Infinity
622
641
  * ```
623
642
  *
643
+ * @stability stable
624
644
  * @category constructors
625
645
  * @since 2.0.0
626
646
  */
@@ -637,6 +657,7 @@ export const infinity: Duration = make(Infinity)
637
657
  * Duration.toMillis(Duration.negativeInfinity) // => -Infinity
638
658
  * ```
639
659
  *
660
+ * @stability stable
640
661
  * @category constructors
641
662
  * @since 4.0.0
642
663
  */
@@ -653,6 +674,7 @@ export const negativeInfinity: Duration = make(-Infinity)
653
674
  * Duration.nanos(500_000_000n) // => Duration.nanos(500_000_000n)
654
675
  * ```
655
676
  *
677
+ * @stability stable
656
678
  * @category constructors
657
679
  * @since 2.0.0
658
680
  */
@@ -669,6 +691,7 @@ export const nanos = (nanos: bigint): Duration => make(nanos)
669
691
  * Duration.micros(500_000n) // => Duration.nanos(500_000_000n)
670
692
  * ```
671
693
  *
694
+ * @stability stable
672
695
  * @category constructors
673
696
  * @since 2.0.0
674
697
  */
@@ -685,6 +708,7 @@ export const micros = (micros: bigint): Duration => make(micros * bigint1e3)
685
708
  * Duration.toMillis(Duration.millis(1000)) // => 1000
686
709
  * ```
687
710
  *
711
+ * @stability stable
688
712
  * @category constructors
689
713
  * @since 2.0.0
690
714
  */
@@ -701,6 +725,7 @@ export const millis = (millis: number): Duration => make(millis)
701
725
  * Duration.toMillis(Duration.seconds(30)) // => 30_000
702
726
  * ```
703
727
  *
728
+ * @stability stable
704
729
  * @category constructors
705
730
  * @since 2.0.0
706
731
  */
@@ -717,6 +742,7 @@ export const seconds = (seconds: number): Duration => make(seconds * 1000)
717
742
  * Duration.toMillis(Duration.minutes(5)) // => 300_000
718
743
  * ```
719
744
  *
745
+ * @stability stable
720
746
  * @category constructors
721
747
  * @since 2.0.0
722
748
  */
@@ -733,6 +759,7 @@ export const minutes = (minutes: number): Duration => make(minutes * 60_000)
733
759
  * Duration.toMillis(Duration.hours(2)) // => 7_200_000
734
760
  * ```
735
761
  *
762
+ * @stability stable
736
763
  * @category constructors
737
764
  * @since 2.0.0
738
765
  */
@@ -749,6 +776,7 @@ export const hours = (hours: number): Duration => make(hours * 3_600_000)
749
776
  * Duration.toMillis(Duration.days(1)) // => 86_400_000
750
777
  * ```
751
778
  *
779
+ * @stability stable
752
780
  * @category constructors
753
781
  * @since 2.0.0
754
782
  */
@@ -765,6 +793,7 @@ export const days = (days: number): Duration => make(days * 86_400_000)
765
793
  * Duration.toMillis(Duration.weeks(1)) // => 604_800_000
766
794
  * ```
767
795
  *
796
+ * @stability stable
768
797
  * @category constructors
769
798
  * @since 2.0.0
770
799
  */
@@ -782,6 +811,7 @@ export const weeks = (weeks: number): Duration => make(weeks * 604_800_000)
782
811
  * Duration.toMillis(Duration.minutes(2)) // => 120_000
783
812
  * ```
784
813
  *
814
+ * @stability stable
785
815
  * @category getters
786
816
  * @since 2.0.0
787
817
  */
@@ -805,6 +835,7 @@ export const toMillis = (self: Input): number =>
805
835
  * Duration.toSeconds(Duration.minutes(2)) // => 120
806
836
  * ```
807
837
  *
838
+ * @stability stable
808
839
  * @category getters
809
840
  * @since 2.0.0
810
841
  */
@@ -828,6 +859,7 @@ export const toSeconds = (self: Input): number =>
828
859
  * Duration.toMinutes(Duration.hours(1)) // => 60
829
860
  * ```
830
861
  *
862
+ * @stability stable
831
863
  * @category getters
832
864
  * @since 3.8.0
833
865
  */
@@ -851,6 +883,7 @@ export const toMinutes = (self: Input): number =>
851
883
  * Duration.toHours(Duration.days(1)) // => 24
852
884
  * ```
853
885
  *
886
+ * @stability stable
854
887
  * @category getters
855
888
  * @since 3.8.0
856
889
  */
@@ -874,6 +907,7 @@ export const toHours = (self: Input): number =>
874
907
  * Duration.toDays(Duration.weeks(1)) // => 7
875
908
  * ```
876
909
  *
910
+ * @stability stable
877
911
  * @category getters
878
912
  * @since 3.8.0
879
913
  */
@@ -897,6 +931,7 @@ export const toDays = (self: Input): number =>
897
931
  * Duration.toWeeks(Duration.days(7)) // => 1
898
932
  * ```
899
933
  *
934
+ * @stability stable
900
935
  * @category getters
901
936
  * @since 3.8.0
902
937
  */
@@ -936,6 +971,7 @@ export const toWeeks = (self: Input): number =>
936
971
  * // throws Error: "Cannot convert infinite duration to nanos"
937
972
  * ```
938
973
  *
974
+ * @stability stable
939
975
  * @category getters
940
976
  * @since 4.0.0
941
977
  */
@@ -968,6 +1004,7 @@ export const toNanosUnsafe = (input: Input): bigint => {
968
1004
  * Duration.toNanos(Duration.infinity) // => Option.none()
969
1005
  * ```
970
1006
  *
1007
+ * @stability stable
971
1008
  * @category getters
972
1009
  * @since 2.0.0
973
1010
  */
@@ -984,6 +1021,7 @@ export const toNanos: (self: Input) => Option.Option<bigint> = Option.liftThrowa
984
1021
  * Duration.toHrTime(Duration.millis(1500)) // => [1, 500_000_000]
985
1022
  * ```
986
1023
  *
1024
+ * @stability stable
987
1025
  * @category getters
988
1026
  * @since 2.0.0
989
1027
  */
@@ -1022,6 +1060,7 @@ export const toHrTime = (input: Input): [seconds: number, nanos: number] => {
1022
1060
  * }) // => "5000 milliseconds"
1023
1061
  * ```
1024
1062
  *
1063
+ * @stability stable
1025
1064
  * @category pattern matching
1026
1065
  * @since 2.0.0
1027
1066
  */
@@ -1047,6 +1086,7 @@ export const match: {
1047
1086
  * }) // => "5000 milliseconds"
1048
1087
  * ```
1049
1088
  *
1089
+ * @stability stable
1050
1090
  * @category pattern matching
1051
1091
  * @since 2.0.0
1052
1092
  */
@@ -1079,6 +1119,7 @@ export const match: {
1079
1119
  * }) // => "5000 milliseconds"
1080
1120
  * ```
1081
1121
  *
1122
+ * @stability stable
1082
1123
  * @category pattern matching
1083
1124
  * @since 2.0.0
1084
1125
  */
@@ -1127,6 +1168,7 @@ export const match: {
1127
1168
  * }) // => 5000
1128
1169
  * ```
1129
1170
  *
1171
+ * @stability stable
1130
1172
  * @category pattern matching
1131
1173
  * @since 4.0.0
1132
1174
  */
@@ -1146,6 +1188,7 @@ export const matchPair: {
1146
1188
  * }) // => 5000
1147
1189
  * ```
1148
1190
  *
1191
+ * @stability stable
1149
1192
  * @category pattern matching
1150
1193
  * @since 4.0.0
1151
1194
  */
@@ -1172,6 +1215,7 @@ export const matchPair: {
1172
1215
  * }) // => 5000
1173
1216
  * ```
1174
1217
  *
1218
+ * @stability stable
1175
1219
  * @category pattern matching
1176
1220
  * @since 4.0.0
1177
1221
  */
@@ -1226,6 +1270,7 @@ export const matchPair: {
1226
1270
  * durations.sort((a, b) => Duration.Order(a, b)).map(Duration.toSeconds) // => [1, 2, 3]
1227
1271
  * ```
1228
1272
  *
1273
+ * @stability stable
1229
1274
  * @category instances
1230
1275
  * @since 2.0.0
1231
1276
  */
@@ -1277,6 +1322,7 @@ export const Order: order.Order<Duration> = order.make((self, that) =>
1277
1322
  * @see {@link isGreaterThanOrEqualTo} for checking only the lower bound
1278
1323
  * @see {@link isLessThanOrEqualTo} for checking only the upper bound
1279
1324
  *
1325
+ * @stability stable
1280
1326
  * @category predicates
1281
1327
  * @since 2.0.0
1282
1328
  */
@@ -1313,6 +1359,7 @@ export const between: {
1313
1359
  * @see {@link isGreaterThanOrEqualTo} for checking only the lower bound
1314
1360
  * @see {@link isLessThanOrEqualTo} for checking only the upper bound
1315
1361
  *
1362
+ * @stability stable
1316
1363
  * @category predicates
1317
1364
  * @since 2.0.0
1318
1365
  */
@@ -1349,6 +1396,7 @@ export const between: {
1349
1396
  * @see {@link isGreaterThanOrEqualTo} for checking only the lower bound
1350
1397
  * @see {@link isLessThanOrEqualTo} for checking only the upper bound
1351
1398
  *
1399
+ * @stability stable
1352
1400
  * @category predicates
1353
1401
  * @since 2.0.0
1354
1402
  */
@@ -1366,6 +1414,7 @@ export const between: {
1366
1414
  * Duration.Equivalence(Duration.seconds(5), Duration.millis(5000)) // => true
1367
1415
  * ```
1368
1416
  *
1417
+ * @stability stable
1369
1418
  * @category instances
1370
1419
  * @since 2.0.0
1371
1420
  */
@@ -1387,6 +1436,7 @@ export const Equivalence: Equ.Equivalence<Duration> = (self, that) =>
1387
1436
  * Duration.min(Duration.seconds(5), Duration.seconds(3)) // => Duration.seconds(3)
1388
1437
  * ```
1389
1438
  *
1439
+ * @stability stable
1390
1440
  * @category ordering
1391
1441
  * @since 2.0.0
1392
1442
  */
@@ -1402,6 +1452,7 @@ export const min: {
1402
1452
  * Duration.min(Duration.seconds(5), Duration.seconds(3)) // => Duration.seconds(3)
1403
1453
  * ```
1404
1454
  *
1455
+ * @stability stable
1405
1456
  * @category ordering
1406
1457
  * @since 2.0.0
1407
1458
  */
@@ -1417,6 +1468,7 @@ export const min: {
1417
1468
  * Duration.min(Duration.seconds(5), Duration.seconds(3)) // => Duration.seconds(3)
1418
1469
  * ```
1419
1470
  *
1471
+ * @stability stable
1420
1472
  * @category ordering
1421
1473
  * @since 2.0.0
1422
1474
  */
@@ -1434,6 +1486,7 @@ export const min: {
1434
1486
  * Duration.max(Duration.seconds(5), Duration.seconds(3)) // => Duration.seconds(5)
1435
1487
  * ```
1436
1488
  *
1489
+ * @stability stable
1437
1490
  * @category ordering
1438
1491
  * @since 2.0.0
1439
1492
  */
@@ -1449,6 +1502,7 @@ export const max: {
1449
1502
  * Duration.max(Duration.seconds(5), Duration.seconds(3)) // => Duration.seconds(5)
1450
1503
  * ```
1451
1504
  *
1505
+ * @stability stable
1452
1506
  * @category ordering
1453
1507
  * @since 2.0.0
1454
1508
  */
@@ -1464,6 +1518,7 @@ export const max: {
1464
1518
  * Duration.max(Duration.seconds(5), Duration.seconds(3)) // => Duration.seconds(5)
1465
1519
  * ```
1466
1520
  *
1521
+ * @stability stable
1467
1522
  * @category ordering
1468
1523
  * @since 2.0.0
1469
1524
  */
@@ -1484,6 +1539,7 @@ export const max: {
1484
1539
  * }) // => Duration.seconds(5)
1485
1540
  * ```
1486
1541
  *
1542
+ * @stability stable
1487
1543
  * @category ordering
1488
1544
  * @since 2.0.0
1489
1545
  */
@@ -1502,6 +1558,7 @@ export const clamp: {
1502
1558
  * }) // => Duration.seconds(5)
1503
1559
  * ```
1504
1560
  *
1561
+ * @stability stable
1505
1562
  * @category ordering
1506
1563
  * @since 2.0.0
1507
1564
  */
@@ -1520,6 +1577,7 @@ export const clamp: {
1520
1577
  * }) // => Duration.seconds(5)
1521
1578
  * ```
1522
1579
  *
1580
+ * @stability stable
1523
1581
  * @category ordering
1524
1582
  * @since 2.0.0
1525
1583
  */
@@ -1544,6 +1602,7 @@ export const clamp: {
1544
1602
  * Duration.divide(Duration.seconds(10), 0) // => Option.none()
1545
1603
  * ```
1546
1604
  *
1605
+ * @stability stable
1547
1606
  * @category math
1548
1607
  * @since 2.4.19
1549
1608
  */
@@ -1566,6 +1625,7 @@ export const divide: {
1566
1625
  * Duration.divide(Duration.seconds(10), 0) // => Option.none()
1567
1626
  * ```
1568
1627
  *
1628
+ * @stability stable
1569
1629
  * @category math
1570
1630
  * @since 2.4.19
1571
1631
  */
@@ -1588,6 +1648,7 @@ export const divide: {
1588
1648
  * Duration.divide(Duration.seconds(10), 0) // => Option.none()
1589
1649
  * ```
1590
1650
  *
1651
+ * @stability stable
1591
1652
  * @category math
1592
1653
  * @since 2.4.19
1593
1654
  */
@@ -1638,6 +1699,7 @@ export const divide: {
1638
1699
  * Duration.divideUnsafe(Duration.seconds(10), 0) // => Duration.infinity
1639
1700
  * ```
1640
1701
  *
1702
+ * @stability stable
1641
1703
  * @category math
1642
1704
  * @since 4.0.0
1643
1705
  */
@@ -1668,6 +1730,7 @@ export const divideUnsafe: {
1668
1730
  * Duration.divideUnsafe(Duration.seconds(10), 0) // => Duration.infinity
1669
1731
  * ```
1670
1732
  *
1733
+ * @stability stable
1671
1734
  * @category math
1672
1735
  * @since 4.0.0
1673
1736
  */
@@ -1698,6 +1761,7 @@ export const divideUnsafe: {
1698
1761
  * Duration.divideUnsafe(Duration.seconds(10), 0) // => Duration.infinity
1699
1762
  * ```
1700
1763
  *
1764
+ * @stability stable
1701
1765
  * @category math
1702
1766
  * @since 4.0.0
1703
1767
  */
@@ -1733,8 +1797,8 @@ export const divideUnsafe: {
1733
1797
  *
1734
1798
  * **Details**
1735
1799
  *
1736
- * For nanosecond-backed durations, the multiplier must be convertible to a
1737
- * `bigint`; fractional or non-finite multipliers can throw. Infinite
1800
+ * Fractional multipliers on nanosecond-backed durations round the result to
1801
+ * the nearest nanosecond, with ties rounding away from zero. Infinite
1738
1802
  * durations return positive infinity, negative infinity, or zero depending on
1739
1803
  * the multiplier sign.
1740
1804
  *
@@ -1746,6 +1810,7 @@ export const divideUnsafe: {
1746
1810
  * Duration.times(Duration.seconds(5), 2) // => Duration.seconds(10)
1747
1811
  * ```
1748
1812
  *
1813
+ * @stability stable
1749
1814
  * @category math
1750
1815
  * @since 2.0.0
1751
1816
  */
@@ -1755,8 +1820,8 @@ export const times: {
1755
1820
  *
1756
1821
  * **Details**
1757
1822
  *
1758
- * For nanosecond-backed durations, the multiplier must be convertible to a
1759
- * `bigint`; fractional or non-finite multipliers can throw. Infinite
1823
+ * Fractional multipliers on nanosecond-backed durations round the result to
1824
+ * the nearest nanosecond, with ties rounding away from zero. Infinite
1760
1825
  * durations return positive infinity, negative infinity, or zero depending on
1761
1826
  * the multiplier sign.
1762
1827
  *
@@ -1768,6 +1833,7 @@ export const times: {
1768
1833
  * Duration.times(Duration.seconds(5), 2) // => Duration.seconds(10)
1769
1834
  * ```
1770
1835
  *
1836
+ * @stability stable
1771
1837
  * @category math
1772
1838
  * @since 2.0.0
1773
1839
  */
@@ -1777,8 +1843,8 @@ export const times: {
1777
1843
  *
1778
1844
  * **Details**
1779
1845
  *
1780
- * For nanosecond-backed durations, the multiplier must be convertible to a
1781
- * `bigint`; fractional or non-finite multipliers can throw. Infinite
1846
+ * Fractional multipliers on nanosecond-backed durations round the result to
1847
+ * the nearest nanosecond, with ties rounding away from zero. Infinite
1782
1848
  * durations return positive infinity, negative infinity, or zero depending on
1783
1849
  * the multiplier sign.
1784
1850
  *
@@ -1790,6 +1856,7 @@ export const times: {
1790
1856
  * Duration.times(Duration.seconds(5), 2) // => Duration.seconds(10)
1791
1857
  * ```
1792
1858
  *
1859
+ * @stability stable
1793
1860
  * @category math
1794
1861
  * @since 2.0.0
1795
1862
  */
@@ -1799,7 +1866,24 @@ export const times: {
1799
1866
  (self: Duration, times: number): Duration =>
1800
1867
  match(self, {
1801
1868
  onMillis: (millis) => make(millis * times),
1802
- onNanos: (nanos) => make(nanos * BigInt(times)),
1869
+ onNanos: (nanos) => {
1870
+ if (Number.isInteger(times)) return make(nanos * BigInt(times))
1871
+ const nanosNumber = Number(nanos)
1872
+ const scaled = nanosNumber * times
1873
+ if (
1874
+ !Number.isFinite(times) ||
1875
+ (Number.isSafeInteger(nanosNumber) && Math.abs(scaled) <= Number.MAX_SAFE_INTEGER)
1876
+ ) {
1877
+ return fromNanosNumber(scaled)
1878
+ }
1879
+ let numerator = times
1880
+ let denominator = bigint1
1881
+ while (!Number.isInteger(numerator)) {
1882
+ numerator *= 2
1883
+ denominator *= bigint2
1884
+ }
1885
+ return make(divideTiesAwayFromZero(nanos * BigInt(numerator), denominator))
1886
+ },
1803
1887
  onInfinity: () => times > 0 ? infinity : times < 0 ? negativeInfinity : zero,
1804
1888
  onNegativeInfinity: () => times > 0 ? negativeInfinity : times < 0 ? infinity : zero
1805
1889
  })
@@ -1825,6 +1909,7 @@ export const times: {
1825
1909
  * Duration.subtract(Duration.seconds(10), Duration.seconds(3)) // => Duration.seconds(7)
1826
1910
  * ```
1827
1911
  *
1912
+ * @stability stable
1828
1913
  * @category math
1829
1914
  * @since 2.0.0
1830
1915
  */
@@ -1849,6 +1934,7 @@ export const subtract: {
1849
1934
  * Duration.subtract(Duration.seconds(10), Duration.seconds(3)) // => Duration.seconds(7)
1850
1935
  * ```
1851
1936
  *
1937
+ * @stability stable
1852
1938
  * @category math
1853
1939
  * @since 2.0.0
1854
1940
  */
@@ -1873,6 +1959,7 @@ export const subtract: {
1873
1959
  * Duration.subtract(Duration.seconds(10), Duration.seconds(3)) // => Duration.seconds(7)
1874
1960
  * ```
1875
1961
  *
1962
+ * @stability stable
1876
1963
  * @category math
1877
1964
  * @since 2.0.0
1878
1965
  */
@@ -1914,6 +2001,7 @@ export const subtract: {
1914
2001
  * Duration.sum(Duration.seconds(5), Duration.seconds(3)) // => Duration.seconds(8)
1915
2002
  * ```
1916
2003
  *
2004
+ * @stability stable
1917
2005
  * @category math
1918
2006
  * @since 2.0.0
1919
2007
  */
@@ -1939,6 +2027,7 @@ export const sum: {
1939
2027
  * Duration.sum(Duration.seconds(5), Duration.seconds(3)) // => Duration.seconds(8)
1940
2028
  * ```
1941
2029
  *
2030
+ * @stability stable
1942
2031
  * @category math
1943
2032
  * @since 2.0.0
1944
2033
  */
@@ -1964,6 +2053,7 @@ export const sum: {
1964
2053
  * Duration.sum(Duration.seconds(5), Duration.seconds(3)) // => Duration.seconds(8)
1965
2054
  * ```
1966
2055
  *
2056
+ * @stability stable
1967
2057
  * @category math
1968
2058
  * @since 2.0.0
1969
2059
  */
@@ -1998,6 +2088,7 @@ export const sum: {
1998
2088
  * Duration.isLessThan(Duration.seconds(3), Duration.seconds(5)) // => true
1999
2089
  * ```
2000
2090
  *
2091
+ * @stability stable
2001
2092
  * @category predicates
2002
2093
  * @since 4.0.0
2003
2094
  */
@@ -2013,6 +2104,7 @@ export const isLessThan: {
2013
2104
  * Duration.isLessThan(Duration.seconds(3), Duration.seconds(5)) // => true
2014
2105
  * ```
2015
2106
  *
2107
+ * @stability stable
2016
2108
  * @category predicates
2017
2109
  * @since 4.0.0
2018
2110
  */
@@ -2028,6 +2120,7 @@ export const isLessThan: {
2028
2120
  * Duration.isLessThan(Duration.seconds(3), Duration.seconds(5)) // => true
2029
2121
  * ```
2030
2122
  *
2123
+ * @stability stable
2031
2124
  * @category predicates
2032
2125
  * @since 4.0.0
2033
2126
  */
@@ -2048,6 +2141,7 @@ export const isLessThan: {
2048
2141
  * ) // => true
2049
2142
  * ```
2050
2143
  *
2144
+ * @stability stable
2051
2145
  * @category predicates
2052
2146
  * @since 4.0.0
2053
2147
  */
@@ -2066,6 +2160,7 @@ export const isLessThanOrEqualTo: {
2066
2160
  * ) // => true
2067
2161
  * ```
2068
2162
  *
2163
+ * @stability stable
2069
2164
  * @category predicates
2070
2165
  * @since 4.0.0
2071
2166
  */
@@ -2084,6 +2179,7 @@ export const isLessThanOrEqualTo: {
2084
2179
  * ) // => true
2085
2180
  * ```
2086
2181
  *
2182
+ * @stability stable
2087
2183
  * @category predicates
2088
2184
  * @since 4.0.0
2089
2185
  */
@@ -2101,6 +2197,7 @@ export const isLessThanOrEqualTo: {
2101
2197
  * Duration.isGreaterThan(Duration.seconds(5), Duration.seconds(3)) // => true
2102
2198
  * ```
2103
2199
  *
2200
+ * @stability stable
2104
2201
  * @category predicates
2105
2202
  * @since 4.0.0
2106
2203
  */
@@ -2116,6 +2213,7 @@ export const isGreaterThan: {
2116
2213
  * Duration.isGreaterThan(Duration.seconds(5), Duration.seconds(3)) // => true
2117
2214
  * ```
2118
2215
  *
2216
+ * @stability stable
2119
2217
  * @category predicates
2120
2218
  * @since 4.0.0
2121
2219
  */
@@ -2131,6 +2229,7 @@ export const isGreaterThan: {
2131
2229
  * Duration.isGreaterThan(Duration.seconds(5), Duration.seconds(3)) // => true
2132
2230
  * ```
2133
2231
  *
2232
+ * @stability stable
2134
2233
  * @category predicates
2135
2234
  * @since 4.0.0
2136
2235
  */
@@ -2151,6 +2250,7 @@ export const isGreaterThan: {
2151
2250
  * ) // => true
2152
2251
  * ```
2153
2252
  *
2253
+ * @stability stable
2154
2254
  * @category predicates
2155
2255
  * @since 4.0.0
2156
2256
  */
@@ -2169,6 +2269,7 @@ export const isGreaterThanOrEqualTo: {
2169
2269
  * ) // => true
2170
2270
  * ```
2171
2271
  *
2272
+ * @stability stable
2172
2273
  * @category predicates
2173
2274
  * @since 4.0.0
2174
2275
  */
@@ -2187,6 +2288,7 @@ export const isGreaterThanOrEqualTo: {
2187
2288
  * ) // => true
2188
2289
  * ```
2189
2290
  *
2291
+ * @stability stable
2190
2292
  * @category predicates
2191
2293
  * @since 4.0.0
2192
2294
  */
@@ -2204,6 +2306,7 @@ export const isGreaterThanOrEqualTo: {
2204
2306
  * Duration.equals(Duration.seconds(5), Duration.millis(5000)) // => true
2205
2307
  * ```
2206
2308
  *
2309
+ * @stability stable
2207
2310
  * @category predicates
2208
2311
  * @since 2.0.0
2209
2312
  */
@@ -2219,6 +2322,7 @@ export const equals: {
2219
2322
  * Duration.equals(Duration.seconds(5), Duration.millis(5000)) // => true
2220
2323
  * ```
2221
2324
  *
2325
+ * @stability stable
2222
2326
  * @category predicates
2223
2327
  * @since 2.0.0
2224
2328
  */
@@ -2234,6 +2338,7 @@ export const equals: {
2234
2338
  * Duration.equals(Duration.seconds(5), Duration.millis(5000)) // => true
2235
2339
  * ```
2236
2340
  *
2341
+ * @stability stable
2237
2342
  * @category predicates
2238
2343
  * @since 2.0.0
2239
2344
  */
@@ -2268,6 +2373,7 @@ export const equals: {
2268
2373
  * Duration.parts(complex) // => ({ days: 1, hours: 2, minutes: 30, seconds: 0, millis: 0, nanos: 0 })
2269
2374
  * ```
2270
2375
  *
2376
+ * @stability stable
2271
2377
  * @category converting
2272
2378
  * @since 3.8.0
2273
2379
  */
@@ -2332,6 +2438,7 @@ export const parts = (self: Duration): {
2332
2438
  * Duration.format(Duration.millis(1001)) // => "1s 1ms"
2333
2439
  * ```
2334
2440
  *
2441
+ * @stability stable
2335
2442
  * @category converting
2336
2443
  * @since 2.0.0
2337
2444
  */
@@ -2394,6 +2501,7 @@ export const format = (self: Duration): string => {
2394
2501
  * @see {@link CombinerMax} for keeping the longest duration instead of summing
2395
2502
  * @see {@link CombinerMin} for keeping the shortest duration instead of summing
2396
2503
  *
2504
+ * @stability stable
2397
2505
  * @category math
2398
2506
  * @since 4.0.0
2399
2507
  */
@@ -2409,6 +2517,7 @@ export const ReducerSum: Reducer.Reducer<Duration> = Reducer.make(sum, zero)
2409
2517
  * @see {@link CombinerMin} for keeping the shortest `Duration`
2410
2518
  * @see {@link max} for comparing two `Duration` values directly
2411
2519
  *
2520
+ * @stability stable
2412
2521
  * @category math
2413
2522
  * @since 4.0.0
2414
2523
  */
@@ -2424,6 +2533,7 @@ export const CombinerMax: Combiner.Combiner<Duration> = Combiner.max(Order)
2424
2533
  * @see {@link CombinerMax} for keeping the longest `Duration`
2425
2534
  * @see {@link min} for comparing two `Duration` values directly
2426
2535
  *
2536
+ * @stability stable
2427
2537
  * @category math
2428
2538
  * @since 4.0.0
2429
2539
  */