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