/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
/**
 * @deprecated  for internal use only. public export will be removed.
 * @internal
 */
export declare function ListRemoveEntry<U>(entry: List<U>): List<U> | undefined;
/**
 * @deprecated  for internal use only. public export will be removed.
 * @internal
 */
export declare function ListMakeHead<U>(): List<U>;
/**
 * @deprecated  for internal use only. public export will be removed.
 * @internal
 */
export declare class List<T> {
    isHead: boolean;
    data: T | undefined;
    next: List<T>;
    prev: List<T>;
    constructor(isHead: boolean, data: T | undefined);
    clear(): void;
    private add;
    dequeue(): T | undefined;
    enqueue(data: T): List<T>;
    walk(fn: (data: T, l: List<T>) => void): void;
    some(fn: (data: T, l: List<T>) => boolean, rev?: boolean): T[];
    count(): number;
    first(): T | undefined;
    last(): T | undefined;
    empty(): boolean;
    unshift(data: T): void;
    [Symbol.iterator](): IterableIterator<T>;
}
//# sourceMappingURL=list.d.ts.map