type IsASubsetOfUnknown<T> = T extends unknown ? true : false;
type T1 = IsASubsetOfUnknown<never>; // never
type T2 = never extends unknown ? true : false; // true
Why is T1 never
and T2 true
? I would expect them to both be true.
type IsASubsetOfUnknown<T> = T extends unknown ? true : false;
type T1 = IsASubsetOfUnknown<never>; // never
type T2 = never extends unknown ? true : false; // true
Why is T1 never
and T2 true
? I would expect them to both be true.