import { AbstractControl } from "@angular/forms"; import { SafeAny } from "../type/type"; export declare class ObjectUtils { static equalsByValue(obj1: any, obj2: any): boolean; static compare(obj1: any, obj2: any): boolean; /** * Check if value in input is an object. * * @author Federico Gambardella * @param {any} value * @returns {void} */ static isAnObject(value: any): boolean; /** * Check if an object is empty. * * @author Federico Gambardella * @param {any} obj * @returns {boolean} */ static isEmpty(obj: any): boolean; /** * Merge objects * * @author Federico Gambardella * @param {object[]} objects * @return {object} */ static merge(...objects: object[]): any; /** * Merge n arrays. * * @author Federico Gambardella * @param {Type[]}args * @return {Type[]} */ static mergeArray(...args: Type[]): Type[]; /** * Fill object. * * @author Federico Gambardella * @param {any} args * @return {any} */ static fillObject(...args: any[]): any; /** * Check if argoment is a Date. * * @param {any} obj */ static isADate(obj: any): boolean; /** * Deep clones the given AbstractControl, preserving values, validators, async validators, and disabled status. * * @param {AbstractControl} control * @returns {AbstractControl} */ static cloneAbstractControl(control: T): T; /** * Fill object. * * @author Federico Gambardella * @param {any} args * @return {any} */ static convertInObject(args: any[]): any; /** * Resolve object property. * * @author Federico Gambardella * @param {any} object * @param {string} property */ static resolveProperty(object: any, property: string): any; /** * Get or set object or array property by string key. * * @author Federico Gambardella * @param {SafeAny} obj * @param {string} property * @param {SafeAny} value * @param {boolean} isDelete * @returns {SafeAny} */ static resolveProps(obj: SafeAny, property: string, value?: SafeAny, isDelete?: boolean, prevProps?: string, prevObj?: SafeAny): SafeAny; /** * Check if an object has the input key. * * @author Federico Gambardella * @param {SafeAny} object * @param {string} key * @returns {SafeAny} */ static hasAKey(object: SafeAny, key: string): SafeAny; /** * Check if element in input is an array. * * @author Federico Gambardella * @param {SafeAny} obj * @returns {boolean} */ static isArray(obj: SafeAny): boolean; /** * Deep copy object. * * @param {SafeAny} obj * @returns {SafeAny} */ static deepCopy(obj: SafeAny): SafeAny; /** * Populate arrays. * * @author Federico Gambardella * @param {SafeAny[]} newArray * @param {SafeAny[]} arrayObjects */ static populateArrays(newArray: SafeAny[], arrayObjects: SafeAny[]): void; /** * Group by object. * * @author Federico Gambardella * @param {SafeAny[]} array * @param {string} idkey * @param {string} propObj * @param {string} propValue * @returns */ static groupByObject(array: SafeAny[], idkey: string, propObj: string, propValue: string): Map; /** * Set or delete value in input. * * @author Federico Gambardella * @param {SafeAny} obj * @param {SafeAny} currProps * @param {SafeAny} value * @param {boolean} isDelete * @returns {SafeAny} */ private static resolveValue; /** * Manage delete array. * * @author Federico Gambardella * @param {SafeAny} obj * @param {string} property * @param {string} prevObj */ private static _manageDeleteArray; /** * Manage array for deep copry. * * @author Federico Gambardella * @param {SafeAny} arrayInput * @returns */ private static _manageArray; /** * Manage recursion for resolve prop. * * @author Federico Gambardella * @param {SafeAny} object * @returns */ private static _manageRecursion; /** * Manage array for resolve prop. * * @author Federico Gambardella * @param {SafeAny} obj * @param {string[]} currProps * @param {SafeAny} value * @param {boolean} isDelete * @param {string} prevProps * @param {SafeAny} prevObj * @returns */ private static _manageArrayForResolveProp; }