import chalk from 'chalk'; import { IBaseType, ILinkList, ITree, IBinaryTree } from '../../'; import { ICompareFn } from '../../common'; export declare enum Cable { H = "\u2500", V = "\u2502", LT = "\u256F", TL = "\u256F", RT = "\u2570", TR = "\u2570", LB = "\u256E", BL = "\u256E", RB = "\u256D", BR = "\u256D", MT = "\u2534", TM = "\u2534", MB = "\u252C", BM = "\u252C", LM = "\u2524", ML = "\u2524", RM = "\u251C", MR = "\u251C", MM = "\u253C" } export interface ILogTableSelect { row?: number; col?: number; cell?: [number, number]; color?: typeof chalk.BackgroundColor; } export interface ILogTableCol { key?: number | string; title?: number | string; } export interface ILogTableRow { key?: number | string; title?: number | string; } export declare type ILogData = IBaseType | ILogData[] | ILogData[][] | ILinkList | Set | Map | { [key: string]: ILogData; } | object | ITree | IBinaryTree; export interface ILogOptions { isHeap?: true; isTree?: true; showColHead?: boolean; showRowHead?: boolean; showDivider?: boolean; cols?: ILogTableCol[]; rows?: ILogTableRow[]; select?: ILogTableSelect | ILogTableSelect[]; flip?: true; margin?: number; vMargin?: number; valueTransform?: (v: ILogData) => ILogData; colStart?: number; colEnd?: number; rowStart?: number; rowEnd?: number; sort?: Array<{ key: number | string; compareFn: ICompareFn; }>; } export interface ICharMatrix { v: string[]; w: number; h: number; c?: string | Array<[number, number, string]>; b?: typeof chalk.BackgroundColor; }