import { IOptionalPromise, IOptionalPromiseArray, IOptionalPromiseDictionary } from '@promises/interfaces'; export interface ICurriedFilterParallel { >(iteratee: (value: T[keyof T & number], index: number, array: T) => IOptionalPromise, limit: number, array: IOptionalPromiseArray): Promise; >(iteratee: (value: T[keyof T & number], index: number, array: T) => IOptionalPromise, limit: number): (array: IOptionalPromiseArray) => Promise; >(iteratee: (value: T[keyof T & number], index: number, array: T) => IOptionalPromise): (limit: number) => (array: IOptionalPromiseArray) => Promise; (iteratee: (value: T[keyof T], key: keyof T, object: T) => IOptionalPromise, limit: number, object: IOptionalPromiseDictionary): Promise; (iteratee: (value: T[keyof T], key: keyof T, object: T) => IOptionalPromise, limit: number): (object: IOptionalPromiseDictionary) => Promise; (iteratee: (value: T[keyof T], key: keyof T, object: T) => IOptionalPromise): (limit: number) => (object: IOptionalPromiseDictionary) => Promise; } /** * @function * @example * * let comparator = (value: number) => { * return value % 2 === 0; * }; * * let array = Array.from({length:5}, (value, index) => index); * * filterParallel(comparator)(void 0, array).then((result: number[])=>{ * console.log(result); // result => [0, 2, 4] * }); */ declare let curriedFilterParallel: ICurriedFilterParallel; export { __ } from '@promises/_curry'; export default curriedFilterParallel;