/** * Component for displaying bash command execution with streaming output. * [WHO]: BashExecutionComponent * [FROM]: @catui/tui, strip-ansi * [TO]: Consumed by modes/interactive/components/index.ts, modes/interactive/controllers/chat-renderer.ts, modes/interactive/controllers/session-command-handlers.ts, modes/interactive/interactive-mode.ts * [HERE]: modes/interactive/components/bash-execution.ts - owned by modes/interactive/AGENT.md */ import { Container, type TUI } from "@catui/tui"; import { type TruncationResult } from "../../../core/tools/truncate.js"; export declare class BashExecutionComponent extends Container { private nextContent; private command; private outputLines; private status; private exitCode; private loader; private truncationResult?; private fullOutputPath?; private expanded; private contentContainer; private ui; constructor(command: string, ui: TUI, excludeFromContext?: boolean); private renderLegacy; private invalidateLegacy; render(width: number): string[]; /** * Set whether the output is expanded (shows full output) or collapsed (preview only). */ setExpanded(expanded: boolean): void; invalidate(): void; appendOutput(chunk: string): void; setComplete(exitCode: number | undefined, cancelled: boolean, truncationResult?: TruncationResult, fullOutputPath?: string): void; private updateDisplay; /** * Get the raw output for creating BashExecutionMessage. */ getOutput(): string; /** * Get the command that was executed. */ getCommand(): string; }