PokéRogue
    Preparing search index...

    Type Alias GreaterThanOrEqual<A, B>

    GreaterThanOrEqual: number extends A
    | B
        ? boolean
        : A extends number
            ? B extends number ? A extends B ? true : GreaterThan<A, B> : never
            : never

    Returns a boolean for whether a given number is greater than or equal to another number.

    Type Parameters

    • A extends number
    • B extends number
    import type {GreaterThanOrEqual} from 'type-fest';

    type A = GreaterThanOrEqual<1, -5>;
    //=> true

    type B = GreaterThanOrEqual<1, 1>;
    //=> true

    type C = GreaterThanOrEqual<1, 5>;
    //=> false

    Note: If either argument is the non-literal number type, the result is boolean.

    import type {GreaterThanOrEqual} from 'type-fest';

    type A = GreaterThanOrEqual<number, 1>;
    //=> boolean

    type B = GreaterThanOrEqual<1, number>;
    //=> boolean

    type C = GreaterThanOrEqual<number, number>;
    //=> boolean
    import type {GreaterThanOrEqual} from 'type-fest';

    // Use `GreaterThanOrEqual` to constrain a function parameter to non-negative numbers.
    declare function setNonNegative<N extends number>(value: GreaterThanOrEqual<N, 0> extends true ? N : never): void;

    setNonNegative(0); // ✅ Allowed
    setNonNegative(1); // ✅ Allowed

    // @ts-expect-error
    setNonNegative(-1);

    // @ts-expect-error
    setNonNegative(-2);