import { Query } from "../query/00-query";
export interface A11yRule {
    attributes: string[];
    check: RuleCheckEnum;
    criterion: string;
    wcag: string;
    id: string;
    elementType: string;
    query: Query;
    description?: string;
    help?: string | string[];
    shouldNotExist: boolean;
}
export declare class AutoCheckA11yRule implements A11yRule {
    attributes: string[];
    check: RuleCheckEnum;
    criterion: string;
    wcag: string;
    id: string;
    elementType: string;
    query: Query;
    description?: string;
    help?: string | string[];
    shouldNotExist: boolean;
    static from(input: {
        attributes?: string[];
        criterion: string;
        wcag: string;
        id: string;
        elementType: string;
        query: Query;
        description?: string;
        help?: string | string[];
        shouldNotExist?: boolean;
    }): AutoCheckA11yRule & {
        attributes?: string[];
        criterion: string;
        wcag: string;
        id: string;
        elementType: string;
        query: Query;
        description?: string;
        help?: string | string[];
        shouldNotExist?: boolean;
    };
}
export declare class ManualCheckA11yRule implements A11yRule {
    attributes: string[];
    check: RuleCheckEnum;
    criterion: string;
    wcag: string;
    id: string;
    elementType: string;
    query: Query;
    description?: string;
    help?: string | string[];
    shouldNotExist: boolean;
    static from(input: {
        attributes?: string[];
        criterion: string;
        wcag: string;
        id: string;
        elementType: string;
        query: Query;
        description?: string;
        help?: string;
        shouldNotExist?: boolean;
    }): ManualCheckA11yRule & {
        attributes?: string[];
        criterion: string;
        wcag: string;
        id: string;
        elementType: string;
        query: Query;
        description?: string;
        help?: string;
        shouldNotExist?: boolean;
    };
}
export declare enum RuleCheckEnum {
    MANUAL = "MANUAL",
    AUTO = "AUTO"
}
export declare enum CustomFilter {
    DOCTYPE = "$DOCTYPE",
    FORM_FIELD = "$FORMFIELD"
}
export declare enum RuleTypeEnum {
    TAG = "TAG",
    ROLE = "ROLE",
    COLOR = "COLOR"
}
