ts-data-forge 3.2.0 → 3.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (426) hide show
  1. package/README.md +45 -21
  2. package/dist/array/impl/array-utils-creation.d.mts +116 -0
  3. package/dist/array/impl/array-utils-creation.d.mts.map +1 -0
  4. package/dist/array/impl/array-utils-creation.mjs +110 -0
  5. package/dist/array/impl/array-utils-creation.mjs.map +1 -0
  6. package/dist/array/impl/array-utils-element-access.d.mts +61 -0
  7. package/dist/array/impl/array-utils-element-access.d.mts.map +1 -0
  8. package/dist/array/impl/array-utils-element-access.mjs +66 -0
  9. package/dist/array/impl/array-utils-element-access.mjs.map +1 -0
  10. package/dist/array/impl/array-utils-iterators.d.mts +59 -0
  11. package/dist/array/impl/array-utils-iterators.d.mts.map +1 -0
  12. package/dist/array/impl/array-utils-iterators.mjs +104 -0
  13. package/dist/array/impl/array-utils-iterators.mjs.map +1 -0
  14. package/dist/array/impl/array-utils-modification.d.mts +154 -0
  15. package/dist/array/impl/array-utils-modification.d.mts.map +1 -0
  16. package/dist/array/impl/array-utils-modification.mjs +139 -0
  17. package/dist/array/impl/array-utils-modification.mjs.map +1 -0
  18. package/dist/array/impl/array-utils-reducing-value.d.mts +214 -0
  19. package/dist/array/impl/array-utils-reducing-value.d.mts.map +1 -0
  20. package/dist/array/impl/array-utils-reducing-value.mjs +160 -0
  21. package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -0
  22. package/dist/array/impl/array-utils-search.d.mts +179 -0
  23. package/dist/array/impl/array-utils-search.d.mts.map +1 -0
  24. package/dist/array/impl/array-utils-search.mjs +153 -0
  25. package/dist/array/impl/array-utils-search.mjs.map +1 -0
  26. package/dist/array/impl/array-utils-set-op.d.mts +100 -0
  27. package/dist/array/impl/array-utils-set-op.d.mts.map +1 -0
  28. package/dist/array/impl/array-utils-set-op.mjs +137 -0
  29. package/dist/array/impl/array-utils-set-op.mjs.map +1 -0
  30. package/dist/array/impl/array-utils-size.d.mts +24 -0
  31. package/dist/array/impl/array-utils-size.d.mts.map +1 -0
  32. package/dist/array/impl/array-utils-size.mjs +28 -0
  33. package/dist/array/impl/array-utils-size.mjs.map +1 -0
  34. package/dist/array/impl/array-utils-slice-clamped.d.mts +18 -0
  35. package/dist/array/impl/array-utils-slice-clamped.d.mts.map +1 -0
  36. package/dist/array/impl/array-utils-slice-clamped.mjs +49 -0
  37. package/dist/array/impl/array-utils-slice-clamped.mjs.map +1 -0
  38. package/dist/array/impl/array-utils-slicing.d.mts +120 -0
  39. package/dist/array/impl/array-utils-slicing.d.mts.map +1 -0
  40. package/dist/array/impl/array-utils-slicing.mjs +140 -0
  41. package/dist/array/impl/array-utils-slicing.mjs.map +1 -0
  42. package/dist/array/impl/array-utils-transformation.d.mts +348 -0
  43. package/dist/array/impl/array-utils-transformation.d.mts.map +1 -0
  44. package/dist/array/impl/array-utils-transformation.mjs +331 -0
  45. package/dist/array/impl/array-utils-transformation.mjs.map +1 -0
  46. package/dist/array/impl/array-utils-validation.d.mts +149 -0
  47. package/dist/array/impl/array-utils-validation.d.mts.map +1 -0
  48. package/dist/array/impl/array-utils-validation.mjs +166 -0
  49. package/dist/array/impl/array-utils-validation.mjs.map +1 -0
  50. package/dist/array/impl/index.d.mts +13 -0
  51. package/dist/array/impl/index.d.mts.map +1 -0
  52. package/dist/array/impl/index.mjs +13 -0
  53. package/dist/array/impl/index.mjs.map +1 -0
  54. package/dist/array/index.d.mts +1 -1
  55. package/dist/array/index.d.mts.map +1 -1
  56. package/dist/array/index.mjs +2 -1
  57. package/dist/array/index.mjs.map +1 -1
  58. package/dist/collections/imap-mapped.d.mts +83 -253
  59. package/dist/collections/imap-mapped.d.mts.map +1 -1
  60. package/dist/collections/imap-mapped.mjs +33 -164
  61. package/dist/collections/imap-mapped.mjs.map +1 -1
  62. package/dist/collections/imap.d.mts +436 -163
  63. package/dist/collections/imap.d.mts.map +1 -1
  64. package/dist/collections/imap.mjs +74 -94
  65. package/dist/collections/imap.mjs.map +1 -1
  66. package/dist/collections/iset-mapped.d.mts +828 -345
  67. package/dist/collections/iset-mapped.d.mts.map +1 -1
  68. package/dist/collections/iset-mapped.mjs +200 -242
  69. package/dist/collections/iset-mapped.mjs.map +1 -1
  70. package/dist/collections/iset.d.mts +397 -205
  71. package/dist/collections/iset.d.mts.map +1 -1
  72. package/dist/collections/iset.mjs +102 -184
  73. package/dist/collections/iset.mjs.map +1 -1
  74. package/dist/collections/queue.d.mts +155 -135
  75. package/dist/collections/queue.d.mts.map +1 -1
  76. package/dist/collections/queue.mjs +55 -156
  77. package/dist/collections/queue.mjs.map +1 -1
  78. package/dist/collections/stack.d.mts +154 -154
  79. package/dist/collections/stack.d.mts.map +1 -1
  80. package/dist/collections/stack.mjs +54 -203
  81. package/dist/collections/stack.mjs.map +1 -1
  82. package/dist/entry-point.d.mts +3 -0
  83. package/dist/entry-point.d.mts.map +1 -0
  84. package/dist/entry-point.mjs +62 -0
  85. package/dist/entry-point.mjs.map +1 -0
  86. package/dist/expect-type.d.mts +43 -172
  87. package/dist/expect-type.d.mts.map +1 -1
  88. package/dist/expect-type.mjs +43 -172
  89. package/dist/expect-type.mjs.map +1 -1
  90. package/dist/functional/match.d.mts +35 -140
  91. package/dist/functional/match.d.mts.map +1 -1
  92. package/dist/functional/match.mjs.map +1 -1
  93. package/dist/functional/optional.d.mts +282 -160
  94. package/dist/functional/optional.d.mts.map +1 -1
  95. package/dist/functional/optional.mjs +131 -71
  96. package/dist/functional/optional.mjs.map +1 -1
  97. package/dist/functional/pipe.d.mts +59 -113
  98. package/dist/functional/pipe.d.mts.map +1 -1
  99. package/dist/functional/pipe.mjs.map +1 -1
  100. package/dist/functional/result.d.mts +433 -332
  101. package/dist/functional/result.d.mts.map +1 -1
  102. package/dist/functional/result.mjs +233 -239
  103. package/dist/functional/result.mjs.map +1 -1
  104. package/dist/globals.d.mts +12 -5
  105. package/dist/guard/has-key.d.mts +23 -74
  106. package/dist/guard/has-key.d.mts.map +1 -1
  107. package/dist/guard/has-key.mjs +23 -74
  108. package/dist/guard/has-key.mjs.map +1 -1
  109. package/dist/guard/is-non-empty-string.d.mts +20 -87
  110. package/dist/guard/is-non-empty-string.d.mts.map +1 -1
  111. package/dist/guard/is-non-empty-string.mjs +20 -87
  112. package/dist/guard/is-non-empty-string.mjs.map +1 -1
  113. package/dist/guard/is-non-null-object.d.mts +14 -84
  114. package/dist/guard/is-non-null-object.d.mts.map +1 -1
  115. package/dist/guard/is-non-null-object.mjs +14 -84
  116. package/dist/guard/is-non-null-object.mjs.map +1 -1
  117. package/dist/guard/is-primitive.d.mts +13 -126
  118. package/dist/guard/is-primitive.d.mts.map +1 -1
  119. package/dist/guard/is-primitive.mjs +13 -126
  120. package/dist/guard/is-primitive.mjs.map +1 -1
  121. package/dist/guard/is-record.d.mts +21 -132
  122. package/dist/guard/is-record.d.mts.map +1 -1
  123. package/dist/guard/is-record.mjs +21 -132
  124. package/dist/guard/is-record.mjs.map +1 -1
  125. package/dist/guard/is-type.d.mts +201 -238
  126. package/dist/guard/is-type.d.mts.map +1 -1
  127. package/dist/guard/is-type.mjs +201 -238
  128. package/dist/guard/is-type.mjs.map +1 -1
  129. package/dist/guard/key-is-in.d.mts +22 -139
  130. package/dist/guard/key-is-in.d.mts.map +1 -1
  131. package/dist/guard/key-is-in.mjs +22 -139
  132. package/dist/guard/key-is-in.mjs.map +1 -1
  133. package/dist/index.d.mts +0 -1
  134. package/dist/index.d.mts.map +1 -1
  135. package/dist/index.mjs +0 -1
  136. package/dist/index.mjs.map +1 -1
  137. package/dist/iterator/range.d.mts +29 -62
  138. package/dist/iterator/range.d.mts.map +1 -1
  139. package/dist/iterator/range.mjs.map +1 -1
  140. package/dist/json/json.d.mts +191 -121
  141. package/dist/json/json.d.mts.map +1 -1
  142. package/dist/json/json.mjs +238 -136
  143. package/dist/json/json.mjs.map +1 -1
  144. package/dist/number/branded-types/finite-number.d.mts +24 -156
  145. package/dist/number/branded-types/finite-number.d.mts.map +1 -1
  146. package/dist/number/branded-types/finite-number.mjs +27 -159
  147. package/dist/number/branded-types/finite-number.mjs.map +1 -1
  148. package/dist/number/branded-types/int.d.mts +122 -120
  149. package/dist/number/branded-types/int.d.mts.map +1 -1
  150. package/dist/number/branded-types/int.mjs +122 -120
  151. package/dist/number/branded-types/int.mjs.map +1 -1
  152. package/dist/number/branded-types/int16.d.mts +22 -30
  153. package/dist/number/branded-types/int16.d.mts.map +1 -1
  154. package/dist/number/branded-types/int16.mjs +22 -30
  155. package/dist/number/branded-types/int16.mjs.map +1 -1
  156. package/dist/number/branded-types/int32.d.mts +22 -31
  157. package/dist/number/branded-types/int32.d.mts.map +1 -1
  158. package/dist/number/branded-types/int32.mjs +22 -31
  159. package/dist/number/branded-types/int32.mjs.map +1 -1
  160. package/dist/number/branded-types/non-negative-finite-number.d.mts +28 -36
  161. package/dist/number/branded-types/non-negative-finite-number.d.mts.map +1 -1
  162. package/dist/number/branded-types/non-negative-finite-number.mjs +31 -39
  163. package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
  164. package/dist/number/branded-types/non-negative-int16.d.mts +24 -34
  165. package/dist/number/branded-types/non-negative-int16.d.mts.map +1 -1
  166. package/dist/number/branded-types/non-negative-int16.mjs +24 -34
  167. package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
  168. package/dist/number/branded-types/non-negative-int32.d.mts +26 -35
  169. package/dist/number/branded-types/non-negative-int32.d.mts.map +1 -1
  170. package/dist/number/branded-types/non-negative-int32.mjs +26 -35
  171. package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
  172. package/dist/number/branded-types/non-zero-finite-number.d.mts +22 -37
  173. package/dist/number/branded-types/non-zero-finite-number.d.mts.map +1 -1
  174. package/dist/number/branded-types/non-zero-finite-number.mjs +25 -40
  175. package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
  176. package/dist/number/branded-types/non-zero-int.d.mts +15 -30
  177. package/dist/number/branded-types/non-zero-int.d.mts.map +1 -1
  178. package/dist/number/branded-types/non-zero-int.mjs +15 -30
  179. package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
  180. package/dist/number/branded-types/non-zero-int16.d.mts +27 -35
  181. package/dist/number/branded-types/non-zero-int16.d.mts.map +1 -1
  182. package/dist/number/branded-types/non-zero-int16.mjs +27 -35
  183. package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
  184. package/dist/number/branded-types/non-zero-int32.d.mts +29 -36
  185. package/dist/number/branded-types/non-zero-int32.d.mts.map +1 -1
  186. package/dist/number/branded-types/non-zero-int32.mjs +29 -36
  187. package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
  188. package/dist/number/branded-types/non-zero-safe-int.d.mts +37 -38
  189. package/dist/number/branded-types/non-zero-safe-int.d.mts.map +1 -1
  190. package/dist/number/branded-types/non-zero-safe-int.mjs +39 -40
  191. package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
  192. package/dist/number/branded-types/non-zero-uint16.d.mts +24 -35
  193. package/dist/number/branded-types/non-zero-uint16.d.mts.map +1 -1
  194. package/dist/number/branded-types/non-zero-uint16.mjs +24 -35
  195. package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
  196. package/dist/number/branded-types/non-zero-uint32.d.mts +24 -35
  197. package/dist/number/branded-types/non-zero-uint32.d.mts.map +1 -1
  198. package/dist/number/branded-types/non-zero-uint32.mjs +24 -35
  199. package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
  200. package/dist/number/branded-types/positive-finite-number.d.mts +26 -40
  201. package/dist/number/branded-types/positive-finite-number.d.mts.map +1 -1
  202. package/dist/number/branded-types/positive-finite-number.mjs +29 -43
  203. package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
  204. package/dist/number/branded-types/positive-int.d.mts +133 -123
  205. package/dist/number/branded-types/positive-int.d.mts.map +1 -1
  206. package/dist/number/branded-types/positive-int.mjs +133 -123
  207. package/dist/number/branded-types/positive-int.mjs.map +1 -1
  208. package/dist/number/branded-types/positive-int16.d.mts +24 -35
  209. package/dist/number/branded-types/positive-int16.d.mts.map +1 -1
  210. package/dist/number/branded-types/positive-int16.mjs +24 -35
  211. package/dist/number/branded-types/positive-int16.mjs.map +1 -1
  212. package/dist/number/branded-types/positive-int32.d.mts +24 -35
  213. package/dist/number/branded-types/positive-int32.d.mts.map +1 -1
  214. package/dist/number/branded-types/positive-int32.mjs +24 -35
  215. package/dist/number/branded-types/positive-int32.mjs.map +1 -1
  216. package/dist/number/branded-types/positive-safe-int.d.mts +159 -33
  217. package/dist/number/branded-types/positive-safe-int.d.mts.map +1 -1
  218. package/dist/number/branded-types/positive-safe-int.mjs +160 -34
  219. package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
  220. package/dist/number/branded-types/positive-uint16.d.mts +24 -35
  221. package/dist/number/branded-types/positive-uint16.d.mts.map +1 -1
  222. package/dist/number/branded-types/positive-uint16.mjs +24 -35
  223. package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
  224. package/dist/number/branded-types/positive-uint32.d.mts +26 -36
  225. package/dist/number/branded-types/positive-uint32.d.mts.map +1 -1
  226. package/dist/number/branded-types/positive-uint32.mjs +26 -36
  227. package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
  228. package/dist/number/branded-types/safe-int.d.mts +140 -99
  229. package/dist/number/branded-types/safe-int.d.mts.map +1 -1
  230. package/dist/number/branded-types/safe-int.mjs +142 -101
  231. package/dist/number/branded-types/safe-int.mjs.map +1 -1
  232. package/dist/number/branded-types/safe-uint.d.mts +24 -33
  233. package/dist/number/branded-types/safe-uint.d.mts.map +1 -1
  234. package/dist/number/branded-types/safe-uint.mjs +25 -34
  235. package/dist/number/branded-types/safe-uint.mjs.map +1 -1
  236. package/dist/number/branded-types/uint.d.mts +121 -30
  237. package/dist/number/branded-types/uint.d.mts.map +1 -1
  238. package/dist/number/branded-types/uint.mjs +121 -30
  239. package/dist/number/branded-types/uint.mjs.map +1 -1
  240. package/dist/number/branded-types/uint16.d.mts +26 -34
  241. package/dist/number/branded-types/uint16.d.mts.map +1 -1
  242. package/dist/number/branded-types/uint16.mjs +26 -34
  243. package/dist/number/branded-types/uint16.mjs.map +1 -1
  244. package/dist/number/branded-types/uint32.d.mts +26 -68
  245. package/dist/number/branded-types/uint32.d.mts.map +1 -1
  246. package/dist/number/branded-types/uint32.mjs +26 -68
  247. package/dist/number/branded-types/uint32.mjs.map +1 -1
  248. package/dist/number/enum/int8.d.mts +37 -101
  249. package/dist/number/enum/int8.d.mts.map +1 -1
  250. package/dist/number/enum/int8.mjs +39 -170
  251. package/dist/number/enum/int8.mjs.map +1 -1
  252. package/dist/number/enum/uint8.d.mts +45 -55
  253. package/dist/number/enum/uint8.d.mts.map +1 -1
  254. package/dist/number/enum/uint8.mjs +46 -155
  255. package/dist/number/enum/uint8.mjs.map +1 -1
  256. package/dist/number/num.d.mts +145 -206
  257. package/dist/number/num.d.mts.map +1 -1
  258. package/dist/number/num.mjs +143 -199
  259. package/dist/number/num.mjs.map +1 -1
  260. package/dist/number/refined-number-utils.d.mts +97 -21
  261. package/dist/number/refined-number-utils.d.mts.map +1 -1
  262. package/dist/number/refined-number-utils.mjs +91 -20
  263. package/dist/number/refined-number-utils.mjs.map +1 -1
  264. package/dist/object/object.d.mts +126 -208
  265. package/dist/object/object.d.mts.map +1 -1
  266. package/dist/object/object.mjs +68 -102
  267. package/dist/object/object.mjs.map +1 -1
  268. package/dist/others/cast-mutable.d.mts +12 -88
  269. package/dist/others/cast-mutable.d.mts.map +1 -1
  270. package/dist/others/cast-mutable.mjs +13 -89
  271. package/dist/others/cast-mutable.mjs.map +1 -1
  272. package/dist/others/cast-readonly.d.mts +12 -168
  273. package/dist/others/cast-readonly.d.mts.map +1 -1
  274. package/dist/others/cast-readonly.mjs +13 -169
  275. package/dist/others/cast-readonly.mjs.map +1 -1
  276. package/dist/others/if-then.d.mts +6 -83
  277. package/dist/others/if-then.d.mts.map +1 -1
  278. package/dist/others/if-then.mjs +6 -83
  279. package/dist/others/if-then.mjs.map +1 -1
  280. package/dist/others/map-nullable.d.mts +12 -136
  281. package/dist/others/map-nullable.d.mts.map +1 -1
  282. package/dist/others/map-nullable.mjs.map +1 -1
  283. package/dist/others/memoize-function.d.mts +14 -157
  284. package/dist/others/memoize-function.d.mts.map +1 -1
  285. package/dist/others/memoize-function.mjs +14 -157
  286. package/dist/others/memoize-function.mjs.map +1 -1
  287. package/dist/others/tuple.d.mts +33 -151
  288. package/dist/others/tuple.d.mts.map +1 -1
  289. package/dist/others/tuple.mjs +33 -151
  290. package/dist/others/tuple.mjs.map +1 -1
  291. package/dist/others/unknown-to-string.d.mts +11 -125
  292. package/dist/others/unknown-to-string.d.mts.map +1 -1
  293. package/dist/others/unknown-to-string.mjs +14 -127
  294. package/dist/others/unknown-to-string.mjs.map +1 -1
  295. package/dist/promise/promise.d.mts +33 -20
  296. package/dist/promise/promise.d.mts.map +1 -1
  297. package/dist/promise/promise.mjs +34 -21
  298. package/dist/promise/promise.mjs.map +1 -1
  299. package/dist/types.d.mts +1 -1
  300. package/package.json +54 -50
  301. package/src/array/impl/array-utils-creation.mts +192 -0
  302. package/src/array/{array-utils-creation.test.mts → impl/array-utils-creation.test.mts} +121 -72
  303. package/src/array/impl/array-utils-element-access.mts +115 -0
  304. package/src/array/impl/array-utils-element-access.test.mts +151 -0
  305. package/src/array/impl/array-utils-iterators.mts +79 -0
  306. package/src/array/impl/array-utils-iterators.test.mts +98 -0
  307. package/src/array/impl/array-utils-modification.mts +434 -0
  308. package/src/array/{array-utils-modification.test.mts → impl/array-utils-modification.test.mts} +41 -28
  309. package/src/array/{array-utils-overload-type-error.test.mts → impl/array-utils-overload-type-error.test.mts} +33 -33
  310. package/src/array/impl/array-utils-reducing-value.mts +551 -0
  311. package/src/array/{array-utils-reducing-value.test.mts → impl/array-utils-reducing-value.test.mts} +45 -50
  312. package/src/array/impl/array-utils-search.mts +509 -0
  313. package/src/array/impl/array-utils-search.test.mts +346 -0
  314. package/src/array/impl/array-utils-set-op.mts +166 -0
  315. package/src/array/{array-utils-set-op.test.mts → impl/array-utils-set-op.test.mts} +42 -35
  316. package/src/array/impl/array-utils-size.mts +30 -0
  317. package/src/array/impl/array-utils-size.test.mts +9 -0
  318. package/src/array/impl/array-utils-slice-clamped.mts +51 -0
  319. package/src/array/{array-utils-slice-clamped.test.mts → impl/array-utils-slice-clamped.test.mts} +12 -12
  320. package/src/array/impl/array-utils-slicing.mts +275 -0
  321. package/src/array/impl/array-utils-slicing.test.mts +158 -0
  322. package/src/array/impl/array-utils-transformation.mts +746 -0
  323. package/src/array/{array-utils-transformation.test.mts → impl/array-utils-transformation.test.mts} +662 -889
  324. package/src/array/impl/array-utils-validation.mts +241 -0
  325. package/src/array/{array-utils-validation.test.mts → impl/array-utils-validation.test.mts} +194 -107
  326. package/src/array/{array.test.mts → impl/array.test.mts} +2 -2
  327. package/src/array/impl/index.mts +12 -0
  328. package/src/array/index.mts +1 -1
  329. package/src/collections/imap-mapped.mts +99 -265
  330. package/src/collections/imap.mts +477 -174
  331. package/src/collections/imap.test.mts +12 -19
  332. package/src/collections/iset-mapped.mts +892 -358
  333. package/src/collections/iset.mts +429 -213
  334. package/src/collections/queue.mts +174 -200
  335. package/src/collections/stack.mts +172 -245
  336. package/src/collections/stack.test.mts +9 -1
  337. package/src/entry-point.mts +2 -0
  338. package/src/expect-type.mts +43 -172
  339. package/src/functional/match.mts +35 -145
  340. package/src/functional/optional.mts +285 -163
  341. package/src/functional/optional.test.mts +4 -1
  342. package/src/functional/pipe.mts +60 -113
  343. package/src/functional/result.mts +452 -351
  344. package/src/functional/result.test.mts +9 -2
  345. package/src/globals.d.mts +12 -5
  346. package/src/guard/has-key.mts +23 -74
  347. package/src/guard/is-non-empty-string.mts +20 -87
  348. package/src/guard/is-non-null-object.mts +14 -84
  349. package/src/guard/is-non-null-object.test.mts +1 -1
  350. package/src/guard/is-primitive.mts +13 -126
  351. package/src/guard/is-primitive.test.mts +1 -1
  352. package/src/guard/is-record.mts +21 -132
  353. package/src/guard/is-record.test.mts +0 -1
  354. package/src/guard/is-type.mts +201 -238
  355. package/src/guard/is-type.test.mts +7 -7
  356. package/src/guard/key-is-in.mts +22 -139
  357. package/src/index.mts +0 -1
  358. package/src/iterator/range.mts +29 -62
  359. package/src/json/json.mts +202 -134
  360. package/src/json/json.test.mts +1 -3
  361. package/src/number/branded-types/finite-number.mts +27 -159
  362. package/src/number/branded-types/int.mts +122 -120
  363. package/src/number/branded-types/int16.mts +22 -30
  364. package/src/number/branded-types/int16.test.mts +24 -24
  365. package/src/number/branded-types/int32.mts +22 -31
  366. package/src/number/branded-types/int32.test.mts +39 -39
  367. package/src/number/branded-types/non-negative-finite-number.mts +31 -39
  368. package/src/number/branded-types/non-negative-int16.mts +24 -34
  369. package/src/number/branded-types/non-negative-int16.test.mts +16 -16
  370. package/src/number/branded-types/non-negative-int32.mts +26 -35
  371. package/src/number/branded-types/non-negative-int32.test.mts +30 -30
  372. package/src/number/branded-types/non-zero-finite-number.mts +25 -40
  373. package/src/number/branded-types/non-zero-int.mts +15 -30
  374. package/src/number/branded-types/non-zero-int16.mts +27 -35
  375. package/src/number/branded-types/non-zero-int16.test.mts +26 -26
  376. package/src/number/branded-types/non-zero-int32.mts +29 -36
  377. package/src/number/branded-types/non-zero-int32.test.mts +45 -42
  378. package/src/number/branded-types/non-zero-safe-int.mts +39 -40
  379. package/src/number/branded-types/non-zero-uint16.mts +24 -35
  380. package/src/number/branded-types/non-zero-uint16.test.mts +16 -16
  381. package/src/number/branded-types/non-zero-uint32.mts +24 -35
  382. package/src/number/branded-types/non-zero-uint32.test.mts +28 -28
  383. package/src/number/branded-types/positive-finite-number.mts +29 -43
  384. package/src/number/branded-types/positive-int.mts +134 -124
  385. package/src/number/branded-types/positive-int16.mts +24 -35
  386. package/src/number/branded-types/positive-int16.test.mts +14 -14
  387. package/src/number/branded-types/positive-int32.mts +24 -35
  388. package/src/number/branded-types/positive-int32.test.mts +26 -26
  389. package/src/number/branded-types/positive-safe-int.mts +160 -34
  390. package/src/number/branded-types/positive-uint16.mts +24 -35
  391. package/src/number/branded-types/positive-uint16.test.mts +16 -16
  392. package/src/number/branded-types/positive-uint32.mts +26 -36
  393. package/src/number/branded-types/positive-uint32.test.mts +31 -28
  394. package/src/number/branded-types/safe-int.mts +142 -101
  395. package/src/number/branded-types/safe-uint.mts +25 -34
  396. package/src/number/branded-types/uint.mts +121 -30
  397. package/src/number/branded-types/uint16.mts +26 -34
  398. package/src/number/branded-types/uint16.test.mts +16 -16
  399. package/src/number/branded-types/uint32.mts +26 -68
  400. package/src/number/branded-types/uint32.test.mts +28 -28
  401. package/src/number/enum/int8.mts +39 -170
  402. package/src/number/enum/uint8.mts +46 -155
  403. package/src/number/num.mts +157 -212
  404. package/src/number/num.test.mts +4 -4
  405. package/src/number/refined-number-utils.mts +109 -26
  406. package/src/object/object.mts +130 -212
  407. package/src/object/object.test.mts +29 -0
  408. package/src/others/cast-mutable.mts +13 -89
  409. package/src/others/cast-mutable.test.mts +80 -0
  410. package/src/others/cast-readonly.mts +13 -169
  411. package/src/others/if-then.mts +6 -83
  412. package/src/others/map-nullable.mts +12 -136
  413. package/src/others/map-nullable.test.mts +6 -6
  414. package/src/others/memoize-function.mts +14 -157
  415. package/src/others/tuple.mts +33 -151
  416. package/src/others/unknown-to-string.mts +15 -127
  417. package/src/others/unknown-to-string.test.mts +14 -2
  418. package/src/promise/promise.mts +34 -21
  419. package/src/promise/promise.test.mts +43 -0
  420. package/dist/array/array-utils.d.mts +0 -2956
  421. package/dist/array/array-utils.d.mts.map +0 -1
  422. package/dist/array/array-utils.mjs +0 -1838
  423. package/dist/array/array-utils.mjs.map +0 -1
  424. package/src/array/array-utils-search.test.mts +0 -169
  425. package/src/array/array-utils-slicing.test.mts +0 -274
  426. package/src/array/array-utils.mts +0 -4834
@@ -1,127 +1,117 @@
1
1
  /**
2
2
  * Checks if a number is a Uint8 (8-bit unsigned integer in the range [0, 255]).
3
+ *
3
4
  * @param value The value to check.
4
5
  * @returns `true` if the value is a Uint8, `false` otherwise.
5
6
  */
6
7
  export declare const isUint8: (x: number) => x is Uint8;
7
8
  /**
8
- * Casts a number to a Uint8 type.
9
+ * Casts a number to a Uint8 type. This function validates that the input is
10
+ * within the Uint8 range [0, 255] and is an integer, then returns it with the
11
+ * Uint8 brand.
12
+ *
9
13
  * @param value The value to cast.
10
14
  * @returns The value as a Uint8 type.
11
15
  * @throws {TypeError} If the value is not a valid 8-bit unsigned integer.
12
- * @example
13
- * ```typescript
14
- * const x = asUint8(255); // Uint8
15
- * const y = asUint8(0); // Uint8
16
- * // asUint8(-1); // throws TypeError
17
- * // asUint8(256); // throws TypeError
18
- * // asUint8(1.5); // throws TypeError
19
- * ```
20
16
  */
21
17
  export declare const asUint8: (x: number) => Uint8;
22
18
  /**
23
- * Namespace providing type-safe arithmetic operations for 8-bit unsigned integers.
19
+ * Namespace providing type-safe arithmetic operations for 8-bit unsigned
20
+ * integers.
24
21
  *
25
22
  * All operations automatically clamp results to the valid Uint8 range [0, 255].
26
- * This ensures that all arithmetic maintains the 8-bit unsigned integer constraint,
27
- * with negative results clamped to 0 and overflow results clamped to MAX_VALUE.
28
- *
29
- * @example
30
- * ```typescript
31
- * const a = asUint8(200);
32
- * const b = asUint8(100);
33
- *
34
- * // Arithmetic operations with automatic clamping
35
- * const sum = Uint8.add(a, b); // Uint8 (255 - clamped to MAX_VALUE)
36
- * const diff = Uint8.sub(a, b); // Uint8 (100)
37
- * const reverseDiff = Uint8.sub(b, a); // Uint8 (0 - clamped to MIN_VALUE)
38
- * const product = Uint8.mul(a, b); // Uint8 (255 - clamped due to overflow)
39
- *
40
- * // Range operations
41
- * const clamped = Uint8.clamp(-10); // Uint8 (0)
42
- * const minimum = Uint8.min(a, b); // Uint8 (100)
43
- * const maximum = Uint8.max(a, b); // Uint8 (200)
44
- *
45
- * // Utility operations
46
- * const random = Uint8.random(asUint8(50), asUint8(150)); // Uint8 (random value in [50, 150])
47
- * const power = Uint8.pow(asUint8(2), asUint8(7)); // Uint8 (128)
48
- * ```
23
+ * This ensures that all arithmetic maintains the 8-bit unsigned integer
24
+ * constraint, with negative results clamped to 0 and overflow results clamped
25
+ * to MAX_VALUE.
49
26
  */
50
27
  export declare const Uint8: {
51
28
  /**
52
- * Type guard to check if a value is a Uint8.
29
+ * Type guard that checks if a value is an 8-bit unsigned integer.
30
+ *
53
31
  * @param value The value to check.
54
- * @returns `true` if the value is an 8-bit unsigned integer, `false` otherwise.
32
+ * @returns `true` if the value is an 8-bit unsigned integer, `false`
33
+ * otherwise.
55
34
  */
56
35
  readonly is: (x: number) => x is Uint8;
57
36
  /**
58
37
  * The minimum value for an 8-bit unsigned integer.
38
+ *
59
39
  * @readonly
60
40
  */
61
41
  readonly MIN_VALUE: 0;
62
42
  /**
63
43
  * The maximum value for an 8-bit unsigned integer.
44
+ *
64
45
  * @readonly
65
46
  */
66
47
  readonly MAX_VALUE: 255;
67
48
  /**
68
49
  * Returns the larger of the given Uint8 values.
50
+ *
69
51
  * @param values The Uint8 values to compare.
70
52
  * @returns The maximum value as a Uint8.
71
53
  */
72
54
  readonly max: (...values: readonly Uint8[]) => Uint8;
73
55
  /**
74
56
  * Returns the smaller of the given Uint8 values.
57
+ *
75
58
  * @param values The Uint8 values to compare.
76
59
  * @returns The minimum value as a Uint8.
77
60
  */
78
61
  readonly min: (...values: readonly Uint8[]) => Uint8;
79
62
  /**
80
63
  * Clamps a number to the Uint8 range.
64
+ *
81
65
  * @param value The number to clamp.
82
66
  * @returns The value clamped to [0, 255] as a Uint8.
83
67
  */
84
68
  readonly clamp: (a: number) => Uint8;
85
69
  /**
86
70
  * Generates a random Uint8 value within the specified range.
71
+ *
87
72
  * @param min The minimum value (inclusive).
88
73
  * @param max The maximum value (inclusive).
89
74
  * @returns A random Uint8 between min and max.
90
75
  */
91
76
  readonly random: (min: Uint8, max: Uint8) => Uint8;
92
77
  /**
93
- * Raises a Uint8 to the power of another Uint8.
94
- * @param a The base Uint8.
95
- * @param b The exponent Uint8.
96
- * @returns `a ** b` clamped to [0, 255] as a Uint8.
78
+ * Raises x to the power of y, clamped to Uint8 range.
79
+ *
80
+ * @param x - The base
81
+ * @param y - The exponent
82
+ * @returns `x ** y` clamped to [0, 255]
97
83
  */
98
84
  readonly pow: (x: Uint8, y: Uint8) => Uint8;
99
85
  /**
100
- * Adds two Uint8 values.
101
- * @param a The first Uint8.
102
- * @param b The second Uint8.
103
- * @returns `a + b` clamped to [0, 255] as a Uint8.
86
+ * Adds two Uint8 values, clamped to Uint8 range.
87
+ *
88
+ * @param x - First operand
89
+ * @param y - Second operand
90
+ * @returns `x + y` clamped to [0, 255]
104
91
  */
105
92
  readonly add: (x: Uint8, y: Uint8) => Uint8;
106
93
  /**
107
- * Subtracts one Uint8 from another.
108
- * @param a The minuend Uint8.
109
- * @param b The subtrahend Uint8.
110
- * @returns `a - b` clamped to [0, 255] as a Uint8 (minimum 0).
94
+ * Subtracts two Uint8 values, clamped to Uint8 range.
95
+ *
96
+ * @param x - First operand
97
+ * @param y - Second operand
98
+ * @returns `x - y` clamped to [0, 255]
111
99
  */
112
100
  readonly sub: (x: Uint8, y: Uint8) => Uint8;
113
101
  /**
114
- * Multiplies two Uint8 values.
115
- * @param a The first Uint8.
116
- * @param b The second Uint8.
117
- * @returns `a * b` clamped to [0, 255] as a Uint8.
102
+ * Multiplies two Uint8 values, clamped to Uint8 range.
103
+ *
104
+ * @param x - First operand
105
+ * @param y - Second operand
106
+ * @returns `x * y` clamped to [0, 255]
118
107
  */
119
108
  readonly mul: (x: Uint8, y: Uint8) => Uint8;
120
109
  /**
121
- * Divides one Uint8 by another using floor division.
122
- * @param a The dividend Uint8.
123
- * @param b The divisor Uint8 (cannot be 0).
124
- * @returns `⌊a / b⌋` clamped to [0, 255] as a Uint8.
110
+ * Divides two Uint8 values, clamped to Uint8 range.
111
+ *
112
+ * @param x - The dividend
113
+ * @param y - The divisor (cannot be 0)
114
+ * @returns `⌊x / y⌋` clamped to [0, 255]
125
115
  */
126
116
  readonly div: (x: Uint8, y: Exclude<Uint8, 0>) => Uint8;
127
117
  };
@@ -1 +1 @@
1
- {"version":3,"file":"uint8.d.mts","sourceRoot":"","sources":["../../../src/number/enum/uint8.mts"],"names":[],"mappings":"AAmJA;;;;GAIG;AACH,eAAO,MAAM,OAAO,MAhHL,MAAM,KAAG,CAAC,IAAI,KAgHJ,CAAC;AAE1B;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,OAAO,MAxGC,MAAM,KAAG,KAwGC,CAAC;AAEhC;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,eAAO,MAAM,KAAK;IAChB;;;;OAIG;qBAnKU,MAAM,KAAG,CAAC,IAAI,KAAK;IAsKhC;;;OAGG;;IAGH;;;OAGG;;IAGH;;;;OAIG;8BA/HoB,SAAS,KAAK,EAAE,KAAG,KAAK;IAkI/C;;;;OAIG;8BA9IoB,SAAS,KAAK,EAAE,KAAG,KAAK;IAiJ/C;;;;OAIG;wBAnKa,MAAM,KAAG,KAAK;IAsK9B;;;;;OAKG;2BApGgB,KAAK,OAAO,KAAK,KAAG,KAAK;IAuG5C;;;;;OAKG;sBApJW,KAAK,KAAK,KAAK,KAAG,KAAK;IAuJrC;;;;;OAKG;sBApJW,KAAK,KAAK,KAAK,KAAG,KAAK;IAuJrC;;;;;OAKG;sBApJW,KAAK,KAAK,KAAK,KAAG,KAAK;IAuJrC;;;;;OAKG;sBApJW,KAAK,KAAK,KAAK,KAAG,KAAK;IAuJrC;;;;;OAKG;sBApJW,KAAK,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAG,KAAK;CAsJzC,CAAC"}
1
+ {"version":3,"file":"uint8.d.mts","sourceRoot":"","sources":["../../../src/number/enum/uint8.mts"],"names":[],"mappings":"AAgDA;;;;;GAKG;AACH,eAAO,MAAM,OAAO,MAjCL,MAAM,KAAG,CAAC,IAAI,KAiCJ,CAAC;AAE1B;;;;;;;;GAQG;AACH,eAAO,MAAM,OAAO,MA1CC,MAAM,KAAG,KA0CC,CAAC;AAEhC;;;;;;;;GAQG;AACH,eAAO,MAAM,KAAK;IAChB;;;;;;OAMG;qBA9DU,MAAM,KAAG,CAAC,IAAI,KAAK;IAiEhC;;;;OAIG;;IAGH;;;;OAIG;;IAGH;;;;;OAKG;8BAzEoB,SAAS,KAAK,EAAE,KAAG,KAAK;IA4E/C;;;;;OAKG;8BApFoB,SAAS,KAAK,EAAE,KAAG,KAAK;IAuF/C;;;;;OAKG;wBA9Fa,MAAM,KAAG,KAAK;IAiG9B;;;;;;OAMG;2BArFgB,KAAK,OAAO,KAAK,KAAG,KAAK;IAwF5C;;;;;;OAMG;sBAxGW,KAAK,KAAK,KAAK,KAAG,KAAK;IA2GrC;;;;;;OAMG;sBA/GW,KAAK,KAAK,KAAK,KAAG,KAAK;IAkHrC;;;;;;OAMG;sBAtHW,KAAK,KAAK,KAAK,KAAG,KAAK;IAyHrC;;;;;;OAMG;sBA7HW,KAAK,KAAK,KAAK,KAAG,KAAK;IAgIrC;;;;;;OAMG;sBApIW,KAAK,KAAK,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC,KAAG,KAAK;CAsIzC,CAAC"}
@@ -7,242 +7,133 @@ const { MIN_VALUE, MAX_VALUE, random: randomImpl, is: isImpl, castType: castType
7
7
  MAX_VALUE: 255,
8
8
  typeNameInMessage,
9
9
  });
10
- /**
11
- * Type guard that checks if a value is an 8-bit unsigned integer.
12
- *
13
- * A Uint8 is an unsigned integer in the range [0, 255], representing
14
- * values that fit in exactly 8 bits of memory (1 byte).
15
- *
16
- * @param x - The number to check
17
- * @returns `true` if x is a valid Uint8, `false` otherwise
18
- *
19
- * @example
20
- * ```typescript
21
- * is(100); // true
22
- * is(0); // true (minimum value)
23
- * is(255); // true (maximum value)
24
- * is(256); // false (exceeds max)
25
- * is(-1); // false (negative)
26
- * is(5.5); // false (not integer)
27
- * ```
28
- */
29
10
  const is = (x) => isImpl(x);
30
- /**
31
- * Casts a number to a Uint8 branded type.
32
- *
33
- * This function validates that the input is within the Uint8 range [0, 255]
34
- * and is an integer, then returns it with the Uint8 brand.
35
- *
36
- * @param x - The number to convert
37
- * @returns The number as a Uint8 branded type
38
- * @throws {TypeError} If x is not a valid 8-bit unsigned integer
39
- *
40
- * @example
41
- * ```typescript
42
- * const byte = castType(200); // Uint8
43
- * const zero = castType(0); // Uint8 (minimum)
44
- * const max = castType(255); // Uint8 (maximum)
45
- *
46
- * // These throw TypeError:
47
- * // castType(256); // Exceeds maximum
48
- * // castType(-1); // Negative value
49
- * // castType(1.5); // Not an integer
50
- * ```
51
- */
52
11
  const castType = (x) =>
53
- // eslint-disable-next-line @typescript-eslint/no-unsafe-type-assertion
12
+ // eslint-disable-next-line total-functions/no-unsafe-type-assertion
54
13
  castTypeImpl(x);
55
- /**
56
- * Clamps a number to the Uint8 range [0, 255].
57
- * @param a - The number to clamp
58
- * @returns The clamped value as Uint8
59
- */
60
14
  const clamp = (a) => castType(clampImpl(a));
61
- /**
62
- * Returns the minimum value from a list of Uint8 values.
63
- *
64
- * @param values - The Uint8 values to compare (at least one required)
65
- * @returns The smallest value as a Uint8
66
- *
67
- * @example
68
- * ```typescript
69
- * min_(asUint8(50), asUint8(30), asUint8(100)); // Uint8 (30)
70
- * min_(asUint8(0), asUint8(255)); // Uint8 (0)
71
- * ```
72
- */
73
15
  const min_ = (...values) => castType(Math.min(...values));
74
- /**
75
- * Returns the maximum of the given Uint8 values.
76
- * @param values - The Uint8 values to compare
77
- * @returns The maximum value
78
- */
79
16
  const max_ = (...values) => castType(Math.max(...values));
80
- /**
81
- * Raises x to the power of y, clamped to Uint8 range.
82
- * @param x - The base
83
- * @param y - The exponent
84
- * @returns x^y clamped to [0, 255]
85
- */
86
17
  const pow = (x, y) => clamp(x ** y);
87
- /**
88
- * Adds two Uint8 values, clamped to Uint8 range.
89
- * @param x - First operand
90
- * @param y - Second operand
91
- * @returns x + y clamped to [0, 255]
92
- */
93
18
  const add = (x, y) => clamp(x + y);
94
- /**
95
- * Subtracts two Uint8 values, clamped to Uint8 range.
96
- * @param x - First operand
97
- * @param y - Second operand
98
- * @returns x - y clamped to [0, 255]
99
- */
100
19
  const sub = (x, y) => clamp(x - y);
101
- /**
102
- * Multiplies two Uint8 values, clamped to Uint8 range.
103
- * @param x - First operand
104
- * @param y - Second operand
105
- * @returns x * y clamped to [0, 255]
106
- */
107
20
  const mul = (x, y) => clamp(x * y);
108
- /**
109
- * Divides two Uint8 values, clamped to Uint8 range.
110
- * @param x - The dividend
111
- * @param y - The divisor (cannot be 0)
112
- * @returns ⌊x / y⌋ clamped to [0, 255]
113
- */
114
21
  const div = (x, y) => clamp(Math.floor(x / y));
115
- /**
116
- * Generates a random Uint8 value within the specified range.
117
- * @param min - The minimum value (inclusive)
118
- * @param max - The maximum value (inclusive)
119
- * @returns A random Uint8 between min and max
120
- */
121
22
  const random = (min, max) => castType(randomImpl(castTypeImpl(min), castTypeImpl(max)));
122
23
  /**
123
24
  * Checks if a number is a Uint8 (8-bit unsigned integer in the range [0, 255]).
25
+ *
124
26
  * @param value The value to check.
125
27
  * @returns `true` if the value is a Uint8, `false` otherwise.
126
28
  */
127
29
  const isUint8 = is;
128
30
  /**
129
- * Casts a number to a Uint8 type.
31
+ * Casts a number to a Uint8 type. This function validates that the input is
32
+ * within the Uint8 range [0, 255] and is an integer, then returns it with the
33
+ * Uint8 brand.
34
+ *
130
35
  * @param value The value to cast.
131
36
  * @returns The value as a Uint8 type.
132
37
  * @throws {TypeError} If the value is not a valid 8-bit unsigned integer.
133
- * @example
134
- * ```typescript
135
- * const x = asUint8(255); // Uint8
136
- * const y = asUint8(0); // Uint8
137
- * // asUint8(-1); // throws TypeError
138
- * // asUint8(256); // throws TypeError
139
- * // asUint8(1.5); // throws TypeError
140
- * ```
141
38
  */
142
39
  const asUint8 = castType;
143
40
  /**
144
- * Namespace providing type-safe arithmetic operations for 8-bit unsigned integers.
41
+ * Namespace providing type-safe arithmetic operations for 8-bit unsigned
42
+ * integers.
145
43
  *
146
44
  * All operations automatically clamp results to the valid Uint8 range [0, 255].
147
- * This ensures that all arithmetic maintains the 8-bit unsigned integer constraint,
148
- * with negative results clamped to 0 and overflow results clamped to MAX_VALUE.
149
- *
150
- * @example
151
- * ```typescript
152
- * const a = asUint8(200);
153
- * const b = asUint8(100);
154
- *
155
- * // Arithmetic operations with automatic clamping
156
- * const sum = Uint8.add(a, b); // Uint8 (255 - clamped to MAX_VALUE)
157
- * const diff = Uint8.sub(a, b); // Uint8 (100)
158
- * const reverseDiff = Uint8.sub(b, a); // Uint8 (0 - clamped to MIN_VALUE)
159
- * const product = Uint8.mul(a, b); // Uint8 (255 - clamped due to overflow)
160
- *
161
- * // Range operations
162
- * const clamped = Uint8.clamp(-10); // Uint8 (0)
163
- * const minimum = Uint8.min(a, b); // Uint8 (100)
164
- * const maximum = Uint8.max(a, b); // Uint8 (200)
165
- *
166
- * // Utility operations
167
- * const random = Uint8.random(asUint8(50), asUint8(150)); // Uint8 (random value in [50, 150])
168
- * const power = Uint8.pow(asUint8(2), asUint8(7)); // Uint8 (128)
169
- * ```
45
+ * This ensures that all arithmetic maintains the 8-bit unsigned integer
46
+ * constraint, with negative results clamped to 0 and overflow results clamped
47
+ * to MAX_VALUE.
170
48
  */
171
49
  const Uint8 = {
172
50
  /**
173
- * Type guard to check if a value is a Uint8.
51
+ * Type guard that checks if a value is an 8-bit unsigned integer.
52
+ *
174
53
  * @param value The value to check.
175
- * @returns `true` if the value is an 8-bit unsigned integer, `false` otherwise.
54
+ * @returns `true` if the value is an 8-bit unsigned integer, `false`
55
+ * otherwise.
176
56
  */
177
57
  is,
178
58
  /**
179
59
  * The minimum value for an 8-bit unsigned integer.
60
+ *
180
61
  * @readonly
181
62
  */
182
63
  MIN_VALUE,
183
64
  /**
184
65
  * The maximum value for an 8-bit unsigned integer.
66
+ *
185
67
  * @readonly
186
68
  */
187
69
  MAX_VALUE,
188
70
  /**
189
71
  * Returns the larger of the given Uint8 values.
72
+ *
190
73
  * @param values The Uint8 values to compare.
191
74
  * @returns The maximum value as a Uint8.
192
75
  */
193
76
  max: max_,
194
77
  /**
195
78
  * Returns the smaller of the given Uint8 values.
79
+ *
196
80
  * @param values The Uint8 values to compare.
197
81
  * @returns The minimum value as a Uint8.
198
82
  */
199
83
  min: min_,
200
84
  /**
201
85
  * Clamps a number to the Uint8 range.
86
+ *
202
87
  * @param value The number to clamp.
203
88
  * @returns The value clamped to [0, 255] as a Uint8.
204
89
  */
205
90
  clamp,
206
91
  /**
207
92
  * Generates a random Uint8 value within the specified range.
93
+ *
208
94
  * @param min The minimum value (inclusive).
209
95
  * @param max The maximum value (inclusive).
210
96
  * @returns A random Uint8 between min and max.
211
97
  */
212
98
  random,
213
99
  /**
214
- * Raises a Uint8 to the power of another Uint8.
215
- * @param a The base Uint8.
216
- * @param b The exponent Uint8.
217
- * @returns `a ** b` clamped to [0, 255] as a Uint8.
100
+ * Raises x to the power of y, clamped to Uint8 range.
101
+ *
102
+ * @param x - The base
103
+ * @param y - The exponent
104
+ * @returns `x ** y` clamped to [0, 255]
218
105
  */
219
106
  pow,
220
107
  /**
221
- * Adds two Uint8 values.
222
- * @param a The first Uint8.
223
- * @param b The second Uint8.
224
- * @returns `a + b` clamped to [0, 255] as a Uint8.
108
+ * Adds two Uint8 values, clamped to Uint8 range.
109
+ *
110
+ * @param x - First operand
111
+ * @param y - Second operand
112
+ * @returns `x + y` clamped to [0, 255]
225
113
  */
226
114
  add,
227
115
  /**
228
- * Subtracts one Uint8 from another.
229
- * @param a The minuend Uint8.
230
- * @param b The subtrahend Uint8.
231
- * @returns `a - b` clamped to [0, 255] as a Uint8 (minimum 0).
116
+ * Subtracts two Uint8 values, clamped to Uint8 range.
117
+ *
118
+ * @param x - First operand
119
+ * @param y - Second operand
120
+ * @returns `x - y` clamped to [0, 255]
232
121
  */
233
122
  sub,
234
123
  /**
235
- * Multiplies two Uint8 values.
236
- * @param a The first Uint8.
237
- * @param b The second Uint8.
238
- * @returns `a * b` clamped to [0, 255] as a Uint8.
124
+ * Multiplies two Uint8 values, clamped to Uint8 range.
125
+ *
126
+ * @param x - First operand
127
+ * @param y - Second operand
128
+ * @returns `x * y` clamped to [0, 255]
239
129
  */
240
130
  mul,
241
131
  /**
242
- * Divides one Uint8 by another using floor division.
243
- * @param a The dividend Uint8.
244
- * @param b The divisor Uint8 (cannot be 0).
245
- * @returns `⌊a / b⌋` clamped to [0, 255] as a Uint8.
132
+ * Divides two Uint8 values, clamped to Uint8 range.
133
+ *
134
+ * @param x - The dividend
135
+ * @param y - The divisor (cannot be 0)
136
+ * @returns `⌊x / y⌋` clamped to [0, 255]
246
137
  */
247
138
  div,
248
139
  };
@@ -1 +1 @@
1
- {"version":3,"file":"uint8.mjs","sources":["../../../src/number/enum/uint8.mts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA,MAAM,iBAAiB,GAAG,uCAAuC;AAEjE,MAAM,EACJ,SAAS,EACT,SAAS,EACT,MAAM,EAAE,UAAU,EAClB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,SAAS,GACjB,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,mBAAmB,CAC7D;AACE,IAAA,oBAAoB,EAAE,aAAa;AACnC,IAAA,SAAS,EAAE,CAAC;AACZ,IAAA,SAAS,EAAE,GAAG;IACd,iBAAiB;AACT,CAAA,CACX;AAED;;;;;;;;;;;;;;;;;;AAkBG;AACH,MAAM,EAAE,GAAG,CAAC,CAAS,KAAiB,MAAM,CAAC,CAAC,CAAC;AAE/C;;;;;;;;;;;;;;;;;;;;;AAqBG;AACH,MAAM,QAAQ,GAAG,CAAC,CAAS;AACzB;AACA,YAAY,CAAC,CAAC,CAAU;AAE1B;;;;AAIG;AACH,MAAM,KAAK,GAAG,CAAC,CAAS,KAAY,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAE1D;;;;;;;;;;;AAWG;AACH,MAAM,IAAI,GAAG,CAAC,GAAG,MAAwB,KACvC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;AAE/B;;;;AAIG;AACH,MAAM,IAAI,GAAG,CAAC,GAAG,MAAwB,KACvC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;AAE/B;;;;;AAKG;AACH,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,KAAY,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AAExD;;;;;AAKG;AACH,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,KAAY,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;AAEvD;;;;;AAKG;AACH,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,KAAY,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;AAEvD;;;;;AAKG;AACH,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,KAAY,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;AAEvD;;;;;AAKG;AACH,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAoB,KAAY,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/E;;;;;AAKG;AACH,MAAM,MAAM,GAAG,CAAC,GAAU,EAAE,GAAU,KACpC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;AAE5D;;;;AAIG;AACI,MAAM,OAAO,GAAG;AAEvB;;;;;;;;;;;;;AAaG;AACI,MAAM,OAAO,GAAG;AAEvB;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BG;AACI,MAAM,KAAK,GAAG;AACnB;;;;AAIG;IACH,EAAE;AAEF;;;AAGG;IACH,SAAS;AAET;;;AAGG;IACH,SAAS;AAET;;;;AAIG;AACH,IAAA,GAAG,EAAE,IAAI;AAET;;;;AAIG;AACH,IAAA,GAAG,EAAE,IAAI;AAET;;;;AAIG;IACH,KAAK;AAEL;;;;;AAKG;IACH,MAAM;AAEN;;;;;AAKG;IACH,GAAG;AAEH;;;;;AAKG;IACH,GAAG;AAEH;;;;;AAKG;IACH,GAAG;AAEH;;;;;AAKG;IACH,GAAG;AAEH;;;;;AAKG;IACH,GAAG;;;;;"}
1
+ {"version":3,"file":"uint8.mjs","sources":["../../../src/number/enum/uint8.mts"],"sourcesContent":[null],"names":[],"mappings":";;AAGA,MAAM,iBAAiB,GAAG,uCAAuC;AAEjE,MAAM,EACJ,SAAS,EACT,SAAS,EACT,MAAM,EAAE,UAAU,EAClB,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,SAAS,GACjB,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,mBAAmB,CAC7D;AACE,IAAA,oBAAoB,EAAE,aAAa;AACnC,IAAA,SAAS,EAAE,CAAC;AACZ,IAAA,SAAS,EAAE,GAAG;IACd,iBAAiB;AACT,CAAA,CACX;AAED,MAAM,EAAE,GAAG,CAAC,CAAS,KAAiB,MAAM,CAAC,CAAC,CAAC;AAE/C,MAAM,QAAQ,GAAG,CAAC,CAAS;AACzB;AACA,YAAY,CAAC,CAAC,CAAU;AAE1B,MAAM,KAAK,GAAG,CAAC,CAAS,KAAY,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;AAE1D,MAAM,IAAI,GAAG,CAAC,GAAG,MAAwB,KACvC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;AAE/B,MAAM,IAAI,GAAG,CAAC,GAAG,MAAwB,KACvC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,CAAC;AAE/B,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,KAAY,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AAExD,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,KAAY,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;AAEvD,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,KAAY,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;AAEvD,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAQ,KAAY,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;AAEvD,MAAM,GAAG,GAAG,CAAC,CAAQ,EAAE,CAAoB,KAAY,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;AAE/E,MAAM,MAAM,GAAG,CAAC,GAAU,EAAE,GAAU,KACpC,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,CAAC,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC;AAE5D;;;;;AAKG;AACI,MAAM,OAAO,GAAG;AAEvB;;;;;;;;AAQG;AACI,MAAM,OAAO,GAAG;AAEvB;;;;;;;;AAQG;AACI,MAAM,KAAK,GAAG;AACnB;;;;;;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;;;;;AAKG;IACH,KAAK;AAEL;;;;;;AAMG;IACH,MAAM;AAEN;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;AAEH;;;;;;AAMG;IACH,GAAG;;;;;"}