/** * tui-draw.ts — Rendering custom ANSI sin React/Ink. * * Estrategia: full-screen redraw por frame. * 1. Ocultar cursor (sin flicker visual) * 2. Posicionar cursor en cada fila explícitamente con \x1b[row;colH * 3. Escribir el contenido de esa fila (padded a ancho correcto) * 4. Mostrar cursor y posicionarlo en el input * * Todo el output pasa por `out()` que acumula en un buffer y hace * un único write() al final del frame — minimiza llamadas al OS. */ import type { AppState } from './tui-repl.js'; export declare const SIDEBAR_W = 36; export declare const CHROME_ROWS = 5; /** * Dibuja una scrollbar vertical en la columna `col`. * offsetFromBottom=0 → thumb al fondo (live), offsetFromBottom=max → thumb arriba. */ export declare function drawScrollbar(startRow: number, height: number, col: number, totalLines: number, visibleLines: number, offsetFromBottom: number): void; export declare function drawFrame(state: AppState): void; /** Fila de cada header de sección en el último frame. Se usa para detectar clicks. */ export declare const lastSidebarHeaderRows: Map; /** Cuenta cuántas líneas tendría el sidebar si no hubiera límite de altura */ export declare function countSidebarLines(state: AppState): number; export declare function drawBanner(version: string, authStatus: { anthropic: boolean; openai: boolean; google: boolean; }, cwd: string, resumedInfo?: { sessionId: string; turns: number; }): void; //# sourceMappingURL=tui-draw.d.ts.map