import { List } from './List';
import { IEnumerable, Comparator } from '../core';
import { Enumerable } from '../linq';
import { PriorityQueue } from './PriorityQueue';
import { Stack } from './Stack';
import { Queue } from './Queue';
import { LinkedList } from './LinkedList';
export declare class Collectors {
    static toIEnumerable<T>(): (itre: IEnumerable<T>) => Enumerable<T>;
    static toIterator<T>(): (itre: Iterable<T>) => Iterable<T>;
    static toList<T>(): (itre: Iterable<T>) => List<T>;
    static toArray<T>(): (itre: Iterable<T>) => T[];
    static toSet<T>(): (itre: Iterable<T>) => Set<T>;
    static toMap<K, V>(mapper?: <T>(item: T) => [K, V]): (itre: Iterable<[K, V]>) => Map<K, V>;
    static toLinkedList<T>(): (itre: Iterable<T>) => LinkedList<T>;
    static toQueue<T>(): (itre: Iterable<T>) => Queue<T>;
    static toPriorityQueue<T>(comparator: Comparator<T, T>): (itre: Iterable<T>) => PriorityQueue<T>;
    static toStack<T>(): (itre: Iterable<T>) => Stack<T>;
}
