PokéRogue
    Preparing search index...

    Type Alias PrivateIntRange<Start, End, Step, Gap, List, EndLengthTuple>

    PrivateIntRange: Gap extends 0
        ? List["length"] extends End
            ? Exclude<List[number], never>
            : PrivateIntRange<Start, End, Step, Gap, [...List, List["length"]]>
        : List extends [...(infer U), ...EndLengthTuple]
            ? Exclude<List[number], never>
            : PrivateIntRange<
                Start,
                End,
                Step,
                Gap,
                [...List, List["length"], ...TupleOf<Gap, never>],
            >

    The actual implementation of IntRange. It's private because it has some arguments that don't need to be exposed.

    Type Parameters

    • Start extends number
    • End extends number
    • Step extends number
    • Gap extends number = Subtract<Step, 1>
    • List extends unknown[] = TupleOf<Start, never>
    • EndLengthTuple extends unknown[] = TupleOf<End>