@buddhacognitivelab/theme-glassmorphic
Version:
Enhanced glassmorphic theme package with dual-mode support, advanced glass effects, interactive UI components, and gesture-based interactions
45 lines (44 loc) • 1.69 kB
TypeScript
/**
* @fileoverview Enhanced Button Component - Phase 4
* Dual-mode glassmorphic button with advanced theme support
*/
import React from 'react';
import { MotionProps } from 'framer-motion';
export interface EnhancedButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, keyof MotionProps> {
/** Button variant with enhanced options */
variant?: 'primary' | 'secondary' | 'outline' | 'ghost' | 'link' | 'glass' | 'gradient';
/** Button size */
size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
/** Glass effect intensity */
glassIntensity?: 'subtle' | 'prominent' | 'frosted' | 'crystal' | 'ethereal';
/** Glass depth level */
glassDepth?: 'surface' | 'elevated' | 'floating' | 'modal';
/** Loading state */
loading?: boolean;
/** Full width button */
fullWidth?: boolean;
/** Start icon */
startIcon?: React.ReactNode;
/** End icon */
endIcon?: React.ReactNode;
/** Enable enhanced hover effects */
enhancedHover?: boolean;
/** Enable theme-adaptive styling */
themeAdaptive?: boolean;
/** Custom glass tint override */
glassTint?: string;
/** Enable gradient border */
gradientBorder?: boolean;
/** Animation preset */
animation?: 'none' | 'subtle' | 'smooth' | 'bounce' | 'elastic';
/** Button content */
children?: React.ReactNode;
}
/**
* Enhanced Button Component
*
* A sophisticated glassmorphic button with dual-mode theme support,
* advanced glass effects, and enhanced interactive states.
*/
export declare const EnhancedButton: React.ForwardRefExoticComponent<EnhancedButtonProps & React.RefAttributes<HTMLButtonElement>>;
export default EnhancedButton;