Skip to content

Instantly share code, notes, and snippets.

View fredrare's full-sized avatar
🥶
Crazy vulnerabilities

Fredrare fredrare

🥶
Crazy vulnerabilities
View GitHub Profile
@fredrare
fredrare / NumberRange.ts
Created December 6, 2024 21:34
Small and simple generic number range implementation in TypeScript
type NextDigit = [1, 2, 3, 4, 5, 6, 7, 8, 9]
type Split<Str> = Str extends `${infer Head extends number}${infer Tail}` ? [Head, ...Split<Tail>] : []
type Increase<X extends number[]> = X extends [...infer Rest extends number[], infer Last extends number] ?
Last extends 9 ? [...Increase<Rest>, 0] : [...Rest, NextDigit[Last]]
: [1]
type TupleToString<T extends number[]> =
T extends [infer First extends number, ...infer Rest extends number[]]