/** * Size of a tab for every CLI function. * Can be changed */ export declare let cliTabSize: number; /** * Print to output with process.stdout, without using console log. * @param content Content to print * @param newLine New line, default is \n\r, can be false to disable new line. */ export declare function print(content: string, newLine?: string | boolean): void; /** * Print a new line */ export declare function newLine(): void; /** * Print a removable line. * Will return a handler to change content of printed line. * Ex : let line = printLine('Hello, I will be removed') * line = line('This text replace previous text') * line = line('And again') * line('And again ...', true) // will erase and go next line * @param content Content to print. Nice printed with nicePrint. * @returns a handler to re-print the line, recursively. */ export declare function printLine(content: string): (newContent: string, last?: boolean) => any; export declare type TNicePrintOutput = 'stdout' | 'stderr' | 'return'; export interface INicePrintOptions { newLine: string | null | boolean; output: TNicePrintOutput; code: number; untab: "auto" | "last" | number | false; replaceTabs: boolean; } export declare const nicePrintFormatters: { bold: any; underline: any; strike: any; italic: any; dim: any; red: any; yellow: any; cyan: any; blue: any; green: any; purple: any; orange: any; grey: any; lite: any; white: any; invert: any; }; /** * Print nice templated string to CLI. * See example to understand how to mark your text to format it : * * Ex : nicePrint(` * {bold}I'm a text in bold * Regular text * {italic}Text in italic{/} and regular text * {red/bold}Red and bold {orange}Orange and bold * {y/b}Yellow and bold * `) * * See nicePrintFormatters to check all available keys. You can add yours like so : * Ex : nicePrintFormatters['fushia'] = chalk.keywork('fushia') * * @param template Template string to print or return nicely. * @param options See @INicePrintOptions */ export declare function nicePrint(template: string, options?: Partial): string; /** * Show a big old banner */ export declare function banner(title: string, width?: number, margin?: number, padding?: number): void; /** * Print a nice table in stdout * @param lines Two dimensions array to show as table. First dimension are lines, second dimensions are columns. * @param firstLineAreLabels Show first line in bold * @param minColumnWidths Default min widths for every columns ( for example : [ 10, 20 ] ) * @param lineStart String to print before each line * @param lineEnd String to print after each line * @param separator Separator to show between each column. */ export declare function table(lines: string[][], firstLineAreLabels?: boolean, minColumnWidths?: number[], lineStart?: string, lineEnd?: string, separator?: any): number[]; export declare function clearScreen(useProcess?: boolean): void;