UNPKG

@szydlovski/deep-object

Version:

utility functions for deeply nested objects

14 lines (13 loc) 2.12 kB
import { StringIndexed } from './core.js'; declare type DeepObjectCallback<T> = (value: any, key: string, path: string[], object: object, target: object) => T; declare function deepObjectMap<T = StringIndexed>(target: StringIndexed, callback: DeepObjectCallback<any>, includeIntermediate?: boolean, depthFirst?: boolean): T; declare function deepObjectFilter<T = StringIndexed>(target: StringIndexed, callback: DeepObjectCallback<boolean>, includeIntermediate?: boolean, depthFirst?: boolean): T; declare function deepObjectFind<T = any>(target: StringIndexed, callback: DeepObjectCallback<boolean>, includeIntermediate?: boolean, depthFirst?: boolean): T | undefined; declare function deepObjectSome(target: StringIndexed, callback: DeepObjectCallback<boolean>, includeIntermediate?: boolean, depthFirst?: boolean): boolean; declare function deepObjectEvery(target: StringIndexed, callback: DeepObjectCallback<boolean>, includeIntermediate?: boolean, depthFirst?: boolean): boolean; declare function deepObjectForEach(target: StringIndexed, callback: DeepObjectCallback<void>, includeIntermediate?: boolean, depthFirst?: boolean): void; declare function deepObjectValues<T extends any[] = any[]>(target: StringIndexed, includeIntermediate?: boolean, depthFirst?: boolean): T; declare function deepObjectPaths(target: StringIndexed, includeIntermediate?: boolean, depthFirst?: boolean): string[][]; declare function deepObjectKeys(target: StringIndexed, includeIntermediate?: boolean, depthFirst?: boolean): string[]; declare function deepObjectEntries(target: StringIndexed, includeIntermediate?: boolean, depthFirst?: boolean): [string, any, string[]][]; export { deepObjectForEach, deepObjectMap, deepObjectFilter, deepObjectFind, deepObjectSome, deepObjectEvery, deepObjectValues, deepObjectPaths, deepObjectKeys, deepObjectEntries, deepObjectForEach as forEach, deepObjectMap as map, deepObjectFilter as filter, deepObjectFind as find, deepObjectSome as some, deepObjectEvery as every, deepObjectValues as values, deepObjectPaths as paths, deepObjectKeys as keys, deepObjectEntries as entries, };