type-challenges
type-challenges copied to clipboard
25747 - IsNegativeNumber
type IsUnion<T, U extends T = T> =
(T extends any ?
(U extends T ? false : true)
: never) extends false ? false : true
type IsNegativeNumber<T extends number> = IsUnion<T> extends true
? never
: number extends T
? never
: `${T}` extends `-${string}`
? true
: false