import { IObservable } from "@tandem/common/observable"; export interface ITreeNode> extends IObservable { children: Array; firstChild: T; lastChild: T; nextSibling: T; previousSibling: T; appendChild(child: T): any; removeChild(child: T): any; insertChildAt(newChild: T, index: number): any; insertBefore(newChild: T, existingChild: T): any; replaceChild(newChild: T, existingChild: T): any; depth: number; parent: T; ancestors: Array; root: T; clone(): T; }