/** * Session type definitions */ import type { AgentResponse } from './response.js'; import type { Status } from './status.js'; type SessionAgentStatus = 'pending' | Status; /** * Session state for workflow execution */ export interface SessionState { task: string; projectDir: string; iteration: number; maxSteps: number; coderStatus: SessionAgentStatus; architectStatus: SessionAgentStatus; supervisorStatus: SessionAgentStatus; history: AgentResponse[]; context: string; } /** * Create a new session state */ export declare function createSessionState(task: string, projectDir: string, options?: Partial>): SessionState; /** * Conversation message for interactive mode */ export interface ConversationMessage { role: 'user' | 'assistant'; content: string; timestamp: string; } /** * Create a new conversation message */ export declare function createConversationMessage(role: 'user' | 'assistant', content: string): ConversationMessage; /** * Interactive session state */ export interface InteractiveSession { projectDir: string; context: string; sessionId: string | null; messages: ConversationMessage[]; userApprovedTools: string[]; currentWorkflow: string; } /** * Create a new interactive session */ export declare function createInteractiveSession(projectDir: string, options?: Partial>): InteractiveSession; export {}; //# sourceMappingURL=session.d.ts.map