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 `