/**
 * SmartPerfetto Evaluator Agent
 *
 * 评估专家，负责：
 * 1. 评估分析结果质量
 * 2. 检测发现之间的矛盾
 * 3. 评估结果完整性
 * 4. 生成改进建议
 */
import { SubAgentConfig, SubAgentContext, SubAgentResult, Finding, Evaluation, Contradiction, EvaluationFeedback, EvaluationCriteria, StageResult, PipelineStage, Intent } from '../types';
import { BaseSubAgent } from './base/baseSubAgent';
import { ModelRouter } from '../core/modelRouter';
/**
 * 评估专家实现
 */
export declare class EvaluatorAgent extends BaseSubAgent {
    private criteria;
    constructor(modelRouter: ModelRouter, config?: Partial<SubAgentConfig>, criteria?: Partial<EvaluationCriteria>);
    protected buildSystemPrompt(_context: SubAgentContext): string;
    protected buildTaskPrompt(context: SubAgentContext): string;
    protected parseResponse(response: string, _context: SubAgentContext): SubAgentResult;
    /**
     * 执行完整评估
     */
    evaluate(results: StageResult[], intent: Intent): Promise<Evaluation>;
    /**
     * 评估质量分数
     */
    assessQuality(findings: Finding[], intent: Intent): Promise<number>;
    /**
     * 检测矛盾
     */
    detectContradictions(findings: Finding[]): Promise<Contradiction[]>;
    /**
     * 评估完整性
     */
    checkCompleteness(findings: Finding[], intent: Intent): Promise<number>;
    /**
     * 生成反馈
     */
    generateFeedback(findings: Finding[], scores: {
        qualityScore: number;
        contradictions: Contradiction[];
        completenessScore: number;
    }, intent: Intent): Promise<EvaluationFeedback>;
    /**
     * 生成默认反馈
     */
    private generateDefaultFeedback;
    /**
     * 检查是否通过
     */
    private checkPassed;
    /**
     * 从上下文中收集发现
     */
    private collectFindings;
    /**
     * 从阶段结果中提取所有发现
     */
    private extractAllFindings;
    /**
     * 更新评估标准
     */
    setCriteria(criteria: Partial<EvaluationCriteria>): void;
    /**
     * 获取评估标准
     */
    getCriteria(): EvaluationCriteria;
    /**
     * 执行评估（简化版）
     */
    execute(stage: PipelineStage, context: SubAgentContext): Promise<SubAgentResult>;
}
export default EvaluatorAgent;
//# sourceMappingURL=evaluatorAgent.d.ts.map