UNPKG

@buddhacognitivelab/theme-glassmorphic

Version:

Enhanced glassmorphic theme package with dual-mode support, advanced glass effects, interactive UI components, and gesture-based interactions

52 lines (51 loc) 1.72 kB
/** * @fileoverview Enhanced Theme Switcher - Phase 5 * Advanced theme switching with smooth transitions and multiple modes */ import React from 'react'; export type SwitcherVariant = 'toggle' | 'button' | 'dropdown' | 'slider' | 'icon' | 'floating'; export type SwitcherSize = 'small' | 'medium' | 'large'; export type TransitionStyle = 'fade' | 'slide' | 'flip' | 'morph' | 'ripple'; export type ThemeOption = 'light' | 'dark' | 'auto'; export interface EnhancedThemeSwitcherProps { /** Switcher variant */ variant?: SwitcherVariant; /** Size */ size?: SwitcherSize; /** Transition animation style */ transitionStyle?: TransitionStyle; /** Show labels */ showLabels?: boolean; /** Show icons */ showIcons?: boolean; /** Enable system theme option */ enableSystemTheme?: boolean; /** Custom icons */ icons?: { light?: React.ReactNode; dark?: React.ReactNode; auto?: React.ReactNode; }; /** Custom labels */ labels?: { light?: string; dark?: string; auto?: string; }; /** Position for floating variant */ position?: 'top-left' | 'top-right' | 'bottom-left' | 'bottom-right'; /** Disabled state */ disabled?: boolean; /** Glass effect intensity */ glassIntensity?: 'subtle' | 'moderate' | 'intense'; /** Enable haptic feedback */ enableHaptics?: boolean; /** Custom onChange handler */ onChange?: (theme: ThemeOption) => void; /** Custom styles */ style?: React.CSSProperties; /** CSS class name */ className?: string; } export declare const EnhancedThemeSwitcher: React.FC<EnhancedThemeSwitcherProps>; export default EnhancedThemeSwitcher;