PokéRogue
    Preparing search index...

    Type Alias _CollapseRestElement<TArray, ForwardAccumulator, BackwardAccumulator>

    _CollapseRestElement: TArray extends UnknownArray
        ? "0" extends keyof TArray
            ? TArray extends readonly [(infer First)?, ...(infer Rest)]
                ? _CollapseRestElement<
                    Rest,
                    [
                        ...ForwardAccumulator,
                        TArray extends readonly [unknown, ...unknown[]]
                            ? First
                            : If<IsExactOptionalPropertyTypesEnabled, First, First | undefined>,
                    ],
                    BackwardAccumulator,
                >
                : never
            : TArray extends readonly [...(infer Rest), infer Last]
                ? _CollapseRestElement<
                    Rest,
                    ForwardAccumulator,
                    [Last, ...BackwardAccumulator],
                >
                : TArray extends readonly []
                    ? [...ForwardAccumulator, ...BackwardAccumulator]
                    : [...ForwardAccumulator, TArray[number], ...BackwardAccumulator]
        : never

    Type Parameters