/** * Task Planning - breaks down complex tasks into subtasks */ export interface SubTask { id: number; description: string; status: 'pending' | 'in_progress' | 'completed' | 'failed'; dependencies?: number[]; } export interface TaskPlan { originalPrompt: string; tasks: SubTask[]; estimatedIterations: number; } /** Per-run provider selection. Used by custom bots without mutating config. */ export interface TaskPlannerRuntime { providerId?: string; model?: string; protocol?: 'openai' | 'anthropic'; } /** * Ask AI to break down a complex task into subtasks */ export declare function planTasks(userPrompt: string, projectContext: { name: string; type: string; structure: string; }, runtime?: TaskPlannerRuntime): Promise; /** * Check if a task's dependencies are completed */ export declare function canStartTask(task: SubTask, allTasks: SubTask[]): boolean; /** * Get next task to execute */ export declare function getNextTask(tasks: SubTask[]): SubTask | null; /** * Format task plan for display */ export declare function formatTaskPlan(plan: TaskPlan): string;