export type IBaseType = undefined | null | number | boolean | string; export interface ILinkList { val: T; next: ILinkList | null; } export interface IBinaryTree { val: T; left: IBinaryTree | null; right: IBinaryTree | null; } export interface ITree { val: T; childs: ITree[]; } export type ICompareFn = (a: T, b: T) => number;