MergeAll

Medium
0.0% Acceptance

Merge variadic number of types into a new type. If the keys overlap, its values should be merged into an union.

For example:

type Foo = { a: 1; b: 2 } type Bar = { a: 2 } type Baz = { c: 3 } type Result = MergeAll<[Foo, Bar, Baz]> // expected to be { a: 1 | 2; b: 2; c: 3 }