ts-data-forge
    Preparing search index...
    FiniteNumber: {
        abs: (x: FiniteNumber) => ToNonNegative<FiniteNumber>;
        add: (x: FiniteNumber, y: FiniteNumber) => FiniteNumber;
        ceil: (x: FiniteNumber) => ToInt<FiniteNumber>;
        div: (x: FiniteNumber, y: ToNonZero<FiniteNumber>) => FiniteNumber;
        floor: (x: FiniteNumber) => ToInt<FiniteNumber>;
        is: (a: number) => a is FiniteNumber;
        max: (...values: readonly FiniteNumber[]) => FiniteNumber;
        min: (...values: readonly FiniteNumber[]) => FiniteNumber;
        mul: (x: FiniteNumber, y: FiniteNumber) => FiniteNumber;
        pow: (x: FiniteNumber, y: FiniteNumber) => FiniteNumber;
        random: (min?: FiniteNumber, max?: FiniteNumber) => FiniteNumber;
        round: (x: FiniteNumber) => ToInt<FiniteNumber>;
        sub: (x: FiniteNumber, y: FiniteNumber) => FiniteNumber;
    } = ...

    Namespace providing type-safe operations for FiniteNumber branded types.

    The FiniteNumber type represents any finite numeric value, excluding the special values NaN, Infinity, and -Infinity. All operations are guaranteed to maintain the finite constraint when given finite inputs.

    This type is essential for:

    • Mathematical operations that require real numbers
    • Preventing NaN/Infinity propagation in calculations
    • Ensuring numeric stability in algorithms

    Type Declaration

    • abs: (x: FiniteNumber) => ToNonNegative<FiniteNumber>

      Returns the absolute value of a finite number.

    • add: (x: FiniteNumber, y: FiniteNumber) => FiniteNumber

      Adds two finite numbers.

    • ceil: (x: FiniteNumber) => ToInt<FiniteNumber>

      Returns the smallest integer greater than or equal to the given finite number.

    • div: (x: FiniteNumber, y: ToNonZero<FiniteNumber>) => FiniteNumber

      Divides two finite numbers.

      The divisor must be non-zero (enforced by type constraints). The result is guaranteed to be finite when both inputs are finite and the divisor is non-zero.

    • floor: (x: FiniteNumber) => ToInt<FiniteNumber>

      Returns the largest integer less than or equal to the given finite number.

    • is: (a: number) => a is FiniteNumber

      Type guard that checks if a value is a finite number.

      isFiniteNumber for usage examples

    • Readonlymax: (...values: readonly FiniteNumber[]) => FiniteNumber

      Returns the maximum value from a list of finite numbers.

    • Readonlymin: (...values: readonly FiniteNumber[]) => FiniteNumber

      Returns the minimum value from a list of finite numbers.

    • mul: (x: FiniteNumber, y: FiniteNumber) => FiniteNumber

      Multiplies two finite numbers.

    • pow: (x: FiniteNumber, y: FiniteNumber) => FiniteNumber

      Raises a finite number to a power.

    • random: (min?: FiniteNumber, max?: FiniteNumber) => FiniteNumber

      Generates a random finite number within the specified range.

      The generated value is uniformly distributed in the range [min, max]. Both bounds are inclusive.

    • round: (x: FiniteNumber) => ToInt<FiniteNumber>

      Rounds a finite number to the nearest integer.

    • sub: (x: FiniteNumber, y: FiniteNumber) => FiniteNumber

      Subtracts two finite numbers.