import { F as ForEachObjectOptions, I as IForEachCallback } from '../forEachObject-d_hPAT_2.js'; import '../types.js'; import '../types/mutableRecordList.js'; import '../types/mutableRecord.js'; import '../types/union.js'; import '../types/changeFieldType.js'; import '../types/valueOf.js'; import '../types/optional.js'; import '../types/dict.js'; import '../types/JsonObject.js'; import '../types/deepPartial.js'; import '../types/deepRequired.js'; import '../types/ObjectKeys.js'; import '../types/requiredKeys.js'; import '../types/getTypeByPath.js'; import 'type-fest'; import '../types/objectKeyPaths.js'; import '../types/keys.js'; import '../types/arrayMember.js'; import '../types/Unique.js'; import '../types/syncFunction.js'; import '../types/argument.js'; import '../types/lastArgument.js'; import '../types/asyncFunction.js'; import '../types/overloads.js'; import '../types/changeReturns.js'; import '../types/implementOf.js'; import '../types/class.js'; import '../types/firstUpper.js'; import '../types/firstLower.js'; import '../types/primitive.js'; import '../types/IsNumberLike.js'; import '../types/merge.js'; import '../types/collection.js'; import '../types/timeDuration.js'; import '../types/fileSize.js'; import '../types/rename.js'; import '../types/fallback.js'; import '../types/allowEmpty.js'; import './objectIterator.js'; import '../consts.js'; /** * 发现满足条件的对象成员 * * 遍历对象,对每一个成员调用matcher({value,keyOrIndex,parent}), * * 如果matcher返回true,则返回picker({value,keyOrIndex,parent}) * * searchObject({ * a:1, * b:{x:1,y:2} * },({value,keyOrIndex,parent})=>{ * return value==2 * },({value,keyOrIndex,parent})=>{ * return keyOrIndex // 当值=1时返回y * return value // 当值=1时返回{x:1,y:2} * }) * * * @param obj * @param callback * @param matchOne 仅匹配一个 */ type SearchObjectOptions = ForEachObjectOptions & { matchOne?: boolean; }; declare function searchObject(obj: any[] | object, matcher: IForEachCallback, picker?: IForEachCallback, options?: SearchObjectOptions): T | T[]; export { type SearchObjectOptions, searchObject };