/** * Renderer: the main orchestrator that ties everything together. * Uses LogicalBuffer for content storage, transforms to visual rows for output. */ import { CellBuffer } from "./buffer.js"; import type { VNode } from "./vnode.js"; export interface RendererOptions { width: number; height: number; output?: (str: string) => void; } export declare class Renderer { private width; private height; private currentLogical; private nextLogical; private currentVisual; private nextVisual; private output; private isFirstRender; constructor(options: RendererOptions); /** * Render a VNode tree to the terminal. */ render(root: VNode): void; /** * Force a full redraw. */ forceRedraw(): void; /** * Resize the renderer. */ resize(width: number, height: number): void; /** * Get the current visual buffer (for testing). */ getCurrentBuffer(): CellBuffer; /** * Get terminal width. */ getWidth(): number; /** * Get terminal height. */ getHeight(): number; } //# sourceMappingURL=renderer.d.ts.map