declare type BoxedTupleTypes = { [P in keyof T]: [T[P]]; }[Exclude]; declare type UnionToIntersection = (U extends any ? (k: U) => void : never) extends (k: infer I) => void ? I : never; declare type UnboxIntersection = T extends { 0: infer U; } ? U : never; export declare function mergeDeep(sources: S, respectPrototype?: boolean): UnboxIntersection>> & any; export {};