UNPKG

@jsopen/objects

Version:

Helper utilities for working with JavaScript objects and arrays

40 lines (39 loc) 1.18 kB
export declare function merge<A, B>(target: A, source: B, options?: merge.Options): A & B; export declare function getMergeFunction(options?: merge.Options): Function; export declare namespace merge { type NodeCallback = (key: string | symbol, source: any, target: any, path: string) => boolean; interface Options { deep?: boolean | 'full' | NodeCallback; /** */ moveArrays?: boolean | NodeCallback; /** * Do not overwrite existing properties if set true * @default false */ keepExisting?: boolean; /** * Copy property descriptors * @default false */ copyDescriptors?: boolean | NodeCallback; /** * Do not copy source field if callback returns true */ ignore?: NodeCallback; /** * Ignore fields which values are "undefined" * @default true */ ignoreUndefined?: boolean; /** * Ignore fields which values are "null" * @default false */ ignoreNulls?: boolean; /** * */ filter?: NodeCallback; } }