import { IAsyncEqualityComparer , IEqualityComparer } from "./" ; /**
 * Common Methods between IAsyncEnumerable and IParallelEnumerable
 */ export interface IAsyncParallel < TSource > extends AsyncIterable < TSource > { param func returns aggregate ( func ) : Promise < TSource > ; param seed param func returns aggregate < TAccumulate > ( seed , func ) : Promise < TAccumulate > ; param seed param func param resultSelector returns aggregate < TAccumulate , TResult > ( seed , func , resultSelector ) : Promise < TResult > ; param predicate returns all ( predicate ) : Promise < boolean > ; param predicate returns allAsync ( predicate ) : Promise < boolean > ; param predicate returns any ( predicate ? ) : Promise < boolean > ; param predicate returns anyAsync ( predicate ) : Promise < boolean > ; throws returns average ( this ) : Promise < number > ; param selector throws returns average ( selector ) : Promise < number > ; param selector throws returns averageAsync ( selector ) : Promise < number > ; param value param comparer returns contains ( value , comparer ? ) : Promise < boolean > ; param value param comparer returns containsAsync ( value , comparer ) : Promise < boolean > ; param predicate returns count ( predicate ? ) : Promise < number > ; param predicate returns countAsync ( predicate ) : Promise < number > ; param index throws returns elementAt ( index ) : Promise < TSource > ; param index returns elementAtOrDefault ( index ) : Promise < TSource | null > ; throws throws first ( predicate ? ) : Promise < TSource > ; param predicate throws returns firstAsync ( predicate ) : Promise < TSource > ; param predicate returns firstOrDefault ( predicate ? ) : Promise < TSource | null > ; param predicate returns firstOrDefaultAsync ( predicate ) : Promise < TSource | null > ; throws throws last ( predicate ? ) : Promise < TSource > ; throws lastAsync ( predicate ) : Promise < TSource > ; lastOrDefault ( predicate ? ) : Promise < TSource | null > ; lastOrDefaultAsync ( predicate ) : Promise < TSource | null > ; throws param this max ( this ) : Promise < number > ; throws max ( selector ) : Promise < number > ; throws maxAsync ( selector ) : Promise < number > ; throws min ( this ) : Promise < number > ; throws min ( selector ) : Promise < number > ; throws minAsync ( selector ) : Promise < number > ; throws throws throws throws param predicate returns partition ( predicate ) : Promise < [ pass : TSource [ ] , fail : TSource [ ] ] > ; param predicate returns partitionAsync ( predicate ) : Promise < [ pass : TSource [ ] , fail : TSource [ ] ] > ; single ( predicate ? ) : Promise < TSource > ; throws throws singleAsync ( predicate ) : Promise < TSource > ; throws singleOrDefault ( predicate ? ) : Promise < TSource | null > ; throws singleOrDefaultAsync ( predicate ) : Promise < TSource | null > ; returns sum ( this ) : Promise < number > ; param selector returns sum ( selector ) : Promise < number > ; param selector returns sumAsync ( selector ) : Promise < number > ; returns toArray ( ) : Promise < TSource [ ] > ; param selector returns toMap < TKey > ( selector ) : Promise < Map < TKey , TSource [ ] > > ; param selector returns toMapAsync < TKey > ( selector ) : Promise < Map < TKey , TSource [ ] > > ; param selector returns toObject < TKey extends keyof any > ( selector ) : Promise < Record < TKey , TSource > > ; param selector returns toObjectAsync < TKey extends keyof any > ( selector ) : Promise < Record < TKey , TSource > > ; returns toSet ( ) : Promise < Set < TSource > > ; [ Symbol . asyncIterator ] ( ) : AsyncIterableIterator < TSource > ; }