@helpers4/object
Version:
A set of helpers in TS/JS, compatible with tree-shaking, for object.
11 lines (10 loc) • 1.52 kB
TypeScript
export declare function get<T = any>(obj: any, path: string, defaultValue?: T): T | undefined;
export declare function set(obj: Record<string, any>, path: string, value: any): Record<string, any>;
export declare function quickCompare(objA: object, objB: object): boolean;
export interface DeepCompareResult {
[key: string]: "onlyA" | "onlyB" | false | DeepCompareResult;
}
export declare function deepCompare(objA: object | undefined | null, objB: object | undefined | null): true | false | DeepCompareResult;
export declare function deepMerge<T extends Record<string, any>>(target: T, ...sources: Record<string, any>[]): T;
export declare function removeUndefinedNull<T extends Record<string, string | boolean | number>>(obj: T): T; /** * Remove null and undefined values from an object. * * @param obj a null object * @returns null */ export function removeUndefinedNull<T extends Record<string, string | boolean | number>>(obj: null): null; /** * Remove null and undefined values from an object. * * @param obj an undefined object * @returns undefined */ export function removeUndefinedNull<T extends Record<string, string | boolean | number>>(obj: undefined): undefined; /** * Remove null and undefined values from an object. * * @param obj an object * @returns A shallow copy of the object without null or undefined values */ export function removeUndefinedNull<T extends Record<string, string | boolean | number>>(obj: T | null | undefined): T | null | undefined;
export declare function deepClone<T>(obj: T): T;