datum-merge
Version:
Simplified diff and merging for deeply nested objects
32 lines • 1.43 kB
TypeScript
import { MergeCode } from "./merge-low";
import { PatchResult } from "./patch-low";
export type MergePerms = {
enable: boolean;
insert?: boolean;
update?: boolean;
unset?: boolean;
};
export declare function updateCodeInfo(mergeCode: MergeCode): MergePerms;
export declare function shallowMerge(target: any, source: any, scalarCode: MergeCode, vectorCode?: MergeCode, excludeKeys?: string[], includeKeys?: string[]): boolean;
export declare function immutableMerge(target: any, source: any, scalarCode: MergeCode, vectorCode?: MergeCode): any;
export declare function deepMerge(target: {
[key: string]: any;
}, source: {
[key: string]: any;
}, scalarCode: MergeCode, vectorCode: MergeCode, nestedCode: MergeCode): boolean;
export declare function immutableDeepMerge(target: {
[key: string]: any;
}, source: {
[key: string]: any;
}, scalarCode: MergeCode, vectorCode?: MergeCode, nestedCode?: MergeCode): any;
export declare function diffFromMerge(target: {
[key: string]: any;
}, source: {
[key: string]: any;
}, scalarCode: MergeCode, vectorCode?: MergeCode, nestedCode?: MergeCode, orderInd?: boolean): any | false;
export declare function patchFromMerge(target: {
[key: string]: any;
}, source: {
[key: string]: any;
}, scalarCode: MergeCode, vectorCode?: MergeCode, nestedCode?: MergeCode, orderInd?: boolean): PatchResult[] | false;
//# sourceMappingURL=merge-high.d.ts.map