/**
 * Returns a new object with the property updated.
 * The property is identified by the path.
 *
 * @param obj Object
 * @param path path to the property
 * @param value new property value
 * @returns
 */
export declare function setInPath<T>(obj: any, path: string[], value: any): T;
export declare function isObjectEmpty(obj?: any): boolean;
export declare const deepClone: (obj: any) => any;
export declare const diff: <T extends {
    [key: string]: unknown;
}>(obj1: T, obj2: T) => (keyof T)[];
