import { Container } from '@earendil-works/pi-tui';
import { BashExecutionComponent } from './bash-execution.js';
export declare class ChatLog extends Container {
    private toolById;
    private bashBlocks;
    private streamingRuns;
    /** After finalizeAssistant, late tool_start can still arrive; keep the bubble to insert tools above. */
    private assistantAnchorByRunId;
    private toolsExpanded;
    private pruneOverflow;
    private dropReferences;
    private append;
    clearAll(): void;
    addSystem(text: string): void;
    addUser(text: string): void;
    /** Stream local `!command` output in a bordered block. */
    addBashExecution(command: string, ui: import('@earendil-works/pi-tui').TUI, excludeFromContext: boolean): BashExecutionComponent;
    startAssistant(text: string, runId: string): void;
    updateAssistant(text: string, runId: string): void;
    finalizeAssistant(text: string, runId: string): void;
    dropAssistant(runId: string): void;
    startTool(toolCallId: string, toolName: string, args: unknown, runId: string): void;
    updateToolResult(toolCallId: string, result: string, isError: boolean): void;
    setToolsExpanded(expanded: boolean): void;
}
