/**
 * 数据验证器 - 核心版本
 * 负责验证KiCad数据结构的完整性和正确性
 */
import { KiCadSymbolLib, KiCadSymbol, ValidationResult } from './types.js';
/**
 * 验证规则配置
 */
export interface ValidationConfig {
    /** 是否检查必需字段 */
    checkRequiredFields?: boolean;
    /** 是否检查数据类型 */
    checkDataTypes?: boolean;
    /** 是否检查数值范围 */
    checkValueRanges?: boolean;
    /** 是否检查引用完整性 */
    checkReferenceIntegrity?: boolean;
    /** 是否启用严格模式 */
    strictMode?: boolean;
}
/**
 * 验证器类
 */
export declare class KiCadValidator {
    private config;
    constructor(config?: ValidationConfig);
    /**
     * 验证完整的符号库
     * @param symbolLib 符号库数据
     * @returns 验证结果
     */
    validateSymbolLib(symbolLib: KiCadSymbolLib): ValidationResult;
    /**
     * 验证单个符号
     * @param symbol 符号数据
     * @param path 路径前缀
     * @returns 验证结果
     */
    validateSymbol(symbol: KiCadSymbol, path?: string): ValidationResult;
    /**
     * 验证根级别字段
     */
    private validateRootFields;
    /**
     * 验证符号字段
     */
    private validateSymbolFields;
    /**
     * 验证属性
     */
    private validateProperty;
    /**
     * 验证引脚
     */
    private validatePin;
    /**
     * 验证图形元素
     */
    private validateGraphic;
    /**
     * 检查符号完整性
     */
    private checkSymbolIntegrity;
    /**
     * 检查重复的符号名称
     */
    private checkDuplicateSymbolNames;
    /**
     * 生成改进建议
     */
    private generateSuggestions;
    /**
     * 辅助方法：检查版本格式
     */
    private isValidVersion;
    /**
     * 辅助方法：检查是否为常见属性
     */
    private isCommonProperty;
    /**
     * 辅助方法：检查引脚类型有效性
     */
    private isValidPinType;
    /**
     * 辅助方法：检查引脚形状有效性
     */
    private isValidPinShape;
    /**
     * 辅助方法：检查图形类型有效性
     */
    private isValidGraphicType;
    /**
     * 辅助方法：查找数组中的重复项
     */
    private findDuplicates;
}
