effect 4.0.0-beta.66 → 4.0.0-beta.68

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 (1767) hide show
  1. package/dist/Array.d.ts +151 -106
  2. package/dist/Array.d.ts.map +1 -1
  3. package/dist/Array.js +50 -40
  4. package/dist/Array.js.map +1 -1
  5. package/dist/BigDecimal.d.ts +620 -553
  6. package/dist/BigDecimal.d.ts.map +1 -1
  7. package/dist/BigDecimal.js +298 -254
  8. package/dist/BigDecimal.js.map +1 -1
  9. package/dist/BigInt.d.ts +342 -274
  10. package/dist/BigInt.d.ts.map +1 -1
  11. package/dist/BigInt.js +168 -126
  12. package/dist/BigInt.js.map +1 -1
  13. package/dist/Boolean.d.ts +189 -156
  14. package/dist/Boolean.d.ts.map +1 -1
  15. package/dist/Boolean.js +85 -68
  16. package/dist/Boolean.js.map +1 -1
  17. package/dist/Brand.d.ts +30 -5
  18. package/dist/Brand.d.ts.map +1 -1
  19. package/dist/Brand.js +19 -2
  20. package/dist/Brand.js.map +1 -1
  21. package/dist/Cache.d.ts +239 -135
  22. package/dist/Cache.d.ts.map +1 -1
  23. package/dist/Cache.js +135 -59
  24. package/dist/Cache.js.map +1 -1
  25. package/dist/Cause.d.ts +84 -73
  26. package/dist/Cause.d.ts.map +1 -1
  27. package/dist/Cause.js +51 -44
  28. package/dist/Cause.js.map +1 -1
  29. package/dist/Channel.d.ts +1568 -632
  30. package/dist/Channel.d.ts.map +1 -1
  31. package/dist/Channel.js +685 -315
  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 +574 -428
  38. package/dist/Chunk.d.ts.map +1 -1
  39. package/dist/Chunk.js +250 -191
  40. package/dist/Chunk.js.map +1 -1
  41. package/dist/Clock.d.ts +16 -9
  42. package/dist/Clock.d.ts.map +1 -1
  43. package/dist/Clock.js +9 -5
  44. package/dist/Clock.js.map +1 -1
  45. package/dist/Combiner.d.ts +11 -5
  46. package/dist/Combiner.d.ts.map +1 -1
  47. package/dist/Combiner.js +10 -4
  48. package/dist/Combiner.js.map +1 -1
  49. package/dist/Config.d.ts +80 -68
  50. package/dist/Config.d.ts.map +1 -1
  51. package/dist/Config.js +53 -49
  52. package/dist/Config.js.map +1 -1
  53. package/dist/ConfigProvider.d.ts +33 -32
  54. package/dist/ConfigProvider.d.ts.map +1 -1
  55. package/dist/ConfigProvider.js +19 -18
  56. package/dist/ConfigProvider.js.map +1 -1
  57. package/dist/Console.d.ts +76 -50
  58. package/dist/Console.d.ts.map +1 -1
  59. package/dist/Console.js +69 -46
  60. package/dist/Console.js.map +1 -1
  61. package/dist/Context.d.ts +400 -189
  62. package/dist/Context.d.ts.map +1 -1
  63. package/dist/Context.js +143 -77
  64. package/dist/Context.js.map +1 -1
  65. package/dist/Cron.d.ts +67 -48
  66. package/dist/Cron.d.ts.map +1 -1
  67. package/dist/Cron.js +94 -36
  68. package/dist/Cron.js.map +1 -1
  69. package/dist/Crypto.d.ts +208 -0
  70. package/dist/Crypto.d.ts.map +1 -0
  71. package/dist/Crypto.js +157 -0
  72. package/dist/Crypto.js.map +1 -0
  73. package/dist/Data.d.ts +9 -3
  74. package/dist/Data.d.ts.map +1 -1
  75. package/dist/Data.js.map +1 -1
  76. package/dist/DateTime.d.ts +893 -464
  77. package/dist/DateTime.d.ts.map +1 -1
  78. package/dist/DateTime.js +387 -228
  79. package/dist/DateTime.js.map +1 -1
  80. package/dist/Deferred.d.ts +367 -175
  81. package/dist/Deferred.d.ts.map +1 -1
  82. package/dist/Deferred.js +146 -72
  83. package/dist/Deferred.js.map +1 -1
  84. package/dist/Differ.d.ts +44 -2
  85. package/dist/Differ.d.ts.map +1 -1
  86. package/dist/Differ.js +36 -0
  87. package/dist/Duration.d.ts +333 -186
  88. package/dist/Duration.d.ts.map +1 -1
  89. package/dist/Duration.js +178 -107
  90. package/dist/Duration.js.map +1 -1
  91. package/dist/Effect.d.ts +2181 -2275
  92. package/dist/Effect.d.ts.map +1 -1
  93. package/dist/Effect.js +935 -850
  94. package/dist/Effect.js.map +1 -1
  95. package/dist/Effectable.d.ts +38 -3
  96. package/dist/Effectable.d.ts.map +1 -1
  97. package/dist/Effectable.js +3 -3
  98. package/dist/Effectable.js.map +1 -1
  99. package/dist/Encoding.d.ts +78 -28
  100. package/dist/Encoding.d.ts.map +1 -1
  101. package/dist/Encoding.js +75 -27
  102. package/dist/Encoding.js.map +1 -1
  103. package/dist/Equal.d.ts +4 -3
  104. package/dist/Equal.d.ts.map +1 -1
  105. package/dist/Equal.js +4 -3
  106. package/dist/Equal.js.map +1 -1
  107. package/dist/Equivalence.d.ts +18 -24
  108. package/dist/Equivalence.d.ts.map +1 -1
  109. package/dist/Equivalence.js +16 -21
  110. package/dist/Equivalence.js.map +1 -1
  111. package/dist/ErrorReporter.d.ts +66 -82
  112. package/dist/ErrorReporter.d.ts.map +1 -1
  113. package/dist/ErrorReporter.js +38 -29
  114. package/dist/ErrorReporter.js.map +1 -1
  115. package/dist/ExecutionPlan.d.ts +106 -12
  116. package/dist/ExecutionPlan.d.ts.map +1 -1
  117. package/dist/ExecutionPlan.js +23 -6
  118. package/dist/ExecutionPlan.js.map +1 -1
  119. package/dist/Exit.d.ts +6 -5
  120. package/dist/Exit.d.ts.map +1 -1
  121. package/dist/Exit.js.map +1 -1
  122. package/dist/Fiber.d.ts +71 -40
  123. package/dist/Fiber.d.ts.map +1 -1
  124. package/dist/Fiber.js +39 -21
  125. package/dist/Fiber.js.map +1 -1
  126. package/dist/FiberHandle.d.ts +118 -57
  127. package/dist/FiberHandle.d.ts.map +1 -1
  128. package/dist/FiberHandle.js +121 -39
  129. package/dist/FiberHandle.js.map +1 -1
  130. package/dist/FiberMap.d.ts +287 -159
  131. package/dist/FiberMap.d.ts.map +1 -1
  132. package/dist/FiberMap.js +175 -73
  133. package/dist/FiberMap.js.map +1 -1
  134. package/dist/FiberSet.d.ts +93 -52
  135. package/dist/FiberSet.d.ts.map +1 -1
  136. package/dist/FiberSet.js +97 -34
  137. package/dist/FiberSet.js.map +1 -1
  138. package/dist/FileSystem.d.ts +102 -73
  139. package/dist/FileSystem.d.ts.map +1 -1
  140. package/dist/FileSystem.js +53 -39
  141. package/dist/FileSystem.js.map +1 -1
  142. package/dist/Filter.d.ts +166 -88
  143. package/dist/Filter.d.ts.map +1 -1
  144. package/dist/Filter.js +68 -42
  145. package/dist/Filter.js.map +1 -1
  146. package/dist/Formatter.d.ts +4 -2
  147. package/dist/Formatter.d.ts.map +1 -1
  148. package/dist/Formatter.js +3 -69
  149. package/dist/Formatter.js.map +1 -1
  150. package/dist/Function.d.ts +218 -151
  151. package/dist/Function.d.ts.map +1 -1
  152. package/dist/Function.js +94 -78
  153. package/dist/Function.js.map +1 -1
  154. package/dist/Graph.d.ts +714 -415
  155. package/dist/Graph.d.ts.map +1 -1
  156. package/dist/Graph.js +325 -182
  157. package/dist/Graph.js.map +1 -1
  158. package/dist/HKT.d.ts +29 -13
  159. package/dist/HKT.d.ts.map +1 -1
  160. package/dist/Hash.d.ts +35 -24
  161. package/dist/Hash.d.ts.map +1 -1
  162. package/dist/Hash.js +27 -17
  163. package/dist/Hash.js.map +1 -1
  164. package/dist/HashMap.d.ts +540 -388
  165. package/dist/HashMap.d.ts.map +1 -1
  166. package/dist/HashMap.js +262 -156
  167. package/dist/HashMap.js.map +1 -1
  168. package/dist/HashRing.d.ts +53 -34
  169. package/dist/HashRing.d.ts.map +1 -1
  170. package/dist/HashRing.js +83 -16
  171. package/dist/HashRing.js.map +1 -1
  172. package/dist/HashSet.d.ts +239 -153
  173. package/dist/HashSet.d.ts.map +1 -1
  174. package/dist/HashSet.js +110 -56
  175. package/dist/HashSet.js.map +1 -1
  176. package/dist/Inspectable.d.ts +26 -13
  177. package/dist/Inspectable.d.ts.map +1 -1
  178. package/dist/Inspectable.js +22 -10
  179. package/dist/Inspectable.js.map +1 -1
  180. package/dist/Iterable.d.ts +336 -222
  181. package/dist/Iterable.d.ts.map +1 -1
  182. package/dist/Iterable.js +146 -100
  183. package/dist/Iterable.js.map +1 -1
  184. package/dist/JsonPatch.d.ts +12 -9
  185. package/dist/JsonPatch.d.ts.map +1 -1
  186. package/dist/JsonPatch.js +9 -6
  187. package/dist/JsonPatch.js.map +1 -1
  188. package/dist/JsonPointer.d.ts +13 -11
  189. package/dist/JsonPointer.d.ts.map +1 -1
  190. package/dist/JsonPointer.js +13 -11
  191. package/dist/JsonPointer.js.map +1 -1
  192. package/dist/JsonSchema.d.ts +16 -0
  193. package/dist/JsonSchema.d.ts.map +1 -1
  194. package/dist/JsonSchema.js +10 -0
  195. package/dist/JsonSchema.js.map +1 -1
  196. package/dist/Latch.d.ts +97 -26
  197. package/dist/Latch.d.ts.map +1 -1
  198. package/dist/Latch.js +39 -20
  199. package/dist/Latch.js.map +1 -1
  200. package/dist/Layer.d.ts +472 -410
  201. package/dist/Layer.d.ts.map +1 -1
  202. package/dist/Layer.js +290 -226
  203. package/dist/Layer.js.map +1 -1
  204. package/dist/LayerMap.d.ts +99 -26
  205. package/dist/LayerMap.d.ts.map +1 -1
  206. package/dist/LayerMap.js +58 -14
  207. package/dist/LayerMap.js.map +1 -1
  208. package/dist/LogLevel.d.ts +92 -131
  209. package/dist/LogLevel.d.ts.map +1 -1
  210. package/dist/LogLevel.js +25 -15
  211. package/dist/LogLevel.js.map +1 -1
  212. package/dist/Logger.d.ts +159 -104
  213. package/dist/Logger.d.ts.map +1 -1
  214. package/dist/Logger.js +215 -189
  215. package/dist/Logger.js.map +1 -1
  216. package/dist/ManagedRuntime.d.ts +78 -19
  217. package/dist/ManagedRuntime.d.ts.map +1 -1
  218. package/dist/ManagedRuntime.js +24 -17
  219. package/dist/ManagedRuntime.js.map +1 -1
  220. package/dist/Match.d.ts +135 -161
  221. package/dist/Match.d.ts.map +1 -1
  222. package/dist/Match.js +86 -78
  223. package/dist/Match.js.map +1 -1
  224. package/dist/Metric.d.ts +330 -291
  225. package/dist/Metric.d.ts.map +1 -1
  226. package/dist/Metric.js +219 -214
  227. package/dist/Metric.js.map +1 -1
  228. package/dist/MutableHashMap.d.ts +146 -87
  229. package/dist/MutableHashMap.d.ts.map +1 -1
  230. package/dist/MutableHashMap.js +67 -43
  231. package/dist/MutableHashMap.js.map +1 -1
  232. package/dist/MutableHashSet.d.ts +52 -30
  233. package/dist/MutableHashSet.d.ts.map +1 -1
  234. package/dist/MutableHashSet.js +92 -38
  235. package/dist/MutableHashSet.js.map +1 -1
  236. package/dist/MutableList.d.ts +110 -68
  237. package/dist/MutableList.d.ts.map +1 -1
  238. package/dist/MutableList.js +135 -85
  239. package/dist/MutableList.js.map +1 -1
  240. package/dist/MutableRef.d.ts +99 -62
  241. package/dist/MutableRef.d.ts.map +1 -1
  242. package/dist/MutableRef.js +78 -60
  243. package/dist/MutableRef.js.map +1 -1
  244. package/dist/Newtype.d.ts +15 -2
  245. package/dist/Newtype.d.ts.map +1 -1
  246. package/dist/Newtype.js +8 -2
  247. package/dist/Newtype.js.map +1 -1
  248. package/dist/NonEmptyIterable.d.ts +38 -48
  249. package/dist/NonEmptyIterable.d.ts.map +1 -1
  250. package/dist/NonEmptyIterable.js +34 -25
  251. package/dist/NonEmptyIterable.js.map +1 -1
  252. package/dist/Number.d.ts +261 -205
  253. package/dist/Number.d.ts.map +1 -1
  254. package/dist/Number.js +119 -91
  255. package/dist/Number.js.map +1 -1
  256. package/dist/Optic.d.ts +6 -7
  257. package/dist/Optic.d.ts.map +1 -1
  258. package/dist/Optic.js +5 -6
  259. package/dist/Optic.js.map +1 -1
  260. package/dist/Option.d.ts +133 -156
  261. package/dist/Option.d.ts.map +1 -1
  262. package/dist/Option.js +64 -64
  263. package/dist/Option.js.map +1 -1
  264. package/dist/Order.d.ts +6 -6
  265. package/dist/Order.js +6 -6
  266. package/dist/Ordering.d.ts +56 -45
  267. package/dist/Ordering.d.ts.map +1 -1
  268. package/dist/Ordering.js +10 -8
  269. package/dist/Ordering.js.map +1 -1
  270. package/dist/PartitionedSemaphore.d.ts +225 -40
  271. package/dist/PartitionedSemaphore.d.ts.map +1 -1
  272. package/dist/PartitionedSemaphore.js +113 -17
  273. package/dist/PartitionedSemaphore.js.map +1 -1
  274. package/dist/Path.d.ts +77 -13
  275. package/dist/Path.d.ts.map +1 -1
  276. package/dist/Path.js +49 -4
  277. package/dist/Path.js.map +1 -1
  278. package/dist/Pipeable.d.ts +77 -18
  279. package/dist/Pipeable.d.ts.map +1 -1
  280. package/dist/Pipeable.js +63 -14
  281. package/dist/Pipeable.js.map +1 -1
  282. package/dist/PlatformError.d.ts +74 -6
  283. package/dist/PlatformError.d.ts.map +1 -1
  284. package/dist/PlatformError.js +68 -5
  285. package/dist/PlatformError.js.map +1 -1
  286. package/dist/Pool.d.ts +66 -31
  287. package/dist/Pool.d.ts.map +1 -1
  288. package/dist/Pool.js +26 -24
  289. package/dist/Pool.js.map +1 -1
  290. package/dist/Predicate.d.ts +16 -23
  291. package/dist/Predicate.d.ts.map +1 -1
  292. package/dist/Predicate.js +12 -17
  293. package/dist/Predicate.js.map +1 -1
  294. package/dist/PrimaryKey.d.ts +11 -3
  295. package/dist/PrimaryKey.d.ts.map +1 -1
  296. package/dist/PrimaryKey.js +9 -2
  297. package/dist/PrimaryKey.js.map +1 -1
  298. package/dist/PubSub.d.ts +385 -309
  299. package/dist/PubSub.d.ts.map +1 -1
  300. package/dist/PubSub.js +260 -207
  301. package/dist/PubSub.js.map +1 -1
  302. package/dist/Pull.d.ts +94 -25
  303. package/dist/Pull.d.ts.map +1 -1
  304. package/dist/Pull.js +61 -13
  305. package/dist/Pull.js.map +1 -1
  306. package/dist/Queue.d.ts +303 -184
  307. package/dist/Queue.d.ts.map +1 -1
  308. package/dist/Queue.js +231 -134
  309. package/dist/Queue.js.map +1 -1
  310. package/dist/Random.d.ts +65 -57
  311. package/dist/Random.d.ts.map +1 -1
  312. package/dist/Random.js +41 -66
  313. package/dist/Random.js.map +1 -1
  314. package/dist/RcMap.d.ts +151 -141
  315. package/dist/RcMap.d.ts.map +1 -1
  316. package/dist/RcMap.js +66 -20
  317. package/dist/RcMap.js.map +1 -1
  318. package/dist/RcRef.d.ts +68 -32
  319. package/dist/RcRef.d.ts.map +1 -1
  320. package/dist/RcRef.js +33 -16
  321. package/dist/RcRef.js.map +1 -1
  322. package/dist/Record.d.ts +282 -137
  323. package/dist/Record.d.ts.map +1 -1
  324. package/dist/Record.js +124 -62
  325. package/dist/Record.js.map +1 -1
  326. package/dist/Redactable.d.ts +7 -5
  327. package/dist/Redactable.d.ts.map +1 -1
  328. package/dist/Redactable.js +5 -3
  329. package/dist/Redactable.js.map +1 -1
  330. package/dist/Redacted.d.ts +63 -34
  331. package/dist/Redacted.d.ts.map +1 -1
  332. package/dist/Redacted.js +31 -15
  333. package/dist/Redacted.js.map +1 -1
  334. package/dist/Reducer.d.ts +3 -1
  335. package/dist/Reducer.d.ts.map +1 -1
  336. package/dist/Reducer.js +2 -0
  337. package/dist/Reducer.js.map +1 -1
  338. package/dist/Ref.d.ts +85 -66
  339. package/dist/Ref.d.ts.map +1 -1
  340. package/dist/Ref.js +57 -45
  341. package/dist/Ref.js.map +1 -1
  342. package/dist/References.d.ts +73 -31
  343. package/dist/References.d.ts.map +1 -1
  344. package/dist/References.js +66 -30
  345. package/dist/References.js.map +1 -1
  346. package/dist/RegExp.d.ts +12 -6
  347. package/dist/RegExp.d.ts.map +1 -1
  348. package/dist/RegExp.js +12 -6
  349. package/dist/RegExp.js.map +1 -1
  350. package/dist/Request.d.ts +159 -34
  351. package/dist/Request.d.ts.map +1 -1
  352. package/dist/Request.js +68 -12
  353. package/dist/Request.js.map +1 -1
  354. package/dist/RequestResolver.d.ts +262 -118
  355. package/dist/RequestResolver.d.ts.map +1 -1
  356. package/dist/RequestResolver.js +78 -42
  357. package/dist/RequestResolver.js.map +1 -1
  358. package/dist/Resource.d.ts +13 -7
  359. package/dist/Resource.d.ts.map +1 -1
  360. package/dist/Resource.js +44 -6
  361. package/dist/Resource.js.map +1 -1
  362. package/dist/Result.d.ts +135 -151
  363. package/dist/Result.d.ts.map +1 -1
  364. package/dist/Result.js +56 -68
  365. package/dist/Result.js.map +1 -1
  366. package/dist/Runtime.d.ts +40 -20
  367. package/dist/Runtime.d.ts.map +1 -1
  368. package/dist/Runtime.js +34 -17
  369. package/dist/Runtime.js.map +1 -1
  370. package/dist/Schedule.d.ts +556 -590
  371. package/dist/Schedule.d.ts.map +1 -1
  372. package/dist/Schedule.js +265 -253
  373. package/dist/Schedule.js.map +1 -1
  374. package/dist/Scheduler.d.ts +44 -7
  375. package/dist/Scheduler.d.ts.map +1 -1
  376. package/dist/Scheduler.js +34 -5
  377. package/dist/Scheduler.js.map +1 -1
  378. package/dist/Schema.d.ts +1293 -602
  379. package/dist/Schema.d.ts.map +1 -1
  380. package/dist/Schema.js +501 -361
  381. package/dist/Schema.js.map +1 -1
  382. package/dist/SchemaAST.d.ts +122 -92
  383. package/dist/SchemaAST.d.ts.map +1 -1
  384. package/dist/SchemaAST.js +102 -77
  385. package/dist/SchemaAST.js.map +1 -1
  386. package/dist/SchemaGetter.d.ts +49 -36
  387. package/dist/SchemaGetter.d.ts.map +1 -1
  388. package/dist/SchemaGetter.js +42 -29
  389. package/dist/SchemaGetter.js.map +1 -1
  390. package/dist/SchemaIssue.d.ts +19 -24
  391. package/dist/SchemaIssue.d.ts.map +1 -1
  392. package/dist/SchemaIssue.js +16 -14
  393. package/dist/SchemaIssue.js.map +1 -1
  394. package/dist/SchemaParser.d.ts +231 -63
  395. package/dist/SchemaParser.d.ts.map +1 -1
  396. package/dist/SchemaParser.js +266 -75
  397. package/dist/SchemaParser.js.map +1 -1
  398. package/dist/SchemaRepresentation.d.ts +89 -77
  399. package/dist/SchemaRepresentation.d.ts.map +1 -1
  400. package/dist/SchemaRepresentation.js +47 -37
  401. package/dist/SchemaRepresentation.js.map +1 -1
  402. package/dist/SchemaTransformation.d.ts +97 -46
  403. package/dist/SchemaTransformation.d.ts.map +1 -1
  404. package/dist/SchemaTransformation.js +89 -38
  405. package/dist/SchemaTransformation.js.map +1 -1
  406. package/dist/SchemaUtils.d.ts +8 -1
  407. package/dist/SchemaUtils.d.ts.map +1 -1
  408. package/dist/SchemaUtils.js +24 -1
  409. package/dist/SchemaUtils.js.map +1 -1
  410. package/dist/Scope.d.ts +107 -65
  411. package/dist/Scope.d.ts.map +1 -1
  412. package/dist/Scope.js +61 -32
  413. package/dist/Scope.js.map +1 -1
  414. package/dist/ScopedCache.d.ts +141 -49
  415. package/dist/ScopedCache.d.ts.map +1 -1
  416. package/dist/ScopedCache.js +82 -21
  417. package/dist/ScopedCache.js.map +1 -1
  418. package/dist/ScopedRef.d.ts +28 -8
  419. package/dist/ScopedRef.d.ts.map +1 -1
  420. package/dist/ScopedRef.js +25 -5
  421. package/dist/ScopedRef.js.map +1 -1
  422. package/dist/Semaphore.d.ts +61 -37
  423. package/dist/Semaphore.d.ts.map +1 -1
  424. package/dist/Semaphore.js +18 -21
  425. package/dist/Semaphore.js.map +1 -1
  426. package/dist/Sink.d.ts +461 -206
  427. package/dist/Sink.d.ts.map +1 -1
  428. package/dist/Sink.js +241 -90
  429. package/dist/Sink.js.map +1 -1
  430. package/dist/Stdio.d.ts +43 -6
  431. package/dist/Stdio.d.ts.map +1 -1
  432. package/dist/Stdio.js +33 -4
  433. package/dist/Stdio.js.map +1 -1
  434. package/dist/Stream.d.ts +2117 -1541
  435. package/dist/Stream.d.ts.map +1 -1
  436. package/dist/Stream.js +951 -682
  437. package/dist/Stream.js.map +1 -1
  438. package/dist/String.d.ts +174 -97
  439. package/dist/String.d.ts.map +1 -1
  440. package/dist/String.js +128 -69
  441. package/dist/String.js.map +1 -1
  442. package/dist/Struct.d.ts +20 -18
  443. package/dist/Struct.d.ts.map +1 -1
  444. package/dist/Struct.js +10 -8
  445. package/dist/Struct.js.map +1 -1
  446. package/dist/SubscriptionRef.d.ts +309 -204
  447. package/dist/SubscriptionRef.d.ts.map +1 -1
  448. package/dist/SubscriptionRef.js +126 -77
  449. package/dist/SubscriptionRef.js.map +1 -1
  450. package/dist/Symbol.d.ts +13 -5
  451. package/dist/Symbol.d.ts.map +1 -1
  452. package/dist/Symbol.js +13 -5
  453. package/dist/Symbol.js.map +1 -1
  454. package/dist/SynchronizedRef.d.ts +278 -62
  455. package/dist/SynchronizedRef.d.ts.map +1 -1
  456. package/dist/SynchronizedRef.js +116 -23
  457. package/dist/SynchronizedRef.js.map +1 -1
  458. package/dist/Take.d.ts +26 -2
  459. package/dist/Take.d.ts.map +1 -1
  460. package/dist/Take.js +4 -1
  461. package/dist/Take.js.map +1 -1
  462. package/dist/Terminal.d.ts +39 -7
  463. package/dist/Terminal.d.ts.map +1 -1
  464. package/dist/Terminal.js +10 -4
  465. package/dist/Terminal.js.map +1 -1
  466. package/dist/Tracer.d.ts +233 -59
  467. package/dist/Tracer.d.ts.map +1 -1
  468. package/dist/Tracer.js +94 -18
  469. package/dist/Tracer.js.map +1 -1
  470. package/dist/Trie.d.ts +280 -245
  471. package/dist/Trie.d.ts.map +1 -1
  472. package/dist/Trie.js +116 -102
  473. package/dist/Trie.js.map +1 -1
  474. package/dist/Tuple.d.ts +34 -32
  475. package/dist/Tuple.d.ts.map +1 -1
  476. package/dist/Tuple.js +16 -14
  477. package/dist/Tuple.js.map +1 -1
  478. package/dist/TxChunk.d.ts +200 -155
  479. package/dist/TxChunk.d.ts.map +1 -1
  480. package/dist/TxChunk.js +83 -61
  481. package/dist/TxChunk.js.map +1 -1
  482. package/dist/TxDeferred.d.ts +43 -29
  483. package/dist/TxDeferred.d.ts.map +1 -1
  484. package/dist/TxDeferred.js +22 -15
  485. package/dist/TxDeferred.js.map +1 -1
  486. package/dist/TxHashMap.d.ts +362 -223
  487. package/dist/TxHashMap.d.ts.map +1 -1
  488. package/dist/TxHashMap.js +171 -98
  489. package/dist/TxHashMap.js.map +1 -1
  490. package/dist/TxHashSet.d.ts +181 -111
  491. package/dist/TxHashSet.d.ts.map +1 -1
  492. package/dist/TxHashSet.js +87 -49
  493. package/dist/TxHashSet.js.map +1 -1
  494. package/dist/TxPriorityQueue.d.ts +94 -63
  495. package/dist/TxPriorityQueue.d.ts.map +1 -1
  496. package/dist/TxPriorityQueue.js +55 -37
  497. package/dist/TxPriorityQueue.js.map +1 -1
  498. package/dist/TxPubSub.d.ts +77 -49
  499. package/dist/TxPubSub.d.ts.map +1 -1
  500. package/dist/TxPubSub.js +60 -37
  501. package/dist/TxPubSub.js.map +1 -1
  502. package/dist/TxQueue.d.ts +277 -242
  503. package/dist/TxQueue.d.ts.map +1 -1
  504. package/dist/TxQueue.js +147 -101
  505. package/dist/TxQueue.js.map +1 -1
  506. package/dist/TxReentrantLock.d.ts +69 -46
  507. package/dist/TxReentrantLock.d.ts.map +1 -1
  508. package/dist/TxReentrantLock.js +48 -32
  509. package/dist/TxReentrantLock.js.map +1 -1
  510. package/dist/TxRef.d.ts +69 -40
  511. package/dist/TxRef.d.ts.map +1 -1
  512. package/dist/TxRef.js +34 -19
  513. package/dist/TxRef.js.map +1 -1
  514. package/dist/TxSemaphore.d.ts +101 -115
  515. package/dist/TxSemaphore.d.ts.map +1 -1
  516. package/dist/TxSemaphore.js +76 -77
  517. package/dist/TxSemaphore.js.map +1 -1
  518. package/dist/TxSubscriptionRef.d.ts +74 -50
  519. package/dist/TxSubscriptionRef.d.ts.map +1 -1
  520. package/dist/TxSubscriptionRef.js +34 -23
  521. package/dist/TxSubscriptionRef.js.map +1 -1
  522. package/dist/Types.d.ts +31 -34
  523. package/dist/Types.d.ts.map +1 -1
  524. package/dist/UndefinedOr.d.ts +62 -25
  525. package/dist/UndefinedOr.d.ts.map +1 -1
  526. package/dist/UndefinedOr.js +36 -25
  527. package/dist/UndefinedOr.js.map +1 -1
  528. package/dist/Unify.d.ts +72 -117
  529. package/dist/Unify.d.ts.map +1 -1
  530. package/dist/Unify.js +20 -6
  531. package/dist/Unify.js.map +1 -1
  532. package/dist/Utils.d.ts +5 -2
  533. package/dist/Utils.d.ts.map +1 -1
  534. package/dist/Utils.js +4 -0
  535. package/dist/Utils.js.map +1 -1
  536. package/dist/index.d.ts +1973 -418
  537. package/dist/index.d.ts.map +1 -1
  538. package/dist/index.js +1973 -418
  539. package/dist/index.js.map +1 -1
  540. package/dist/internal/schema/schema.js +1 -1
  541. package/dist/internal/schema/schema.js.map +1 -1
  542. package/dist/testing/FastCheck.d.ts +9 -6
  543. package/dist/testing/FastCheck.d.ts.map +1 -1
  544. package/dist/testing/FastCheck.js +9 -6
  545. package/dist/testing/FastCheck.js.map +1 -1
  546. package/dist/testing/TestClock.d.ts +39 -35
  547. package/dist/testing/TestClock.d.ts.map +1 -1
  548. package/dist/testing/TestClock.js +42 -12
  549. package/dist/testing/TestClock.js.map +1 -1
  550. package/dist/testing/TestConsole.d.ts +44 -36
  551. package/dist/testing/TestConsole.d.ts.map +1 -1
  552. package/dist/testing/TestConsole.js +30 -15
  553. package/dist/testing/TestConsole.js.map +1 -1
  554. package/dist/testing/TestSchema.d.ts +2 -0
  555. package/dist/testing/TestSchema.d.ts.map +1 -1
  556. package/dist/testing/TestSchema.js +9 -7
  557. package/dist/testing/TestSchema.js.map +1 -1
  558. package/dist/testing/index.d.ts +34 -0
  559. package/dist/testing/index.d.ts.map +1 -1
  560. package/dist/testing/index.js +34 -0
  561. package/dist/testing/index.js.map +1 -1
  562. package/dist/unstable/ai/AiError.d.ts +205 -147
  563. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  564. package/dist/unstable/ai/AiError.js +164 -109
  565. package/dist/unstable/ai/AiError.js.map +1 -1
  566. package/dist/unstable/ai/AnthropicStructuredOutput.d.ts +1 -1
  567. package/dist/unstable/ai/AnthropicStructuredOutput.js +2 -2
  568. package/dist/unstable/ai/Chat.d.ts +64 -41
  569. package/dist/unstable/ai/Chat.d.ts.map +1 -1
  570. package/dist/unstable/ai/Chat.js +51 -33
  571. package/dist/unstable/ai/Chat.js.map +1 -1
  572. package/dist/unstable/ai/EmbeddingModel.d.ts +12 -11
  573. package/dist/unstable/ai/EmbeddingModel.d.ts.map +1 -1
  574. package/dist/unstable/ai/EmbeddingModel.js +9 -8
  575. package/dist/unstable/ai/EmbeddingModel.js.map +1 -1
  576. package/dist/unstable/ai/IdGenerator.d.ts +28 -18
  577. package/dist/unstable/ai/IdGenerator.d.ts.map +1 -1
  578. package/dist/unstable/ai/IdGenerator.js +18 -11
  579. package/dist/unstable/ai/IdGenerator.js.map +1 -1
  580. package/dist/unstable/ai/LanguageModel.d.ts +31 -25
  581. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  582. package/dist/unstable/ai/LanguageModel.js +20 -14
  583. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  584. package/dist/unstable/ai/McpSchema.d.ts +342 -119
  585. package/dist/unstable/ai/McpSchema.d.ts.map +1 -1
  586. package/dist/unstable/ai/McpSchema.js +266 -98
  587. package/dist/unstable/ai/McpSchema.js.map +1 -1
  588. package/dist/unstable/ai/McpServer.d.ts +56 -20
  589. package/dist/unstable/ai/McpServer.d.ts.map +1 -1
  590. package/dist/unstable/ai/McpServer.js +64 -16
  591. package/dist/unstable/ai/McpServer.js.map +1 -1
  592. package/dist/unstable/ai/Model.d.ts +10 -12
  593. package/dist/unstable/ai/Model.d.ts.map +1 -1
  594. package/dist/unstable/ai/Model.js +9 -7
  595. package/dist/unstable/ai/Model.js.map +1 -1
  596. package/dist/unstable/ai/OpenAiStructuredOutput.d.ts +1 -1
  597. package/dist/unstable/ai/OpenAiStructuredOutput.js +2 -2
  598. package/dist/unstable/ai/Prompt.d.ts +200 -176
  599. package/dist/unstable/ai/Prompt.d.ts.map +1 -1
  600. package/dist/unstable/ai/Prompt.js +77 -68
  601. package/dist/unstable/ai/Prompt.js.map +1 -1
  602. package/dist/unstable/ai/Response.d.ts +173 -160
  603. package/dist/unstable/ai/Response.d.ts.map +1 -1
  604. package/dist/unstable/ai/Response.js +43 -48
  605. package/dist/unstable/ai/Response.js.map +1 -1
  606. package/dist/unstable/ai/ResponseIdTracker.d.ts +43 -4
  607. package/dist/unstable/ai/ResponseIdTracker.d.ts.map +1 -1
  608. package/dist/unstable/ai/ResponseIdTracker.js +27 -2
  609. package/dist/unstable/ai/ResponseIdTracker.js.map +1 -1
  610. package/dist/unstable/ai/Telemetry.d.ts +43 -33
  611. package/dist/unstable/ai/Telemetry.d.ts.map +1 -1
  612. package/dist/unstable/ai/Telemetry.js +15 -11
  613. package/dist/unstable/ai/Telemetry.js.map +1 -1
  614. package/dist/unstable/ai/Tokenizer.d.ts +14 -9
  615. package/dist/unstable/ai/Tokenizer.d.ts.map +1 -1
  616. package/dist/unstable/ai/Tokenizer.js +10 -6
  617. package/dist/unstable/ai/Tokenizer.js.map +1 -1
  618. package/dist/unstable/ai/Tool.d.ts +167 -96
  619. package/dist/unstable/ai/Tool.d.ts.map +1 -1
  620. package/dist/unstable/ai/Tool.js +107 -53
  621. package/dist/unstable/ai/Tool.js.map +1 -1
  622. package/dist/unstable/ai/Toolkit.d.ts +32 -39
  623. package/dist/unstable/ai/Toolkit.d.ts.map +1 -1
  624. package/dist/unstable/ai/Toolkit.js +7 -5
  625. package/dist/unstable/ai/Toolkit.js.map +1 -1
  626. package/dist/unstable/ai/index.d.ts +121 -29
  627. package/dist/unstable/ai/index.d.ts.map +1 -1
  628. package/dist/unstable/ai/index.js +121 -29
  629. package/dist/unstable/ai/index.js.map +1 -1
  630. package/dist/unstable/cli/Argument.d.ts +226 -134
  631. package/dist/unstable/cli/Argument.d.ts.map +1 -1
  632. package/dist/unstable/cli/Argument.js +101 -65
  633. package/dist/unstable/cli/Argument.js.map +1 -1
  634. package/dist/unstable/cli/CliError.d.ts +72 -26
  635. package/dist/unstable/cli/CliError.d.ts.map +1 -1
  636. package/dist/unstable/cli/CliError.js +86 -23
  637. package/dist/unstable/cli/CliError.js.map +1 -1
  638. package/dist/unstable/cli/CliOutput.d.ts +48 -19
  639. package/dist/unstable/cli/CliOutput.d.ts.map +1 -1
  640. package/dist/unstable/cli/CliOutput.js +32 -9
  641. package/dist/unstable/cli/CliOutput.js.map +1 -1
  642. package/dist/unstable/cli/Command.d.ts +196 -115
  643. package/dist/unstable/cli/Command.d.ts.map +1 -1
  644. package/dist/unstable/cli/Command.js +45 -31
  645. package/dist/unstable/cli/Command.js.map +1 -1
  646. package/dist/unstable/cli/Completions.d.ts +7 -7
  647. package/dist/unstable/cli/Completions.js +1 -1
  648. package/dist/unstable/cli/Flag.d.ts +235 -142
  649. package/dist/unstable/cli/Flag.d.ts.map +1 -1
  650. package/dist/unstable/cli/Flag.js +111 -71
  651. package/dist/unstable/cli/Flag.js.map +1 -1
  652. package/dist/unstable/cli/GlobalFlag.d.ts +41 -13
  653. package/dist/unstable/cli/GlobalFlag.d.ts.map +1 -1
  654. package/dist/unstable/cli/GlobalFlag.js +30 -7
  655. package/dist/unstable/cli/GlobalFlag.js.map +1 -1
  656. package/dist/unstable/cli/HelpDoc.d.ts +39 -14
  657. package/dist/unstable/cli/HelpDoc.d.ts.map +1 -1
  658. package/dist/unstable/cli/HelpDoc.js +21 -0
  659. package/dist/unstable/cli/Param.d.ts +110 -32
  660. package/dist/unstable/cli/Param.d.ts.map +1 -1
  661. package/dist/unstable/cli/Param.js +196 -135
  662. package/dist/unstable/cli/Param.js.map +1 -1
  663. package/dist/unstable/cli/Primitive.d.ts +79 -42
  664. package/dist/unstable/cli/Primitive.d.ts.map +1 -1
  665. package/dist/unstable/cli/Primitive.js +66 -35
  666. package/dist/unstable/cli/Primitive.js.map +1 -1
  667. package/dist/unstable/cli/Prompt.d.ts +183 -59
  668. package/dist/unstable/cli/Prompt.d.ts.map +1 -1
  669. package/dist/unstable/cli/Prompt.js +105 -23
  670. package/dist/unstable/cli/Prompt.js.map +1 -1
  671. package/dist/unstable/cli/index.d.ts +182 -0
  672. package/dist/unstable/cli/index.d.ts.map +1 -1
  673. package/dist/unstable/cli/index.js +205 -6
  674. package/dist/unstable/cli/index.js.map +1 -1
  675. package/dist/unstable/cli/internal/ansi.d.ts.map +1 -1
  676. package/dist/unstable/cli/internal/ansi.js +13 -0
  677. package/dist/unstable/cli/internal/ansi.js.map +1 -1
  678. package/dist/unstable/cli/internal/command.d.ts +5 -1
  679. package/dist/unstable/cli/internal/command.d.ts.map +1 -1
  680. package/dist/unstable/cli/internal/command.js +5 -1
  681. package/dist/unstable/cli/internal/command.js.map +1 -1
  682. package/dist/unstable/cli/internal/config.d.ts +3 -0
  683. package/dist/unstable/cli/internal/config.d.ts.map +1 -1
  684. package/dist/unstable/cli/internal/config.js.map +1 -1
  685. package/dist/unstable/cli/internal/lexer.js.map +1 -1
  686. package/dist/unstable/cli/internal/parser.js +0 -1
  687. package/dist/unstable/cli/internal/parser.js.map +1 -1
  688. package/dist/unstable/cluster/ClusterCron.d.ts +35 -1
  689. package/dist/unstable/cluster/ClusterCron.d.ts.map +1 -1
  690. package/dist/unstable/cluster/ClusterCron.js +35 -1
  691. package/dist/unstable/cluster/ClusterCron.js.map +1 -1
  692. package/dist/unstable/cluster/ClusterError.d.ts +56 -7
  693. package/dist/unstable/cluster/ClusterError.d.ts.map +1 -1
  694. package/dist/unstable/cluster/ClusterError.js +56 -7
  695. package/dist/unstable/cluster/ClusterError.js.map +1 -1
  696. package/dist/unstable/cluster/ClusterMetrics.d.ts +39 -5
  697. package/dist/unstable/cluster/ClusterMetrics.d.ts.map +1 -1
  698. package/dist/unstable/cluster/ClusterMetrics.js +39 -5
  699. package/dist/unstable/cluster/ClusterMetrics.js.map +1 -1
  700. package/dist/unstable/cluster/ClusterSchema.d.ts +61 -8
  701. package/dist/unstable/cluster/ClusterSchema.d.ts.map +1 -1
  702. package/dist/unstable/cluster/ClusterSchema.js +61 -8
  703. package/dist/unstable/cluster/ClusterSchema.js.map +1 -1
  704. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts +14 -2
  705. package/dist/unstable/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
  706. package/dist/unstable/cluster/ClusterWorkflowEngine.js +35 -2
  707. package/dist/unstable/cluster/ClusterWorkflowEngine.js.map +1 -1
  708. package/dist/unstable/cluster/DeliverAt.d.ts +39 -4
  709. package/dist/unstable/cluster/DeliverAt.d.ts.map +1 -1
  710. package/dist/unstable/cluster/DeliverAt.js +11 -3
  711. package/dist/unstable/cluster/DeliverAt.js.map +1 -1
  712. package/dist/unstable/cluster/Entity.d.ts +74 -16
  713. package/dist/unstable/cluster/Entity.d.ts.map +1 -1
  714. package/dist/unstable/cluster/Entity.js +75 -10
  715. package/dist/unstable/cluster/Entity.js.map +1 -1
  716. package/dist/unstable/cluster/EntityAddress.d.ts +30 -2
  717. package/dist/unstable/cluster/EntityAddress.d.ts.map +1 -1
  718. package/dist/unstable/cluster/EntityAddress.js +30 -2
  719. package/dist/unstable/cluster/EntityAddress.js.map +1 -1
  720. package/dist/unstable/cluster/EntityId.d.ts +18 -3
  721. package/dist/unstable/cluster/EntityId.d.ts.map +1 -1
  722. package/dist/unstable/cluster/EntityId.js +15 -2
  723. package/dist/unstable/cluster/EntityId.js.map +1 -1
  724. package/dist/unstable/cluster/EntityProxy.d.ts +42 -14
  725. package/dist/unstable/cluster/EntityProxy.d.ts.map +1 -1
  726. package/dist/unstable/cluster/EntityProxy.js +30 -14
  727. package/dist/unstable/cluster/EntityProxy.js.map +1 -1
  728. package/dist/unstable/cluster/EntityProxyServer.d.ts +18 -2
  729. package/dist/unstable/cluster/EntityProxyServer.d.ts.map +1 -1
  730. package/dist/unstable/cluster/EntityProxyServer.js +40 -8
  731. package/dist/unstable/cluster/EntityProxyServer.js.map +1 -1
  732. package/dist/unstable/cluster/EntityResource.d.ts +43 -6
  733. package/dist/unstable/cluster/EntityResource.d.ts.map +1 -1
  734. package/dist/unstable/cluster/EntityResource.js +11 -4
  735. package/dist/unstable/cluster/EntityResource.js.map +1 -1
  736. package/dist/unstable/cluster/EntityType.d.ts +27 -3
  737. package/dist/unstable/cluster/EntityType.d.ts.map +1 -1
  738. package/dist/unstable/cluster/EntityType.js +24 -2
  739. package/dist/unstable/cluster/EntityType.js.map +1 -1
  740. package/dist/unstable/cluster/Envelope.d.ts +105 -23
  741. package/dist/unstable/cluster/Envelope.d.ts.map +1 -1
  742. package/dist/unstable/cluster/Envelope.js +88 -14
  743. package/dist/unstable/cluster/Envelope.js.map +1 -1
  744. package/dist/unstable/cluster/HttpRunner.d.ts +88 -13
  745. package/dist/unstable/cluster/HttpRunner.d.ts.map +1 -1
  746. package/dist/unstable/cluster/HttpRunner.js +88 -13
  747. package/dist/unstable/cluster/HttpRunner.js.map +1 -1
  748. package/dist/unstable/cluster/K8sHttpClient.d.ts +49 -6
  749. package/dist/unstable/cluster/K8sHttpClient.d.ts.map +1 -1
  750. package/dist/unstable/cluster/K8sHttpClient.js +31 -6
  751. package/dist/unstable/cluster/K8sHttpClient.js.map +1 -1
  752. package/dist/unstable/cluster/MachineId.d.ts +24 -3
  753. package/dist/unstable/cluster/MachineId.d.ts.map +1 -1
  754. package/dist/unstable/cluster/MachineId.js +21 -2
  755. package/dist/unstable/cluster/MachineId.js.map +1 -1
  756. package/dist/unstable/cluster/Message.d.ts +102 -13
  757. package/dist/unstable/cluster/Message.d.ts.map +1 -1
  758. package/dist/unstable/cluster/Message.js +86 -10
  759. package/dist/unstable/cluster/Message.js.map +1 -1
  760. package/dist/unstable/cluster/MessageStorage.d.ts +126 -21
  761. package/dist/unstable/cluster/MessageStorage.d.ts.map +1 -1
  762. package/dist/unstable/cluster/MessageStorage.js +70 -10
  763. package/dist/unstable/cluster/MessageStorage.js.map +1 -1
  764. package/dist/unstable/cluster/Reply.d.ts +101 -12
  765. package/dist/unstable/cluster/Reply.d.ts.map +1 -1
  766. package/dist/unstable/cluster/Reply.js +64 -8
  767. package/dist/unstable/cluster/Reply.js.map +1 -1
  768. package/dist/unstable/cluster/Runner.d.ts +47 -17
  769. package/dist/unstable/cluster/Runner.d.ts.map +1 -1
  770. package/dist/unstable/cluster/Runner.js +47 -17
  771. package/dist/unstable/cluster/Runner.js.map +1 -1
  772. package/dist/unstable/cluster/RunnerAddress.d.ts +34 -2
  773. package/dist/unstable/cluster/RunnerAddress.d.ts.map +1 -1
  774. package/dist/unstable/cluster/RunnerAddress.js +34 -2
  775. package/dist/unstable/cluster/RunnerAddress.js.map +1 -1
  776. package/dist/unstable/cluster/RunnerHealth.d.ts +40 -12
  777. package/dist/unstable/cluster/RunnerHealth.d.ts.map +1 -1
  778. package/dist/unstable/cluster/RunnerHealth.js +40 -12
  779. package/dist/unstable/cluster/RunnerHealth.js.map +1 -1
  780. package/dist/unstable/cluster/RunnerServer.d.ts +7 -4
  781. package/dist/unstable/cluster/RunnerServer.d.ts.map +1 -1
  782. package/dist/unstable/cluster/RunnerServer.js +31 -4
  783. package/dist/unstable/cluster/RunnerServer.js.map +1 -1
  784. package/dist/unstable/cluster/RunnerStorage.d.ts +42 -5
  785. package/dist/unstable/cluster/RunnerStorage.d.ts.map +1 -1
  786. package/dist/unstable/cluster/RunnerStorage.js +38 -4
  787. package/dist/unstable/cluster/RunnerStorage.js.map +1 -1
  788. package/dist/unstable/cluster/Runners.d.ts +76 -13
  789. package/dist/unstable/cluster/Runners.d.ts.map +1 -1
  790. package/dist/unstable/cluster/Runners.js +73 -12
  791. package/dist/unstable/cluster/Runners.js.map +1 -1
  792. package/dist/unstable/cluster/ShardId.d.ts +53 -5
  793. package/dist/unstable/cluster/ShardId.d.ts.map +1 -1
  794. package/dist/unstable/cluster/ShardId.js +49 -4
  795. package/dist/unstable/cluster/ShardId.js.map +1 -1
  796. package/dist/unstable/cluster/Sharding.d.ts +10 -2
  797. package/dist/unstable/cluster/Sharding.d.ts.map +1 -1
  798. package/dist/unstable/cluster/Sharding.js +35 -4
  799. package/dist/unstable/cluster/Sharding.js.map +1 -1
  800. package/dist/unstable/cluster/ShardingConfig.d.ts +65 -9
  801. package/dist/unstable/cluster/ShardingConfig.d.ts.map +1 -1
  802. package/dist/unstable/cluster/ShardingConfig.js +66 -9
  803. package/dist/unstable/cluster/ShardingConfig.js.map +1 -1
  804. package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts +27 -6
  805. package/dist/unstable/cluster/ShardingRegistrationEvent.d.ts.map +1 -1
  806. package/dist/unstable/cluster/ShardingRegistrationEvent.js +28 -4
  807. package/dist/unstable/cluster/ShardingRegistrationEvent.js.map +1 -1
  808. package/dist/unstable/cluster/SingleRunner.d.ts +23 -1
  809. package/dist/unstable/cluster/SingleRunner.d.ts.map +1 -1
  810. package/dist/unstable/cluster/SingleRunner.js +23 -1
  811. package/dist/unstable/cluster/SingleRunner.js.map +1 -1
  812. package/dist/unstable/cluster/Singleton.d.ts +15 -1
  813. package/dist/unstable/cluster/Singleton.d.ts.map +1 -1
  814. package/dist/unstable/cluster/Singleton.js +15 -1
  815. package/dist/unstable/cluster/Singleton.js.map +1 -1
  816. package/dist/unstable/cluster/SingletonAddress.d.ts +21 -1
  817. package/dist/unstable/cluster/SingletonAddress.d.ts.map +1 -1
  818. package/dist/unstable/cluster/SingletonAddress.js +21 -1
  819. package/dist/unstable/cluster/SingletonAddress.js.map +1 -1
  820. package/dist/unstable/cluster/Snowflake.d.ts +90 -19
  821. package/dist/unstable/cluster/Snowflake.d.ts.map +1 -1
  822. package/dist/unstable/cluster/Snowflake.js +49 -13
  823. package/dist/unstable/cluster/Snowflake.js.map +1 -1
  824. package/dist/unstable/cluster/SocketRunner.d.ts +8 -2
  825. package/dist/unstable/cluster/SocketRunner.d.ts.map +1 -1
  826. package/dist/unstable/cluster/SocketRunner.js +29 -2
  827. package/dist/unstable/cluster/SocketRunner.js.map +1 -1
  828. package/dist/unstable/cluster/SqlMessageStorage.d.ts +11 -3
  829. package/dist/unstable/cluster/SqlMessageStorage.d.ts.map +1 -1
  830. package/dist/unstable/cluster/SqlMessageStorage.js +27 -3
  831. package/dist/unstable/cluster/SqlMessageStorage.js.map +1 -1
  832. package/dist/unstable/cluster/SqlRunnerStorage.d.ts +11 -3
  833. package/dist/unstable/cluster/SqlRunnerStorage.d.ts.map +1 -1
  834. package/dist/unstable/cluster/SqlRunnerStorage.js +46 -7
  835. package/dist/unstable/cluster/SqlRunnerStorage.js.map +1 -1
  836. package/dist/unstable/cluster/TestRunner.d.ts +18 -1
  837. package/dist/unstable/cluster/TestRunner.d.ts.map +1 -1
  838. package/dist/unstable/cluster/TestRunner.js +18 -1
  839. package/dist/unstable/cluster/TestRunner.js.map +1 -1
  840. package/dist/unstable/cluster/index.d.ts +790 -0
  841. package/dist/unstable/cluster/index.d.ts.map +1 -1
  842. package/dist/unstable/cluster/index.js +790 -0
  843. package/dist/unstable/cluster/index.js.map +1 -1
  844. package/dist/unstable/cluster/internal/hash.js +12 -0
  845. package/dist/unstable/cluster/internal/hash.js.map +1 -1
  846. package/dist/unstable/devtools/DevTools.d.ts +26 -3
  847. package/dist/unstable/devtools/DevTools.d.ts.map +1 -1
  848. package/dist/unstable/devtools/DevTools.js +26 -3
  849. package/dist/unstable/devtools/DevTools.js.map +1 -1
  850. package/dist/unstable/devtools/DevToolsClient.d.ts +20 -5
  851. package/dist/unstable/devtools/DevToolsClient.d.ts.map +1 -1
  852. package/dist/unstable/devtools/DevToolsClient.js +32 -5
  853. package/dist/unstable/devtools/DevToolsClient.js.map +1 -1
  854. package/dist/unstable/devtools/DevToolsSchema.d.ts +184 -44
  855. package/dist/unstable/devtools/DevToolsSchema.d.ts.map +1 -1
  856. package/dist/unstable/devtools/DevToolsSchema.js +102 -20
  857. package/dist/unstable/devtools/DevToolsSchema.js.map +1 -1
  858. package/dist/unstable/devtools/DevToolsServer.d.ts +27 -2
  859. package/dist/unstable/devtools/DevToolsServer.d.ts.map +1 -1
  860. package/dist/unstable/devtools/DevToolsServer.js +21 -1
  861. package/dist/unstable/devtools/DevToolsServer.js.map +1 -1
  862. package/dist/unstable/devtools/index.d.ts +58 -0
  863. package/dist/unstable/devtools/index.d.ts.map +1 -1
  864. package/dist/unstable/devtools/index.js +58 -0
  865. package/dist/unstable/devtools/index.js.map +1 -1
  866. package/dist/unstable/encoding/Msgpack.d.ts +81 -12
  867. package/dist/unstable/encoding/Msgpack.d.ts.map +1 -1
  868. package/dist/unstable/encoding/Msgpack.js +75 -9
  869. package/dist/unstable/encoding/Msgpack.js.map +1 -1
  870. package/dist/unstable/encoding/Ndjson.d.ts +149 -21
  871. package/dist/unstable/encoding/Ndjson.d.ts.map +1 -1
  872. package/dist/unstable/encoding/Ndjson.js +97 -13
  873. package/dist/unstable/encoding/Ndjson.js.map +1 -1
  874. package/dist/unstable/encoding/Sse.d.ts +109 -18
  875. package/dist/unstable/encoding/Sse.d.ts.map +1 -1
  876. package/dist/unstable/encoding/Sse.js +69 -13
  877. package/dist/unstable/encoding/Sse.js.map +1 -1
  878. package/dist/unstable/encoding/index.d.ts +49 -0
  879. package/dist/unstable/encoding/index.d.ts.map +1 -1
  880. package/dist/unstable/encoding/index.js +49 -0
  881. package/dist/unstable/encoding/index.js.map +1 -1
  882. package/dist/unstable/eventlog/Event.d.ts +115 -30
  883. package/dist/unstable/eventlog/Event.d.ts.map +1 -1
  884. package/dist/unstable/eventlog/Event.js +22 -2
  885. package/dist/unstable/eventlog/Event.js.map +1 -1
  886. package/dist/unstable/eventlog/EventGroup.d.ts +50 -17
  887. package/dist/unstable/eventlog/EventGroup.d.ts.map +1 -1
  888. package/dist/unstable/eventlog/EventGroup.js +24 -6
  889. package/dist/unstable/eventlog/EventGroup.js.map +1 -1
  890. package/dist/unstable/eventlog/EventJournal.d.ts +104 -20
  891. package/dist/unstable/eventlog/EventJournal.d.ts.map +1 -1
  892. package/dist/unstable/eventlog/EventJournal.js +108 -16
  893. package/dist/unstable/eventlog/EventJournal.js.map +1 -1
  894. package/dist/unstable/eventlog/EventLog.d.ts +150 -31
  895. package/dist/unstable/eventlog/EventLog.d.ts.map +1 -1
  896. package/dist/unstable/eventlog/EventLog.js +111 -20
  897. package/dist/unstable/eventlog/EventLog.js.map +1 -1
  898. package/dist/unstable/eventlog/EventLogEncryption.d.ts +42 -6
  899. package/dist/unstable/eventlog/EventLogEncryption.d.ts.map +1 -1
  900. package/dist/unstable/eventlog/EventLogEncryption.js +38 -5
  901. package/dist/unstable/eventlog/EventLogEncryption.js.map +1 -1
  902. package/dist/unstable/eventlog/EventLogMessage.d.ts +92 -18
  903. package/dist/unstable/eventlog/EventLogMessage.d.ts.map +1 -1
  904. package/dist/unstable/eventlog/EventLogMessage.js +72 -16
  905. package/dist/unstable/eventlog/EventLogMessage.js.map +1 -1
  906. package/dist/unstable/eventlog/EventLogRemote.d.ts +35 -8
  907. package/dist/unstable/eventlog/EventLogRemote.d.ts.map +1 -1
  908. package/dist/unstable/eventlog/EventLogRemote.js +54 -8
  909. package/dist/unstable/eventlog/EventLogRemote.js.map +1 -1
  910. package/dist/unstable/eventlog/EventLogServer.d.ts +17 -3
  911. package/dist/unstable/eventlog/EventLogServer.d.ts.map +1 -1
  912. package/dist/unstable/eventlog/EventLogServer.js +17 -3
  913. package/dist/unstable/eventlog/EventLogServer.js.map +1 -1
  914. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts +32 -6
  915. package/dist/unstable/eventlog/EventLogServerEncrypted.d.ts.map +1 -1
  916. package/dist/unstable/eventlog/EventLogServerEncrypted.js +52 -6
  917. package/dist/unstable/eventlog/EventLogServerEncrypted.js.map +1 -1
  918. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts +74 -16
  919. package/dist/unstable/eventlog/EventLogServerUnencrypted.d.ts.map +1 -1
  920. package/dist/unstable/eventlog/EventLogServerUnencrypted.js +90 -16
  921. package/dist/unstable/eventlog/EventLogServerUnencrypted.js.map +1 -1
  922. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts +59 -15
  923. package/dist/unstable/eventlog/EventLogSessionAuth.d.ts.map +1 -1
  924. package/dist/unstable/eventlog/EventLogSessionAuth.js +73 -14
  925. package/dist/unstable/eventlog/EventLogSessionAuth.js.map +1 -1
  926. package/dist/unstable/eventlog/SqlEventJournal.d.ts +10 -2
  927. package/dist/unstable/eventlog/SqlEventJournal.d.ts.map +1 -1
  928. package/dist/unstable/eventlog/SqlEventJournal.js +28 -2
  929. package/dist/unstable/eventlog/SqlEventJournal.js.map +1 -1
  930. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts +32 -3
  931. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.d.ts.map +1 -1
  932. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js +32 -3
  933. package/dist/unstable/eventlog/SqlEventLogServerEncrypted.js.map +1 -1
  934. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts +10 -2
  935. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
  936. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js +28 -2
  937. package/dist/unstable/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
  938. package/dist/unstable/eventlog/index.d.ts +240 -0
  939. package/dist/unstable/eventlog/index.d.ts.map +1 -1
  940. package/dist/unstable/eventlog/index.js +240 -0
  941. package/dist/unstable/eventlog/index.js.map +1 -1
  942. package/dist/unstable/http/Cookies.d.ts +156 -77
  943. package/dist/unstable/http/Cookies.d.ts.map +1 -1
  944. package/dist/unstable/http/Cookies.js +93 -39
  945. package/dist/unstable/http/Cookies.js.map +1 -1
  946. package/dist/unstable/http/Etag.d.ts +40 -7
  947. package/dist/unstable/http/Etag.d.ts.map +1 -1
  948. package/dist/unstable/http/Etag.js +27 -4
  949. package/dist/unstable/http/Etag.js.map +1 -1
  950. package/dist/unstable/http/FetchHttpClient.d.ts +29 -3
  951. package/dist/unstable/http/FetchHttpClient.d.ts.map +1 -1
  952. package/dist/unstable/http/FetchHttpClient.js +33 -4
  953. package/dist/unstable/http/FetchHttpClient.js.map +1 -1
  954. package/dist/unstable/http/FindMyWay.d.ts +1 -1
  955. package/dist/unstable/http/FindMyWay.js +1 -1
  956. package/dist/unstable/http/Headers.d.ts +182 -36
  957. package/dist/unstable/http/Headers.d.ts.map +1 -1
  958. package/dist/unstable/http/Headers.js +86 -16
  959. package/dist/unstable/http/Headers.js.map +1 -1
  960. package/dist/unstable/http/HttpBody.d.ts +114 -26
  961. package/dist/unstable/http/HttpBody.d.ts.map +1 -1
  962. package/dist/unstable/http/HttpBody.js +98 -20
  963. package/dist/unstable/http/HttpBody.js.map +1 -1
  964. package/dist/unstable/http/HttpClient.d.ts +204 -96
  965. package/dist/unstable/http/HttpClient.d.ts.map +1 -1
  966. package/dist/unstable/http/HttpClient.js +85 -38
  967. package/dist/unstable/http/HttpClient.js.map +1 -1
  968. package/dist/unstable/http/HttpClientError.d.ts +68 -12
  969. package/dist/unstable/http/HttpClientError.d.ts.map +1 -1
  970. package/dist/unstable/http/HttpClientError.js +71 -9
  971. package/dist/unstable/http/HttpClientError.js.map +1 -1
  972. package/dist/unstable/http/HttpClientRequest.d.ts +318 -100
  973. package/dist/unstable/http/HttpClientRequest.d.ts.map +1 -1
  974. package/dist/unstable/http/HttpClientRequest.js +151 -45
  975. package/dist/unstable/http/HttpClientRequest.js.map +1 -1
  976. package/dist/unstable/http/HttpClientResponse.d.ts +59 -16
  977. package/dist/unstable/http/HttpClientResponse.d.ts.map +1 -1
  978. package/dist/unstable/http/HttpClientResponse.js +44 -11
  979. package/dist/unstable/http/HttpClientResponse.js.map +1 -1
  980. package/dist/unstable/http/HttpEffect.d.ts +42 -16
  981. package/dist/unstable/http/HttpEffect.d.ts.map +1 -1
  982. package/dist/unstable/http/HttpEffect.js +33 -13
  983. package/dist/unstable/http/HttpEffect.js.map +1 -1
  984. package/dist/unstable/http/HttpIncomingMessage.d.ts +48 -7
  985. package/dist/unstable/http/HttpIncomingMessage.d.ts.map +1 -1
  986. package/dist/unstable/http/HttpIncomingMessage.js +45 -6
  987. package/dist/unstable/http/HttpIncomingMessage.js.map +1 -1
  988. package/dist/unstable/http/HttpMethod.d.ts +38 -6
  989. package/dist/unstable/http/HttpMethod.d.ts.map +1 -1
  990. package/dist/unstable/http/HttpMethod.js +27 -2
  991. package/dist/unstable/http/HttpMethod.js.map +1 -1
  992. package/dist/unstable/http/HttpMiddleware.d.ts +38 -11
  993. package/dist/unstable/http/HttpMiddleware.d.ts.map +1 -1
  994. package/dist/unstable/http/HttpMiddleware.js +52 -10
  995. package/dist/unstable/http/HttpMiddleware.js.map +1 -1
  996. package/dist/unstable/http/HttpPlatform.d.ts +34 -3
  997. package/dist/unstable/http/HttpPlatform.d.ts.map +1 -1
  998. package/dist/unstable/http/HttpPlatform.js +34 -3
  999. package/dist/unstable/http/HttpPlatform.js.map +1 -1
  1000. package/dist/unstable/http/HttpRouter.d.ts +209 -62
  1001. package/dist/unstable/http/HttpRouter.d.ts.map +1 -1
  1002. package/dist/unstable/http/HttpRouter.js +136 -41
  1003. package/dist/unstable/http/HttpRouter.js.map +1 -1
  1004. package/dist/unstable/http/HttpServer.d.ts +151 -22
  1005. package/dist/unstable/http/HttpServer.d.ts.map +1 -1
  1006. package/dist/unstable/http/HttpServer.js +76 -11
  1007. package/dist/unstable/http/HttpServer.js.map +1 -1
  1008. package/dist/unstable/http/HttpServerError.d.ts +93 -10
  1009. package/dist/unstable/http/HttpServerError.d.ts.map +1 -1
  1010. package/dist/unstable/http/HttpServerError.js +85 -8
  1011. package/dist/unstable/http/HttpServerError.js.map +1 -1
  1012. package/dist/unstable/http/HttpServerRequest.d.ts +125 -21
  1013. package/dist/unstable/http/HttpServerRequest.d.ts.map +1 -1
  1014. package/dist/unstable/http/HttpServerRequest.js +101 -20
  1015. package/dist/unstable/http/HttpServerRequest.js.map +1 -1
  1016. package/dist/unstable/http/HttpServerRespondable.d.ts +32 -6
  1017. package/dist/unstable/http/HttpServerRespondable.d.ts.map +1 -1
  1018. package/dist/unstable/http/HttpServerRespondable.js +43 -5
  1019. package/dist/unstable/http/HttpServerRespondable.js.map +1 -1
  1020. package/dist/unstable/http/HttpServerResponse.d.ts +391 -67
  1021. package/dist/unstable/http/HttpServerResponse.d.ts.map +1 -1
  1022. package/dist/unstable/http/HttpServerResponse.js +205 -33
  1023. package/dist/unstable/http/HttpServerResponse.js.map +1 -1
  1024. package/dist/unstable/http/HttpStaticServer.d.ts +24 -8
  1025. package/dist/unstable/http/HttpStaticServer.d.ts.map +1 -1
  1026. package/dist/unstable/http/HttpStaticServer.js +24 -8
  1027. package/dist/unstable/http/HttpStaticServer.js.map +1 -1
  1028. package/dist/unstable/http/HttpTraceContext.d.ts +53 -6
  1029. package/dist/unstable/http/HttpTraceContext.d.ts.map +1 -1
  1030. package/dist/unstable/http/HttpTraceContext.js +47 -5
  1031. package/dist/unstable/http/HttpTraceContext.js.map +1 -1
  1032. package/dist/unstable/http/Multipart.d.ts +179 -28
  1033. package/dist/unstable/http/Multipart.d.ts.map +1 -1
  1034. package/dist/unstable/http/Multipart.js +131 -19
  1035. package/dist/unstable/http/Multipart.js.map +1 -1
  1036. package/dist/unstable/http/Multipasta/HeadersParser.d.ts +1 -1
  1037. package/dist/unstable/http/Multipasta/HeadersParser.js +1 -1
  1038. package/dist/unstable/http/Multipasta/Node.d.ts +1 -1
  1039. package/dist/unstable/http/Multipasta/Node.js +1 -1
  1040. package/dist/unstable/http/Multipasta/Search.d.ts +1 -1
  1041. package/dist/unstable/http/Multipasta/Search.js +1 -1
  1042. package/dist/unstable/http/Multipasta/Web.d.ts +1 -1
  1043. package/dist/unstable/http/Multipasta/Web.js +1 -1
  1044. package/dist/unstable/http/Multipasta.d.ts +1 -1
  1045. package/dist/unstable/http/Multipasta.js +1 -1
  1046. package/dist/unstable/http/Template.d.ts +53 -1
  1047. package/dist/unstable/http/Template.d.ts.map +1 -1
  1048. package/dist/unstable/http/Template.js +26 -0
  1049. package/dist/unstable/http/Template.js.map +1 -1
  1050. package/dist/unstable/http/Url.d.ts +70 -56
  1051. package/dist/unstable/http/Url.d.ts.map +1 -1
  1052. package/dist/unstable/http/Url.js +35 -21
  1053. package/dist/unstable/http/Url.js.map +1 -1
  1054. package/dist/unstable/http/UrlParams.d.ts +237 -51
  1055. package/dist/unstable/http/UrlParams.d.ts.map +1 -1
  1056. package/dist/unstable/http/UrlParams.js +120 -25
  1057. package/dist/unstable/http/UrlParams.js.map +1 -1
  1058. package/dist/unstable/http/index.d.ts +452 -0
  1059. package/dist/unstable/http/index.d.ts.map +1 -1
  1060. package/dist/unstable/http/index.js +452 -0
  1061. package/dist/unstable/http/index.js.map +1 -1
  1062. package/dist/unstable/httpapi/HttpApi.d.ts +49 -14
  1063. package/dist/unstable/httpapi/HttpApi.d.ts.map +1 -1
  1064. package/dist/unstable/httpapi/HttpApi.js +14 -8
  1065. package/dist/unstable/httpapi/HttpApi.js.map +1 -1
  1066. package/dist/unstable/httpapi/HttpApiBuilder.d.ts +54 -16
  1067. package/dist/unstable/httpapi/HttpApiBuilder.d.ts.map +1 -1
  1068. package/dist/unstable/httpapi/HttpApiBuilder.js +44 -6
  1069. package/dist/unstable/httpapi/HttpApiBuilder.js.map +1 -1
  1070. package/dist/unstable/httpapi/HttpApiClient.d.ts +57 -15
  1071. package/dist/unstable/httpapi/HttpApiClient.d.ts.map +1 -1
  1072. package/dist/unstable/httpapi/HttpApiClient.js +42 -6
  1073. package/dist/unstable/httpapi/HttpApiClient.js.map +1 -1
  1074. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts +214 -59
  1075. package/dist/unstable/httpapi/HttpApiEndpoint.d.ts.map +1 -1
  1076. package/dist/unstable/httpapi/HttpApiEndpoint.js +53 -9
  1077. package/dist/unstable/httpapi/HttpApiEndpoint.js.map +1 -1
  1078. package/dist/unstable/httpapi/HttpApiError.d.ts +81 -1
  1079. package/dist/unstable/httpapi/HttpApiError.d.ts.map +1 -1
  1080. package/dist/unstable/httpapi/HttpApiError.js +98 -1
  1081. package/dist/unstable/httpapi/HttpApiError.js.map +1 -1
  1082. package/dist/unstable/httpapi/HttpApiGroup.d.ts +87 -20
  1083. package/dist/unstable/httpapi/HttpApiGroup.d.ts.map +1 -1
  1084. package/dist/unstable/httpapi/HttpApiGroup.js +5 -2
  1085. package/dist/unstable/httpapi/HttpApiGroup.js.map +1 -1
  1086. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts +113 -22
  1087. package/dist/unstable/httpapi/HttpApiMiddleware.d.ts.map +1 -1
  1088. package/dist/unstable/httpapi/HttpApiMiddleware.js +49 -5
  1089. package/dist/unstable/httpapi/HttpApiMiddleware.js.map +1 -1
  1090. package/dist/unstable/httpapi/HttpApiScalar.d.ts +19 -4
  1091. package/dist/unstable/httpapi/HttpApiScalar.d.ts.map +1 -1
  1092. package/dist/unstable/httpapi/HttpApiScalar.js +32 -2
  1093. package/dist/unstable/httpapi/HttpApiScalar.js.map +1 -1
  1094. package/dist/unstable/httpapi/HttpApiSchema.d.ts +86 -38
  1095. package/dist/unstable/httpapi/HttpApiSchema.d.ts.map +1 -1
  1096. package/dist/unstable/httpapi/HttpApiSchema.js +59 -35
  1097. package/dist/unstable/httpapi/HttpApiSchema.js.map +1 -1
  1098. package/dist/unstable/httpapi/HttpApiSecurity.d.ts +73 -17
  1099. package/dist/unstable/httpapi/HttpApiSecurity.d.ts.map +1 -1
  1100. package/dist/unstable/httpapi/HttpApiSecurity.js +38 -5
  1101. package/dist/unstable/httpapi/HttpApiSecurity.js.map +1 -1
  1102. package/dist/unstable/httpapi/HttpApiSwagger.d.ts +4 -3
  1103. package/dist/unstable/httpapi/HttpApiSwagger.d.ts.map +1 -1
  1104. package/dist/unstable/httpapi/HttpApiSwagger.js +23 -3
  1105. package/dist/unstable/httpapi/HttpApiSwagger.js.map +1 -1
  1106. package/dist/unstable/httpapi/HttpApiTest.d.ts +6 -1
  1107. package/dist/unstable/httpapi/HttpApiTest.d.ts.map +1 -1
  1108. package/dist/unstable/httpapi/HttpApiTest.js +26 -1
  1109. package/dist/unstable/httpapi/HttpApiTest.js.map +1 -1
  1110. package/dist/unstable/httpapi/OpenApi.d.ts +86 -15
  1111. package/dist/unstable/httpapi/OpenApi.d.ts.map +1 -1
  1112. package/dist/unstable/httpapi/OpenApi.js +73 -15
  1113. package/dist/unstable/httpapi/OpenApi.js.map +1 -1
  1114. package/dist/unstable/httpapi/index.d.ts +310 -25
  1115. package/dist/unstable/httpapi/index.d.ts.map +1 -1
  1116. package/dist/unstable/httpapi/index.js +310 -25
  1117. package/dist/unstable/httpapi/index.js.map +1 -1
  1118. package/dist/unstable/observability/Otlp.d.ts +33 -3
  1119. package/dist/unstable/observability/Otlp.d.ts.map +1 -1
  1120. package/dist/unstable/observability/Otlp.js +14 -3
  1121. package/dist/unstable/observability/Otlp.js.map +1 -1
  1122. package/dist/unstable/observability/OtlpExporter.d.ts +8 -1
  1123. package/dist/unstable/observability/OtlpExporter.d.ts.map +1 -1
  1124. package/dist/unstable/observability/OtlpExporter.js +32 -1
  1125. package/dist/unstable/observability/OtlpExporter.js.map +1 -1
  1126. package/dist/unstable/observability/OtlpLogger.d.ts +15 -2
  1127. package/dist/unstable/observability/OtlpLogger.d.ts.map +1 -1
  1128. package/dist/unstable/observability/OtlpLogger.js +29 -2
  1129. package/dist/unstable/observability/OtlpLogger.js.map +1 -1
  1130. package/dist/unstable/observability/OtlpMetrics.d.ts +17 -5
  1131. package/dist/unstable/observability/OtlpMetrics.d.ts.map +1 -1
  1132. package/dist/unstable/observability/OtlpMetrics.js +32 -2
  1133. package/dist/unstable/observability/OtlpMetrics.js.map +1 -1
  1134. package/dist/unstable/observability/OtlpResource.d.ts +49 -12
  1135. package/dist/unstable/observability/OtlpResource.d.ts.map +1 -1
  1136. package/dist/unstable/observability/OtlpResource.js +47 -5
  1137. package/dist/unstable/observability/OtlpResource.js.map +1 -1
  1138. package/dist/unstable/observability/OtlpSerialization.d.ts +28 -3
  1139. package/dist/unstable/observability/OtlpSerialization.d.ts.map +1 -1
  1140. package/dist/unstable/observability/OtlpSerialization.js +28 -3
  1141. package/dist/unstable/observability/OtlpSerialization.js.map +1 -1
  1142. package/dist/unstable/observability/OtlpTracer.d.ts +19 -2
  1143. package/dist/unstable/observability/OtlpTracer.d.ts.map +1 -1
  1144. package/dist/unstable/observability/OtlpTracer.js +32 -2
  1145. package/dist/unstable/observability/OtlpTracer.js.map +1 -1
  1146. package/dist/unstable/observability/PrometheusMetrics.d.ts +36 -16
  1147. package/dist/unstable/observability/PrometheusMetrics.d.ts.map +1 -1
  1148. package/dist/unstable/observability/PrometheusMetrics.js +9 -7
  1149. package/dist/unstable/observability/PrometheusMetrics.js.map +1 -1
  1150. package/dist/unstable/observability/index.d.ts +160 -3
  1151. package/dist/unstable/observability/index.d.ts.map +1 -1
  1152. package/dist/unstable/observability/index.js +160 -3
  1153. package/dist/unstable/observability/index.js.map +1 -1
  1154. package/dist/unstable/persistence/KeyValueStore.d.ts +93 -18
  1155. package/dist/unstable/persistence/KeyValueStore.d.ts.map +1 -1
  1156. package/dist/unstable/persistence/KeyValueStore.js +81 -21
  1157. package/dist/unstable/persistence/KeyValueStore.js.map +1 -1
  1158. package/dist/unstable/persistence/Persistable.d.ts +76 -15
  1159. package/dist/unstable/persistence/Persistable.d.ts.map +1 -1
  1160. package/dist/unstable/persistence/Persistable.js +22 -5
  1161. package/dist/unstable/persistence/Persistable.js.map +1 -1
  1162. package/dist/unstable/persistence/PersistedCache.d.ts +27 -2
  1163. package/dist/unstable/persistence/PersistedCache.d.ts.map +1 -1
  1164. package/dist/unstable/persistence/PersistedCache.js +24 -1
  1165. package/dist/unstable/persistence/PersistedCache.js.map +1 -1
  1166. package/dist/unstable/persistence/PersistedQueue.d.ts +73 -16
  1167. package/dist/unstable/persistence/PersistedQueue.d.ts.map +1 -1
  1168. package/dist/unstable/persistence/PersistedQueue.js +60 -13
  1169. package/dist/unstable/persistence/PersistedQueue.js.map +1 -1
  1170. package/dist/unstable/persistence/Persistence.d.ts +98 -16
  1171. package/dist/unstable/persistence/Persistence.d.ts.map +1 -1
  1172. package/dist/unstable/persistence/Persistence.js +91 -14
  1173. package/dist/unstable/persistence/Persistence.js.map +1 -1
  1174. package/dist/unstable/persistence/RateLimiter.d.ts +101 -21
  1175. package/dist/unstable/persistence/RateLimiter.d.ts.map +1 -1
  1176. package/dist/unstable/persistence/RateLimiter.js +85 -16
  1177. package/dist/unstable/persistence/RateLimiter.js.map +1 -1
  1178. package/dist/unstable/persistence/Redis.d.ts +26 -5
  1179. package/dist/unstable/persistence/Redis.d.ts.map +1 -1
  1180. package/dist/unstable/persistence/Redis.js +36 -4
  1181. package/dist/unstable/persistence/Redis.js.map +1 -1
  1182. package/dist/unstable/persistence/index.d.ts +147 -0
  1183. package/dist/unstable/persistence/index.d.ts.map +1 -1
  1184. package/dist/unstable/persistence/index.js +147 -0
  1185. package/dist/unstable/persistence/index.js.map +1 -1
  1186. package/dist/unstable/process/ChildProcess.d.ts +87 -64
  1187. package/dist/unstable/process/ChildProcess.d.ts.map +1 -1
  1188. package/dist/unstable/process/ChildProcess.js +25 -18
  1189. package/dist/unstable/process/ChildProcess.js.map +1 -1
  1190. package/dist/unstable/process/ChildProcessSpawner.d.ts +23 -12
  1191. package/dist/unstable/process/ChildProcessSpawner.d.ts.map +1 -1
  1192. package/dist/unstable/process/ChildProcessSpawner.js +11 -6
  1193. package/dist/unstable/process/ChildProcessSpawner.js.map +1 -1
  1194. package/dist/unstable/process/index.d.ts +2 -1
  1195. package/dist/unstable/process/index.d.ts.map +1 -1
  1196. package/dist/unstable/process/index.js +2 -1
  1197. package/dist/unstable/process/index.js.map +1 -1
  1198. package/dist/unstable/reactivity/AsyncResult.d.ts +198 -59
  1199. package/dist/unstable/reactivity/AsyncResult.d.ts.map +1 -1
  1200. package/dist/unstable/reactivity/AsyncResult.js +121 -36
  1201. package/dist/unstable/reactivity/AsyncResult.js.map +1 -1
  1202. package/dist/unstable/reactivity/Atom.d.ts +544 -130
  1203. package/dist/unstable/reactivity/Atom.d.ts.map +1 -1
  1204. package/dist/unstable/reactivity/Atom.js +252 -58
  1205. package/dist/unstable/reactivity/Atom.js.map +1 -1
  1206. package/dist/unstable/reactivity/AtomHttpApi.d.ts +41 -2
  1207. package/dist/unstable/reactivity/AtomHttpApi.d.ts.map +1 -1
  1208. package/dist/unstable/reactivity/AtomHttpApi.js +35 -1
  1209. package/dist/unstable/reactivity/AtomHttpApi.js.map +1 -1
  1210. package/dist/unstable/reactivity/AtomRef.d.ts +51 -7
  1211. package/dist/unstable/reactivity/AtomRef.d.ts.map +1 -1
  1212. package/dist/unstable/reactivity/AtomRef.js +29 -3
  1213. package/dist/unstable/reactivity/AtomRef.js.map +1 -1
  1214. package/dist/unstable/reactivity/AtomRegistry.d.ts +135 -21
  1215. package/dist/unstable/reactivity/AtomRegistry.d.ts.map +1 -1
  1216. package/dist/unstable/reactivity/AtomRegistry.js +69 -10
  1217. package/dist/unstable/reactivity/AtomRegistry.js.map +1 -1
  1218. package/dist/unstable/reactivity/AtomRpc.d.ts +36 -2
  1219. package/dist/unstable/reactivity/AtomRpc.d.ts.map +1 -1
  1220. package/dist/unstable/reactivity/AtomRpc.js +29 -1
  1221. package/dist/unstable/reactivity/AtomRpc.js.map +1 -1
  1222. package/dist/unstable/reactivity/Hydration.d.ts +28 -5
  1223. package/dist/unstable/reactivity/Hydration.d.ts.map +1 -1
  1224. package/dist/unstable/reactivity/Hydration.js +35 -3
  1225. package/dist/unstable/reactivity/Hydration.js.map +1 -1
  1226. package/dist/unstable/reactivity/Reactivity.d.ts +94 -13
  1227. package/dist/unstable/reactivity/Reactivity.d.ts.map +1 -1
  1228. package/dist/unstable/reactivity/Reactivity.js +60 -7
  1229. package/dist/unstable/reactivity/Reactivity.js.map +1 -1
  1230. package/dist/unstable/reactivity/index.d.ts +167 -0
  1231. package/dist/unstable/reactivity/index.d.ts.map +1 -1
  1232. package/dist/unstable/reactivity/index.js +167 -0
  1233. package/dist/unstable/reactivity/index.js.map +1 -1
  1234. package/dist/unstable/rpc/Rpc.d.ts +254 -56
  1235. package/dist/unstable/rpc/Rpc.d.ts.map +1 -1
  1236. package/dist/unstable/rpc/Rpc.js +44 -11
  1237. package/dist/unstable/rpc/Rpc.js.map +1 -1
  1238. package/dist/unstable/rpc/RpcClient.d.ts +80 -19
  1239. package/dist/unstable/rpc/RpcClient.d.ts.map +1 -1
  1240. package/dist/unstable/rpc/RpcClient.js +52 -12
  1241. package/dist/unstable/rpc/RpcClient.js.map +1 -1
  1242. package/dist/unstable/rpc/RpcClientError.d.ts +26 -2
  1243. package/dist/unstable/rpc/RpcClientError.d.ts.map +1 -1
  1244. package/dist/unstable/rpc/RpcClientError.js +26 -2
  1245. package/dist/unstable/rpc/RpcClientError.js.map +1 -1
  1246. package/dist/unstable/rpc/RpcGroup.d.ts +51 -8
  1247. package/dist/unstable/rpc/RpcGroup.d.ts.map +1 -1
  1248. package/dist/unstable/rpc/RpcGroup.js +3 -1
  1249. package/dist/unstable/rpc/RpcGroup.js.map +1 -1
  1250. package/dist/unstable/rpc/RpcMessage.d.ts +128 -32
  1251. package/dist/unstable/rpc/RpcMessage.d.ts.map +1 -1
  1252. package/dist/unstable/rpc/RpcMessage.js +23 -7
  1253. package/dist/unstable/rpc/RpcMessage.js.map +1 -1
  1254. package/dist/unstable/rpc/RpcMiddleware.d.ts +100 -20
  1255. package/dist/unstable/rpc/RpcMiddleware.d.ts.map +1 -1
  1256. package/dist/unstable/rpc/RpcMiddleware.js +39 -3
  1257. package/dist/unstable/rpc/RpcMiddleware.js.map +1 -1
  1258. package/dist/unstable/rpc/RpcSchema.d.ts +38 -4
  1259. package/dist/unstable/rpc/RpcSchema.d.ts.map +1 -1
  1260. package/dist/unstable/rpc/RpcSchema.js +34 -3
  1261. package/dist/unstable/rpc/RpcSchema.js.map +1 -1
  1262. package/dist/unstable/rpc/RpcSerialization.d.ts +60 -13
  1263. package/dist/unstable/rpc/RpcSerialization.d.ts.map +1 -1
  1264. package/dist/unstable/rpc/RpcSerialization.js +56 -12
  1265. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  1266. package/dist/unstable/rpc/RpcServer.d.ts +73 -23
  1267. package/dist/unstable/rpc/RpcServer.d.ts.map +1 -1
  1268. package/dist/unstable/rpc/RpcServer.js +69 -22
  1269. package/dist/unstable/rpc/RpcServer.js.map +1 -1
  1270. package/dist/unstable/rpc/RpcTest.d.ts +20 -1
  1271. package/dist/unstable/rpc/RpcTest.d.ts.map +1 -1
  1272. package/dist/unstable/rpc/RpcTest.js +20 -1
  1273. package/dist/unstable/rpc/RpcTest.js.map +1 -1
  1274. package/dist/unstable/rpc/RpcWorker.d.ts +39 -6
  1275. package/dist/unstable/rpc/RpcWorker.d.ts.map +1 -1
  1276. package/dist/unstable/rpc/RpcWorker.js +16 -4
  1277. package/dist/unstable/rpc/RpcWorker.js.map +1 -1
  1278. package/dist/unstable/rpc/Utils.d.ts +10 -0
  1279. package/dist/unstable/rpc/Utils.d.ts.map +1 -1
  1280. package/dist/unstable/rpc/Utils.js +10 -0
  1281. package/dist/unstable/rpc/Utils.js.map +1 -1
  1282. package/dist/unstable/rpc/index.d.ts +272 -0
  1283. package/dist/unstable/rpc/index.d.ts.map +1 -1
  1284. package/dist/unstable/rpc/index.js +272 -0
  1285. package/dist/unstable/rpc/index.js.map +1 -1
  1286. package/dist/unstable/schema/Model.d.ts +192 -59
  1287. package/dist/unstable/schema/Model.d.ts.map +1 -1
  1288. package/dist/unstable/schema/Model.js +122 -38
  1289. package/dist/unstable/schema/Model.js.map +1 -1
  1290. package/dist/unstable/schema/VariantSchema.d.ts +101 -24
  1291. package/dist/unstable/schema/VariantSchema.d.ts.map +1 -1
  1292. package/dist/unstable/schema/VariantSchema.js +22 -6
  1293. package/dist/unstable/schema/VariantSchema.js.map +1 -1
  1294. package/dist/unstable/schema/index.d.ts +37 -0
  1295. package/dist/unstable/schema/index.d.ts.map +1 -1
  1296. package/dist/unstable/schema/index.js +37 -0
  1297. package/dist/unstable/schema/index.js.map +1 -1
  1298. package/dist/unstable/socket/Socket.d.ts +168 -34
  1299. package/dist/unstable/socket/Socket.d.ts.map +1 -1
  1300. package/dist/unstable/socket/Socket.js +124 -28
  1301. package/dist/unstable/socket/Socket.js.map +1 -1
  1302. package/dist/unstable/socket/SocketServer.d.ts +58 -10
  1303. package/dist/unstable/socket/SocketServer.d.ts.map +1 -1
  1304. package/dist/unstable/socket/SocketServer.js +43 -5
  1305. package/dist/unstable/socket/SocketServer.js.map +1 -1
  1306. package/dist/unstable/socket/index.d.ts +44 -0
  1307. package/dist/unstable/socket/index.d.ts.map +1 -1
  1308. package/dist/unstable/socket/index.js +44 -0
  1309. package/dist/unstable/socket/index.js.map +1 -1
  1310. package/dist/unstable/sql/Migrator.d.ts +40 -9
  1311. package/dist/unstable/sql/Migrator.d.ts.map +1 -1
  1312. package/dist/unstable/sql/Migrator.js +45 -5
  1313. package/dist/unstable/sql/Migrator.js.map +1 -1
  1314. package/dist/unstable/sql/SqlClient.d.ts +38 -2
  1315. package/dist/unstable/sql/SqlClient.d.ts.map +1 -1
  1316. package/dist/unstable/sql/SqlClient.js +40 -1
  1317. package/dist/unstable/sql/SqlClient.js.map +1 -1
  1318. package/dist/unstable/sql/SqlConnection.d.ts +34 -3
  1319. package/dist/unstable/sql/SqlConnection.d.ts.map +1 -1
  1320. package/dist/unstable/sql/SqlConnection.js +22 -0
  1321. package/dist/unstable/sql/SqlConnection.js.map +1 -1
  1322. package/dist/unstable/sql/SqlError.d.ts +117 -0
  1323. package/dist/unstable/sql/SqlError.d.ts.map +1 -1
  1324. package/dist/unstable/sql/SqlError.js +131 -0
  1325. package/dist/unstable/sql/SqlError.js.map +1 -1
  1326. package/dist/unstable/sql/SqlModel.d.ts +25 -5
  1327. package/dist/unstable/sql/SqlModel.d.ts.map +1 -1
  1328. package/dist/unstable/sql/SqlModel.js +8 -4
  1329. package/dist/unstable/sql/SqlModel.js.map +1 -1
  1330. package/dist/unstable/sql/SqlResolver.d.ts +56 -13
  1331. package/dist/unstable/sql/SqlResolver.d.ts.map +1 -1
  1332. package/dist/unstable/sql/SqlResolver.js +44 -10
  1333. package/dist/unstable/sql/SqlResolver.js.map +1 -1
  1334. package/dist/unstable/sql/SqlSchema.d.ts +29 -8
  1335. package/dist/unstable/sql/SqlSchema.d.ts.map +1 -1
  1336. package/dist/unstable/sql/SqlSchema.js +29 -8
  1337. package/dist/unstable/sql/SqlSchema.js.map +1 -1
  1338. package/dist/unstable/sql/SqlStream.d.ts +4 -0
  1339. package/dist/unstable/sql/SqlStream.d.ts.map +1 -1
  1340. package/dist/unstable/sql/SqlStream.js +24 -0
  1341. package/dist/unstable/sql/SqlStream.js.map +1 -1
  1342. package/dist/unstable/sql/Statement.d.ts +151 -24
  1343. package/dist/unstable/sql/Statement.d.ts.map +1 -1
  1344. package/dist/unstable/sql/Statement.js +91 -6
  1345. package/dist/unstable/sql/Statement.js.map +1 -1
  1346. package/dist/unstable/sql/index.d.ts +179 -1
  1347. package/dist/unstable/sql/index.d.ts.map +1 -1
  1348. package/dist/unstable/sql/index.js +179 -1
  1349. package/dist/unstable/sql/index.js.map +1 -1
  1350. package/dist/unstable/workers/Transferable.d.ts +72 -20
  1351. package/dist/unstable/workers/Transferable.d.ts.map +1 -1
  1352. package/dist/unstable/workers/Transferable.js +57 -14
  1353. package/dist/unstable/workers/Transferable.js.map +1 -1
  1354. package/dist/unstable/workers/Worker.d.ts +61 -8
  1355. package/dist/unstable/workers/Worker.d.ts.map +1 -1
  1356. package/dist/unstable/workers/Worker.js +44 -4
  1357. package/dist/unstable/workers/Worker.js.map +1 -1
  1358. package/dist/unstable/workers/WorkerError.d.ts +31 -9
  1359. package/dist/unstable/workers/WorkerError.d.ts.map +1 -1
  1360. package/dist/unstable/workers/WorkerError.js +44 -7
  1361. package/dist/unstable/workers/WorkerError.js.map +1 -1
  1362. package/dist/unstable/workers/WorkerRunner.d.ts +32 -3
  1363. package/dist/unstable/workers/WorkerRunner.d.ts.map +1 -1
  1364. package/dist/unstable/workers/WorkerRunner.js +24 -1
  1365. package/dist/unstable/workers/WorkerRunner.js.map +1 -1
  1366. package/dist/unstable/workers/index.d.ts +81 -1
  1367. package/dist/unstable/workers/index.d.ts.map +1 -1
  1368. package/dist/unstable/workers/index.js +81 -1
  1369. package/dist/unstable/workers/index.js.map +1 -1
  1370. package/dist/unstable/workflow/Activity.d.ts +61 -10
  1371. package/dist/unstable/workflow/Activity.d.ts.map +1 -1
  1372. package/dist/unstable/workflow/Activity.js +20 -5
  1373. package/dist/unstable/workflow/Activity.js.map +1 -1
  1374. package/dist/unstable/workflow/DurableClock.d.ts +12 -3
  1375. package/dist/unstable/workflow/DurableClock.d.ts.map +1 -1
  1376. package/dist/unstable/workflow/DurableClock.js +22 -2
  1377. package/dist/unstable/workflow/DurableClock.js.map +1 -1
  1378. package/dist/unstable/workflow/DurableDeferred.d.ts +128 -31
  1379. package/dist/unstable/workflow/DurableDeferred.d.ts.map +1 -1
  1380. package/dist/unstable/workflow/DurableDeferred.js +77 -13
  1381. package/dist/unstable/workflow/DurableDeferred.js.map +1 -1
  1382. package/dist/unstable/workflow/DurableQueue.d.ts +33 -8
  1383. package/dist/unstable/workflow/DurableQueue.d.ts.map +1 -1
  1384. package/dist/unstable/workflow/DurableQueue.js +26 -6
  1385. package/dist/unstable/workflow/DurableQueue.js.map +1 -1
  1386. package/dist/unstable/workflow/Workflow.d.ts +102 -31
  1387. package/dist/unstable/workflow/Workflow.d.ts.map +1 -1
  1388. package/dist/unstable/workflow/Workflow.js +75 -19
  1389. package/dist/unstable/workflow/Workflow.js.map +1 -1
  1390. package/dist/unstable/workflow/WorkflowEngine.d.ts +40 -5
  1391. package/dist/unstable/workflow/WorkflowEngine.d.ts.map +1 -1
  1392. package/dist/unstable/workflow/WorkflowEngine.js +16 -4
  1393. package/dist/unstable/workflow/WorkflowEngine.js.map +1 -1
  1394. package/dist/unstable/workflow/WorkflowProxy.d.ts +40 -12
  1395. package/dist/unstable/workflow/WorkflowProxy.d.ts.map +1 -1
  1396. package/dist/unstable/workflow/WorkflowProxy.js +8 -12
  1397. package/dist/unstable/workflow/WorkflowProxy.js.map +1 -1
  1398. package/dist/unstable/workflow/WorkflowProxyServer.d.ts +37 -2
  1399. package/dist/unstable/workflow/WorkflowProxyServer.d.ts.map +1 -1
  1400. package/dist/unstable/workflow/WorkflowProxyServer.js +12 -6
  1401. package/dist/unstable/workflow/WorkflowProxyServer.js.map +1 -1
  1402. package/dist/unstable/workflow/index.d.ts +160 -0
  1403. package/dist/unstable/workflow/index.d.ts.map +1 -1
  1404. package/dist/unstable/workflow/index.js +160 -0
  1405. package/dist/unstable/workflow/index.js.map +1 -1
  1406. package/package.json +11 -11
  1407. package/src/Array.ts +151 -106
  1408. package/src/BigDecimal.ts +620 -553
  1409. package/src/BigInt.ts +342 -274
  1410. package/src/Boolean.ts +189 -156
  1411. package/src/Brand.ts +30 -5
  1412. package/src/Cache.ts +334 -167
  1413. package/src/Cause.ts +84 -73
  1414. package/src/Channel.ts +1639 -667
  1415. package/src/ChannelSchema.ts +137 -12
  1416. package/src/Chunk.ts +575 -429
  1417. package/src/Clock.ts +16 -9
  1418. package/src/Combiner.ts +11 -5
  1419. package/src/Config.ts +80 -68
  1420. package/src/ConfigProvider.ts +33 -32
  1421. package/src/Console.ts +88 -58
  1422. package/src/Context.ts +401 -190
  1423. package/src/Cron.ts +109 -48
  1424. package/src/Crypto.ts +327 -0
  1425. package/src/Data.ts +9 -3
  1426. package/src/DateTime.ts +893 -464
  1427. package/src/Deferred.ts +367 -175
  1428. package/src/Differ.ts +44 -2
  1429. package/src/Duration.ts +333 -186
  1430. package/src/Effect.ts +2201 -2289
  1431. package/src/Effectable.ts +38 -3
  1432. package/src/Encoding.ts +78 -28
  1433. package/src/Equal.ts +4 -3
  1434. package/src/Equivalence.ts +18 -24
  1435. package/src/ErrorReporter.ts +66 -82
  1436. package/src/ExecutionPlan.ts +106 -12
  1437. package/src/Exit.ts +6 -5
  1438. package/src/Fiber.ts +71 -40
  1439. package/src/FiberHandle.ts +157 -57
  1440. package/src/FiberMap.ts +328 -163
  1441. package/src/FiberSet.ts +130 -52
  1442. package/src/FileSystem.ts +104 -74
  1443. package/src/Filter.ts +166 -88
  1444. package/src/Formatter.ts +4 -70
  1445. package/src/Function.ts +218 -151
  1446. package/src/Graph.ts +714 -415
  1447. package/src/HKT.ts +29 -13
  1448. package/src/Hash.ts +35 -24
  1449. package/src/HashMap.ts +540 -388
  1450. package/src/HashRing.ts +111 -34
  1451. package/src/HashSet.ts +239 -153
  1452. package/src/Inspectable.ts +30 -17
  1453. package/src/Iterable.ts +336 -222
  1454. package/src/JsonPatch.ts +13 -10
  1455. package/src/JsonPointer.ts +13 -11
  1456. package/src/JsonSchema.ts +16 -0
  1457. package/src/Latch.ts +97 -26
  1458. package/src/Layer.ts +547 -445
  1459. package/src/LayerMap.ts +99 -26
  1460. package/src/LogLevel.ts +92 -131
  1461. package/src/Logger.ts +365 -297
  1462. package/src/ManagedRuntime.ts +78 -19
  1463. package/src/Match.ts +135 -161
  1464. package/src/Metric.ts +362 -313
  1465. package/src/MutableHashMap.ts +202 -127
  1466. package/src/MutableHashSet.ts +120 -52
  1467. package/src/MutableList.ts +157 -100
  1468. package/src/MutableRef.ts +129 -90
  1469. package/src/Newtype.ts +15 -2
  1470. package/src/NonEmptyIterable.ts +38 -48
  1471. package/src/Number.ts +261 -205
  1472. package/src/Optic.ts +6 -7
  1473. package/src/Option.ts +133 -156
  1474. package/src/Order.ts +6 -6
  1475. package/src/Ordering.ts +56 -45
  1476. package/src/PartitionedSemaphore.ts +225 -40
  1477. package/src/Path.ts +77 -13
  1478. package/src/Pipeable.ts +82 -24
  1479. package/src/PlatformError.ts +74 -6
  1480. package/src/Pool.ts +94 -31
  1481. package/src/Predicate.ts +17 -24
  1482. package/src/PrimaryKey.ts +11 -3
  1483. package/src/PubSub.ts +385 -309
  1484. package/src/Pull.ts +94 -25
  1485. package/src/Queue.ts +303 -184
  1486. package/src/Random.ts +69 -93
  1487. package/src/RcMap.ts +151 -141
  1488. package/src/RcRef.ts +68 -32
  1489. package/src/Record.ts +282 -137
  1490. package/src/Redactable.ts +7 -5
  1491. package/src/Redacted.ts +63 -34
  1492. package/src/Reducer.ts +3 -1
  1493. package/src/Ref.ts +173 -134
  1494. package/src/References.ts +73 -31
  1495. package/src/RegExp.ts +12 -6
  1496. package/src/Request.ts +159 -34
  1497. package/src/RequestResolver.ts +278 -121
  1498. package/src/Resource.ts +45 -7
  1499. package/src/Result.ts +137 -153
  1500. package/src/Runtime.ts +42 -21
  1501. package/src/Schedule.ts +585 -613
  1502. package/src/Scheduler.ts +44 -7
  1503. package/src/Schema.ts +1309 -615
  1504. package/src/SchemaAST.ts +123 -93
  1505. package/src/SchemaGetter.ts +52 -37
  1506. package/src/SchemaIssue.ts +19 -24
  1507. package/src/SchemaParser.ts +306 -85
  1508. package/src/SchemaRepresentation.ts +89 -77
  1509. package/src/SchemaTransformation.ts +97 -46
  1510. package/src/SchemaUtils.ts +24 -1
  1511. package/src/Scope.ts +107 -65
  1512. package/src/ScopedCache.ts +195 -59
  1513. package/src/ScopedRef.ts +28 -8
  1514. package/src/Semaphore.ts +61 -37
  1515. package/src/Sink.ts +461 -206
  1516. package/src/Stdio.ts +43 -6
  1517. package/src/Stream.ts +2361 -1613
  1518. package/src/String.ts +174 -97
  1519. package/src/Struct.ts +20 -18
  1520. package/src/SubscriptionRef.ts +309 -204
  1521. package/src/Symbol.ts +13 -5
  1522. package/src/SynchronizedRef.ts +278 -62
  1523. package/src/Take.ts +26 -2
  1524. package/src/Terminal.ts +40 -7
  1525. package/src/Tracer.ts +233 -59
  1526. package/src/Trie.ts +280 -245
  1527. package/src/Tuple.ts +34 -32
  1528. package/src/TxChunk.ts +200 -155
  1529. package/src/TxDeferred.ts +43 -29
  1530. package/src/TxHashMap.ts +370 -231
  1531. package/src/TxHashSet.ts +253 -159
  1532. package/src/TxPriorityQueue.ts +97 -65
  1533. package/src/TxPubSub.ts +77 -49
  1534. package/src/TxQueue.ts +277 -242
  1535. package/src/TxReentrantLock.ts +70 -47
  1536. package/src/TxRef.ts +69 -40
  1537. package/src/TxSemaphore.ts +101 -115
  1538. package/src/TxSubscriptionRef.ts +74 -50
  1539. package/src/Types.ts +31 -34
  1540. package/src/UndefinedOr.ts +62 -25
  1541. package/src/Unify.ts +72 -117
  1542. package/src/Utils.ts +5 -2
  1543. package/src/index.ts +1976 -420
  1544. package/src/internal/schema/schema.ts +1 -1
  1545. package/src/testing/FastCheck.ts +9 -6
  1546. package/src/testing/TestClock.ts +63 -35
  1547. package/src/testing/TestConsole.ts +54 -36
  1548. package/src/testing/TestSchema.ts +10 -8
  1549. package/src/testing/index.ts +34 -0
  1550. package/src/unstable/ai/AiError.ts +195 -137
  1551. package/src/unstable/ai/AnthropicStructuredOutput.ts +2 -2
  1552. package/src/unstable/ai/Chat.ts +68 -43
  1553. package/src/unstable/ai/EmbeddingModel.ts +12 -11
  1554. package/src/unstable/ai/IdGenerator.ts +28 -18
  1555. package/src/unstable/ai/LanguageModel.ts +35 -27
  1556. package/src/unstable/ai/McpSchema.ts +342 -119
  1557. package/src/unstable/ai/McpServer.ts +79 -20
  1558. package/src/unstable/ai/Model.ts +10 -12
  1559. package/src/unstable/ai/OpenAiStructuredOutput.ts +2 -2
  1560. package/src/unstable/ai/Prompt.ts +216 -192
  1561. package/src/unstable/ai/Response.ts +179 -167
  1562. package/src/unstable/ai/ResponseIdTracker.ts +43 -4
  1563. package/src/unstable/ai/Telemetry.ts +43 -33
  1564. package/src/unstable/ai/Tokenizer.ts +14 -9
  1565. package/src/unstable/ai/Tool.ts +168 -97
  1566. package/src/unstable/ai/Toolkit.ts +51 -46
  1567. package/src/unstable/ai/index.ts +121 -29
  1568. package/src/unstable/cli/Argument.ts +226 -134
  1569. package/src/unstable/cli/CliError.ts +96 -26
  1570. package/src/unstable/cli/CliOutput.ts +48 -19
  1571. package/src/unstable/cli/Command.ts +196 -115
  1572. package/src/unstable/cli/Completions.ts +7 -7
  1573. package/src/unstable/cli/Flag.ts +235 -142
  1574. package/src/unstable/cli/GlobalFlag.ts +41 -13
  1575. package/src/unstable/cli/HelpDoc.ts +39 -14
  1576. package/src/unstable/cli/Param.ts +395 -260
  1577. package/src/unstable/cli/Primitive.ts +79 -42
  1578. package/src/unstable/cli/Prompt.ts +207 -59
  1579. package/src/unstable/cli/index.ts +205 -6
  1580. package/src/unstable/cli/internal/ansi.ts +13 -0
  1581. package/src/unstable/cli/internal/command.ts +5 -1
  1582. package/src/unstable/cli/internal/config.ts +3 -0
  1583. package/src/unstable/cli/internal/lexer.ts +11 -0
  1584. package/src/unstable/cli/internal/parser.ts +0 -1
  1585. package/src/unstable/cluster/ClusterCron.ts +35 -1
  1586. package/src/unstable/cluster/ClusterError.ts +56 -7
  1587. package/src/unstable/cluster/ClusterMetrics.ts +39 -5
  1588. package/src/unstable/cluster/ClusterSchema.ts +61 -8
  1589. package/src/unstable/cluster/ClusterWorkflowEngine.ts +35 -2
  1590. package/src/unstable/cluster/DeliverAt.ts +39 -4
  1591. package/src/unstable/cluster/Entity.ts +106 -16
  1592. package/src/unstable/cluster/EntityAddress.ts +30 -2
  1593. package/src/unstable/cluster/EntityId.ts +18 -3
  1594. package/src/unstable/cluster/EntityProxy.ts +42 -14
  1595. package/src/unstable/cluster/EntityProxyServer.ts +45 -8
  1596. package/src/unstable/cluster/EntityResource.ts +43 -6
  1597. package/src/unstable/cluster/EntityType.ts +27 -3
  1598. package/src/unstable/cluster/Envelope.ts +128 -23
  1599. package/src/unstable/cluster/HttpRunner.ts +88 -13
  1600. package/src/unstable/cluster/K8sHttpClient.ts +49 -6
  1601. package/src/unstable/cluster/MachineId.ts +24 -3
  1602. package/src/unstable/cluster/Message.ts +102 -13
  1603. package/src/unstable/cluster/MessageStorage.ts +126 -21
  1604. package/src/unstable/cluster/Reply.ts +101 -12
  1605. package/src/unstable/cluster/Runner.ts +47 -17
  1606. package/src/unstable/cluster/RunnerAddress.ts +34 -2
  1607. package/src/unstable/cluster/RunnerHealth.ts +40 -12
  1608. package/src/unstable/cluster/RunnerServer.ts +31 -4
  1609. package/src/unstable/cluster/RunnerStorage.ts +42 -5
  1610. package/src/unstable/cluster/Runners.ts +76 -13
  1611. package/src/unstable/cluster/ShardId.ts +53 -5
  1612. package/src/unstable/cluster/Sharding.ts +35 -4
  1613. package/src/unstable/cluster/ShardingConfig.ts +75 -10
  1614. package/src/unstable/cluster/ShardingRegistrationEvent.ts +31 -7
  1615. package/src/unstable/cluster/SingleRunner.ts +23 -1
  1616. package/src/unstable/cluster/Singleton.ts +15 -1
  1617. package/src/unstable/cluster/SingletonAddress.ts +21 -1
  1618. package/src/unstable/cluster/Snowflake.ts +90 -19
  1619. package/src/unstable/cluster/SocketRunner.ts +29 -2
  1620. package/src/unstable/cluster/SqlMessageStorage.ts +27 -3
  1621. package/src/unstable/cluster/SqlRunnerStorage.ts +46 -7
  1622. package/src/unstable/cluster/TestRunner.ts +18 -1
  1623. package/src/unstable/cluster/index.ts +790 -0
  1624. package/src/unstable/cluster/internal/hash.ts +12 -0
  1625. package/src/unstable/devtools/DevTools.ts +26 -3
  1626. package/src/unstable/devtools/DevToolsClient.ts +32 -5
  1627. package/src/unstable/devtools/DevToolsSchema.ts +201 -44
  1628. package/src/unstable/devtools/DevToolsServer.ts +27 -2
  1629. package/src/unstable/devtools/index.ts +58 -0
  1630. package/src/unstable/encoding/Msgpack.ts +97 -12
  1631. package/src/unstable/encoding/Ndjson.ts +149 -21
  1632. package/src/unstable/encoding/Sse.ts +109 -18
  1633. package/src/unstable/encoding/index.ts +49 -0
  1634. package/src/unstable/eventlog/Event.ts +131 -30
  1635. package/src/unstable/eventlog/EventGroup.ts +50 -17
  1636. package/src/unstable/eventlog/EventJournal.ts +120 -20
  1637. package/src/unstable/eventlog/EventLog.ts +150 -31
  1638. package/src/unstable/eventlog/EventLogEncryption.ts +42 -6
  1639. package/src/unstable/eventlog/EventLogMessage.ts +92 -18
  1640. package/src/unstable/eventlog/EventLogRemote.ts +54 -8
  1641. package/src/unstable/eventlog/EventLogServer.ts +33 -3
  1642. package/src/unstable/eventlog/EventLogServerEncrypted.ts +52 -6
  1643. package/src/unstable/eventlog/EventLogServerUnencrypted.ts +90 -16
  1644. package/src/unstable/eventlog/EventLogSessionAuth.ts +77 -15
  1645. package/src/unstable/eventlog/SqlEventJournal.ts +28 -2
  1646. package/src/unstable/eventlog/SqlEventLogServerEncrypted.ts +32 -3
  1647. package/src/unstable/eventlog/SqlEventLogServerUnencrypted.ts +28 -2
  1648. package/src/unstable/eventlog/index.ts +240 -0
  1649. package/src/unstable/http/Cookies.ts +156 -77
  1650. package/src/unstable/http/Etag.ts +40 -7
  1651. package/src/unstable/http/FetchHttpClient.ts +33 -4
  1652. package/src/unstable/http/FindMyWay.ts +1 -1
  1653. package/src/unstable/http/Headers.ts +252 -50
  1654. package/src/unstable/http/HttpBody.ts +128 -26
  1655. package/src/unstable/http/HttpClient.ts +204 -96
  1656. package/src/unstable/http/HttpClientError.ts +80 -12
  1657. package/src/unstable/http/HttpClientRequest.ts +318 -100
  1658. package/src/unstable/http/HttpClientResponse.ts +59 -16
  1659. package/src/unstable/http/HttpEffect.ts +66 -18
  1660. package/src/unstable/http/HttpIncomingMessage.ts +48 -7
  1661. package/src/unstable/http/HttpMethod.ts +38 -6
  1662. package/src/unstable/http/HttpMiddleware.ts +60 -11
  1663. package/src/unstable/http/HttpPlatform.ts +34 -3
  1664. package/src/unstable/http/HttpRouter.ts +232 -69
  1665. package/src/unstable/http/HttpServer.ts +151 -22
  1666. package/src/unstable/http/HttpServerError.ts +93 -10
  1667. package/src/unstable/http/HttpServerRequest.ts +125 -21
  1668. package/src/unstable/http/HttpServerRespondable.ts +49 -6
  1669. package/src/unstable/http/HttpServerResponse.ts +391 -67
  1670. package/src/unstable/http/HttpStaticServer.ts +24 -8
  1671. package/src/unstable/http/HttpTraceContext.ts +53 -6
  1672. package/src/unstable/http/Multipart.ts +179 -28
  1673. package/src/unstable/http/Multipasta/HeadersParser.ts +1 -1
  1674. package/src/unstable/http/Multipasta/Node.ts +1 -1
  1675. package/src/unstable/http/Multipasta/Search.ts +1 -1
  1676. package/src/unstable/http/Multipasta/Web.ts +1 -1
  1677. package/src/unstable/http/Multipasta.ts +1 -1
  1678. package/src/unstable/http/Template.ts +53 -1
  1679. package/src/unstable/http/Url.ts +70 -56
  1680. package/src/unstable/http/UrlParams.ts +237 -51
  1681. package/src/unstable/http/index.ts +452 -0
  1682. package/src/unstable/httpapi/HttpApi.ts +49 -14
  1683. package/src/unstable/httpapi/HttpApiBuilder.ts +81 -16
  1684. package/src/unstable/httpapi/HttpApiClient.ts +78 -15
  1685. package/src/unstable/httpapi/HttpApiEndpoint.ts +238 -59
  1686. package/src/unstable/httpapi/HttpApiError.ts +100 -1
  1687. package/src/unstable/httpapi/HttpApiGroup.ts +87 -20
  1688. package/src/unstable/httpapi/HttpApiMiddleware.ts +113 -22
  1689. package/src/unstable/httpapi/HttpApiScalar.ts +38 -4
  1690. package/src/unstable/httpapi/HttpApiSchema.ts +86 -38
  1691. package/src/unstable/httpapi/HttpApiSecurity.ts +73 -17
  1692. package/src/unstable/httpapi/HttpApiSwagger.ts +23 -3
  1693. package/src/unstable/httpapi/HttpApiTest.ts +26 -1
  1694. package/src/unstable/httpapi/OpenApi.ts +115 -15
  1695. package/src/unstable/httpapi/index.ts +310 -25
  1696. package/src/unstable/observability/Otlp.ts +33 -3
  1697. package/src/unstable/observability/OtlpExporter.ts +32 -1
  1698. package/src/unstable/observability/OtlpLogger.ts +32 -2
  1699. package/src/unstable/observability/OtlpMetrics.ts +39 -5
  1700. package/src/unstable/observability/OtlpResource.ts +68 -12
  1701. package/src/unstable/observability/OtlpSerialization.ts +28 -3
  1702. package/src/unstable/observability/OtlpTracer.ts +41 -2
  1703. package/src/unstable/observability/PrometheusMetrics.ts +36 -16
  1704. package/src/unstable/observability/index.ts +160 -3
  1705. package/src/unstable/persistence/KeyValueStore.ts +108 -28
  1706. package/src/unstable/persistence/Persistable.ts +76 -15
  1707. package/src/unstable/persistence/PersistedCache.ts +27 -2
  1708. package/src/unstable/persistence/PersistedQueue.ts +98 -16
  1709. package/src/unstable/persistence/Persistence.ts +98 -16
  1710. package/src/unstable/persistence/RateLimiter.ts +101 -21
  1711. package/src/unstable/persistence/Redis.ts +42 -5
  1712. package/src/unstable/persistence/index.ts +147 -0
  1713. package/src/unstable/process/ChildProcess.ts +90 -66
  1714. package/src/unstable/process/ChildProcessSpawner.ts +23 -12
  1715. package/src/unstable/process/index.ts +2 -1
  1716. package/src/unstable/reactivity/AsyncResult.ts +204 -61
  1717. package/src/unstable/reactivity/Atom.ts +598 -139
  1718. package/src/unstable/reactivity/AtomHttpApi.ts +41 -2
  1719. package/src/unstable/reactivity/AtomRef.ts +51 -7
  1720. package/src/unstable/reactivity/AtomRegistry.ts +141 -22
  1721. package/src/unstable/reactivity/AtomRpc.ts +36 -2
  1722. package/src/unstable/reactivity/Hydration.ts +45 -5
  1723. package/src/unstable/reactivity/Reactivity.ts +94 -13
  1724. package/src/unstable/reactivity/index.ts +167 -0
  1725. package/src/unstable/rpc/Rpc.ts +254 -56
  1726. package/src/unstable/rpc/RpcClient.ts +106 -19
  1727. package/src/unstable/rpc/RpcClientError.ts +26 -2
  1728. package/src/unstable/rpc/RpcGroup.ts +51 -8
  1729. package/src/unstable/rpc/RpcMessage.ts +128 -32
  1730. package/src/unstable/rpc/RpcMiddleware.ts +100 -20
  1731. package/src/unstable/rpc/RpcSchema.ts +38 -4
  1732. package/src/unstable/rpc/RpcSerialization.ts +60 -13
  1733. package/src/unstable/rpc/RpcServer.ts +107 -23
  1734. package/src/unstable/rpc/RpcTest.ts +20 -1
  1735. package/src/unstable/rpc/RpcWorker.ts +39 -6
  1736. package/src/unstable/rpc/Utils.ts +33 -0
  1737. package/src/unstable/rpc/index.ts +272 -0
  1738. package/src/unstable/schema/Model.ts +245 -61
  1739. package/src/unstable/schema/VariantSchema.ts +101 -24
  1740. package/src/unstable/schema/index.ts +37 -0
  1741. package/src/unstable/socket/Socket.ts +168 -34
  1742. package/src/unstable/socket/SocketServer.ts +58 -10
  1743. package/src/unstable/socket/index.ts +44 -0
  1744. package/src/unstable/sql/Migrator.ts +61 -9
  1745. package/src/unstable/sql/SqlClient.ts +59 -2
  1746. package/src/unstable/sql/SqlConnection.ts +34 -3
  1747. package/src/unstable/sql/SqlError.ts +135 -0
  1748. package/src/unstable/sql/SqlModel.ts +25 -5
  1749. package/src/unstable/sql/SqlResolver.ts +56 -13
  1750. package/src/unstable/sql/SqlSchema.ts +29 -8
  1751. package/src/unstable/sql/SqlStream.ts +24 -0
  1752. package/src/unstable/sql/Statement.ts +168 -24
  1753. package/src/unstable/sql/index.ts +179 -1
  1754. package/src/unstable/workers/Transferable.ts +72 -20
  1755. package/src/unstable/workers/Worker.ts +61 -8
  1756. package/src/unstable/workers/WorkerError.ts +50 -9
  1757. package/src/unstable/workers/WorkerRunner.ts +32 -3
  1758. package/src/unstable/workers/index.ts +81 -1
  1759. package/src/unstable/workflow/Activity.ts +61 -10
  1760. package/src/unstable/workflow/DurableClock.ts +26 -3
  1761. package/src/unstable/workflow/DurableDeferred.ts +148 -31
  1762. package/src/unstable/workflow/DurableQueue.ts +33 -8
  1763. package/src/unstable/workflow/Workflow.ts +123 -31
  1764. package/src/unstable/workflow/WorkflowEngine.ts +40 -5
  1765. package/src/unstable/workflow/WorkflowProxy.ts +40 -12
  1766. package/src/unstable/workflow/WorkflowProxyServer.ts +41 -6
  1767. package/src/unstable/workflow/index.ts +160 -0
package/src/HashMap.ts CHANGED
@@ -1,4 +1,77 @@
1
1
  /**
2
+ * The `HashMap` module provides an immutable key-value data structure with
3
+ * efficient lookup, insertion, removal, and transformation operations. A
4
+ * `HashMap<Key, Value>` stores entries by hashing keys and resolving matches
5
+ * with Effect's structural equality semantics.
6
+ *
7
+ * **Mental model**
8
+ *
9
+ * - A `HashMap<Key, Value>` is an immutable collection of key-value pairs
10
+ * - Operations such as {@link set}, {@link remove}, and {@link modifyAt} return
11
+ * new maps; existing maps are not mutated
12
+ * - Keys are compared using the `Equal` protocol and are grouped by hashes from
13
+ * the `Hash` protocol
14
+ * - Plain JavaScript primitives work as keys, and custom objects can define
15
+ * `Equal` / `Hash` behavior for structural lookup
16
+ * - Lookups with {@link get} return an `Option`, making missing keys explicit
17
+ * - Iteration order is based on the map's internal hash structure and should
18
+ * not be treated as insertion order
19
+ *
20
+ * **Common tasks**
21
+ *
22
+ * - Create maps: {@link empty}, {@link make}, {@link fromIterable}
23
+ * - Read values: {@link get}, {@link getUnsafe}, {@link has}, {@link hasBy}
24
+ * - Add or update entries: {@link set}, {@link modify}, {@link modifyAt}, {@link setMany}
25
+ * - Remove entries: {@link remove}, {@link removeMany}
26
+ * - Combine maps: {@link union}
27
+ * - Iterate or convert: {@link keys}, {@link values}, {@link entries}, {@link toValues}, {@link toEntries}
28
+ * - Transform values: {@link map}, {@link flatMap}, {@link filter}, {@link filterMap}, {@link compact}
29
+ * - Fold and search: {@link reduce}, {@link findFirst}, {@link some}, {@link every}
30
+ * - Batch updates efficiently: {@link mutate}, {@link beginMutation}, {@link endMutation}
31
+ *
32
+ * **Gotchas**
33
+ *
34
+ * - {@link getUnsafe} throws when the key is absent; prefer {@link get} unless
35
+ * absence is impossible by construction
36
+ * - Mutating a key object after insertion can make future lookups fail if its
37
+ * equality or hash changes
38
+ * - Hash collisions are handled by equality checks, so matching hashes alone do
39
+ * not make two keys equal
40
+ * - Use {@link getHash} and {@link hasHash} only when you already have the
41
+ * correct hash for the same key
42
+ * - Convert entries to an array and sort them when deterministic presentation is
43
+ * required
44
+ *
45
+ * **Quickstart**
46
+ *
47
+ * **Example** (Working with immutable maps)
48
+ *
49
+ * ```ts
50
+ * import { HashMap, Option } from "effect"
51
+ *
52
+ * const scores = HashMap.make(["alice", 10], ["bob", 15])
53
+ *
54
+ * const updated = scores.pipe(
55
+ * HashMap.set("carol", 20),
56
+ * HashMap.modify("alice", (score) => score + 1)
57
+ * )
58
+ *
59
+ * console.log(HashMap.get(updated, "alice"))
60
+ * // Output: Option.some(11)
61
+ *
62
+ * console.log(HashMap.get(scores, "carol"))
63
+ * // Output: Option.none()
64
+ *
65
+ * console.log(Option.getOrElse(HashMap.get(updated, "dave"), () => 0))
66
+ * // Output: 0
67
+ * ```
68
+ *
69
+ * **See also**
70
+ *
71
+ * - {@link HashSet} for immutable sets backed by hash semantics
72
+ * - {@link Equal} for structural equality
73
+ * - {@link Hash} for hash implementations used by hashed collections
74
+ *
2
75
  * @since 2.0.0
3
76
  */
4
77
 
@@ -17,9 +90,10 @@ const TypeId = internal.HashMapTypeId
17
90
  * insertion, and deletion operations. It uses a Hash Array Mapped Trie (HAMT) internally
18
91
  * for structural sharing and optimal performance.
19
92
  *
20
- * @example
93
+ * **Example** (Using basic HashMap operations)
94
+ *
21
95
  * ```ts
22
- * import * as HashMap from "effect/HashMap"
96
+ * import { HashMap } from "effect"
23
97
  *
24
98
  * // Create a HashMap
25
99
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
@@ -36,8 +110,8 @@ const TypeId = internal.HashMapTypeId
36
110
  * console.log(HashMap.size(updated)) // 4
37
111
  * ```
38
112
  *
39
- * @since 2.0.0
40
113
  * @category models
114
+ * @since 2.0.0
41
115
  */
42
116
  export interface HashMap<out Key, out Value> extends Iterable<[Key, Value]>, Equal, Pipeable, Inspectable {
43
117
  readonly [TypeId]: typeof TypeId
@@ -47,9 +121,10 @@ export interface HashMap<out Key, out Value> extends Iterable<[Key, Value]>, Equ
47
121
  * The HashMap namespace contains type-level utilities and helper types
48
122
  * for working with HashMap instances.
49
123
  *
50
- * @example
124
+ * **Example** (Extracting HashMap types)
125
+ *
51
126
  * ```ts
52
- * import * as HashMap from "effect/HashMap"
127
+ * import { HashMap } from "effect"
53
128
  *
54
129
  * // Create a concrete HashMap for type extraction
55
130
  * const inventory = HashMap.make(
@@ -75,7 +150,6 @@ export interface HashMap<out Key, out Value> extends Iterable<[Key, Value]>, Equ
75
150
  * ```
76
151
  *
77
152
  * @since 2.0.0
78
- * @category models
79
153
  */
80
154
  export declare namespace HashMap {
81
155
  /**
@@ -83,10 +157,10 @@ export declare namespace HashMap {
83
157
  * Takes an Option representing the current value and returns an Option
84
158
  * representing the new value.
85
159
  *
86
- * @example
160
+ * **Example** (Updating values from Options)
161
+ *
87
162
  * ```ts
88
- * import * as HashMap from "effect/HashMap"
89
- * import * as Option from "effect/Option"
163
+ * import { HashMap, Option } from "effect"
90
164
  *
91
165
  * const map = HashMap.make(["a", 1], ["b", 2])
92
166
  *
@@ -98,17 +172,18 @@ export declare namespace HashMap {
98
172
  * console.log(HashMap.get(updated, "a")) // Option.some(2)
99
173
  * ```
100
174
  *
101
- * @since 2.0.0
102
175
  * @category models
176
+ * @since 2.0.0
103
177
  */
104
178
  export type UpdateFn<V> = (option: Option<V>) => Option<V>
105
179
 
106
180
  /**
107
181
  * This type-level utility extracts the key type `K` from a `HashMap<K, V>` type.
108
182
  *
109
- * @example
183
+ * **Example** (Extracting key types)
184
+ *
110
185
  * ```ts
111
- * import * as HashMap from "effect/HashMap"
186
+ * import { HashMap } from "effect"
112
187
  *
113
188
  * // Create a HashMap to extract key type from
114
189
  * const userMap = HashMap.make(
@@ -123,17 +198,18 @@ export declare namespace HashMap {
123
198
  * const getUserById = (id: UserKey) => HashMap.get(userMap, id)
124
199
  * console.log(getUserById("alice")) // Option.some({ name: "Alice", age: 30 })
125
200
  * ```
126
- * @since 2.0.0
127
201
  * @category type-level
202
+ * @since 2.0.0
128
203
  */
129
204
  export type Key<T extends HashMap<any, any>> = [T] extends [HashMap<infer _K, infer _V>] ? _K : never
130
205
 
131
206
  /**
132
207
  * This type-level utility extracts the value type `V` from a `HashMap<K, V>` type.
133
208
  *
134
- * @example
209
+ * **Example** (Extracting value types)
210
+ *
135
211
  * ```ts
136
- * import * as HashMap from "effect/HashMap"
212
+ * import { HashMap } from "effect"
137
213
  *
138
214
  * // Create a HashMap with user data
139
215
  * const userMap = HashMap.make(
@@ -152,17 +228,18 @@ export declare namespace HashMap {
152
228
  * const alice = HashMap.get(userMap, "alice")
153
229
  * // alice has type Option<User> thanks to type extraction
154
230
  * ```
155
- * @since 2.0.0
156
231
  * @category type-level
232
+ * @since 2.0.0
157
233
  */
158
234
  export type Value<T extends HashMap<any, any>> = [T] extends [HashMap<infer _K, infer _V>] ? _V : never
159
235
 
160
236
  /**
161
237
  * This type-level utility extracts the entry type `[K, V]` from a `HashMap<K, V>` type.
162
238
  *
163
- * @example
239
+ * **Example** (Extracting entry types)
240
+ *
164
241
  * ```ts
165
- * import * as HashMap from "effect/HashMap"
242
+ * import { HashMap } from "effect"
166
243
  *
167
244
  * // Create a product catalog HashMap
168
245
  * const catalog = HashMap.make(
@@ -178,12 +255,12 @@ export declare namespace HashMap {
178
255
  * return `${productId}: $${product.price} (${product.category})`
179
256
  * }
180
257
  *
181
- * // Convert to entries and process
182
- * const descriptions = HashMap.toEntries(catalog).map(processEntry)
183
- * console.log(descriptions) // ["laptop: $999 (electronics)", "book: $29 (education)"]
258
+ * // Convert to entries, process, and sort for deterministic output
259
+ * const descriptions = HashMap.toEntries(catalog).map(processEntry).sort()
260
+ * console.log(descriptions) // ["book: $29 (education)", "laptop: $999 (electronics)"]
184
261
  * ```
185
- * @since 3.9.0
186
262
  * @category type-level
263
+ * @since 3.9.0
187
264
  */
188
265
  export type Entry<T extends HashMap<any, any>> = [Key<T>, Value<T>]
189
266
  }
@@ -191,9 +268,10 @@ export declare namespace HashMap {
191
268
  /**
192
269
  * Checks if a value is a HashMap.
193
270
  *
194
- * @example
271
+ * **Example** (Checking HashMap values)
272
+ *
195
273
  * ```ts
196
- * import * as HashMap from "effect/HashMap"
274
+ * import { HashMap } from "effect"
197
275
  *
198
276
  * const map = HashMap.make(["a", 1], ["b", 2])
199
277
  * const notMap = { a: 1 }
@@ -203,16 +281,17 @@ export declare namespace HashMap {
203
281
  * console.log(HashMap.isHashMap(null)) // false
204
282
  * ```
205
283
  *
206
- * @since 2.0.0
207
284
  * @category refinements
285
+ * @since 2.0.0
208
286
  */
209
287
  export const isHashMap: {
210
288
  /**
211
289
  * Checks if a value is a HashMap.
212
290
  *
213
- * @example
291
+ * **Example** (Checking HashMap values)
292
+ *
214
293
  * ```ts
215
- * import * as HashMap from "effect/HashMap"
294
+ * import { HashMap } from "effect"
216
295
  *
217
296
  * const map = HashMap.make(["a", 1], ["b", 2])
218
297
  * const notMap = { a: 1 }
@@ -222,16 +301,17 @@ export const isHashMap: {
222
301
  * console.log(HashMap.isHashMap(null)) // false
223
302
  * ```
224
303
  *
225
- * @since 2.0.0
226
304
  * @category refinements
305
+ * @since 2.0.0
227
306
  */
228
307
  <K, V>(u: Iterable<readonly [K, V]>): u is HashMap<K, V>
229
308
  /**
230
309
  * Checks if a value is a HashMap.
231
310
  *
232
- * @example
311
+ * **Example** (Checking HashMap values)
312
+ *
233
313
  * ```ts
234
- * import * as HashMap from "effect/HashMap"
314
+ * import { HashMap } from "effect"
235
315
  *
236
316
  * const map = HashMap.make(["a", 1], ["b", 2])
237
317
  * const notMap = { a: 1 }
@@ -241,8 +321,8 @@ export const isHashMap: {
241
321
  * console.log(HashMap.isHashMap(null)) // false
242
322
  * ```
243
323
  *
244
- * @since 2.0.0
245
324
  * @category refinements
325
+ * @since 2.0.0
246
326
  */
247
327
  (u: unknown): u is HashMap<unknown, unknown>
248
328
  } = internal.isHashMap
@@ -250,34 +330,36 @@ export const isHashMap: {
250
330
  /**
251
331
  * Creates a new empty `HashMap`.
252
332
  *
253
- * @example
333
+ * **Example** (Creating an empty HashMap)
334
+ *
254
335
  * ```ts
255
- * import * as HashMap from "effect/HashMap"
336
+ * import { HashMap } from "effect"
256
337
  *
257
338
  * const map = HashMap.empty<string, number>()
258
339
  * console.log(HashMap.isEmpty(map)) // true
259
340
  * console.log(HashMap.size(map)) // 0
260
341
  * ```
261
342
  *
262
- * @since 2.0.0
263
343
  * @category constructors
344
+ * @since 2.0.0
264
345
  */
265
346
  export const empty: <K = never, V = never>() => HashMap<K, V> = internal.empty
266
347
 
267
348
  /**
268
349
  * Constructs a new `HashMap` from an array of key/value pairs.
269
350
  *
270
- * @example
351
+ * **Example** (Creating a HashMap from entries)
352
+ *
271
353
  * ```ts
272
- * import * as HashMap from "effect/HashMap"
354
+ * import { HashMap } from "effect"
273
355
  *
274
356
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
275
357
  * console.log(HashMap.size(map)) // 3
276
358
  * console.log(HashMap.get(map, "b")) // Option.some(2)
277
359
  * ```
278
360
  *
279
- * @since 2.0.0
280
361
  * @category constructors
362
+ * @since 2.0.0
281
363
  */
282
364
  export const make: <Entries extends ReadonlyArray<readonly [any, any]>>(
283
365
  ...entries: Entries
@@ -289,9 +371,10 @@ export const make: <Entries extends ReadonlyArray<readonly [any, any]>>(
289
371
  /**
290
372
  * Creates a new `HashMap` from an iterable collection of key/value pairs.
291
373
  *
292
- * @example
374
+ * **Example** (Creating a HashMap from an iterable)
375
+ *
293
376
  * ```ts
294
- * import * as HashMap from "effect/HashMap"
377
+ * import { HashMap } from "effect"
295
378
  *
296
379
  * const entries = [["a", 1], ["b", 2], ["c", 3]] as const
297
380
  * const map = HashMap.fromIterable(entries)
@@ -299,17 +382,18 @@ export const make: <Entries extends ReadonlyArray<readonly [any, any]>>(
299
382
  * console.log(HashMap.get(map, "a")) // Option.some(1)
300
383
  * ```
301
384
  *
302
- * @since 2.0.0
303
385
  * @category constructors
386
+ * @since 2.0.0
304
387
  */
305
388
  export const fromIterable: <K, V>(entries: Iterable<readonly [K, V]>) => HashMap<K, V> = internal.fromIterable
306
389
 
307
390
  /**
308
- * Checks if the `HashMap` contains any entries.
391
+ * Checks whether the `HashMap` contains no entries.
392
+ *
393
+ * **Example** (Checking for empty HashMaps)
309
394
  *
310
- * @example
311
395
  * ```ts
312
- * import * as HashMap from "effect/HashMap"
396
+ * import { HashMap } from "effect"
313
397
  *
314
398
  * const emptyMap = HashMap.empty<string, number>()
315
399
  * const nonEmptyMap = HashMap.make(["a", 1])
@@ -318,8 +402,8 @@ export const fromIterable: <K, V>(entries: Iterable<readonly [K, V]>) => HashMap
318
402
  * console.log(HashMap.isEmpty(nonEmptyMap)) // false
319
403
  * ```
320
404
  *
321
- * @since 2.0.0
322
405
  * @category elements
406
+ * @since 2.0.0
323
407
  */
324
408
  export const isEmpty: <K, V>(self: HashMap<K, V>) => boolean = internal.isEmpty
325
409
 
@@ -327,9 +411,10 @@ export const isEmpty: <K, V>(self: HashMap<K, V>) => boolean = internal.isEmpty
327
411
  * Safely lookup the value for the specified key in the `HashMap` using the
328
412
  * internal hashing function.
329
413
  *
330
- * @example
414
+ * **Example** (Looking up values)
415
+ *
331
416
  * ```ts
332
- * import * as HashMap from "effect/HashMap"
417
+ * import { HashMap } from "effect"
333
418
  *
334
419
  * const map = HashMap.make(["a", 1], ["b", 2])
335
420
  *
@@ -341,17 +426,18 @@ export const isEmpty: <K, V>(self: HashMap<K, V>) => boolean = internal.isEmpty
341
426
  * console.log(value) // Option.some(2)
342
427
  * ```
343
428
  *
344
- * @since 2.0.0
345
429
  * @category elements
430
+ * @since 2.0.0
346
431
  */
347
432
  export const get: {
348
433
  /**
349
434
  * Safely lookup the value for the specified key in the `HashMap` using the
350
435
  * internal hashing function.
351
436
  *
352
- * @example
437
+ * **Example** (Looking up values)
438
+ *
353
439
  * ```ts
354
- * import * as HashMap from "effect/HashMap"
440
+ * import { HashMap } from "effect"
355
441
  *
356
442
  * const map = HashMap.make(["a", 1], ["b", 2])
357
443
  *
@@ -363,17 +449,18 @@ export const get: {
363
449
  * console.log(value) // Option.some(2)
364
450
  * ```
365
451
  *
366
- * @since 2.0.0
367
452
  * @category elements
453
+ * @since 2.0.0
368
454
  */
369
455
  <K1 extends K, K>(key: K1): <V>(self: HashMap<K, V>) => Option<V>
370
456
  /**
371
457
  * Safely lookup the value for the specified key in the `HashMap` using the
372
458
  * internal hashing function.
373
459
  *
374
- * @example
460
+ * **Example** (Looking up values)
461
+ *
375
462
  * ```ts
376
- * import * as HashMap from "effect/HashMap"
463
+ * import { HashMap } from "effect"
377
464
  *
378
465
  * const map = HashMap.make(["a", 1], ["b", 2])
379
466
  *
@@ -385,8 +472,8 @@ export const get: {
385
472
  * console.log(value) // Option.some(2)
386
473
  * ```
387
474
  *
388
- * @since 2.0.0
389
475
  * @category elements
476
+ * @since 2.0.0
390
477
  */
391
478
  <K1 extends K, K, V>(self: HashMap<K, V>, key: K1): Option<V>
392
479
  } = internal.get
@@ -394,10 +481,10 @@ export const get: {
394
481
  /**
395
482
  * Lookup the value for the specified key in the `HashMap` using a custom hash.
396
483
  *
397
- * @example
484
+ * **Example** (Looking up values with a hash)
485
+ *
398
486
  * ```ts
399
- * import { Hash } from "effect"
400
- * import * as HashMap from "effect/HashMap"
487
+ * import { Hash, HashMap } from "effect"
401
488
  *
402
489
  * // Useful when implementing custom equality for complex keys
403
490
  * const userMap = HashMap.make(
@@ -418,17 +505,17 @@ export const get: {
418
505
  * console.log(notFound) // Option.none()
419
506
  * ```
420
507
  *
421
- * @since 2.0.0
422
508
  * @category elements
509
+ * @since 2.0.0
423
510
  */
424
511
  export const getHash: {
425
512
  /**
426
513
  * Lookup the value for the specified key in the `HashMap` using a custom hash.
427
514
  *
428
- * @example
515
+ * **Example** (Looking up values with a hash)
516
+ *
429
517
  * ```ts
430
- * import { Hash } from "effect"
431
- * import * as HashMap from "effect/HashMap"
518
+ * import { Hash, HashMap } from "effect"
432
519
  *
433
520
  * // Useful when implementing custom equality for complex keys
434
521
  * const userMap = HashMap.make(
@@ -449,17 +536,17 @@ export const getHash: {
449
536
  * console.log(notFound) // Option.none()
450
537
  * ```
451
538
  *
452
- * @since 2.0.0
453
539
  * @category elements
540
+ * @since 2.0.0
454
541
  */
455
542
  <K1 extends K, K>(key: K1, hash: number): <V>(self: HashMap<K, V>) => Option<V>
456
543
  /**
457
544
  * Lookup the value for the specified key in the `HashMap` using a custom hash.
458
545
  *
459
- * @example
546
+ * **Example** (Looking up values with a hash)
547
+ *
460
548
  * ```ts
461
- * import { Hash } from "effect"
462
- * import * as HashMap from "effect/HashMap"
549
+ * import { Hash, HashMap } from "effect"
463
550
  *
464
551
  * // Useful when implementing custom equality for complex keys
465
552
  * const userMap = HashMap.make(
@@ -480,8 +567,8 @@ export const getHash: {
480
567
  * console.log(notFound) // Option.none()
481
568
  * ```
482
569
  *
483
- * @since 2.0.0
484
570
  * @category elements
571
+ * @since 2.0.0
485
572
  */
486
573
  <K1 extends K, K, V>(self: HashMap<K, V>, key: K1, hash: number): Option<V>
487
574
  } = internal.getHash
@@ -493,10 +580,10 @@ export const getHash: {
493
580
  * ⚠️ **Warning**: This function throws an error if the key is not found.
494
581
  * Use `HashMap.get` for safe access that returns `Option`.
495
582
  *
496
- * @example
583
+ * **Example** (Unsafely looking up values)
584
+ *
497
585
  * ```ts
498
- * import * as HashMap from "effect/HashMap"
499
- * import * as Option from "effect/Option"
586
+ * import { HashMap, Option } from "effect"
500
587
  *
501
588
  * const config = HashMap.make(
502
589
  * ["api_url", "https://api.example.com"],
@@ -518,8 +605,8 @@ export const getHash: {
518
605
  * // Error: "HashMap.getUnsafe: key not found"
519
606
  * ```
520
607
  *
521
- * @since 2.0.0
522
608
  * @category unsafe
609
+ * @since 4.0.0
523
610
  */
524
611
  export const getUnsafe: {
525
612
  /**
@@ -529,10 +616,10 @@ export const getUnsafe: {
529
616
  * ⚠️ **Warning**: This function throws an error if the key is not found.
530
617
  * Use `HashMap.get` for safe access that returns `Option`.
531
618
  *
532
- * @example
619
+ * **Example** (Unsafely looking up values)
620
+ *
533
621
  * ```ts
534
- * import * as HashMap from "effect/HashMap"
535
- * import * as Option from "effect/Option"
622
+ * import { HashMap, Option } from "effect"
536
623
  *
537
624
  * const config = HashMap.make(
538
625
  * ["api_url", "https://api.example.com"],
@@ -554,8 +641,8 @@ export const getUnsafe: {
554
641
  * // Error: "HashMap.getUnsafe: key not found"
555
642
  * ```
556
643
  *
557
- * @since 2.0.0
558
644
  * @category unsafe
645
+ * @since 4.0.0
559
646
  */
560
647
  <K1 extends K, K>(key: K1): <V>(self: HashMap<K, V>) => V
561
648
  /**
@@ -565,10 +652,10 @@ export const getUnsafe: {
565
652
  * ⚠️ **Warning**: This function throws an error if the key is not found.
566
653
  * Use `HashMap.get` for safe access that returns `Option`.
567
654
  *
568
- * @example
655
+ * **Example** (Unsafely looking up values)
656
+ *
569
657
  * ```ts
570
- * import * as HashMap from "effect/HashMap"
571
- * import * as Option from "effect/Option"
658
+ * import { HashMap, Option } from "effect"
572
659
  *
573
660
  * const config = HashMap.make(
574
661
  * ["api_url", "https://api.example.com"],
@@ -590,8 +677,8 @@ export const getUnsafe: {
590
677
  * // Error: "HashMap.getUnsafe: key not found"
591
678
  * ```
592
679
  *
593
- * @since 2.0.0
594
680
  * @category unsafe
681
+ * @since 4.0.0
595
682
  */
596
683
  <K1 extends K, K, V>(self: HashMap<K, V>, key: K1): V
597
684
  } = internal.getUnsafe
@@ -599,9 +686,10 @@ export const getUnsafe: {
599
686
  /**
600
687
  * Checks if the specified key has an entry in the `HashMap`.
601
688
  *
602
- * @example
689
+ * **Example** (Checking for keys)
690
+ *
603
691
  * ```ts
604
- * import * as HashMap from "effect/HashMap"
692
+ * import { HashMap } from "effect"
605
693
  *
606
694
  * const map = HashMap.make(["a", 1], ["b", 2])
607
695
  *
@@ -613,16 +701,17 @@ export const getUnsafe: {
613
701
  * console.log(hasB) // true
614
702
  * ```
615
703
  *
616
- * @since 2.0.0
617
704
  * @category elements
705
+ * @since 2.0.0
618
706
  */
619
707
  export const has: {
620
708
  /**
621
709
  * Checks if the specified key has an entry in the `HashMap`.
622
710
  *
623
- * @example
711
+ * **Example** (Checking for keys)
712
+ *
624
713
  * ```ts
625
- * import * as HashMap from "effect/HashMap"
714
+ * import { HashMap } from "effect"
626
715
  *
627
716
  * const map = HashMap.make(["a", 1], ["b", 2])
628
717
  *
@@ -634,16 +723,17 @@ export const has: {
634
723
  * console.log(hasB) // true
635
724
  * ```
636
725
  *
637
- * @since 2.0.0
638
726
  * @category elements
727
+ * @since 2.0.0
639
728
  */
640
729
  <K1 extends K, K>(key: K1): <K, V>(self: HashMap<K, V>) => boolean
641
730
  /**
642
731
  * Checks if the specified key has an entry in the `HashMap`.
643
732
  *
644
- * @example
733
+ * **Example** (Checking for keys)
734
+ *
645
735
  * ```ts
646
- * import * as HashMap from "effect/HashMap"
736
+ * import { HashMap } from "effect"
647
737
  *
648
738
  * const map = HashMap.make(["a", 1], ["b", 2])
649
739
  *
@@ -655,8 +745,8 @@ export const has: {
655
745
  * console.log(hasB) // true
656
746
  * ```
657
747
  *
658
- * @since 2.0.0
659
748
  * @category elements
749
+ * @since 2.0.0
660
750
  */
661
751
  <K1 extends K, K, V>(self: HashMap<K, V>, key: K1): boolean
662
752
  } = internal.has
@@ -665,10 +755,10 @@ export const has: {
665
755
  * Checks if the specified key has an entry in the `HashMap` using a custom
666
756
  * hash.
667
757
  *
668
- * @example
758
+ * **Example** (Checking keys with a hash)
759
+ *
669
760
  * ```ts
670
- * import { Hash } from "effect"
671
- * import * as HashMap from "effect/HashMap"
761
+ * import { Hash, HashMap } from "effect"
672
762
  *
673
763
  * // Create a map with case-sensitive keys
674
764
  * const userMap = HashMap.make(
@@ -680,23 +770,26 @@ export const has: {
680
770
  * const exactHash = Hash.string("Admin")
681
771
  * console.log(HashMap.hasHash(userMap, "Admin", exactHash)) // true
682
772
  *
683
- * // Check case-insensitive by using custom hash
684
- * const caseInsensitiveHash = Hash.string("admin".toLowerCase())
685
- * console.log(HashMap.hasHash(userMap, "admin", caseInsensitiveHash)) // false (different hash)
773
+ * // A matching hash does not override key equality
774
+ * console.log(HashMap.hasHash(userMap, "admin", exactHash)) // false
775
+ *
776
+ * // A different hash also cannot find the existing key
777
+ * const lowercaseHash = Hash.string("admin")
778
+ * console.log(HashMap.hasHash(userMap, "Admin", lowercaseHash)) // false
686
779
  * ```
687
780
  *
688
- * @since 2.0.0
689
781
  * @category elements
782
+ * @since 2.0.0
690
783
  */
691
784
  export const hasHash: {
692
785
  /**
693
786
  * Checks if the specified key has an entry in the `HashMap` using a custom
694
787
  * hash.
695
788
  *
696
- * @example
789
+ * **Example** (Checking keys with a hash)
790
+ *
697
791
  * ```ts
698
- * import { Hash } from "effect"
699
- * import * as HashMap from "effect/HashMap"
792
+ * import { Hash, HashMap } from "effect"
700
793
  *
701
794
  * // Create a map with case-sensitive keys
702
795
  * const userMap = HashMap.make(
@@ -708,23 +801,26 @@ export const hasHash: {
708
801
  * const exactHash = Hash.string("Admin")
709
802
  * console.log(HashMap.hasHash(userMap, "Admin", exactHash)) // true
710
803
  *
711
- * // Check case-insensitive by using custom hash
712
- * const caseInsensitiveHash = Hash.string("admin".toLowerCase())
713
- * console.log(HashMap.hasHash(userMap, "admin", caseInsensitiveHash)) // false (different hash)
804
+ * // A matching hash does not override key equality
805
+ * console.log(HashMap.hasHash(userMap, "admin", exactHash)) // false
806
+ *
807
+ * // A different hash also cannot find the existing key
808
+ * const lowercaseHash = Hash.string("admin")
809
+ * console.log(HashMap.hasHash(userMap, "Admin", lowercaseHash)) // false
714
810
  * ```
715
811
  *
716
- * @since 2.0.0
717
812
  * @category elements
813
+ * @since 2.0.0
718
814
  */
719
815
  <K1 extends K, K>(key: K1, hash: number): <V>(self: HashMap<K, V>) => boolean
720
816
  /**
721
817
  * Checks if the specified key has an entry in the `HashMap` using a custom
722
818
  * hash.
723
819
  *
724
- * @example
820
+ * **Example** (Checking keys with a hash)
821
+ *
725
822
  * ```ts
726
- * import { Hash } from "effect"
727
- * import * as HashMap from "effect/HashMap"
823
+ * import { Hash, HashMap } from "effect"
728
824
  *
729
825
  * // Create a map with case-sensitive keys
730
826
  * const userMap = HashMap.make(
@@ -736,13 +832,16 @@ export const hasHash: {
736
832
  * const exactHash = Hash.string("Admin")
737
833
  * console.log(HashMap.hasHash(userMap, "Admin", exactHash)) // true
738
834
  *
739
- * // Check case-insensitive by using custom hash
740
- * const caseInsensitiveHash = Hash.string("admin".toLowerCase())
741
- * console.log(HashMap.hasHash(userMap, "admin", caseInsensitiveHash)) // false (different hash)
835
+ * // A matching hash does not override key equality
836
+ * console.log(HashMap.hasHash(userMap, "admin", exactHash)) // false
837
+ *
838
+ * // A different hash also cannot find the existing key
839
+ * const lowercaseHash = Hash.string("admin")
840
+ * console.log(HashMap.hasHash(userMap, "Admin", lowercaseHash)) // false
742
841
  * ```
743
842
  *
744
- * @since 2.0.0
745
843
  * @category elements
844
+ * @since 2.0.0
746
845
  */
747
846
  <K1 extends K, K, V>(self: HashMap<K, V>, key: K1, hash: number): boolean
748
847
  } = internal.hasHash
@@ -750,49 +849,52 @@ export const hasHash: {
750
849
  /**
751
850
  * Checks if an element matching the given predicate exists in the given `HashMap`.
752
851
  *
753
- * @example
852
+ * **Example** (Checking entries by predicate)
853
+ *
754
854
  * ```ts
755
- * import * as HashMap from "effect/HashMap"
855
+ * import { HashMap } from "effect"
756
856
  *
757
857
  * const hm = HashMap.make([1, "a"])
758
858
  * HashMap.hasBy(hm, (value, key) => value === "a" && key === 1) // -> true
759
859
  * HashMap.hasBy(hm, (value) => value === "b") // -> false
760
860
  * ```
761
861
  *
762
- * @since 3.16.0
763
862
  * @category elements
863
+ * @since 3.16.0
764
864
  */
765
865
  export const hasBy: {
766
866
  /**
767
867
  * Checks if an element matching the given predicate exists in the given `HashMap`.
768
868
  *
769
- * @example
869
+ * **Example** (Checking entries by predicate)
870
+ *
770
871
  * ```ts
771
- * import * as HashMap from "effect/HashMap"
872
+ * import { HashMap } from "effect"
772
873
  *
773
874
  * const hm = HashMap.make([1, "a"])
774
875
  * HashMap.hasBy(hm, (value, key) => value === "a" && key === 1) // -> true
775
876
  * HashMap.hasBy(hm, (value) => value === "b") // -> false
776
877
  * ```
777
878
  *
778
- * @since 3.16.0
779
879
  * @category elements
880
+ * @since 3.16.0
780
881
  */
781
882
  <K, V>(predicate: (value: NoInfer<V>, key: NoInfer<K>) => boolean): (self: HashMap<K, V>) => boolean
782
883
  /**
783
884
  * Checks if an element matching the given predicate exists in the given `HashMap`.
784
885
  *
785
- * @example
886
+ * **Example** (Checking entries by predicate)
887
+ *
786
888
  * ```ts
787
- * import * as HashMap from "effect/HashMap"
889
+ * import { HashMap } from "effect"
788
890
  *
789
891
  * const hm = HashMap.make([1, "a"])
790
892
  * HashMap.hasBy(hm, (value, key) => value === "a" && key === 1) // -> true
791
893
  * HashMap.hasBy(hm, (value) => value === "b") // -> false
792
894
  * ```
793
895
  *
794
- * @since 3.16.0
795
896
  * @category elements
897
+ * @since 3.16.0
796
898
  */
797
899
  <K, V>(
798
900
  self: HashMap<K, V>,
@@ -804,9 +906,10 @@ export const hasBy: {
804
906
  * Sets the specified key to the specified value using the internal hashing
805
907
  * function.
806
908
  *
807
- * @example
909
+ * **Example** (Setting a value)
910
+ *
808
911
  * ```ts
809
- * import * as HashMap from "effect/HashMap"
912
+ * import { HashMap } from "effect"
810
913
  *
811
914
  * const map1 = HashMap.make(["a", 1])
812
915
  * const map2 = HashMap.set(map1, "b", 2)
@@ -818,17 +921,18 @@ export const hasBy: {
818
921
  * console.log(HashMap.size(map1)) // 1
819
922
  * ```
820
923
  *
924
+ * @category transforming
821
925
  * @since 2.0.0
822
- * @category transformations
823
926
  */
824
927
  export const set: {
825
928
  /**
826
929
  * Sets the specified key to the specified value using the internal hashing
827
930
  * function.
828
931
  *
829
- * @example
932
+ * **Example** (Setting a value)
933
+ *
830
934
  * ```ts
831
- * import * as HashMap from "effect/HashMap"
935
+ * import { HashMap } from "effect"
832
936
  *
833
937
  * const map1 = HashMap.make(["a", 1])
834
938
  * const map2 = HashMap.set(map1, "b", 2)
@@ -840,17 +944,18 @@ export const set: {
840
944
  * console.log(HashMap.size(map1)) // 1
841
945
  * ```
842
946
  *
947
+ * @category transforming
843
948
  * @since 2.0.0
844
- * @category transformations
845
949
  */
846
950
  <K, V>(key: K, value: V): (self: HashMap<K, V>) => HashMap<K, V>
847
951
  /**
848
952
  * Sets the specified key to the specified value using the internal hashing
849
953
  * function.
850
954
  *
851
- * @example
955
+ * **Example** (Setting a value)
956
+ *
852
957
  * ```ts
853
- * import * as HashMap from "effect/HashMap"
958
+ * import { HashMap } from "effect"
854
959
  *
855
960
  * const map1 = HashMap.make(["a", 1])
856
961
  * const map2 = HashMap.set(map1, "b", 2)
@@ -862,8 +967,8 @@ export const set: {
862
967
  * console.log(HashMap.size(map1)) // 1
863
968
  * ```
864
969
  *
970
+ * @category transforming
865
971
  * @since 2.0.0
866
- * @category transformations
867
972
  */
868
973
  <K, V>(self: HashMap<K, V>, key: K, value: V): HashMap<K, V>
869
974
  } = internal.set
@@ -871,43 +976,46 @@ export const set: {
871
976
  /**
872
977
  * Returns an `IterableIterator` of the keys within the `HashMap`.
873
978
  *
874
- * @example
979
+ * **Example** (Iterating keys)
980
+ *
875
981
  * ```ts
876
- * import * as HashMap from "effect/HashMap"
982
+ * import { HashMap } from "effect"
877
983
  *
878
984
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
879
985
  * const keys = Array.from(HashMap.keys(map))
880
986
  * console.log(keys.sort()) // ["a", "b", "c"]
881
987
  * ```
882
988
  *
883
- * @since 2.0.0
884
989
  * @category getters
990
+ * @since 2.0.0
885
991
  */
886
992
  export const keys: <K, V>(self: HashMap<K, V>) => IterableIterator<K> = internal.keys
887
993
 
888
994
  /**
889
995
  * Returns an `IterableIterator` of the values within the `HashMap`.
890
996
  *
891
- * @example
997
+ * **Example** (Iterating values)
998
+ *
892
999
  * ```ts
893
- * import * as HashMap from "effect/HashMap"
1000
+ * import { HashMap } from "effect"
894
1001
  *
895
1002
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
896
1003
  * const values = Array.from(HashMap.values(map))
897
1004
  * console.log(values.sort()) // [1, 2, 3]
898
1005
  * ```
899
1006
  *
900
- * @since 2.0.0
901
1007
  * @category getters
1008
+ * @since 2.0.0
902
1009
  */
903
1010
  export const values: <K, V>(self: HashMap<K, V>) => IterableIterator<V> = internal.values
904
1011
 
905
1012
  /**
906
1013
  * Returns an `Array` of the values within the `HashMap`.
907
1014
  *
908
- * @example
1015
+ * **Example** (Converting values to an array)
1016
+ *
909
1017
  * ```ts
910
- * import * as HashMap from "effect/HashMap"
1018
+ * import { HashMap } from "effect"
911
1019
  *
912
1020
  * const employees = HashMap.make(
913
1021
  * ["alice", { department: "engineering", salary: 90000 }],
@@ -928,17 +1036,18 @@ export const values: <K, V>(self: HashMap<K, V>) => IterableIterator<V> = intern
928
1036
  * console.log(engineers.length) // 2
929
1037
  * ```
930
1038
  *
931
- * @since 3.13.0
932
1039
  * @category getters
1040
+ * @since 3.13.0
933
1041
  */
934
1042
  export const toValues = <K, V>(self: HashMap<K, V>): Array<V> => Array.from(values(self))
935
1043
 
936
1044
  /**
937
1045
  * Returns an `IterableIterator` of the entries within the `HashMap`.
938
1046
  *
939
- * @example
1047
+ * **Example** (Iterating entries)
1048
+ *
940
1049
  * ```ts
941
- * import * as HashMap from "effect/HashMap"
1050
+ * import { HashMap } from "effect"
942
1051
  *
943
1052
  * // Create a configuration map
944
1053
  * const config = HashMap.make(
@@ -947,33 +1056,31 @@ export const toValues = <K, V>(self: HashMap<K, V>): Array<V> => Array.from(valu
947
1056
  * ["cache.enabled", "true"]
948
1057
  * )
949
1058
  *
950
- * // Get entries iterator for processing
951
- * const entries = HashMap.entries(config)
1059
+ * // Sort the derived array for deterministic output
1060
+ * const settings = Array.from(HashMap.entries(config))
1061
+ * .sort(([left], [right]) => left.localeCompare(right))
1062
+ * .map(([key, value]) => `Setting ${key} = ${value}`)
952
1063
  *
953
- * // Process each configuration entry
954
- * for (const [key, value] of entries) {
955
- * console.log(`Setting ${key} = ${value}`)
956
- * }
957
- * // Setting database.host = localhost
958
- * // Setting database.port = 5432
959
- * // Setting cache.enabled = true
1064
+ * console.log(settings)
1065
+ * // ["Setting cache.enabled = true", "Setting database.host = localhost", "Setting database.port = 5432"]
960
1066
  *
961
1067
  * // Convert to array when you need all entries at once
962
1068
  * const allEntries = Array.from(HashMap.entries(config))
963
1069
  * console.log(allEntries.length) // 3
964
1070
  * ```
965
1071
  *
966
- * @since 2.0.0
967
1072
  * @category getters
1073
+ * @since 2.0.0
968
1074
  */
969
1075
  export const entries: <K, V>(self: HashMap<K, V>) => IterableIterator<[K, V]> = internal.entries
970
1076
 
971
1077
  /**
972
1078
  * Returns an `Array<[K, V]>` of the entries within the `HashMap`.
973
1079
  *
974
- * @example
1080
+ * **Example** (Converting entries to an array)
1081
+ *
975
1082
  * ```ts
976
- * import * as HashMap from "effect/HashMap"
1083
+ * import { HashMap } from "effect"
977
1084
  *
978
1085
  * const gameScores = HashMap.make(
979
1086
  * ["alice", 1250],
@@ -996,17 +1103,18 @@ export const entries: <K, V>(self: HashMap<K, V>) => IterableIterator<[K, V]> =
996
1103
  * const sortedMap = HashMap.fromIterable(scoreEntries)
997
1104
  * ```
998
1105
  *
999
- * @since 2.0.0
1000
1106
  * @category getters
1107
+ * @since 2.0.0
1001
1108
  */
1002
1109
  export const toEntries = <K, V>(self: HashMap<K, V>): Array<[K, V]> => Array.from(entries(self))
1003
1110
 
1004
1111
  /**
1005
1112
  * Returns the number of entries within the `HashMap`.
1006
1113
  *
1007
- * @example
1114
+ * **Example** (Getting the size)
1115
+ *
1008
1116
  * ```ts
1009
- * import * as HashMap from "effect/HashMap"
1117
+ * import { HashMap } from "effect"
1010
1118
  *
1011
1119
  * const emptyMap = HashMap.empty<string, number>()
1012
1120
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
@@ -1015,17 +1123,21 @@ export const toEntries = <K, V>(self: HashMap<K, V>): Array<[K, V]> => Array.fro
1015
1123
  * console.log(HashMap.size(map)) // 3
1016
1124
  * ```
1017
1125
  *
1018
- * @since 2.0.0
1019
1126
  * @category getters
1127
+ * @since 2.0.0
1020
1128
  */
1021
1129
  export const size: <K, V>(self: HashMap<K, V>) => number = internal.size
1022
1130
 
1023
1131
  /**
1024
- * Marks the `HashMap` as mutable for performance optimization during batch operations.
1132
+ * Creates a transient mutable `HashMap` for efficient batched updates.
1133
+ *
1134
+ * Apply updates to the returned map, then call `endMutation` to finish the
1135
+ * mutation window and use the result as an immutable `HashMap`.
1136
+ *
1137
+ * **Example** (Beginning batch mutation)
1025
1138
  *
1026
- * @example
1027
1139
  * ```ts
1028
- * import * as HashMap from "effect/HashMap"
1140
+ * import { HashMap } from "effect"
1029
1141
  *
1030
1142
  * const map = HashMap.make(["a", 1])
1031
1143
  *
@@ -1042,17 +1154,18 @@ export const size: <K, V>(self: HashMap<K, V>) => number = internal.size
1042
1154
  * console.log(HashMap.size(result)) // 2
1043
1155
  * ```
1044
1156
  *
1045
- * @since 2.0.0
1046
1157
  * @category mutations
1158
+ * @since 2.0.0
1047
1159
  */
1048
1160
  export const beginMutation: <K, V>(self: HashMap<K, V>) => HashMap<K, V> = internal.beginMutation
1049
1161
 
1050
1162
  /**
1051
1163
  * Marks the `HashMap` as immutable, completing the mutation cycle.
1052
1164
  *
1053
- * @example
1165
+ * **Example** (Ending batch mutation)
1166
+ *
1054
1167
  * ```ts
1055
- * import * as HashMap from "effect/HashMap"
1168
+ * import { HashMap } from "effect"
1056
1169
  *
1057
1170
  * // Start with an existing map
1058
1171
  * const original = HashMap.make(["x", 10], ["y", 20])
@@ -1073,17 +1186,22 @@ export const beginMutation: <K, V>(self: HashMap<K, V>) => HashMap<K, V> = inter
1073
1186
  * console.log(HashMap.get(final, "z")) // Option.some(30)
1074
1187
  * ```
1075
1188
  *
1076
- * @since 2.0.0
1077
1189
  * @category mutations
1190
+ * @since 2.0.0
1078
1191
  */
1079
1192
  export const endMutation: <K, V>(self: HashMap<K, V>) => HashMap<K, V> = internal.endMutation
1080
1193
 
1081
1194
  /**
1082
- * Mutates the `HashMap` within the context of the provided function.
1195
+ * Runs a batch of updates against a transient mutable copy of the `HashMap`
1196
+ * and returns the finalized immutable result.
1197
+ *
1198
+ * The callback may call mutation-oriented helpers such as `set` and `remove`
1199
+ * on the transient map.
1200
+ *
1201
+ * **Example** (Applying batched mutations)
1083
1202
  *
1084
- * @example
1085
1203
  * ```ts
1086
- * import * as HashMap from "effect/HashMap"
1204
+ * import { HashMap } from "effect"
1087
1205
  *
1088
1206
  * const map1 = HashMap.make(["a", 1])
1089
1207
  * const map2 = HashMap.mutate(map1, (mutable) => {
@@ -1093,16 +1211,21 @@ export const endMutation: <K, V>(self: HashMap<K, V>) => HashMap<K, V> = interna
1093
1211
  * // Returns a new HashMap with mutations applied
1094
1212
  * ```
1095
1213
  *
1096
- * @since 2.0.0
1097
1214
  * @category mutations
1215
+ * @since 2.0.0
1098
1216
  */
1099
1217
  export const mutate: {
1100
1218
  /**
1101
- * Mutates the `HashMap` within the context of the provided function.
1219
+ * Runs a batch of updates against a transient mutable copy of the `HashMap`
1220
+ * and returns the finalized immutable result.
1221
+ *
1222
+ * The callback may call mutation-oriented helpers such as `set` and `remove`
1223
+ * on the transient map.
1224
+ *
1225
+ * **Example** (Applying batched mutations)
1102
1226
  *
1103
- * @example
1104
1227
  * ```ts
1105
- * import * as HashMap from "effect/HashMap"
1228
+ * import { HashMap } from "effect"
1106
1229
  *
1107
1230
  * const map1 = HashMap.make(["a", 1])
1108
1231
  * const map2 = HashMap.mutate(map1, (mutable) => {
@@ -1112,16 +1235,21 @@ export const mutate: {
1112
1235
  * // Returns a new HashMap with mutations applied
1113
1236
  * ```
1114
1237
  *
1115
- * @since 2.0.0
1116
1238
  * @category mutations
1239
+ * @since 2.0.0
1117
1240
  */
1118
1241
  <K, V>(f: (self: HashMap<K, V>) => void): (self: HashMap<K, V>) => HashMap<K, V>
1119
1242
  /**
1120
- * Mutates the `HashMap` within the context of the provided function.
1243
+ * Runs a batch of updates against a transient mutable copy of the `HashMap`
1244
+ * and returns the finalized immutable result.
1245
+ *
1246
+ * The callback may call mutation-oriented helpers such as `set` and `remove`
1247
+ * on the transient map.
1248
+ *
1249
+ * **Example** (Applying batched mutations)
1121
1250
  *
1122
- * @example
1123
1251
  * ```ts
1124
- * import * as HashMap from "effect/HashMap"
1252
+ * import { HashMap } from "effect"
1125
1253
  *
1126
1254
  * const map1 = HashMap.make(["a", 1])
1127
1255
  * const map2 = HashMap.mutate(map1, (mutable) => {
@@ -1131,24 +1259,23 @@ export const mutate: {
1131
1259
  * // Returns a new HashMap with mutations applied
1132
1260
  * ```
1133
1261
  *
1134
- * @since 2.0.0
1135
1262
  * @category mutations
1263
+ * @since 2.0.0
1136
1264
  */
1137
1265
  <K, V>(self: HashMap<K, V>, f: (self: HashMap<K, V>) => void): HashMap<K, V>
1138
1266
  } = internal.mutate
1139
1267
 
1140
1268
  /**
1141
- * Set or remove the specified key in the `HashMap` using the specified
1142
- * update function. The value of the specified key will be computed using the
1143
- * provided hash.
1269
+ * Sets or removes the specified key using an update function.
1144
1270
  *
1145
- * The update function will be invoked with the current value of the key if it
1146
- * exists, or `None` if no such value exists.
1271
+ * The update function receives `Some(value)` when the key exists or `None`
1272
+ * when it does not. Returning `Some(newValue)` stores the value, and returning
1273
+ * `None` removes the key or leaves it absent.
1274
+ *
1275
+ * **Example** (Updating values with Options)
1147
1276
  *
1148
- * @example
1149
1277
  * ```ts
1150
- * import * as HashMap from "effect/HashMap"
1151
- * import * as Option from "effect/Option"
1278
+ * import { HashMap, Option } from "effect"
1152
1279
  *
1153
1280
  * const map = HashMap.make(["a", 1], ["b", 2])
1154
1281
  *
@@ -1160,22 +1287,21 @@ export const mutate: {
1160
1287
  * console.log(HashMap.get(updated, "a")) // Option.some(2)
1161
1288
  * ```
1162
1289
  *
1290
+ * @category transforming
1163
1291
  * @since 2.0.0
1164
- * @category transformations
1165
1292
  */
1166
1293
  export const modifyAt: {
1167
1294
  /**
1168
- * Set or remove the specified key in the `HashMap` using the specified
1169
- * update function. The value of the specified key will be computed using the
1170
- * provided hash.
1295
+ * Sets or removes the specified key using an update function.
1296
+ *
1297
+ * The update function receives `Some(value)` when the key exists or `None`
1298
+ * when it does not. Returning `Some(newValue)` stores the value, and returning
1299
+ * `None` removes the key or leaves it absent.
1171
1300
  *
1172
- * The update function will be invoked with the current value of the key if it
1173
- * exists, or `None` if no such value exists.
1301
+ * **Example** (Updating values with Options)
1174
1302
  *
1175
- * @example
1176
1303
  * ```ts
1177
- * import * as HashMap from "effect/HashMap"
1178
- * import * as Option from "effect/Option"
1304
+ * import { HashMap, Option } from "effect"
1179
1305
  *
1180
1306
  * const map = HashMap.make(["a", 1], ["b", 2])
1181
1307
  *
@@ -1187,22 +1313,21 @@ export const modifyAt: {
1187
1313
  * console.log(HashMap.get(updated, "a")) // Option.some(2)
1188
1314
  * ```
1189
1315
  *
1316
+ * @category transforming
1190
1317
  * @since 2.0.0
1191
- * @category transformations
1192
1318
  */
1193
1319
  <K, V>(key: K, f: HashMap.UpdateFn<V>): (self: HashMap<K, V>) => HashMap<K, V>
1194
1320
  /**
1195
- * Set or remove the specified key in the `HashMap` using the specified
1196
- * update function. The value of the specified key will be computed using the
1197
- * provided hash.
1321
+ * Sets or removes the specified key using an update function.
1198
1322
  *
1199
- * The update function will be invoked with the current value of the key if it
1200
- * exists, or `None` if no such value exists.
1323
+ * The update function receives `Some(value)` when the key exists or `None`
1324
+ * when it does not. Returning `Some(newValue)` stores the value, and returning
1325
+ * `None` removes the key or leaves it absent.
1326
+ *
1327
+ * **Example** (Updating values with Options)
1201
1328
  *
1202
- * @example
1203
1329
  * ```ts
1204
- * import * as HashMap from "effect/HashMap"
1205
- * import * as Option from "effect/Option"
1330
+ * import { HashMap, Option } from "effect"
1206
1331
  *
1207
1332
  * const map = HashMap.make(["a", 1], ["b", 2])
1208
1333
  *
@@ -1214,27 +1339,24 @@ export const modifyAt: {
1214
1339
  * console.log(HashMap.get(updated, "a")) // Option.some(2)
1215
1340
  * ```
1216
1341
  *
1342
+ * @category transforming
1217
1343
  * @since 2.0.0
1218
- * @category transformations
1219
1344
  */
1220
1345
  <K, V>(self: HashMap<K, V>, key: K, f: HashMap.UpdateFn<V>): HashMap<K, V>
1221
1346
  } = internal.modifyAt
1222
1347
 
1223
1348
  /**
1224
- * Alter the value of the specified key in the `HashMap` using the specified
1225
- * update function. The value of the specified key will be computed using the
1226
- * provided hash.
1349
+ * Sets or removes the specified key using a precomputed hash and an update
1350
+ * function.
1227
1351
  *
1228
- * The update function will be invoked with the current value of the key if it
1229
- * exists, or `None` if no such value exists.
1352
+ * The update function receives `Some(value)` when the key exists or `None`
1353
+ * when it does not. Returning `Some(newValue)` stores the value, and returning
1354
+ * `None` removes the key or leaves it absent.
1230
1355
  *
1231
- * This function will always either update or insert a value into the `HashMap`.
1356
+ * **Example** (Updating values with a hash)
1232
1357
  *
1233
- * @example
1234
1358
  * ```ts
1235
- * import { Hash } from "effect"
1236
- * import * as HashMap from "effect/HashMap"
1237
- * import * as Option from "effect/Option"
1359
+ * import { Hash, HashMap, Option } from "effect"
1238
1360
  *
1239
1361
  * // Useful when working with precomputed hashes for performance
1240
1362
  * const counters = HashMap.make(["downloads", 100], ["views", 250])
@@ -1268,25 +1390,22 @@ export const modifyAt: {
1268
1390
  * console.log(HashMap.get(withClicks, "clicks")) // Option.some(1)
1269
1391
  * ```
1270
1392
  *
1393
+ * @category transforming
1271
1394
  * @since 2.0.0
1272
- * @category transformations
1273
1395
  */
1274
1396
  export const modifyHash: {
1275
1397
  /**
1276
- * Alter the value of the specified key in the `HashMap` using the specified
1277
- * update function. The value of the specified key will be computed using the
1278
- * provided hash.
1398
+ * Sets or removes the specified key using a precomputed hash and an update
1399
+ * function.
1279
1400
  *
1280
- * The update function will be invoked with the current value of the key if it
1281
- * exists, or `None` if no such value exists.
1401
+ * The update function receives `Some(value)` when the key exists or `None`
1402
+ * when it does not. Returning `Some(newValue)` stores the value, and returning
1403
+ * `None` removes the key or leaves it absent.
1282
1404
  *
1283
- * This function will always either update or insert a value into the `HashMap`.
1405
+ * **Example** (Updating values with a hash)
1284
1406
  *
1285
- * @example
1286
1407
  * ```ts
1287
- * import { Hash } from "effect"
1288
- * import * as HashMap from "effect/HashMap"
1289
- * import * as Option from "effect/Option"
1408
+ * import { Hash, HashMap, Option } from "effect"
1290
1409
  *
1291
1410
  * // Useful when working with precomputed hashes for performance
1292
1411
  * const counters = HashMap.make(["downloads", 100], ["views", 250])
@@ -1320,25 +1439,22 @@ export const modifyHash: {
1320
1439
  * console.log(HashMap.get(withClicks, "clicks")) // Option.some(1)
1321
1440
  * ```
1322
1441
  *
1442
+ * @category transforming
1323
1443
  * @since 2.0.0
1324
- * @category transformations
1325
1444
  */
1326
1445
  <K, V>(key: K, hash: number, f: HashMap.UpdateFn<V>): (self: HashMap<K, V>) => HashMap<K, V>
1327
1446
  /**
1328
- * Alter the value of the specified key in the `HashMap` using the specified
1329
- * update function. The value of the specified key will be computed using the
1330
- * provided hash.
1447
+ * Sets or removes the specified key using a precomputed hash and an update
1448
+ * function.
1331
1449
  *
1332
- * The update function will be invoked with the current value of the key if it
1333
- * exists, or `None` if no such value exists.
1450
+ * The update function receives `Some(value)` when the key exists or `None`
1451
+ * when it does not. Returning `Some(newValue)` stores the value, and returning
1452
+ * `None` removes the key or leaves it absent.
1334
1453
  *
1335
- * This function will always either update or insert a value into the `HashMap`.
1454
+ * **Example** (Updating values with a hash)
1336
1455
  *
1337
- * @example
1338
1456
  * ```ts
1339
- * import { Hash } from "effect"
1340
- * import * as HashMap from "effect/HashMap"
1341
- * import * as Option from "effect/Option"
1457
+ * import { Hash, HashMap, Option } from "effect"
1342
1458
  *
1343
1459
  * // Useful when working with precomputed hashes for performance
1344
1460
  * const counters = HashMap.make(["downloads", 100], ["views", 250])
@@ -1372,8 +1488,8 @@ export const modifyHash: {
1372
1488
  * console.log(HashMap.get(withClicks, "clicks")) // Option.some(1)
1373
1489
  * ```
1374
1490
  *
1491
+ * @category transforming
1375
1492
  * @since 2.0.0
1376
- * @category transformations
1377
1493
  */
1378
1494
  <K, V>(self: HashMap<K, V>, key: K, hash: number, f: HashMap.UpdateFn<V>): HashMap<K, V>
1379
1495
  } = internal.modifyHash
@@ -1381,9 +1497,10 @@ export const modifyHash: {
1381
1497
  /**
1382
1498
  * Updates the value of the specified key within the `HashMap` if it exists.
1383
1499
  *
1384
- * @example
1500
+ * **Example** (Modifying existing values)
1501
+ *
1385
1502
  * ```ts
1386
- * import * as HashMap from "effect/HashMap"
1503
+ * import { HashMap } from "effect"
1387
1504
  *
1388
1505
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1389
1506
  * const map2 = HashMap.modify(map1, "a", (value) => value * 3)
@@ -1392,16 +1509,17 @@ export const modifyHash: {
1392
1509
  * console.log(HashMap.get(map2, "b")) // Option.some(2)
1393
1510
  * ```
1394
1511
  *
1512
+ * @category transforming
1395
1513
  * @since 2.0.0
1396
- * @category transformations
1397
1514
  */
1398
1515
  export const modify: {
1399
1516
  /**
1400
1517
  * Updates the value of the specified key within the `HashMap` if it exists.
1401
1518
  *
1402
- * @example
1519
+ * **Example** (Modifying existing values)
1520
+ *
1403
1521
  * ```ts
1404
- * import * as HashMap from "effect/HashMap"
1522
+ * import { HashMap } from "effect"
1405
1523
  *
1406
1524
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1407
1525
  * const map2 = HashMap.modify(map1, "a", (value) => value * 3)
@@ -1410,16 +1528,17 @@ export const modify: {
1410
1528
  * console.log(HashMap.get(map2, "b")) // Option.some(2)
1411
1529
  * ```
1412
1530
  *
1531
+ * @category transforming
1413
1532
  * @since 2.0.0
1414
- * @category transformations
1415
1533
  */
1416
1534
  <K, V>(key: K, f: (v: V) => V): (self: HashMap<K, V>) => HashMap<K, V>
1417
1535
  /**
1418
1536
  * Updates the value of the specified key within the `HashMap` if it exists.
1419
1537
  *
1420
- * @example
1538
+ * **Example** (Modifying existing values)
1539
+ *
1421
1540
  * ```ts
1422
- * import * as HashMap from "effect/HashMap"
1541
+ * import { HashMap } from "effect"
1423
1542
  *
1424
1543
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1425
1544
  * const map2 = HashMap.modify(map1, "a", (value) => value * 3)
@@ -1428,18 +1547,22 @@ export const modify: {
1428
1547
  * console.log(HashMap.get(map2, "b")) // Option.some(2)
1429
1548
  * ```
1430
1549
  *
1550
+ * @category transforming
1431
1551
  * @since 2.0.0
1432
- * @category transformations
1433
1552
  */
1434
1553
  <K, V>(self: HashMap<K, V>, key: K, f: (v: V) => V): HashMap<K, V>
1435
1554
  } = internal.modify
1436
1555
 
1437
1556
  /**
1438
- * Performs a union of this `HashMap` and that `HashMap`.
1557
+ * Combines two `HashMap`s into one.
1558
+ *
1559
+ * Entries from `that` are inserted into `self`; when both maps contain an
1560
+ * equal key, the value from `that` replaces the value from `self`.
1561
+ *
1562
+ * **Example** (Combining HashMaps)
1439
1563
  *
1440
- * @example
1441
1564
  * ```ts
1442
- * import * as HashMap from "effect/HashMap"
1565
+ * import { HashMap } from "effect"
1443
1566
  *
1444
1567
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1445
1568
  * const map2 = HashMap.make(["b", 20], ["c", 3])
@@ -1449,16 +1572,20 @@ export const modify: {
1449
1572
  * console.log(HashMap.get(union, "b")) // Option.some(20) - map2 wins
1450
1573
  * ```
1451
1574
  *
1452
- * @since 2.0.0
1453
1575
  * @category combining
1576
+ * @since 2.0.0
1454
1577
  */
1455
1578
  export const union: {
1456
1579
  /**
1457
- * Performs a union of this `HashMap` and that `HashMap`.
1580
+ * Combines two `HashMap`s into one.
1581
+ *
1582
+ * Entries from `that` are inserted into `self`; when both maps contain an
1583
+ * equal key, the value from `that` replaces the value from `self`.
1584
+ *
1585
+ * **Example** (Combining HashMaps)
1458
1586
  *
1459
- * @example
1460
1587
  * ```ts
1461
- * import * as HashMap from "effect/HashMap"
1588
+ * import { HashMap } from "effect"
1462
1589
  *
1463
1590
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1464
1591
  * const map2 = HashMap.make(["b", 20], ["c", 3])
@@ -1468,16 +1595,20 @@ export const union: {
1468
1595
  * console.log(HashMap.get(union, "b")) // Option.some(20) - map2 wins
1469
1596
  * ```
1470
1597
  *
1471
- * @since 2.0.0
1472
1598
  * @category combining
1599
+ * @since 2.0.0
1473
1600
  */
1474
1601
  <K1, V1>(that: HashMap<K1, V1>): <K0, V0>(self: HashMap<K0, V0>) => HashMap<K1 | K0, V1 | V0>
1475
1602
  /**
1476
- * Performs a union of this `HashMap` and that `HashMap`.
1603
+ * Combines two `HashMap`s into one.
1604
+ *
1605
+ * Entries from `that` are inserted into `self`; when both maps contain an
1606
+ * equal key, the value from `that` replaces the value from `self`.
1607
+ *
1608
+ * **Example** (Combining HashMaps)
1477
1609
  *
1478
- * @example
1479
1610
  * ```ts
1480
- * import * as HashMap from "effect/HashMap"
1611
+ * import { HashMap } from "effect"
1481
1612
  *
1482
1613
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1483
1614
  * const map2 = HashMap.make(["b", 20], ["c", 3])
@@ -1487,8 +1618,8 @@ export const union: {
1487
1618
  * console.log(HashMap.get(union, "b")) // Option.some(20) - map2 wins
1488
1619
  * ```
1489
1620
  *
1490
- * @since 2.0.0
1491
1621
  * @category combining
1622
+ * @since 2.0.0
1492
1623
  */
1493
1624
  <K0, V0, K1, V1>(self: HashMap<K0, V0>, that: HashMap<K1, V1>): HashMap<K0 | K1, V0 | V1>
1494
1625
  } = internal.union
@@ -1497,9 +1628,10 @@ export const union: {
1497
1628
  * Remove the entry for the specified key in the `HashMap` using the internal
1498
1629
  * hashing function.
1499
1630
  *
1500
- * @example
1631
+ * **Example** (Removing a key)
1632
+ *
1501
1633
  * ```ts
1502
- * import * as HashMap from "effect/HashMap"
1634
+ * import { HashMap } from "effect"
1503
1635
  *
1504
1636
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3])
1505
1637
  * const map2 = HashMap.remove(map1, "b")
@@ -1509,17 +1641,18 @@ export const union: {
1509
1641
  * console.log(HashMap.has(map2, "a")) // true
1510
1642
  * ```
1511
1643
  *
1644
+ * @category transforming
1512
1645
  * @since 2.0.0
1513
- * @category transformations
1514
1646
  */
1515
1647
  export const remove: {
1516
1648
  /**
1517
1649
  * Remove the entry for the specified key in the `HashMap` using the internal
1518
1650
  * hashing function.
1519
1651
  *
1520
- * @example
1652
+ * **Example** (Removing a key)
1653
+ *
1521
1654
  * ```ts
1522
- * import * as HashMap from "effect/HashMap"
1655
+ * import { HashMap } from "effect"
1523
1656
  *
1524
1657
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3])
1525
1658
  * const map2 = HashMap.remove(map1, "b")
@@ -1529,17 +1662,18 @@ export const remove: {
1529
1662
  * console.log(HashMap.has(map2, "a")) // true
1530
1663
  * ```
1531
1664
  *
1665
+ * @category transforming
1532
1666
  * @since 2.0.0
1533
- * @category transformations
1534
1667
  */
1535
1668
  <K>(key: K): <V>(self: HashMap<K, V>) => HashMap<K, V>
1536
1669
  /**
1537
1670
  * Remove the entry for the specified key in the `HashMap` using the internal
1538
1671
  * hashing function.
1539
1672
  *
1540
- * @example
1673
+ * **Example** (Removing a key)
1674
+ *
1541
1675
  * ```ts
1542
- * import * as HashMap from "effect/HashMap"
1676
+ * import { HashMap } from "effect"
1543
1677
  *
1544
1678
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3])
1545
1679
  * const map2 = HashMap.remove(map1, "b")
@@ -1549,8 +1683,8 @@ export const remove: {
1549
1683
  * console.log(HashMap.has(map2, "a")) // true
1550
1684
  * ```
1551
1685
  *
1686
+ * @category transforming
1552
1687
  * @since 2.0.0
1553
- * @category transformations
1554
1688
  */
1555
1689
  <K, V>(self: HashMap<K, V>, key: K): HashMap<K, V>
1556
1690
  } = internal.remove
@@ -1558,9 +1692,10 @@ export const remove: {
1558
1692
  /**
1559
1693
  * Removes all entries in the `HashMap` which have the specified keys.
1560
1694
  *
1561
- * @example
1695
+ * **Example** (Removing multiple keys)
1696
+ *
1562
1697
  * ```ts
1563
- * import * as HashMap from "effect/HashMap"
1698
+ * import { HashMap } from "effect"
1564
1699
  *
1565
1700
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
1566
1701
  * const map2 = HashMap.removeMany(map1, ["b", "d"])
@@ -1570,16 +1705,17 @@ export const remove: {
1570
1705
  * console.log(HashMap.has(map2, "c")) // true
1571
1706
  * ```
1572
1707
  *
1708
+ * @category transforming
1573
1709
  * @since 2.0.0
1574
- * @category transformations
1575
1710
  */
1576
1711
  export const removeMany: {
1577
1712
  /**
1578
1713
  * Removes all entries in the `HashMap` which have the specified keys.
1579
1714
  *
1580
- * @example
1715
+ * **Example** (Removing multiple keys)
1716
+ *
1581
1717
  * ```ts
1582
- * import * as HashMap from "effect/HashMap"
1718
+ * import { HashMap } from "effect"
1583
1719
  *
1584
1720
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
1585
1721
  * const map2 = HashMap.removeMany(map1, ["b", "d"])
@@ -1589,16 +1725,17 @@ export const removeMany: {
1589
1725
  * console.log(HashMap.has(map2, "c")) // true
1590
1726
  * ```
1591
1727
  *
1728
+ * @category transforming
1592
1729
  * @since 2.0.0
1593
- * @category transformations
1594
1730
  */
1595
1731
  <K>(keys: Iterable<K>): <V>(self: HashMap<K, V>) => HashMap<K, V>
1596
1732
  /**
1597
1733
  * Removes all entries in the `HashMap` which have the specified keys.
1598
1734
  *
1599
- * @example
1735
+ * **Example** (Removing multiple keys)
1736
+ *
1600
1737
  * ```ts
1601
- * import * as HashMap from "effect/HashMap"
1738
+ * import { HashMap } from "effect"
1602
1739
  *
1603
1740
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
1604
1741
  * const map2 = HashMap.removeMany(map1, ["b", "d"])
@@ -1608,8 +1745,8 @@ export const removeMany: {
1608
1745
  * console.log(HashMap.has(map2, "c")) // true
1609
1746
  * ```
1610
1747
  *
1748
+ * @category transforming
1611
1749
  * @since 2.0.0
1612
- * @category transformations
1613
1750
  */
1614
1751
  <K, V>(self: HashMap<K, V>, keys: Iterable<K>): HashMap<K, V>
1615
1752
  } = internal.removeMany
@@ -1617,9 +1754,10 @@ export const removeMany: {
1617
1754
  /**
1618
1755
  * Sets multiple key-value pairs in the `HashMap`.
1619
1756
  *
1620
- * @example
1757
+ * **Example** (Setting multiple entries)
1758
+ *
1621
1759
  * ```ts
1622
- * import * as HashMap from "effect/HashMap"
1760
+ * import { HashMap } from "effect"
1623
1761
  *
1624
1762
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1625
1763
  * const newEntries = [["c", 3], ["d", 4], ["a", 10]] as const // "a" will be overwritten
@@ -1630,16 +1768,17 @@ export const removeMany: {
1630
1768
  * console.log(HashMap.get(map2, "c")) // Option.some(3)
1631
1769
  * ```
1632
1770
  *
1633
- * @since 2.0.0
1634
- * @category transformations
1771
+ * @category transforming
1772
+ * @since 4.0.0
1635
1773
  */
1636
1774
  export const setMany: {
1637
1775
  /**
1638
1776
  * Sets multiple key-value pairs in the `HashMap`.
1639
1777
  *
1640
- * @example
1778
+ * **Example** (Setting multiple entries)
1779
+ *
1641
1780
  * ```ts
1642
- * import * as HashMap from "effect/HashMap"
1781
+ * import { HashMap } from "effect"
1643
1782
  *
1644
1783
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1645
1784
  * const newEntries = [["c", 3], ["d", 4], ["a", 10]] as const // "a" will be overwritten
@@ -1650,16 +1789,17 @@ export const setMany: {
1650
1789
  * console.log(HashMap.get(map2, "c")) // Option.some(3)
1651
1790
  * ```
1652
1791
  *
1653
- * @since 2.0.0
1654
- * @category transformations
1792
+ * @category transforming
1793
+ * @since 4.0.0
1655
1794
  */
1656
1795
  <K, V>(entries: Iterable<readonly [K, V]>): (self: HashMap<K, V>) => HashMap<K, V>
1657
1796
  /**
1658
1797
  * Sets multiple key-value pairs in the `HashMap`.
1659
1798
  *
1660
- * @example
1799
+ * **Example** (Setting multiple entries)
1800
+ *
1661
1801
  * ```ts
1662
- * import * as HashMap from "effect/HashMap"
1802
+ * import { HashMap } from "effect"
1663
1803
  *
1664
1804
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1665
1805
  * const newEntries = [["c", 3], ["d", 4], ["a", 10]] as const // "a" will be overwritten
@@ -1670,8 +1810,8 @@ export const setMany: {
1670
1810
  * console.log(HashMap.get(map2, "c")) // Option.some(3)
1671
1811
  * ```
1672
1812
  *
1673
- * @since 2.0.0
1674
- * @category transformations
1813
+ * @category transforming
1814
+ * @since 4.0.0
1675
1815
  */
1676
1816
  <K, V>(self: HashMap<K, V>, entries: Iterable<readonly [K, V]>): HashMap<K, V>
1677
1817
  } = internal.setMany
@@ -1679,9 +1819,10 @@ export const setMany: {
1679
1819
  /**
1680
1820
  * Maps over the entries of the `HashMap` using the specified function.
1681
1821
  *
1682
- * @example
1822
+ * **Example** (Mapping values)
1823
+ *
1683
1824
  * ```ts
1684
- * import * as HashMap from "effect/HashMap"
1825
+ * import { HashMap } from "effect"
1685
1826
  *
1686
1827
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3])
1687
1828
  * const map2 = HashMap.map(map1, (value, key) => `${key}:${value * 2}`)
@@ -1690,16 +1831,17 @@ export const setMany: {
1690
1831
  * console.log(HashMap.get(map2, "b")) // Option.some("b:4")
1691
1832
  * ```
1692
1833
  *
1693
- * @since 2.0.0
1694
1834
  * @category mapping
1835
+ * @since 2.0.0
1695
1836
  */
1696
1837
  export const map: {
1697
1838
  /**
1698
1839
  * Maps over the entries of the `HashMap` using the specified function.
1699
1840
  *
1700
- * @example
1841
+ * **Example** (Mapping values)
1842
+ *
1701
1843
  * ```ts
1702
- * import * as HashMap from "effect/HashMap"
1844
+ * import { HashMap } from "effect"
1703
1845
  *
1704
1846
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3])
1705
1847
  * const map2 = HashMap.map(map1, (value, key) => `${key}:${value * 2}`)
@@ -1708,16 +1850,17 @@ export const map: {
1708
1850
  * console.log(HashMap.get(map2, "b")) // Option.some("b:4")
1709
1851
  * ```
1710
1852
  *
1711
- * @since 2.0.0
1712
1853
  * @category mapping
1854
+ * @since 2.0.0
1713
1855
  */
1714
1856
  <A, V, K>(f: (value: V, key: K) => A): (self: HashMap<K, V>) => HashMap<K, A>
1715
1857
  /**
1716
1858
  * Maps over the entries of the `HashMap` using the specified function.
1717
1859
  *
1718
- * @example
1860
+ * **Example** (Mapping values)
1861
+ *
1719
1862
  * ```ts
1720
- * import * as HashMap from "effect/HashMap"
1863
+ * import { HashMap } from "effect"
1721
1864
  *
1722
1865
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3])
1723
1866
  * const map2 = HashMap.map(map1, (value, key) => `${key}:${value * 2}`)
@@ -1726,8 +1869,8 @@ export const map: {
1726
1869
  * console.log(HashMap.get(map2, "b")) // Option.some("b:4")
1727
1870
  * ```
1728
1871
  *
1729
- * @since 2.0.0
1730
1872
  * @category mapping
1873
+ * @since 2.0.0
1731
1874
  */
1732
1875
  <K, V, A>(self: HashMap<K, V>, f: (value: V, key: K) => A): HashMap<K, A>
1733
1876
  } = internal.map
@@ -1737,9 +1880,10 @@ export const map: {
1737
1880
  *
1738
1881
  * **NOTE**: the hash and equal of both maps have to be the same.
1739
1882
  *
1740
- * @example
1883
+ * **Example** (FlatMapping values)
1884
+ *
1741
1885
  * ```ts
1742
- * import * as HashMap from "effect/HashMap"
1886
+ * import { HashMap } from "effect"
1743
1887
  *
1744
1888
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1745
1889
  * const map2 = HashMap.flatMap(
@@ -1752,8 +1896,8 @@ export const map: {
1752
1896
  * console.log(HashMap.get(map2, "b2")) // Option.some(4)
1753
1897
  * ```
1754
1898
  *
1755
- * @since 2.0.0
1756
1899
  * @category sequencing
1900
+ * @since 2.0.0
1757
1901
  */
1758
1902
  export const flatMap: {
1759
1903
  /**
@@ -1761,9 +1905,10 @@ export const flatMap: {
1761
1905
  *
1762
1906
  * **NOTE**: the hash and equal of both maps have to be the same.
1763
1907
  *
1764
- * @example
1908
+ * **Example** (FlatMapping values)
1909
+ *
1765
1910
  * ```ts
1766
- * import * as HashMap from "effect/HashMap"
1911
+ * import { HashMap } from "effect"
1767
1912
  *
1768
1913
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1769
1914
  * const map2 = HashMap.flatMap(
@@ -1776,8 +1921,8 @@ export const flatMap: {
1776
1921
  * console.log(HashMap.get(map2, "b2")) // Option.some(4)
1777
1922
  * ```
1778
1923
  *
1779
- * @since 2.0.0
1780
1924
  * @category sequencing
1925
+ * @since 2.0.0
1781
1926
  */
1782
1927
  <A, K, B>(f: (value: A, key: K) => HashMap<K, B>): (self: HashMap<K, A>) => HashMap<K, B>
1783
1928
  /**
@@ -1785,9 +1930,10 @@ export const flatMap: {
1785
1930
  *
1786
1931
  * **NOTE**: the hash and equal of both maps have to be the same.
1787
1932
  *
1788
- * @example
1933
+ * **Example** (FlatMapping values)
1934
+ *
1789
1935
  * ```ts
1790
- * import * as HashMap from "effect/HashMap"
1936
+ * import { HashMap } from "effect"
1791
1937
  *
1792
1938
  * const map1 = HashMap.make(["a", 1], ["b", 2])
1793
1939
  * const map2 = HashMap.flatMap(
@@ -1800,8 +1946,8 @@ export const flatMap: {
1800
1946
  * console.log(HashMap.get(map2, "b2")) // Option.some(4)
1801
1947
  * ```
1802
1948
  *
1803
- * @since 2.0.0
1804
1949
  * @category sequencing
1950
+ * @since 2.0.0
1805
1951
  */
1806
1952
  <K, A, B>(self: HashMap<K, A>, f: (value: A, key: K) => HashMap<K, B>): HashMap<K, B>
1807
1953
  } = internal.flatMap
@@ -1809,9 +1955,10 @@ export const flatMap: {
1809
1955
  /**
1810
1956
  * Applies the specified function to the entries of the `HashMap`.
1811
1957
  *
1812
- * @example
1958
+ * **Example** (Iterating with side effects)
1959
+ *
1813
1960
  * ```ts
1814
- * import * as HashMap from "effect/HashMap"
1961
+ * import { HashMap } from "effect"
1815
1962
  *
1816
1963
  * const map = HashMap.make(["a", 1], ["b", 2])
1817
1964
  * const collected: Array<[string, number]> = []
@@ -1823,16 +1970,17 @@ export const flatMap: {
1823
1970
  * console.log(collected.sort()) // [["a", 1], ["b", 2]]
1824
1971
  * ```
1825
1972
  *
1826
- * @since 2.0.0
1827
1973
  * @category traversing
1974
+ * @since 2.0.0
1828
1975
  */
1829
1976
  export const forEach: {
1830
1977
  /**
1831
1978
  * Applies the specified function to the entries of the `HashMap`.
1832
1979
  *
1833
- * @example
1980
+ * **Example** (Iterating with side effects)
1981
+ *
1834
1982
  * ```ts
1835
- * import * as HashMap from "effect/HashMap"
1983
+ * import { HashMap } from "effect"
1836
1984
  *
1837
1985
  * const map = HashMap.make(["a", 1], ["b", 2])
1838
1986
  * const collected: Array<[string, number]> = []
@@ -1844,16 +1992,17 @@ export const forEach: {
1844
1992
  * console.log(collected.sort()) // [["a", 1], ["b", 2]]
1845
1993
  * ```
1846
1994
  *
1847
- * @since 2.0.0
1848
1995
  * @category traversing
1996
+ * @since 2.0.0
1849
1997
  */
1850
1998
  <V, K>(f: (value: V, key: K) => void): (self: HashMap<K, V>) => void
1851
1999
  /**
1852
2000
  * Applies the specified function to the entries of the `HashMap`.
1853
2001
  *
1854
- * @example
2002
+ * **Example** (Iterating with side effects)
2003
+ *
1855
2004
  * ```ts
1856
- * import * as HashMap from "effect/HashMap"
2005
+ * import { HashMap } from "effect"
1857
2006
  *
1858
2007
  * const map = HashMap.make(["a", 1], ["b", 2])
1859
2008
  * const collected: Array<[string, number]> = []
@@ -1865,8 +2014,8 @@ export const forEach: {
1865
2014
  * console.log(collected.sort()) // [["a", 1], ["b", 2]]
1866
2015
  * ```
1867
2016
  *
1868
- * @since 2.0.0
1869
2017
  * @category traversing
2018
+ * @since 2.0.0
1870
2019
  */
1871
2020
  <V, K>(self: HashMap<K, V>, f: (value: V, key: K) => void): void
1872
2021
  } = internal.forEach
@@ -1874,9 +2023,10 @@ export const forEach: {
1874
2023
  /**
1875
2024
  * Reduces the specified state over the entries of the `HashMap`.
1876
2025
  *
1877
- * @example
2026
+ * **Example** (Reducing values)
2027
+ *
1878
2028
  * ```ts
1879
- * import * as HashMap from "effect/HashMap"
2029
+ * import { HashMap } from "effect"
1880
2030
  *
1881
2031
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
1882
2032
  * const sum = HashMap.reduce(map, 0, (acc, value) => acc + value)
@@ -1884,16 +2034,17 @@ export const forEach: {
1884
2034
  * console.log(sum) // 6
1885
2035
  * ```
1886
2036
  *
1887
- * @since 2.0.0
1888
2037
  * @category folding
2038
+ * @since 2.0.0
1889
2039
  */
1890
2040
  export const reduce: {
1891
2041
  /**
1892
2042
  * Reduces the specified state over the entries of the `HashMap`.
1893
2043
  *
1894
- * @example
2044
+ * **Example** (Reducing values)
2045
+ *
1895
2046
  * ```ts
1896
- * import * as HashMap from "effect/HashMap"
2047
+ * import { HashMap } from "effect"
1897
2048
  *
1898
2049
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
1899
2050
  * const sum = HashMap.reduce(map, 0, (acc, value) => acc + value)
@@ -1901,16 +2052,17 @@ export const reduce: {
1901
2052
  * console.log(sum) // 6
1902
2053
  * ```
1903
2054
  *
1904
- * @since 2.0.0
1905
2055
  * @category folding
2056
+ * @since 2.0.0
1906
2057
  */
1907
2058
  <Z, V, K>(zero: Z, f: (accumulator: Z, value: V, key: K) => Z): (self: HashMap<K, V>) => Z
1908
2059
  /**
1909
2060
  * Reduces the specified state over the entries of the `HashMap`.
1910
2061
  *
1911
- * @example
2062
+ * **Example** (Reducing values)
2063
+ *
1912
2064
  * ```ts
1913
- * import * as HashMap from "effect/HashMap"
2065
+ * import { HashMap } from "effect"
1914
2066
  *
1915
2067
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
1916
2068
  * const sum = HashMap.reduce(map, 0, (acc, value) => acc + value)
@@ -1918,8 +2070,8 @@ export const reduce: {
1918
2070
  * console.log(sum) // 6
1919
2071
  * ```
1920
2072
  *
1921
- * @since 2.0.0
1922
2073
  * @category folding
2074
+ * @since 2.0.0
1923
2075
  */
1924
2076
  <K, V, Z>(self: HashMap<K, V>, zero: Z, f: (accumulator: Z, value: V, key: K) => Z): Z
1925
2077
  } = internal.reduce
@@ -1927,9 +2079,10 @@ export const reduce: {
1927
2079
  /**
1928
2080
  * Filters entries out of a `HashMap` using the specified predicate.
1929
2081
  *
1930
- * @example
2082
+ * **Example** (Filtering entries)
2083
+ *
1931
2084
  * ```ts
1932
- * import * as HashMap from "effect/HashMap"
2085
+ * import { HashMap } from "effect"
1933
2086
  *
1934
2087
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
1935
2088
  * const map2 = HashMap.filter(map1, (value) => value % 2 === 0)
@@ -1940,16 +2093,17 @@ export const reduce: {
1940
2093
  * console.log(HashMap.has(map2, "a")) // false
1941
2094
  * ```
1942
2095
  *
1943
- * @since 2.0.0
1944
2096
  * @category filtering
2097
+ * @since 2.0.0
1945
2098
  */
1946
2099
  export const filter: {
1947
2100
  /**
1948
2101
  * Filters entries out of a `HashMap` using the specified predicate.
1949
2102
  *
1950
- * @example
2103
+ * **Example** (Filtering entries)
2104
+ *
1951
2105
  * ```ts
1952
- * import * as HashMap from "effect/HashMap"
2106
+ * import { HashMap } from "effect"
1953
2107
  *
1954
2108
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
1955
2109
  * const map2 = HashMap.filter(map1, (value) => value % 2 === 0)
@@ -1960,16 +2114,17 @@ export const filter: {
1960
2114
  * console.log(HashMap.has(map2, "a")) // false
1961
2115
  * ```
1962
2116
  *
1963
- * @since 2.0.0
1964
2117
  * @category filtering
2118
+ * @since 2.0.0
1965
2119
  */
1966
2120
  <K, A>(f: (a: NoInfer<A>, k: K) => boolean): (self: HashMap<K, A>) => HashMap<K, A>
1967
2121
  /**
1968
2122
  * Filters entries out of a `HashMap` using the specified predicate.
1969
2123
  *
1970
- * @example
2124
+ * **Example** (Filtering entries)
2125
+ *
1971
2126
  * ```ts
1972
- * import * as HashMap from "effect/HashMap"
2127
+ * import { HashMap } from "effect"
1973
2128
  *
1974
2129
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
1975
2130
  * const map2 = HashMap.filter(map1, (value) => value % 2 === 0)
@@ -1980,8 +2135,8 @@ export const filter: {
1980
2135
  * console.log(HashMap.has(map2, "a")) // false
1981
2136
  * ```
1982
2137
  *
1983
- * @since 2.0.0
1984
2138
  * @category filtering
2139
+ * @since 2.0.0
1985
2140
  */
1986
2141
  <K, A>(self: HashMap<K, A>, f: (a: A, k: K) => boolean): HashMap<K, A>
1987
2142
  } = internal.filter
@@ -1989,10 +2144,10 @@ export const filter: {
1989
2144
  /**
1990
2145
  * Filters out `None` values from a `HashMap` of `Options`s.
1991
2146
  *
1992
- * @example
2147
+ * **Example** (Compacting Option values)
2148
+ *
1993
2149
  * ```ts
1994
- * import * as HashMap from "effect/HashMap"
1995
- * import * as Option from "effect/Option"
2150
+ * import { HashMap, Option } from "effect"
1996
2151
  *
1997
2152
  * const map1 = HashMap.make(
1998
2153
  * ["a", Option.some(1)],
@@ -2006,8 +2161,8 @@ export const filter: {
2006
2161
  * console.log(HashMap.has(map2, "b")) // false
2007
2162
  * ```
2008
2163
  *
2009
- * @since 2.0.0
2010
2164
  * @category filtering
2165
+ * @since 2.0.0
2011
2166
  */
2012
2167
  export const compact: <K, A>(self: HashMap<K, Option<A>>) => HashMap<K, A> = internal.compact
2013
2168
 
@@ -2015,10 +2170,10 @@ export const compact: <K, A>(self: HashMap<K, Option<A>>) => HashMap<K, A> = int
2015
2170
  * Maps over the entries of the `HashMap` using the specified filter and keeps
2016
2171
  * only successful results.
2017
2172
  *
2018
- * @example
2173
+ * **Example** (Filtering and mapping Results)
2174
+ *
2019
2175
  * ```ts
2020
- * import * as HashMap from "effect/HashMap"
2021
- * import * as Result from "effect/Result"
2176
+ * import { HashMap, Result } from "effect"
2022
2177
  *
2023
2178
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
2024
2179
  * const map2 = HashMap.filterMap(
@@ -2031,18 +2186,18 @@ export const compact: <K, A>(self: HashMap<K, Option<A>>) => HashMap<K, A> = int
2031
2186
  * console.log(HashMap.get(map2, "d")) // Option.some(8)
2032
2187
  * ```
2033
2188
  *
2034
- * @since 2.0.0
2035
2189
  * @category filtering
2190
+ * @since 2.0.0
2036
2191
  */
2037
2192
  export const filterMap: {
2038
2193
  /**
2039
2194
  * Maps over the entries of the `HashMap` using the specified filter and keeps
2040
2195
  * only successful results.
2041
2196
  *
2042
- * @example
2197
+ * **Example** (Filtering and mapping Results)
2198
+ *
2043
2199
  * ```ts
2044
- * import * as HashMap from "effect/HashMap"
2045
- * import * as Result from "effect/Result"
2200
+ * import { HashMap, Result } from "effect"
2046
2201
  *
2047
2202
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
2048
2203
  * const map2 = HashMap.filterMap(
@@ -2055,18 +2210,18 @@ export const filterMap: {
2055
2210
  * console.log(HashMap.get(map2, "d")) // Option.some(8)
2056
2211
  * ```
2057
2212
  *
2058
- * @since 2.0.0
2059
2213
  * @category filtering
2214
+ * @since 2.0.0
2060
2215
  */
2061
2216
  <A, K, B, X>(f: (input: A, key: K) => Result<B, X>): (self: HashMap<K, A>) => HashMap<K, B>
2062
2217
  /**
2063
2218
  * Maps over the entries of the `HashMap` using the specified filter and keeps
2064
2219
  * only successful results.
2065
2220
  *
2066
- * @example
2221
+ * **Example** (Filtering and mapping Results)
2222
+ *
2067
2223
  * ```ts
2068
- * import * as HashMap from "effect/HashMap"
2069
- * import * as Result from "effect/Result"
2224
+ * import { HashMap, Result } from "effect"
2070
2225
  *
2071
2226
  * const map1 = HashMap.make(["a", 1], ["b", 2], ["c", 3], ["d", 4])
2072
2227
  * const map2 = HashMap.filterMap(
@@ -2079,8 +2234,8 @@ export const filterMap: {
2079
2234
  * console.log(HashMap.get(map2, "d")) // Option.some(8)
2080
2235
  * ```
2081
2236
  *
2082
- * @since 2.0.0
2083
2237
  * @category filtering
2238
+ * @since 2.0.0
2084
2239
  */
2085
2240
  <K, A, B, X>(self: HashMap<K, A>, f: (input: A, key: K) => Result<B, X>): HashMap<K, B>
2086
2241
  } = internal.filterMap
@@ -2089,15 +2244,15 @@ export const filterMap: {
2089
2244
  * Returns the first element that satisfies the specified
2090
2245
  * predicate, or `None` if no such element exists.
2091
2246
  *
2092
- * @example
2247
+ * **Example** (Finding the first matching entry)
2248
+ *
2093
2249
  * ```ts
2094
- * import * as HashMap from "effect/HashMap"
2095
- * import * as Option from "effect/Option"
2250
+ * import { HashMap, Option } from "effect"
2096
2251
  *
2097
2252
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
2098
- * const result = HashMap.findFirst(map, (value) => value > 1)
2099
- * console.log(result) // Option.some(["c", 3])
2100
- * console.log(Option.getOrElse(result, () => ["", 0])) // ["c", 3]
2253
+ * const result = HashMap.findFirst(map, (value, key) => key === "b" && value > 1)
2254
+ * console.log(result) // Option.some(["b", 2])
2255
+ * console.log(Option.getOrElse(result, () => ["", 0])) // ["b", 2]
2101
2256
  * ```
2102
2257
  *
2103
2258
  * @category elements
@@ -2108,15 +2263,15 @@ export const findFirst: {
2108
2263
  * Returns the first element that satisfies the specified
2109
2264
  * predicate, or `None` if no such element exists.
2110
2265
  *
2111
- * @example
2266
+ * **Example** (Finding the first matching entry)
2267
+ *
2112
2268
  * ```ts
2113
- * import * as HashMap from "effect/HashMap"
2114
- * import * as Option from "effect/Option"
2269
+ * import { HashMap, Option } from "effect"
2115
2270
  *
2116
2271
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
2117
- * const result = HashMap.findFirst(map, (value) => value > 1)
2118
- * console.log(result) // Option.some(["c", 3])
2119
- * console.log(Option.getOrElse(result, () => ["", 0])) // ["c", 3]
2272
+ * const result = HashMap.findFirst(map, (value, key) => key === "b" && value > 1)
2273
+ * console.log(result) // Option.some(["b", 2])
2274
+ * console.log(Option.getOrElse(result, () => ["", 0])) // ["b", 2]
2120
2275
  * ```
2121
2276
  *
2122
2277
  * @category elements
@@ -2127,15 +2282,15 @@ export const findFirst: {
2127
2282
  * Returns the first element that satisfies the specified
2128
2283
  * predicate, or `None` if no such element exists.
2129
2284
  *
2130
- * @example
2285
+ * **Example** (Finding the first matching entry)
2286
+ *
2131
2287
  * ```ts
2132
- * import * as HashMap from "effect/HashMap"
2133
- * import * as Option from "effect/Option"
2288
+ * import { HashMap, Option } from "effect"
2134
2289
  *
2135
2290
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
2136
- * const result = HashMap.findFirst(map, (value) => value > 1)
2137
- * console.log(result) // Option.some(["c", 3])
2138
- * console.log(Option.getOrElse(result, () => ["", 0])) // ["c", 3]
2291
+ * const result = HashMap.findFirst(map, (value, key) => key === "b" && value > 1)
2292
+ * console.log(result) // Option.some(["b", 2])
2293
+ * console.log(Option.getOrElse(result, () => ["", 0])) // ["b", 2]
2139
2294
  * ```
2140
2295
  *
2141
2296
  * @category elements
@@ -2147,9 +2302,10 @@ export const findFirst: {
2147
2302
  /**
2148
2303
  * Checks if any entry in a hashmap meets a specific condition.
2149
2304
  *
2150
- * @example
2305
+ * **Example** (Checking for any matching entry)
2306
+ *
2151
2307
  * ```ts
2152
- * import * as HashMap from "effect/HashMap"
2308
+ * import { HashMap } from "effect"
2153
2309
  *
2154
2310
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
2155
2311
  *
@@ -2157,16 +2313,17 @@ export const findFirst: {
2157
2313
  * console.log(HashMap.some(map, (value) => value > 5)) // false
2158
2314
  * ```
2159
2315
  *
2160
- * @since 3.13.0
2161
2316
  * @category elements
2317
+ * @since 3.13.0
2162
2318
  */
2163
2319
  export const some: {
2164
2320
  /**
2165
2321
  * Checks if any entry in a hashmap meets a specific condition.
2166
2322
  *
2167
- * @example
2323
+ * **Example** (Checking for any matching entry)
2324
+ *
2168
2325
  * ```ts
2169
- * import * as HashMap from "effect/HashMap"
2326
+ * import { HashMap } from "effect"
2170
2327
  *
2171
2328
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
2172
2329
  *
@@ -2174,16 +2331,17 @@ export const some: {
2174
2331
  * console.log(HashMap.some(map, (value) => value > 5)) // false
2175
2332
  * ```
2176
2333
  *
2177
- * @since 3.13.0
2178
2334
  * @category elements
2335
+ * @since 3.13.0
2179
2336
  */
2180
2337
  <K, A>(predicate: (a: NoInfer<A>, k: K) => boolean): (self: HashMap<K, A>) => boolean
2181
2338
  /**
2182
2339
  * Checks if any entry in a hashmap meets a specific condition.
2183
2340
  *
2184
- * @example
2341
+ * **Example** (Checking for any matching entry)
2342
+ *
2185
2343
  * ```ts
2186
- * import * as HashMap from "effect/HashMap"
2344
+ * import { HashMap } from "effect"
2187
2345
  *
2188
2346
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
2189
2347
  *
@@ -2191,8 +2349,8 @@ export const some: {
2191
2349
  * console.log(HashMap.some(map, (value) => value > 5)) // false
2192
2350
  * ```
2193
2351
  *
2194
- * @since 3.13.0
2195
2352
  * @category elements
2353
+ * @since 3.13.0
2196
2354
  */
2197
2355
  <K, A>(self: HashMap<K, A>, predicate: (a: A, k: K) => boolean): boolean
2198
2356
  } = internal.some
@@ -2200,9 +2358,10 @@ export const some: {
2200
2358
  /**
2201
2359
  * Checks if all entries in a hashmap meets a specific condition.
2202
2360
  *
2203
- * @example
2361
+ * **Example** (Checking all entries)
2362
+ *
2204
2363
  * ```ts
2205
- * import * as HashMap from "effect/HashMap"
2364
+ * import { HashMap } from "effect"
2206
2365
  *
2207
2366
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
2208
2367
  *
@@ -2210,19 +2369,17 @@ export const some: {
2210
2369
  * console.log(HashMap.every(map, (value) => value > 1)) // false
2211
2370
  * ```
2212
2371
  *
2213
- * @param self - The hashmap to check.
2214
- * @param predicate - The condition to test entries (value, key).
2215
- *
2216
- * @since 3.14.0
2217
2372
  * @category elements
2373
+ * @since 3.14.0
2218
2374
  */
2219
2375
  export const every: {
2220
2376
  /**
2221
2377
  * Checks if all entries in a hashmap meets a specific condition.
2222
2378
  *
2223
- * @example
2379
+ * **Example** (Checking all entries)
2380
+ *
2224
2381
  * ```ts
2225
- * import * as HashMap from "effect/HashMap"
2382
+ * import { HashMap } from "effect"
2226
2383
  *
2227
2384
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
2228
2385
  *
@@ -2230,19 +2387,17 @@ export const every: {
2230
2387
  * console.log(HashMap.every(map, (value) => value > 1)) // false
2231
2388
  * ```
2232
2389
  *
2233
- * @param self - The hashmap to check.
2234
- * @param predicate - The condition to test entries (value, key).
2235
- *
2236
- * @since 3.14.0
2237
2390
  * @category elements
2391
+ * @since 3.14.0
2238
2392
  */
2239
2393
  <K, A>(predicate: (a: NoInfer<A>, k: K) => boolean): (self: HashMap<K, A>) => boolean
2240
2394
  /**
2241
2395
  * Checks if all entries in a hashmap meets a specific condition.
2242
2396
  *
2243
- * @example
2397
+ * **Example** (Checking all entries)
2398
+ *
2244
2399
  * ```ts
2245
- * import * as HashMap from "effect/HashMap"
2400
+ * import { HashMap } from "effect"
2246
2401
  *
2247
2402
  * const map = HashMap.make(["a", 1], ["b", 2], ["c", 3])
2248
2403
  *
@@ -2250,11 +2405,8 @@ export const every: {
2250
2405
  * console.log(HashMap.every(map, (value) => value > 1)) // false
2251
2406
  * ```
2252
2407
  *
2253
- * @param self - The hashmap to check.
2254
- * @param predicate - The condition to test entries (value, key).
2255
- *
2256
- * @since 3.14.0
2257
2408
  * @category elements
2409
+ * @since 3.14.0
2258
2410
  */
2259
2411
  <K, A>(self: HashMap<K, A>, predicate: (a: A, k: K) => boolean): boolean
2260
2412
  } = internal.every