import React from 'react';
import { IconName } from '../../atoms/Icons';
import { type ComposableProps } from '../../../lib/slot';
import { type GlassVariant } from '../../../lib/glass';
export type ToggleSize = 'sm' | 'md' | 'lg';
export type ToggleVariant = 'default' | 'outline';
export interface ToggleProps extends ComposableProps<'button'> {
pressed?: boolean;
onPressedChange?: (pressed: boolean) => void;
defaultPressed?: boolean;
size?: ToggleSize;
variant?: ToggleVariant;
disabled?: boolean;
icon?: IconName;
/**
* Enable glassmorphism effect on toggle container background
* - `true`: Standard glass effect
* - `'subtle'`: Subtle glass effect
* - `'prominent'`: Prominent glass effect
*/
glass?: GlassVariant;
children?: React.ReactNode;
}
/**
* Toggle Component
*
* A toggle button component for toggling between pressed and unpressed states.
*
* @public
*
* @example
* ```tsx
*
* Toggle
*
* ```
*
* @remarks
* - Wraps the HTML `