UNPKG

console-gui-tools

Version:

A simple library to draw option menu, text popup or other widgets and layout on a Node.js console.

96 lines 3.18 kB
import { SimplifiedStyledElement, StyledElement } from "./Utils.js"; /** * @class PageBuilder * @description Defines a new page: * It's a sort of collection of styled rows. * @param {number} rowsPerPage - The number of rows per page. Default is 100. Useful for scrolling. * * @export * @class PageBuilder */ export declare class PageBuilder { rowsPerPage: number; scrollIndex: number; content: StyledElement[][]; constructor(rowsPerPage?: number); /** * @description Add a new styled row to the page. * @param {parameters<object>} row - The styled row to add. * @returns {PageBuilder} * @memberOf PageBuilder * @example * page.addRow({ text: 'Hello World', color: 'white' }) * page.addRow({ text: 'Hello World', color: 'white' }, { text: 'Hello World', color: 'white' }) */ addRow(...args: SimplifiedStyledElement[]): PageBuilder; /** * @description Add an empty row to the page. (like <br /> in HTML) * @param {number} [count=1] - The number of empty rows to add. * @returns {PageBuilder} * @memberOf PageBuilder * @example page.addEmptyRow() * page.addEmptyRow(2) */ addSpacer(height?: number): PageBuilder; /** * @description Returns the content of the page. * @returns {Array<Array<object>>} * @memberOf PageBuilder * @example page.getContent() */ getContent(): StyledElement[][]; /** * @description Returns the height of the page. * @returns {number} * @memberOf PageBuilder * @example page.getPageHeight() */ getPageHeight(): number; /** * @description Returns the height of the viewed page. It excludes the rows that are not visible. * @returns {number} * @memberOf PageBuilder * @example page.getViewedPageHeight() // returns the height of the page that is visible */ getViewedPageHeight(): number; /** * @description Changes the index of the scroll bar. * @param {number} index - The index of the scroll bar. * @returns {PageBuilder} * @memberOf PageBuilder * @example page.setScrollIndex(10) */ setScrollIndex(index: number): PageBuilder; /** * @description Changes the number of rows per page. * @param {number} rowsPerPage - The number of rows per page. * @returns {PageBuilder} * @memberOf PageBuilder * @example page.setRowsPerPage(10) */ setRowsPerPage(rpp: number): PageBuilder; /** * @description Increases the index of the scroll bar. * @returns {PageBuilder} * @memberOf PageBuilder * @example page.increaseScrollIndex() */ increaseScrollIndex(): PageBuilder; /** * @description Decreases the index of the scroll bar. * @returns {PageBuilder} * @memberOf PageBuilder * @example page.increaseScrollIndex() */ decreaseScrollIndex(): PageBuilder; /** * @description Clears the page. * @returns {PageBuilder} * @memberOf PageBuilder * @example page.clear() * @since 1.2.0 */ clear(): PageBuilder; } export default PageBuilder; //# sourceMappingURL=PageBuilder.d.ts.map