UNPKG

watercolor-ui

Version:

A modern minimalist cross-framework component library

85 lines 1.89 kB
/** * 生成唯一ID */ export declare function generateId(prefix?: string): string; /** * 焦点管理 */ export declare class FocusManager { private previousFocus; private trapElement; /** * 保存当前焦点 */ saveFocus(): void; /** * 恢复之前的焦点 */ restoreFocus(): void; /** * 设置焦点陷阱 */ trapFocus(element: HTMLElement): void; /** * 移除焦点陷阱 */ removeTrap(): void; private handleFocusTrap; private getFocusableElements; } /** * ARIA 工具函数 */ export declare const aria: { /** * 设置ARIA属性 */ set(element: HTMLElement, attributes: Record<string, string>): void; /** * 移除ARIA属性 */ remove(element: HTMLElement, attributes: string[]): void; /** * 切换ARIA属性 */ toggle(element: HTMLElement, attribute: string, values: [string, string]): void; }; /** * 键盘导航支持 */ export declare const keyboard: { /** * 处理Arrow键导航 */ handleArrowNavigation(event: KeyboardEvent, items: HTMLElement[], currentIndex: number, options?: { loop?: boolean; vertical?: boolean; horizontal?: boolean; }): number; /** * 检查是否为激活键 */ isActivationKey(event: KeyboardEvent): boolean; }; /** * 屏幕阅读器支持 */ export declare const screenReader: { /** * 创建实时通知区域 */ createLiveRegion(priority?: "polite" | "assertive"): HTMLElement; /** * 通知屏幕阅读器 */ announce(message: string, priority?: "polite" | "assertive"): void; }; /** * 颜色对比度检查 */ export declare function checkContrast(foreground: string, background: string): { ratio: number; AA: boolean; AAA: boolean; }; //# sourceMappingURL=accessibility.d.ts.map