aura-glass
Version:
A comprehensive glassmorphism design system for React applications with 142+ production-ready components
52 lines • 2.08 kB
TypeScript
import React from 'react';
import { type GlassOptions } from '../core/mixins/glassMixins';
export interface GlassOptimizationConfig {
enableAdaptiveBlur?: boolean;
enablePerformanceMode?: boolean;
enableAccessibilityMode?: boolean;
enableBatching?: boolean;
maxConcurrentAnimations?: number;
throttleAnimations?: boolean;
}
export interface OptimizedGlassStyles {
base: React.CSSProperties;
hover: React.CSSProperties;
focus: React.CSSProperties;
disabled: React.CSSProperties;
loading: React.CSSProperties;
}
/**
* Comprehensive glass optimization hook that adapts to device capabilities and user preferences
*/
export declare function useGlassOptimization(baseOptions?: GlassOptions, config?: GlassOptimizationConfig): {
optimizedOptions: GlassOptions;
optimizedStyles: OptimizedGlassStyles;
performanceMode: "low" | "high" | "balanced";
isHighPerformance: boolean;
isLowPerformance: boolean;
shouldReduceEffects: boolean;
shouldUseHighContrast: boolean;
executeAnimation: (animationFn: () => void) => void;
batchAnimation: (animationFn: () => void) => void;
activeAnimations: number;
metrics: import("./useEnhancedPerformance").PerformanceMetrics | null;
};
/**
* Hook for optimized glass component rendering
*/
export declare function useOptimizedGlassComponent<P extends object>(Component: React.ComponentType<P>, glassOptions?: GlassOptions, optimizationConfig?: GlassOptimizationConfig): React.MemoExoticComponent<React.ForwardRefExoticComponent<React.PropsWithoutRef<P> & React.RefAttributes<any>>>;
/**
* Hook for adaptive component loading based on performance
*/
export declare function useAdaptiveComponentLoading<T>(heavyComponent: () => Promise<{
default: React.ComponentType<T>;
}>, lightComponent: React.ComponentType<T>, threshold?: {
memoryUsage?: number;
frameRate?: number;
networkSpeed?: string[];
}): {
Component: React.ComponentType<T> | null;
isLoading: boolean;
error: Error | null;
};
//# sourceMappingURL=useGlassOptimization.d.ts.map