type MAXIMUM_ALLOWED_NUMBER = 45; type MappedNumber = []> = Result['length'] extends N ? Result : MappedNumber; type NumberRange = MappedNumber[number]; type OddEnd = '1' | '3' | '5' | '7' | '9'; type IsOdd = T extends `${infer Int}${infer Rest}` ? Rest extends '' ? Int extends OddEnd ? true : false : Rest extends `${number}` ? IsOdd : false : false; type Compare = Num extends number ? IsOdd<`${Num}`> extends true ? Num : never : never; type OddRange = Compare; export type OddRangeWithZero = OddRange | 0; export declare const isOddOrZero: (n: number) => n is OddRangeWithZero; type MAXIMUM_ALLOWED_BOUNDARY = 80; export type MappedTuple, Result extends Array = [], Count extends ReadonlyArray = []> = Count['length'] extends MAXIMUM_ALLOWED_BOUNDARY ? Result : Tuple extends [] ? [] : Result extends [] ? MappedTuple : MappedTuple; export {};