ts-data-forge 10.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.
- package/dist/array/impl/array-utils-creation.d.mts +3 -3
- package/dist/array/impl/array-utils-creation.d.mts.map +1 -1
- package/dist/array/impl/array-utils-creation.mjs.map +1 -1
- package/dist/array/impl/array-utils-element-access.d.mts +4 -4
- package/dist/array/impl/array-utils-element-access.mjs.map +1 -1
- package/dist/{guard/as-length-bounded-array.d.mts → array/impl/array-utils-length-bounded-array-cast.d.mts} +9 -9
- package/dist/array/impl/array-utils-length-bounded-array-cast.d.mts.map +1 -0
- package/dist/{guard/as-length-bounded-array.mjs → array/impl/array-utils-length-bounded-array-cast.mjs} +2 -2
- package/dist/array/impl/array-utils-length-bounded-array-cast.mjs.map +1 -0
- package/dist/{guard/is-length-bounded-array.d.mts → array/impl/array-utils-length-bounded-array-guard.d.mts} +13 -13
- package/dist/array/impl/array-utils-length-bounded-array-guard.d.mts.map +1 -0
- package/dist/{guard/is-length-bounded-array.mjs → array/impl/array-utils-length-bounded-array-guard.mjs} +1 -1
- package/dist/array/impl/array-utils-length-bounded-array-guard.mjs.map +1 -0
- package/dist/array/impl/array-utils-modification.d.mts +9 -9
- package/dist/array/impl/array-utils-modification.d.mts.map +1 -1
- package/dist/array/impl/array-utils-modification.mjs.map +1 -1
- package/dist/array/impl/array-utils-reducing-value.d.mts +9 -9
- package/dist/array/impl/array-utils-reducing-value.mjs.map +1 -1
- package/dist/array/impl/array-utils-size.d.mts +3 -3
- package/dist/array/impl/array-utils-size.mjs.map +1 -1
- package/dist/array/impl/array-utils-slicing.d.mts +9 -9
- package/dist/array/impl/array-utils-slicing.d.mts.map +1 -1
- package/dist/array/impl/array-utils-slicing.mjs.map +1 -1
- package/dist/array/impl/array-utils-transformation.d.mts +16 -10
- package/dist/array/impl/array-utils-transformation.d.mts.map +1 -1
- package/dist/array/impl/array-utils-transformation.mjs.map +1 -1
- package/dist/array/impl/index.d.mts +2 -0
- package/dist/array/impl/index.d.mts.map +1 -1
- package/dist/array/impl/index.mjs +2 -0
- package/dist/array/impl/index.mjs.map +1 -1
- package/dist/entry-point.mjs +1 -3
- package/dist/entry-point.mjs.map +1 -1
- package/dist/guard/index.d.mts +0 -3
- package/dist/guard/index.d.mts.map +1 -1
- package/dist/guard/index.mjs +0 -3
- package/dist/guard/index.mjs.map +1 -1
- package/dist/index.d.mts +1 -0
- package/dist/index.d.mts.map +1 -1
- package/dist/index.mjs +1 -3
- package/dist/index.mjs.map +1 -1
- 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 +65 -58
- package/dist/number/branded-types/int16.d.mts.map +1 -1
- package/dist/number/branded-types/int16.mjs +49 -45
- package/dist/number/branded-types/int16.mjs.map +1 -1
- package/dist/number/branded-types/int32.d.mts +65 -58
- package/dist/number/branded-types/int32.d.mts.map +1 -1
- package/dist/number/branded-types/int32.mjs +49 -45
- package/dist/number/branded-types/int32.mjs.map +1 -1
- package/dist/number/branded-types/negative-finite-number.d.mts +68 -59
- package/dist/number/branded-types/negative-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/negative-finite-number.mjs +52 -46
- package/dist/number/branded-types/negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/negative-int.d.mts +60 -48
- package/dist/number/branded-types/negative-int.d.mts.map +1 -1
- package/dist/number/branded-types/negative-int.mjs +40 -36
- package/dist/number/branded-types/negative-int.mjs.map +1 -1
- package/dist/number/branded-types/negative-safe-int.d.mts +57 -56
- package/dist/number/branded-types/negative-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/negative-safe-int.mjs +40 -41
- package/dist/number/branded-types/negative-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.d.mts +74 -64
- package/dist/number/branded-types/non-negative-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-finite-number.mjs +58 -51
- package/dist/number/branded-types/non-negative-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int16.d.mts +64 -57
- package/dist/number/branded-types/non-negative-int16.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-int16.mjs +47 -43
- package/dist/number/branded-types/non-negative-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-negative-int32.d.mts +64 -58
- package/dist/number/branded-types/non-negative-int32.d.mts.map +1 -1
- package/dist/number/branded-types/non-negative-int32.mjs +47 -44
- package/dist/number/branded-types/non-negative-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-finite-number.d.mts +64 -54
- package/dist/number/branded-types/non-positive-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-finite-number.mjs +48 -41
- package/dist/number/branded-types/non-positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-int.d.mts +41 -146
- package/dist/number/branded-types/non-positive-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-int.mjs +27 -107
- package/dist/number/branded-types/non-positive-int.mjs.map +1 -1
- package/dist/number/branded-types/non-positive-safe-int.d.mts +54 -53
- package/dist/number/branded-types/non-positive-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-positive-safe-int.mjs +37 -39
- 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 +52 -53
- package/dist/number/branded-types/non-zero-int16.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int16.mjs +36 -39
- package/dist/number/branded-types/non-zero-int16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-int32.d.mts +52 -54
- package/dist/number/branded-types/non-zero-int32.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-int32.mjs +36 -40
- package/dist/number/branded-types/non-zero-int32.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.d.mts +53 -54
- package/dist/number/branded-types/non-zero-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-safe-int.mjs +36 -40
- package/dist/number/branded-types/non-zero-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.d.mts +52 -53
- package/dist/number/branded-types/non-zero-uint16.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-uint16.mjs +35 -39
- package/dist/number/branded-types/non-zero-uint16.mjs.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.d.mts +52 -53
- package/dist/number/branded-types/non-zero-uint32.d.mts.map +1 -1
- package/dist/number/branded-types/non-zero-uint32.mjs +35 -39
- package/dist/number/branded-types/non-zero-uint32.mjs.map +1 -1
- package/dist/number/branded-types/positive-finite-number.d.mts +74 -63
- package/dist/number/branded-types/positive-finite-number.d.mts.map +1 -1
- package/dist/number/branded-types/positive-finite-number.mjs +58 -50
- package/dist/number/branded-types/positive-finite-number.mjs.map +1 -1
- package/dist/number/branded-types/positive-int.d.mts +46 -68
- package/dist/number/branded-types/positive-int.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int.mjs +34 -49
- package/dist/number/branded-types/positive-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-int16.d.mts +61 -57
- package/dist/number/branded-types/positive-int16.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int16.mjs +44 -43
- package/dist/number/branded-types/positive-int16.mjs.map +1 -1
- package/dist/number/branded-types/positive-int32.d.mts +61 -57
- package/dist/number/branded-types/positive-int32.d.mts.map +1 -1
- package/dist/number/branded-types/positive-int32.mjs +44 -43
- package/dist/number/branded-types/positive-int32.mjs.map +1 -1
- package/dist/number/branded-types/positive-safe-int.d.mts +62 -57
- package/dist/number/branded-types/positive-safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/positive-safe-int.mjs +45 -43
- package/dist/number/branded-types/positive-safe-int.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint16.d.mts +61 -57
- package/dist/number/branded-types/positive-uint16.d.mts.map +1 -1
- package/dist/number/branded-types/positive-uint16.mjs +44 -43
- package/dist/number/branded-types/positive-uint16.mjs.map +1 -1
- package/dist/number/branded-types/positive-uint32.d.mts +61 -58
- package/dist/number/branded-types/positive-uint32.d.mts.map +1 -1
- package/dist/number/branded-types/positive-uint32.mjs +44 -44
- package/dist/number/branded-types/positive-uint32.mjs.map +1 -1
- package/dist/number/branded-types/safe-int.d.mts +43 -62
- package/dist/number/branded-types/safe-int.d.mts.map +1 -1
- package/dist/number/branded-types/safe-int.mjs +35 -42
- package/dist/number/branded-types/safe-int.mjs.map +1 -1
- package/dist/number/branded-types/safe-uint.d.mts +62 -57
- package/dist/number/branded-types/safe-uint.d.mts.map +1 -1
- package/dist/number/branded-types/safe-uint.mjs +46 -44
- package/dist/number/branded-types/safe-uint.mjs.map +1 -1
- package/dist/number/branded-types/uint.d.mts +63 -50
- package/dist/number/branded-types/uint.d.mts.map +1 -1
- package/dist/number/branded-types/uint.mjs +42 -39
- package/dist/number/branded-types/uint.mjs.map +1 -1
- package/dist/number/branded-types/uint16.d.mts +60 -58
- package/dist/number/branded-types/uint16.d.mts.map +1 -1
- package/dist/number/branded-types/uint16.mjs +44 -43
- package/dist/number/branded-types/uint16.mjs.map +1 -1
- package/dist/number/branded-types/uint32.d.mts +59 -55
- package/dist/number/branded-types/uint32.d.mts.map +1 -1
- package/dist/number/branded-types/uint32.mjs +42 -42
- package/dist/number/branded-types/uint32.mjs.map +1 -1
- package/dist/number/enum/int8.d.mts +56 -65
- package/dist/number/enum/int8.d.mts.map +1 -1
- package/dist/number/enum/int8.mjs +44 -43
- package/dist/number/enum/int8.mjs.map +1 -1
- package/dist/number/enum/uint8.d.mts +60 -58
- package/dist/number/enum/uint8.d.mts.map +1 -1
- package/dist/number/enum/uint8.mjs +44 -43
- package/dist/number/enum/uint8.mjs.map +1 -1
- package/dist/string/index.d.mts +2 -0
- package/dist/string/index.d.mts.map +1 -0
- package/dist/string/index.mjs +2 -0
- package/dist/string/index.mjs.map +1 -0
- package/dist/string/str.d.mts +273 -0
- package/dist/string/str.d.mts.map +1 -0
- package/dist/string/str.mjs +42 -0
- package/dist/string/str.mjs.map +1 -0
- package/package.json +31 -92
- package/src/array/impl/array-utils-creation.mts +2 -1
- package/src/array/impl/array-utils-element-access.mts +3 -3
- package/src/array/impl/array-utils-element-access.test.mts +3 -3
- package/src/{guard/as-length-bounded-array.mts → array/impl/array-utils-length-bounded-array-cast.mts} +9 -9
- package/src/{guard/as-length-bounded-array.test.mts → array/impl/array-utils-length-bounded-array-cast.test.mts} +2 -2
- package/src/{guard/is-length-bounded-array.mts → array/impl/array-utils-length-bounded-array-guard.mts} +12 -12
- package/src/{guard/is-length-bounded-array.test.mts → array/impl/array-utils-length-bounded-array-guard.test.mts} +2 -2
- package/src/array/impl/array-utils-modification.mts +9 -8
- package/src/array/impl/array-utils-modification.test.mts +6 -1
- package/src/array/impl/array-utils-reducing-value.mts +9 -9
- package/src/array/impl/array-utils-size.mts +2 -2
- package/src/array/impl/array-utils-slicing.mts +24 -13
- package/src/array/impl/array-utils-transformation.mts +18 -12
- package/src/array/impl/array-utils-transformation.test.mts +12 -12
- package/src/array/impl/index.mts +2 -0
- package/src/guard/index.mts +0 -3
- package/src/index.mts +1 -0
- 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 +65 -58
- package/src/number/branded-types/int32.mts +65 -58
- package/src/number/branded-types/negative-finite-number.mts +68 -68
- package/src/number/branded-types/negative-int.mts +60 -57
- package/src/number/branded-types/negative-safe-int.mts +57 -65
- package/src/number/branded-types/non-negative-finite-number.mts +74 -64
- package/src/number/branded-types/non-negative-int16.mts +64 -57
- package/src/number/branded-types/non-negative-int32.mts +64 -58
- package/src/number/branded-types/non-positive-finite-number.mts +64 -54
- package/src/number/branded-types/non-positive-int.mts +41 -146
- package/src/number/branded-types/non-positive-safe-int.mts +54 -53
- 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 +52 -53
- package/src/number/branded-types/non-zero-int32.mts +52 -54
- package/src/number/branded-types/non-zero-safe-int.mts +53 -54
- package/src/number/branded-types/non-zero-uint16.mts +52 -53
- package/src/number/branded-types/non-zero-uint32.mts +52 -53
- package/src/number/branded-types/positive-finite-number.mts +74 -63
- package/src/number/branded-types/positive-int.mts +46 -68
- package/src/number/branded-types/positive-int16.mts +61 -57
- package/src/number/branded-types/positive-int32.mts +61 -57
- package/src/number/branded-types/positive-safe-int.mts +62 -57
- package/src/number/branded-types/positive-uint16.mts +61 -57
- package/src/number/branded-types/positive-uint32.mts +61 -58
- package/src/number/branded-types/safe-int.mts +43 -62
- package/src/number/branded-types/safe-uint.mts +62 -57
- package/src/number/branded-types/uint.mts +63 -50
- package/src/number/branded-types/uint16.mts +60 -58
- package/src/number/branded-types/uint32.mts +59 -55
- package/src/number/enum/int8.mts +56 -65
- package/src/number/enum/uint8.mts +60 -58
- package/src/string/index.mts +1 -0
- package/src/string/str.mts +371 -0
- package/src/string/str.test.mts +215 -0
- package/dist/guard/as-length-bounded-array.d.mts.map +0 -1
- package/dist/guard/as-length-bounded-array.mjs.map +0 -1
- package/dist/guard/is-length-bounded-array.d.mts.map +0 -1
- package/dist/guard/is-length-bounded-array.mjs.map +0 -1
- package/dist/guard/is-length-bounded-string.d.mts +0 -163
- package/dist/guard/is-length-bounded-string.d.mts.map +0 -1
- package/dist/guard/is-length-bounded-string.mjs +0 -7
- package/dist/guard/is-length-bounded-string.mjs.map +0 -1
- package/src/guard/is-length-bounded-string.mts +0 -199
- package/src/guard/is-length-bounded-string.test.mts +0 -170
package/dist/guard/index.mjs
CHANGED
|
@@ -1,7 +1,4 @@
|
|
|
1
|
-
export { asBoundedLengthArray, asFixedLengthArray, asMaxLengthArray, asMinLengthArray } from './as-length-bounded-array.mjs';
|
|
2
1
|
export { hasKey } from './has-key.mjs';
|
|
3
|
-
export { isBoundedLengthArray, isFixedLengthArray, isMaxLengthArray, isMinLengthArray } from './is-length-bounded-array.mjs';
|
|
4
|
-
export { isBoundedLengthString, isFixedLengthString, isMaxLengthString, isMinLengthString } from './is-length-bounded-string.mjs';
|
|
5
2
|
export { isNonEmptyString } from './is-non-empty-string.mjs';
|
|
6
3
|
export { isNonNullObject } from './is-non-null-object.mjs';
|
|
7
4
|
export { isPrimitive } from './is-primitive.mjs';
|
package/dist/guard/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
|
package/dist/index.d.mts
CHANGED
package/dist/index.d.mts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.mts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,aAAa,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.mts","sourceRoot":"","sources":["../src/index.mts"],"names":[],"mappings":"AAAA,cAAc,yBAAyB,CAAC;AACxC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,sBAAsB,CAAC;AACrC,cAAc,kBAAkB,CAAC;AACjC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,oBAAoB,CAAC;AACnC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,aAAa,CAAC"}
|
package/dist/index.mjs
CHANGED
|
@@ -5,10 +5,7 @@ export { ISet } from './collections/iset.mjs';
|
|
|
5
5
|
export { createQueue } from './collections/queue.mjs';
|
|
6
6
|
export { createStack } from './collections/stack.mjs';
|
|
7
7
|
export { expectType } from './expect-type.mjs';
|
|
8
|
-
export { asBoundedLengthArray, asFixedLengthArray, asMaxLengthArray, asMinLengthArray } from './guard/as-length-bounded-array.mjs';
|
|
9
8
|
export { hasKey } from './guard/has-key.mjs';
|
|
10
|
-
export { isBoundedLengthArray, isFixedLengthArray, isMaxLengthArray, isMinLengthArray } from './guard/is-length-bounded-array.mjs';
|
|
11
|
-
export { isBoundedLengthString, isFixedLengthString, isMaxLengthString, isMinLengthString } from './guard/is-length-bounded-string.mjs';
|
|
12
9
|
export { isNonEmptyString } from './guard/is-non-empty-string.mjs';
|
|
13
10
|
export { isNonNullObject } from './guard/is-non-null-object.mjs';
|
|
14
11
|
export { isPrimitive } from './guard/is-primitive.mjs';
|
|
@@ -64,4 +61,5 @@ export { memoizeFunction } from './others/memoize-function.mjs';
|
|
|
64
61
|
export { tp } from './others/tuple.mjs';
|
|
65
62
|
export { unknownToString } from './others/unknown-to-string.mjs';
|
|
66
63
|
export { createPromise } from './promise/promise.mjs';
|
|
64
|
+
export { Str } from './string/str.mjs';
|
|
67
65
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -5,24 +5,22 @@ type ElementType = FiniteNumber;
|
|
|
5
5
|
/**
|
|
6
6
|
* Type guard that checks if a value is a finite number.
|
|
7
7
|
*
|
|
8
|
-
* Returns `true`
|
|
9
|
-
*
|
|
10
|
-
* these special values.
|
|
8
|
+
* Returns `true` only for a finite value — never `NaN`, `Infinity`, or
|
|
9
|
+
* `-Infinity`.
|
|
11
10
|
*
|
|
12
11
|
* @param value - The value to check
|
|
13
|
-
* @returns `true` if the value is finite, `false` otherwise
|
|
12
|
+
* @returns `true` if the value is a finite number, `false` otherwise
|
|
14
13
|
*/
|
|
15
14
|
export declare const isFiniteNumber: (a: number) => a is TtfImported_FiniteNumber;
|
|
16
15
|
/**
|
|
17
|
-
* Casts a number to
|
|
16
|
+
* Casts a `number` to the `FiniteNumber` branded type.
|
|
18
17
|
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
* safety for operations that require finite numeric values.
|
|
18
|
+
* Validates that the value is a finite number and returns it with the
|
|
19
|
+
* `FiniteNumber` brand. Throws a `TypeError` otherwise.
|
|
22
20
|
*
|
|
23
21
|
* @param value - The value to cast
|
|
24
|
-
* @returns The value as a FiniteNumber
|
|
25
|
-
* @throws {TypeError} If the value is
|
|
22
|
+
* @returns The value as a `FiniteNumber`
|
|
23
|
+
* @throws {TypeError} If the value is not a finite number
|
|
26
24
|
*/
|
|
27
25
|
export declare const asFiniteNumber: <N extends number>(x: N) => number & {
|
|
28
26
|
readonly Finite: true;
|
|
@@ -31,123 +29,111 @@ export declare const asFiniteNumber: <N extends number>(x: N) => number & {
|
|
|
31
29
|
'TSTypeForgeInternals--edd2f9ce-7ca5-45b0-9d1a-bd61b9b5d9c3': unknown;
|
|
32
30
|
}> & N;
|
|
33
31
|
/**
|
|
34
|
-
* Namespace providing type-safe operations for FiniteNumber branded
|
|
32
|
+
* Namespace providing type-safe operations for the `FiniteNumber` branded type.
|
|
35
33
|
*
|
|
36
|
-
* The FiniteNumber type represents
|
|
37
|
-
* special values NaN, Infinity, and -Infinity. All operations are guaranteed to
|
|
38
|
-
* maintain the finite constraint when given finite inputs.
|
|
39
|
-
*
|
|
40
|
-
* This type is essential for:
|
|
41
|
-
*
|
|
42
|
-
* - Mathematical operations that require real numbers
|
|
43
|
-
* - Preventing NaN/Infinity propagation in calculations
|
|
44
|
-
* - Ensuring numeric stability in algorithms
|
|
34
|
+
* The `FiniteNumber` type represents a finite number.
|
|
45
35
|
*/
|
|
46
36
|
export declare const FiniteNumber: {
|
|
47
37
|
/**
|
|
48
38
|
* Type guard that checks if a value is a finite number.
|
|
49
39
|
*
|
|
50
40
|
* @param value - The value to check
|
|
51
|
-
* @returns `true` if the value is finite, `false` otherwise
|
|
41
|
+
* @returns `true` if the value is a finite number, `false` otherwise
|
|
52
42
|
* @see {@link isFiniteNumber} for usage examples
|
|
53
43
|
*/
|
|
54
44
|
readonly is: (a: number) => a is TtfImported_FiniteNumber;
|
|
55
45
|
/**
|
|
56
46
|
* Returns the absolute value of a finite number.
|
|
57
47
|
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
48
|
+
* The result is non-negative and keeps the `FiniteNumber` brand.
|
|
49
|
+
*
|
|
50
|
+
* @param a - The finite number value
|
|
51
|
+
* @returns The absolute value as a non-negative `FiniteNumber`
|
|
60
52
|
*/
|
|
61
53
|
readonly abs: (x: TtfImported_FiniteNumber) => import("ts-type-forge").IntersectBrand<TtfImported_FiniteNumber, import("ts-type-forge").NonNegativeNumber>;
|
|
62
54
|
/**
|
|
63
|
-
* Returns the
|
|
55
|
+
* Returns the smallest of the given finite numbers.
|
|
64
56
|
*
|
|
65
57
|
* @param values - The finite numbers to compare (at least one required)
|
|
66
|
-
* @returns The smallest value as a FiniteNumber
|
|
58
|
+
* @returns The smallest value as a `FiniteNumber`
|
|
67
59
|
*/
|
|
68
60
|
readonly min: (...values: readonly TtfImported_FiniteNumber[]) => TtfImported_FiniteNumber;
|
|
69
61
|
/**
|
|
70
|
-
* Returns the
|
|
62
|
+
* Returns the largest of the given finite numbers.
|
|
71
63
|
*
|
|
72
64
|
* @param values - The finite numbers to compare (at least one required)
|
|
73
|
-
* @returns The largest value as a FiniteNumber
|
|
65
|
+
* @returns The largest value as a `FiniteNumber`
|
|
74
66
|
*/
|
|
75
67
|
readonly max: (...values: readonly TtfImported_FiniteNumber[]) => TtfImported_FiniteNumber;
|
|
76
68
|
/**
|
|
77
|
-
* Returns the
|
|
69
|
+
* Returns the greatest integer less than or equal to a finite number.
|
|
78
70
|
*
|
|
79
|
-
* @param
|
|
80
|
-
* @returns The
|
|
71
|
+
* @param a - The finite number value
|
|
72
|
+
* @returns The floored value as an integer
|
|
81
73
|
*/
|
|
82
74
|
readonly floor: (x: ElementType) => TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>;
|
|
83
75
|
/**
|
|
84
|
-
* Returns the smallest integer greater than or equal to
|
|
85
|
-
* number.
|
|
76
|
+
* Returns the smallest integer greater than or equal to a finite number.
|
|
86
77
|
*
|
|
87
|
-
* @param
|
|
88
|
-
* @returns The
|
|
78
|
+
* @param a - The finite number value
|
|
79
|
+
* @returns The ceiled value as an integer
|
|
89
80
|
*/
|
|
90
81
|
readonly ceil: (x: ElementType) => TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>;
|
|
91
82
|
/**
|
|
92
|
-
*
|
|
83
|
+
* Returns the value of a finite number rounded to the nearest integer.
|
|
93
84
|
*
|
|
94
|
-
* @param
|
|
95
|
-
* @returns The rounded value as an
|
|
85
|
+
* @param a - The finite number value
|
|
86
|
+
* @returns The rounded value as an integer
|
|
96
87
|
*/
|
|
97
88
|
readonly round: (x: ElementType) => TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>;
|
|
98
89
|
/**
|
|
99
|
-
* Generates a random
|
|
90
|
+
* Generates a random `FiniteNumber` within the given range.
|
|
100
91
|
*
|
|
101
|
-
* The
|
|
102
|
-
* bounds are inclusive.
|
|
92
|
+
* The range is inclusive on both ends.
|
|
103
93
|
*
|
|
104
94
|
* @param min - The minimum value (inclusive)
|
|
105
95
|
* @param max - The maximum value (inclusive)
|
|
106
|
-
* @returns A random FiniteNumber in
|
|
96
|
+
* @returns A random `FiniteNumber` in `[min, max]`
|
|
107
97
|
*/
|
|
108
98
|
readonly random: (min?: TtfImported_FiniteNumber | undefined, max?: TtfImported_FiniteNumber | undefined) => TtfImported_FiniteNumber;
|
|
109
99
|
/**
|
|
110
|
-
* Raises a
|
|
100
|
+
* Raises `a` to the power `b`, returning `a ** b` as a `FiniteNumber`.
|
|
111
101
|
*
|
|
112
102
|
* @param a - The base finite number
|
|
113
103
|
* @param b - The exponent finite number
|
|
114
|
-
* @returns `a ** b` as a FiniteNumber
|
|
104
|
+
* @returns `a ** b` as a `FiniteNumber`
|
|
115
105
|
*/
|
|
116
106
|
readonly pow: (x: TtfImported_FiniteNumber, y: TtfImported_FiniteNumber) => TtfImported_FiniteNumber;
|
|
117
107
|
/**
|
|
118
|
-
* Adds two finite numbers
|
|
108
|
+
* Adds two finite numbers, returning `a + b` as a `FiniteNumber`.
|
|
119
109
|
*
|
|
120
|
-
* @param a -
|
|
121
|
-
* @param b -
|
|
122
|
-
* @returns `a
|
|
110
|
+
* @param a - The first finite number
|
|
111
|
+
* @param b - The second finite number
|
|
112
|
+
* @returns The sum of `a` and `b` as a `FiniteNumber`
|
|
123
113
|
*/
|
|
124
114
|
readonly add: (x: TtfImported_FiniteNumber, y: TtfImported_FiniteNumber) => TtfImported_FiniteNumber;
|
|
125
115
|
/**
|
|
126
|
-
* Subtracts two finite numbers
|
|
116
|
+
* Subtracts two finite numbers, returning `a - b` as a `FiniteNumber`.
|
|
127
117
|
*
|
|
128
|
-
* @param a -
|
|
129
|
-
* @param b -
|
|
130
|
-
* @returns `a
|
|
118
|
+
* @param a - The first finite number
|
|
119
|
+
* @param b - The second finite number
|
|
120
|
+
* @returns The difference of `a` and `b` as a `FiniteNumber`
|
|
131
121
|
*/
|
|
132
122
|
readonly sub: (x: TtfImported_FiniteNumber, y: TtfImported_FiniteNumber) => TtfImported_FiniteNumber;
|
|
133
123
|
/**
|
|
134
|
-
* Multiplies two finite numbers
|
|
124
|
+
* Multiplies two finite numbers, returning `a * b` as a `FiniteNumber`.
|
|
135
125
|
*
|
|
136
|
-
* @param a -
|
|
137
|
-
* @param b -
|
|
138
|
-
* @returns `a
|
|
126
|
+
* @param a - The first finite number
|
|
127
|
+
* @param b - The second finite number
|
|
128
|
+
* @returns The product of `a` and `b` as a `FiniteNumber`
|
|
139
129
|
*/
|
|
140
130
|
readonly mul: (x: TtfImported_FiniteNumber, y: TtfImported_FiniteNumber) => TtfImported_FiniteNumber;
|
|
141
131
|
/**
|
|
142
|
-
* Divides two finite numbers
|
|
143
|
-
*
|
|
144
|
-
* The divisor must be non-zero (enforced by type constraints). The result is
|
|
145
|
-
* guaranteed to be finite when both inputs are finite and the divisor is
|
|
146
|
-
* non-zero.
|
|
132
|
+
* Divides two finite numbers, returning `a / b` as a `FiniteNumber`.
|
|
147
133
|
*
|
|
148
134
|
* @param a - The dividend
|
|
149
135
|
* @param b - The divisor (must be non-zero)
|
|
150
|
-
* @returns
|
|
136
|
+
* @returns `a / b` as a `FiniteNumber`
|
|
151
137
|
*/
|
|
152
138
|
readonly div: (x: TtfImported_FiniteNumber, y: number & {
|
|
153
139
|
readonly "!=0": true;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finite-number.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/finite-number.mts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,IAAI,wBAAwB,EAC9C,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,MAAM,MAAM,YAAY,GAAG,wBAAwB,CAAC;AAEpD,KAAK,WAAW,GAAG,YAAY,CAAC;AAgDhC
|
|
1
|
+
{"version":3,"file":"finite-number.d.mts","sourceRoot":"","sources":["../../../src/number/branded-types/finite-number.mts"],"names":[],"mappings":"AAAA,OAAO,EAGL,KAAK,YAAY,IAAI,wBAAwB,EAC9C,MAAM,eAAe,CAAC;AAEvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,6BAA6B,CAAC;AAEnE,MAAM,MAAM,YAAY,GAAG,wBAAwB,CAAC;AAEpD,KAAK,WAAW,GAAG,YAAY,CAAC;AAgDhC;;;;;;;;GAQG;AACH,eAAO,MAAM,cAAc,8CAAK,CAAC;AAEjC;;;;;;;;;GASG;AACH,eAAO,MAAM,cAAc;;;;;MAAW,CAAC;AAEvC;;;;GAIG;AACH,eAAO,MAAM,YAAY;IACvB;;;;;;OAMG;;IAGH;;;;;;;OAOG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;;IAGH;;;;;OAKG;wBA1FA,WAAW,KACb,oBAAoB,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC;IA4F3D;;;;;OAKG;uBA5FA,WAAW,KACb,oBAAoB,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC;IA8F3D;;;;;OAKG;wBA9FA,WAAW,KACb,oBAAoB,CAAC,kBAAkB,CAAC,KAAK,CAAC,WAAW,CAAC;IAgG3D;;;;;;;;OAQG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;IAGH;;;;;;OAMG;;;;;;;;CAEK,CAAC"}
|
|
@@ -37,106 +37,102 @@ const FiniteNumber = {
|
|
|
37
37
|
* Type guard that checks if a value is a finite number.
|
|
38
38
|
*
|
|
39
39
|
* @param value - The value to check
|
|
40
|
-
* @returns `true` if the value is finite, `false` otherwise
|
|
40
|
+
* @returns `true` if the value is a finite number, `false` otherwise
|
|
41
41
|
* @see {@link isFiniteNumber} for usage examples
|
|
42
42
|
*/
|
|
43
43
|
is,
|
|
44
44
|
/**
|
|
45
45
|
* Returns the absolute value of a finite number.
|
|
46
46
|
*
|
|
47
|
-
*
|
|
48
|
-
*
|
|
47
|
+
* The result is non-negative and keeps the `FiniteNumber` brand.
|
|
48
|
+
*
|
|
49
|
+
* @param a - The finite number value
|
|
50
|
+
* @returns The absolute value as a non-negative `FiniteNumber`
|
|
49
51
|
*/
|
|
50
52
|
abs,
|
|
51
53
|
/**
|
|
52
|
-
* Returns the
|
|
54
|
+
* Returns the smallest of the given finite numbers.
|
|
53
55
|
*
|
|
54
56
|
* @param values - The finite numbers to compare (at least one required)
|
|
55
|
-
* @returns The smallest value as a FiniteNumber
|
|
57
|
+
* @returns The smallest value as a `FiniteNumber`
|
|
56
58
|
*/
|
|
57
59
|
min: min_,
|
|
58
60
|
/**
|
|
59
|
-
* Returns the
|
|
61
|
+
* Returns the largest of the given finite numbers.
|
|
60
62
|
*
|
|
61
63
|
* @param values - The finite numbers to compare (at least one required)
|
|
62
|
-
* @returns The largest value as a FiniteNumber
|
|
64
|
+
* @returns The largest value as a `FiniteNumber`
|
|
63
65
|
*/
|
|
64
66
|
max: max_,
|
|
65
67
|
/**
|
|
66
|
-
* Returns the
|
|
68
|
+
* Returns the greatest integer less than or equal to a finite number.
|
|
67
69
|
*
|
|
68
|
-
* @param
|
|
69
|
-
* @returns The
|
|
70
|
+
* @param a - The finite number value
|
|
71
|
+
* @returns The floored value as an integer
|
|
70
72
|
*/
|
|
71
73
|
floor,
|
|
72
74
|
/**
|
|
73
|
-
* Returns the smallest integer greater than or equal to
|
|
74
|
-
* number.
|
|
75
|
+
* Returns the smallest integer greater than or equal to a finite number.
|
|
75
76
|
*
|
|
76
|
-
* @param
|
|
77
|
-
* @returns The
|
|
77
|
+
* @param a - The finite number value
|
|
78
|
+
* @returns The ceiled value as an integer
|
|
78
79
|
*/
|
|
79
80
|
ceil,
|
|
80
81
|
/**
|
|
81
|
-
*
|
|
82
|
+
* Returns the value of a finite number rounded to the nearest integer.
|
|
82
83
|
*
|
|
83
|
-
* @param
|
|
84
|
-
* @returns The rounded value as an
|
|
84
|
+
* @param a - The finite number value
|
|
85
|
+
* @returns The rounded value as an integer
|
|
85
86
|
*/
|
|
86
87
|
round,
|
|
87
88
|
/**
|
|
88
|
-
* Generates a random
|
|
89
|
+
* Generates a random `FiniteNumber` within the given range.
|
|
89
90
|
*
|
|
90
|
-
* The
|
|
91
|
-
* bounds are inclusive.
|
|
91
|
+
* The range is inclusive on both ends.
|
|
92
92
|
*
|
|
93
93
|
* @param min - The minimum value (inclusive)
|
|
94
94
|
* @param max - The maximum value (inclusive)
|
|
95
|
-
* @returns A random FiniteNumber in
|
|
95
|
+
* @returns A random `FiniteNumber` in `[min, max]`
|
|
96
96
|
*/
|
|
97
97
|
random,
|
|
98
98
|
/**
|
|
99
|
-
* Raises a
|
|
99
|
+
* Raises `a` to the power `b`, returning `a ** b` as a `FiniteNumber`.
|
|
100
100
|
*
|
|
101
101
|
* @param a - The base finite number
|
|
102
102
|
* @param b - The exponent finite number
|
|
103
|
-
* @returns `a ** b` as a FiniteNumber
|
|
103
|
+
* @returns `a ** b` as a `FiniteNumber`
|
|
104
104
|
*/
|
|
105
105
|
pow,
|
|
106
106
|
/**
|
|
107
|
-
* Adds two finite numbers
|
|
107
|
+
* Adds two finite numbers, returning `a + b` as a `FiniteNumber`.
|
|
108
108
|
*
|
|
109
|
-
* @param a -
|
|
110
|
-
* @param b -
|
|
111
|
-
* @returns `a
|
|
109
|
+
* @param a - The first finite number
|
|
110
|
+
* @param b - The second finite number
|
|
111
|
+
* @returns The sum of `a` and `b` as a `FiniteNumber`
|
|
112
112
|
*/
|
|
113
113
|
add,
|
|
114
114
|
/**
|
|
115
|
-
* Subtracts two finite numbers
|
|
115
|
+
* Subtracts two finite numbers, returning `a - b` as a `FiniteNumber`.
|
|
116
116
|
*
|
|
117
|
-
* @param a -
|
|
118
|
-
* @param b -
|
|
119
|
-
* @returns `a
|
|
117
|
+
* @param a - The first finite number
|
|
118
|
+
* @param b - The second finite number
|
|
119
|
+
* @returns The difference of `a` and `b` as a `FiniteNumber`
|
|
120
120
|
*/
|
|
121
121
|
sub,
|
|
122
122
|
/**
|
|
123
|
-
* Multiplies two finite numbers
|
|
123
|
+
* Multiplies two finite numbers, returning `a * b` as a `FiniteNumber`.
|
|
124
124
|
*
|
|
125
|
-
* @param a -
|
|
126
|
-
* @param b -
|
|
127
|
-
* @returns `a
|
|
125
|
+
* @param a - The first finite number
|
|
126
|
+
* @param b - The second finite number
|
|
127
|
+
* @returns The product of `a` and `b` as a `FiniteNumber`
|
|
128
128
|
*/
|
|
129
129
|
mul,
|
|
130
130
|
/**
|
|
131
|
-
* Divides two finite numbers
|
|
132
|
-
*
|
|
133
|
-
* The divisor must be non-zero (enforced by type constraints). The result is
|
|
134
|
-
* guaranteed to be finite when both inputs are finite and the divisor is
|
|
135
|
-
* non-zero.
|
|
131
|
+
* Divides two finite numbers, returning `a / b` as a `FiniteNumber`.
|
|
136
132
|
*
|
|
137
133
|
* @param a - The dividend
|
|
138
134
|
* @param b - The divisor (must be non-zero)
|
|
139
|
-
* @returns
|
|
135
|
+
* @returns `a / b` as a `FiniteNumber`
|
|
140
136
|
*/
|
|
141
137
|
div
|
|
142
138
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"finite-number.mjs","sources":["../../../src/number/branded-types/finite-number.mts"],"sourcesContent":["import {\n type Int,\n type NonNegativeFiniteNumber,\n type FiniteNumber as TtfImported_FiniteNumber,\n} from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type FiniteNumber = TtfImported_FiniteNumber;\n\ntype ElementType = FiniteNumber;\n\nconst typeNameInMessage = 'a finite number';\n\nconst {\n abs,\n add,\n castType,\n div,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n random,\n sub,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForFloat<\n ElementType,\n number,\n number\n>({\n MIN_VALUE: -Number.MAX_VALUE,\n MAX_VALUE: Number.MAX_VALUE,\n typeNameInMessage,\n} as const);\n\nconst floor = (\n x: ElementType,\n): TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType> =>\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n Math.floor(x) as TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>;\n\nconst ceil = (\n x: ElementType,\n): TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType> =>\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n Math.ceil(x) as TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>;\n\nconst round = (\n x: ElementType,\n): TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType> =>\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n Math.round(x) as TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>;\n\nexpectType<TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>, Int>(\n '=',\n);\n\n/**\n * Type guard that checks if a value is a finite number.\n *\n * Returns `true`
|
|
1
|
+
{"version":3,"file":"finite-number.mjs","sources":["../../../src/number/branded-types/finite-number.mts"],"sourcesContent":["import {\n type Int,\n type NonNegativeFiniteNumber,\n type FiniteNumber as TtfImported_FiniteNumber,\n} from 'ts-type-forge';\nimport { expectType } from '../../expect-type.mjs';\nimport { TsDataForgeInternals } from '../refined-number-utils.mjs';\n\nexport type FiniteNumber = TtfImported_FiniteNumber;\n\ntype ElementType = FiniteNumber;\n\nconst typeNameInMessage = 'a finite number';\n\nconst {\n abs,\n add,\n castType,\n div,\n is,\n max: max_,\n min: min_,\n mul,\n pow,\n random,\n sub,\n} = TsDataForgeInternals.RefinedNumberUtils.operatorsForFloat<\n ElementType,\n number,\n number\n>({\n MIN_VALUE: -Number.MAX_VALUE,\n MAX_VALUE: Number.MAX_VALUE,\n typeNameInMessage,\n} as const);\n\nconst floor = (\n x: ElementType,\n): TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType> =>\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n Math.floor(x) as TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>;\n\nconst ceil = (\n x: ElementType,\n): TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType> =>\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n Math.ceil(x) as TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>;\n\nconst round = (\n x: ElementType,\n): TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType> =>\n // eslint-disable-next-line total-functions/no-unsafe-type-assertion\n Math.round(x) as TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>;\n\nexpectType<TsDataForgeInternals.RefinedNumberUtils.ToInt<ElementType>, Int>(\n '=',\n);\n\n/**\n * Type guard that checks if a value is a finite number.\n *\n * Returns `true` only for a finite value — never `NaN`, `Infinity`, or\n * `-Infinity`.\n *\n * @param value - The value to check\n * @returns `true` if the value is a finite number, `false` otherwise\n */\nexport const isFiniteNumber = is;\n\n/**\n * Casts a `number` to the `FiniteNumber` branded type.\n *\n * Validates that the value is a finite number and returns it with the\n * `FiniteNumber` brand. Throws a `TypeError` otherwise.\n *\n * @param value - The value to cast\n * @returns The value as a `FiniteNumber`\n * @throws {TypeError} If the value is not a finite number\n */\nexport const asFiniteNumber = castType;\n\n/**\n * Namespace providing type-safe operations for the `FiniteNumber` branded type.\n *\n * The `FiniteNumber` type represents a finite number.\n */\nexport const FiniteNumber = {\n /**\n * Type guard that checks if a value is a finite number.\n *\n * @param value - The value to check\n * @returns `true` if the value is a finite number, `false` otherwise\n * @see {@link isFiniteNumber} for usage examples\n */\n is,\n\n /**\n * Returns the absolute value of a finite number.\n *\n * The result is non-negative and keeps the `FiniteNumber` brand.\n *\n * @param a - The finite number value\n * @returns The absolute value as a non-negative `FiniteNumber`\n */\n abs,\n\n /**\n * Returns the smallest of the given finite numbers.\n *\n * @param values - The finite numbers to compare (at least one required)\n * @returns The smallest value as a `FiniteNumber`\n */\n min: min_,\n\n /**\n * Returns the largest of the given finite numbers.\n *\n * @param values - The finite numbers to compare (at least one required)\n * @returns The largest value as a `FiniteNumber`\n */\n max: max_,\n\n /**\n * Returns the greatest integer less than or equal to a finite number.\n *\n * @param a - The finite number value\n * @returns The floored value as an integer\n */\n floor,\n\n /**\n * Returns the smallest integer greater than or equal to a finite number.\n *\n * @param a - The finite number value\n * @returns The ceiled value as an integer\n */\n ceil,\n\n /**\n * Returns the value of a finite number rounded to the nearest integer.\n *\n * @param a - The finite number value\n * @returns The rounded value as an integer\n */\n round,\n\n /**\n * Generates a random `FiniteNumber` 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 `FiniteNumber` in `[min, max]`\n */\n random,\n\n /**\n * Raises `a` to the power `b`, returning `a ** b` as a `FiniteNumber`.\n *\n * @param a - The base finite number\n * @param b - The exponent finite number\n * @returns `a ** b` as a `FiniteNumber`\n */\n pow,\n\n /**\n * Adds two finite numbers, returning `a + b` as a `FiniteNumber`.\n *\n * @param a - The first finite number\n * @param b - The second finite number\n * @returns The sum of `a` and `b` as a `FiniteNumber`\n */\n add,\n\n /**\n * Subtracts two finite numbers, returning `a - b` as a `FiniteNumber`.\n *\n * @param a - The first finite number\n * @param b - The second finite number\n * @returns The difference of `a` and `b` as a `FiniteNumber`\n */\n sub,\n\n /**\n * Multiplies two finite numbers, returning `a * b` as a `FiniteNumber`.\n *\n * @param a - The first finite number\n * @param b - The second finite number\n * @returns The product of `a` and `b` as a `FiniteNumber`\n */\n mul,\n\n /**\n * Divides two finite numbers, returning `a / b` as a `FiniteNumber`.\n *\n * @param a - The dividend\n * @param b - The divisor (must be non-zero)\n * @returns `a / b` as a `FiniteNumber`\n */\n div,\n} as const;\n\nexpectType<\n TsDataForgeInternals.RefinedNumberUtils.ToNonNegative<ElementType>,\n NonNegativeFiniteNumber\n>('=');\n\nexpectType<\n keyof typeof FiniteNumber,\n keyof TsDataForgeInternals.RefinedNumberUtils.NumberClass<ElementType, never>\n>('=');\n\nexpectType<\n typeof FiniteNumber,\n TsDataForgeInternals.RefinedNumberUtils.NumberClass<ElementType, never>\n>('<=');\n"],"names":[],"mappings":";;AAYA,MAAM,iBAAA,GAAoB,iBAAA;AAE1B,MAAM;AAAA,EACJ,GAAA;AAAA,EACA,GAAA;AAAA,EACA,QAAA;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,iBAAA,CAI1C;AAAA,EACA,SAAA,EAAW,CAAC,MAAA,CAAO,SAAA;AAAA,EACnB,WAAW,MAAA,CAAO,SAAA;AAAA,EAClB;AACF,CAAU,CAAA;AAEV,MAAM,QAAQ,CACZ,CAAA;AAAA;AAAA,EAGA,IAAA,CAAK,MAAM,CAAC;AAAA,CAAA;AAEd,MAAM,OAAO,CACX,CAAA;AAAA;AAAA,EAGA,IAAA,CAAK,KAAK,CAAC;AAAA,CAAA;AAEb,MAAM,QAAQ,CACZ,CAAA;AAAA;AAAA,EAGA,IAAA,CAAK,MAAM,CAAC;AAAA,CAAA;AAeP,MAAM,cAAA,GAAiB;AAYvB,MAAM,cAAA,GAAiB;AAOvB,MAAM,YAAA,GAAe;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQ1B,EAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAUA,GAAA;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,EAQL,KAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,IAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAQA,KAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAWA,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;;;;"}
|