/** Assignment of a spec to an agent in a simulated execution. */
export interface AgentAssignment {
    agentId: number;
    specId: string;
    startHour: number;
    endHour: number;
}
/** Result of a simulated parallel execution. */
export interface ExecutionTimeline {
    agentAssignments: AgentAssignment[];
    totalHours: number;
    criticalPath: string[];
    ganttChart: string;
}
/** Result of the critical_path_analyzer tool. */
export interface CriticalPathResult {
    criticalPath: string[];
    totalHours: number;
    longestChainLength: number;
}
/** Result of the parallel_efficiency_score tool. */
export interface ParallelEfficiencyResult {
    score: number;
    totalSpecHours: number;
    totalAgentHours: number;
    numAgents: number;
    interpretation: string;
}
/** A single scheduling suggestion from optimize_spec_scheduling. */
export interface SchedulingOptimization {
    order: string[];
    expectedIdleHours: number;
    suggestion: string;
}
/** Input for simulate_parallel_execution. */
export interface SimulateParallelInput {
    projectPath: string;
    specIds: string[];
    numAgents: number;
}
/** Input for critical_path_analyzer. */
export interface CriticalPathInput {
    projectPath: string;
    specIds?: string[];
}
/** Input for parallel_efficiency_score. */
export interface ParallelEfficiencyInput {
    projectPath: string;
    specIds: string[];
    numAgents: number;
}
/** Input for optimize_spec_scheduling. */
export interface OptimizeSchedulingInput {
    projectPath: string;
    specIds?: string[];
    numAgents?: number;
}
//# sourceMappingURL=spec-scheduler.d.ts.map