import { ZodError } from 'zod';
import { SeoFileEntry } from './file-system-manager';
/**
 * Represents a validation error with detailed information
 */
export interface ValidationError {
    filePath: string;
    fieldPath: string;
    expected: string;
    received: string;
    message: string;
}
/**
 * Result of validation operation
 */
export interface ValidationManagerValidationResult {
    valid: boolean;
    errors: ValidationError[];
}
/**
 * Validation manager for SEO files using Zod schemas.
 * Provides detailed error messages for validation failures.
 */
export declare class ValidationManager {
    /**
     * Validates SEO file entries based on the specified mode.
     *
     * In hierarchical mode, the route field can be omitted from the JSON content
     * as it's derived from the file path.
     *
     * In simple mode, the route field is required for each item.
     *
     * @param entries - Array of SEO file entries to validate
     * @param mode - The file layout mode ('simple' or 'hierarchical')
     * @returns Validation result with any errors found
     */
    validate(entries: SeoFileEntry[], mode: 'simple' | 'hierarchical'): ValidationManagerValidationResult;
    /**
     * Formats Zod validation errors into detailed ValidationError objects.
     *
     * Each error includes:
     * - File path where the error occurred
     * - Field path using dot notation (e.g., "items.0.title")
     * - Expected type or constraint
     * - Received value
     * - Human-readable error message
     *
     * @param zodError - The Zod validation error
     * @param filePath - The file path where the error occurred
     * @returns Array of formatted validation errors
     */
    formatZodErrors(zodError: ZodError<any>, filePath: string): ValidationError[];
}
