%PDF- %PDF-
Direktori : /lib/node_modules/npm/node_modules/cli-table3/ |
Current File : //lib/node_modules/npm/node_modules/cli-table3/index.d.ts |
declare namespace CliTable3 { type CharName = "top" | "top-mid" | "top-left" | "top-right" | "bottom" | "bottom-mid" | "bottom-left" | "bottom-right" | "left" | "left-mid" | "mid" | "mid-mid" | "right" | "right-mid" | "middle"; type HorizontalAlignment = "left" | "center" | "right"; type VerticalAlignment = "top" | "center" | "bottom"; interface TableOptions { truncate: string; colWidths: Array<number | null>; rowHeights: Array<number | null>; colAligns: HorizontalAlignment[]; rowAligns: VerticalAlignment[]; head: string[]; wordWrap: boolean; wrapOnWordBoundary: boolean; } interface TableInstanceOptions extends TableOptions { chars: Record<CharName, string>; style: { "padding-left": number; "padding-right": number; head: string[]; border: string[]; compact: boolean; }; } interface TableConstructorOptions extends Partial<TableOptions> { chars?: Partial<Record<CharName, string>>; style?: Partial<TableInstanceOptions["style"]>; } type CellValue = boolean | number | string | null | undefined; interface CellOptions { content: CellValue; chars?: Partial<Record<CharName, string>>; truncate?: string; colSpan?: number; rowSpan?: number; hAlign?: HorizontalAlignment; vAlign?: VerticalAlignment; style?: { "padding-left"?: number; "padding-right"?: number; head?: string[]; border?: string[]; }; } interface GenericTable<T> extends Array<T> { options: TableInstanceOptions; readonly width: number; } type Table = GenericTable<HorizontalTableRow|VerticalTableRow|CrossTableRow>; type Cell = CellValue | CellOptions; type HorizontalTableRow = Cell[]; interface VerticalTableRow { [name: string]: Cell; } interface CrossTableRow { [name: string]: Cell[]; } } interface CliTable3 { new (options?: CliTable3.TableConstructorOptions): CliTable3.Table; readonly prototype: CliTable3.Table; } declare const CliTable3: CliTable3; export = CliTable3;