/**
 * @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;
