Skip to content

Instantly share code, notes, and snippets.

@webstrand
Created February 12, 2019 16:37
Show Gist options
  • Save webstrand/0a7be6a60c01c5e619b49fa430203aa6 to your computer and use it in GitHub Desktop.
Save webstrand/0a7be6a60c01c5e619b49fa430203aa6 to your computer and use it in GitHub Desktop.
Typescript: An array of keys of some object extending some type.
type KeyofSubset<T, U> = Array<({ [P in keyof T]: T[P] extends U ? P : never })[keyof T]>;
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment