/**
 * Session type definitions
 */
/**
 * Create a new session state
 */
export function createSessionState(task, projectDir, options) {
    return {
        task,
        projectDir,
        iteration: 0,
        maxSteps: 10,
        coderStatus: 'pending',
        architectStatus: 'pending',
        supervisorStatus: 'pending',
        history: [],
        context: '',
        ...options,
    };
}
/**
 * Create a new conversation message
 */
export function createConversationMessage(role, content) {
    return {
        role,
        content,
        timestamp: new Date().toISOString(),
    };
}
/**
 * Create a new interactive session
 */
export function createInteractiveSession(projectDir, options) {
    return {
        projectDir,
        context: '',
        sessionId: null,
        messages: [],
        userApprovedTools: [],
        currentWorkflow: 'default',
        ...options,
    };
}
//# sourceMappingURL=session.js.map