Variable NonNegativeFiniteNumberConst
NonNegativeFiniteNumber: {
add: (
x: NonNegativeFiniteNumber,
y: NonNegativeFiniteNumber,
) => NonNegativeFiniteNumber;
ceil: (x: NonNegativeFiniteNumber) => ToInt<NonNegativeFiniteNumber>;
clamp: (x: number) => NonNegativeFiniteNumber;
div: (
x: NonNegativeFiniteNumber,
y: ToNonZero<NonNegativeFiniteNumber>,
) => NonNegativeFiniteNumber;
floor: (x: NonNegativeFiniteNumber) => ToInt<NonNegativeFiniteNumber>;
is: (a: number) => a is NonNegativeFiniteNumber;
max: (
...values: readonly NonNegativeFiniteNumber[],
) => NonNegativeFiniteNumber;
min: (
...values: readonly NonNegativeFiniteNumber[],
) => NonNegativeFiniteNumber;
MIN_VALUE: 0;
mul: (
x: NonNegativeFiniteNumber,
y: NonNegativeFiniteNumber,
) => NonNegativeFiniteNumber;
pow: (
x: NonNegativeFiniteNumber,
y: NonNegativeFiniteNumber,
) => NonNegativeFiniteNumber;
random: (
min?: NonNegativeFiniteNumber,
max?: NonNegativeFiniteNumber,
) => NonNegativeFiniteNumber;
round: (x: NonNegativeFiniteNumber) => ToInt<NonNegativeFiniteNumber>;
sub: (
x: NonNegativeFiniteNumber,
y: NonNegativeFiniteNumber,
) => NonNegativeFiniteNumber;
} = ...
Type Declaration
add: (
x: NonNegativeFiniteNumber,
y: NonNegativeFiniteNumber,
) => NonNegativeFiniteNumber
ceil: (x: NonNegativeFiniteNumber) => ToInt<NonNegativeFiniteNumber>
clamp: (x: number) => NonNegativeFiniteNumber
div: (
x: NonNegativeFiniteNumber,
y: ToNonZero<NonNegativeFiniteNumber>,
) => NonNegativeFiniteNumber
floor: (x: NonNegativeFiniteNumber) => ToInt<NonNegativeFiniteNumber>
is: (a: number) => a is NonNegativeFiniteNumber
Readonly
max: (...values: readonly NonNegativeFiniteNumber[]) => NonNegativeFiniteNumber
Readonly
min: (...values: readonly NonNegativeFiniteNumber[]) => NonNegativeFiniteNumber
Readonly
MIN_VALUE: 0
mul: (
x: NonNegativeFiniteNumber,
y: NonNegativeFiniteNumber,
) => NonNegativeFiniteNumber
pow: (
x: NonNegativeFiniteNumber,
y: NonNegativeFiniteNumber,
) => NonNegativeFiniteNumber
random: (
min?: NonNegativeFiniteNumber,
max?: NonNegativeFiniteNumber,
) => NonNegativeFiniteNumber
round: (x: NonNegativeFiniteNumber) => ToInt<NonNegativeFiniteNumber>
sub: (
x: NonNegativeFiniteNumber,
y: NonNegativeFiniteNumber,
) => NonNegativeFiniteNumber
Namespace providing type-safe arithmetic operations for non-negative finite numbers.
All operations maintain the non-negative constraint by clamping negative results to 0, while ensuring results remain finite (excluding NaN and Infinity). This type is useful for representing measurements, distances, weights, and other inherently non-negative values.