import type { AutoRowConfig, RowConfig, TableConfig } from './ColumnConfig'; /** * Helper calss to create printable design foor RNPrinter * * @export * @class DesignBuilder */ export default class DesignBuilder { private maxChar; private _design; /** * Creates an instance of DesignBuilder. * @param {number} maxChar Max char per line during printing * @memberof DesignBuilder */ constructor(maxChar: number); private set design(value); /** * Get design result * * @readonly */ get design(): string; /** * Get design array * * @readonly */ get designs(): string[]; /** * Display design preview * */ preview(): void; /** * Add formated line using TagHelper will add \n for every lines * * @param {string} line */ addLine(line: string): this; /** * Add raw formated line using TagHelper, not \n will be added * * @param {string} line */ addRawLine(line: string): this; /** * Add array of formated line using TagHelper * * @param {string} lines */ addLines(lines: string[]): this; /** * Add one line of blank white space */ addBlankLine(): this; /** * Repeat single char for one row * * @param {string} [char='-'] char to repeat, default is **-** */ drawSeparator(char?: string): this; private testWhitespace; private padLeftRight; /** * Split text so it can fit into max char config * * @param {string} text text to plit * @param {number} max char, default is current max char * @return {string[]} chunked text */ chuckLines(text: string, maxLength?: number): string[]; /** * Create columned text, chuck each column * * @param {RowConfig} columns columns configuration * @return {*} {Array} chunked text */ columns(columns: RowConfig): Array; /** * Add table matrix texts to design * * @param {TableConfig} rows rows or table data generated by TableBuilder.build() * @return {*} {Array} chunked text */ addTable(rows: TableConfig): this; /** * Add automated columned line the split width will be equal / automated and handled by the native side * * @param {RowConfig} columns the required attributes is { allignment, text } * @memberof DesignBuilder */ addAutoColumn(columns: AutoRowConfig): this; /** * Add standard printable characters */ addPrintableCharacters(): this; } //# sourceMappingURL=DesignBuilder.d.ts.map