Sha256: 385fceba2f49ee3f91cd436d3f84b389375e1e8f86906b23f47df2e1b9c2b17b
Contents?: true
Size: 1.03 KB
Versions: 65
Compression:
Stored size: 1.03 KB
Contents
interface UIOptions { width: number; wrap?: boolean; rows?: string[]; } interface Column { text: string; width?: number; align?: "right" | "left" | "center"; padding: number[]; border?: boolean; } interface ColumnArray extends Array<Column> { span: boolean; } interface Line { hidden?: boolean; text: string; span?: boolean; } declare class UI { width: number; wrap: boolean; rows: ColumnArray[]; constructor(opts: UIOptions); span(...args: ColumnArray): void; resetOutput(): void; div(...args: (Column | string)[]): ColumnArray; private shouldApplyLayoutDSL; private applyLayoutDSL; private colFromString; private measurePadding; toString(): string; rowToString(row: ColumnArray, lines: Line[]): Line[]; // if the full 'source' can render in // the target line, do so. private renderInline; private rasterize; private negatePadding; private columnWidths; } declare function ui(opts: UIOptions): UI; export { ui as default };
Version data entries
65 entries across 63 versions & 4 rubygems