Code QuizAdvanced

Distributive Conditional Over Union

Naked type parameters in conditional types distribute across each member of a union.

Codetypescript
type NoNulls<T> = [T] extends [null | undefined] ? never : T;

// want: string | number
type Result = NoNulls<string | number | null>;

What is the bug preventing per-member filtering here?