interface IterateDeepData { key: string; value: any; currentObj: ObjOrArr; originalObj: ObjOrArr; path: string; pathSeparator: string; nextKey: () => void; breakLoop: () => void; } type ObjOrArr = Record | any[]; export default class ObjectUtil { private readonly pathSeparator; constructor(args?: { pathSeparator?: string; }); iterateKeysDeep(obj: ObjOrArr, cb: (data: IterateDeepData) => void | boolean): void; setPath(obj: object, path: string, value: any, pathSeparator?: string): void; } export {};