import { Dictionary } from './dictionary'; import { IEnumerable } from './enumerable'; import { IEqualityComparer } from './equality-comparer'; import { List } from './list'; export interface IGrouping extends IEnumerable { readonly Key: TKey; readonly Items: IEnumerable; } export declare class Grouping implements IGrouping { private key; private source; constructor(key: TKey, source: IEnumerable); get Key(): TKey; get Items(): IEnumerable; [Symbol.iterator](): IterableIterator; All(predicate: (item: TElement) => boolean): boolean; Any(predicate?: (item: TElement) => boolean): boolean; AsEnumerable(): IEnumerable; Average(selector?: (item: TElement) => number): number | null; Concat(second: IEnumerable): IEnumerable; Contains(value: TElement, comparer?: IEqualityComparer): boolean; Count(predicate?: (item: TElement) => boolean): number; DefaultIfEmpty(defaultValue?: IEnumerable): IEnumerable; Distinct(comparer?: IEqualityComparer): IEnumerable; ElementAt(index: number): TElement; ElementAtOrDefault(defaultValue: TElement, index: number): TElement; Except(second: IEnumerable, comparer?: IEqualityComparer): IEnumerable; First(predicate?: (item: TElement) => boolean): TElement; FirstOrDefault(defaultValue: TElement, predicate?: (item: TElement) => boolean): TElement; GroupBy(keySelector: (item: TElement) => TKey, elementSelector?: (item: TElement) => TGroupElement, comparer?: IEqualityComparer): IEnumerable>; GroupJoin; }>(inner: IEnumerable, outerKeySelector: (item: TElement) => TKey, innerKeySelector: (item: TInner) => TKey, resultSelector?: (item: TElement, inners: IEnumerable) => TResult, comparer?: IEqualityComparer): IEnumerable; Intersect(second: IEnumerable, comparer?: IEqualityComparer): IEnumerable; Join(inner: IEnumerable, outerKeySelector: (item: TElement) => TKey, innerKeySelector: (item: TInner) => TKey, resultSelector?: (item: TElement, inners: TInner) => TResult, comparer?: IEqualityComparer): IEnumerable; Last(predicate?: (item: TElement) => boolean): TElement; LastOrDefault(defaultValue: TElement, predicate?: (item: TElement) => boolean): TElement; Max(selector?: (item: TElement) => number): number | null; Min(selector?: (item: TElement) => number): number | null; Reverse(): IEnumerable; Select(selector: (item: TElement, index?: number) => TResult): IEnumerable; SelectMany(collectionSelector: (item: TElement, index?: number) => IEnumerable, resultSelector?: (item: TElement, collection: TCollection) => TResult): IEnumerable; SequenceEqual(second: Iterable, comparer?: IEqualityComparer): boolean; Single(predicate?: (item: TElement) => boolean): TElement; SingleOrDefault(defaultValue: TElement, predicate?: (item: TElement) => boolean): TElement; Skip(count: number): IEnumerable; SkipWhile(predicate: (item: TElement, index?: number) => boolean): IEnumerable; Sum(selector?: (item: TElement) => number): number | null; Take(count: number): IEnumerable; TakeWhile(predicate: (item: TElement, index?: number) => boolean): IEnumerable; ToArray(): Array; ToDictionary(keySelector: (item: TElement) => TKey, elementSelector?: (item: TElement) => TDictionaryElement, comparer?: IEqualityComparer): Dictionary; ToList(): List; Union(second: Iterable, comparer?: IEqualityComparer): IEnumerable; Where(predicate: (item: TElement, index?: number) => boolean): IEnumerable; }