import type { EmptyObject } from './EmptyObject.ts'; import type { DeepPickStartsWith } from './PickStartsWith.ts'; /** A predicate function used to determine which properties to pick from an object. */ export type PickByPredicate> = (value: T[keyof T], key: keyof T) => boolean; /** * Creates a new object containing only the properties that satisfy the predicate, with optional recursive depth. * @param obj - The source object to pick properties from. * @param predicate - A function that returns true for properties to include. * @param maxDepth - Maximum recursion depth for nested objects. * @returns A partial copy of the object with only matching properties. */ export declare const pickBy: (obj: T, predicate: PickByPredicate, maxDepth?: number) => Partial; /** * Picks all properties whose keys start with the given prefix, recursively through nested objects. * @param payload - The source object. * @param prefix - The string prefix to match keys against. * @param maxDepth - Maximum recursion depth. * @returns A new object containing only properties with matching prefixed keys. */ export declare const pickByPrefix: (payload: T, prefix: P, maxDepth?: number) => DeepPickStartsWith; //# sourceMappingURL=pickBy.d.ts.map