import { type ChangeEventHandler, type CSSProperties, type ReactNode } from 'react'; import { type InputControlProps } from '../../shared/contracts'; import { type CssLength } from '../../../utils/css'; type SilkyToggleVariant = 'offset' | 'offsetRotate' | 'rotate' | 'slip' | 'orderly' | 'random'; type SilkyToggleLabelPlacement = 'bottom' | 'end'; type SilkyToggleStyle = CSSProperties & { '--silky-toggle-active-color'?: string; '--silky-toggle-border-color'?: string; '--silky-toggle-duration'?: string; '--silky-toggle-focus-color'?: string; '--silky-toggle-glow-color'?: string; '--silky-toggle-height'?: string; '--silky-toggle-inactive-color'?: string; '--silky-toggle-panel-color'?: string; '--silky-toggle-panel-stripe-color'?: string; '--silky-toggle-shift'?: string; '--silky-toggle-slip-duration'?: string; '--silky-toggle-width'?: string; }; type SilkyToggleProps = Omit & { checked?: boolean; defaultChecked?: boolean; onCheckedChange?: (checked: boolean) => void; onChange?: ChangeEventHandler; className?: string; style?: SilkyToggleStyle; children?: ReactNode; variant?: SilkyToggleVariant; labelPlacement?: SilkyToggleLabelPlacement; size?: CssLength; activeColor?: string; inactiveColor?: string; panelColor?: string; panelStripeColor?: string; borderColor?: string; glowColor?: string; focusColor?: string; animationDuration?: number; staggerDelay?: number; }; declare const SILKY_TOGGLE_VARIANTS: readonly ["offset", "offsetRotate", "rotate", "slip", "orderly", "random"]; declare const SilkyToggle: ({ checked: controlledChecked, defaultChecked, onCheckedChange, onChange, className, style, children, variant, labelPlacement, size, activeColor, inactiveColor, panelColor, panelStripeColor, borderColor, glowColor, focusColor, animationDuration, staggerDelay, disabled, ref, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy, ...inputProps }: SilkyToggleProps) => import("react/jsx-runtime").JSX.Element; export { SilkyToggle, SILKY_TOGGLE_VARIANTS }; export type { SilkyToggleLabelPlacement, SilkyToggleProps, SilkyToggleStyle, SilkyToggleVariant, };