import { RegistryInterface } from '@subscan/widget-runtime';
import { IAppModel } from '../AppModel/IAppModel';
import { ISchemaValidator, ValidatorRule, ValidateErrorResult } from './interfaces';
export declare class SchemaValidator implements ISchemaValidator {
    private registry;
    private dependencyNames?;
    private result;
    private traitRules;
    private componentRules;
    private allComponentsRules;
    private propertiesRules;
    private componentIdSpecMap;
    private ajv;
    private validatorMap;
    constructor(registry: RegistryInterface, dependencyNames?: string[] | undefined);
    addRules(rules: ValidatorRule[]): void;
    validate(appModel: IAppModel): ValidateErrorResult[];
    genComponentIdSpecMap(appModel: IAppModel): void;
    fix(): void;
    private initAjv;
}
