export declare class CodeBuilder {
    readonly indentString: string;
    currentIndent: number;
    buffer: string[];
    constructor(indentString?: string, currentIndent?: number);
    toString(): string;
    push(str: string): this;
    pushIndent(): this;
    line(str: string): this;
    indent(step?: number): this;
    block(start: string, end: string, fn: () => void): void;
    compose(async: boolean, expr: string, wrap: (str: string) => string): string;
    composeSync(expr: string, wrap: (str: string) => string): string;
    composeAsync(expr: string, wrap: (str: string) => string): string;
}
