types-kit.isfalsy.md
September 4, 2023 ยท View on GitHub
IsFalsy type
If T is a falsy value, return true, else return false.
Signature:
export type IsFalsy<T> = IfExtends<
[T, never],
true,
IfExtends<
[T, FalsyWithoutUnknown],
IfExtends<[IsAny<T>, true], false, true>,
IsUnknown<T>
>
>
References: IfExtends, FalsyWithoutUnknown, IsAny, IsUnknown
Example
// Expect: true
type Foo = IsFalsy<never>
// Expect: false
type Foo = IsFalsy<true>