/*! * @author electricessence / https://github.com/electricessence/ * Based Upon: http://msdn.microsoft.com/en-us/library/he2s3bh7%28v=vs.110%29.aspx * Licensing: MIT https://github.com/electricessence/TypeScript.NET/blob/master/LICENSE.md */ import { CollectionBase } from "./CollectionBase"; import { ILinkedListNode } from "./ILinkedListNode"; import { IEnumerator } from "./Enumeration/IEnumerator"; import { ActionWithIndex, EqualityComparison, PredicateWithIndex } from "../FunctionTypes"; import { ILinkedList } from "./ILinkedList"; import { IEnumerableOrArray } from "./IEnumerableOrArray"; export declare class LinkedList extends CollectionBase implements ILinkedList { private readonly _listInternal; constructor(source?: IEnumerableOrArray, equalityComparer?: EqualityComparison); protected assertVersion(version: number): true | never; protected _onDispose(): void; protected getCount(): number; protected _addInternal(entry: T): boolean; protected _removeInternal(entry: T, max?: number): number; protected _clearInternal(): number; forEach(action: ActionWithIndex, useCopy?: boolean): number; forEach(action: PredicateWithIndex, useCopy?: boolean): number; getEnumerator(): IEnumerator; private _findFirst; private _findLast; removeOnce(entry: T): boolean; readonly first: ILinkedListNode | null; readonly firstValue: T | undefined; readonly last: ILinkedListNode | null; readonly lastValue: T | undefined; getValueAt(index: number): T | undefined; getNodeAt(index: number): ILinkedListNode | null; find(entry: T): ILinkedListNode | null; findLast(entry: T): ILinkedListNode | null; addFirst(entry: T): this; addLast(entry: T): this; private _removeNodeInternal; removeFirst(): boolean; removeLast(): boolean; removeAt(index: number): boolean; removeNode(node: ILinkedListNode): boolean; addBefore(before: ILinkedListNode, entry: T): this; addAfter(after: ILinkedListNode, entry: T): this; } export default LinkedList;