/** Checkout https://npm.im/fast-fifo if performance is critical */
declare class FIFO<T> {
    private head;
    private tail;
    $size: number;
    constructor();
    enqueue(value: T): void;
    push: (value: T) => void;
    dequeue(): T | undefined;
    shift: () => T | undefined;
    peek(): T | undefined;
    clear(): void;
    get size(): number;
    get length(): number;
    [Symbol.iterator](): Generator<T, void, unknown>;
}

export { FIFO };
