/**
 * AgentElementValidator - Specialized validator for Agent elements
 *
 * Extends GenericElementValidator to add Agent-specific validation:
 * - V2.0 fields: goal (template/parameters), activates, tools, systemPrompt, autonomy
 * - V1.x legacy fields with deprecation warnings
 * - Complex validations: goal template/parameter consistency, autonomy conflict detection
 * - Migration suggestions for V1 agents
 *
 * @since v2.0.0 - Agentic Loop Redesign
 */
import { GenericElementValidator } from './GenericElementValidator.js';
import { ValidationResult, ElementValidationOptions } from './ElementValidator.js';
import { ValidationService } from './ValidationService.js';
import { TriggerValidationService } from './TriggerValidationService.js';
import { MetadataService } from '../MetadataService.js';
/**
 * Specialized validator for Agent elements
 */
export declare class AgentElementValidator extends GenericElementValidator {
    constructor(validationService: ValidationService, triggerValidationService: TriggerValidationService, metadataService: MetadataService);
    /**
     * Override validateCreate to add agent-specific validation
     */
    validateCreate(data: unknown, options?: ElementValidationOptions): Promise<ValidationResult>;
    /**
     * Validate V2.0 goal configuration (REQUIRED)
     *
     * Must have:
     * - template (string with {parameter} placeholders)
     * - parameters (array of parameter definitions)
     * - successCriteria (optional string[])
     *
     * Also validates template/parameter consistency.
     *
     * Architecture: Input normalization happens at GenericElementValidator boundary.
     * This validator receives pre-normalized data and validates business rules.
     */
    private validateGoal;
    /**
     * Validate goal parameters and check consistency with template
     */
    private validateGoalParameters;
    /**
     * Extract parameter placeholders from template
     * Finds all {parameterName} patterns
     */
    private extractTemplatePlaceholders;
    /**
     * Validate V2.0 activates configuration (OPTIONAL)
     *
     * Must be an object where each property is a string array.
     * Supports: personas, skills, memories, templates, ensembles
     */
    private validateActivates;
    /**
     * Validate V2.0 tools configuration (OPTIONAL)
     *
     * Must have:
     * - allowed (string[], required if tools defined)
     * - denied (string[], optional)
     */
    private validateTools;
    /**
     * Validate V2.0 system prompt (OPTIONAL)
     *
     * Must be a string, length 1-10000 characters.
     * Uses validationService for content security.
     *
     * Architecture: Input is already normalized by GenericElementValidator.
     * This validator checks business rules (length, patterns) on normalized data.
     */
    private validateSystemPrompt;
    /**
     * Validate V2.0 autonomy configuration (OPTIONAL)
     *
     * Fields:
     * - riskTolerance (enum)
     * - maxAutonomousSteps (positive integer, 0 = unlimited)
     * - requiresApproval (string[] glob patterns)
     * - autoApprove (string[] glob patterns)
     *
     * Also detects conflicts between requiresApproval and autoApprove.
     */
    private validateAutonomy;
    /**
     * Validate V2.1 resilience configuration (OPTIONAL, nested under autonomy)
     *
     * Fields:
     * - onStepLimitReached ('pause' | 'continue' | 'restart')
     * - onExecutionFailure ('pause' | 'retry' | 'restart-fresh')
     * - maxRetries (non-negative integer, default 3)
     * - maxContinuations (non-negative integer, 0 = unlimited, default 10)
     * - retryBackoff ('none' | 'linear' | 'exponential')
     * - preserveState (boolean)
     *
     * @since v2.1.0 - Agent Execution Resilience (Issue #526)
     */
    private validateResilience;
    /**
     * Validate V1.x decisionFramework (DEPRECATED)
     * Data is already normalized by GenericElementValidator
     */
    private validateDecisionFramework;
    /**
     * Validate V1.x specializations (DEPRECATED)
     * Data is already normalized by GenericElementValidator
     */
    private validateSpecializations;
    /**
     * Validate riskTolerance enum
     * Used in both V1.x (deprecated) and V2.0 autonomy config
     * Data is already normalized by GenericElementValidator
     */
    private validateRiskTolerance;
    /**
     * Validate V1.x maxConcurrentGoals (DEPRECATED)
     */
    private validateMaxConcurrentGoals;
    /**
     * Check if an agent appears to be V1.x format
     * V1 agents have decisionFramework or specializations but no goal config
     */
    private isV1Agent;
}
//# sourceMappingURL=AgentElementValidator.d.ts.map