MergeAll<T>: T extends [infer O extends Properties | undefined, ...(infer R)]
    ? O extends undefined
        ? MergeAll<R>
        : O & MergeAll<R>
    : T extends []
        ? {}
        : never

Merge an array of objects into one. Currently assumes unique elements

Type Parameters

  • T