import { AbstractCollection } from "./AbstractCollection";
import { Element } from "./Collection";
import { Queue } from "./Queue";
/**
 * This class provides skeletal implementations of some `Queue` operations.
 */
export declare abstract class AbstractQueue<T> extends AbstractCollection<T> implements Queue<T> {
    abstract element(): Element<T> | undefined;
    abstract offer(value: Element<T>): boolean;
    abstract peek(): Element<T> | undefined;
    abstract poll(): Element<T> | undefined;
    abstract removeFirst(): Element<T> | undefined;
}
