aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
154 lines • 4.8 kB
TypeScript
/**
* AuraGlass NeuroSync System
* Brain-computer interface hooks for EEG-based attention/focus feedback and neural UI adaptation
* Part of Next-Wave Systems (10/10) - Multi-Sensory Integration
*/
import React from "react";
interface EEGSignal {
timestamp: number;
channels: {
fp1: number;
fp2: number;
f3: number;
f4: number;
c3: number;
c4: number;
p3: number;
p4: number;
o1: number;
o2: number;
};
quality: number;
}
interface NeuroMetrics {
attention: number;
relaxation: number;
meditation: number;
engagement: number;
cognitiveLoad: number;
fatigue: number;
stress: number;
flow: number;
}
interface NeuroAdaptation {
id: string;
trigger: NeuroMetrics;
adaptation: {
uiComplexity: "minimal" | "standard" | "detailed";
colorScheme: "high-contrast" | "normal" | "low-contrast";
animationIntensity: "none" | "subtle" | "normal" | "enhanced";
interactionStyle: "passive" | "standard" | "proactive";
contentDensity: "sparse" | "normal" | "dense";
cognitiveSupport: "high" | "medium" | "low";
};
confidence: number;
appliedAt?: number;
}
declare class NeuroSyncSystem {
private eegProcessor;
private adaptationEngine;
private currentMetrics;
private isConnected;
private deviceInfo;
private calibrationData;
constructor();
private getDefaultMetrics;
connectDevice(deviceType?: "muse" | "emotiv" | "neurosky" | "simulator"): Promise<boolean>;
private startSimulation;
processSignal(signal: EEGSignal): NeuroMetrics;
getCurrentMetrics(): NeuroMetrics;
getCurrentAdaptation(): NeuroAdaptation | null;
calibrateBaseline(duration?: number): Promise<void>;
private calculateAverageMetrics;
getDeviceInfo(): {
name: string;
type: string;
channels: number;
} | null;
isDeviceConnected(): boolean;
disconnect(): void;
provideFeedback(adaptationId: string, effectiveness: number): void;
}
export declare function GlassNeuroSyncProvider({ children, onMetricsUpdate, onAdaptationChange, autoConnect, }: {
children: React.ReactNode;
onMetricsUpdate?: (metrics: NeuroMetrics) => void;
onAdaptationChange?: (adaptation: NeuroAdaptation | null) => void;
autoConnect?: boolean;
}): import("react/jsx-runtime").JSX.Element;
export declare function useNeuroSync(): {
system: NeuroSyncSystem | null;
metrics: NeuroMetrics;
adaptation: NeuroAdaptation | null;
isConnected: boolean;
deviceInfo: {
name: string;
type: string;
channels: number;
} | null;
connectDevice: (type?: "muse" | "emotiv" | "neurosky" | "simulator") => Promise<boolean>;
calibrateBaseline: () => Promise<void>;
provideFeedback: (adaptationId: string, effectiveness: number) => void;
};
export declare function GlassNeuroMetricsDashboard({ className, showBrainwaves, }: {
className?: string;
showBrainwaves?: boolean;
}): import("react/jsx-runtime").JSX.Element;
export declare function GlassNeuroFeedback({ type, target, className, }: {
type: keyof NeuroMetrics;
target?: number;
className?: string;
}): import("react/jsx-runtime").JSX.Element;
export declare function useNeuroAdaptive(): {
metrics: NeuroMetrics;
adaptation: NeuroAdaptation | null;
getAdaptiveStyle: (baseStyle?: React.CSSProperties) => React.CSSProperties;
getAdaptiveClassName: (baseClassName?: string) => string;
isHighCognitiveLoad: boolean;
isInFlowState: boolean;
needsAttentionSupport: boolean;
isFatigued: boolean;
};
export declare const neuroSyncPresets: {
muse: {
sampleRate: number;
channels: string[];
filterSettings: {
highpass: number;
lowpass: number;
notch: number;
};
};
emotiv: {
sampleRate: number;
channels: string[];
filterSettings: {
highpass: number;
lowpass: number;
notch: number;
};
};
neurosky: {
sampleRate: number;
channels: string[];
filterSettings: {
highpass: number;
lowpass: number;
notch: number;
};
};
simulator: {
sampleRate: number;
channels: string[];
filterSettings: {
highpass: number;
lowpass: number;
notch: number;
};
};
};
export declare function GlassNeuroSync({ children, className, ...props }: {
children?: React.ReactNode;
className?: string;
} & React.HTMLAttributes<HTMLDivElement>): import("react/jsx-runtime").JSX.Element;
export {};
//# sourceMappingURL=GlassNeuroSync.d.ts.map