import { normalObject, nullableObject } from '../types/helpers.js'; /** * Removes created/modified keys from current object in-place * @returns {Object} this */ export declare function removeTemplateTimestamps(object: any): nullableObject; /** * Used to extract only specific keys into dedicated object * @param object {object} Keys to extract * @param keys {string[]} Keys to extract * @returns {object} Object with specified keys if any */ export declare function take(object: Record, keys: string[]): object; /** * Used to drop specified keys from object */ export declare function dropKeys(object: normalObject, keys: string[]): object; export declare function prefixKeys(object: object, prefix: string): nullableObject; export declare function getPrefixedKeys(object: object, prefix: string): string[]; export declare function extractPrefixedKeys(object: nullableObject, prefix: string, preservePrefix?: boolean): nullableObject; export declare function exceptPrefixedKeys(object: nullableObject, prefix: string): nullableObject; /** * Converts (possibly) infinitely (call stack is the limit) nested object into object with flat structure * Keys are paths to given values, joined together using `.`. * @example Input value * { * "hello": { * "world": "value" * } * } * * Output value * { * "hello.world": "value" * } * * @returns {object} */ export declare function flattenObject(value: nullableObject | string, keyPrefix?: string, acc?: normalObject): normalObject;