export class AvlTreeNode { constructor(value: T, compare?: (a: T, b: T) => number); setValue(value?: T): AvlTreeNode; getValue(): T; setLeft(left?: AvlTreeNode): AvlTreeNode; getLeft(): AvlTreeNode | null; hasLeft(): boolean; setRight(right?: AvlTreeNode): AvlTreeNode; getRight(): AvlTreeNode | null; hasRight(): boolean; setParent(parent?: AvlTreeNode): AvlTreeNode; getParent(): AvlTreeNode | null; hasParent(): boolean; isRoot(): boolean; isLeaf(): boolean; rotateLeft(): AvlTreeNode; rotateRight(): AvlTreeNode; rotateLeftRight(): AvlTreeNode; rotateRightLeft(): AvlTreeNode; updateHeight(): AvlTreeNode; getHeight(): number; getLeftHeight(): number; getRightHeight(): number; getBalance(): number; isBalanced(): boolean; }