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>>>;
