import { IAsyncEnumerable , IAsyncEqualityComparer , IAsyncParallel , IComparer , IEqualityComparer , IGrouping , InferType , IOrderedParallelEnumerable , OfType , SelectorKeyType , TypedData , } from "./" ; /**
 * Parallel Async Iterable type with methods from LINQ.
 */ export interface IParallelEnumerable < TSource > extends IAsyncParallel < TSource > { /**
     * Used for processing.
     */ readonly dataFunc : TypedData < TSource > ; returns asAsync ( ) : IAsyncEnumerable < TSource > ; param second returns concatenate ( second ) : IParallelEnumerable < TSource > ; param comparer returns distinct ( comparer ? ) : IParallelEnumerable < TSource > ; param comparer returns distinctAsync ( comparer ) : IParallelEnumerable < TSource > ; param action returns each ( action ) : IParallelEnumerable < TSource > ; param action returns eachAsync ( action ) : IParallelEnumerable < TSource > ; param second param comparer returns except ( second , comparer ? ) : IParallelEnumerable < TSource > ; param second param comparer returns exceptAsync ( second , comparer ) : IParallelEnumerable < TSource > ; param keySelector returns groupBy < TKey extends SelectorKeyType > ( keySelector ) : IParallelEnumerable < IGrouping < TKey , TSource > > ; param keySelector param comparer returns groupBy < TKey > ( keySelector , comparer ) : IParallelEnumerable < IGrouping < TKey , TSource > > ; param keySelector returns groupByAsync < TKey extends SelectorKeyType > ( keySelector ) : IParallelEnumerable < IGrouping < TKey , TSource > > ; param keySelector param comparer returns groupByAsync < TKey > ( keySelector , comparer ) : IParallelEnumerable < IGrouping < TKey , TSource > > ; groupByWithSel < TElement , TKey extends SelectorKeyType > ( keySelector , elementSelector ) : IParallelEnumerable < IGrouping < TKey , TElement > > ; groupByWithSel < TKey , TElement > ( keySelector , elementSelector , comparer ) : IParallelEnumerable < IGrouping < TKey , TElement > > ; intersect ( second , comparer ? ) : IParallelEnumerable < TSource > ; intersectAsync ( second , comparer ) : IParallelEnumerable < TSource > ; joinByKey < TInner , TKey , TResult > ( inner , outerKeySelector , innerKeySelector , resultSelector , comparer ? ) : IParallelEnumerable < TResult > ; ofType < TType extends OfType > ( type ) : IParallelEnumerable < InferType < TType > > ; orderBy < TKey > ( predicate , comparer ? ) : IOrderedParallelEnumerable < TSource > ; orderByAsync < TKey > ( predicate , comparer ? ) : IOrderedParallelEnumerable < TSource > ; orderByDescending < TKey > ( predicate , comparer ? ) : IParallelEnumerable < TSource > ; orderByDescendingAsync < TKey > ( predicate , comparer ? ) : IParallelEnumerable < TSource > ; returns reverse ( ) : IParallelEnumerable < TSource > ; select < TResult > ( selector ) : IParallelEnumerable < TResult > ; select < TKey extends keyof TSource > ( key ) : IParallelEnumerable < TSource [ TKey ] > ; selectAsync < TResult > ( selector ) : IParallelEnumerable < TResult > ; selectAsync < TKey extends keyof TSource , TResult > ( this , selector ) : IParallelEnumerable < TResult > ; selectMany < TResult > ( selector ) : IParallelEnumerable < TResult > ; selectMany < TBindedSource extends { [ key ] : Iterable < TOut > ; } , TOut > ( this , selector ) : IParallelEnumerable < TOut > ; selectManyAsync < TResult > ( selector ) : IParallelEnumerable < TResult > ; sequenceEquals ( second , comparer ? ) : Promise < boolean > ; sequenceEqualsAsync ( second , comparer ? ) : Promise < boolean > ; skip ( count ) : IParallelEnumerable < TSource > ; skipWhile ( predicate ) : IParallelEnumerable < TSource > ; skipWhileAsync ( predicate ) : IParallelEnumerable < TSource > ; take ( amount ) : IParallelEnumerable < TSource > ; takeWhile ( predicate ) : IParallelEnumerable < TSource > ; takeWhileAsync ( predicate ) : IParallelEnumerable < TSource > ; union ( second , comparer ? ) : IParallelEnumerable < TSource > ; unionAsync ( second , comparer ? ) : IParallelEnumerable < TSource > ; param predicate returns where ( predicate ) : IParallelEnumerable < TSource > ; param predicate returns whereAsync ( predicate ) : IParallelEnumerable < TSource > ; zip < TSecond , TResult > ( second , resultSelector ) : IParallelEnumerable < TResult > ; zip < TSecond > ( second ) : IParallelEnumerable < [ TSource , TSecond ] > ; zipAsync < TSecond , TResult > ( second , resultSelector ) : IParallelEnumerable < TResult > ; }