interface DoublyLinkedListNode { value: T; next: () => DoublyLinkedListNode | null; prev: () => DoublyLinkedListNode | null; } export declare class DoublyLinkedList { private nodes; constructor(nodes?: Array); get size(): number; get head(): DoublyLinkedListNode | null; get tail(): DoublyLinkedListNode | null; insertAt(index: number, value: T): void; shift(value: T): void; push(value: T): void; getAt(index: number): DoublyLinkedListNode; removeAt(index: number): DoublyLinkedListNode[]; clear(): void; toArray(): T[]; [Symbol.iterator](): Generator, void, undefined>; } export {};