/**
 * 可访问性要求标准 (WCAG 2.1 AA级)
 * 确保组件符合国际无障碍标准和企业合规要求
 */
export declare const contrastRatios: {
    readonly normalText: 4.5;
    readonly largeText: 3;
    readonly normalTextEnhanced: 7;
    readonly largeTextEnhanced: 4.5;
    readonly uiComponents: 3;
    readonly graphicalObjects: 3;
};
export declare const fontSizeRequirements: {
    readonly minimum: {
        readonly desktop: "12px";
        readonly mobile: "14px";
    };
    readonly recommended: {
        readonly bodyText: "16px";
        readonly smallText: "14px";
        readonly largeText: "18px";
    };
    readonly widget: {
        readonly big: {
            readonly size: "40px";
            readonly isAccessible: true;
            readonly category: "large";
        };
        readonly medium: {
            readonly size: "24px";
            readonly isAccessible: true;
            readonly category: "large";
        };
        readonly small: {
            readonly size: "16px";
            readonly isAccessible: true;
            readonly category: "normal";
        };
        readonly mini: {
            readonly size: "10px";
            readonly isAccessible: false;
            readonly warning: "低于最小建议尺寸";
        };
    };
};
export declare const keyboardNavigation: {
    readonly requiredKeys: {
        readonly Tab: "焦点切换到下一个可交互元素";
        readonly 'Shift+Tab': "焦点切换到上一个可交互元素";
        readonly Enter: "激活按钮或链接";
        readonly Space: "激活按钮或切换状态";
        readonly Escape: "关闭弹出层或取消操作";
        readonly ArrowKeys: "在相关元素间导航";
    };
    readonly focusManagement: {
        readonly visibleFocusIndicator: true;
        readonly logicalTabOrder: true;
        readonly focusTrapping: true;
        readonly autoFocus: "conservative";
    };
    readonly focusStyles: {
        readonly outlineWidth: "2px";
        readonly outlineStyle: "solid";
        readonly outlineColor: "var(--ring)";
        readonly outlineOffset: "2px";
        readonly minContrast: 3;
    };
};
export declare const ariaRequirements: {
    readonly roles: {
        readonly button: "button";
        readonly link: "link";
        readonly heading: "heading";
        readonly list: "list";
        readonly listitem: "listitem";
        readonly tablist: "tablist";
        readonly tab: "tab";
        readonly tabpanel: "tabpanel";
        readonly dialog: "dialog";
        readonly alert: "alert";
        readonly status: "status";
    };
    readonly requiredAttributes: {
        readonly 'aria-pressed': "切换按钮的按下状态";
        readonly 'aria-expanded': "可展开元素的展开状态";
        readonly 'aria-disabled': "元素的禁用状态";
        readonly 'aria-label': "元素的可访问名称";
        readonly 'aria-labelledby': "引用提供标签的元素ID";
        readonly 'aria-describedby': "引用提供描述的元素ID";
        readonly 'aria-hidden': "对屏幕阅读器隐藏装饰性元素";
        readonly 'aria-live': "动态内容的通知级别";
        readonly 'aria-atomic': "是否完整读出live区域";
    };
    readonly widgetAria: {
        readonly container: {
            readonly role: "region";
            readonly 'aria-label': "数据显示区域";
        };
        readonly textElement: {
            readonly 'aria-live': "polite";
            readonly 'aria-atomic': "true";
        };
        readonly statusIndicator: {
            readonly role: "status";
            readonly 'aria-live': "polite";
        };
    };
};
export declare const screenReaderSupport: {
    readonly contentStrategy: {
        readonly meaningfulText: "确保所有文本内容有意义";
        readonly descriptiveLabels: "使用描述性标签";
        readonly skipRepetitive: "跳过重复性内容";
        readonly structuredContent: "使用结构化标记";
    };
    readonly dataAnnouncement: {
        readonly numbers: "数值 + 单位 + 含义";
        readonly percentages: "百分比 + 描述";
        readonly status: "状态 + 严重程度";
        readonly changes: "变化 + 方向 + 幅度";
    };
    readonly widgetAnnouncements: {
        readonly big: "主要数值：{value} {unit}";
        readonly medium: "次要信息：{value}";
        readonly small: "辅助信息：{value}";
        readonly mini: "详细信息：{value}";
    };
};
export declare const motionAccessibility: {
    readonly respectMotionPreference: true;
    readonly reducedMotionQuery: "@media (prefers-reduced-motion: reduce)";
    readonly guidelines: {
        readonly duration: {
            readonly micro: "100-200ms";
            readonly short: "200-300ms";
            readonly medium: "300-500ms";
            readonly long: "500ms+";
        };
        readonly easing: "ease-out";
        readonly noFlashing: true;
        readonly flashThreshold: "3次/秒";
    };
};
export declare const touchTargets: {
    readonly minimum: {
        readonly width: "44px";
        readonly height: "44px";
    };
    readonly recommended: {
        readonly width: "48px";
        readonly height: "48px";
    };
    readonly spacing: {
        readonly adjacent: "8px";
    };
};
export declare class AccessibilityValidator {
    validateContrast(foreground: string, background: string, fontSize: number, fontWeight?: number): {
        isValid: boolean;
        ratio: number;
        requirement: number;
        level: 'AA' | 'AAA' | 'fail';
    };
    validateFontSize(size: string, context: 'desktop' | 'mobile'): {
        isValid: boolean;
        warning?: string;
    };
    validateTouchTarget(width: number, height: number): {
        isValid: boolean;
        warnings: string[];
    };
    private calculateContrastRatio;
}
export declare const bestPractices: {
    readonly general: readonly ["提供替代文本给所有图像", "确保键盘可以访问所有交互元素", "使用语义化HTML结构", "提供清晰的错误信息和指导", "支持缩放到200%而不丢失功能"];
    readonly widgetSpecific: readonly ["为数值变化提供语音通知", "使用适当的ARIA标签描述数据含义", "确保状态变化对屏幕阅读器可见", "在小屏幕上保持触摸目标大小", "提供数据的文本摘要"];
    readonly testing: readonly ["使用键盘测试所有功能", "使用屏幕阅读器测试内容", "验证颜色对比度", "测试动效的reduced-motion支持", "在不同缩放级别下测试"];
};
export type ContrastLevel = 'AA' | 'AAA' | 'fail';
export type FontSizeCategory = 'normal' | 'large';
export type AriaRole = keyof typeof ariaRequirements.roles;
export declare const accessibilityStandards: {
    contrastRatios: {
        readonly normalText: 4.5;
        readonly largeText: 3;
        readonly normalTextEnhanced: 7;
        readonly largeTextEnhanced: 4.5;
        readonly uiComponents: 3;
        readonly graphicalObjects: 3;
    };
    fontSizeRequirements: {
        readonly minimum: {
            readonly desktop: "12px";
            readonly mobile: "14px";
        };
        readonly recommended: {
            readonly bodyText: "16px";
            readonly smallText: "14px";
            readonly largeText: "18px";
        };
        readonly widget: {
            readonly big: {
                readonly size: "40px";
                readonly isAccessible: true;
                readonly category: "large";
            };
            readonly medium: {
                readonly size: "24px";
                readonly isAccessible: true;
                readonly category: "large";
            };
            readonly small: {
                readonly size: "16px";
                readonly isAccessible: true;
                readonly category: "normal";
            };
            readonly mini: {
                readonly size: "10px";
                readonly isAccessible: false;
                readonly warning: "低于最小建议尺寸";
            };
        };
    };
    keyboardNavigation: {
        readonly requiredKeys: {
            readonly Tab: "焦点切换到下一个可交互元素";
            readonly 'Shift+Tab': "焦点切换到上一个可交互元素";
            readonly Enter: "激活按钮或链接";
            readonly Space: "激活按钮或切换状态";
            readonly Escape: "关闭弹出层或取消操作";
            readonly ArrowKeys: "在相关元素间导航";
        };
        readonly focusManagement: {
            readonly visibleFocusIndicator: true;
            readonly logicalTabOrder: true;
            readonly focusTrapping: true;
            readonly autoFocus: "conservative";
        };
        readonly focusStyles: {
            readonly outlineWidth: "2px";
            readonly outlineStyle: "solid";
            readonly outlineColor: "var(--ring)";
            readonly outlineOffset: "2px";
            readonly minContrast: 3;
        };
    };
    ariaRequirements: {
        readonly roles: {
            readonly button: "button";
            readonly link: "link";
            readonly heading: "heading";
            readonly list: "list";
            readonly listitem: "listitem";
            readonly tablist: "tablist";
            readonly tab: "tab";
            readonly tabpanel: "tabpanel";
            readonly dialog: "dialog";
            readonly alert: "alert";
            readonly status: "status";
        };
        readonly requiredAttributes: {
            readonly 'aria-pressed': "切换按钮的按下状态";
            readonly 'aria-expanded': "可展开元素的展开状态";
            readonly 'aria-disabled': "元素的禁用状态";
            readonly 'aria-label': "元素的可访问名称";
            readonly 'aria-labelledby': "引用提供标签的元素ID";
            readonly 'aria-describedby': "引用提供描述的元素ID";
            readonly 'aria-hidden': "对屏幕阅读器隐藏装饰性元素";
            readonly 'aria-live': "动态内容的通知级别";
            readonly 'aria-atomic': "是否完整读出live区域";
        };
        readonly widgetAria: {
            readonly container: {
                readonly role: "region";
                readonly 'aria-label': "数据显示区域";
            };
            readonly textElement: {
                readonly 'aria-live': "polite";
                readonly 'aria-atomic': "true";
            };
            readonly statusIndicator: {
                readonly role: "status";
                readonly 'aria-live': "polite";
            };
        };
    };
    screenReaderSupport: {
        readonly contentStrategy: {
            readonly meaningfulText: "确保所有文本内容有意义";
            readonly descriptiveLabels: "使用描述性标签";
            readonly skipRepetitive: "跳过重复性内容";
            readonly structuredContent: "使用结构化标记";
        };
        readonly dataAnnouncement: {
            readonly numbers: "数值 + 单位 + 含义";
            readonly percentages: "百分比 + 描述";
            readonly status: "状态 + 严重程度";
            readonly changes: "变化 + 方向 + 幅度";
        };
        readonly widgetAnnouncements: {
            readonly big: "主要数值：{value} {unit}";
            readonly medium: "次要信息：{value}";
            readonly small: "辅助信息：{value}";
            readonly mini: "详细信息：{value}";
        };
    };
    motionAccessibility: {
        readonly respectMotionPreference: true;
        readonly reducedMotionQuery: "@media (prefers-reduced-motion: reduce)";
        readonly guidelines: {
            readonly duration: {
                readonly micro: "100-200ms";
                readonly short: "200-300ms";
                readonly medium: "300-500ms";
                readonly long: "500ms+";
            };
            readonly easing: "ease-out";
            readonly noFlashing: true;
            readonly flashThreshold: "3次/秒";
        };
    };
    touchTargets: {
        readonly minimum: {
            readonly width: "44px";
            readonly height: "44px";
        };
        readonly recommended: {
            readonly width: "48px";
            readonly height: "48px";
        };
        readonly spacing: {
            readonly adjacent: "8px";
        };
    };
    bestPractices: {
        readonly general: readonly ["提供替代文本给所有图像", "确保键盘可以访问所有交互元素", "使用语义化HTML结构", "提供清晰的错误信息和指导", "支持缩放到200%而不丢失功能"];
        readonly widgetSpecific: readonly ["为数值变化提供语音通知", "使用适当的ARIA标签描述数据含义", "确保状态变化对屏幕阅读器可见", "在小屏幕上保持触摸目标大小", "提供数据的文本摘要"];
        readonly testing: readonly ["使用键盘测试所有功能", "使用屏幕阅读器测试内容", "验证颜色对比度", "测试动效的reduced-motion支持", "在不同缩放级别下测试"];
    };
    AccessibilityValidator: typeof AccessibilityValidator;
};
