/**
 * PersonaElementValidator - Specialized validator for persona elements
 *
 * Restores and extends the original PersonaValidator functionality including:
 * - Content length quality checks (min 50 chars, warn if >5000)
 * - Age rating validation
 * - Improvement suggestions
 * - Validation report generation
 *
 * This validator provides persona-specific validation logic while using
 * the shared validation services for security-first patterns.
 */
import { ValidationService } from './ValidationService.js';
import { TriggerValidationService } from './TriggerValidationService.js';
import { MetadataService } from '../MetadataService.js';
import { ValidationResult, ValidationReport, ElementValidationOptions, MetadataValidationOptions } from './ElementValidator.js';
import { GenericElementValidator } from './GenericElementValidator.js';
/**
 * Specialized validator for persona elements
 */
export declare class PersonaElementValidator extends GenericElementValidator {
    constructor(validationService: ValidationService, triggerValidationService: TriggerValidationService, metadataService: MetadataService);
    /**
     * Validate data for persona creation
     * Extends base validation with persona-specific checks
     */
    validateCreate(data: unknown, options?: ElementValidationOptions): Promise<ValidationResult>;
    /**
     * Validate metadata with persona-specific rules
     */
    validateMetadata(metadata: unknown, options?: MetadataValidationOptions): Promise<ValidationResult>;
    /**
     * Generate a comprehensive validation report for a persona
     * Restores original PersonaValidator report generation
     */
    generateReport(element: unknown): Promise<ValidationReport>;
    /**
     * Validate age rating
     */
    private validateAgeRating;
    /**
     * Suggest improvements for a persona
     * Restores original PersonaValidator.suggestImprovements functionality
     */
    private suggestImprovements;
    /**
     * Check if a persona name is valid
     * Restores original PersonaValidator.isValidPersonaName functionality
     */
    isValidPersonaName(name: string): boolean;
    /**
     * Calculate a quality score specific to personas (0-100)
     */
    private calculatePersonaQualityScore;
}
//# sourceMappingURL=PersonaElementValidator.d.ts.map