ts-data-forge 3.2.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 (426) hide show
  1. package/README.md +45 -21
  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 +3 -0
  83. package/dist/entry-point.d.mts.map +1 -0
  84. package/dist/entry-point.mjs +62 -0
  85. package/dist/entry-point.mjs.map +1 -0
  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 +14 -127
  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/dist/types.d.mts +1 -1
  300. package/package.json +54 -50
  301. package/src/array/impl/array-utils-creation.mts +192 -0
  302. package/src/array/{array-utils-creation.test.mts → impl/array-utils-creation.test.mts} +121 -72
  303. package/src/array/impl/array-utils-element-access.mts +115 -0
  304. package/src/array/impl/array-utils-element-access.test.mts +151 -0
  305. package/src/array/impl/array-utils-iterators.mts +79 -0
  306. package/src/array/impl/array-utils-iterators.test.mts +98 -0
  307. package/src/array/impl/array-utils-modification.mts +434 -0
  308. package/src/array/{array-utils-modification.test.mts → impl/array-utils-modification.test.mts} +41 -28
  309. package/src/array/{array-utils-overload-type-error.test.mts → impl/array-utils-overload-type-error.test.mts} +33 -33
  310. package/src/array/impl/array-utils-reducing-value.mts +551 -0
  311. package/src/array/{array-utils-reducing-value.test.mts → impl/array-utils-reducing-value.test.mts} +45 -50
  312. package/src/array/impl/array-utils-search.mts +509 -0
  313. package/src/array/impl/array-utils-search.test.mts +346 -0
  314. package/src/array/impl/array-utils-set-op.mts +166 -0
  315. package/src/array/{array-utils-set-op.test.mts → impl/array-utils-set-op.test.mts} +42 -35
  316. package/src/array/impl/array-utils-size.mts +30 -0
  317. package/src/array/impl/array-utils-size.test.mts +9 -0
  318. package/src/array/impl/array-utils-slice-clamped.mts +51 -0
  319. package/src/array/{array-utils-slice-clamped.test.mts → impl/array-utils-slice-clamped.test.mts} +12 -12
  320. package/src/array/impl/array-utils-slicing.mts +275 -0
  321. package/src/array/impl/array-utils-slicing.test.mts +158 -0
  322. package/src/array/impl/array-utils-transformation.mts +746 -0
  323. package/src/array/{array-utils-transformation.test.mts → impl/array-utils-transformation.test.mts} +662 -889
  324. package/src/array/impl/array-utils-validation.mts +241 -0
  325. package/src/array/{array-utils-validation.test.mts → impl/array-utils-validation.test.mts} +194 -107
  326. package/src/array/{array.test.mts → impl/array.test.mts} +2 -2
  327. package/src/array/impl/index.mts +12 -0
  328. package/src/array/index.mts +1 -1
  329. package/src/collections/imap-mapped.mts +99 -265
  330. package/src/collections/imap.mts +477 -174
  331. package/src/collections/imap.test.mts +12 -19
  332. package/src/collections/iset-mapped.mts +892 -358
  333. package/src/collections/iset.mts +429 -213
  334. package/src/collections/queue.mts +174 -200
  335. package/src/collections/stack.mts +172 -245
  336. package/src/collections/stack.test.mts +9 -1
  337. package/src/entry-point.mts +2 -0
  338. package/src/expect-type.mts +43 -172
  339. package/src/functional/match.mts +35 -145
  340. package/src/functional/optional.mts +285 -163
  341. package/src/functional/optional.test.mts +4 -1
  342. package/src/functional/pipe.mts +60 -113
  343. package/src/functional/result.mts +452 -351
  344. package/src/functional/result.test.mts +9 -2
  345. package/src/globals.d.mts +12 -5
  346. package/src/guard/has-key.mts +23 -74
  347. package/src/guard/is-non-empty-string.mts +20 -87
  348. package/src/guard/is-non-null-object.mts +14 -84
  349. package/src/guard/is-non-null-object.test.mts +1 -1
  350. package/src/guard/is-primitive.mts +13 -126
  351. package/src/guard/is-primitive.test.mts +1 -1
  352. package/src/guard/is-record.mts +21 -132
  353. package/src/guard/is-record.test.mts +0 -1
  354. package/src/guard/is-type.mts +201 -238
  355. package/src/guard/is-type.test.mts +7 -7
  356. package/src/guard/key-is-in.mts +22 -139
  357. package/src/index.mts +0 -1
  358. package/src/iterator/range.mts +29 -62
  359. package/src/json/json.mts +202 -134
  360. package/src/json/json.test.mts +1 -3
  361. package/src/number/branded-types/finite-number.mts +27 -159
  362. package/src/number/branded-types/int.mts +122 -120
  363. package/src/number/branded-types/int16.mts +22 -30
  364. package/src/number/branded-types/int16.test.mts +24 -24
  365. package/src/number/branded-types/int32.mts +22 -31
  366. package/src/number/branded-types/int32.test.mts +39 -39
  367. package/src/number/branded-types/non-negative-finite-number.mts +31 -39
  368. package/src/number/branded-types/non-negative-int16.mts +24 -34
  369. package/src/number/branded-types/non-negative-int16.test.mts +16 -16
  370. package/src/number/branded-types/non-negative-int32.mts +26 -35
  371. package/src/number/branded-types/non-negative-int32.test.mts +30 -30
  372. package/src/number/branded-types/non-zero-finite-number.mts +25 -40
  373. package/src/number/branded-types/non-zero-int.mts +15 -30
  374. package/src/number/branded-types/non-zero-int16.mts +27 -35
  375. package/src/number/branded-types/non-zero-int16.test.mts +26 -26
  376. package/src/number/branded-types/non-zero-int32.mts +29 -36
  377. package/src/number/branded-types/non-zero-int32.test.mts +45 -42
  378. package/src/number/branded-types/non-zero-safe-int.mts +39 -40
  379. package/src/number/branded-types/non-zero-uint16.mts +24 -35
  380. package/src/number/branded-types/non-zero-uint16.test.mts +16 -16
  381. package/src/number/branded-types/non-zero-uint32.mts +24 -35
  382. package/src/number/branded-types/non-zero-uint32.test.mts +28 -28
  383. package/src/number/branded-types/positive-finite-number.mts +29 -43
  384. package/src/number/branded-types/positive-int.mts +134 -124
  385. package/src/number/branded-types/positive-int16.mts +24 -35
  386. package/src/number/branded-types/positive-int16.test.mts +14 -14
  387. package/src/number/branded-types/positive-int32.mts +24 -35
  388. package/src/number/branded-types/positive-int32.test.mts +26 -26
  389. package/src/number/branded-types/positive-safe-int.mts +160 -34
  390. package/src/number/branded-types/positive-uint16.mts +24 -35
  391. package/src/number/branded-types/positive-uint16.test.mts +16 -16
  392. package/src/number/branded-types/positive-uint32.mts +26 -36
  393. package/src/number/branded-types/positive-uint32.test.mts +31 -28
  394. package/src/number/branded-types/safe-int.mts +142 -101
  395. package/src/number/branded-types/safe-uint.mts +25 -34
  396. package/src/number/branded-types/uint.mts +121 -30
  397. package/src/number/branded-types/uint16.mts +26 -34
  398. package/src/number/branded-types/uint16.test.mts +16 -16
  399. package/src/number/branded-types/uint32.mts +26 -68
  400. package/src/number/branded-types/uint32.test.mts +28 -28
  401. package/src/number/enum/int8.mts +39 -170
  402. package/src/number/enum/uint8.mts +46 -155
  403. package/src/number/num.mts +157 -212
  404. package/src/number/num.test.mts +4 -4
  405. package/src/number/refined-number-utils.mts +109 -26
  406. package/src/object/object.mts +130 -212
  407. package/src/object/object.test.mts +29 -0
  408. package/src/others/cast-mutable.mts +13 -89
  409. package/src/others/cast-mutable.test.mts +80 -0
  410. package/src/others/cast-readonly.mts +13 -169
  411. package/src/others/if-then.mts +6 -83
  412. package/src/others/map-nullable.mts +12 -136
  413. package/src/others/map-nullable.test.mts +6 -6
  414. package/src/others/memoize-function.mts +14 -157
  415. package/src/others/tuple.mts +33 -151
  416. package/src/others/unknown-to-string.mts +15 -127
  417. package/src/others/unknown-to-string.test.mts +14 -2
  418. package/src/promise/promise.mts +34 -21
  419. package/src/promise/promise.test.mts +43 -0
  420. package/dist/array/array-utils.d.mts +0 -2956
  421. package/dist/array/array-utils.d.mts.map +0 -1
  422. package/dist/array/array-utils.mjs +0 -1838
  423. package/dist/array/array-utils.mjs.map +0 -1
  424. package/src/array/array-utils-search.test.mts +0 -169
  425. package/src/array/array-utils-slicing.test.mts +0 -274
  426. package/src/array/array-utils.mts +0 -4834
@@ -8,71 +8,55 @@ const { MIN_VALUE, MAX_VALUE, min: min_, max: max_, pow, add, sub, mul, div, ran
8
8
  typeNameInMessage,
9
9
  });
10
10
  /**
11
- * Checks if a number is a Uint16 (16-bit unsigned integer in the range [0, 2^16)).
11
+ * Checks if a number is a Uint16 (16-bit unsigned integer in the range [0,
12
+ * 2^16)).
13
+ *
12
14
  * @param value The value to check.
13
15
  * @returns `true` if the value is a Uint16, `false` otherwise.
14
16
  */
15
17
  const isUint16 = is;
16
18
  /**
17
19
  * Casts a number to a Uint16 type.
20
+ *
18
21
  * @param value The value to cast.
19
22
  * @returns The value as a Uint16 type.
20
- * @throws {TypeError} If the value is not a non-negative integer less than 2^16.
21
- * @example
22
- * ```typescript
23
- * const x = asUint16(1000); // Uint16
24
- * const y = asUint16(0); // Uint16
25
- * // asUint16(-1); // throws TypeError
26
- * // asUint16(70000); // throws TypeError
27
- * ```
23
+ * @throws {TypeError} If the value is not a non-negative integer less than
24
+ * 2^16.
28
25
  */
29
26
  const asUint16 = castType;
30
27
  /**
31
- * Namespace providing type-safe arithmetic operations for 16-bit unsigned integers.
32
- *
33
- * All operations automatically clamp results to the valid Uint16 range [0, 65535].
34
- * This ensures that all arithmetic maintains the 16-bit unsigned integer constraint,
35
- * with negative results clamped to 0 and overflow results clamped to MAX_VALUE.
36
- *
37
- * @example
38
- * ```typescript
39
- * const a = asUint16(60000);
40
- * const b = asUint16(10000);
41
- *
42
- * // Arithmetic operations with automatic clamping
43
- * const sum = Uint16.add(a, b); // Uint16 (65535 - clamped to MAX_VALUE)
44
- * const diff = Uint16.sub(b, a); // Uint16 (0 - clamped to MIN_VALUE)
45
- * const product = Uint16.mul(a, b); // Uint16 (65535 - clamped due to overflow)
46
- *
47
- * // Range operations
48
- * const clamped = Uint16.clamp(-100); // Uint16 (0)
49
- * const minimum = Uint16.min(a, b); // Uint16 (10000)
50
- * const maximum = Uint16.max(a, b); // Uint16 (60000)
28
+ * Namespace providing type-safe arithmetic operations for 16-bit unsigned
29
+ * integers.
51
30
  *
52
- * // Utility operations
53
- * const random = Uint16.random(); // Uint16 (random value in [0, 65535])
54
- * const power = Uint16.pow(asUint16(2), asUint16(10)); // Uint16 (1024)
55
- * ```
31
+ * All operations automatically clamp results to the valid Uint16 range [0,
32
+ * 65535]. This ensures that all arithmetic maintains the 16-bit unsigned
33
+ * integer constraint, with negative results clamped to 0 and overflow results
34
+ * clamped to MAX_VALUE.
56
35
  */
57
36
  const Uint16 = {
58
37
  /**
59
38
  * Type guard to check if a value is a Uint16.
39
+ *
60
40
  * @param value The value to check.
61
- * @returns `true` if the value is a 16-bit unsigned integer, `false` otherwise.
41
+ * @returns `true` if the value is a 16-bit unsigned integer, `false`
42
+ * otherwise.
62
43
  */
63
44
  is,
64
45
  /**
65
46
  * The minimum value for a 16-bit unsigned integer.
47
+ *
66
48
  * @readonly
67
49
  */
68
50
  MIN_VALUE,
69
51
  /**
70
52
  * The maximum value for a 16-bit unsigned integer.
53
+ *
71
54
  * @readonly
72
55
  */
73
56
  MAX_VALUE,
74
57
  /**
75
58
  * Returns the smaller of two Uint16 values.
59
+ *
76
60
  * @param a The first Uint16.
77
61
  * @param b The second Uint16.
78
62
  * @returns The minimum value as a Uint16.
@@ -80,6 +64,7 @@ const Uint16 = {
80
64
  min: min_,
81
65
  /**
82
66
  * Returns the larger of two Uint16 values.
67
+ *
83
68
  * @param a The first Uint16.
84
69
  * @param b The second Uint16.
85
70
  * @returns The maximum value as a Uint16.
@@ -87,17 +72,20 @@ const Uint16 = {
87
72
  max: max_,
88
73
  /**
89
74
  * Clamps a number to the Uint16 range.
75
+ *
90
76
  * @param value The number to clamp.
91
77
  * @returns The value clamped to [0, 65535] as a Uint16.
92
78
  */
93
79
  clamp,
94
80
  /**
95
81
  * Generates a random Uint16 value within the valid range.
82
+ *
96
83
  * @returns A random Uint16 between 0 and 65535.
97
84
  */
98
85
  random,
99
86
  /**
100
87
  * Raises a Uint16 to the power of another Uint16.
88
+ *
101
89
  * @param a The base Uint16.
102
90
  * @param b The exponent Uint16.
103
91
  * @returns `a ** b` clamped to [0, 65535] as a Uint16.
@@ -105,6 +93,7 @@ const Uint16 = {
105
93
  pow,
106
94
  /**
107
95
  * Adds two Uint16 values.
96
+ *
108
97
  * @param a The first Uint16.
109
98
  * @param b The second Uint16.
110
99
  * @returns `a + b` clamped to [0, 65535] as a Uint16.
@@ -112,6 +101,7 @@ const Uint16 = {
112
101
  add,
113
102
  /**
114
103
  * Subtracts one Uint16 from another.
104
+ *
115
105
  * @param a The minuend Uint16.
116
106
  * @param b The subtrahend Uint16.
117
107
  * @returns `a - b` clamped to [0, 65535] as a Uint16 (minimum 0).
@@ -119,6 +109,7 @@ const Uint16 = {
119
109
  sub,
120
110
  /**
121
111
  * Multiplies two Uint16 values.
112
+ *
122
113
  * @param a The first Uint16.
123
114
  * @param b The second Uint16.
124
115
  * @returns `a * b` clamped to [0, 65535] as a Uint16.
@@ -126,6 +117,7 @@ const Uint16 = {
126
117
  mul,
127
118
  /**
128
119
  * Divides one Uint16 by another using floor division.
120
+ *
129
121
  * @param a The dividend Uint16.
130
122
  * @param b The divisor Uint16.
131
123
  * @returns `⌊a / b⌋` clamped to [0, 65535] as a Uint16.
@@ -1 +1 @@
1
- {"version":3,"file":"uint16.mjs","sources":["../../../src/number/branded-types/uint16.mts"],"sourcesContent":[null],"names":[],"mappings":";;AAKA,MAAM,iBAAiB,GAAG,uCAAuC;AAEjE,MAAM,EACJ,SAAS,EACT,SAAS,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,MAAM,EACN,EAAE,EACF,QAAQ,EACR,KAAK,GACN,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,mBAAmB,CAI7D;AACA,IAAA,oBAAoB,EAAE,aAAa;AACnC,IAAA,SAAS,EAAE,CAAC;AACZ,IAAA,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;IACtB,iBAAiB;AACT,CAAA,CAAC;AAEX;;;;AAIG;AACI,MAAM,QAAQ,GAAG;AAExB;;;;;;;;;;;;AAYG;AACI,MAAM,QAAQ,GAAG;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;AA0BG;AACI,MAAM,MAAM,GAAG;AACpB;;;;AAIG;IACH,EAAE;AAEF;;;AAGG;IACH,SAAS;AAET;;;AAGG;IACH,SAAS;AAET;;;;;AAKG;AACH,IAAA,GAAG,EAAE,IAAI;AAET;;;;;AAKG;AACH,IAAA,GAAG,EAAE,IAAI;AAET;;;;AAIG;IACH,KAAK;AAEL;;;AAGG;IACH,MAAM;AAEN;;;;;AAKG;IACH,GAAG;AAEH;;;;;AAKG;IACH,GAAG;AAEH;;;;;AAKG;IACH,GAAG;AAEH;;;;;AAKG;IACH,GAAG;AAEH;;;;;AAKG;IACH,GAAG;;;;;"}
1
+ {"version":3,"file":"uint16.mjs","sources":["../../../src/number/branded-types/uint16.mts"],"sourcesContent":[null],"names":[],"mappings":";;AAKA,MAAM,iBAAiB,GAAG,uCAAuC;AAEjE,MAAM,EACJ,SAAS,EACT,SAAS,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,MAAM,EACN,EAAE,EACF,QAAQ,EACR,KAAK,GACN,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,mBAAmB,CAI7D;AACA,IAAA,oBAAoB,EAAE,aAAa;AACnC,IAAA,SAAS,EAAE,CAAC;AACZ,IAAA,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;IACtB,iBAAiB;AACT,CAAA,CAAC;AAEX;;;;;;AAMG;AACI,MAAM,QAAQ,GAAG;AAExB;;;;;;;AAOG;AACI,MAAM,QAAQ,GAAG;AAExB;;;;;;;;AAQG;AACI,MAAM,MAAM,GAAG;AACpB;;;;;;AAMG;IACH,EAAE;AAEF;;;;AAIG;IACH,SAAS;AAET;;;;AAIG;IACH,SAAS;AAET;;;;;;AAMG;AACH,IAAA,GAAG,EAAE,IAAI;AAET;;;;;;AAMG;AACH,IAAA,GAAG,EAAE,IAAI;AAET;;;;;AAKG;IACH,KAAK;AAEL;;;;AAIG;IACH,MAAM;AAEN;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;;;;;"}
@@ -1,21 +1,18 @@
1
1
  /**
2
- * Checks if a number is a Uint32 (32-bit unsigned integer in the range [0, 2^32)).
2
+ * Checks if a number is a Uint32 (32-bit unsigned integer in the range [0,
3
+ * 2^32)).
4
+ *
3
5
  * @param value The value to check.
4
6
  * @returns `true` if the value is a Uint32, `false` otherwise.
5
7
  */
6
8
  export declare const isUint32: (a: number) => a is Uint32;
7
9
  /**
8
10
  * Casts a number to a Uint32 type.
11
+ *
9
12
  * @param value The value to cast.
10
13
  * @returns The value as a Uint32 type.
11
- * @throws {TypeError} If the value is not a non-negative integer less than 2^32.
12
- * @example
13
- * ```typescript
14
- * const x = asUint32(1000000); // Uint32
15
- * const y = asUint32(0); // Uint32
16
- * // asUint32(-1); // throws TypeError
17
- * // asUint32(5000000000); // throws TypeError
18
- * ```
14
+ * @throws {TypeError} If the value is not a non-negative integer less than
15
+ * 2^32.
19
16
  */
20
17
  export declare const asUint32: <N extends number>(x: N) => number & {
21
18
  readonly NaNValue: false;
@@ -32,139 +29,100 @@ export declare const asUint32: <N extends number>(x: N) => number & {
32
29
  'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
33
30
  }> & N;
34
31
  /**
35
- * Utility functions for working with Uint32 (32-bit unsigned integer) branded types.
36
- * Provides type-safe operations that ensure results remain within the valid range [0, 2^32).
37
- * All arithmetic operations are clamped to maintain the Uint32 constraint.
38
- *
39
- * @example
40
- * ```typescript
41
- * // Type checking
42
- * Uint32.is(1000000); // true
43
- * Uint32.is(-1); // false
44
- * Uint32.is(5000000000); // false (exceeds 2^32)
45
- *
46
- * // Constants
47
- * console.log(Uint32.MIN_VALUE); // 0
48
- * console.log(Uint32.MAX_VALUE); // 4294967295 (2^32 - 1)
49
- *
50
- * // Arithmetic operations (all results clamped to [0, 2^32))
51
- * const a = asUint32(1000000);
52
- * const b = asUint32(500000);
53
- *
54
- * Uint32.add(a, b); // Uint32 (1500000)
55
- * Uint32.sub(a, b); // Uint32 (500000)
56
- * Uint32.mul(a, b); // Uint32 (clamped if overflow)
57
- * Uint32.div(a, b); // Uint32 (2)
58
- * Uint32.pow(asUint32(2), asUint32(10)); // Uint32 (1024)
59
- *
60
- * // Utility functions
61
- * Uint32.min(a, b); // Uint32 (500000)
62
- * Uint32.max(a, b); // Uint32 (1000000)
63
- * Uint32.clamp(asUint32(5000000000), Uint32.MIN_VALUE, Uint32.MAX_VALUE); // Uint32 (MAX_VALUE)
64
- * Uint32.random(); // Random Uint32
65
- * ```
32
+ * Utility functions for working with Uint32 (32-bit unsigned integer) branded
33
+ * types. Provides type-safe operations that ensure results remain within the
34
+ * valid range [0, 2^32). All arithmetic operations are clamped to maintain the
35
+ * Uint32 constraint.
66
36
  */
67
37
  export declare const Uint32: {
68
38
  /**
69
39
  * Type guard that checks if a value is a 32-bit unsigned integer.
40
+ *
70
41
  * @param value - The value to check
71
- * @returns `true` if the value is within the range [0, 2^32), `false` otherwise
42
+ * @returns `true` if the value is within the range [0, 2^32), `false`
43
+ * otherwise
72
44
  */
73
45
  readonly is: (a: number) => a is Uint32;
74
46
  /**
75
47
  * The minimum value for a Uint32.
48
+ *
76
49
  * @readonly
77
50
  */
78
51
  readonly MIN_VALUE: 0;
79
52
  /**
80
53
  * The maximum value for a Uint32.
54
+ *
81
55
  * @readonly
82
56
  */
83
57
  readonly MAX_VALUE: number;
84
58
  /**
85
59
  * Returns the minimum of multiple Uint32 values.
60
+ *
86
61
  * @param values - The Uint32 values to compare
87
62
  * @returns The smallest value as a Uint32
88
63
  */
89
64
  readonly min: (...values: readonly WithSmallInt<Uint32, 40>[]) => Uint32;
90
65
  /**
91
66
  * Returns the maximum of multiple Uint32 values.
67
+ *
92
68
  * @param values - The Uint32 values to compare
93
69
  * @returns The largest value as a Uint32
94
70
  */
95
71
  readonly max: (...values: readonly WithSmallInt<Uint32, 40>[]) => Uint32;
96
72
  /**
97
73
  * Clamps a Uint32 to be within the specified range.
74
+ *
98
75
  * @param value - The value to clamp
99
76
  * @param min - The minimum value
100
77
  * @param max - The maximum value
101
78
  * @returns The clamped value as a Uint32
102
- * @example
103
- * ```typescript
104
- * Uint32.clamp(asUint32(5000000000), Uint32.MIN_VALUE, asUint32(1000)); // Uint32 (1000)
105
- * ```
106
79
  */
107
80
  readonly clamp: (x: number) => Uint32;
108
81
  /**
109
82
  * Generates a random Uint32 value.
83
+ *
110
84
  * @returns A random Uint32 value within [0, 2^32)
111
85
  */
112
86
  readonly random: (min?: WithSmallInt<Uint32, 40> | undefined, max?: WithSmallInt<Uint32, 40> | undefined) => Uint32;
113
87
  /**
114
88
  * Raises a Uint32 to a power, with result clamped to [0, 2^32).
89
+ *
115
90
  * @param a - The base Uint32
116
91
  * @param b - The exponent Uint32
117
92
  * @returns `a ** b` as a Uint32, clamped to valid range
118
- * @example
119
- * ```typescript
120
- * Uint32.pow(asUint32(2), asUint32(10)); // Uint32 (1024)
121
- * ```
122
93
  */
123
94
  readonly pow: (x: WithSmallInt<Uint32, 40>, y: WithSmallInt<Uint32, 40>) => Uint32;
124
95
  /**
125
96
  * Adds two Uint32 values, with result clamped to [0, 2^32).
97
+ *
126
98
  * @param a - First Uint32
127
99
  * @param b - Second Uint32
128
100
  * @returns `a + b` as a Uint32, clamped to valid range
129
- * @example
130
- * ```typescript
131
- * Uint32.add(asUint32(1000000), asUint32(500000)); // Uint32 (1500000)
132
- * ```
133
101
  */
134
102
  readonly add: (x: WithSmallInt<Uint32, 40>, y: WithSmallInt<Uint32, 40>) => Uint32;
135
103
  /**
136
104
  * Subtracts two Uint32 values, with result clamped to [0, 2^32).
105
+ *
137
106
  * @param a - First Uint32
138
107
  * @param b - Second Uint32
139
108
  * @returns `a - b` as a Uint32, clamped to valid range (minimum 0)
140
- * @example
141
- * ```typescript
142
- * Uint32.sub(asUint32(1000000), asUint32(500000)); // Uint32 (500000)
143
- * Uint32.sub(asUint32(100), asUint32(500)); // Uint32 (0) - clamped
144
- * ```
145
109
  */
146
110
  readonly sub: (x: WithSmallInt<Uint32, 40>, y: WithSmallInt<Uint32, 40>) => Uint32;
147
111
  /**
148
112
  * Multiplies two Uint32 values, with result clamped to [0, 2^32).
113
+ *
149
114
  * @param a - First Uint32
150
115
  * @param b - Second Uint32
151
116
  * @returns `a * b` as a Uint32, clamped to valid range
152
- * @example
153
- * ```typescript
154
- * Uint32.mul(asUint32(1000), asUint32(500)); // Uint32 (500000)
155
- * ```
156
117
  */
157
118
  readonly mul: (x: WithSmallInt<Uint32, 40>, y: WithSmallInt<Uint32, 40>) => Uint32;
158
119
  /**
159
- * Divides two Uint32 values using floor division, with result clamped to [0, 2^32).
120
+ * Divides two Uint32 values using floor division, with result clamped to [0,
121
+ * 2^32).
122
+ *
160
123
  * @param a - The dividend Uint32
161
124
  * @param b - The divisor Uint32
162
125
  * @returns `⌊a / b⌋` as a Uint32, clamped to valid range
163
- * @example
164
- * ```typescript
165
- * Uint32.div(asUint32(1000000), asUint32(500000)); // Uint32 (2)
166
- * Uint32.div(asUint32(7), asUint32(3)); // Uint32 (2) - floor division
167
- * ```
168
126
  */
169
127
  readonly div: (x: WithSmallInt<Uint32, 40>, y: 1 | 2 | 3 | 32 | 4 | 5 | 6 | 7 | 8 | 9 | 11 | 10 | 24 | 14 | 34 | 12 | 13 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 33 | 35 | 36 | 37 | 38 | 39 | NormalizeBrandUnion<number & {
170
128
  readonly NaNValue: false;
@@ -1 +1 @@
1
- {"version":3,"file":"uint32.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/uint32.mts"],"names":[],"mappings":"AAgCA;;;;GAIG;AACH,eAAO,MAAM,QAAQ,4BAAK,CAAC;AAE3B;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;MAAW,CAAC;AAEjC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,eAAO,MAAM,MAAM;IACjB;;;;OAIG;;IAGH;;;OAGG;;IAGH;;;OAGG;;IAGH;;;;OAIG;;IAGH;;;;OAIG;;IAGH;;;;;;;;;;OAUG;;IAGH;;;OAGG;;IAGH;;;;;;;;;OASG;;IAGH;;;;;;;;;OASG;;IAGH;;;;;;;;;;OAUG;;IAGH;;;;;;;;;OASG;;IAGH;;;;;;;;;;OAUG;;;;;;;;;;;;;;;;CAEK,CAAC"}
1
+ {"version":3,"file":"uint32.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/uint32.mts"],"names":[],"mappings":"AAgCA;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,4BAAK,CAAC;AAE3B;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;MAAW,CAAC;AAEjC;;;;;GAKG;AACH,eAAO,MAAM,MAAM;IACjB;;;;;;OAMG;;IAGH;;;;OAIG;;IAGH;;;;OAIG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;;OAOG;;IAGH;;;;OAIG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;OAOG;;;;;;;;;;;;;;;;CAEK,CAAC"}
@@ -8,159 +8,117 @@ const { MIN_VALUE, MAX_VALUE, min: min_, max: max_, pow, add, sub, mul, div, ran
8
8
  typeNameInMessage,
9
9
  });
10
10
  /**
11
- * Checks if a number is a Uint32 (32-bit unsigned integer in the range [0, 2^32)).
11
+ * Checks if a number is a Uint32 (32-bit unsigned integer in the range [0,
12
+ * 2^32)).
13
+ *
12
14
  * @param value The value to check.
13
15
  * @returns `true` if the value is a Uint32, `false` otherwise.
14
16
  */
15
17
  const isUint32 = is;
16
18
  /**
17
19
  * Casts a number to a Uint32 type.
20
+ *
18
21
  * @param value The value to cast.
19
22
  * @returns The value as a Uint32 type.
20
- * @throws {TypeError} If the value is not a non-negative integer less than 2^32.
21
- * @example
22
- * ```typescript
23
- * const x = asUint32(1000000); // Uint32
24
- * const y = asUint32(0); // Uint32
25
- * // asUint32(-1); // throws TypeError
26
- * // asUint32(5000000000); // throws TypeError
27
- * ```
23
+ * @throws {TypeError} If the value is not a non-negative integer less than
24
+ * 2^32.
28
25
  */
29
26
  const asUint32 = castType;
30
27
  /**
31
- * Utility functions for working with Uint32 (32-bit unsigned integer) branded types.
32
- * Provides type-safe operations that ensure results remain within the valid range [0, 2^32).
33
- * All arithmetic operations are clamped to maintain the Uint32 constraint.
34
- *
35
- * @example
36
- * ```typescript
37
- * // Type checking
38
- * Uint32.is(1000000); // true
39
- * Uint32.is(-1); // false
40
- * Uint32.is(5000000000); // false (exceeds 2^32)
41
- *
42
- * // Constants
43
- * console.log(Uint32.MIN_VALUE); // 0
44
- * console.log(Uint32.MAX_VALUE); // 4294967295 (2^32 - 1)
45
- *
46
- * // Arithmetic operations (all results clamped to [0, 2^32))
47
- * const a = asUint32(1000000);
48
- * const b = asUint32(500000);
49
- *
50
- * Uint32.add(a, b); // Uint32 (1500000)
51
- * Uint32.sub(a, b); // Uint32 (500000)
52
- * Uint32.mul(a, b); // Uint32 (clamped if overflow)
53
- * Uint32.div(a, b); // Uint32 (2)
54
- * Uint32.pow(asUint32(2), asUint32(10)); // Uint32 (1024)
55
- *
56
- * // Utility functions
57
- * Uint32.min(a, b); // Uint32 (500000)
58
- * Uint32.max(a, b); // Uint32 (1000000)
59
- * Uint32.clamp(asUint32(5000000000), Uint32.MIN_VALUE, Uint32.MAX_VALUE); // Uint32 (MAX_VALUE)
60
- * Uint32.random(); // Random Uint32
61
- * ```
28
+ * Utility functions for working with Uint32 (32-bit unsigned integer) branded
29
+ * types. Provides type-safe operations that ensure results remain within the
30
+ * valid range [0, 2^32). All arithmetic operations are clamped to maintain the
31
+ * Uint32 constraint.
62
32
  */
63
33
  const Uint32 = {
64
34
  /**
65
35
  * Type guard that checks if a value is a 32-bit unsigned integer.
36
+ *
66
37
  * @param value - The value to check
67
- * @returns `true` if the value is within the range [0, 2^32), `false` otherwise
38
+ * @returns `true` if the value is within the range [0, 2^32), `false`
39
+ * otherwise
68
40
  */
69
41
  is,
70
42
  /**
71
43
  * The minimum value for a Uint32.
44
+ *
72
45
  * @readonly
73
46
  */
74
47
  MIN_VALUE,
75
48
  /**
76
49
  * The maximum value for a Uint32.
50
+ *
77
51
  * @readonly
78
52
  */
79
53
  MAX_VALUE,
80
54
  /**
81
55
  * Returns the minimum of multiple Uint32 values.
56
+ *
82
57
  * @param values - The Uint32 values to compare
83
58
  * @returns The smallest value as a Uint32
84
59
  */
85
60
  min: min_,
86
61
  /**
87
62
  * Returns the maximum of multiple Uint32 values.
63
+ *
88
64
  * @param values - The Uint32 values to compare
89
65
  * @returns The largest value as a Uint32
90
66
  */
91
67
  max: max_,
92
68
  /**
93
69
  * Clamps a Uint32 to be within the specified range.
70
+ *
94
71
  * @param value - The value to clamp
95
72
  * @param min - The minimum value
96
73
  * @param max - The maximum value
97
74
  * @returns The clamped value as a Uint32
98
- * @example
99
- * ```typescript
100
- * Uint32.clamp(asUint32(5000000000), Uint32.MIN_VALUE, asUint32(1000)); // Uint32 (1000)
101
- * ```
102
75
  */
103
76
  clamp,
104
77
  /**
105
78
  * Generates a random Uint32 value.
79
+ *
106
80
  * @returns A random Uint32 value within [0, 2^32)
107
81
  */
108
82
  random,
109
83
  /**
110
84
  * Raises a Uint32 to a power, with result clamped to [0, 2^32).
85
+ *
111
86
  * @param a - The base Uint32
112
87
  * @param b - The exponent Uint32
113
88
  * @returns `a ** b` as a Uint32, clamped to valid range
114
- * @example
115
- * ```typescript
116
- * Uint32.pow(asUint32(2), asUint32(10)); // Uint32 (1024)
117
- * ```
118
89
  */
119
90
  pow,
120
91
  /**
121
92
  * Adds two Uint32 values, with result clamped to [0, 2^32).
93
+ *
122
94
  * @param a - First Uint32
123
95
  * @param b - Second Uint32
124
96
  * @returns `a + b` as a Uint32, clamped to valid range
125
- * @example
126
- * ```typescript
127
- * Uint32.add(asUint32(1000000), asUint32(500000)); // Uint32 (1500000)
128
- * ```
129
97
  */
130
98
  add,
131
99
  /**
132
100
  * Subtracts two Uint32 values, with result clamped to [0, 2^32).
101
+ *
133
102
  * @param a - First Uint32
134
103
  * @param b - Second Uint32
135
104
  * @returns `a - b` as a Uint32, clamped to valid range (minimum 0)
136
- * @example
137
- * ```typescript
138
- * Uint32.sub(asUint32(1000000), asUint32(500000)); // Uint32 (500000)
139
- * Uint32.sub(asUint32(100), asUint32(500)); // Uint32 (0) - clamped
140
- * ```
141
105
  */
142
106
  sub,
143
107
  /**
144
108
  * Multiplies two Uint32 values, with result clamped to [0, 2^32).
109
+ *
145
110
  * @param a - First Uint32
146
111
  * @param b - Second Uint32
147
112
  * @returns `a * b` as a Uint32, clamped to valid range
148
- * @example
149
- * ```typescript
150
- * Uint32.mul(asUint32(1000), asUint32(500)); // Uint32 (500000)
151
- * ```
152
113
  */
153
114
  mul,
154
115
  /**
155
- * Divides two Uint32 values using floor division, with result clamped to [0, 2^32).
116
+ * Divides two Uint32 values using floor division, with result clamped to [0,
117
+ * 2^32).
118
+ *
156
119
  * @param a - The dividend Uint32
157
120
  * @param b - The divisor Uint32
158
121
  * @returns `⌊a / b⌋` as a Uint32, clamped to valid range
159
- * @example
160
- * ```typescript
161
- * Uint32.div(asUint32(1000000), asUint32(500000)); // Uint32 (2)
162
- * Uint32.div(asUint32(7), asUint32(3)); // Uint32 (2) - floor division
163
- * ```
164
122
  */
165
123
  div,
166
124
  };
@@ -1 +1 @@
1
- {"version":3,"file":"uint32.mjs","sources":["../../../src/number/branded-types/uint32.mts"],"sourcesContent":[null],"names":[],"mappings":";;AAKA,MAAM,iBAAiB,GAAG,uCAAuC;AAEjE,MAAM,EACJ,SAAS,EACT,SAAS,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,MAAM,EACN,EAAE,EACF,QAAQ,EACR,KAAK,GACN,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,mBAAmB,CAI7D;AACA,IAAA,oBAAoB,EAAE,aAAa;AACnC,IAAA,SAAS,EAAE,CAAC;AACZ,IAAA,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;IACtB,iBAAiB;AACT,CAAA,CAAC;AAEX;;;;AAIG;AACI,MAAM,QAAQ,GAAG;AAExB;;;;;;;;;;;;AAYG;AACI,MAAM,QAAQ,GAAG;AAExB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAgCG;AACI,MAAM,MAAM,GAAG;AACpB;;;;AAIG;IACH,EAAE;AAEF;;;AAGG;IACH,SAAS;AAET;;;AAGG;IACH,SAAS;AAET;;;;AAIG;AACH,IAAA,GAAG,EAAE,IAAI;AAET;;;;AAIG;AACH,IAAA,GAAG,EAAE,IAAI;AAET;;;;;;;;;;AAUG;IACH,KAAK;AAEL;;;AAGG;IACH,MAAM;AAEN;;;;;;;;;AASG;IACH,GAAG;AAEH;;;;;;;;;AASG;IACH,GAAG;AAEH;;;;;;;;;;AAUG;IACH,GAAG;AAEH;;;;;;;;;AASG;IACH,GAAG;AAEH;;;;;;;;;;AAUG;IACH,GAAG;;;;;"}
1
+ {"version":3,"file":"uint32.mjs","sources":["../../../src/number/branded-types/uint32.mts"],"sourcesContent":[null],"names":[],"mappings":";;AAKA,MAAM,iBAAiB,GAAG,uCAAuC;AAEjE,MAAM,EACJ,SAAS,EACT,SAAS,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,GAAG,EACH,MAAM,EACN,EAAE,EACF,QAAQ,EACR,KAAK,GACN,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,mBAAmB,CAI7D;AACA,IAAA,oBAAoB,EAAE,aAAa;AACnC,IAAA,SAAS,EAAE,CAAC;AACZ,IAAA,SAAS,EAAE,CAAC,IAAI,EAAE,GAAG,CAAC;IACtB,iBAAiB;AACT,CAAA,CAAC;AAEX;;;;;;AAMG;AACI,MAAM,QAAQ,GAAG;AAExB;;;;;;;AAOG;AACI,MAAM,QAAQ,GAAG;AAExB;;;;;AAKG;AACI,MAAM,MAAM,GAAG;AACpB;;;;;;AAMG;IACH,EAAE;AAEF;;;;AAIG;IACH,SAAS;AAET;;;;AAIG;IACH,SAAS;AAET;;;;;AAKG;AACH,IAAA,GAAG,EAAE,IAAI;AAET;;;;;AAKG;AACH,IAAA,GAAG,EAAE,IAAI;AAET;;;;;;;AAOG;IACH,KAAK;AAEL;;;;AAIG;IACH,MAAM;AAEN;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;;AAOG;IACH,GAAG;;;;;"}