123456789101112131415161718192021222324252627 |
- export declare class HeadNode<T> {
- next: LinkedListNode<T> | TailNode<T>;
- constructor();
- }
- export declare class TailNode<T> {
- previous: LinkedListNode<T> | HeadNode<T>;
- constructor(head: HeadNode<T>);
- }
- export declare class LinkedListNode<T> {
- next: LinkedListNode<T> | TailNode<T> | null;
- previous: LinkedListNode<T> | HeadNode<T> | null;
- readonly item: T;
- constructor(item: T);
- detachSelf(): void;
- attachAfter(node: LinkedListNode<T> | HeadNode<T>): void;
- attachBefore(node: LinkedListNode<T> | TailNode<T>): void;
- }
- export declare class LinkedList<T> {
- head: HeadNode<T>;
- tail: TailNode<T>;
- constructor();
- add(item: T): LinkedListNode<T>;
- getItems(): T[];
- forEach(callback: (item: T, node: LinkedListNode<T>) => void): void;
- hasItems(): boolean;
- getLastItem(): LinkedListNode<T>;
- }
|