export declare class PrintContext { private output; private indentLevel; private currentColumn; private preserveStack; /** * Write text to the output */ write(text: string): void; /** * Write text and update column tracking for newlines */ writeWithColumnTracking(text: string): void; /** * Increase indentation level */ indent(): void; /** * Decrease indentation level */ dedent(): void; /** * Enter a tag that may preserve whitespace */ enterTag(tagName: string): void; /** * Exit the current tag */ exitTag(): void; /** * Check if the output written so far ends with a whitespace character */ endsWithWhitespace(): boolean; /** * Check if we're at the start of a line */ isAtStartOfLine(): boolean; /** * Get current indentation level */ getCurrentIndentLevel(): number; /** * Get current column position */ getCurrentColumn(): number; /** * Get the current tag stack (for debugging) */ getTagStack(): string[]; /** * Get the complete output string */ getOutput(): string; /** * Reset the context for reuse */ reset(): void; }