export default LineBuilder;
/**
 * Useful for creating formatted snippets of code
 */
declare class LineBuilder {
    /**
     * @param {string} text
     * @param {string} [line_separator] defaults to new-line character
     * @returns {LineBuilder}
     */
    static fromText(text: string, line_separator?: string): LineBuilder;
    /**
     * Current indentation level
     * Mainly intended for testing
     * @return {number}
     */
    get indentation(): number;
    /**
     * TODO replace with indent string, that is tab, space or any combination or something else entirely
     * @type {number}
     */
    indentSpaces: number;
    /**
     * Number of lines
     * @return {number}
     */
    get count(): number;
    /**
     * Substring test of per-line basis. A match can only span a single line, so multi-line matches will not be found.
     * @return {boolean}
     * @param {string} term
     */
    containsSubstring(term: string): boolean;
    /**
     *
     * @returns {LineBuilder}
     */
    indent(): LineBuilder;
    /**
     * NOTE: clamps indentation to 0 (can't go negative)
     * @returns {LineBuilder}
     */
    dedent(): LineBuilder;
    /**
     *
     * @param {string} line_text
     * @returns {LineBuilder}
     */
    add(line_text: string): LineBuilder;
    /**
     *
     * @param {LineBuilder} lines
     */
    addLines(lines: LineBuilder): void;
    clear(): void;
    /**
     * Renders out an indented string of lines
     * @returns {string}
     */
    build(): string;
    toString(): string;
    #private;
}
//# sourceMappingURL=LineBuilder.d.ts.map