You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Now, that #11929 is PR landed. I would really love to have some syntax to specify an arbitrary super type of T. This can be especially helpful in creating strongly typed ORM database frameworks.
Proposal
If K is constrained to be a key of T i.e K extends keyof T. Then the syntax:
{ ...K: ...T[K] }
Means spread the keys K and values of T in {}.
Example
Here is an example usage of an envisioned ORM framework:
If we have variadic kinds in #5453, maybe dynamic super type can be supported directly?
Also, K extends keyof T seems to stand for one single string literal type to me. But in the return type it is used as a variadic kinds. May be ...K extends keyof T is better?
Also, K extends keyof T seems to stand for one single string literal type to me. But in the return type it is used as a variadic kinds. May be ...K extends keyof T is better?
I stumbled upon this too. Though this problem might be a bit hard to solve perfectly.
Activity
HerringtonDarkholme commentedon Nov 1, 2016
I wonder whether it is doable after #11929 landed. We can use overload + tuple syntax to mock it.
Something like
If we have variadic kinds in #5453, maybe dynamic super type can be supported directly?
Also,
K extends keyof Tseems to stand for one single string literal type to me. But in the return type it is used as a variadic kinds. May be...K extends keyof Tis better?tinganho commentedon Nov 1, 2016
I stumbled upon this too. Though this problem might be a bit hard to solve perfectly.