/**
 * Crisis Mode Detection and Management Utility
 *
 * Provides crisis mode detection, automatic switching, and simplified interface patterns
 * for therapeutic components in high-stress or overwhelmed states.
 */
export interface CrisisMode {
    enabled: boolean;
    severity: 'mild' | 'moderate' | 'severe';
    triggers: CrisisTrigger[];
    adaptations: CrisisAdaptation[];
    timestamp: Date;
}
export interface CrisisTrigger {
    type: 'user-reported' | 'behavioral' | 'biometric' | 'time-based' | 'external';
    value: any;
    confidence: number;
    timestamp: Date;
}
export interface CrisisAdaptation {
    componentType: string;
    adaptation: 'simplify' | 'hide' | 'emphasize' | 'redirect';
    parameters: Record<string, any>;
}
export interface CrisisModeConfig {
    autoDetect: boolean;
    userOverride: boolean;
    adaptationLevel: 'minimal' | 'moderate' | 'maximum';
    timeoutMinutes: number;
    emergencyContacts: boolean;
}
/**
 * Crisis mode detection patterns
 */
export declare const crisisDetectionPatterns: {
    rapidClicking: (clickCount: number, timeWindow: number) => boolean;
    taskSwitching: (switchCount: number, timeWindow: number) => boolean;
    errorRepeating: (errorCount: number, timeWindow: number) => boolean;
    hesitationPattern: (hoverTime: number, clickDelay: number) => boolean;
    abandonmentPattern: (partialInputs: number, timeWindow: number) => boolean;
    lateNightUsage: () => boolean;
    keyboardMashing: (keyPressRate: number) => boolean;
    mouseShaking: (movementVariance: number) => boolean;
};
/**
 * Activate crisis mode with specified trigger
 */
export declare function activateCrisisMode(trigger: CrisisTrigger, severity?: CrisisMode['severity']): void;
/**
 * Deactivate crisis mode
 */
export declare function deactivateCrisisMode(reason?: 'user' | 'timeout' | 'external'): void;
/**
 * Check if crisis mode is currently active
 */
export declare function isCrisisModeActive(): boolean;
/**
 * Get current crisis mode severity
 */
export declare function getCrisisModeSeverity(): CrisisMode['severity'] | null;
/**
 * Get crisis mode state (reactive)
 */
export declare function getCrisisModeState(): CrisisMode;
/**
 * Update crisis mode configuration
 */
export declare function updateCrisisConfig(newConfig: Partial<CrisisModeConfig>): void;
/**
 * Monitor behavioral patterns for crisis detection
 */
export declare function monitorBehavioralPatterns(): void;
/**
 * Get crisis mode adaptations for a specific component type
 */
export declare function getAdaptationsForComponent(componentType: string): CrisisAdaptation[];
/**
 * Apply crisis mode styles to component
 */
export declare function applyCrisisModeStyles(baseClasses: string, componentType: string): string;
/**
 * Check if a component should be shown in crisis mode
 */
export declare function shouldShowInCrisisMode(componentType: string, importance?: 'essential' | 'important' | 'optional'): boolean;
/**
 * Get simplified options for crisis mode
 */
export declare function getSimplifiedOptions<T>(options: T[], componentType: string): T[];
/**
 * Manual crisis mode toggle for user control
 */
export declare function toggleCrisisMode(): void;
/**
 * Report user crisis state
 */
export declare function reportCrisisState(severity: CrisisMode['severity'], userInput?: string): void;
/**
 * Initialize crisis mode monitoring
 */
export declare function initializeCrisisMode(config?: Partial<CrisisModeConfig>): void;
/**
 * Crisis mode CSS classes that should be added to global styles
 */
export declare const crisisModeCSSClasses = "\n  .ck-crisis-simple {\n    --ck-space: 1.5;\n    --ck-text-scale: 1.2;\n    --ck-shadow: none;\n    --ck-radius: 0.25rem;\n  }\n  \n  .ck-crisis-large-text {\n    --ck-text-scale: 1.4;\n    font-weight: var(--ck-font-medium);\n  }\n  \n  .ck-crisis-high-contrast {\n    --ck-bg-primary: #ffffff;\n    --ck-bg-secondary: #f8f9fa;\n    --ck-text-primary: #000000;\n    --ck-border: #333333;\n  }\n  \n  .ck-crisis-hidden {\n    display: none !important;\n  }\n  \n  .ck-crisis-emphasized {\n    border: 2px solid var(--ck-accent);\n    background: color-mix(in srgb, var(--ck-accent) 10%, transparent);\n    box-shadow: 0 0 0 4px color-mix(in srgb, var(--ck-accent) 20%, transparent);\n  }\n  \n  .ck-crisis-calming {\n    --ck-accent: #4ecdc4;\n    --ck-success: #45b7aa;\n    --ck-bg-secondary: color-mix(in srgb, #4ecdc4 5%, transparent);\n  }\n  \n  .sr-only {\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";
//# sourceMappingURL=crisis-mode.d.ts.map