KeysOfType
KeysOfType<T, V> = { [K in keyof T]: T[K] extends V ? K : never }[keyof T]Source: common.ts:232
Extracts keys of T that have values assignable to V
Type Parameters
T— Object typeV— Value type to match
Example
CODE
interface User {
id: number
name: string
email: string
age: number
}
type StringKeys = KeysOfType<User, string> // 'name' | 'email'
type NumberKeys = KeysOfType<User, number> // 'id' | 'age'