type MergeTuple = T extends [infer F, ...infer R] ? Omit> & MergeTuple : {}; type Merge = Omit & U; /** * 最小合并对象 * @param target 目标对象,被合并的对象 * @param sources 源对象,可以多个 * @return 目标对象 * @throws target参数必须是object target参数不是对象时触发 * @category 对象Object * @example * 最小合并对象,只会合并源对象原有的属性,其他忽略 * ```ts * assignMin({a: 1, c: 1}, {a: 2, b: 3}, {c: 3}) // => {a: 2, c: 3} * ``` */ export default function assignMin, U extends Record[]>(target: T, ...sources: U): keyof T extends never ? {} : Omit>, Exclude, keyof T> | Exclude>, keyof T>>; export {};