/**
 * CLI-side API Response Type Definitions
 * Issue #518: [DR1-06] All types include Mirrors comments for server-side traceability
 *
 * These types mirror server-side response shapes. Phase 2 will migrate to
 * shared types in src/types/api-contracts.ts.
 */
export interface WorktreeListResponse {
    worktrees: WorktreeItem[];
    repositories: unknown[];
}
export interface WorktreeItem {
    id: string;
    name: string;
    cliToolId?: string;
    isSessionRunning?: boolean;
    isWaitingForResponse?: boolean;
    isProcessing?: boolean;
    sessionStatusByCli?: Partial<Record<string, {
        isRunning: boolean;
        isWaitingForResponse: boolean;
        isProcessing: boolean;
    }>>;
}
export interface CurrentOutputResponse {
    isRunning: boolean;
    isComplete: boolean;
    isPromptWaiting: boolean;
    isGenerating: boolean;
    content: string;
    fullOutput: string;
    realtimeSnippet: string;
    lineCount: number;
    lastCapturedLine: number;
    promptData: PromptData | null;
    autoYes: {
        enabled: boolean;
        expiresAt: number | null;
        stopReason?: string;
    };
    thinking: boolean;
    thinkingMessage: string | null;
    cliToolId?: string;
    isSelectionListActive: boolean;
    lastServerResponseTimestamp: number | null;
    serverPollerActive: boolean;
    /** Issue #520: Session status from detectSessionStatus() */
    sessionStatus?: 'idle' | 'ready' | 'running' | 'waiting';
    /** Issue #520: Reason string from detectSessionStatus() or 'session_not_running' */
    sessionStatusReason?: string;
}
export interface PromptData {
    type: string;
    question: string;
    options?: unknown[];
    status?: string;
    [key: string]: unknown;
}
export interface PromptResponseResult {
    success: boolean;
    answer: string;
    reason?: string;
}
/** wait exit 10 CLI extended output type */
export interface WaitPromptOutput {
    worktreeId: string;
    cliToolId: string;
    type: string;
    question: string;
    options: unknown[];
    status: string;
    [key: string]: unknown;
}
export interface ChatMessage {
    id?: number;
    worktreeId: string;
    role: string;
    content: string;
    cliToolId?: string;
    createdAt?: string;
}
//# sourceMappingURL=api-responses.d.ts.map