Reputation: 1915
How do I extract the type of a nested property? For example say I have this type:
type Example = {
nested: string, // how do I infer string here
other: string
}
Such that I can extract out 'string' from Example.nested?
I have type myType = Pick<Example, "nested">
and that provides { nested: string }
, but I want to infer the type of the property 'nested' (string, in this example) on that object.
Upvotes: 22
Views: 21713
Reputation: 327624
You want to use a lookup type (also called an "indexed access type") which uses the square bracket syntax.
That is,
type myType = Example["nested"] // string
Hope that helps; good luck!
Upvotes: 51