UNPKG

@cuppachino/type-space

Version:

A collection of type utilities for TypeScript.

9 lines (8 loc) 416 B
import type { DeepMergeRight } from './deep-merge-right'; import type { Last } from './tuples/last'; import type { Pop } from './tuples/pop'; import type { UnknownArray } from './unknown-array'; /** * Deeply merges a tuple of objects from right to left, recursively. */ export type DeepMergeAllRight<T extends UnknownArray, Acc = {}> = T extends [] ? Acc : DeepMergeAllRight<Pop<T>, DeepMergeRight<Acc, Last<T>>>;