/** * Generic collapsible container component. * Can be used to wrap any content that should be expandable/collapsible. */ import { Container } from '@mariozechner/pi-tui'; import type { TUI } from '@mariozechner/pi-tui'; export interface CollapsibleOptions { /** Initial expanded state */ expanded?: boolean; /** Header text or component */ header: string | Container; /** Summary shown when collapsed */ summary?: string; /** Max lines to show when collapsed (0 = fully collapsed) */ collapsedLines?: number; /** Max lines to show when expanded */ expandedLines?: number; /** Whether to show line count in header */ showLineCount?: boolean; } export declare class CollapsibleComponent extends Container { private expanded; private header; protected summary?: string; private content; private options; private ui; constructor(options: CollapsibleOptions, ui: TUI); setContent(content: string | string[]): void; isExpanded(): boolean; setExpanded(expanded: boolean): void; toggle(): void; private updateDisplay; } /** * File viewer with collapsible content */ export declare class CollapsibleFileViewer extends CollapsibleComponent { constructor(path: string, content: string, options: Partial, ui: TUI); } /** * Diff viewer with collapsible hunks */ export declare class CollapsibleDiffViewer extends CollapsibleComponent { private oldContent; private newContent; constructor(path: string, oldContent: string, newContent: string, options: Partial, ui: TUI); private generateDiff; } /** * Command output viewer with collapsible sections */ export declare class CollapsibleCommandOutput extends CollapsibleComponent { constructor(command: string, output: string, exitCode: number, options: Partial, ui: TUI); } //# sourceMappingURL=collapsible.d.ts.map