import { ListNode } from "../../classes/list-node"; import { LinkedList } from "../../interfaces/linked-list"; export declare class SinglyLinkedList implements LinkedList { private head; private tail; private _size; /** * The size of the list. */ get size(): number; /** * The head of the list */ get first(): any; /** * The tail of the list */ get last(): any; /** * pushes a node to the end of the list * @param val the value of the new node * @returns {number} the new size of the list */ push(val: any): number; /** * get the node at the specified index * @param index the index of the node * @returns {ListNode} the node at the specified index */ getNodeAt(index: number): ListNode; /** * removes the tail (last) item in the list. * @returns {ListNode} the node that was removed */ pop(): ListNode; /** * Removes the head (first) item in the list. * @returns {ListNode} the node that was removed */ shift(): ListNode; /** * Adds a node at the beginning of the list * @param val the value of the new node * @returns {number} the new size of the list */ unshift(val: any): number; /** * Inserts a new node at the specified location * @param val the value of the new node * @param index the location of the new node * @returns {number} the new size of the list */ insert(val: any, index: number): number; }