/** * If given a list of objects, this method removes all "private" attributes from each object. If given an object, it * cleans the "private" attributes from this object. "Private" means attributes whose names start with "$". Does not * modify the given array, its objects or the given object. * @param {Object | Object[]} payload * @param {RegExp} privatePattern * @returns {Object | Object[]} */ export declare function clean(payload: T, privatePattern?: RegExp): T; /** * Removes all "private" attributes from each object, meaning all attributes whose names start with "$". Does not modify * the original array and its objects. * @param {Object[]} payload Objects to clean * @param {RegExp} privatePattern * @returns {Object[]} */ export declare function cleanList>(payload: T, privatePattern?: RegExp): T; /** * Removes all "private" attributes from an object, meaning all attributes whose names start with "$". Does not modify * the original object. * @param {Object} payload Object to clean * @param {RegExp} privatePattern * @returns {Object} Cleaned object */ export declare function cleanObject(payload: T, privatePattern?: RegExp): T; /** * Makes a deep clone of the given object. * @param {T} obj * @returns {T} */ export declare function clone(obj: T): T; /** * Checks if the given object is a promise-like object (meaning that it has a `then` method). * @param obj Object to check * @returns {boolean} Is promise-like? */ export declare function isPromiseLike(obj: any): boolean;