ts-data-forge 9.0.0 → 10.0.0

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 (447) hide show
  1. package/README.md +1 -1
  2. package/dist/array/impl/array-utils-creation.d.mts +4 -4
  3. package/dist/array/impl/array-utils-creation.d.mts.map +1 -1
  4. package/dist/array/impl/array-utils-creation.mjs +17 -112
  5. package/dist/array/impl/array-utils-creation.mjs.map +1 -1
  6. package/dist/array/impl/array-utils-element-access.d.mts.map +1 -1
  7. package/dist/array/impl/array-utils-element-access.mjs +22 -61
  8. package/dist/array/impl/array-utils-element-access.mjs.map +1 -1
  9. package/dist/array/impl/array-utils-iterators.d.mts.map +1 -1
  10. package/dist/array/impl/array-utils-iterators.mjs +9 -63
  11. package/dist/array/impl/array-utils-iterators.mjs.map +1 -1
  12. package/dist/array/impl/array-utils-modification.d.mts +7 -7
  13. package/dist/array/impl/array-utils-modification.d.mts.map +1 -1
  14. package/dist/array/impl/array-utils-modification.mjs +78 -78
  15. package/dist/array/impl/array-utils-modification.mjs.map +1 -1
  16. package/dist/array/impl/array-utils-reducing-value.mjs +95 -89
  17. package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -1
  18. package/dist/array/impl/array-utils-search.mjs +100 -92
  19. package/dist/array/impl/array-utils-search.mjs.map +1 -1
  20. package/dist/array/impl/array-utils-set-op.d.mts.map +1 -1
  21. package/dist/array/impl/array-utils-set-op.mjs +31 -141
  22. package/dist/array/impl/array-utils-set-op.mjs.map +1 -1
  23. package/dist/array/impl/array-utils-size.d.mts.map +1 -1
  24. package/dist/array/impl/array-utils-size.mjs +4 -8
  25. package/dist/array/impl/array-utils-size.mjs.map +1 -1
  26. package/dist/array/impl/array-utils-slice-clamped.mjs +11 -12
  27. package/dist/array/impl/array-utils-slice-clamped.mjs.map +1 -1
  28. package/dist/array/impl/array-utils-slicing.d.mts.map +1 -1
  29. package/dist/array/impl/array-utils-slicing.mjs +44 -96
  30. package/dist/array/impl/array-utils-slicing.mjs.map +1 -1
  31. package/dist/array/impl/array-utils-transformation.d.mts +4 -4
  32. package/dist/array/impl/array-utils-transformation.d.mts.map +1 -1
  33. package/dist/array/impl/array-utils-transformation.mjs +150 -292
  34. package/dist/array/impl/array-utils-transformation.mjs.map +1 -1
  35. package/dist/array/impl/array-utils-validation.d.mts +17 -17
  36. package/dist/array/impl/array-utils-validation.d.mts.map +1 -1
  37. package/dist/array/impl/array-utils-validation.mjs +23 -174
  38. package/dist/array/impl/array-utils-validation.mjs.map +1 -1
  39. package/dist/array/impl/index.mjs +1 -1
  40. package/dist/collections/imap-mapped.d.mts.map +1 -1
  41. package/dist/collections/imap-mapped.mjs +243 -330
  42. package/dist/collections/imap-mapped.mjs.map +1 -1
  43. package/dist/collections/imap.d.mts.map +1 -1
  44. package/dist/collections/imap.mjs +190 -275
  45. package/dist/collections/imap.mjs.map +1 -1
  46. package/dist/collections/iset-mapped.d.mts +1 -1
  47. package/dist/collections/iset-mapped.d.mts.map +1 -1
  48. package/dist/collections/iset-mapped.mjs +222 -444
  49. package/dist/collections/iset-mapped.mjs.map +1 -1
  50. package/dist/collections/iset.d.mts +1 -1
  51. package/dist/collections/iset.d.mts.map +1 -1
  52. package/dist/collections/iset.mjs +158 -324
  53. package/dist/collections/iset.mjs.map +1 -1
  54. package/dist/collections/queue.d.mts.map +1 -1
  55. package/dist/collections/queue.mjs +106 -178
  56. package/dist/collections/queue.mjs.map +1 -1
  57. package/dist/collections/stack.d.mts.map +1 -1
  58. package/dist/collections/stack.mjs +95 -165
  59. package/dist/collections/stack.mjs.map +1 -1
  60. package/dist/entry-point.mjs +2 -0
  61. package/dist/entry-point.mjs.map +1 -1
  62. package/dist/expect-type.d.mts +1 -1
  63. package/dist/expect-type.d.mts.map +1 -1
  64. package/dist/expect-type.mjs +1 -69
  65. package/dist/expect-type.mjs.map +1 -1
  66. package/dist/functional/match.mjs +9 -9
  67. package/dist/functional/match.mjs.map +1 -1
  68. package/dist/functional/optional/impl/optional-expect-to-be.mjs +13 -14
  69. package/dist/functional/optional/impl/optional-expect-to-be.mjs.map +1 -1
  70. package/dist/functional/optional/impl/optional-filter.mjs +14 -15
  71. package/dist/functional/optional/impl/optional-filter.mjs.map +1 -1
  72. package/dist/functional/optional/impl/optional-flat-map.mjs +10 -11
  73. package/dist/functional/optional/impl/optional-flat-map.mjs.map +1 -1
  74. package/dist/functional/optional/impl/optional-from-nullable.d.mts.map +1 -1
  75. package/dist/functional/optional/impl/optional-from-nullable.mjs +1 -25
  76. package/dist/functional/optional/impl/optional-from-nullable.mjs.map +1 -1
  77. package/dist/functional/optional/impl/optional-is-none.d.mts.map +1 -1
  78. package/dist/functional/optional/impl/optional-is-none.mjs +0 -19
  79. package/dist/functional/optional/impl/optional-is-none.mjs.map +1 -1
  80. package/dist/functional/optional/impl/optional-is-optional.d.mts.map +1 -1
  81. package/dist/functional/optional/impl/optional-is-optional.mjs +1 -23
  82. package/dist/functional/optional/impl/optional-is-optional.mjs.map +1 -1
  83. package/dist/functional/optional/impl/optional-is-some.d.mts.map +1 -1
  84. package/dist/functional/optional/impl/optional-is-some.mjs +0 -20
  85. package/dist/functional/optional/impl/optional-is-some.mjs.map +1 -1
  86. package/dist/functional/optional/impl/optional-map.mjs +13 -14
  87. package/dist/functional/optional/impl/optional-map.mjs.map +1 -1
  88. package/dist/functional/optional/impl/optional-none.mjs +0 -16
  89. package/dist/functional/optional/impl/optional-none.mjs.map +1 -1
  90. package/dist/functional/optional/impl/optional-or-else.mjs +10 -11
  91. package/dist/functional/optional/impl/optional-or-else.mjs.map +1 -1
  92. package/dist/functional/optional/impl/optional-some.d.mts.map +1 -1
  93. package/dist/functional/optional/impl/optional-some.mjs +2 -21
  94. package/dist/functional/optional/impl/optional-some.mjs.map +1 -1
  95. package/dist/functional/optional/impl/optional-to-nullable.d.mts.map +1 -1
  96. package/dist/functional/optional/impl/optional-to-nullable.mjs +1 -27
  97. package/dist/functional/optional/impl/optional-to-nullable.mjs.map +1 -1
  98. package/dist/functional/optional/impl/optional-unwrap-or.mjs +9 -10
  99. package/dist/functional/optional/impl/optional-unwrap-or.mjs.map +1 -1
  100. package/dist/functional/optional/impl/optional-unwrap-throw.d.mts.map +1 -1
  101. package/dist/functional/optional/impl/optional-unwrap-throw.mjs +4 -32
  102. package/dist/functional/optional/impl/optional-unwrap-throw.mjs.map +1 -1
  103. package/dist/functional/optional/impl/optional-unwrap.mjs +4 -4
  104. package/dist/functional/optional/impl/optional-unwrap.mjs.map +1 -1
  105. package/dist/functional/optional/impl/optional-zip.d.mts.map +1 -1
  106. package/dist/functional/optional/impl/optional-zip.mjs +1 -35
  107. package/dist/functional/optional/impl/optional-zip.mjs.map +1 -1
  108. package/dist/functional/optional/impl/tag.mjs +2 -3
  109. package/dist/functional/optional/impl/tag.mjs.map +1 -1
  110. package/dist/functional/pipe.d.mts.map +1 -1
  111. package/dist/functional/pipe.mjs +9 -34
  112. package/dist/functional/pipe.mjs.map +1 -1
  113. package/dist/functional/result/impl/result-err.d.mts.map +1 -1
  114. package/dist/functional/result/impl/result-err.mjs +2 -27
  115. package/dist/functional/result/impl/result-err.mjs.map +1 -1
  116. package/dist/functional/result/impl/result-expect-to-be.mjs +13 -15
  117. package/dist/functional/result/impl/result-expect-to-be.mjs.map +1 -1
  118. package/dist/functional/result/impl/result-flat-map.mjs +16 -16
  119. package/dist/functional/result/impl/result-flat-map.mjs.map +1 -1
  120. package/dist/functional/result/impl/result-fold.mjs +16 -16
  121. package/dist/functional/result/impl/result-fold.mjs.map +1 -1
  122. package/dist/functional/result/impl/result-from-promise.d.mts.map +1 -1
  123. package/dist/functional/result/impl/result-from-promise.mjs +4 -31
  124. package/dist/functional/result/impl/result-from-promise.mjs.map +1 -1
  125. package/dist/functional/result/impl/result-from-throwable.d.mts.map +1 -1
  126. package/dist/functional/result/impl/result-from-throwable.mjs +8 -38
  127. package/dist/functional/result/impl/result-from-throwable.mjs.map +1 -1
  128. package/dist/functional/result/impl/result-is-err.d.mts.map +1 -1
  129. package/dist/functional/result/impl/result-is-err.mjs +0 -19
  130. package/dist/functional/result/impl/result-is-err.mjs.map +1 -1
  131. package/dist/functional/result/impl/result-is-ok.d.mts.map +1 -1
  132. package/dist/functional/result/impl/result-is-ok.mjs +0 -19
  133. package/dist/functional/result/impl/result-is-ok.mjs.map +1 -1
  134. package/dist/functional/result/impl/result-is-result.d.mts.map +1 -1
  135. package/dist/functional/result/impl/result-is-result.mjs +1 -23
  136. package/dist/functional/result/impl/result-is-result.mjs.map +1 -1
  137. package/dist/functional/result/impl/result-map-err.mjs +16 -16
  138. package/dist/functional/result/impl/result-map-err.mjs.map +1 -1
  139. package/dist/functional/result/impl/result-map.mjs +16 -16
  140. package/dist/functional/result/impl/result-map.mjs.map +1 -1
  141. package/dist/functional/result/impl/result-ok.d.mts.map +1 -1
  142. package/dist/functional/result/impl/result-ok.mjs +2 -27
  143. package/dist/functional/result/impl/result-ok.mjs.map +1 -1
  144. package/dist/functional/result/impl/result-or-else.mjs +10 -12
  145. package/dist/functional/result/impl/result-or-else.mjs.map +1 -1
  146. package/dist/functional/result/impl/result-swap.d.mts.map +1 -1
  147. package/dist/functional/result/impl/result-swap.mjs +4 -22
  148. package/dist/functional/result/impl/result-swap.mjs.map +1 -1
  149. package/dist/functional/result/impl/result-to-optional.d.mts.map +1 -1
  150. package/dist/functional/result/impl/result-to-optional.mjs +0 -27
  151. package/dist/functional/result/impl/result-to-optional.mjs.map +1 -1
  152. package/dist/functional/result/impl/result-unwrap-err-or.mjs +9 -11
  153. package/dist/functional/result/impl/result-unwrap-err-or.mjs.map +1 -1
  154. package/dist/functional/result/impl/result-unwrap-err-throw.d.mts.map +1 -1
  155. package/dist/functional/result/impl/result-unwrap-err-throw.mjs +13 -40
  156. package/dist/functional/result/impl/result-unwrap-err-throw.mjs.map +1 -1
  157. package/dist/functional/result/impl/result-unwrap-err.d.mts.map +1 -1
  158. package/dist/functional/result/impl/result-unwrap-err.mjs +4 -32
  159. package/dist/functional/result/impl/result-unwrap-err.mjs.map +1 -1
  160. package/dist/functional/result/impl/result-unwrap-ok-or.mjs +9 -11
  161. package/dist/functional/result/impl/result-unwrap-ok-or.mjs.map +1 -1
  162. package/dist/functional/result/impl/result-unwrap-ok.mjs +4 -4
  163. package/dist/functional/result/impl/result-unwrap-ok.mjs.map +1 -1
  164. package/dist/functional/result/impl/result-unwrap-throw.d.mts.map +1 -1
  165. package/dist/functional/result/impl/result-unwrap-throw.mjs +4 -35
  166. package/dist/functional/result/impl/result-unwrap-throw.mjs.map +1 -1
  167. package/dist/functional/result/impl/result-zip.d.mts.map +1 -1
  168. package/dist/functional/result/impl/result-zip.mjs +1 -34
  169. package/dist/functional/result/impl/result-zip.mjs.map +1 -1
  170. package/dist/functional/result/impl/tag.mjs +2 -3
  171. package/dist/functional/result/impl/tag.mjs.map +1 -1
  172. package/dist/functional/ternary-result/impl/tag.mjs +3 -5
  173. package/dist/functional/ternary-result/impl/tag.mjs.map +1 -1
  174. package/dist/functional/ternary-result/impl/ternary-result-err.d.mts.map +1 -1
  175. package/dist/functional/ternary-result/impl/ternary-result-err.mjs +2 -15
  176. package/dist/functional/ternary-result/impl/ternary-result-err.mjs.map +1 -1
  177. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs +13 -13
  178. package/dist/functional/ternary-result/impl/ternary-result-expect-to-be.mjs.map +1 -1
  179. package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs +27 -26
  180. package/dist/functional/ternary-result/impl/ternary-result-flat-map.mjs.map +1 -1
  181. package/dist/functional/ternary-result/impl/ternary-result-fold.mjs +21 -22
  182. package/dist/functional/ternary-result/impl/ternary-result-fold.mjs.map +1 -1
  183. package/dist/functional/ternary-result/impl/ternary-result-from-promise.d.mts.map +1 -1
  184. package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs +4 -20
  185. package/dist/functional/ternary-result/impl/ternary-result-from-promise.mjs.map +1 -1
  186. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.d.mts.map +1 -1
  187. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs +7 -25
  188. package/dist/functional/ternary-result/impl/ternary-result-from-throwable.mjs.map +1 -1
  189. package/dist/functional/ternary-result/impl/ternary-result-is-err.d.mts.map +1 -1
  190. package/dist/functional/ternary-result/impl/ternary-result-is-err.mjs +0 -17
  191. package/dist/functional/ternary-result/impl/ternary-result-is-err.mjs.map +1 -1
  192. package/dist/functional/ternary-result/impl/ternary-result-is-ok.d.mts.map +1 -1
  193. package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs +0 -19
  194. package/dist/functional/ternary-result/impl/ternary-result-is-ok.mjs.map +1 -1
  195. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.d.mts.map +1 -1
  196. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs +1 -25
  197. package/dist/functional/ternary-result/impl/ternary-result-is-ternary-result.mjs.map +1 -1
  198. package/dist/functional/ternary-result/impl/ternary-result-is-warn.d.mts.map +1 -1
  199. package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs +0 -18
  200. package/dist/functional/ternary-result/impl/ternary-result-is-warn.mjs.map +1 -1
  201. package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs +13 -15
  202. package/dist/functional/ternary-result/impl/ternary-result-map-err.mjs.map +1 -1
  203. package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs +18 -18
  204. package/dist/functional/ternary-result/impl/ternary-result-map-warn.mjs.map +1 -1
  205. package/dist/functional/ternary-result/impl/ternary-result-map.mjs +21 -22
  206. package/dist/functional/ternary-result/impl/ternary-result-map.mjs.map +1 -1
  207. package/dist/functional/ternary-result/impl/ternary-result-ok.d.mts.map +1 -1
  208. package/dist/functional/ternary-result/impl/ternary-result-ok.mjs +2 -16
  209. package/dist/functional/ternary-result/impl/ternary-result-ok.mjs.map +1 -1
  210. package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs +9 -9
  211. package/dist/functional/ternary-result/impl/ternary-result-or-else.mjs.map +1 -1
  212. package/dist/functional/ternary-result/impl/ternary-result-to-optional.d.mts.map +1 -1
  213. package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs +4 -22
  214. package/dist/functional/ternary-result/impl/ternary-result-to-optional.mjs.map +1 -1
  215. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs +9 -9
  216. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-or.mjs.map +1 -1
  217. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.d.mts.map +1 -1
  218. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs +12 -27
  219. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err-throw.mjs.map +1 -1
  220. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.d.mts.map +1 -1
  221. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs +4 -19
  222. package/dist/functional/ternary-result/impl/ternary-result-unwrap-err.mjs.map +1 -1
  223. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs +9 -9
  224. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok-or.mjs.map +1 -1
  225. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs +4 -5
  226. package/dist/functional/ternary-result/impl/ternary-result-unwrap-ok.mjs.map +1 -1
  227. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.d.mts.map +1 -1
  228. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs +15 -27
  229. package/dist/functional/ternary-result/impl/ternary-result-unwrap-throw.mjs.map +1 -1
  230. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs +9 -9
  231. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-or.mjs.map +1 -1
  232. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.d.mts.map +1 -1
  233. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs +10 -24
  234. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn-throw.mjs.map +1 -1
  235. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.d.mts.map +1 -1
  236. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs +4 -19
  237. package/dist/functional/ternary-result/impl/ternary-result-unwrap-warn.mjs.map +1 -1
  238. package/dist/functional/ternary-result/impl/ternary-result-warn.d.mts.map +1 -1
  239. package/dist/functional/ternary-result/impl/ternary-result-warn.mjs +3 -19
  240. package/dist/functional/ternary-result/impl/ternary-result-warn.mjs.map +1 -1
  241. package/dist/functional/ternary-result/impl/ternary-result-zip.d.mts.map +1 -1
  242. package/dist/functional/ternary-result/impl/ternary-result-zip.mjs +14 -45
  243. package/dist/functional/ternary-result/impl/ternary-result-zip.mjs.map +1 -1
  244. package/dist/functional/ternary-result/impl/variant-name.d.mts +1 -1
  245. package/dist/functional/ternary-result/impl/variant-name.d.mts.map +1 -1
  246. package/dist/functional/ternary-result/impl/variant-name.mjs +8 -9
  247. package/dist/functional/ternary-result/impl/variant-name.mjs.map +1 -1
  248. package/dist/guard/as-length-bounded-array.d.mts +117 -0
  249. package/dist/guard/as-length-bounded-array.d.mts.map +1 -0
  250. package/dist/guard/as-length-bounded-array.mjs +37 -0
  251. package/dist/guard/as-length-bounded-array.mjs.map +1 -0
  252. package/dist/guard/has-key.d.mts.map +1 -1
  253. package/dist/guard/has-key.mjs +0 -41
  254. package/dist/guard/has-key.mjs.map +1 -1
  255. package/dist/guard/index.d.mts +2 -0
  256. package/dist/guard/index.d.mts.map +1 -1
  257. package/dist/guard/index.mjs +2 -0
  258. package/dist/guard/index.mjs.map +1 -1
  259. package/dist/guard/is-length-bounded-array.d.mts +159 -0
  260. package/dist/guard/is-length-bounded-array.d.mts.map +1 -0
  261. package/dist/guard/is-length-bounded-array.mjs +7 -0
  262. package/dist/guard/is-length-bounded-array.mjs.map +1 -0
  263. package/dist/guard/is-length-bounded-string.d.mts +5 -6
  264. package/dist/guard/is-length-bounded-string.d.mts.map +1 -1
  265. package/dist/guard/is-length-bounded-string.mjs +0 -157
  266. package/dist/guard/is-length-bounded-string.mjs.map +1 -1
  267. package/dist/guard/is-non-empty-string.d.mts +1 -1
  268. package/dist/guard/is-non-empty-string.d.mts.map +1 -1
  269. package/dist/guard/is-non-empty-string.mjs +1 -38
  270. package/dist/guard/is-non-empty-string.mjs.map +1 -1
  271. package/dist/guard/is-non-null-object.d.mts.map +1 -1
  272. package/dist/guard/is-non-null-object.mjs +1 -35
  273. package/dist/guard/is-non-null-object.mjs.map +1 -1
  274. package/dist/guard/is-primitive.d.mts.map +1 -1
  275. package/dist/guard/is-primitive.mjs +12 -43
  276. package/dist/guard/is-primitive.mjs.map +1 -1
  277. package/dist/guard/is-record.d.mts.map +1 -1
  278. package/dist/guard/is-record.mjs +0 -86
  279. package/dist/guard/is-record.mjs.map +1 -1
  280. package/dist/guard/is-type.d.mts.map +1 -1
  281. package/dist/guard/is-type.mjs +12 -399
  282. package/dist/guard/is-type.mjs.map +1 -1
  283. package/dist/guard/key-is-in.d.mts.map +1 -1
  284. package/dist/guard/key-is-in.mjs +0 -40
  285. package/dist/guard/key-is-in.mjs.map +1 -1
  286. package/dist/index.mjs +2 -0
  287. package/dist/index.mjs.map +1 -1
  288. package/dist/iterator/range.mjs +16 -16
  289. package/dist/iterator/range.mjs.map +1 -1
  290. package/dist/json/json.d.mts.map +1 -1
  291. package/dist/json/json.mjs +52 -340
  292. package/dist/json/json.mjs.map +1 -1
  293. package/dist/number/branded-types/finite-number.d.mts +3 -3
  294. package/dist/number/branded-types/finite-number.mjs +135 -154
  295. package/dist/number/branded-types/finite-number.mjs.map +1 -1
  296. package/dist/number/branded-types/int.d.mts +4 -4
  297. package/dist/number/branded-types/int.mjs +205 -245
  298. package/dist/number/branded-types/int.mjs.map +1 -1
  299. package/dist/number/branded-types/int16.d.mts +15 -15
  300. package/dist/number/branded-types/int16.mjs +116 -123
  301. package/dist/number/branded-types/int16.mjs.map +1 -1
  302. package/dist/number/branded-types/int32.d.mts +11 -11
  303. package/dist/number/branded-types/int32.mjs +116 -123
  304. package/dist/number/branded-types/int32.mjs.map +1 -1
  305. package/dist/number/branded-types/negative-finite-number.d.mts +4 -4
  306. package/dist/number/branded-types/negative-finite-number.mjs +129 -144
  307. package/dist/number/branded-types/negative-finite-number.mjs.map +1 -1
  308. package/dist/number/branded-types/negative-int.d.mts +5 -5
  309. package/dist/number/branded-types/negative-int.mjs +94 -113
  310. package/dist/number/branded-types/negative-int.mjs.map +1 -1
  311. package/dist/number/branded-types/negative-safe-int.d.mts +5 -5
  312. package/dist/number/branded-types/negative-safe-int.mjs +103 -124
  313. package/dist/number/branded-types/negative-safe-int.mjs.map +1 -1
  314. package/dist/number/branded-types/non-negative-finite-number.d.mts +5 -5
  315. package/dist/number/branded-types/non-negative-finite-number.mjs +136 -142
  316. package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
  317. package/dist/number/branded-types/non-negative-int16.d.mts +16 -16
  318. package/dist/number/branded-types/non-negative-int16.mjs +109 -118
  319. package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
  320. package/dist/number/branded-types/non-negative-int32.d.mts +12 -12
  321. package/dist/number/branded-types/non-negative-int32.mjs +110 -119
  322. package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
  323. package/dist/number/branded-types/non-positive-finite-number.d.mts +3 -3
  324. package/dist/number/branded-types/non-positive-finite-number.mjs +120 -124
  325. package/dist/number/branded-types/non-positive-finite-number.mjs.map +1 -1
  326. package/dist/number/branded-types/non-positive-int.d.mts +4 -4
  327. package/dist/number/branded-types/non-positive-int.mjs +167 -212
  328. package/dist/number/branded-types/non-positive-int.mjs.map +1 -1
  329. package/dist/number/branded-types/non-positive-safe-int.d.mts +4 -4
  330. package/dist/number/branded-types/non-positive-safe-int.mjs +95 -106
  331. package/dist/number/branded-types/non-positive-safe-int.mjs.map +1 -1
  332. package/dist/number/branded-types/non-zero-finite-number.d.mts +4 -4
  333. package/dist/number/branded-types/non-zero-finite-number.mjs +114 -123
  334. package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
  335. package/dist/number/branded-types/non-zero-int.d.mts +2 -2
  336. package/dist/number/branded-types/non-zero-int.mjs +72 -83
  337. package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
  338. package/dist/number/branded-types/non-zero-int16.d.mts +7 -7
  339. package/dist/number/branded-types/non-zero-int16.mjs +96 -107
  340. package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
  341. package/dist/number/branded-types/non-zero-int32.d.mts +5 -5
  342. package/dist/number/branded-types/non-zero-int32.mjs +97 -108
  343. package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
  344. package/dist/number/branded-types/non-zero-safe-int.d.mts +2 -2
  345. package/dist/number/branded-types/non-zero-safe-int.mjs +100 -111
  346. package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
  347. package/dist/number/branded-types/non-zero-uint16.d.mts +8 -8
  348. package/dist/number/branded-types/non-zero-uint16.mjs +96 -107
  349. package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
  350. package/dist/number/branded-types/non-zero-uint32.d.mts +6 -6
  351. package/dist/number/branded-types/non-zero-uint32.mjs +96 -107
  352. package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
  353. package/dist/number/branded-types/positive-finite-number.d.mts +8 -8
  354. package/dist/number/branded-types/positive-finite-number.mjs +139 -141
  355. package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
  356. package/dist/number/branded-types/positive-int.d.mts +11 -11
  357. package/dist/number/branded-types/positive-int.mjs +228 -271
  358. package/dist/number/branded-types/positive-int.mjs.map +1 -1
  359. package/dist/number/branded-types/positive-int16.d.mts +19 -19
  360. package/dist/number/branded-types/positive-int16.mjs +109 -118
  361. package/dist/number/branded-types/positive-int16.mjs.map +1 -1
  362. package/dist/number/branded-types/positive-int32.d.mts +15 -15
  363. package/dist/number/branded-types/positive-int32.mjs +109 -118
  364. package/dist/number/branded-types/positive-int32.mjs.map +1 -1
  365. package/dist/number/branded-types/positive-safe-int.d.mts +11 -11
  366. package/dist/number/branded-types/positive-safe-int.mjs +244 -275
  367. package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
  368. package/dist/number/branded-types/positive-uint16.d.mts +17 -17
  369. package/dist/number/branded-types/positive-uint16.mjs +109 -118
  370. package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
  371. package/dist/number/branded-types/positive-uint32.d.mts +13 -13
  372. package/dist/number/branded-types/positive-uint32.mjs +110 -119
  373. package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
  374. package/dist/number/branded-types/safe-int.d.mts +4 -4
  375. package/dist/number/branded-types/safe-int.mjs +251 -292
  376. package/dist/number/branded-types/safe-int.mjs.map +1 -1
  377. package/dist/number/branded-types/safe-uint.d.mts +8 -8
  378. package/dist/number/branded-types/safe-uint.mjs +111 -119
  379. package/dist/number/branded-types/safe-uint.mjs.map +1 -1
  380. package/dist/number/branded-types/uint.d.mts +8 -8
  381. package/dist/number/branded-types/uint.mjs +198 -225
  382. package/dist/number/branded-types/uint.mjs.map +1 -1
  383. package/dist/number/branded-types/uint16.d.mts +14 -14
  384. package/dist/number/branded-types/uint16.mjs +109 -119
  385. package/dist/number/branded-types/uint16.mjs.map +1 -1
  386. package/dist/number/branded-types/uint32.d.mts +10 -10
  387. package/dist/number/branded-types/uint32.mjs +110 -117
  388. package/dist/number/branded-types/uint32.mjs.map +1 -1
  389. package/dist/number/enum/int8.mjs +119 -145
  390. package/dist/number/enum/int8.mjs.map +1 -1
  391. package/dist/number/enum/uint8.mjs +107 -121
  392. package/dist/number/enum/uint8.mjs.map +1 -1
  393. package/dist/number/num.d.mts +2 -2
  394. package/dist/number/num.d.mts.map +1 -1
  395. package/dist/number/num.mjs +76 -537
  396. package/dist/number/num.mjs.map +1 -1
  397. package/dist/number/refined-number-utils.d.mts +1 -1
  398. package/dist/number/refined-number-utils.d.mts.map +1 -1
  399. package/dist/number/refined-number-utils.mjs +127 -263
  400. package/dist/number/refined-number-utils.mjs.map +1 -1
  401. package/dist/object/object.d.mts.map +1 -1
  402. package/dist/object/object.mjs +107 -222
  403. package/dist/object/object.mjs.map +1 -1
  404. package/dist/others/cast-mutable.d.mts.map +1 -1
  405. package/dist/others/cast-mutable.mjs +8 -37
  406. package/dist/others/cast-mutable.mjs.map +1 -1
  407. package/dist/others/cast-readonly.d.mts.map +1 -1
  408. package/dist/others/cast-readonly.mjs +8 -36
  409. package/dist/others/cast-readonly.mjs.map +1 -1
  410. package/dist/others/debounce-function.d.mts.map +1 -1
  411. package/dist/others/debounce-function.mjs +7 -16
  412. package/dist/others/debounce-function.mjs.map +1 -1
  413. package/dist/others/fast-deep-equal.d.mts.map +1 -1
  414. package/dist/others/fast-deep-equal.mjs +43 -59
  415. package/dist/others/fast-deep-equal.mjs.map +1 -1
  416. package/dist/others/if-then.d.mts.map +1 -1
  417. package/dist/others/if-then.mjs +0 -29
  418. package/dist/others/if-then.mjs.map +1 -1
  419. package/dist/others/map-nullable.mjs +9 -9
  420. package/dist/others/map-nullable.mjs.map +1 -1
  421. package/dist/others/memoize-function.mjs +12 -12
  422. package/dist/others/memoize-function.mjs.map +1 -1
  423. package/dist/others/tuple.d.mts.map +1 -1
  424. package/dist/others/tuple.mjs +0 -50
  425. package/dist/others/tuple.mjs.map +1 -1
  426. package/dist/others/unknown-to-string.d.mts.map +1 -1
  427. package/dist/others/unknown-to-string.mjs +41 -88
  428. package/dist/others/unknown-to-string.mjs.map +1 -1
  429. package/dist/promise/promise.d.mts.map +1 -1
  430. package/dist/promise/promise.mjs +4 -49
  431. package/dist/promise/promise.mjs.map +1 -1
  432. package/package.json +14 -13
  433. package/src/array/impl/array-utils-creation.mts +3 -3
  434. package/src/array/impl/array-utils-modification.mts +7 -7
  435. package/src/array/impl/array-utils-modification.test.mts +4 -4
  436. package/src/array/impl/array-utils-transformation.mts +4 -4
  437. package/src/array/impl/array-utils-transformation.test.mts +7 -7
  438. package/src/array/impl/array-utils-validation.mts +24 -24
  439. package/src/array/impl/array-utils-validation.test.mts +94 -92
  440. package/src/collections/queue.test.mts +1 -1
  441. package/src/guard/as-length-bounded-array.mts +190 -0
  442. package/src/guard/as-length-bounded-array.test.mts +118 -0
  443. package/src/guard/index.mts +2 -0
  444. package/src/guard/is-length-bounded-array.mts +195 -0
  445. package/src/guard/is-length-bounded-array.test.mts +169 -0
  446. package/src/guard/is-length-bounded-string.mts +6 -6
  447. package/src/object/object.test.mts +3 -3
@@ -1,128 +1,118 @@
1
1
  import { TsDataForgeInternals } from '../refined-number-utils.mjs';
2
2
 
3
- const typeNameInMessage = 'a non-negative integer less than 2^16';
4
- const { MAX_VALUE, MIN_VALUE, add, castType, clamp, div, is, max: max_, min: min_, mul, pow, random, sub, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
5
- integerOrSafeInteger: 'SafeInteger',
6
- MIN_VALUE: 0,
7
- MAX_VALUE: 2 ** 16 - 1,
8
- typeNameInMessage,
3
+ const typeNameInMessage = "a non-negative integer less than 2^16";
4
+ const {
5
+ MAX_VALUE,
6
+ MIN_VALUE,
7
+ add,
8
+ castType,
9
+ clamp,
10
+ div,
11
+ is,
12
+ max: max_,
13
+ min: min_,
14
+ mul,
15
+ pow,
16
+ random,
17
+ sub
18
+ } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
19
+ integerOrSafeInteger: "SafeInteger",
20
+ MIN_VALUE: 0,
21
+ MAX_VALUE: 2 ** 16 - 1,
22
+ typeNameInMessage
9
23
  });
10
- /**
11
- * Checks if a number is a Uint16 (16-bit unsigned integer in the range [0,
12
- * 2^16)).
13
- *
14
- * @param value The value to check.
15
- * @returns `true` if the value is a Uint16, `false` otherwise.
16
- */
17
24
  const isUint16 = is;
18
- /**
19
- * Casts a number to a Uint16 type.
20
- *
21
- * @param value The value to cast.
22
- * @returns The value as a Uint16 type.
23
- * @throws {TypeError} If the value is not a non-negative integer less than
24
- * 2^16.
25
- */
26
25
  const asUint16 = castType;
27
- /**
28
- * Namespace providing type-safe arithmetic operations for 16-bit unsigned
29
- * integers.
30
- *
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.
35
- */
36
26
  const Uint16 = {
37
- /**
38
- * Type guard to check if a value is a Uint16.
39
- *
40
- * @param value The value to check.
41
- * @returns `true` if the value is a 16-bit unsigned integer, `false`
42
- * otherwise.
43
- */
44
- is,
45
- /**
46
- * The minimum value for a 16-bit unsigned integer.
47
- *
48
- * @readonly
49
- */
50
- MIN_VALUE,
51
- /**
52
- * The maximum value for a 16-bit unsigned integer.
53
- *
54
- * @readonly
55
- */
56
- MAX_VALUE,
57
- /**
58
- * Returns the smaller of two Uint16 values.
59
- *
60
- * @param a The first Uint16.
61
- * @param b The second Uint16.
62
- * @returns The minimum value as a Uint16.
63
- */
64
- min: min_,
65
- /**
66
- * Returns the larger of two Uint16 values.
67
- *
68
- * @param a The first Uint16.
69
- * @param b The second Uint16.
70
- * @returns The maximum value as a Uint16.
71
- */
72
- max: max_,
73
- /**
74
- * Clamps a number to the Uint16 range.
75
- *
76
- * @param value The number to clamp.
77
- * @returns The value clamped to [0, 65535] as a Uint16.
78
- */
79
- clamp,
80
- /**
81
- * Generates a random Uint16 value within the valid range.
82
- *
83
- * @returns A random Uint16 between 0 and 65535.
84
- */
85
- random,
86
- /**
87
- * Raises a Uint16 to the power of another Uint16.
88
- *
89
- * @param a The base Uint16.
90
- * @param b The exponent Uint16.
91
- * @returns `a ** b` clamped to [0, 65535] as a Uint16.
92
- */
93
- pow,
94
- /**
95
- * Adds two Uint16 values.
96
- *
97
- * @param a The first Uint16.
98
- * @param b The second Uint16.
99
- * @returns `a + b` clamped to [0, 65535] as a Uint16.
100
- */
101
- add,
102
- /**
103
- * Subtracts one Uint16 from another.
104
- *
105
- * @param a The minuend Uint16.
106
- * @param b The subtrahend Uint16.
107
- * @returns `a - b` clamped to [0, 65535] as a Uint16 (minimum 0).
108
- */
109
- sub,
110
- /**
111
- * Multiplies two Uint16 values.
112
- *
113
- * @param a The first Uint16.
114
- * @param b The second Uint16.
115
- * @returns `a * b` clamped to [0, 65535] as a Uint16.
116
- */
117
- mul,
118
- /**
119
- * Divides one Uint16 by another using floor division.
120
- *
121
- * @param a The dividend Uint16.
122
- * @param b The divisor Uint16.
123
- * @returns `⌊a / b⌋` clamped to [0, 65535] as a Uint16.
124
- */
125
- div,
27
+ /**
28
+ * Type guard to check if a value is a Uint16.
29
+ *
30
+ * @param value The value to check.
31
+ * @returns `true` if the value is a 16-bit unsigned integer, `false`
32
+ * otherwise.
33
+ */
34
+ is,
35
+ /**
36
+ * The minimum value for a 16-bit unsigned integer.
37
+ *
38
+ * @readonly
39
+ */
40
+ MIN_VALUE,
41
+ /**
42
+ * The maximum value for a 16-bit unsigned integer.
43
+ *
44
+ * @readonly
45
+ */
46
+ MAX_VALUE,
47
+ /**
48
+ * Returns the smaller of two Uint16 values.
49
+ *
50
+ * @param a The first Uint16.
51
+ * @param b The second Uint16.
52
+ * @returns The minimum value as a Uint16.
53
+ */
54
+ min: min_,
55
+ /**
56
+ * Returns the larger of two Uint16 values.
57
+ *
58
+ * @param a The first Uint16.
59
+ * @param b The second Uint16.
60
+ * @returns The maximum value as a Uint16.
61
+ */
62
+ max: max_,
63
+ /**
64
+ * Clamps a number to the Uint16 range.
65
+ *
66
+ * @param value The number to clamp.
67
+ * @returns The value clamped to [0, 65535] as a Uint16.
68
+ */
69
+ clamp,
70
+ /**
71
+ * Generates a random Uint16 value within the valid range.
72
+ *
73
+ * @returns A random Uint16 between 0 and 65535.
74
+ */
75
+ random,
76
+ /**
77
+ * Raises a Uint16 to the power of another Uint16.
78
+ *
79
+ * @param a The base Uint16.
80
+ * @param b The exponent Uint16.
81
+ * @returns `a ** b` clamped to [0, 65535] as a Uint16.
82
+ */
83
+ pow,
84
+ /**
85
+ * Adds two Uint16 values.
86
+ *
87
+ * @param a The first Uint16.
88
+ * @param b The second Uint16.
89
+ * @returns `a + b` clamped to [0, 65535] as a Uint16.
90
+ */
91
+ add,
92
+ /**
93
+ * Subtracts one Uint16 from another.
94
+ *
95
+ * @param a The minuend Uint16.
96
+ * @param b The subtrahend Uint16.
97
+ * @returns `a - b` clamped to [0, 65535] as a Uint16 (minimum 0).
98
+ */
99
+ sub,
100
+ /**
101
+ * Multiplies two Uint16 values.
102
+ *
103
+ * @param a The first Uint16.
104
+ * @param b The second Uint16.
105
+ * @returns `a * b` clamped to [0, 65535] as a Uint16.
106
+ */
107
+ mul,
108
+ /**
109
+ * Divides one Uint16 by another using floor division.
110
+ *
111
+ * @param a The dividend Uint16.
112
+ * @param b The divisor Uint16.
113
+ * @returns `⌊a / b⌋` clamped to [0, 65535] as a Uint16.
114
+ */
115
+ div
126
116
  };
127
117
 
128
118
  export { Uint16, asUint16, isUint16 };
@@ -1 +1 @@
1
- {"version":3,"file":"uint16.mjs","sources":["../../../src/number/branded-types/uint16.mts"],"sourcesContent":[null],"names":[],"mappings":";;AAQA,MAAM,iBAAiB,GAAG,uCAAuC;AAEjE,MAAM,EACJ,SAAS,EACT,SAAS,EACT,GAAG,EACH,QAAQ,EACR,KAAK,EACL,GAAG,EACH,EAAE,EACF,GAAG,EAAE,IAAI,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EACH,GAAG,EACH,MAAM,EACN,GAAG,GACJ,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
+ {"version":3,"file":"uint16.mjs","sources":["../../../src/number/branded-types/uint16.mts"],"sourcesContent":["import { type Uint16 as TtfImported_Uint16 } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type Uint16 = TtfImported_Uint16;\n\ntype ElementType = Uint16;\n\nconst typeNameInMessage = 'a non-negative integer less than 2^16';\n\nconst {\n MAX_VALUE,\n MIN_VALUE,\n add,\n castType,\n clamp,\n div,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n random,\n sub,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n 0,\n number\n>({\n integerOrSafeInteger: 'SafeInteger',\n MIN_VALUE: 0,\n MAX_VALUE: 2 ** 16 - 1,\n typeNameInMessage,\n} as const);\n\n/**\n * Checks if a number is a Uint16 (16-bit unsigned integer in the range [0,\n * 2^16)).\n *\n * @param value The value to check.\n * @returns `true` if the value is a Uint16, `false` otherwise.\n */\nexport const isUint16 = is;\n\n/**\n * Casts a number to a Uint16 type.\n *\n * @param value The value to cast.\n * @returns The value as a Uint16 type.\n * @throws {TypeError} If the value is not a non-negative integer less than\n * 2^16.\n */\nexport const asUint16 = castType;\n\n/**\n * Namespace providing type-safe arithmetic operations for 16-bit unsigned\n * integers.\n *\n * All operations automatically clamp results to the valid Uint16 range [0,\n * 65535]. This ensures that all arithmetic maintains the 16-bit unsigned\n * integer constraint, with negative results clamped to 0 and overflow results\n * clamped to MAX_VALUE.\n */\nexport const Uint16 = {\n /**\n * Type guard to check if a value is a Uint16.\n *\n * @param value The value to check.\n * @returns `true` if the value is a 16-bit unsigned integer, `false`\n * otherwise.\n */\n is,\n\n /**\n * The minimum value for a 16-bit unsigned integer.\n *\n * @readonly\n */\n MIN_VALUE,\n\n /**\n * The maximum value for a 16-bit unsigned integer.\n *\n * @readonly\n */\n MAX_VALUE,\n\n /**\n * Returns the smaller of two Uint16 values.\n *\n * @param a The first Uint16.\n * @param b The second Uint16.\n * @returns The minimum value as a Uint16.\n */\n min: min_,\n\n /**\n * Returns the larger of two Uint16 values.\n *\n * @param a The first Uint16.\n * @param b The second Uint16.\n * @returns The maximum value as a Uint16.\n */\n max: max_,\n\n /**\n * Clamps a number to the Uint16 range.\n *\n * @param value The number to clamp.\n * @returns The value clamped to [0, 65535] as a Uint16.\n */\n clamp,\n\n /**\n * Generates a random Uint16 value within the valid range.\n *\n * @returns A random Uint16 between 0 and 65535.\n */\n random,\n\n /**\n * Raises a Uint16 to the power of another Uint16.\n *\n * @param a The base Uint16.\n * @param b The exponent Uint16.\n * @returns `a ** b` clamped to [0, 65535] as a Uint16.\n */\n pow,\n\n /**\n * Adds two Uint16 values.\n *\n * @param a The first Uint16.\n * @param b The second Uint16.\n * @returns `a + b` clamped to [0, 65535] as a Uint16.\n */\n add,\n\n /**\n * Subtracts one Uint16 from another.\n *\n * @param a The minuend Uint16.\n * @param b The subtrahend Uint16.\n * @returns `a - b` clamped to [0, 65535] as a Uint16 (minimum 0).\n */\n sub,\n\n /**\n * Multiplies two Uint16 values.\n *\n * @param a The first Uint16.\n * @param b The second Uint16.\n * @returns `a * b` clamped to [0, 65535] as a Uint16.\n */\n mul,\n\n /**\n * Divides one Uint16 by another using floor division.\n *\n * @param a The dividend Uint16.\n * @param b The divisor Uint16.\n * @returns `⌊a / b⌋` clamped to [0, 65535] as a Uint16.\n */\n div,\n} as const;\n\nexpectType<\n keyof typeof Uint16,\n keyof TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'non-negative' | 'range'\n >\n>('=');\n\nexpectType<\n typeof Uint16,\n TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'non-negative' | 'range'\n >\n>('<=');\n"],"names":[],"mappings":";;AAQA,MAAM,iBAAA,GAAoB,uCAAA;AAE1B,MAAM;AAAA,EACJ,SAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAA;AAAA,EACA,EAAA;AAAA,EACA,GAAA,EAAK,IAAA;AAAA,EACL,GAAA,EAAK,IAAA;AAAA,EACL,GAAA;AAAA,EACA,GAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA,GAAI,oBAAA,CAAqB,mBAAmB,mBAAA,CAI1C;AAAA,EACA,oBAAA,EAAsB,aAAA;AAAA,EACtB,SAAA,EAAW,CAAA;AAAA,EACX,SAAA,EAAW,KAAK,EAAA,GAAK,CAAA;AAAA,EACrB;AACF,CAAU,CAAA;AASH,MAAM,QAAA,GAAW;AAUjB,MAAM,QAAA,GAAW;AAWjB,MAAM,MAAA,GAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQpB,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASL,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQL,KAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA;AACF;;;;"}
@@ -17,15 +17,15 @@ export declare const isUint32: (a: number) => a is TtfImported_Uint32;
17
17
  * 2^32.
18
18
  */
19
19
  export declare const asUint32: <N extends number>(x: N) => number & {
20
- readonly NaNValue: false;
21
- readonly Finite: true;
22
- readonly Int: true;
20
+ readonly "< 2^32": true;
23
21
  readonly "> -2^16": true;
24
22
  readonly "> -2^32": true;
25
23
  readonly ">= -2^15": true;
26
24
  readonly ">= -2^31": true;
27
25
  readonly ">=0": true;
28
- readonly "< 2^32": true;
26
+ readonly Finite: true;
27
+ readonly Int: true;
28
+ readonly NaNValue: false;
29
29
  readonly SafeInt: true;
30
30
  } & Readonly<{
31
31
  'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
@@ -126,17 +126,17 @@ export declare const Uint32: {
126
126
  * @param b - The divisor Uint32
127
127
  * @returns `⌊a / b⌋` as a Uint32, clamped to valid range
128
128
  */
129
- readonly div: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>, y: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 11 | 10 | 20 | 30 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | import("ts-type-forge").NormalizeBrandUnion<number & {
130
- readonly NaNValue: false;
131
- readonly Finite: true;
132
- readonly Int: true;
129
+ readonly div: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>, y: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | import("ts-type-forge").NormalizeBrandUnion<number & {
130
+ readonly "!=0": true;
131
+ readonly "< 2^32": true;
133
132
  readonly "> -2^16": true;
134
133
  readonly "> -2^32": true;
135
134
  readonly ">= -2^15": true;
136
135
  readonly ">= -2^31": true;
137
136
  readonly ">=0": true;
138
- readonly "!=0": true;
139
- readonly "< 2^32": true;
137
+ readonly Finite: true;
138
+ readonly Int: true;
139
+ readonly NaNValue: false;
140
140
  readonly SafeInt: true;
141
141
  } & Readonly<{
142
142
  'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
@@ -1,126 +1,119 @@
1
1
  import { TsDataForgeInternals } from '../refined-number-utils.mjs';
2
2
 
3
- const typeNameInMessage = 'a non-negative integer less than 2^32';
4
- const { MAX_VALUE, MIN_VALUE, add, castType, clamp, div, is, max: max_, min: min_, mul, pow, random, sub, } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
5
- integerOrSafeInteger: 'SafeInteger',
6
- MIN_VALUE: 0,
7
- MAX_VALUE: 2 ** 32 - 1,
8
- typeNameInMessage,
3
+ const typeNameInMessage = "a non-negative integer less than 2^32";
4
+ const {
5
+ MAX_VALUE,
6
+ MIN_VALUE,
7
+ add,
8
+ castType,
9
+ clamp,
10
+ div,
11
+ is,
12
+ max: max_,
13
+ min: min_,
14
+ mul,
15
+ pow,
16
+ random,
17
+ sub
18
+ } = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger({
19
+ integerOrSafeInteger: "SafeInteger",
20
+ MIN_VALUE: 0,
21
+ MAX_VALUE: 2 ** 32 - 1,
22
+ typeNameInMessage
9
23
  });
10
- /**
11
- * Checks if a number is a Uint32 (32-bit unsigned integer in the range [0,
12
- * 2^32)).
13
- *
14
- * @param value The value to check.
15
- * @returns `true` if the value is a Uint32, `false` otherwise.
16
- */
17
24
  const isUint32 = is;
18
- /**
19
- * Casts a number to a Uint32 type.
20
- *
21
- * @param value The value to cast.
22
- * @returns The value as a Uint32 type.
23
- * @throws {TypeError} If the value is not a non-negative integer less than
24
- * 2^32.
25
- */
26
25
  const asUint32 = castType;
27
- /**
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.
32
- */
33
26
  const Uint32 = {
34
- /**
35
- * Type guard that checks if a value is a 32-bit unsigned integer.
36
- *
37
- * @param value - The value to check
38
- * @returns `true` if the value is within the range [0, 2^32), `false`
39
- * otherwise
40
- */
41
- is,
42
- /**
43
- * The minimum value for a Uint32.
44
- *
45
- * @readonly
46
- */
47
- MIN_VALUE,
48
- /**
49
- * The maximum value for a Uint32.
50
- *
51
- * @readonly
52
- */
53
- MAX_VALUE,
54
- /**
55
- * Returns the minimum of multiple Uint32 values.
56
- *
57
- * @param values - The Uint32 values to compare
58
- * @returns The smallest value as a Uint32
59
- */
60
- min: min_,
61
- /**
62
- * Returns the maximum of multiple Uint32 values.
63
- *
64
- * @param values - The Uint32 values to compare
65
- * @returns The largest value as a Uint32
66
- */
67
- max: max_,
68
- /**
69
- * Clamps a Uint32 to be within the specified range.
70
- *
71
- * @param value - The value to clamp
72
- * @param min - The minimum value
73
- * @param max - The maximum value
74
- * @returns The clamped value as a Uint32
75
- */
76
- clamp,
77
- /**
78
- * Generates a random Uint32 value.
79
- *
80
- * @returns A random Uint32 value within [0, 2^32)
81
- */
82
- random,
83
- /**
84
- * Raises a Uint32 to a power, with result clamped to [0, 2^32).
85
- *
86
- * @param a - The base Uint32
87
- * @param b - The exponent Uint32
88
- * @returns `a ** b` as a Uint32, clamped to valid range
89
- */
90
- pow,
91
- /**
92
- * Adds two Uint32 values, with result clamped to [0, 2^32).
93
- *
94
- * @param a - First Uint32
95
- * @param b - Second Uint32
96
- * @returns `a + b` as a Uint32, clamped to valid range
97
- */
98
- add,
99
- /**
100
- * Subtracts two Uint32 values, with result clamped to [0, 2^32).
101
- *
102
- * @param a - First Uint32
103
- * @param b - Second Uint32
104
- * @returns `a - b` as a Uint32, clamped to valid range (minimum 0)
105
- */
106
- sub,
107
- /**
108
- * Multiplies two Uint32 values, with result clamped to [0, 2^32).
109
- *
110
- * @param a - First Uint32
111
- * @param b - Second Uint32
112
- * @returns `a * b` as a Uint32, clamped to valid range
113
- */
114
- mul,
115
- /**
116
- * Divides two Uint32 values using floor division, with result clamped to [0,
117
- * 2^32).
118
- *
119
- * @param a - The dividend Uint32
120
- * @param b - The divisor Uint32
121
- * @returns `⌊a / b⌋` as a Uint32, clamped to valid range
122
- */
123
- div,
27
+ /**
28
+ * Type guard that checks if a value is a 32-bit unsigned integer.
29
+ *
30
+ * @param value - The value to check
31
+ * @returns `true` if the value is within the range [0, 2^32), `false`
32
+ * otherwise
33
+ */
34
+ is,
35
+ /**
36
+ * The minimum value for a Uint32.
37
+ *
38
+ * @readonly
39
+ */
40
+ MIN_VALUE,
41
+ /**
42
+ * The maximum value for a Uint32.
43
+ *
44
+ * @readonly
45
+ */
46
+ MAX_VALUE,
47
+ /**
48
+ * Returns the minimum of multiple Uint32 values.
49
+ *
50
+ * @param values - The Uint32 values to compare
51
+ * @returns The smallest value as a Uint32
52
+ */
53
+ min: min_,
54
+ /**
55
+ * Returns the maximum of multiple Uint32 values.
56
+ *
57
+ * @param values - The Uint32 values to compare
58
+ * @returns The largest value as a Uint32
59
+ */
60
+ max: max_,
61
+ /**
62
+ * Clamps a Uint32 to be within the specified range.
63
+ *
64
+ * @param value - The value to clamp
65
+ * @param min - The minimum value
66
+ * @param max - The maximum value
67
+ * @returns The clamped value as a Uint32
68
+ */
69
+ clamp,
70
+ /**
71
+ * Generates a random Uint32 value.
72
+ *
73
+ * @returns A random Uint32 value within [0, 2^32)
74
+ */
75
+ random,
76
+ /**
77
+ * Raises a Uint32 to a power, with result clamped to [0, 2^32).
78
+ *
79
+ * @param a - The base Uint32
80
+ * @param b - The exponent Uint32
81
+ * @returns `a ** b` as a Uint32, clamped to valid range
82
+ */
83
+ pow,
84
+ /**
85
+ * Adds two Uint32 values, with result clamped to [0, 2^32).
86
+ *
87
+ * @param a - First Uint32
88
+ * @param b - Second Uint32
89
+ * @returns `a + b` as a Uint32, clamped to valid range
90
+ */
91
+ add,
92
+ /**
93
+ * Subtracts two Uint32 values, with result clamped to [0, 2^32).
94
+ *
95
+ * @param a - First Uint32
96
+ * @param b - Second Uint32
97
+ * @returns `a - b` as a Uint32, clamped to valid range (minimum 0)
98
+ */
99
+ sub,
100
+ /**
101
+ * Multiplies two Uint32 values, with result clamped to [0, 2^32).
102
+ *
103
+ * @param a - First Uint32
104
+ * @param b - Second Uint32
105
+ * @returns `a * b` as a Uint32, clamped to valid range
106
+ */
107
+ mul,
108
+ /**
109
+ * Divides two Uint32 values using floor division, with result clamped to [0,
110
+ * 2^32).
111
+ *
112
+ * @param a - The dividend Uint32
113
+ * @param b - The divisor Uint32
114
+ * @returns `⌊a / b⌋` as a Uint32, clamped to valid range
115
+ */
116
+ div
124
117
  };
125
118
 
126
119
  export { Uint32, asUint32, isUint32 };
@@ -1 +1 @@
1
- {"version":3,"file":"uint32.mjs","sources":["../../../src/number/branded-types/uint32.mts"],"sourcesContent":[null],"names":[],"mappings":";;AAQA,MAAM,iBAAiB,GAAG,uCAAuC;AAEjE,MAAM,EACJ,SAAS,EACT,SAAS,EACT,GAAG,EACH,QAAQ,EACR,KAAK,EACL,GAAG,EACH,EAAE,EACF,GAAG,EAAE,IAAI,EACT,GAAG,EAAE,IAAI,EACT,GAAG,EACH,GAAG,EACH,MAAM,EACN,GAAG,GACJ,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;;;;;"}
1
+ {"version":3,"file":"uint32.mjs","sources":["../../../src/number/branded-types/uint32.mts"],"sourcesContent":["import { type Uint32 as TtfImported_Uint32 } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type Uint32 = TtfImported_Uint32;\n\ntype ElementType = Uint32;\n\nconst typeNameInMessage = 'a non-negative integer less than 2^32';\n\nconst {\n MAX_VALUE,\n MIN_VALUE,\n add,\n castType,\n clamp,\n div,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n random,\n sub,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n 0,\n number\n>({\n integerOrSafeInteger: 'SafeInteger',\n MIN_VALUE: 0,\n MAX_VALUE: 2 ** 32 - 1,\n typeNameInMessage,\n} as const);\n\n/**\n * Checks if a number is a Uint32 (32-bit unsigned integer in the range [0,\n * 2^32)).\n *\n * @param value The value to check.\n * @returns `true` if the value is a Uint32, `false` otherwise.\n */\nexport const isUint32 = is;\n\n/**\n * Casts a number to a Uint32 type.\n *\n * @param value The value to cast.\n * @returns The value as a Uint32 type.\n * @throws {TypeError} If the value is not a non-negative integer less than\n * 2^32.\n */\nexport const asUint32 = castType;\n\n/**\n * Utility functions for working with Uint32 (32-bit unsigned integer) branded\n * types. Provides type-safe operations that ensure results remain within the\n * valid range [0, 2^32). All arithmetic operations are clamped to maintain the\n * Uint32 constraint.\n */\nexport const Uint32 = {\n /**\n * Type guard that checks if a value is a 32-bit unsigned integer.\n *\n * @param value - The value to check\n * @returns `true` if the value is within the range [0, 2^32), `false`\n * otherwise\n */\n is,\n\n /**\n * The minimum value for a Uint32.\n *\n * @readonly\n */\n MIN_VALUE,\n\n /**\n * The maximum value for a Uint32.\n *\n * @readonly\n */\n MAX_VALUE,\n\n /**\n * Returns the minimum of multiple Uint32 values.\n *\n * @param values - The Uint32 values to compare\n * @returns The smallest value as a Uint32\n */\n min: min_,\n\n /**\n * Returns the maximum of multiple Uint32 values.\n *\n * @param values - The Uint32 values to compare\n * @returns The largest value as a Uint32\n */\n max: max_,\n\n /**\n * Clamps a Uint32 to be within the specified range.\n *\n * @param value - The value to clamp\n * @param min - The minimum value\n * @param max - The maximum value\n * @returns The clamped value as a Uint32\n */\n clamp,\n\n /**\n * Generates a random Uint32 value.\n *\n * @returns A random Uint32 value within [0, 2^32)\n */\n random,\n\n /**\n * Raises a Uint32 to a power, with result clamped to [0, 2^32).\n *\n * @param a - The base Uint32\n * @param b - The exponent Uint32\n * @returns `a ** b` as a Uint32, clamped to valid range\n */\n pow,\n\n /**\n * Adds two Uint32 values, with result clamped to [0, 2^32).\n *\n * @param a - First Uint32\n * @param b - Second Uint32\n * @returns `a + b` as a Uint32, clamped to valid range\n */\n add,\n\n /**\n * Subtracts two Uint32 values, with result clamped to [0, 2^32).\n *\n * @param a - First Uint32\n * @param b - Second Uint32\n * @returns `a - b` as a Uint32, clamped to valid range (minimum 0)\n */\n sub,\n\n /**\n * Multiplies two Uint32 values, with result clamped to [0, 2^32).\n *\n * @param a - First Uint32\n * @param b - Second Uint32\n * @returns `a * b` as a Uint32, clamped to valid range\n */\n mul,\n\n /**\n * Divides two Uint32 values using floor division, with result clamped to [0,\n * 2^32).\n *\n * @param a - The dividend Uint32\n * @param b - The divisor Uint32\n * @returns `⌊a / b⌋` as a Uint32, clamped to valid range\n */\n div,\n} as const;\n\nexpectType<\n keyof typeof Uint32,\n keyof TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'non-negative' | 'range'\n >\n>('=');\n\nexpectType<\n typeof Uint32,\n TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'non-negative' | 'range'\n >\n>('<=');\n"],"names":[],"mappings":";;AAQA,MAAM,iBAAA,GAAoB,uCAAA;AAE1B,MAAM;AAAA,EACJ,SAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAA;AAAA,EACA,EAAA;AAAA,EACA,GAAA,EAAK,IAAA;AAAA,EACL,GAAA,EAAK,IAAA;AAAA,EACL,GAAA;AAAA,EACA,GAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA,GAAI,oBAAA,CAAqB,mBAAmB,mBAAA,CAI1C;AAAA,EACA,oBAAA,EAAsB,aAAA;AAAA,EACtB,SAAA,EAAW,CAAA;AAAA,EACX,SAAA,EAAW,KAAK,EAAA,GAAK,CAAA;AAAA,EACrB;AACF,CAAU,CAAA;AASH,MAAM,QAAA,GAAW;AAUjB,MAAM,QAAA,GAAW;AAQjB,MAAM,MAAA,GAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQpB,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQL,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUL,KAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA;AACF;;;;"}