ts-data-forge 3.3.0 → 3.3.1

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 (424) hide show
  1. package/README.md +37 -13
  2. package/dist/array/impl/array-utils-creation.d.mts +116 -0
  3. package/dist/array/impl/array-utils-creation.d.mts.map +1 -0
  4. package/dist/array/impl/array-utils-creation.mjs +110 -0
  5. package/dist/array/impl/array-utils-creation.mjs.map +1 -0
  6. package/dist/array/impl/array-utils-element-access.d.mts +61 -0
  7. package/dist/array/impl/array-utils-element-access.d.mts.map +1 -0
  8. package/dist/array/impl/array-utils-element-access.mjs +66 -0
  9. package/dist/array/impl/array-utils-element-access.mjs.map +1 -0
  10. package/dist/array/impl/array-utils-iterators.d.mts +59 -0
  11. package/dist/array/impl/array-utils-iterators.d.mts.map +1 -0
  12. package/dist/array/impl/array-utils-iterators.mjs +104 -0
  13. package/dist/array/impl/array-utils-iterators.mjs.map +1 -0
  14. package/dist/array/impl/array-utils-modification.d.mts +154 -0
  15. package/dist/array/impl/array-utils-modification.d.mts.map +1 -0
  16. package/dist/array/impl/array-utils-modification.mjs +139 -0
  17. package/dist/array/impl/array-utils-modification.mjs.map +1 -0
  18. package/dist/array/impl/array-utils-reducing-value.d.mts +214 -0
  19. package/dist/array/impl/array-utils-reducing-value.d.mts.map +1 -0
  20. package/dist/array/impl/array-utils-reducing-value.mjs +160 -0
  21. package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -0
  22. package/dist/array/impl/array-utils-search.d.mts +179 -0
  23. package/dist/array/impl/array-utils-search.d.mts.map +1 -0
  24. package/dist/array/impl/array-utils-search.mjs +153 -0
  25. package/dist/array/impl/array-utils-search.mjs.map +1 -0
  26. package/dist/array/impl/array-utils-set-op.d.mts +100 -0
  27. package/dist/array/impl/array-utils-set-op.d.mts.map +1 -0
  28. package/dist/array/impl/array-utils-set-op.mjs +137 -0
  29. package/dist/array/impl/array-utils-set-op.mjs.map +1 -0
  30. package/dist/array/impl/array-utils-size.d.mts +24 -0
  31. package/dist/array/impl/array-utils-size.d.mts.map +1 -0
  32. package/dist/array/impl/array-utils-size.mjs +28 -0
  33. package/dist/array/impl/array-utils-size.mjs.map +1 -0
  34. package/dist/array/impl/array-utils-slice-clamped.d.mts +18 -0
  35. package/dist/array/impl/array-utils-slice-clamped.d.mts.map +1 -0
  36. package/dist/array/impl/array-utils-slice-clamped.mjs +49 -0
  37. package/dist/array/impl/array-utils-slice-clamped.mjs.map +1 -0
  38. package/dist/array/impl/array-utils-slicing.d.mts +120 -0
  39. package/dist/array/impl/array-utils-slicing.d.mts.map +1 -0
  40. package/dist/array/impl/array-utils-slicing.mjs +140 -0
  41. package/dist/array/impl/array-utils-slicing.mjs.map +1 -0
  42. package/dist/array/impl/array-utils-transformation.d.mts +348 -0
  43. package/dist/array/impl/array-utils-transformation.d.mts.map +1 -0
  44. package/dist/array/impl/array-utils-transformation.mjs +331 -0
  45. package/dist/array/impl/array-utils-transformation.mjs.map +1 -0
  46. package/dist/array/impl/array-utils-validation.d.mts +149 -0
  47. package/dist/array/impl/array-utils-validation.d.mts.map +1 -0
  48. package/dist/array/impl/array-utils-validation.mjs +166 -0
  49. package/dist/array/impl/array-utils-validation.mjs.map +1 -0
  50. package/dist/array/impl/index.d.mts +13 -0
  51. package/dist/array/impl/index.d.mts.map +1 -0
  52. package/dist/array/impl/index.mjs +13 -0
  53. package/dist/array/impl/index.mjs.map +1 -0
  54. package/dist/array/index.d.mts +1 -1
  55. package/dist/array/index.d.mts.map +1 -1
  56. package/dist/array/index.mjs +2 -1
  57. package/dist/array/index.mjs.map +1 -1
  58. package/dist/collections/imap-mapped.d.mts +83 -253
  59. package/dist/collections/imap-mapped.d.mts.map +1 -1
  60. package/dist/collections/imap-mapped.mjs +33 -164
  61. package/dist/collections/imap-mapped.mjs.map +1 -1
  62. package/dist/collections/imap.d.mts +436 -163
  63. package/dist/collections/imap.d.mts.map +1 -1
  64. package/dist/collections/imap.mjs +74 -94
  65. package/dist/collections/imap.mjs.map +1 -1
  66. package/dist/collections/iset-mapped.d.mts +828 -345
  67. package/dist/collections/iset-mapped.d.mts.map +1 -1
  68. package/dist/collections/iset-mapped.mjs +200 -242
  69. package/dist/collections/iset-mapped.mjs.map +1 -1
  70. package/dist/collections/iset.d.mts +397 -205
  71. package/dist/collections/iset.d.mts.map +1 -1
  72. package/dist/collections/iset.mjs +102 -184
  73. package/dist/collections/iset.mjs.map +1 -1
  74. package/dist/collections/queue.d.mts +155 -135
  75. package/dist/collections/queue.d.mts.map +1 -1
  76. package/dist/collections/queue.mjs +55 -156
  77. package/dist/collections/queue.mjs.map +1 -1
  78. package/dist/collections/stack.d.mts +154 -154
  79. package/dist/collections/stack.d.mts.map +1 -1
  80. package/dist/collections/stack.mjs +54 -203
  81. package/dist/collections/stack.mjs.map +1 -1
  82. package/dist/entry-point.d.mts +1 -0
  83. package/dist/entry-point.d.mts.map +1 -1
  84. package/dist/entry-point.mjs +2 -1
  85. package/dist/entry-point.mjs.map +1 -1
  86. package/dist/expect-type.d.mts +43 -172
  87. package/dist/expect-type.d.mts.map +1 -1
  88. package/dist/expect-type.mjs +43 -172
  89. package/dist/expect-type.mjs.map +1 -1
  90. package/dist/functional/match.d.mts +35 -140
  91. package/dist/functional/match.d.mts.map +1 -1
  92. package/dist/functional/match.mjs.map +1 -1
  93. package/dist/functional/optional.d.mts +282 -160
  94. package/dist/functional/optional.d.mts.map +1 -1
  95. package/dist/functional/optional.mjs +131 -71
  96. package/dist/functional/optional.mjs.map +1 -1
  97. package/dist/functional/pipe.d.mts +59 -113
  98. package/dist/functional/pipe.d.mts.map +1 -1
  99. package/dist/functional/pipe.mjs.map +1 -1
  100. package/dist/functional/result.d.mts +433 -332
  101. package/dist/functional/result.d.mts.map +1 -1
  102. package/dist/functional/result.mjs +233 -239
  103. package/dist/functional/result.mjs.map +1 -1
  104. package/dist/globals.d.mts +12 -5
  105. package/dist/guard/has-key.d.mts +23 -74
  106. package/dist/guard/has-key.d.mts.map +1 -1
  107. package/dist/guard/has-key.mjs +23 -74
  108. package/dist/guard/has-key.mjs.map +1 -1
  109. package/dist/guard/is-non-empty-string.d.mts +20 -87
  110. package/dist/guard/is-non-empty-string.d.mts.map +1 -1
  111. package/dist/guard/is-non-empty-string.mjs +20 -87
  112. package/dist/guard/is-non-empty-string.mjs.map +1 -1
  113. package/dist/guard/is-non-null-object.d.mts +14 -84
  114. package/dist/guard/is-non-null-object.d.mts.map +1 -1
  115. package/dist/guard/is-non-null-object.mjs +14 -84
  116. package/dist/guard/is-non-null-object.mjs.map +1 -1
  117. package/dist/guard/is-primitive.d.mts +13 -126
  118. package/dist/guard/is-primitive.d.mts.map +1 -1
  119. package/dist/guard/is-primitive.mjs +13 -126
  120. package/dist/guard/is-primitive.mjs.map +1 -1
  121. package/dist/guard/is-record.d.mts +21 -132
  122. package/dist/guard/is-record.d.mts.map +1 -1
  123. package/dist/guard/is-record.mjs +21 -132
  124. package/dist/guard/is-record.mjs.map +1 -1
  125. package/dist/guard/is-type.d.mts +201 -238
  126. package/dist/guard/is-type.d.mts.map +1 -1
  127. package/dist/guard/is-type.mjs +201 -238
  128. package/dist/guard/is-type.mjs.map +1 -1
  129. package/dist/guard/key-is-in.d.mts +22 -139
  130. package/dist/guard/key-is-in.d.mts.map +1 -1
  131. package/dist/guard/key-is-in.mjs +22 -139
  132. package/dist/guard/key-is-in.mjs.map +1 -1
  133. package/dist/index.d.mts +0 -1
  134. package/dist/index.d.mts.map +1 -1
  135. package/dist/index.mjs +0 -1
  136. package/dist/index.mjs.map +1 -1
  137. package/dist/iterator/range.d.mts +29 -62
  138. package/dist/iterator/range.d.mts.map +1 -1
  139. package/dist/iterator/range.mjs.map +1 -1
  140. package/dist/json/json.d.mts +191 -121
  141. package/dist/json/json.d.mts.map +1 -1
  142. package/dist/json/json.mjs +238 -136
  143. package/dist/json/json.mjs.map +1 -1
  144. package/dist/number/branded-types/finite-number.d.mts +24 -156
  145. package/dist/number/branded-types/finite-number.d.mts.map +1 -1
  146. package/dist/number/branded-types/finite-number.mjs +27 -159
  147. package/dist/number/branded-types/finite-number.mjs.map +1 -1
  148. package/dist/number/branded-types/int.d.mts +122 -120
  149. package/dist/number/branded-types/int.d.mts.map +1 -1
  150. package/dist/number/branded-types/int.mjs +122 -120
  151. package/dist/number/branded-types/int.mjs.map +1 -1
  152. package/dist/number/branded-types/int16.d.mts +22 -30
  153. package/dist/number/branded-types/int16.d.mts.map +1 -1
  154. package/dist/number/branded-types/int16.mjs +22 -30
  155. package/dist/number/branded-types/int16.mjs.map +1 -1
  156. package/dist/number/branded-types/int32.d.mts +22 -31
  157. package/dist/number/branded-types/int32.d.mts.map +1 -1
  158. package/dist/number/branded-types/int32.mjs +22 -31
  159. package/dist/number/branded-types/int32.mjs.map +1 -1
  160. package/dist/number/branded-types/non-negative-finite-number.d.mts +28 -36
  161. package/dist/number/branded-types/non-negative-finite-number.d.mts.map +1 -1
  162. package/dist/number/branded-types/non-negative-finite-number.mjs +31 -39
  163. package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
  164. package/dist/number/branded-types/non-negative-int16.d.mts +24 -34
  165. package/dist/number/branded-types/non-negative-int16.d.mts.map +1 -1
  166. package/dist/number/branded-types/non-negative-int16.mjs +24 -34
  167. package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
  168. package/dist/number/branded-types/non-negative-int32.d.mts +26 -35
  169. package/dist/number/branded-types/non-negative-int32.d.mts.map +1 -1
  170. package/dist/number/branded-types/non-negative-int32.mjs +26 -35
  171. package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
  172. package/dist/number/branded-types/non-zero-finite-number.d.mts +22 -37
  173. package/dist/number/branded-types/non-zero-finite-number.d.mts.map +1 -1
  174. package/dist/number/branded-types/non-zero-finite-number.mjs +25 -40
  175. package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
  176. package/dist/number/branded-types/non-zero-int.d.mts +15 -30
  177. package/dist/number/branded-types/non-zero-int.d.mts.map +1 -1
  178. package/dist/number/branded-types/non-zero-int.mjs +15 -30
  179. package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
  180. package/dist/number/branded-types/non-zero-int16.d.mts +27 -35
  181. package/dist/number/branded-types/non-zero-int16.d.mts.map +1 -1
  182. package/dist/number/branded-types/non-zero-int16.mjs +27 -35
  183. package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
  184. package/dist/number/branded-types/non-zero-int32.d.mts +29 -36
  185. package/dist/number/branded-types/non-zero-int32.d.mts.map +1 -1
  186. package/dist/number/branded-types/non-zero-int32.mjs +29 -36
  187. package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
  188. package/dist/number/branded-types/non-zero-safe-int.d.mts +37 -38
  189. package/dist/number/branded-types/non-zero-safe-int.d.mts.map +1 -1
  190. package/dist/number/branded-types/non-zero-safe-int.mjs +39 -40
  191. package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
  192. package/dist/number/branded-types/non-zero-uint16.d.mts +24 -35
  193. package/dist/number/branded-types/non-zero-uint16.d.mts.map +1 -1
  194. package/dist/number/branded-types/non-zero-uint16.mjs +24 -35
  195. package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
  196. package/dist/number/branded-types/non-zero-uint32.d.mts +24 -35
  197. package/dist/number/branded-types/non-zero-uint32.d.mts.map +1 -1
  198. package/dist/number/branded-types/non-zero-uint32.mjs +24 -35
  199. package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
  200. package/dist/number/branded-types/positive-finite-number.d.mts +26 -40
  201. package/dist/number/branded-types/positive-finite-number.d.mts.map +1 -1
  202. package/dist/number/branded-types/positive-finite-number.mjs +29 -43
  203. package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
  204. package/dist/number/branded-types/positive-int.d.mts +133 -123
  205. package/dist/number/branded-types/positive-int.d.mts.map +1 -1
  206. package/dist/number/branded-types/positive-int.mjs +133 -123
  207. package/dist/number/branded-types/positive-int.mjs.map +1 -1
  208. package/dist/number/branded-types/positive-int16.d.mts +24 -35
  209. package/dist/number/branded-types/positive-int16.d.mts.map +1 -1
  210. package/dist/number/branded-types/positive-int16.mjs +24 -35
  211. package/dist/number/branded-types/positive-int16.mjs.map +1 -1
  212. package/dist/number/branded-types/positive-int32.d.mts +24 -35
  213. package/dist/number/branded-types/positive-int32.d.mts.map +1 -1
  214. package/dist/number/branded-types/positive-int32.mjs +24 -35
  215. package/dist/number/branded-types/positive-int32.mjs.map +1 -1
  216. package/dist/number/branded-types/positive-safe-int.d.mts +159 -33
  217. package/dist/number/branded-types/positive-safe-int.d.mts.map +1 -1
  218. package/dist/number/branded-types/positive-safe-int.mjs +160 -34
  219. package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
  220. package/dist/number/branded-types/positive-uint16.d.mts +24 -35
  221. package/dist/number/branded-types/positive-uint16.d.mts.map +1 -1
  222. package/dist/number/branded-types/positive-uint16.mjs +24 -35
  223. package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
  224. package/dist/number/branded-types/positive-uint32.d.mts +26 -36
  225. package/dist/number/branded-types/positive-uint32.d.mts.map +1 -1
  226. package/dist/number/branded-types/positive-uint32.mjs +26 -36
  227. package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
  228. package/dist/number/branded-types/safe-int.d.mts +140 -99
  229. package/dist/number/branded-types/safe-int.d.mts.map +1 -1
  230. package/dist/number/branded-types/safe-int.mjs +142 -101
  231. package/dist/number/branded-types/safe-int.mjs.map +1 -1
  232. package/dist/number/branded-types/safe-uint.d.mts +24 -33
  233. package/dist/number/branded-types/safe-uint.d.mts.map +1 -1
  234. package/dist/number/branded-types/safe-uint.mjs +25 -34
  235. package/dist/number/branded-types/safe-uint.mjs.map +1 -1
  236. package/dist/number/branded-types/uint.d.mts +121 -30
  237. package/dist/number/branded-types/uint.d.mts.map +1 -1
  238. package/dist/number/branded-types/uint.mjs +121 -30
  239. package/dist/number/branded-types/uint.mjs.map +1 -1
  240. package/dist/number/branded-types/uint16.d.mts +26 -34
  241. package/dist/number/branded-types/uint16.d.mts.map +1 -1
  242. package/dist/number/branded-types/uint16.mjs +26 -34
  243. package/dist/number/branded-types/uint16.mjs.map +1 -1
  244. package/dist/number/branded-types/uint32.d.mts +26 -68
  245. package/dist/number/branded-types/uint32.d.mts.map +1 -1
  246. package/dist/number/branded-types/uint32.mjs +26 -68
  247. package/dist/number/branded-types/uint32.mjs.map +1 -1
  248. package/dist/number/enum/int8.d.mts +37 -101
  249. package/dist/number/enum/int8.d.mts.map +1 -1
  250. package/dist/number/enum/int8.mjs +39 -170
  251. package/dist/number/enum/int8.mjs.map +1 -1
  252. package/dist/number/enum/uint8.d.mts +45 -55
  253. package/dist/number/enum/uint8.d.mts.map +1 -1
  254. package/dist/number/enum/uint8.mjs +46 -155
  255. package/dist/number/enum/uint8.mjs.map +1 -1
  256. package/dist/number/num.d.mts +145 -206
  257. package/dist/number/num.d.mts.map +1 -1
  258. package/dist/number/num.mjs +143 -199
  259. package/dist/number/num.mjs.map +1 -1
  260. package/dist/number/refined-number-utils.d.mts +97 -21
  261. package/dist/number/refined-number-utils.d.mts.map +1 -1
  262. package/dist/number/refined-number-utils.mjs +91 -20
  263. package/dist/number/refined-number-utils.mjs.map +1 -1
  264. package/dist/object/object.d.mts +126 -208
  265. package/dist/object/object.d.mts.map +1 -1
  266. package/dist/object/object.mjs +68 -102
  267. package/dist/object/object.mjs.map +1 -1
  268. package/dist/others/cast-mutable.d.mts +12 -88
  269. package/dist/others/cast-mutable.d.mts.map +1 -1
  270. package/dist/others/cast-mutable.mjs +13 -89
  271. package/dist/others/cast-mutable.mjs.map +1 -1
  272. package/dist/others/cast-readonly.d.mts +12 -168
  273. package/dist/others/cast-readonly.d.mts.map +1 -1
  274. package/dist/others/cast-readonly.mjs +13 -169
  275. package/dist/others/cast-readonly.mjs.map +1 -1
  276. package/dist/others/if-then.d.mts +6 -83
  277. package/dist/others/if-then.d.mts.map +1 -1
  278. package/dist/others/if-then.mjs +6 -83
  279. package/dist/others/if-then.mjs.map +1 -1
  280. package/dist/others/map-nullable.d.mts +12 -136
  281. package/dist/others/map-nullable.d.mts.map +1 -1
  282. package/dist/others/map-nullable.mjs.map +1 -1
  283. package/dist/others/memoize-function.d.mts +14 -157
  284. package/dist/others/memoize-function.d.mts.map +1 -1
  285. package/dist/others/memoize-function.mjs +14 -157
  286. package/dist/others/memoize-function.mjs.map +1 -1
  287. package/dist/others/tuple.d.mts +33 -151
  288. package/dist/others/tuple.d.mts.map +1 -1
  289. package/dist/others/tuple.mjs +33 -151
  290. package/dist/others/tuple.mjs.map +1 -1
  291. package/dist/others/unknown-to-string.d.mts +11 -125
  292. package/dist/others/unknown-to-string.d.mts.map +1 -1
  293. package/dist/others/unknown-to-string.mjs +12 -126
  294. package/dist/others/unknown-to-string.mjs.map +1 -1
  295. package/dist/promise/promise.d.mts +33 -20
  296. package/dist/promise/promise.d.mts.map +1 -1
  297. package/dist/promise/promise.mjs +34 -21
  298. package/dist/promise/promise.mjs.map +1 -1
  299. package/package.json +47 -39
  300. package/src/array/impl/array-utils-creation.mts +192 -0
  301. package/src/array/{array-utils-creation.test.mts → impl/array-utils-creation.test.mts} +121 -72
  302. package/src/array/impl/array-utils-element-access.mts +115 -0
  303. package/src/array/impl/array-utils-element-access.test.mts +151 -0
  304. package/src/array/impl/array-utils-iterators.mts +79 -0
  305. package/src/array/impl/array-utils-iterators.test.mts +98 -0
  306. package/src/array/impl/array-utils-modification.mts +434 -0
  307. package/src/array/{array-utils-modification.test.mts → impl/array-utils-modification.test.mts} +41 -28
  308. package/src/array/{array-utils-overload-type-error.test.mts → impl/array-utils-overload-type-error.test.mts} +33 -33
  309. package/src/array/impl/array-utils-reducing-value.mts +551 -0
  310. package/src/array/{array-utils-reducing-value.test.mts → impl/array-utils-reducing-value.test.mts} +45 -50
  311. package/src/array/impl/array-utils-search.mts +509 -0
  312. package/src/array/impl/array-utils-search.test.mts +346 -0
  313. package/src/array/impl/array-utils-set-op.mts +166 -0
  314. package/src/array/{array-utils-set-op.test.mts → impl/array-utils-set-op.test.mts} +42 -35
  315. package/src/array/impl/array-utils-size.mts +30 -0
  316. package/src/array/impl/array-utils-size.test.mts +9 -0
  317. package/src/array/impl/array-utils-slice-clamped.mts +51 -0
  318. package/src/array/{array-utils-slice-clamped.test.mts → impl/array-utils-slice-clamped.test.mts} +12 -12
  319. package/src/array/impl/array-utils-slicing.mts +275 -0
  320. package/src/array/impl/array-utils-slicing.test.mts +158 -0
  321. package/src/array/impl/array-utils-transformation.mts +746 -0
  322. package/src/array/{array-utils-transformation.test.mts → impl/array-utils-transformation.test.mts} +662 -889
  323. package/src/array/impl/array-utils-validation.mts +241 -0
  324. package/src/array/{array-utils-validation.test.mts → impl/array-utils-validation.test.mts} +194 -107
  325. package/src/array/{array.test.mts → impl/array.test.mts} +2 -2
  326. package/src/array/impl/index.mts +12 -0
  327. package/src/array/index.mts +1 -1
  328. package/src/collections/imap-mapped.mts +99 -265
  329. package/src/collections/imap.mts +477 -174
  330. package/src/collections/imap.test.mts +12 -19
  331. package/src/collections/iset-mapped.mts +892 -358
  332. package/src/collections/iset.mts +429 -213
  333. package/src/collections/queue.mts +174 -200
  334. package/src/collections/stack.mts +172 -245
  335. package/src/collections/stack.test.mts +9 -1
  336. package/src/entry-point.mts +1 -0
  337. package/src/expect-type.mts +43 -172
  338. package/src/functional/match.mts +35 -145
  339. package/src/functional/optional.mts +285 -163
  340. package/src/functional/optional.test.mts +4 -1
  341. package/src/functional/pipe.mts +60 -113
  342. package/src/functional/result.mts +452 -351
  343. package/src/functional/result.test.mts +9 -2
  344. package/src/globals.d.mts +12 -5
  345. package/src/guard/has-key.mts +23 -74
  346. package/src/guard/is-non-empty-string.mts +20 -87
  347. package/src/guard/is-non-null-object.mts +14 -84
  348. package/src/guard/is-non-null-object.test.mts +1 -1
  349. package/src/guard/is-primitive.mts +13 -126
  350. package/src/guard/is-primitive.test.mts +1 -1
  351. package/src/guard/is-record.mts +21 -132
  352. package/src/guard/is-type.mts +201 -238
  353. package/src/guard/is-type.test.mts +7 -7
  354. package/src/guard/key-is-in.mts +22 -139
  355. package/src/index.mts +0 -1
  356. package/src/iterator/range.mts +29 -62
  357. package/src/json/json.mts +202 -134
  358. package/src/json/json.test.mts +1 -3
  359. package/src/number/branded-types/finite-number.mts +27 -159
  360. package/src/number/branded-types/int.mts +122 -120
  361. package/src/number/branded-types/int16.mts +22 -30
  362. package/src/number/branded-types/int16.test.mts +24 -24
  363. package/src/number/branded-types/int32.mts +22 -31
  364. package/src/number/branded-types/int32.test.mts +39 -39
  365. package/src/number/branded-types/non-negative-finite-number.mts +31 -39
  366. package/src/number/branded-types/non-negative-int16.mts +24 -34
  367. package/src/number/branded-types/non-negative-int16.test.mts +16 -16
  368. package/src/number/branded-types/non-negative-int32.mts +26 -35
  369. package/src/number/branded-types/non-negative-int32.test.mts +30 -30
  370. package/src/number/branded-types/non-zero-finite-number.mts +25 -40
  371. package/src/number/branded-types/non-zero-int.mts +15 -30
  372. package/src/number/branded-types/non-zero-int16.mts +27 -35
  373. package/src/number/branded-types/non-zero-int16.test.mts +26 -26
  374. package/src/number/branded-types/non-zero-int32.mts +29 -36
  375. package/src/number/branded-types/non-zero-int32.test.mts +45 -42
  376. package/src/number/branded-types/non-zero-safe-int.mts +39 -40
  377. package/src/number/branded-types/non-zero-uint16.mts +24 -35
  378. package/src/number/branded-types/non-zero-uint16.test.mts +16 -16
  379. package/src/number/branded-types/non-zero-uint32.mts +24 -35
  380. package/src/number/branded-types/non-zero-uint32.test.mts +28 -28
  381. package/src/number/branded-types/positive-finite-number.mts +29 -43
  382. package/src/number/branded-types/positive-int.mts +134 -124
  383. package/src/number/branded-types/positive-int16.mts +24 -35
  384. package/src/number/branded-types/positive-int16.test.mts +14 -14
  385. package/src/number/branded-types/positive-int32.mts +24 -35
  386. package/src/number/branded-types/positive-int32.test.mts +26 -26
  387. package/src/number/branded-types/positive-safe-int.mts +160 -34
  388. package/src/number/branded-types/positive-uint16.mts +24 -35
  389. package/src/number/branded-types/positive-uint16.test.mts +16 -16
  390. package/src/number/branded-types/positive-uint32.mts +26 -36
  391. package/src/number/branded-types/positive-uint32.test.mts +31 -28
  392. package/src/number/branded-types/safe-int.mts +142 -101
  393. package/src/number/branded-types/safe-uint.mts +25 -34
  394. package/src/number/branded-types/uint.mts +121 -30
  395. package/src/number/branded-types/uint16.mts +26 -34
  396. package/src/number/branded-types/uint16.test.mts +16 -16
  397. package/src/number/branded-types/uint32.mts +26 -68
  398. package/src/number/branded-types/uint32.test.mts +28 -28
  399. package/src/number/enum/int8.mts +39 -170
  400. package/src/number/enum/uint8.mts +46 -155
  401. package/src/number/num.mts +157 -212
  402. package/src/number/num.test.mts +4 -4
  403. package/src/number/refined-number-utils.mts +109 -26
  404. package/src/object/object.mts +130 -212
  405. package/src/object/object.test.mts +29 -0
  406. package/src/others/cast-mutable.mts +13 -89
  407. package/src/others/cast-mutable.test.mts +80 -0
  408. package/src/others/cast-readonly.mts +13 -169
  409. package/src/others/if-then.mts +6 -83
  410. package/src/others/map-nullable.mts +12 -136
  411. package/src/others/map-nullable.test.mts +6 -6
  412. package/src/others/memoize-function.mts +14 -157
  413. package/src/others/tuple.mts +33 -151
  414. package/src/others/unknown-to-string.mts +12 -126
  415. package/src/others/unknown-to-string.test.mts +13 -1
  416. package/src/promise/promise.mts +34 -21
  417. package/src/promise/promise.test.mts +43 -0
  418. package/dist/array/array-utils.d.mts +0 -2956
  419. package/dist/array/array-utils.d.mts.map +0 -1
  420. package/dist/array/array-utils.mjs +0 -1838
  421. package/dist/array/array-utils.mjs.map +0 -1
  422. package/src/array/array-utils-search.test.mts +0 -169
  423. package/src/array/array-utils-slicing.test.mts +0 -274
  424. package/src/array/array-utils.mts +0 -4834
@@ -1 +1 @@
1
- {"version":3,"file":"iset-mapped.d.mts","sourceRoot":"","sources":["../../src/collections/iset-mapped.mts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iset-mapped.d.mts","sourceRoot":"","sources":["../../src/collections/iset-mapped.mts"],"names":[],"mappings":"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"}
@@ -29,246 +29,155 @@ import '../number/enum/uint8.mjs';
29
29
  import '../number/num.mjs';
30
30
  import '../number/refined-number-utils.mjs';
31
31
 
32
- /**
33
- * Provides utility functions for ISetMapped.
34
- */
32
+ /** Provides utility functions for ISetMapped. */
35
33
  var ISetMapped;
36
34
  (function (ISetMapped) {
37
35
  /**
38
- * Creates a new ISetMapped instance with custom element transformation functions.
36
+ * Creates a new ISetMapped instance with custom element transformation
37
+ * functions.
39
38
  *
40
- * This factory function creates an immutable set that can use complex objects as elements
41
- * by providing bidirectional transformation functions. The `toKey` function converts
42
- * your custom element type to a primitive type that can be efficiently stored, while
43
- * `fromKey` reconstructs the original element type for iteration and access.
39
+ * This factory function creates an immutable set that can use complex objects
40
+ * as elements by providing bidirectional transformation functions. The
41
+ * `toKey` function converts your custom element type to a primitive type that
42
+ * can be efficiently stored, while `fromKey` reconstructs the original
43
+ * element type for iteration and access.
44
44
  *
45
45
  * **Performance:** O(n) where n is the number of elements in the iterable.
46
46
  *
47
- * @template K The type of the custom elements.
48
- * @template KM The type of the mapped primitive keys.
49
- * @param iterable An iterable of elements using the custom element type.
50
- * @param toKey A function that converts a custom element `K` to a primitive key `KM`.
51
- * This function must be deterministic and produce unique values for unique elements.
52
- * @param fromKey A function that converts a primitive key `KM` back to the custom element `K`.
53
- * This should be the inverse of `toKey`.
54
- * @returns A new ISetMapped instance containing all unique elements from the iterable.
55
- *
56
47
  * @example
57
- * ```typescript
58
- * // Example 1: Product catalog with SKU-based identity
59
- * type Product = { sku: string; name: string; price: number; category: string };
60
- *
61
- * const productToKey = (product: Product): string => product.sku;
62
- * const keyToProduct = (sku: string): Product => {
63
- * // In practice, this might fetch from a product service or cache
64
- * return {
65
- * sku,
66
- * name: `Product ${sku}`,
67
- * price: 0,
68
- * category: "unknown"
69
- * };
70
- * };
71
- *
72
- * const productSet = ISetMapped.create<Product, string>(
73
- * [
74
- * { sku: "LAPTOP-001", name: "Gaming Laptop", price: 1299, category: "electronics" },
75
- * { sku: "MOUSE-002", name: "Wireless Mouse", price: 49, category: "accessories" },
76
- * { sku: "LAPTOP-001", name: "Gaming Laptop", price: 1299, category: "electronics" } // Duplicate SKU
77
- * ],
78
- * productToKey,
79
- * keyToProduct
80
- * );
81
48
  *
82
- * console.log(productSet.size); // Output: 2 (duplicate removed)
83
- * console.log(productSet.has({ sku: "LAPTOP-001", name: "Gaming Laptop", price: 1299, category: "electronics" })); // true
49
+ * ```ts
50
+ * type Point = Readonly<{ x: number; tag: string }>;
84
51
  *
85
- * // Example 2: Geographic locations with coordinate-based identity
86
- * type Location = { name: string; lat: number; lng: number; type: string };
52
+ * const toKey = (point: Point) => JSON.stringify(point);
87
53
  *
88
- * const locationToKey = (loc: Location): string => `${loc.lat.toFixed(6)},${loc.lng.toFixed(6)}`;
89
- * const keyToLocation = (key: string): Location => {
90
- * const [latStr, lngStr] = key.split(',');
91
- * return {
92
- * name: "Unknown Location",
93
- * lat: parseFloat(latStr),
94
- * lng: parseFloat(lngStr),
95
- * type: "point"
96
- * };
97
- * };
54
+ * // eslint-disable-next-line total-functions/no-unsafe-type-assertion
55
+ * const fromKey = (key: string) => JSON.parse(key) as Point;
98
56
  *
99
- * const locationSet = ISetMapped.create<Location, string>(
57
+ * const set = ISetMapped.create<Point, string>(
100
58
  * [
101
- * { name: "Statue of Liberty", lat: 40.689247, lng: -74.044502, type: "monument" },
102
- * { name: "Empire State Building", lat: 40.748817, lng: -73.985428, type: "building" }
59
+ * { x: 1, tag: 'a' },
60
+ * { x: 1, tag: 'a' },
61
+ * { x: 2, tag: 'b' },
103
62
  * ],
104
- * locationToKey,
105
- * keyToLocation
63
+ * toKey,
64
+ * fromKey,
106
65
  * );
107
66
  *
108
- * // Example 3: User entities with multi-part identity
109
- * type User = { id: number; tenant: string; email: string; active: boolean };
110
- *
111
- * const userToKey = (user: User): string => `${user.tenant}:${user.id}`;
112
- * const keyToUser = (key: string): User => {
113
- * const [tenant, idStr] = key.split(':');
114
- * return {
115
- * id: Number(idStr),
116
- * tenant,
117
- * email: `user${idStr}@${tenant}.com`,
118
- * active: true
119
- * };
120
- * };
121
- *
122
- * const userSet = ISetMapped.create<User, string>(
123
- * [],
124
- * userToKey,
125
- * keyToUser
126
- * )
127
- * .add({ id: 1, tenant: "acme", email: "alice@acme.com", active: true })
128
- * .add({ id: 2, tenant: "acme", email: "bob@acme.com", active: false });
129
- *
130
- * console.log(userSet.size); // Output: 2
131
- *
132
- * // Example 4: Empty set with type specification
133
- * const emptyProductSet = ISetMapped.create<Product, string>(
134
- * [],
135
- * productToKey,
136
- * keyToProduct
137
- * );
138
- * console.log(emptyProductSet.isEmpty); // Output: true
67
+ * assert.deepStrictEqual(Array.from(set), [
68
+ * { x: 1, tag: 'a' },
69
+ * { x: 2, tag: 'b' },
70
+ * ]);
139
71
  * ```
72
+ *
73
+ * @template K The type of the custom elements.
74
+ * @template KM The type of the mapped primitive keys.
75
+ * @param iterable An iterable of elements using the custom element type.
76
+ * @param toKey A function that converts a custom element `K` to a primitive
77
+ * key `KM`. This function must be deterministic and produce unique values
78
+ * for unique elements.
79
+ * @param fromKey A function that converts a primitive key `KM` back to the
80
+ * custom element `K`. This should be the inverse of `toKey`.
81
+ * @returns A new ISetMapped instance containing all unique elements from the
82
+ * iterable.
140
83
  */
141
84
  ISetMapped.create = (iterable, toKey, fromKey) => new ISetMappedClass(iterable, toKey, fromKey);
142
85
  /**
143
86
  * Checks if two ISetMapped instances are structurally equal.
144
87
  *
145
- * Two ISetMapped instances are considered equal if they have the same size and contain
146
- * exactly the same elements. The comparison is performed on the underlying mapped keys,
147
- * so the transformation functions themselves don't need to be identical. Elements are
148
- * compared based on their mapped key representations.
88
+ * Two ISetMapped instances are considered equal if they have the same size
89
+ * and contain exactly the same elements. The comparison is performed on the
90
+ * underlying mapped keys, so the transformation functions themselves don't
91
+ * need to be identical. Elements are compared based on their mapped key
92
+ * representations.
149
93
  *
150
94
  * **Performance:** O(n) where n is the size of the smaller set.
151
95
  *
152
- * @template K The type of the custom elements.
153
- * @template KM The type of the mapped primitive keys.
154
- * @param a The first ISetMapped instance to compare.
155
- * @param b The second ISetMapped instance to compare.
156
- * @returns `true` if the sets contain exactly the same elements, `false` otherwise.
157
- *
158
96
  * @example
159
- * ```typescript
160
- * // Example with coordinate-based elements
161
- * type Point = { x: number; y: number; label?: string };
162
- * const pointToKey = (p: Point): string => `${p.x},${p.y}`;
163
- * const keyToPoint = (s: string): Point => {
164
- * const [x, y] = s.split(',').map(Number);
165
- * return { x, y };
166
- * };
167
- *
168
- * const set1 = ISetMapped.create<Point, string>(
169
- * [{ x: 1, y: 2, label: "A" }, { x: 3, y: 4, label: "B" }],
170
- * pointToKey,
171
- * keyToPoint
172
- * );
173
97
  *
174
- * const set2 = ISetMapped.create<Point, string>(
175
- * [{ x: 3, y: 4, label: "Different" }, { x: 1, y: 2, label: "Labels" }], // Order doesn't matter
176
- * pointToKey,
177
- * keyToPoint
178
- * );
179
- *
180
- * const set3 = ISetMapped.create<Point, string>(
181
- * [{ x: 1, y: 2 }, { x: 5, y: 6 }], // Different point
182
- * pointToKey,
183
- * keyToPoint
184
- * );
98
+ * ```ts
99
+ * type Point = Readonly<{ x: number; tag: string }>;
185
100
  *
186
- * console.log(ISetMapped.equal(set1, set2)); // true (same coordinates, labels don't affect equality)
187
- * console.log(ISetMapped.equal(set1, set3)); // false (different coordinates)
101
+ * const toKey = (point: Point) => JSON.stringify(point);
188
102
  *
189
- * // Example with user entities
190
- * type User = { id: number; department: string; name: string };
191
- * const userToKey = (u: User): string => `${u.department}:${u.id}`;
192
- * const keyToUser = (k: string): User => {
193
- * const [department, idStr] = k.split(':');
194
- * return { id: Number(idStr), department, name: "" };
195
- * };
103
+ * // eslint-disable-next-line total-functions/no-unsafe-type-assertion
104
+ * const fromKey = (key: string) => JSON.parse(key) as Point;
196
105
  *
197
- * const users1 = ISetMapped.create<User, string>(
106
+ * const first = ISetMapped.create<Point, string>(
198
107
  * [
199
- * { id: 1, department: "eng", name: "Alice" },
200
- * { id: 2, department: "sales", name: "Bob" }
108
+ * { x: 1, tag: 'a' },
109
+ * { x: 2, tag: 'b' },
201
110
  * ],
202
- * userToKey,
203
- * keyToUser
111
+ * toKey,
112
+ * fromKey,
204
113
  * );
205
- *
206
- * const users2 = ISetMapped.create<User, string>(
114
+ * const second = ISetMapped.create<Point, string>(
207
115
  * [
208
- * { id: 2, department: "sales", name: "Robert" }, // Different name, same identity
209
- * { id: 1, department: "eng", name: "Alicia" } // Different name, same identity
116
+ * { x: 2, tag: 'b' },
117
+ * { x: 1, tag: 'a' },
210
118
  * ],
211
- * userToKey,
212
- * keyToUser
119
+ * toKey,
120
+ * fromKey,
213
121
  * );
214
- *
215
- * console.log(ISetMapped.equal(users1, users2)); // true (same department:id combinations)
216
- *
217
- * // Empty sets
218
- * const empty1 = ISetMapped.create<Point, string>([], pointToKey, keyToPoint);
219
- * const empty2 = ISetMapped.create<Point, string>([], pointToKey, keyToPoint);
220
- * console.log(ISetMapped.equal(empty1, empty2)); // true
221
- *
222
- * // Sets with different transformation functions but same logical content
223
- * const alternativePointToKey = (p: Point): string => `(${p.x},${p.y})`; // Different format
224
- * const alternativeKeyToPoint = (s: string): Point => {
225
- * const match = s.match(/\((\d+),(\d+)\)/)!;
226
- * return { x: Number(match[1]), y: Number(match[2]) };
227
- * };
228
- *
229
- * const set4 = ISetMapped.create<Point, string>(
230
- * [{ x: 1, y: 2 }, { x: 3, y: 4 }],
231
- * alternativePointToKey,
232
- * alternativeKeyToPoint
122
+ * const third = ISetMapped.create<Point, string>(
123
+ * [{ x: 3, tag: 'c' }],
124
+ * toKey,
125
+ * fromKey,
233
126
  * );
234
127
  *
235
- * // This would be false because the underlying mapped keys are different
236
- * console.log(ISetMapped.equal(set1, set4)); // false
128
+ * assert.ok(ISetMapped.equal(first, second));
129
+ * assert.notOk(ISetMapped.equal(first, third));
237
130
  * ```
131
+ *
132
+ * @template K The type of the custom elements.
133
+ * @template KM The type of the mapped primitive keys.
134
+ * @param a The first ISetMapped instance to compare.
135
+ * @param b The second ISetMapped instance to compare.
136
+ * @returns `true` if the sets contain exactly the same elements, `false`
137
+ * otherwise.
238
138
  */
239
139
  ISetMapped.equal = (a, b) => a.size === b.size && a.every((e) => b.has(e));
240
140
  /**
241
141
  * Computes the difference between two ISetMapped instances.
242
- * @template K The type of the elements.
243
- * @template KM The type of the mapped keys.
244
- * @param oldSet The original set.
245
- * @param newSet The new set.
246
- * @returns An object containing sets of added and deleted elements.
142
+ *
247
143
  * @example
248
- * ```typescript
249
- * type Tag = { name: string };
250
- * const tagToKey = (t: Tag): string => t.name;
251
- * const keyToTag = (name: string): Tag => ({ name });
252
- *
253
- * const oldTags = ISetMapped.create<Tag, string>(
254
- * [{ name: "typescript" }, { name: "javascript" }],
255
- * tagToKey,
256
- * keyToTag
144
+ *
145
+ * ```ts
146
+ * type Point = Readonly<{ x: number; tag: string }>;
147
+ *
148
+ * const toKey = (point: Point) => JSON.stringify(point);
149
+ *
150
+ * // eslint-disable-next-line total-functions/no-unsafe-type-assertion
151
+ * const fromKey = (key: string) => JSON.parse(key) as Point;
152
+ *
153
+ * const previous = ISetMapped.create<Point, string>(
154
+ * [
155
+ * { x: 1, tag: 'a' },
156
+ * { x: 2, tag: 'b' },
157
+ * ],
158
+ * toKey,
159
+ * fromKey,
257
160
  * );
258
- * const newTags = ISetMapped.create<Tag, string>(
259
- * [{ name: "javascript" }, { name: "react" }, { name: "nextjs" }],
260
- * tagToKey,
261
- * keyToTag
161
+ * const current = ISetMapped.create<Point, string>(
162
+ * [
163
+ * { x: 2, tag: 'b' },
164
+ * { x: 3, tag: 'c' },
165
+ * ],
166
+ * toKey,
167
+ * fromKey,
262
168
  * );
263
169
  *
264
- * const diffResult = ISetMapped.diff(oldTags, newTags);
265
- *
266
- * console.log("Deleted tags:", diffResult.deleted.toArray().map(t => t.name));
267
- * // Output: Deleted tags: ["typescript"]
170
+ * const { added, deleted } = ISetMapped.diff(previous, current);
268
171
  *
269
- * console.log("Added tags:", diffResult.added.toArray().map(t => t.name));
270
- * // Output: Added tags: ["react", "nextjs"]
172
+ * assert.deepStrictEqual(Array.from(added), [{ x: 3, tag: 'c' }]);
173
+ * assert.deepStrictEqual(Array.from(deleted), [{ x: 1, tag: 'a' }]);
271
174
  * ```
175
+ *
176
+ * @template K The type of the elements.
177
+ * @template KM The type of the mapped keys.
178
+ * @param oldSet The original set.
179
+ * @param newSet The new set.
180
+ * @returns An object containing sets of added and deleted elements.
272
181
  */
273
182
  ISetMapped.diff = (oldSet, newSet) => ({
274
183
  deleted: oldSet.subtract(newSet),
@@ -276,73 +185,95 @@ var ISetMapped;
276
185
  });
277
186
  /**
278
187
  * Computes the intersection of two ISetMapped instances.
188
+ *
189
+ * @example
190
+ *
191
+ * ```ts
192
+ * type Point = Readonly<{ x: number; tag: string }>;
193
+ *
194
+ * const toKey = (point: Point) => JSON.stringify(point);
195
+ *
196
+ * // eslint-disable-next-line total-functions/no-unsafe-type-assertion
197
+ * const fromKey = (key: string) => JSON.parse(key) as Point;
198
+ *
199
+ * const left = ISetMapped.create<Point, string>(
200
+ * [
201
+ * { x: 1, tag: 'a' },
202
+ * { x: 2, tag: 'b' },
203
+ * ],
204
+ * toKey,
205
+ * fromKey,
206
+ * );
207
+ * const right = ISetMapped.create<Point, string>(
208
+ * [{ x: 2, tag: 'b' }],
209
+ * toKey,
210
+ * fromKey,
211
+ * );
212
+ *
213
+ * const overlap = ISetMapped.intersection(left, right);
214
+ *
215
+ * assert.deepStrictEqual(Array.from(overlap), [{ x: 2, tag: 'b' }]);
216
+ * ```
217
+ *
279
218
  * @template K The type of the elements.
280
219
  * @template KM The type of the mapped keys.
281
220
  * @param a The first set.
282
221
  * @param b The second set.
283
222
  * @returns A new ISetMapped instance representing the intersection.
223
+ */
224
+ ISetMapped.intersection = (a, b) => a.intersect(b);
225
+ /**
226
+ * Computes the union of two ISetMapped instances.
227
+ *
284
228
  * @example
285
- * ```typescript
286
- * type Permission = { id: string };
287
- * const permToKey = (p: Permission): string => p.id;
288
- * const keyToPerm = (id: string): Permission => ({ id });
289
- *
290
- * const userPermissions = ISetMapped.create<Permission, string>(
291
- * [{ id: "read" }, { id: "write" }, { id: "delete" }],
292
- * permToKey,
293
- * keyToPerm
229
+ *
230
+ * ```ts
231
+ * type Point = Readonly<{ x: number; tag: string }>;
232
+ *
233
+ * const toKey = (point: Point) => JSON.stringify(point);
234
+ *
235
+ * // eslint-disable-next-line total-functions/no-unsafe-type-assertion
236
+ * const fromKey = (key: string) => JSON.parse(key) as Point;
237
+ *
238
+ * const left = ISetMapped.create<Point, string>(
239
+ * [{ x: 1, tag: 'a' }],
240
+ * toKey,
241
+ * fromKey,
294
242
  * );
295
- * const rolePermissions = ISetMapped.create<Permission, string>(
296
- * [{ id: "read" }, { id: "comment" }, { id: "write" }],
297
- * permToKey,
298
- * keyToPerm
243
+ * const right = ISetMapped.create<Point, string>(
244
+ * [{ x: 2, tag: 'b' }],
245
+ * toKey,
246
+ * fromKey,
299
247
  * );
300
248
  *
301
- * const commonPermissions = ISetMapped.intersection(userPermissions, rolePermissions);
302
- * console.log(commonPermissions.toArray().map(p => p.id)); // Output: ["read", "write"]
249
+ * const combined = ISetMapped.union(left, right);
250
+ *
251
+ * assert.deepStrictEqual(Array.from(combined), [
252
+ * { x: 1, tag: 'a' },
253
+ * { x: 2, tag: 'b' },
254
+ * ]);
303
255
  * ```
304
- */
305
- ISetMapped.intersection = (a, b) => a.intersect(b);
306
- /**
307
- * Computes the union of two ISetMapped instances.
256
+ *
308
257
  * @template K The type of the elements.
309
258
  * @template KM The type of the mapped keys.
310
259
  * @param a The first set.
311
260
  * @param b The second set.
312
261
  * @returns A new ISetMapped instance representing the union.
313
- * @example
314
- * ```typescript
315
- * type FeatureFlag = { flagName: string };
316
- * const flagToKey = (f: FeatureFlag): string => f.flagName;
317
- * const keyToFlag = (name: string): FeatureFlag => ({ flagName: name });
318
- *
319
- * const setA = ISetMapped.create<FeatureFlag, string>(
320
- * [{ flagName: "newUI" }, { flagName: "betaFeature" }],
321
- * flagToKey,
322
- * keyToFlag
323
- * );
324
- * const setB = ISetMapped.create<FeatureFlag, string>(
325
- * [{ flagName: "betaFeature" }, { flagName: "darkMode" }],
326
- * flagToKey,
327
- * keyToFlag
328
- * );
329
- *
330
- * const combinedFlags = ISetMapped.union(setA, setB);
331
- * // The order might vary as sets are unordered internally.
332
- * console.log(combinedFlags.toArray().map(f => f.flagName).toSorted());
333
- * // Output: ["betaFeature", "darkMode", "newUI"]
334
- * ```
335
262
  */
336
263
  ISetMapped.union = (a, b) => a.union(b);
337
264
  })(ISetMapped || (ISetMapped = {}));
338
265
  /**
339
- * Internal class implementation for ISetMapped providing immutable set operations with element transformation.
266
+ * Internal class implementation for ISetMapped providing immutable set
267
+ * operations with element transformation.
340
268
  *
341
- * This class implements the ISetMapped interface by maintaining a JavaScript Set with primitive keys
342
- * internally while exposing an API that works with custom element types. The transformation between
343
- * custom and primitive elements is handled transparently through the provided `toKey` and `fromKey` functions.
269
+ * This class implements the ISetMapped interface by maintaining a JavaScript
270
+ * Set with primitive keys internally while exposing an API that works with
271
+ * custom element types. The transformation between custom and primitive
272
+ * elements is handled transparently through the provided `toKey` and `fromKey`
273
+ * functions.
344
274
  *
345
275
  * **Implementation Details:**
276
+ *
346
277
  * - Uses ReadonlySet<KM> internally where KM is the primitive key type
347
278
  * - Stores transformation functions for bidirectional element conversion
348
279
  * - Implements copy-on-write semantics for efficiency
@@ -363,13 +294,13 @@ class ISetMappedClass {
363
294
  * Constructs an ISetMappedClass instance with custom element transformation.
364
295
  *
365
296
  * @param iterable An iterable of elements using the custom element type K.
366
- * @param toKey A function that converts a custom element K to a primitive key KM.
367
- * Must be deterministic and produce unique values for unique elements.
368
- * @param fromKey A function that converts a primitive key KM back to the custom element K.
369
- * Should be the inverse of the toKey function.
297
+ * @param toKey A function that converts a custom element K to a primitive key
298
+ * KM. Must be deterministic and produce unique values for unique elements.
299
+ * @param fromKey A function that converts a primitive key KM back to the
300
+ * custom element K. Should be the inverse of the toKey function.
370
301
  * @param showNotFoundMessage Whether to log warning messages when operations
371
- * are performed on non-existent elements. Useful for debugging.
372
- * Defaults to false for production use.
302
+ * are performed on non-existent elements. Useful for debugging. Defaults to
303
+ * false for production use.
373
304
  * @internal Use ISetMapped.create() instead of calling this constructor directly.
374
305
  */
375
306
  constructor(iterable, toKey, fromKey, showNotFoundMessage = false) {
@@ -480,6 +411,33 @@ class ISetMappedClass {
480
411
  return ISetMapped.create([...this.values(), ...set.values()], this.#toKey, this.#fromKey);
481
412
  }
482
413
  /**
414
+ * @example
415
+ *
416
+ * ```ts
417
+ * type Point = Readonly<{ x: number; tag: string }>;
418
+ *
419
+ * const toKey = (point: Point) => JSON.stringify(point);
420
+ *
421
+ * // eslint-disable-next-line total-functions/no-unsafe-type-assertion
422
+ * const fromKey = (key: string) => JSON.parse(key) as Point;
423
+ *
424
+ * const set = ISetMapped.create<Point, string>(
425
+ * [
426
+ * { x: 1, tag: 'a' },
427
+ * { x: 2, tag: 'b' },
428
+ * ],
429
+ * toKey,
430
+ * fromKey,
431
+ * );
432
+ *
433
+ * const collected = Array.from(set);
434
+ *
435
+ * assert.deepStrictEqual(collected, [
436
+ * { x: 1, tag: 'a' },
437
+ * { x: 2, tag: 'b' },
438
+ * ]);
439
+ * ```
440
+ *
483
441
  * @inheritdoc
484
442
  */
485
443
  *[Symbol.iterator]() {
@@ -1 +1 @@
1
- {"version":3,"file":"iset-mapped.mjs","sources":["../../src/collections/iset-mapped.mts"],"sourcesContent":[null],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"iset-mapped.mjs","sources":["../../src/collections/iset-mapped.mts"],"sourcesContent":[null],"names":[],"mappings":"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"}