import { ObjectEntry } from "../types"; export declare function without>(obj: T, items: (keyof T)[]): Omit; export declare function deepEqual(objA: T, objB: T): boolean; export declare function deepCopy(source: T): T; export declare function getOrSetProperty(obj: S, index: T, value: S[T]): S[T]; export declare function getObjectEntries>(obj: T): ObjectEntry[]; export declare function getNestedProperty(object: any, propertyPath: string | string[], separator?: string): any; export declare function setNestedProperty(item: any, key: string | string[], value: T): void; export declare function createMergedObject(source: T, ...updates: Partial[]): T; export declare function roughSizeOfObject(object: T): number; /** * Freeze object recursively * * @param o - object to be freeze */ export declare function deepFreeze(o: T): T; /** * @deprecated use {@link Object.keys(object).length} */ export declare function size | unknown[])>(object: T): number; export declare function isPlain>(object: T): boolean; export declare function toBoolean(value: T): boolean; export declare function isNotInstance>(value: T): boolean; /** * * @param list - data-structures to flat * @param propertyPath - path to property * @param separator - separator in propertyPath * @param skipUndefined - true if undefined should be skipped * * @example * ``` * const items = [ * { * person: { * name: "Gabriel" * } * }, * { * person: { * name: "Ella" * } * }, * { * person: { * name: "Gabriel" * } * }, * { * person: { * name: "Joe" * } * } * ] * * console.log(makeFlat(items), "person.name"); * // ["Gabriel", "Ella", "Gabriel", "Joe"] * console.log(makeFlat(items), "person_name", "_"); * // ["Gabriel", "Ella", "Gabriel", "Joe"] * console.log(makeFlat(items), "person.name", ".", true); * // ["Gabriel", "Ella", "Joe"] * ``` */ export declare function makeFlat(list: T[], propertyPath: string, separator?: string, skipUndefined?: boolean): T[]; //# sourceMappingURL=object-utils.d.ts.map