export declare function each(arr: T, fn: (value: T[number], index: number, arr: T) => void, context?: any): void; export declare function each(obj: T, fn: (value: T[keyof T], key: keyof T, obj: T) => void, context?: any): void; export declare const map: (arrayOrObject: T, fn: (value: any, index: T extends object ? string : number, obj: T) => N, context?: any) => N[]; export declare const find: (arrayOrObject: T, fn: (value: any, index: T extends any[] ? number : string, obj: T) => boolean, context?: any) => any | undefined; type uniqueMapFn = (item: T, index: number, arr: T[]) => any; export declare function unique(arr: T[], mapFn?: uniqueMapFn, context?: any): T[]; export declare function unique(arr: T[], isSort?: boolean, mapFn?: uniqueMapFn, context?: any): T[]; export {};