What does `type OmitNever = { [K in keyof T as T[K] extends never ? never : K]: T[K] }` do?

TypeScript Professional Hard

TypeScript Professional — Hard

What does `type OmitNever = { [K in keyof T as T[K] extends never ? never : K]: T[K] }` do?

Key points

  • Key remapping is used to filter out properties with a value of `never`
  • The conditional type `T

Ready to go further?

Related questions