/**
 * ADHD-Specific Focus Management Utilities
 *
 * Provides specialized focus management, attention support, and interaction tracking
 * optimized for ADHD and neurodivergent users in therapeutic components.
 */
export interface FocusSession {
    startTime: number;
    element: HTMLElement;
    componentType: string;
    interactionType: 'keyboard' | 'mouse' | 'touch';
    adhdPatterns: {
        rapidSwitching: boolean;
        hesitation: boolean;
        repeatInteractions: number;
    };
}
export interface AttentionMetrics {
    focusTime: number;
    switchCount: number;
    hesitationTime: number;
    repeatCount: number;
    lastActiveTime: number;
}
export interface ADHDFocusConfig {
    enableFocusTracking: boolean;
    enableAnnouncementDebouncing: boolean;
    enableHyperfocusWarning: boolean;
    enableInteractionPattern: boolean;
    debounceDelay: number;
    hyperfocusThreshold: number;
    hesitationThreshold: number;
}
/**
 * Initialize ADHD focus management system
 */
export declare function initADHDFocusManagement(userConfig?: Partial<ADHDFocusConfig>): void;
/**
 * Enhanced focus handler for ADHD users
 */
export declare function handleADHDFocus(element: HTMLElement, componentType: string, interactionType?: 'keyboard' | 'mouse' | 'touch'): FocusSession;
/**
 * Handle focus loss with ADHD considerations
 */
export declare function handleADHDBlur(componentType?: string): AttentionMetrics | null;
/**
 * Smart announcement system with ADHD-friendly debouncing
 */
export declare function announceForADHD(componentId: string, message: string, priority?: 'low' | 'medium' | 'high', force?: boolean): boolean;
/**
 * Keyboard navigation with ADHD-specific enhancements
 */
export declare function handleADHDKeyNavigation(event: KeyboardEvent, handlers: {
    onEscape?: () => void;
    onHelp?: () => void;
    onFocusNext?: () => void;
    onFocusPrevious?: () => void;
    onActivate?: () => void;
}): boolean;
/**
 * Create accessible focus indicators optimized for ADHD
 */
export declare function createADHDFocusRing(element: HTMLElement, options?: {
    color?: string;
    thickness?: number;
    offset?: number;
    animated?: boolean;
}): void;
/**
 * Remove ADHD focus indicators
 */
export declare function removeADHDFocusRing(element: HTMLElement): void;
/**
 * Check if user might be experiencing hyperfocus
 */
export declare function isInHyperfocus(componentType?: string): boolean;
/**
 * Get attention metrics for component
 */
export declare function getAttentionMetrics(componentType: string): AttentionMetrics | null;
/**
 * Get ADHD-specific interaction recommendations
 */
export declare function getADHDRecommendations(componentType: string): string[];
/**
 * CSS classes for ADHD focus management
 * These should be added to global styles
 */
export declare const adhdFocusCSS = "\n  .ck-adhd-focus {\n    outline: var(--adhd-focus-thickness, 3px) solid var(--adhd-focus-color, #0066cc) !important;\n    outline-offset: var(--adhd-focus-offset, 3px) !important;\n    box-shadow: 0 0 0 1px white, 0 0 0 calc(var(--adhd-focus-thickness, 3px) + 1px) var(--adhd-focus-color, #0066cc) !important;\n  }\n  \n  .ck-adhd-focus--animated {\n    animation: ck-adhd-focus-pulse 2s ease-in-out infinite;\n  }\n  \n  @keyframes ck-adhd-focus-pulse {\n    0%, 100% { \n      box-shadow: 0 0 0 1px white, 0 0 0 calc(var(--adhd-focus-thickness, 3px) + 1px) var(--adhd-focus-color, #0066cc);\n    }\n    50% { \n      box-shadow: 0 0 0 1px white, 0 0 0 calc(var(--adhd-focus-thickness, 3px) + 3px) var(--adhd-focus-color, #0066cc);\n    }\n  }\n  \n  .sr-only,\n  .ck-adhd-announcement {\n    position: absolute;\n    width: 1px;\n    height: 1px;\n    padding: 0;\n    margin: -1px;\n    overflow: hidden;\n    clip: rect(0, 0, 0, 0);\n    white-space: nowrap;\n    border: 0;\n  }\n  \n  @media (prefers-reduced-motion: reduce) {\n    .ck-adhd-focus--animated {\n      animation: none;\n    }\n  }\n  \n  @media (prefers-contrast: high) {\n    .ck-adhd-focus {\n      outline-color: currentColor !important;\n      box-shadow: 0 0 0 1px white, 0 0 0 calc(var(--adhd-focus-thickness, 3px) + 1px) currentColor !important;\n    }\n  }\n";
//# sourceMappingURL=adhd-focus-management.d.ts.map