import { IterableBase } from "./base"; import { AsyncQueryable, AsyncQueryableGrouping, AsyncQuerySource, Operator, OrderKey } from "./interfaces"; export declare class AsyncQueryableImpl extends IterableBase implements AsyncQueryable { static from(source: AsyncQuerySource): AsyncQueryableImpl; protected constructor(source: AsyncQuerySource); filter(f: (t: TSource, i: number) => boolean): AsyncQueryable; flatMap(selector: (t: TSource, index: number) => AsyncQuerySource | Promise>, resultSelector?: (t: TSource, ti: TInner) => TResult | Promise): AsyncQueryable; map(f: (t: TSource, i: number) => TResult | Promise): AsyncQueryable; skip(n: number): AsyncQueryable; skipWhile(predicate: (t: TSource, i: number) => boolean | Promise): AsyncQueryable; take(n: number): AsyncQueryable; takeWhile(predicate: (t: TSource, i: number) => boolean | Promise): AsyncQueryable; join(inner: AsyncQuerySource, outerKeySelector: (to: TSource) => TKey | Promise, innerKeySelector: (ti: TInner) => TKey | Promise, resultSelector: (to: TSource, ti: TInner) => TResult | Promise): AsyncQueryable; groupJoin(inner: AsyncQuerySource, outerKeySelector: (to: TSource) => TKey | Promise, innerKeySelector: (ti: TInner) => TKey | Promise, resultSelector: (to: TSource, ti: AsyncQueryable) => TResult | Promise): AsyncQueryable; concat(iter: AsyncQuerySource): AsyncQueryable; reverse(): AsyncQueryable; orderBy(keySelector: (t: TSource) => OrderKey | Promise): AsyncQueryable; orderByDescending(keySelector: (t: TSource) => OrderKey | Promise): AsyncQueryable; groupBy(keySelector: (t: TSource) => TKey | Promise, elementSelector?: (t: TSource) => TResult | Promise): AsyncQueryable>; distinct(): AsyncQueryable; union(second: AsyncQuerySource): AsyncQueryable; intersect(second: AsyncQuerySource): AsyncQueryable; except(second: AsyncQuerySource): AsyncQueryable; first(predicate?: (t: TSource) => boolean | Promise): Promise; firstOrDefault(defaultValue: TSource, predicate?: (t: TSource) => boolean | Promise): Promise; last(predicate?: (t: TSource) => boolean | Promise): Promise; lastOrDefault(defaultValue: TSource, predicate?: (t: TSource) => boolean | Promise): Promise; single(predicate?: (t: TSource) => boolean | Promise): Promise; singleOrDefault(defaultValue: TSource, predicate?: (t: TSource) => boolean | Promise): Promise; elementAt(index: number): Promise; elementAtOrDefault(defaultValue: TSource, index: number): Promise; defaultIfEmpty(defaultValue: TSource): AsyncQueryable; any(predicate?: (t: TSource) => boolean | Promise): Promise; all(predicate: (t: TSource) => boolean | Promise): Promise; contains(value: TSource): Promise; count(predicate?: (t: TSource) => boolean | Promise): Promise; sum(): TSource extends number ? Promise : never; sum(selector?: (t: TSource) => number | Promise): Promise; min(): TSource extends number ? Promise : never; min(selector?: (t: TSource) => number | Promise): Promise; max(): TSource extends number ? Promise : never; max(selector?: (t: TSource) => number | Promise): Promise; average(): TSource extends number ? Promise : never; average(selector?: (t: TSource) => number | Promise): Promise; aggregate(seed: TAccumulate, func: (acc: TAccumulate, t: TSource) => TAccumulate | Promise): Promise; toArray(): Promise; toMap(keySelector: (t: TSource) => TKey | Promise, elementSelector: (t: TSource) => TResult | Promise): Promise>; ofType(typeGuard: (o: any) => o is TResult): AsyncQueryable; forEach(f: (t: TSource) => void | Promise): Promise; pipe(): AsyncQueryable; pipe(op: Operator): AsyncQueryable; pipe(op1: Operator, op2: Operator): AsyncQueryable; pipe(op1: Operator, op2: Operator, op3: Operator): AsyncQueryable; pipe(op1: Operator, op2: Operator, op3: Operator, op4: Operator): AsyncQueryable; pipe(op1: Operator, op2: Operator, op3: Operator, op4: Operator, op5: Operator): AsyncQueryable; pipe(op1: Operator, op2: Operator, op3: Operator, op4: Operator, op5: Operator, op6: Operator): AsyncQueryable; pipe(op1: Operator, op2: Operator, op3: Operator, op4: Operator, op5: Operator, op6: Operator, op7: Operator): AsyncQueryable; pipe(op1: Operator, op2: Operator, op3: Operator, op4: Operator, op5: Operator, op6: Operator, op7: Operator, op8: Operator): AsyncQueryable; pipe(op1: Operator, op2: Operator, op3: Operator, op4: Operator, op5: Operator, op6: Operator, op7: Operator, op8: Operator, op9: Operator, ...ops: Operator[]): AsyncQueryable; } export declare class GroupingImpl extends AsyncQueryableImpl implements AsyncQueryableGrouping { readonly key: TKey; constructor(key: TKey, group: AsyncIterable); }