import { CommandResult } from './command-results'; import { CommandStorage, StoredCommand } from './storage'; import { SegmentStack } from './segment-stack'; export interface CitadelState { currentInput: string; isEnteringArg: boolean; output: OutputItem[]; history: { commands: StoredCommand[]; position: number | null; storage?: CommandStorage; }; } export interface CitadelActions { setCurrentInput: (input: string) => void; setIsEnteringArg: (isEntering: boolean) => void; addOutput: (output: OutputItem) => void; executeCommand: () => Promise; clearHistory: () => Promise; } export declare class OutputItem { private static idCounter; readonly id: string; readonly timestamp: number; readonly command: string[]; result: CommandResult; constructor(segmentStack: SegmentStack, result?: CommandResult); }