ts-data-forge 11.0.0 → 11.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 (171) hide show
  1. package/dist/number/branded-types/finite-number.d.mts +47 -61
  2. package/dist/number/branded-types/finite-number.d.mts.map +1 -1
  3. package/dist/number/branded-types/finite-number.mjs +37 -41
  4. package/dist/number/branded-types/finite-number.mjs.map +1 -1
  5. package/dist/number/branded-types/int.d.mts +40 -46
  6. package/dist/number/branded-types/int.d.mts.map +1 -1
  7. package/dist/number/branded-types/int.mjs +29 -31
  8. package/dist/number/branded-types/int.mjs.map +1 -1
  9. package/dist/number/branded-types/int16.d.mts +65 -58
  10. package/dist/number/branded-types/int16.d.mts.map +1 -1
  11. package/dist/number/branded-types/int16.mjs +49 -45
  12. package/dist/number/branded-types/int16.mjs.map +1 -1
  13. package/dist/number/branded-types/int32.d.mts +65 -58
  14. package/dist/number/branded-types/int32.d.mts.map +1 -1
  15. package/dist/number/branded-types/int32.mjs +49 -45
  16. package/dist/number/branded-types/int32.mjs.map +1 -1
  17. package/dist/number/branded-types/negative-finite-number.d.mts +68 -59
  18. package/dist/number/branded-types/negative-finite-number.d.mts.map +1 -1
  19. package/dist/number/branded-types/negative-finite-number.mjs +52 -46
  20. package/dist/number/branded-types/negative-finite-number.mjs.map +1 -1
  21. package/dist/number/branded-types/negative-int.d.mts +60 -48
  22. package/dist/number/branded-types/negative-int.d.mts.map +1 -1
  23. package/dist/number/branded-types/negative-int.mjs +40 -36
  24. package/dist/number/branded-types/negative-int.mjs.map +1 -1
  25. package/dist/number/branded-types/negative-safe-int.d.mts +57 -56
  26. package/dist/number/branded-types/negative-safe-int.d.mts.map +1 -1
  27. package/dist/number/branded-types/negative-safe-int.mjs +40 -41
  28. package/dist/number/branded-types/negative-safe-int.mjs.map +1 -1
  29. package/dist/number/branded-types/non-negative-finite-number.d.mts +74 -64
  30. package/dist/number/branded-types/non-negative-finite-number.d.mts.map +1 -1
  31. package/dist/number/branded-types/non-negative-finite-number.mjs +58 -51
  32. package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
  33. package/dist/number/branded-types/non-negative-int16.d.mts +64 -57
  34. package/dist/number/branded-types/non-negative-int16.d.mts.map +1 -1
  35. package/dist/number/branded-types/non-negative-int16.mjs +47 -43
  36. package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
  37. package/dist/number/branded-types/non-negative-int32.d.mts +64 -58
  38. package/dist/number/branded-types/non-negative-int32.d.mts.map +1 -1
  39. package/dist/number/branded-types/non-negative-int32.mjs +47 -44
  40. package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
  41. package/dist/number/branded-types/non-positive-finite-number.d.mts +64 -54
  42. package/dist/number/branded-types/non-positive-finite-number.d.mts.map +1 -1
  43. package/dist/number/branded-types/non-positive-finite-number.mjs +48 -41
  44. package/dist/number/branded-types/non-positive-finite-number.mjs.map +1 -1
  45. package/dist/number/branded-types/non-positive-int.d.mts +41 -146
  46. package/dist/number/branded-types/non-positive-int.d.mts.map +1 -1
  47. package/dist/number/branded-types/non-positive-int.mjs +27 -107
  48. package/dist/number/branded-types/non-positive-int.mjs.map +1 -1
  49. package/dist/number/branded-types/non-positive-safe-int.d.mts +54 -53
  50. package/dist/number/branded-types/non-positive-safe-int.d.mts.map +1 -1
  51. package/dist/number/branded-types/non-positive-safe-int.mjs +37 -39
  52. package/dist/number/branded-types/non-positive-safe-int.mjs.map +1 -1
  53. package/dist/number/branded-types/non-zero-finite-number.d.mts +62 -49
  54. package/dist/number/branded-types/non-zero-finite-number.d.mts.map +1 -1
  55. package/dist/number/branded-types/non-zero-finite-number.mjs +46 -37
  56. package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
  57. package/dist/number/branded-types/non-zero-int.d.mts +51 -38
  58. package/dist/number/branded-types/non-zero-int.d.mts.map +1 -1
  59. package/dist/number/branded-types/non-zero-int.mjs +31 -27
  60. package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
  61. package/dist/number/branded-types/non-zero-int16.d.mts +52 -53
  62. package/dist/number/branded-types/non-zero-int16.d.mts.map +1 -1
  63. package/dist/number/branded-types/non-zero-int16.mjs +36 -39
  64. package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
  65. package/dist/number/branded-types/non-zero-int32.d.mts +52 -54
  66. package/dist/number/branded-types/non-zero-int32.d.mts.map +1 -1
  67. package/dist/number/branded-types/non-zero-int32.mjs +36 -40
  68. package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
  69. package/dist/number/branded-types/non-zero-safe-int.d.mts +53 -54
  70. package/dist/number/branded-types/non-zero-safe-int.d.mts.map +1 -1
  71. package/dist/number/branded-types/non-zero-safe-int.mjs +36 -40
  72. package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
  73. package/dist/number/branded-types/non-zero-uint16.d.mts +52 -53
  74. package/dist/number/branded-types/non-zero-uint16.d.mts.map +1 -1
  75. package/dist/number/branded-types/non-zero-uint16.mjs +35 -39
  76. package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
  77. package/dist/number/branded-types/non-zero-uint32.d.mts +52 -53
  78. package/dist/number/branded-types/non-zero-uint32.d.mts.map +1 -1
  79. package/dist/number/branded-types/non-zero-uint32.mjs +35 -39
  80. package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
  81. package/dist/number/branded-types/positive-finite-number.d.mts +74 -63
  82. package/dist/number/branded-types/positive-finite-number.d.mts.map +1 -1
  83. package/dist/number/branded-types/positive-finite-number.mjs +58 -50
  84. package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
  85. package/dist/number/branded-types/positive-int.d.mts +46 -68
  86. package/dist/number/branded-types/positive-int.d.mts.map +1 -1
  87. package/dist/number/branded-types/positive-int.mjs +34 -49
  88. package/dist/number/branded-types/positive-int.mjs.map +1 -1
  89. package/dist/number/branded-types/positive-int16.d.mts +61 -57
  90. package/dist/number/branded-types/positive-int16.d.mts.map +1 -1
  91. package/dist/number/branded-types/positive-int16.mjs +44 -43
  92. package/dist/number/branded-types/positive-int16.mjs.map +1 -1
  93. package/dist/number/branded-types/positive-int32.d.mts +61 -57
  94. package/dist/number/branded-types/positive-int32.d.mts.map +1 -1
  95. package/dist/number/branded-types/positive-int32.mjs +44 -43
  96. package/dist/number/branded-types/positive-int32.mjs.map +1 -1
  97. package/dist/number/branded-types/positive-safe-int.d.mts +62 -57
  98. package/dist/number/branded-types/positive-safe-int.d.mts.map +1 -1
  99. package/dist/number/branded-types/positive-safe-int.mjs +45 -43
  100. package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
  101. package/dist/number/branded-types/positive-uint16.d.mts +61 -57
  102. package/dist/number/branded-types/positive-uint16.d.mts.map +1 -1
  103. package/dist/number/branded-types/positive-uint16.mjs +44 -43
  104. package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
  105. package/dist/number/branded-types/positive-uint32.d.mts +61 -58
  106. package/dist/number/branded-types/positive-uint32.d.mts.map +1 -1
  107. package/dist/number/branded-types/positive-uint32.mjs +44 -44
  108. package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
  109. package/dist/number/branded-types/safe-int.d.mts +43 -62
  110. package/dist/number/branded-types/safe-int.d.mts.map +1 -1
  111. package/dist/number/branded-types/safe-int.mjs +35 -42
  112. package/dist/number/branded-types/safe-int.mjs.map +1 -1
  113. package/dist/number/branded-types/safe-uint.d.mts +62 -57
  114. package/dist/number/branded-types/safe-uint.d.mts.map +1 -1
  115. package/dist/number/branded-types/safe-uint.mjs +46 -44
  116. package/dist/number/branded-types/safe-uint.mjs.map +1 -1
  117. package/dist/number/branded-types/uint.d.mts +63 -50
  118. package/dist/number/branded-types/uint.d.mts.map +1 -1
  119. package/dist/number/branded-types/uint.mjs +42 -39
  120. package/dist/number/branded-types/uint.mjs.map +1 -1
  121. package/dist/number/branded-types/uint16.d.mts +60 -58
  122. package/dist/number/branded-types/uint16.d.mts.map +1 -1
  123. package/dist/number/branded-types/uint16.mjs +44 -43
  124. package/dist/number/branded-types/uint16.mjs.map +1 -1
  125. package/dist/number/branded-types/uint32.d.mts +59 -55
  126. package/dist/number/branded-types/uint32.d.mts.map +1 -1
  127. package/dist/number/branded-types/uint32.mjs +42 -42
  128. package/dist/number/branded-types/uint32.mjs.map +1 -1
  129. package/dist/number/enum/int8.d.mts +56 -65
  130. package/dist/number/enum/int8.d.mts.map +1 -1
  131. package/dist/number/enum/int8.mjs +44 -43
  132. package/dist/number/enum/int8.mjs.map +1 -1
  133. package/dist/number/enum/uint8.d.mts +60 -58
  134. package/dist/number/enum/uint8.d.mts.map +1 -1
  135. package/dist/number/enum/uint8.mjs +44 -43
  136. package/dist/number/enum/uint8.mjs.map +1 -1
  137. package/package.json +2 -1
  138. package/src/number/branded-types/finite-number.mts +47 -61
  139. package/src/number/branded-types/int.mts +40 -46
  140. package/src/number/branded-types/int16.mts +65 -58
  141. package/src/number/branded-types/int32.mts +65 -58
  142. package/src/number/branded-types/negative-finite-number.mts +68 -68
  143. package/src/number/branded-types/negative-int.mts +60 -57
  144. package/src/number/branded-types/negative-safe-int.mts +57 -65
  145. package/src/number/branded-types/non-negative-finite-number.mts +74 -64
  146. package/src/number/branded-types/non-negative-int16.mts +64 -57
  147. package/src/number/branded-types/non-negative-int32.mts +64 -58
  148. package/src/number/branded-types/non-positive-finite-number.mts +64 -54
  149. package/src/number/branded-types/non-positive-int.mts +41 -146
  150. package/src/number/branded-types/non-positive-safe-int.mts +54 -53
  151. package/src/number/branded-types/non-zero-finite-number.mts +62 -51
  152. package/src/number/branded-types/non-zero-int.mts +51 -38
  153. package/src/number/branded-types/non-zero-int16.mts +52 -53
  154. package/src/number/branded-types/non-zero-int32.mts +52 -54
  155. package/src/number/branded-types/non-zero-safe-int.mts +53 -54
  156. package/src/number/branded-types/non-zero-uint16.mts +52 -53
  157. package/src/number/branded-types/non-zero-uint32.mts +52 -53
  158. package/src/number/branded-types/positive-finite-number.mts +74 -63
  159. package/src/number/branded-types/positive-int.mts +46 -68
  160. package/src/number/branded-types/positive-int16.mts +61 -57
  161. package/src/number/branded-types/positive-int32.mts +61 -57
  162. package/src/number/branded-types/positive-safe-int.mts +62 -57
  163. package/src/number/branded-types/positive-uint16.mts +61 -57
  164. package/src/number/branded-types/positive-uint32.mts +61 -58
  165. package/src/number/branded-types/safe-int.mts +43 -62
  166. package/src/number/branded-types/safe-uint.mts +62 -57
  167. package/src/number/branded-types/uint.mts +63 -50
  168. package/src/number/branded-types/uint16.mts +60 -58
  169. package/src/number/branded-types/uint32.mts +59 -55
  170. package/src/number/enum/int8.mts +56 -65
  171. package/src/number/enum/uint8.mts +60 -58
@@ -1,20 +1,24 @@
1
1
  import { type Uint16 as TtfImported_Uint16 } from 'ts-type-forge';
2
2
  export type Uint16 = TtfImported_Uint16;
3
3
  /**
4
- * Checks if a number is a Uint16 (16-bit unsigned integer in the range [0,
5
- * 2^16)).
4
+ * Type guard that checks if a value is a non-negative integer less than 2^16.
6
5
  *
7
- * @param value The value to check.
8
- * @returns `true` if the value is a Uint16, `false` otherwise.
6
+ * Returns `true` for a non-negative integer less than 2^16 — a value with no
7
+ * fractional component.
8
+ *
9
+ * @param value - The value to check
10
+ * @returns `true` if the value is a non-negative integer less than 2^16, `false` otherwise
9
11
  */
10
12
  export declare const isUint16: (a: number) => a is TtfImported_Uint16;
11
13
  /**
12
- * Casts a number to a Uint16 type.
14
+ * Casts a `number` to the `Uint16` branded type.
15
+ *
16
+ * Validates that the value is a non-negative integer less than 2^16 and returns
17
+ * it with the `Uint16` brand. Throws a `TypeError` otherwise.
13
18
  *
14
- * @param value The value to cast.
15
- * @returns The value as a Uint16 type.
16
- * @throws {TypeError} If the value is not a non-negative integer less than
17
- * 2^16.
19
+ * @param value - The value to cast
20
+ * @returns The value as an `Uint16`
21
+ * @throws {TypeError} If the value is not a non-negative integer less than 2^16
18
22
  */
19
23
  export declare const asUint16: <N extends number>(x: N) => number & {
20
24
  readonly "< 2^16": true;
@@ -33,102 +37,100 @@ export declare const asUint16: <N extends number>(x: N) => number & {
33
37
  'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
34
38
  }> & N;
35
39
  /**
36
- * Namespace providing type-safe arithmetic operations for 16-bit unsigned
37
- * integers.
40
+ * Namespace providing type-safe operations for the `Uint16` branded type.
38
41
  *
39
- * All operations automatically clamp results to the valid Uint16 range [0,
40
- * 65535]. This ensures that all arithmetic maintains the 16-bit unsigned
41
- * integer constraint, with negative results clamped to 0 and overflow results
42
- * clamped to MAX_VALUE.
42
+ * The `Uint16` type represents a non-negative integer less than 2^16. Division
43
+ * (`div`) uses floor division.
43
44
  */
44
45
  export declare const Uint16: {
45
46
  /**
46
- * Type guard to check if a value is a Uint16.
47
+ * Type guard that checks if a value is a non-negative integer less than 2^16.
47
48
  *
48
- * @param value The value to check.
49
- * @returns `true` if the value is a 16-bit unsigned integer, `false`
50
- * otherwise.
49
+ * @param value - The value to check
50
+ * @returns `true` if the value is a non-negative integer less than 2^16, `false` otherwise
51
+ * @see {@link isUint16} for usage examples
51
52
  */
52
53
  readonly is: (a: number) => a is TtfImported_Uint16;
53
54
  /**
54
- * The minimum value for a 16-bit unsigned integer.
55
- *
56
- * @readonly
55
+ * The smallest value representable as `Uint16`.
57
56
  */
58
57
  readonly MIN_VALUE: 0;
59
58
  /**
60
- * The maximum value for a 16-bit unsigned integer.
61
- *
62
- * @readonly
59
+ * The largest value representable as `Uint16`.
63
60
  */
64
61
  readonly MAX_VALUE: number;
65
62
  /**
66
- * Returns the smaller of two Uint16 values.
63
+ * Returns the smallest of the given non-negative integers.
67
64
  *
68
- * @param a The first Uint16.
69
- * @param b The second Uint16.
70
- * @returns The minimum value as a Uint16.
65
+ * @param values - The non-negative integers to compare (at least one required)
66
+ * @returns The smallest value as an `Uint16`
71
67
  */
72
68
  readonly min: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_Uint16>[]) => TtfImported_Uint16;
73
69
  /**
74
- * Returns the larger of two Uint16 values.
70
+ * Returns the largest of the given non-negative integers.
75
71
  *
76
- * @param a The first Uint16.
77
- * @param b The second Uint16.
78
- * @returns The maximum value as a Uint16.
72
+ * @param values - The non-negative integers to compare (at least one required)
73
+ * @returns The largest value as an `Uint16`
79
74
  */
80
75
  readonly max: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_Uint16>[]) => TtfImported_Uint16;
81
76
  /**
82
- * Clamps a number to the Uint16 range.
77
+ * Clamps a `number` into the `Uint16` range, rounding to the nearest integer
78
+ * and constraining the result to `[MIN_VALUE, MAX_VALUE]`.
83
79
  *
84
- * @param value The number to clamp.
85
- * @returns The value clamped to [0, 65535] as a Uint16.
80
+ * @param value - The value to clamp
81
+ * @returns The clamped value as an `Uint16`
86
82
  */
87
83
  readonly clamp: (x: number) => TtfImported_Uint16;
88
84
  /**
89
- * Generates a random Uint16 value within the valid range.
85
+ * Generates a random `Uint16` within the given range.
86
+ *
87
+ * The range is inclusive on both ends.
90
88
  *
91
- * @returns A random Uint16 between 0 and 65535.
89
+ * @param min - The minimum value (inclusive)
90
+ * @param max - The maximum value (inclusive)
91
+ * @returns A random `Uint16` in `[min, max]`
92
92
  */
93
93
  readonly random: (min?: import("ts-type-forge").WithSmallInt<TtfImported_Uint16> | undefined, max?: import("ts-type-forge").WithSmallInt<TtfImported_Uint16> | undefined) => TtfImported_Uint16;
94
94
  /**
95
- * Raises a Uint16 to the power of another Uint16.
95
+ * Raises `a` to the power `b`, returning `a ** b` as an `Uint16` (floored to
96
+ * an integer).
96
97
  *
97
- * @param a The base Uint16.
98
- * @param b The exponent Uint16.
99
- * @returns `a ** b` clamped to [0, 65535] as a Uint16.
98
+ * @param a - The base non-negative integer
99
+ * @param b - The exponent non-negative integer
100
+ * @returns `a ** b` as an `Uint16`
100
101
  */
101
102
  readonly pow: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint16>, y: import("ts-type-forge").WithSmallInt<TtfImported_Uint16>) => TtfImported_Uint16;
102
103
  /**
103
- * Adds two Uint16 values.
104
+ * Adds two non-negative integers, returning `a + b` as an `Uint16`.
104
105
  *
105
- * @param a The first Uint16.
106
- * @param b The second Uint16.
107
- * @returns `a + b` clamped to [0, 65535] as a Uint16.
106
+ * @param a - The first non-negative integer
107
+ * @param b - The second non-negative integer
108
+ * @returns The sum of `a` and `b` as an `Uint16`
108
109
  */
109
110
  readonly add: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint16>, y: import("ts-type-forge").WithSmallInt<TtfImported_Uint16>) => TtfImported_Uint16;
110
111
  /**
111
- * Subtracts one Uint16 from another.
112
+ * Subtracts two non-negative integers, returning `a - b` as an `Uint16`.
112
113
  *
113
- * @param a The minuend Uint16.
114
- * @param b The subtrahend Uint16.
115
- * @returns `a - b` clamped to [0, 65535] as a Uint16 (minimum 0).
114
+ * @param a - The first non-negative integer
115
+ * @param b - The second non-negative integer
116
+ * @returns The difference of `a` and `b` as an `Uint16`
116
117
  */
117
118
  readonly sub: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint16>, y: import("ts-type-forge").WithSmallInt<TtfImported_Uint16>) => TtfImported_Uint16;
118
119
  /**
119
- * Multiplies two Uint16 values.
120
+ * Multiplies two non-negative integers, returning `a * b` as an `Uint16`.
120
121
  *
121
- * @param a The first Uint16.
122
- * @param b The second Uint16.
123
- * @returns `a * b` clamped to [0, 65535] as a Uint16.
122
+ * @param a - The first non-negative integer
123
+ * @param b - The second non-negative integer
124
+ * @returns The product of `a` and `b` as an `Uint16`
124
125
  */
125
126
  readonly mul: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint16>, y: import("ts-type-forge").WithSmallInt<TtfImported_Uint16>) => TtfImported_Uint16;
126
127
  /**
127
- * Divides one Uint16 by another using floor division.
128
+ * Divides two non-negative integers using floor division (`⌊a / b⌋`): the
129
+ * result is `a / b` rounded toward negative infinity, as an `Uint16`.
128
130
  *
129
- * @param a The dividend Uint16.
130
- * @param b The divisor Uint16.
131
- * @returns `⌊a / b⌋` clamped to [0, 65535] as a Uint16.
131
+ * @param a - The dividend
132
+ * @param b - The divisor (must be non-zero)
133
+ * @returns The floored quotient as an `Uint16`
132
134
  */
133
135
  readonly div: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint16>, y: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | import("ts-type-forge").NormalizeBrandUnion<number & {
134
136
  readonly "!=0": true;
@@ -1 +1 @@
1
- {"version":3,"file":"uint16.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/uint16.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAIlE,MAAM,MAAM,MAAM,GAAG,kBAAkB,CAAC;AA+BxC;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,wCAAK,CAAC;AAE3B;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;MAAW,CAAC;AAEjC;;;;;;;;GAQG;AACH,eAAO,MAAM,MAAM;IACjB;;;;;;OAMG;;IAGH;;;;OAIG;;IAGH;;;;OAIG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;OAKG;;IAGH;;;;OAIG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;;;;;;;;;;;;;;;;;CAEK,CAAC"}
1
+ {"version":3,"file":"uint16.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/uint16.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAIlE,MAAM,MAAM,MAAM,GAAG,kBAAkB,CAAC;AA+BxC;;;;;;;;GAQG;AACH,eAAO,MAAM,QAAQ,wCAAK,CAAC;AAE3B;;;;;;;;;GASG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;MAAW,CAAC;AAEjC;;;;;GAKG;AACH,eAAO,MAAM,MAAM;IACjB;;;;;;OAMG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;OAOG;;;;;;;;;;;;;;;;;;CAEK,CAAC"}
@@ -25,92 +25,93 @@ const isUint16 = is;
25
25
  const asUint16 = castType;
26
26
  const Uint16 = {
27
27
  /**
28
- * Type guard to check if a value is a Uint16.
28
+ * Type guard that checks if a value is a non-negative integer less than 2^16.
29
29
  *
30
- * @param value The value to check.
31
- * @returns `true` if the value is a 16-bit unsigned integer, `false`
32
- * otherwise.
30
+ * @param value - The value to check
31
+ * @returns `true` if the value is a non-negative integer less than 2^16, `false` otherwise
32
+ * @see {@link isUint16} for usage examples
33
33
  */
34
34
  is,
35
35
  /**
36
- * The minimum value for a 16-bit unsigned integer.
37
- *
38
- * @readonly
36
+ * The smallest value representable as `Uint16`.
39
37
  */
40
38
  MIN_VALUE,
41
39
  /**
42
- * The maximum value for a 16-bit unsigned integer.
43
- *
44
- * @readonly
40
+ * The largest value representable as `Uint16`.
45
41
  */
46
42
  MAX_VALUE,
47
43
  /**
48
- * Returns the smaller of two Uint16 values.
44
+ * Returns the smallest of the given non-negative integers.
49
45
  *
50
- * @param a The first Uint16.
51
- * @param b The second Uint16.
52
- * @returns The minimum value as a Uint16.
46
+ * @param values - The non-negative integers to compare (at least one required)
47
+ * @returns The smallest value as an `Uint16`
53
48
  */
54
49
  min: min_,
55
50
  /**
56
- * Returns the larger of two Uint16 values.
51
+ * Returns the largest of the given non-negative integers.
57
52
  *
58
- * @param a The first Uint16.
59
- * @param b The second Uint16.
60
- * @returns The maximum value as a Uint16.
53
+ * @param values - The non-negative integers to compare (at least one required)
54
+ * @returns The largest value as an `Uint16`
61
55
  */
62
56
  max: max_,
63
57
  /**
64
- * Clamps a number to the Uint16 range.
58
+ * Clamps a `number` into the `Uint16` range, rounding to the nearest integer
59
+ * and constraining the result to `[MIN_VALUE, MAX_VALUE]`.
65
60
  *
66
- * @param value The number to clamp.
67
- * @returns The value clamped to [0, 65535] as a Uint16.
61
+ * @param value - The value to clamp
62
+ * @returns The clamped value as an `Uint16`
68
63
  */
69
64
  clamp,
70
65
  /**
71
- * Generates a random Uint16 value within the valid range.
66
+ * Generates a random `Uint16` within the given range.
67
+ *
68
+ * The range is inclusive on both ends.
72
69
  *
73
- * @returns A random Uint16 between 0 and 65535.
70
+ * @param min - The minimum value (inclusive)
71
+ * @param max - The maximum value (inclusive)
72
+ * @returns A random `Uint16` in `[min, max]`
74
73
  */
75
74
  random,
76
75
  /**
77
- * Raises a Uint16 to the power of another Uint16.
76
+ * Raises `a` to the power `b`, returning `a ** b` as an `Uint16` (floored to
77
+ * an integer).
78
78
  *
79
- * @param a The base Uint16.
80
- * @param b The exponent Uint16.
81
- * @returns `a ** b` clamped to [0, 65535] as a Uint16.
79
+ * @param a - The base non-negative integer
80
+ * @param b - The exponent non-negative integer
81
+ * @returns `a ** b` as an `Uint16`
82
82
  */
83
83
  pow,
84
84
  /**
85
- * Adds two Uint16 values.
85
+ * Adds two non-negative integers, returning `a + b` as an `Uint16`.
86
86
  *
87
- * @param a The first Uint16.
88
- * @param b The second Uint16.
89
- * @returns `a + b` clamped to [0, 65535] as a Uint16.
87
+ * @param a - The first non-negative integer
88
+ * @param b - The second non-negative integer
89
+ * @returns The sum of `a` and `b` as an `Uint16`
90
90
  */
91
91
  add,
92
92
  /**
93
- * Subtracts one Uint16 from another.
93
+ * Subtracts two non-negative integers, returning `a - b` as an `Uint16`.
94
94
  *
95
- * @param a The minuend Uint16.
96
- * @param b The subtrahend Uint16.
97
- * @returns `a - b` clamped to [0, 65535] as a Uint16 (minimum 0).
95
+ * @param a - The first non-negative integer
96
+ * @param b - The second non-negative integer
97
+ * @returns The difference of `a` and `b` as an `Uint16`
98
98
  */
99
99
  sub,
100
100
  /**
101
- * Multiplies two Uint16 values.
101
+ * Multiplies two non-negative integers, returning `a * b` as an `Uint16`.
102
102
  *
103
- * @param a The first Uint16.
104
- * @param b The second Uint16.
105
- * @returns `a * b` clamped to [0, 65535] as a Uint16.
103
+ * @param a - The first non-negative integer
104
+ * @param b - The second non-negative integer
105
+ * @returns The product of `a` and `b` as an `Uint16`
106
106
  */
107
107
  mul,
108
108
  /**
109
- * Divides one Uint16 by another using floor division.
109
+ * Divides two non-negative integers using floor division (`⌊a / b⌋`): the
110
+ * result is `a / b` rounded toward negative infinity, as an `Uint16`.
110
111
  *
111
- * @param a The dividend Uint16.
112
- * @param b The divisor Uint16.
113
- * @returns `⌊a / b⌋` clamped to [0, 65535] as a Uint16.
112
+ * @param a - The dividend
113
+ * @param b - The divisor (must be non-zero)
114
+ * @returns The floored quotient as an `Uint16`
114
115
  */
115
116
  div
116
117
  };
@@ -1 +1 @@
1
- {"version":3,"file":"uint16.mjs","sources":["../../../src/number/branded-types/uint16.mts"],"sourcesContent":["import { type Uint16 as TtfImported_Uint16 } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type Uint16 = TtfImported_Uint16;\n\ntype ElementType = Uint16;\n\nconst typeNameInMessage = 'a non-negative integer less than 2^16';\n\nconst {\n MAX_VALUE,\n MIN_VALUE,\n add,\n castType,\n clamp,\n div,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n random,\n sub,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n 0,\n number\n>({\n integerOrSafeInteger: 'SafeInteger',\n MIN_VALUE: 0,\n MAX_VALUE: 2 ** 16 - 1,\n typeNameInMessage,\n} as const);\n\n/**\n * Checks if a number is a Uint16 (16-bit unsigned integer in the range [0,\n * 2^16)).\n *\n * @param value The value to check.\n * @returns `true` if the value is a Uint16, `false` otherwise.\n */\nexport const isUint16 = is;\n\n/**\n * Casts a number to a Uint16 type.\n *\n * @param value The value to cast.\n * @returns The value as a Uint16 type.\n * @throws {TypeError} If the value is not a non-negative integer less than\n * 2^16.\n */\nexport const asUint16 = castType;\n\n/**\n * Namespace providing type-safe arithmetic operations for 16-bit unsigned\n * integers.\n *\n * All operations automatically clamp results to the valid Uint16 range [0,\n * 65535]. This ensures that all arithmetic maintains the 16-bit unsigned\n * integer constraint, with negative results clamped to 0 and overflow results\n * clamped to MAX_VALUE.\n */\nexport const Uint16 = {\n /**\n * Type guard to check if a value is a Uint16.\n *\n * @param value The value to check.\n * @returns `true` if the value is a 16-bit unsigned integer, `false`\n * otherwise.\n */\n is,\n\n /**\n * The minimum value for a 16-bit unsigned integer.\n *\n * @readonly\n */\n MIN_VALUE,\n\n /**\n * The maximum value for a 16-bit unsigned integer.\n *\n * @readonly\n */\n MAX_VALUE,\n\n /**\n * Returns the smaller of two Uint16 values.\n *\n * @param a The first Uint16.\n * @param b The second Uint16.\n * @returns The minimum value as a Uint16.\n */\n min: min_,\n\n /**\n * Returns the larger of two Uint16 values.\n *\n * @param a The first Uint16.\n * @param b The second Uint16.\n * @returns The maximum value as a Uint16.\n */\n max: max_,\n\n /**\n * Clamps a number to the Uint16 range.\n *\n * @param value The number to clamp.\n * @returns The value clamped to [0, 65535] as a Uint16.\n */\n clamp,\n\n /**\n * Generates a random Uint16 value within the valid range.\n *\n * @returns A random Uint16 between 0 and 65535.\n */\n random,\n\n /**\n * Raises a Uint16 to the power of another Uint16.\n *\n * @param a The base Uint16.\n * @param b The exponent Uint16.\n * @returns `a ** b` clamped to [0, 65535] as a Uint16.\n */\n pow,\n\n /**\n * Adds two Uint16 values.\n *\n * @param a The first Uint16.\n * @param b The second Uint16.\n * @returns `a + b` clamped to [0, 65535] as a Uint16.\n */\n add,\n\n /**\n * Subtracts one Uint16 from another.\n *\n * @param a The minuend Uint16.\n * @param b The subtrahend Uint16.\n * @returns `a - b` clamped to [0, 65535] as a Uint16 (minimum 0).\n */\n sub,\n\n /**\n * Multiplies two Uint16 values.\n *\n * @param a The first Uint16.\n * @param b The second Uint16.\n * @returns `a * b` clamped to [0, 65535] as a Uint16.\n */\n mul,\n\n /**\n * Divides one Uint16 by another using floor division.\n *\n * @param a The dividend Uint16.\n * @param b The divisor Uint16.\n * @returns `⌊a / b⌋` clamped to [0, 65535] as a Uint16.\n */\n div,\n} as const;\n\nexpectType<\n keyof typeof Uint16,\n keyof TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'non-negative' | 'range'\n >\n>('=');\n\nexpectType<\n typeof Uint16,\n TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'non-negative' | 'range'\n >\n>('<=');\n"],"names":[],"mappings":";;AAQA,MAAM,iBAAA,GAAoB,uCAAA;AAE1B,MAAM;AAAA,EACJ,SAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAA;AAAA,EACA,EAAA;AAAA,EACA,GAAA,EAAK,IAAA;AAAA,EACL,GAAA,EAAK,IAAA;AAAA,EACL,GAAA;AAAA,EACA,GAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA,GAAI,oBAAA,CAAqB,mBAAmB,mBAAA,CAI1C;AAAA,EACA,oBAAA,EAAsB,aAAA;AAAA,EACtB,SAAA,EAAW,CAAA;AAAA,EACX,SAAA,EAAW,KAAK,EAAA,GAAK,CAAA;AAAA,EACrB;AACF,CAAU,CAAA;AASH,MAAM,QAAA,GAAW;AAUjB,MAAM,QAAA,GAAW;AAWjB,MAAM,MAAA,GAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQpB,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASL,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQL,KAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA;AACF;;;;"}
1
+ {"version":3,"file":"uint16.mjs","sources":["../../../src/number/branded-types/uint16.mts"],"sourcesContent":["import { type Uint16 as TtfImported_Uint16 } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type Uint16 = TtfImported_Uint16;\n\ntype ElementType = Uint16;\n\nconst typeNameInMessage = 'a non-negative integer less than 2^16';\n\nconst {\n MAX_VALUE,\n MIN_VALUE,\n add,\n castType,\n clamp,\n div,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n random,\n sub,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n 0,\n number\n>({\n integerOrSafeInteger: 'SafeInteger',\n MIN_VALUE: 0,\n MAX_VALUE: 2 ** 16 - 1,\n typeNameInMessage,\n} as const);\n\n/**\n * Type guard that checks if a value is a non-negative integer less than 2^16.\n *\n * Returns `true` for a non-negative integer less than 2^16 — a value with no\n * fractional component.\n *\n * @param value - The value to check\n * @returns `true` if the value is a non-negative integer less than 2^16, `false` otherwise\n */\nexport const isUint16 = is;\n\n/**\n * Casts a `number` to the `Uint16` branded type.\n *\n * Validates that the value is a non-negative integer less than 2^16 and returns\n * it with the `Uint16` brand. Throws a `TypeError` otherwise.\n *\n * @param value - The value to cast\n * @returns The value as an `Uint16`\n * @throws {TypeError} If the value is not a non-negative integer less than 2^16\n */\nexport const asUint16 = castType;\n\n/**\n * Namespace providing type-safe operations for the `Uint16` branded type.\n *\n * The `Uint16` type represents a non-negative integer less than 2^16. Division\n * (`div`) uses floor division.\n */\nexport const Uint16 = {\n /**\n * Type guard that checks if a value is a non-negative integer less than 2^16.\n *\n * @param value - The value to check\n * @returns `true` if the value is a non-negative integer less than 2^16, `false` otherwise\n * @see {@link isUint16} for usage examples\n */\n is,\n\n /**\n * The smallest value representable as `Uint16`.\n */\n MIN_VALUE,\n\n /**\n * The largest value representable as `Uint16`.\n */\n MAX_VALUE,\n\n /**\n * Returns the smallest of the given non-negative integers.\n *\n * @param values - The non-negative integers to compare (at least one required)\n * @returns The smallest value as an `Uint16`\n */\n min: min_,\n\n /**\n * Returns the largest of the given non-negative integers.\n *\n * @param values - The non-negative integers to compare (at least one required)\n * @returns The largest value as an `Uint16`\n */\n max: max_,\n\n /**\n * Clamps a `number` into the `Uint16` range, rounding to the nearest integer\n * and constraining the result to `[MIN_VALUE, MAX_VALUE]`.\n *\n * @param value - The value to clamp\n * @returns The clamped value as an `Uint16`\n */\n clamp,\n\n /**\n * Generates a random `Uint16` within the given range.\n *\n * The range is inclusive on both ends.\n *\n * @param min - The minimum value (inclusive)\n * @param max - The maximum value (inclusive)\n * @returns A random `Uint16` in `[min, max]`\n */\n random,\n\n /**\n * Raises `a` to the power `b`, returning `a ** b` as an `Uint16` (floored to\n * an integer).\n *\n * @param a - The base non-negative integer\n * @param b - The exponent non-negative integer\n * @returns `a ** b` as an `Uint16`\n */\n pow,\n\n /**\n * Adds two non-negative integers, returning `a + b` as an `Uint16`.\n *\n * @param a - The first non-negative integer\n * @param b - The second non-negative integer\n * @returns The sum of `a` and `b` as an `Uint16`\n */\n add,\n\n /**\n * Subtracts two non-negative integers, returning `a - b` as an `Uint16`.\n *\n * @param a - The first non-negative integer\n * @param b - The second non-negative integer\n * @returns The difference of `a` and `b` as an `Uint16`\n */\n sub,\n\n /**\n * Multiplies two non-negative integers, returning `a * b` as an `Uint16`.\n *\n * @param a - The first non-negative integer\n * @param b - The second non-negative integer\n * @returns The product of `a` and `b` as an `Uint16`\n */\n mul,\n\n /**\n * Divides two non-negative integers using floor division (`⌊a / b⌋`): the\n * result is `a / b` rounded toward negative infinity, as an `Uint16`.\n *\n * @param a - The dividend\n * @param b - The divisor (must be non-zero)\n * @returns The floored quotient as an `Uint16`\n */\n div,\n} as const;\n\nexpectType<\n keyof typeof Uint16,\n keyof TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'non-negative' | 'range'\n >\n>('=');\n\nexpectType<\n typeof Uint16,\n TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'non-negative' | 'range'\n >\n>('<=');\n"],"names":[],"mappings":";;AAQA,MAAM,iBAAA,GAAoB,uCAAA;AAE1B,MAAM;AAAA,EACJ,SAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,GAAA;AAAA,EACA,EAAA;AAAA,EACA,GAAA,EAAK,IAAA;AAAA,EACL,GAAA,EAAK,IAAA;AAAA,EACL,GAAA;AAAA,EACA,GAAA;AAAA,EACA,MAAA;AAAA,EACA;AACF,CAAA,GAAI,oBAAA,CAAqB,mBAAmB,mBAAA,CAI1C;AAAA,EACA,oBAAA,EAAsB,aAAA;AAAA,EACtB,SAAA,EAAW,CAAA;AAAA,EACX,SAAA,EAAW,KAAK,EAAA,GAAK,CAAA;AAAA,EACrB;AACF,CAAU,CAAA;AAWH,MAAM,QAAA,GAAW;AAYjB,MAAM,QAAA,GAAW;AAQjB,MAAM,MAAA,GAAS;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQpB,EAAA;AAAA;AAAA;AAAA;AAAA,EAKA,SAAA;AAAA;AAAA;AAAA;AAAA,EAKA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQL,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASL,KAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,MAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EASA,GAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA;AACF;;;;"}
@@ -1,20 +1,24 @@
1
1
  import { type Uint32 as TtfImported_Uint32 } from 'ts-type-forge';
2
2
  export type Uint32 = TtfImported_Uint32;
3
3
  /**
4
- * Checks if a number is a Uint32 (32-bit unsigned integer in the range [0,
5
- * 2^32)).
4
+ * Type guard that checks if a value is a non-negative integer less than 2^32.
6
5
  *
7
- * @param value The value to check.
8
- * @returns `true` if the value is a Uint32, `false` otherwise.
6
+ * Returns `true` for a non-negative integer less than 2^32 — a value with no
7
+ * fractional component.
8
+ *
9
+ * @param value - The value to check
10
+ * @returns `true` if the value is a non-negative integer less than 2^32, `false` otherwise
9
11
  */
10
12
  export declare const isUint32: (a: number) => a is TtfImported_Uint32;
11
13
  /**
12
- * Casts a number to a Uint32 type.
14
+ * Casts a `number` to the `Uint32` branded type.
15
+ *
16
+ * Validates that the value is a non-negative integer less than 2^32 and returns
17
+ * it with the `Uint32` brand. Throws a `TypeError` otherwise.
13
18
  *
14
- * @param value The value to cast.
15
- * @returns The value as a Uint32 type.
16
- * @throws {TypeError} If the value is not a non-negative integer less than
17
- * 2^32.
19
+ * @param value - The value to cast
20
+ * @returns The value as an `Uint32`
21
+ * @throws {TypeError} If the value is not a non-negative integer less than 2^32
18
22
  */
19
23
  export declare const asUint32: <N extends number>(x: N) => number & {
20
24
  readonly "< 2^32": true;
@@ -31,100 +35,100 @@ export declare const asUint32: <N extends number>(x: N) => number & {
31
35
  'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
32
36
  }> & N;
33
37
  /**
34
- * Utility functions for working with Uint32 (32-bit unsigned integer) branded
35
- * types. Provides type-safe operations that ensure results remain within the
36
- * valid range [0, 2^32). All arithmetic operations are clamped to maintain the
37
- * Uint32 constraint.
38
+ * Namespace providing type-safe operations for the `Uint32` branded type.
39
+ *
40
+ * The `Uint32` type represents a non-negative integer less than 2^32. Division
41
+ * (`div`) uses floor division.
38
42
  */
39
43
  export declare const Uint32: {
40
44
  /**
41
- * Type guard that checks if a value is a 32-bit unsigned integer.
45
+ * Type guard that checks if a value is a non-negative integer less than 2^32.
42
46
  *
43
47
  * @param value - The value to check
44
- * @returns `true` if the value is within the range [0, 2^32), `false`
45
- * otherwise
48
+ * @returns `true` if the value is a non-negative integer less than 2^32, `false` otherwise
49
+ * @see {@link isUint32} for usage examples
46
50
  */
47
51
  readonly is: (a: number) => a is TtfImported_Uint32;
48
52
  /**
49
- * The minimum value for a Uint32.
50
- *
51
- * @readonly
53
+ * The smallest value representable as `Uint32`.
52
54
  */
53
55
  readonly MIN_VALUE: 0;
54
56
  /**
55
- * The maximum value for a Uint32.
56
- *
57
- * @readonly
57
+ * The largest value representable as `Uint32`.
58
58
  */
59
59
  readonly MAX_VALUE: number;
60
60
  /**
61
- * Returns the minimum of multiple Uint32 values.
61
+ * Returns the smallest of the given non-negative integers.
62
62
  *
63
- * @param values - The Uint32 values to compare
64
- * @returns The smallest value as a Uint32
63
+ * @param values - The non-negative integers to compare (at least one required)
64
+ * @returns The smallest value as an `Uint32`
65
65
  */
66
66
  readonly min: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_Uint32>[]) => TtfImported_Uint32;
67
67
  /**
68
- * Returns the maximum of multiple Uint32 values.
68
+ * Returns the largest of the given non-negative integers.
69
69
  *
70
- * @param values - The Uint32 values to compare
71
- * @returns The largest value as a Uint32
70
+ * @param values - The non-negative integers to compare (at least one required)
71
+ * @returns The largest value as an `Uint32`
72
72
  */
73
73
  readonly max: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_Uint32>[]) => TtfImported_Uint32;
74
74
  /**
75
- * Clamps a Uint32 to be within the specified range.
75
+ * Clamps a `number` into the `Uint32` range, rounding to the nearest integer
76
+ * and constraining the result to `[MIN_VALUE, MAX_VALUE]`.
76
77
  *
77
78
  * @param value - The value to clamp
78
- * @param min - The minimum value
79
- * @param max - The maximum value
80
- * @returns The clamped value as a Uint32
79
+ * @returns The clamped value as an `Uint32`
81
80
  */
82
81
  readonly clamp: (x: number) => TtfImported_Uint32;
83
82
  /**
84
- * Generates a random Uint32 value.
83
+ * Generates a random `Uint32` within the given range.
84
+ *
85
+ * The range is inclusive on both ends.
85
86
  *
86
- * @returns A random Uint32 value within [0, 2^32)
87
+ * @param min - The minimum value (inclusive)
88
+ * @param max - The maximum value (inclusive)
89
+ * @returns A random `Uint32` in `[min, max]`
87
90
  */
88
91
  readonly random: (min?: import("ts-type-forge").WithSmallInt<TtfImported_Uint32> | undefined, max?: import("ts-type-forge").WithSmallInt<TtfImported_Uint32> | undefined) => TtfImported_Uint32;
89
92
  /**
90
- * Raises a Uint32 to a power, with result clamped to [0, 2^32).
93
+ * Raises `a` to the power `b`, returning `a ** b` as an `Uint32` (floored to
94
+ * an integer).
91
95
  *
92
- * @param a - The base Uint32
93
- * @param b - The exponent Uint32
94
- * @returns `a ** b` as a Uint32, clamped to valid range
96
+ * @param a - The base non-negative integer
97
+ * @param b - The exponent non-negative integer
98
+ * @returns `a ** b` as an `Uint32`
95
99
  */
96
100
  readonly pow: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>, y: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>) => TtfImported_Uint32;
97
101
  /**
98
- * Adds two Uint32 values, with result clamped to [0, 2^32).
102
+ * Adds two non-negative integers, returning `a + b` as an `Uint32`.
99
103
  *
100
- * @param a - First Uint32
101
- * @param b - Second Uint32
102
- * @returns `a + b` as a Uint32, clamped to valid range
104
+ * @param a - The first non-negative integer
105
+ * @param b - The second non-negative integer
106
+ * @returns The sum of `a` and `b` as an `Uint32`
103
107
  */
104
108
  readonly add: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>, y: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>) => TtfImported_Uint32;
105
109
  /**
106
- * Subtracts two Uint32 values, with result clamped to [0, 2^32).
110
+ * Subtracts two non-negative integers, returning `a - b` as an `Uint32`.
107
111
  *
108
- * @param a - First Uint32
109
- * @param b - Second Uint32
110
- * @returns `a - b` as a Uint32, clamped to valid range (minimum 0)
112
+ * @param a - The first non-negative integer
113
+ * @param b - The second non-negative integer
114
+ * @returns The difference of `a` and `b` as an `Uint32`
111
115
  */
112
116
  readonly sub: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>, y: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>) => TtfImported_Uint32;
113
117
  /**
114
- * Multiplies two Uint32 values, with result clamped to [0, 2^32).
118
+ * Multiplies two non-negative integers, returning `a * b` as an `Uint32`.
115
119
  *
116
- * @param a - First Uint32
117
- * @param b - Second Uint32
118
- * @returns `a * b` as a Uint32, clamped to valid range
120
+ * @param a - The first non-negative integer
121
+ * @param b - The second non-negative integer
122
+ * @returns The product of `a` and `b` as an `Uint32`
119
123
  */
120
124
  readonly mul: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>, y: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>) => TtfImported_Uint32;
121
125
  /**
122
- * Divides two Uint32 values using floor division, with result clamped to [0,
123
- * 2^32).
126
+ * Divides two non-negative integers using floor division (`⌊a / b⌋`): the
127
+ * result is `a / b` rounded toward negative infinity, as an `Uint32`.
124
128
  *
125
- * @param a - The dividend Uint32
126
- * @param b - The divisor Uint32
127
- * @returns `⌊a / b⌋` as a Uint32, clamped to valid range
129
+ * @param a - The dividend
130
+ * @param b - The divisor (must be non-zero)
131
+ * @returns The floored quotient as an `Uint32`
128
132
  */
129
133
  readonly div: (x: import("ts-type-forge").WithSmallInt<TtfImported_Uint32>, y: 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | import("ts-type-forge").NormalizeBrandUnion<number & {
130
134
  readonly "!=0": true;
@@ -1 +1 @@
1
- {"version":3,"file":"uint32.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/uint32.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAIlE,MAAM,MAAM,MAAM,GAAG,kBAAkB,CAAC;AA+BxC;;;;;;GAMG;AACH,eAAO,MAAM,QAAQ,wCAAK,CAAC;AAE3B;;;;;;;GAOG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;MAAW,CAAC;AAEjC;;;;;GAKG;AACH,eAAO,MAAM,MAAM;IACjB;;;;;;OAMG;;IAGH;;;;OAIG;;IAGH;;;;OAIG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;;OAOG;;IAGH;;;;OAIG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;OAOG;;;;;;;;;;;;;;;;CAEK,CAAC"}
1
+ {"version":3,"file":"uint32.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/uint32.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,MAAM,IAAI,kBAAkB,EAAE,MAAM,eAAe,CAAC;AAIlE,MAAM,MAAM,MAAM,GAAG,kBAAkB,CAAC;AA+BxC;;;;;;;;GAQG;AACH,eAAO,MAAM,QAAQ,wCAAK,CAAC;AAE3B;;;;;;;;;GASG;AACH,eAAO,MAAM,QAAQ;;;;;;;;;;;;;MAAW,CAAC;AAEjC;;;;;GAKG;AACH,eAAO,MAAM,MAAM;IACjB;;;;;;OAMG;;IAGH;;OAEG;;IAGH;;OAEG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;OAOG;;;;;;;;;;;;;;;;CAEK,CAAC"}