import React from "react";
export interface GlassToggleProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onClick"> {
    /**
     * Whether toggle is pressed/active
     */
    pressed?: boolean;
    /**
     * Default pressed state
     */
    defaultPressed?: boolean;
    /**
     * Callback when pressed state changes
     */
    onPressedChange?: (pressed: boolean) => void;
    /**
     * Toggle size
     */
    size?: "sm" | "md" | "lg";
    /**
     * Toggle variant
     */
    variant?: "default" | "outline" | "ghost";
    /**
     * Whether toggle is disabled
     */
    disabled?: boolean;
    /**
     * Toggle content
     */
    children?: React.ReactNode;
    /**
     * Left icon
     */
    leftIcon?: React.ReactNode;
    /**
     * Right icon
     */
    rightIcon?: React.ReactNode;
    /**
     * Custom className
     */
    className?: string;
    /**
     * Toggle shape
     */
    shape?: "glass-radius-md" | "square" | "circle";
    /**
     * Animation type
     */
    animation?: "none" | "scale" | "slide";
}
export interface GlassToggleGroupProps {
    /**
     * Selected toggle values
     */
    value?: string[];
    /**
     * Default selected values
     */
    defaultValue?: string[];
    /**
     * Callback when selection changes
     */
    onValueChange?: (value: string[]) => void;
    /**
     * Toggle group type
     */
    type?: "single" | "multiple";
    /**
     * Whether group is disabled
     */
    disabled?: boolean;
    /**
     * Toggle group orientation
     */
    orientation?: "horizontal" | "vertical";
    /**
     * Group size
     */
    size?: "sm" | "md" | "lg";
    /**
     * Group variant
     */
    variant?: "default" | "outline" | "ghost";
    /**
     * Children (GlassToggle components)
     */
    children: React.ReactNode;
    /**
     * Custom className
     */
    className?: string;
}
export interface GlassToggleGroupItemProps extends Omit<GlassToggleProps, "pressed" | "onPressedChange"> {
    /**
     * Toggle value
     */
    value: string;
}
/**
 * GlassToggle component
 * A glassmorphism toggle button
 */
export declare const GlassToggle: React.ForwardRefExoticComponent<GlassToggleProps & React.RefAttributes<HTMLButtonElement>>;
/**
 * GlassToggleGroup component
 * A group of toggle buttons
 */
export declare const GlassToggleGroup: React.FC<GlassToggleGroupProps>;
/**
 * GlassToggleGroupItem component
 * Individual toggle item within a group
 */
export declare const GlassToggleGroupItem: React.FC<GlassToggleGroupItemProps>;
/**
 * Hook for managing toggle state
 */
export declare const useToggle: (initialPressed?: boolean) => {
    pressed: boolean;
    setPressed: React.Dispatch<React.SetStateAction<boolean>>;
    toggle: () => void;
    onPressedChange: React.Dispatch<React.SetStateAction<boolean>>;
};
/**
 * Hook for managing toggle group state
 */
export declare const useToggleGroup: (initialValue?: string[]) => {
    value: string[];
    setValue: React.Dispatch<React.SetStateAction<string[]>>;
    onValueChange: React.Dispatch<React.SetStateAction<string[]>>;
    toggle: (itemValue: string) => void;
};
//# sourceMappingURL=GlassToggle.d.ts.map