ts-data-forge 11.0.0 → 12.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/number/branded-types/finite-number.d.mts +47 -61
- package/dist/number/branded-types/finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/finite-number.mjs +37 -41
- package/dist/number/branded-types/finite-number.mjs.map +1 -1
- package/dist/number/branded-types/int.d.mts +40 -46
- package/dist/number/branded-types/int.d.mts.map +1 -1
- package/dist/number/branded-types/int.mjs +29 -31
- package/dist/number/branded-types/int.mjs.map +1 -1
- package/dist/number/branded-types/int16.d.mts +71 -59
- package/dist/number/branded-types/int16.d.mts.map +1 -1
- package/dist/number/branded-types/int16.mjs +56 -47
- package/dist/number/branded-types/int16.mjs.map +1 -1
- package/dist/number/branded-types/int32.d.mts +71 -59
- package/dist/number/branded-types/int32.d.mts.map +1 -1
- package/dist/number/branded-types/int32.mjs +56 -47
- package/dist/number/branded-types/int32.mjs.map +1 -1
- package/dist/number/branded-types/negative-finite-number.d.mts +76 -60
- package/dist/number/branded-types/negative-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/negative-finite-number.mjs +62 -49
- package/dist/number/branded-types/negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/negative-int.d.mts +66 -49
- package/dist/number/branded-types/negative-int.d.mts.map +1 -1
- package/dist/number/branded-types/negative-int.mjs +48 -39
- package/dist/number/branded-types/negative-int.mjs.map +1 -1
- package/dist/number/branded-types/negative-safe-int.d.mts +64 -57
- package/dist/number/branded-types/negative-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/negative-safe-int.mjs +49 -44
- package/dist/number/branded-types/negative-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.d.mts +80 -65
- package/dist/number/branded-types/non-negative-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.mjs +65 -53
- package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int16.d.mts +71 -58
- package/dist/number/branded-types/non-negative-int16.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-int16.mjs +55 -45
- package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int32.d.mts +71 -59
- package/dist/number/branded-types/non-negative-int32.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-int32.mjs +55 -46
- package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-finite-number.d.mts +70 -55
- package/dist/number/branded-types/non-positive-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-finite-number.mjs +55 -43
- package/dist/number/branded-types/non-positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-int.d.mts +46 -146
- package/dist/number/branded-types/non-positive-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-int.mjs +33 -108
- package/dist/number/branded-types/non-positive-int.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-safe-int.d.mts +62 -54
- package/dist/number/branded-types/non-positive-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-safe-int.mjs +46 -41
- package/dist/number/branded-types/non-positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-finite-number.d.mts +62 -49
- package/dist/number/branded-types/non-zero-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-finite-number.mjs +46 -37
- package/dist/number/branded-types/non-zero-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int.d.mts +51 -38
- package/dist/number/branded-types/non-zero-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int.mjs +31 -27
- package/dist/number/branded-types/non-zero-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int16.d.mts +59 -54
- package/dist/number/branded-types/non-zero-int16.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int16.mjs +44 -41
- package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int32.d.mts +59 -55
- package/dist/number/branded-types/non-zero-int32.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int32.mjs +44 -42
- package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.d.mts +60 -55
- package/dist/number/branded-types/non-zero-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.mjs +44 -42
- package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.d.mts +59 -54
- package/dist/number/branded-types/non-zero-uint16.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.mjs +43 -41
- package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.d.mts +59 -54
- package/dist/number/branded-types/non-zero-uint32.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.mjs +43 -41
- package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
- package/dist/number/branded-types/positive-finite-number.d.mts +82 -64
- package/dist/number/branded-types/positive-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/positive-finite-number.mjs +67 -52
- package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/positive-int.d.mts +53 -70
- package/dist/number/branded-types/positive-int.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int.mjs +42 -52
- package/dist/number/branded-types/positive-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-int16.d.mts +68 -58
- package/dist/number/branded-types/positive-int16.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int16.mjs +52 -45
- package/dist/number/branded-types/positive-int16.mjs.map +1 -1
- package/dist/number/branded-types/positive-int32.d.mts +68 -58
- package/dist/number/branded-types/positive-int32.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int32.mjs +52 -45
- package/dist/number/branded-types/positive-int32.mjs.map +1 -1
- package/dist/number/branded-types/positive-safe-int.d.mts +72 -61
- package/dist/number/branded-types/positive-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/positive-safe-int.mjs +56 -48
- package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint16.d.mts +68 -58
- package/dist/number/branded-types/positive-uint16.d.mts.map +1 -1
- package/dist/number/branded-types/positive-uint16.mjs +52 -45
- package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint32.d.mts +68 -59
- package/dist/number/branded-types/positive-uint32.d.mts.map +1 -1
- package/dist/number/branded-types/positive-uint32.mjs +52 -46
- package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
- package/dist/number/branded-types/safe-int.d.mts +52 -66
- package/dist/number/branded-types/safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/safe-int.mjs +45 -47
- package/dist/number/branded-types/safe-int.mjs.map +1 -1
- package/dist/number/branded-types/safe-uint.d.mts +68 -58
- package/dist/number/branded-types/safe-uint.d.mts.map +1 -1
- package/dist/number/branded-types/safe-uint.mjs +53 -46
- package/dist/number/branded-types/safe-uint.mjs.map +1 -1
- package/dist/number/branded-types/uint.d.mts +72 -55
- package/dist/number/branded-types/uint.d.mts.map +1 -1
- package/dist/number/branded-types/uint.mjs +52 -45
- package/dist/number/branded-types/uint.mjs.map +1 -1
- package/dist/number/branded-types/uint16.d.mts +66 -59
- package/dist/number/branded-types/uint16.d.mts.map +1 -1
- package/dist/number/branded-types/uint16.mjs +51 -45
- package/dist/number/branded-types/uint16.mjs.map +1 -1
- package/dist/number/branded-types/uint32.d.mts +66 -57
- package/dist/number/branded-types/uint32.d.mts.map +1 -1
- package/dist/number/branded-types/uint32.mjs +50 -45
- package/dist/number/branded-types/uint32.mjs.map +1 -1
- package/dist/number/enum/int8.d.mts +62 -66
- package/dist/number/enum/int8.d.mts.map +1 -1
- package/dist/number/enum/int8.mjs +57 -51
- package/dist/number/enum/int8.mjs.map +1 -1
- package/dist/number/enum/uint8.d.mts +66 -59
- package/dist/number/enum/uint8.d.mts.map +1 -1
- package/dist/number/enum/uint8.mjs +57 -51
- package/dist/number/enum/uint8.mjs.map +1 -1
- package/dist/number/refined-number-utils.d.mts +9 -9
- package/dist/number/refined-number-utils.d.mts.map +1 -1
- package/dist/number/refined-number-utils.mjs +7 -7
- package/dist/number/refined-number-utils.mjs.map +1 -1
- package/package.json +2 -1
- package/src/number/branded-types/finite-number.mts +47 -61
- package/src/number/branded-types/int.mts +40 -46
- package/src/number/branded-types/int16.mts +72 -60
- package/src/number/branded-types/int32.mts +72 -60
- package/src/number/branded-types/negative-finite-number.mts +78 -71
- package/src/number/branded-types/negative-finite-number.test.mts +4 -4
- package/src/number/branded-types/negative-int.mts +68 -60
- package/src/number/branded-types/negative-int.test.mts +5 -5
- package/src/number/branded-types/negative-safe-int.mts +66 -68
- package/src/number/branded-types/negative-safe-int.test.mts +4 -4
- package/src/number/branded-types/non-negative-finite-number.mts +81 -66
- package/src/number/branded-types/non-negative-int16.mts +72 -59
- package/src/number/branded-types/non-negative-int32.mts +72 -60
- package/src/number/branded-types/non-positive-finite-number.mts +71 -56
- package/src/number/branded-types/non-positive-finite-number.test.mts +7 -7
- package/src/number/branded-types/non-positive-int.mts +47 -147
- package/src/number/branded-types/non-positive-int.test.mts +7 -7
- package/src/number/branded-types/non-positive-safe-int.mts +63 -55
- package/src/number/branded-types/non-positive-safe-int.test.mts +7 -7
- package/src/number/branded-types/non-zero-finite-number.mts +62 -51
- package/src/number/branded-types/non-zero-int.mts +51 -38
- package/src/number/branded-types/non-zero-int16.mts +60 -55
- package/src/number/branded-types/non-zero-int32.mts +60 -56
- package/src/number/branded-types/non-zero-safe-int.mts +61 -56
- package/src/number/branded-types/non-zero-uint16.mts +60 -55
- package/src/number/branded-types/non-zero-uint32.mts +60 -55
- package/src/number/branded-types/positive-finite-number.mts +83 -65
- package/src/number/branded-types/positive-int.mts +54 -71
- package/src/number/branded-types/positive-int16.mts +69 -59
- package/src/number/branded-types/positive-int32.mts +69 -59
- package/src/number/branded-types/positive-safe-int.mts +73 -62
- package/src/number/branded-types/positive-uint16.mts +69 -59
- package/src/number/branded-types/positive-uint32.mts +69 -60
- package/src/number/branded-types/safe-int.mts +53 -67
- package/src/number/branded-types/safe-uint.mts +69 -59
- package/src/number/branded-types/uint.mts +73 -56
- package/src/number/branded-types/uint16.mts +67 -60
- package/src/number/branded-types/uint32.mts +67 -58
- package/src/number/enum/int8.mts +70 -73
- package/src/number/enum/int8.test.mts +7 -4
- package/src/number/enum/uint8.mts +74 -66
- package/src/number/enum/uint8.test.mts +7 -4
- package/src/number/refined-number-utils.mts +22 -19
|
@@ -1,19 +1,24 @@
|
|
|
1
1
|
import { type PositiveInt16 as TtfImported_PositiveInt16 } from 'ts-type-forge';
|
|
2
2
|
export type PositiveInt16 = TtfImported_PositiveInt16;
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
* range [1, 2^15)).
|
|
4
|
+
* Type guard that checks if a value is a positive integer in [1, 2^15).
|
|
6
5
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
6
|
+
* Returns `true` for a positive integer in [1, 2^15) — a value with no
|
|
7
|
+
* fractional component.
|
|
8
|
+
*
|
|
9
|
+
* @param value - The value to check
|
|
10
|
+
* @returns `true` if the value is a positive integer in [1, 2^15), `false` otherwise
|
|
9
11
|
*/
|
|
10
12
|
export declare const isPositiveInt16: (a: number) => a is TtfImported_PositiveInt16;
|
|
11
13
|
/**
|
|
12
|
-
* Casts a number to
|
|
14
|
+
* Casts a `number` to the `PositiveInt16` branded type.
|
|
15
|
+
*
|
|
16
|
+
* Validates that the value is a positive integer in [1, 2^15) and returns it
|
|
17
|
+
* with the `PositiveInt16` brand. Throws a `TypeError` otherwise.
|
|
13
18
|
*
|
|
14
|
-
* @param value The value to cast
|
|
15
|
-
* @returns The value as a PositiveInt16
|
|
16
|
-
* @throws {TypeError} If the value is not a positive integer in [1, 2^15)
|
|
19
|
+
* @param value - The value to cast
|
|
20
|
+
* @returns The value as a `PositiveInt16`
|
|
21
|
+
* @throws {TypeError} If the value is not a positive integer in [1, 2^15)
|
|
17
22
|
*/
|
|
18
23
|
export declare const asPositiveInt16: <N extends number>(x: N) => number & {
|
|
19
24
|
readonly "!=0": true;
|
|
@@ -35,102 +40,107 @@ export declare const asPositiveInt16: <N extends number>(x: N) => number & {
|
|
|
35
40
|
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
36
41
|
}> & N;
|
|
37
42
|
/**
|
|
38
|
-
* Namespace providing type-safe
|
|
39
|
-
*
|
|
43
|
+
* Namespace providing type-safe operations for the `PositiveInt16` branded
|
|
44
|
+
* type.
|
|
40
45
|
*
|
|
41
|
-
*
|
|
42
|
-
*
|
|
43
|
-
* integer constraint, with results below 1 clamped to MIN_VALUE and overflow
|
|
44
|
-
* results clamped to MAX_VALUE.
|
|
46
|
+
* The `PositiveInt16` type represents a positive integer in [1, 2^15). Division
|
|
47
|
+
* (`div`) uses floor division.
|
|
45
48
|
*/
|
|
46
49
|
export declare const PositiveInt16: {
|
|
47
50
|
/**
|
|
48
|
-
* Type guard
|
|
51
|
+
* Type guard that checks if a value is a positive integer in [1, 2^15).
|
|
49
52
|
*
|
|
50
|
-
* @param value The value to check
|
|
51
|
-
* @returns `true` if the value is a
|
|
52
|
-
*
|
|
53
|
+
* @param value - The value to check
|
|
54
|
+
* @returns `true` if the value is a positive integer in [1, 2^15), `false` otherwise
|
|
55
|
+
* @see {@link isPositiveInt16} for usage examples
|
|
53
56
|
*/
|
|
54
57
|
readonly is: (a: number) => a is TtfImported_PositiveInt16;
|
|
55
58
|
/**
|
|
56
|
-
* The
|
|
57
|
-
*
|
|
58
|
-
* @readonly
|
|
59
|
+
* The smallest value representable as `PositiveInt16` (the lower saturation
|
|
60
|
+
* target of `fromNumber`).
|
|
59
61
|
*/
|
|
60
62
|
readonly MIN_VALUE: 1;
|
|
61
63
|
/**
|
|
62
|
-
* The
|
|
63
|
-
*
|
|
64
|
-
* @readonly
|
|
64
|
+
* The largest value representable as `PositiveInt16` (the upper saturation
|
|
65
|
+
* target of `fromNumber`).
|
|
65
66
|
*/
|
|
66
67
|
readonly MAX_VALUE: number;
|
|
67
68
|
/**
|
|
68
|
-
* Returns the
|
|
69
|
+
* Returns the smallest of the given positive integers.
|
|
69
70
|
*
|
|
70
|
-
* @param
|
|
71
|
-
* @
|
|
72
|
-
* @returns The minimum value as a PositiveInt16.
|
|
71
|
+
* @param values - The positive integers to compare (at least one required)
|
|
72
|
+
* @returns The smallest value as a `PositiveInt16`
|
|
73
73
|
*/
|
|
74
74
|
readonly min: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>[]) => TtfImported_PositiveInt16;
|
|
75
75
|
/**
|
|
76
|
-
* Returns the
|
|
76
|
+
* Returns the largest of the given positive integers.
|
|
77
77
|
*
|
|
78
|
-
* @param
|
|
79
|
-
* @
|
|
80
|
-
* @returns The maximum value as a PositiveInt16.
|
|
78
|
+
* @param values - The positive integers to compare (at least one required)
|
|
79
|
+
* @returns The largest value as a `PositiveInt16`
|
|
81
80
|
*/
|
|
82
81
|
readonly max: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>[]) => TtfImported_PositiveInt16;
|
|
83
82
|
/**
|
|
84
|
-
*
|
|
83
|
+
* Converts an arbitrary `number` into a `PositiveInt16`, rounding to the
|
|
84
|
+
* nearest integer and saturating the result into the range `[MIN_VALUE,
|
|
85
|
+
* MAX_VALUE]`.
|
|
86
|
+
*
|
|
87
|
+
* Unlike `asPositiveInt16`, this is total: out-of-range inputs are clamped to
|
|
88
|
+
* the nearest representable `PositiveInt16` instead of throwing.
|
|
85
89
|
*
|
|
86
|
-
* @param value The
|
|
87
|
-
* @returns The value
|
|
90
|
+
* @param value - The value to convert
|
|
91
|
+
* @returns The value as a `PositiveInt16`
|
|
88
92
|
*/
|
|
89
|
-
readonly
|
|
93
|
+
readonly fromNumber: (x: number) => TtfImported_PositiveInt16;
|
|
90
94
|
/**
|
|
91
|
-
* Generates a random PositiveInt16
|
|
95
|
+
* Generates a random `PositiveInt16` within the given range.
|
|
96
|
+
*
|
|
97
|
+
* The range is inclusive on both ends.
|
|
92
98
|
*
|
|
93
|
-
* @
|
|
99
|
+
* @param min - The minimum value (inclusive)
|
|
100
|
+
* @param max - The maximum value (inclusive)
|
|
101
|
+
* @returns A random `PositiveInt16` in `[min, max]`
|
|
94
102
|
*/
|
|
95
103
|
readonly random: (min?: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16> | undefined, max?: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16> | undefined) => TtfImported_PositiveInt16;
|
|
96
104
|
/**
|
|
97
|
-
* Raises a
|
|
105
|
+
* Raises `a` to the power `b`, returning `a ** b` as a `PositiveInt16`
|
|
106
|
+
* (floored to an integer).
|
|
98
107
|
*
|
|
99
|
-
* @param a The base
|
|
100
|
-
* @param b The exponent
|
|
101
|
-
* @returns `a ** b`
|
|
108
|
+
* @param a - The base positive integer
|
|
109
|
+
* @param b - The exponent positive integer
|
|
110
|
+
* @returns `a ** b` as a `PositiveInt16`
|
|
102
111
|
*/
|
|
103
112
|
readonly pow: (x: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>, y: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>) => TtfImported_PositiveInt16;
|
|
104
113
|
/**
|
|
105
|
-
* Adds two PositiveInt16
|
|
114
|
+
* Adds two positive integers, returning `a + b` as a `PositiveInt16`.
|
|
106
115
|
*
|
|
107
|
-
* @param a The first
|
|
108
|
-
* @param b The second
|
|
109
|
-
* @returns `a
|
|
116
|
+
* @param a - The first positive integer
|
|
117
|
+
* @param b - The second positive integer
|
|
118
|
+
* @returns The sum of `a` and `b` as a `PositiveInt16`
|
|
110
119
|
*/
|
|
111
120
|
readonly add: (x: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>, y: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>) => TtfImported_PositiveInt16;
|
|
112
121
|
/**
|
|
113
|
-
* Subtracts
|
|
122
|
+
* Subtracts two positive integers, returning `a - b` as a `PositiveInt16`.
|
|
114
123
|
*
|
|
115
|
-
* @param a The
|
|
116
|
-
* @param b The
|
|
117
|
-
* @returns `a
|
|
124
|
+
* @param a - The first positive integer
|
|
125
|
+
* @param b - The second positive integer
|
|
126
|
+
* @returns The difference of `a` and `b` as a `PositiveInt16`
|
|
118
127
|
*/
|
|
119
128
|
readonly sub: (x: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>, y: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>) => TtfImported_PositiveInt16;
|
|
120
129
|
/**
|
|
121
|
-
* Multiplies two PositiveInt16
|
|
130
|
+
* Multiplies two positive integers, returning `a * b` as a `PositiveInt16`.
|
|
122
131
|
*
|
|
123
|
-
* @param a The first
|
|
124
|
-
* @param b The second
|
|
125
|
-
* @returns `a
|
|
132
|
+
* @param a - The first positive integer
|
|
133
|
+
* @param b - The second positive integer
|
|
134
|
+
* @returns The product of `a` and `b` as a `PositiveInt16`
|
|
126
135
|
*/
|
|
127
136
|
readonly mul: (x: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>, y: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>) => TtfImported_PositiveInt16;
|
|
128
137
|
/**
|
|
129
|
-
* Divides
|
|
138
|
+
* Divides two positive integers using floor division (`⌊a / b⌋`): the result
|
|
139
|
+
* is `a / b` rounded toward negative infinity, as a `PositiveInt16`.
|
|
130
140
|
*
|
|
131
|
-
* @param a The dividend
|
|
132
|
-
* @param b The divisor
|
|
133
|
-
* @returns
|
|
141
|
+
* @param a - The dividend
|
|
142
|
+
* @param b - The divisor (must be non-zero)
|
|
143
|
+
* @returns The floored quotient as a `PositiveInt16`
|
|
134
144
|
*/
|
|
135
145
|
readonly div: (x: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt16>, 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 & {
|
|
136
146
|
readonly "!=0": true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"positive-int16.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/positive-int16.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,IAAI,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAIhF,MAAM,MAAM,aAAa,GAAG,yBAAyB,CAAC;AA+BtD
|
|
1
|
+
{"version":3,"file":"positive-int16.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/positive-int16.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,IAAI,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAIhF,MAAM,MAAM,aAAa,GAAG,yBAAyB,CAAC;AA+BtD;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,+CAAK,CAAC;AAElC;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;MAAW,CAAC;AAExC;;;;;;GAMG;AACH,eAAO,MAAM,aAAa;IACxB;;;;;;OAMG;;IAGH;;;OAGG;;IAGH;;;OAGG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;;;;;OAUG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;OAOG;;;;;;;;;;;;;;;;;;;;CAEK,CAAC"}
|
|
@@ -6,8 +6,8 @@ const {
|
|
|
6
6
|
MIN_VALUE,
|
|
7
7
|
add,
|
|
8
8
|
castType,
|
|
9
|
-
clamp,
|
|
10
9
|
div,
|
|
10
|
+
fromNumber,
|
|
11
11
|
is,
|
|
12
12
|
max: max_,
|
|
13
13
|
min: min_,
|
|
@@ -25,92 +25,99 @@ const isPositiveInt16 = is;
|
|
|
25
25
|
const asPositiveInt16 = castType;
|
|
26
26
|
const PositiveInt16 = {
|
|
27
27
|
/**
|
|
28
|
-
* Type guard
|
|
28
|
+
* Type guard that checks if a value is a positive integer in [1, 2^15).
|
|
29
29
|
*
|
|
30
|
-
* @param value The value to check
|
|
31
|
-
* @returns `true` if the value is a
|
|
32
|
-
*
|
|
30
|
+
* @param value - The value to check
|
|
31
|
+
* @returns `true` if the value is a positive integer in [1, 2^15), `false` otherwise
|
|
32
|
+
* @see {@link isPositiveInt16} for usage examples
|
|
33
33
|
*/
|
|
34
34
|
is,
|
|
35
35
|
/**
|
|
36
|
-
* The
|
|
37
|
-
*
|
|
38
|
-
* @readonly
|
|
36
|
+
* The smallest value representable as `PositiveInt16` (the lower saturation
|
|
37
|
+
* target of `fromNumber`).
|
|
39
38
|
*/
|
|
40
39
|
MIN_VALUE,
|
|
41
40
|
/**
|
|
42
|
-
* The
|
|
43
|
-
*
|
|
44
|
-
* @readonly
|
|
41
|
+
* The largest value representable as `PositiveInt16` (the upper saturation
|
|
42
|
+
* target of `fromNumber`).
|
|
45
43
|
*/
|
|
46
44
|
MAX_VALUE,
|
|
47
45
|
/**
|
|
48
|
-
* Returns the
|
|
46
|
+
* Returns the smallest of the given positive integers.
|
|
49
47
|
*
|
|
50
|
-
* @param
|
|
51
|
-
* @
|
|
52
|
-
* @returns The minimum value as a PositiveInt16.
|
|
48
|
+
* @param values - The positive integers to compare (at least one required)
|
|
49
|
+
* @returns The smallest value as a `PositiveInt16`
|
|
53
50
|
*/
|
|
54
51
|
min: min_,
|
|
55
52
|
/**
|
|
56
|
-
* Returns the
|
|
53
|
+
* Returns the largest of the given positive integers.
|
|
57
54
|
*
|
|
58
|
-
* @param
|
|
59
|
-
* @
|
|
60
|
-
* @returns The maximum value as a PositiveInt16.
|
|
55
|
+
* @param values - The positive integers to compare (at least one required)
|
|
56
|
+
* @returns The largest value as a `PositiveInt16`
|
|
61
57
|
*/
|
|
62
58
|
max: max_,
|
|
63
59
|
/**
|
|
64
|
-
*
|
|
60
|
+
* Converts an arbitrary `number` into a `PositiveInt16`, rounding to the
|
|
61
|
+
* nearest integer and saturating the result into the range `[MIN_VALUE,
|
|
62
|
+
* MAX_VALUE]`.
|
|
65
63
|
*
|
|
66
|
-
*
|
|
67
|
-
*
|
|
64
|
+
* Unlike `asPositiveInt16`, this is total: out-of-range inputs are clamped to
|
|
65
|
+
* the nearest representable `PositiveInt16` instead of throwing.
|
|
66
|
+
*
|
|
67
|
+
* @param value - The value to convert
|
|
68
|
+
* @returns The value as a `PositiveInt16`
|
|
68
69
|
*/
|
|
69
|
-
|
|
70
|
+
fromNumber,
|
|
70
71
|
/**
|
|
71
|
-
* Generates a random PositiveInt16
|
|
72
|
+
* Generates a random `PositiveInt16` within the given range.
|
|
73
|
+
*
|
|
74
|
+
* The range is inclusive on both ends.
|
|
72
75
|
*
|
|
73
|
-
* @
|
|
76
|
+
* @param min - The minimum value (inclusive)
|
|
77
|
+
* @param max - The maximum value (inclusive)
|
|
78
|
+
* @returns A random `PositiveInt16` in `[min, max]`
|
|
74
79
|
*/
|
|
75
80
|
random,
|
|
76
81
|
/**
|
|
77
|
-
* Raises a
|
|
82
|
+
* Raises `a` to the power `b`, returning `a ** b` as a `PositiveInt16`
|
|
83
|
+
* (floored to an integer).
|
|
78
84
|
*
|
|
79
|
-
* @param a The base
|
|
80
|
-
* @param b The exponent
|
|
81
|
-
* @returns `a ** b`
|
|
85
|
+
* @param a - The base positive integer
|
|
86
|
+
* @param b - The exponent positive integer
|
|
87
|
+
* @returns `a ** b` as a `PositiveInt16`
|
|
82
88
|
*/
|
|
83
89
|
pow,
|
|
84
90
|
/**
|
|
85
|
-
* Adds two PositiveInt16
|
|
91
|
+
* Adds two positive integers, returning `a + b` as a `PositiveInt16`.
|
|
86
92
|
*
|
|
87
|
-
* @param a The first
|
|
88
|
-
* @param b The second
|
|
89
|
-
* @returns `a
|
|
93
|
+
* @param a - The first positive integer
|
|
94
|
+
* @param b - The second positive integer
|
|
95
|
+
* @returns The sum of `a` and `b` as a `PositiveInt16`
|
|
90
96
|
*/
|
|
91
97
|
add,
|
|
92
98
|
/**
|
|
93
|
-
* Subtracts
|
|
99
|
+
* Subtracts two positive integers, returning `a - b` as a `PositiveInt16`.
|
|
94
100
|
*
|
|
95
|
-
* @param a The
|
|
96
|
-
* @param b The
|
|
97
|
-
* @returns `a
|
|
101
|
+
* @param a - The first positive integer
|
|
102
|
+
* @param b - The second positive integer
|
|
103
|
+
* @returns The difference of `a` and `b` as a `PositiveInt16`
|
|
98
104
|
*/
|
|
99
105
|
sub,
|
|
100
106
|
/**
|
|
101
|
-
* Multiplies two PositiveInt16
|
|
107
|
+
* Multiplies two positive integers, returning `a * b` as a `PositiveInt16`.
|
|
102
108
|
*
|
|
103
|
-
* @param a The first
|
|
104
|
-
* @param b The second
|
|
105
|
-
* @returns `a
|
|
109
|
+
* @param a - The first positive integer
|
|
110
|
+
* @param b - The second positive integer
|
|
111
|
+
* @returns The product of `a` and `b` as a `PositiveInt16`
|
|
106
112
|
*/
|
|
107
113
|
mul,
|
|
108
114
|
/**
|
|
109
|
-
* Divides
|
|
115
|
+
* Divides two positive integers using floor division (`⌊a / b⌋`): the result
|
|
116
|
+
* is `a / b` rounded toward negative infinity, as a `PositiveInt16`.
|
|
110
117
|
*
|
|
111
|
-
* @param a The dividend
|
|
112
|
-
* @param b The divisor
|
|
113
|
-
* @returns
|
|
118
|
+
* @param a - The dividend
|
|
119
|
+
* @param b - The divisor (must be non-zero)
|
|
120
|
+
* @returns The floored quotient as a `PositiveInt16`
|
|
114
121
|
*/
|
|
115
122
|
div
|
|
116
123
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"positive-int16.mjs","sources":["../../../src/number/branded-types/positive-int16.mts"],"sourcesContent":["import { type PositiveInt16 as TtfImported_PositiveInt16 } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type PositiveInt16 = TtfImported_PositiveInt16;\n\ntype ElementType = PositiveInt16;\n\nconst typeNameInMessage = 'a positive integer in [1, 2^15)';\n\nconst {\n MAX_VALUE,\n MIN_VALUE,\n add,\n castType,\n
|
|
1
|
+
{"version":3,"file":"positive-int16.mjs","sources":["../../../src/number/branded-types/positive-int16.mts"],"sourcesContent":["import { type PositiveInt16 as TtfImported_PositiveInt16 } from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type PositiveInt16 = TtfImported_PositiveInt16;\n\ntype ElementType = PositiveInt16;\n\nconst typeNameInMessage = 'a positive integer in [1, 2^15)';\n\nconst {\n MAX_VALUE,\n MIN_VALUE,\n add,\n castType,\n div,\n fromNumber,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n random,\n sub,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForInteger<\n ElementType,\n 1,\n number\n>({\n integerOrSafeInteger: 'SafeInteger',\n MIN_VALUE: 1,\n MAX_VALUE: 2 ** 15 - 1,\n typeNameInMessage,\n} as const);\n\n/**\n * Type guard that checks if a value is a positive integer in [1, 2^15).\n *\n * Returns `true` for a positive integer in [1, 2^15) — a value with no\n * fractional component.\n *\n * @param value - The value to check\n * @returns `true` if the value is a positive integer in [1, 2^15), `false` otherwise\n */\nexport const isPositiveInt16 = is;\n\n/**\n * Casts a `number` to the `PositiveInt16` branded type.\n *\n * Validates that the value is a positive integer in [1, 2^15) and returns it\n * with the `PositiveInt16` brand. Throws a `TypeError` otherwise.\n *\n * @param value - The value to cast\n * @returns The value as a `PositiveInt16`\n * @throws {TypeError} If the value is not a positive integer in [1, 2^15)\n */\nexport const asPositiveInt16 = castType;\n\n/**\n * Namespace providing type-safe operations for the `PositiveInt16` branded\n * type.\n *\n * The `PositiveInt16` type represents a positive integer in [1, 2^15). Division\n * (`div`) uses floor division.\n */\nexport const PositiveInt16 = {\n /**\n * Type guard that checks if a value is a positive integer in [1, 2^15).\n *\n * @param value - The value to check\n * @returns `true` if the value is a positive integer in [1, 2^15), `false` otherwise\n * @see {@link isPositiveInt16} for usage examples\n */\n is,\n\n /**\n * The smallest value representable as `PositiveInt16` (the lower saturation\n * target of `fromNumber`).\n */\n MIN_VALUE,\n\n /**\n * The largest value representable as `PositiveInt16` (the upper saturation\n * target of `fromNumber`).\n */\n MAX_VALUE,\n\n /**\n * Returns the smallest of the given positive integers.\n *\n * @param values - The positive integers to compare (at least one required)\n * @returns The smallest value as a `PositiveInt16`\n */\n min: min_,\n\n /**\n * Returns the largest of the given positive integers.\n *\n * @param values - The positive integers to compare (at least one required)\n * @returns The largest value as a `PositiveInt16`\n */\n max: max_,\n\n /**\n * Converts an arbitrary `number` into a `PositiveInt16`, rounding to the\n * nearest integer and saturating the result into the range `[MIN_VALUE,\n * MAX_VALUE]`.\n *\n * Unlike `asPositiveInt16`, this is total: out-of-range inputs are clamped to\n * the nearest representable `PositiveInt16` instead of throwing.\n *\n * @param value - The value to convert\n * @returns The value as a `PositiveInt16`\n */\n fromNumber,\n\n /**\n * Generates a random `PositiveInt16` 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 `PositiveInt16` in `[min, max]`\n */\n random,\n\n /**\n * Raises `a` to the power `b`, returning `a ** b` as a `PositiveInt16`\n * (floored to an integer).\n *\n * @param a - The base positive integer\n * @param b - The exponent positive integer\n * @returns `a ** b` as a `PositiveInt16`\n */\n pow,\n\n /**\n * Adds two positive integers, returning `a + b` as a `PositiveInt16`.\n *\n * @param a - The first positive integer\n * @param b - The second positive integer\n * @returns The sum of `a` and `b` as a `PositiveInt16`\n */\n add,\n\n /**\n * Subtracts two positive integers, returning `a - b` as a `PositiveInt16`.\n *\n * @param a - The first positive integer\n * @param b - The second positive integer\n * @returns The difference of `a` and `b` as a `PositiveInt16`\n */\n sub,\n\n /**\n * Multiplies two positive integers, returning `a * b` as a `PositiveInt16`.\n *\n * @param a - The first positive integer\n * @param b - The second positive integer\n * @returns The product of `a` and `b` as a `PositiveInt16`\n */\n mul,\n\n /**\n * Divides two positive integers using floor division (`⌊a / b⌋`): the result\n * is `a / b` rounded toward negative infinity, as a `PositiveInt16`.\n *\n * @param a - The dividend\n * @param b - The divisor (must be non-zero)\n * @returns The floored quotient as a `PositiveInt16`\n */\n div,\n} as const;\n\nexpectType<\n keyof typeof PositiveInt16,\n keyof TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'positive' | 'range'\n >\n>('=');\n\nexpectType<\n typeof PositiveInt16,\n TsDataForgeInternals.RefinedNumberUtils.NumberClass<\n ElementType,\n 'int' | 'positive' | 'range'\n >\n>('<=');\n"],"names":[],"mappings":";;AAQA,MAAM,iBAAA,GAAoB,iCAAA;AAE1B,MAAM;AAAA,EACJ,SAAA;AAAA,EACA,SAAA;AAAA,EACA,GAAA;AAAA,EACA,QAAA;AAAA,EACA,GAAA;AAAA,EACA,UAAA;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,eAAA,GAAkB;AAYxB,MAAM,eAAA,GAAkB;AASxB,MAAM,aAAA,GAAgB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ3B,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAMA,SAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQL,GAAA,EAAK,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAaL,UAAA;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,19 +1,24 @@
|
|
|
1
1
|
import { type PositiveInt32 as TtfImported_PositiveInt32 } from 'ts-type-forge';
|
|
2
2
|
export type PositiveInt32 = TtfImported_PositiveInt32;
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
* range [1, 2^31)).
|
|
4
|
+
* Type guard that checks if a value is a positive integer in [1, 2^31).
|
|
6
5
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
6
|
+
* Returns `true` for a positive integer in [1, 2^31) — a value with no
|
|
7
|
+
* fractional component.
|
|
8
|
+
*
|
|
9
|
+
* @param value - The value to check
|
|
10
|
+
* @returns `true` if the value is a positive integer in [1, 2^31), `false` otherwise
|
|
9
11
|
*/
|
|
10
12
|
export declare const isPositiveInt32: (a: number) => a is TtfImported_PositiveInt32;
|
|
11
13
|
/**
|
|
12
|
-
* Casts a number to
|
|
14
|
+
* Casts a `number` to the `PositiveInt32` branded type.
|
|
15
|
+
*
|
|
16
|
+
* Validates that the value is a positive integer in [1, 2^31) and returns it
|
|
17
|
+
* with the `PositiveInt32` brand. Throws a `TypeError` otherwise.
|
|
13
18
|
*
|
|
14
|
-
* @param value The value to cast
|
|
15
|
-
* @returns The value as a PositiveInt32
|
|
16
|
-
* @throws {TypeError} If the value is not a positive integer in [1, 2^31)
|
|
19
|
+
* @param value - The value to cast
|
|
20
|
+
* @returns The value as a `PositiveInt32`
|
|
21
|
+
* @throws {TypeError} If the value is not a positive integer in [1, 2^31)
|
|
17
22
|
*/
|
|
18
23
|
export declare const asPositiveInt32: <N extends number>(x: N) => number & {
|
|
19
24
|
readonly "!=0": true;
|
|
@@ -33,102 +38,107 @@ export declare const asPositiveInt32: <N extends number>(x: N) => number & {
|
|
|
33
38
|
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
34
39
|
}> & N;
|
|
35
40
|
/**
|
|
36
|
-
* Namespace providing type-safe
|
|
37
|
-
*
|
|
41
|
+
* Namespace providing type-safe operations for the `PositiveInt32` branded
|
|
42
|
+
* type.
|
|
38
43
|
*
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
* positive integer constraint, with results below 1 clamped to MIN_VALUE and
|
|
42
|
-
* overflow results clamped to MAX_VALUE.
|
|
44
|
+
* The `PositiveInt32` type represents a positive integer in [1, 2^31). Division
|
|
45
|
+
* (`div`) uses floor division.
|
|
43
46
|
*/
|
|
44
47
|
export declare const PositiveInt32: {
|
|
45
48
|
/**
|
|
46
|
-
* Type guard
|
|
49
|
+
* Type guard that checks if a value is a positive integer in [1, 2^31).
|
|
47
50
|
*
|
|
48
|
-
* @param value The value to check
|
|
49
|
-
* @returns `true` if the value is a
|
|
50
|
-
*
|
|
51
|
+
* @param value - The value to check
|
|
52
|
+
* @returns `true` if the value is a positive integer in [1, 2^31), `false` otherwise
|
|
53
|
+
* @see {@link isPositiveInt32} for usage examples
|
|
51
54
|
*/
|
|
52
55
|
readonly is: (a: number) => a is TtfImported_PositiveInt32;
|
|
53
56
|
/**
|
|
54
|
-
* The
|
|
55
|
-
*
|
|
56
|
-
* @readonly
|
|
57
|
+
* The smallest value representable as `PositiveInt32` (the lower saturation
|
|
58
|
+
* target of `fromNumber`).
|
|
57
59
|
*/
|
|
58
60
|
readonly MIN_VALUE: 1;
|
|
59
61
|
/**
|
|
60
|
-
* The
|
|
61
|
-
*
|
|
62
|
-
* @readonly
|
|
62
|
+
* The largest value representable as `PositiveInt32` (the upper saturation
|
|
63
|
+
* target of `fromNumber`).
|
|
63
64
|
*/
|
|
64
65
|
readonly MAX_VALUE: number;
|
|
65
66
|
/**
|
|
66
|
-
* Returns the
|
|
67
|
+
* Returns the smallest of the given positive integers.
|
|
67
68
|
*
|
|
68
|
-
* @param
|
|
69
|
-
* @
|
|
70
|
-
* @returns The minimum value as a PositiveInt32.
|
|
69
|
+
* @param values - The positive integers to compare (at least one required)
|
|
70
|
+
* @returns The smallest value as a `PositiveInt32`
|
|
71
71
|
*/
|
|
72
72
|
readonly min: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>[]) => TtfImported_PositiveInt32;
|
|
73
73
|
/**
|
|
74
|
-
* Returns the
|
|
74
|
+
* Returns the largest of the given positive integers.
|
|
75
75
|
*
|
|
76
|
-
* @param
|
|
77
|
-
* @
|
|
78
|
-
* @returns The maximum value as a PositiveInt32.
|
|
76
|
+
* @param values - The positive integers to compare (at least one required)
|
|
77
|
+
* @returns The largest value as a `PositiveInt32`
|
|
79
78
|
*/
|
|
80
79
|
readonly max: (...values: readonly import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>[]) => TtfImported_PositiveInt32;
|
|
81
80
|
/**
|
|
82
|
-
*
|
|
81
|
+
* Converts an arbitrary `number` into a `PositiveInt32`, rounding to the
|
|
82
|
+
* nearest integer and saturating the result into the range `[MIN_VALUE,
|
|
83
|
+
* MAX_VALUE]`.
|
|
84
|
+
*
|
|
85
|
+
* Unlike `asPositiveInt32`, this is total: out-of-range inputs are clamped to
|
|
86
|
+
* the nearest representable `PositiveInt32` instead of throwing.
|
|
83
87
|
*
|
|
84
|
-
* @param value The
|
|
85
|
-
* @returns The value
|
|
88
|
+
* @param value - The value to convert
|
|
89
|
+
* @returns The value as a `PositiveInt32`
|
|
86
90
|
*/
|
|
87
|
-
readonly
|
|
91
|
+
readonly fromNumber: (x: number) => TtfImported_PositiveInt32;
|
|
88
92
|
/**
|
|
89
|
-
* Generates a random PositiveInt32
|
|
93
|
+
* Generates a random `PositiveInt32` within the given range.
|
|
94
|
+
*
|
|
95
|
+
* The range is inclusive on both ends.
|
|
90
96
|
*
|
|
91
|
-
* @
|
|
97
|
+
* @param min - The minimum value (inclusive)
|
|
98
|
+
* @param max - The maximum value (inclusive)
|
|
99
|
+
* @returns A random `PositiveInt32` in `[min, max]`
|
|
92
100
|
*/
|
|
93
101
|
readonly random: (min?: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32> | undefined, max?: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32> | undefined) => TtfImported_PositiveInt32;
|
|
94
102
|
/**
|
|
95
|
-
* Raises a
|
|
103
|
+
* Raises `a` to the power `b`, returning `a ** b` as a `PositiveInt32`
|
|
104
|
+
* (floored to an integer).
|
|
96
105
|
*
|
|
97
|
-
* @param a The base
|
|
98
|
-
* @param b The exponent
|
|
99
|
-
* @returns `a ** b`
|
|
106
|
+
* @param a - The base positive integer
|
|
107
|
+
* @param b - The exponent positive integer
|
|
108
|
+
* @returns `a ** b` as a `PositiveInt32`
|
|
100
109
|
*/
|
|
101
110
|
readonly pow: (x: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>, y: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>) => TtfImported_PositiveInt32;
|
|
102
111
|
/**
|
|
103
|
-
* Adds two PositiveInt32
|
|
112
|
+
* Adds two positive integers, returning `a + b` as a `PositiveInt32`.
|
|
104
113
|
*
|
|
105
|
-
* @param a The first
|
|
106
|
-
* @param b The second
|
|
107
|
-
* @returns `a
|
|
114
|
+
* @param a - The first positive integer
|
|
115
|
+
* @param b - The second positive integer
|
|
116
|
+
* @returns The sum of `a` and `b` as a `PositiveInt32`
|
|
108
117
|
*/
|
|
109
118
|
readonly add: (x: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>, y: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>) => TtfImported_PositiveInt32;
|
|
110
119
|
/**
|
|
111
|
-
* Subtracts
|
|
120
|
+
* Subtracts two positive integers, returning `a - b` as a `PositiveInt32`.
|
|
112
121
|
*
|
|
113
|
-
* @param a The
|
|
114
|
-
* @param b The
|
|
115
|
-
* @returns `a
|
|
122
|
+
* @param a - The first positive integer
|
|
123
|
+
* @param b - The second positive integer
|
|
124
|
+
* @returns The difference of `a` and `b` as a `PositiveInt32`
|
|
116
125
|
*/
|
|
117
126
|
readonly sub: (x: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>, y: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>) => TtfImported_PositiveInt32;
|
|
118
127
|
/**
|
|
119
|
-
* Multiplies two PositiveInt32
|
|
128
|
+
* Multiplies two positive integers, returning `a * b` as a `PositiveInt32`.
|
|
120
129
|
*
|
|
121
|
-
* @param a The first
|
|
122
|
-
* @param b The second
|
|
123
|
-
* @returns `a
|
|
130
|
+
* @param a - The first positive integer
|
|
131
|
+
* @param b - The second positive integer
|
|
132
|
+
* @returns The product of `a` and `b` as a `PositiveInt32`
|
|
124
133
|
*/
|
|
125
134
|
readonly mul: (x: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>, y: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>) => TtfImported_PositiveInt32;
|
|
126
135
|
/**
|
|
127
|
-
* Divides
|
|
136
|
+
* Divides two positive integers using floor division (`⌊a / b⌋`): the result
|
|
137
|
+
* is `a / b` rounded toward negative infinity, as a `PositiveInt32`.
|
|
128
138
|
*
|
|
129
|
-
* @param a The dividend
|
|
130
|
-
* @param b The divisor
|
|
131
|
-
* @returns
|
|
139
|
+
* @param a - The dividend
|
|
140
|
+
* @param b - The divisor (must be non-zero)
|
|
141
|
+
* @returns The floored quotient as a `PositiveInt32`
|
|
132
142
|
*/
|
|
133
143
|
readonly div: (x: import("ts-type-forge").WithSmallInt<TtfImported_PositiveInt32>, 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
144
|
readonly "!=0": true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"positive-int32.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/positive-int32.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,IAAI,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAIhF,MAAM,MAAM,aAAa,GAAG,yBAAyB,CAAC;AA+BtD
|
|
1
|
+
{"version":3,"file":"positive-int32.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/positive-int32.mts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,aAAa,IAAI,yBAAyB,EAAE,MAAM,eAAe,CAAC;AAIhF,MAAM,MAAM,aAAa,GAAG,yBAAyB,CAAC;AA+BtD;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,+CAAK,CAAC;AAElC;;;;;;;;;GASG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;MAAW,CAAC;AAExC;;;;;;GAMG;AACH,eAAO,MAAM,aAAa;IACxB;;;;;;OAMG;;IAGH;;;OAGG;;IAGH;;;OAGG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;;;;;;OAUG;;IAGH;;;;;;;;OAQG;;IAGH;;;;;;;OAOG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;;OAOG;;;;;;;;;;;;;;;;;;CAEK,CAAC"}
|