@buddhacognitivelab/theme-glassmorphic
Version:
Enhanced glassmorphic theme package with dual-mode support, advanced glass effects, interactive UI components, and gesture-based interactions
32 lines (31 loc) • 1.15 kB
TypeScript
/**
* @fileoverview Glassmorphic Button Component
* A button component with glassmorphic styling and multiple variants
*/
import React from 'react';
import type { ComponentSize, ComponentVariant, GlassIntensity } from '../../types/theme';
export interface ButtonProps extends Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'onAnimationStart' | 'onDrag' | 'onDragEnd' | 'onDragStart'> {
/** Button variant */
variant?: ComponentVariant;
/** Button size */
size?: ComponentSize;
/** Glass effect intensity */
glassIntensity?: GlassIntensity;
/** Whether button is in loading state */
loading?: boolean;
/** Whether button should take full width */
fullWidth?: boolean;
/** Icon to display before text */
startIcon?: React.ReactNode;
/** Icon to display after text */
endIcon?: React.ReactNode;
/** Custom className */
className?: string;
/** Children content */
children?: React.ReactNode;
}
/**
* Glassmorphic Button Component
*/
export declare const Button: React.ForwardRefExoticComponent<ButtonProps & React.RefAttributes<HTMLButtonElement>>;
export default Button;