import { type ChangeEventHandler, type ComponentPropsWithoutRef, type CSSProperties, type Ref } from 'react'; import { type InputControlProps } from '../../shared/contracts'; import { type CssLength } from '../../../utils/css'; declare const YES_NO_SWITCH_VARIANTS: readonly [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18]; type YesNoSwitchVariant = (typeof YES_NO_SWITCH_VARIANTS)[number]; type YesNoSwitchStyle = CSSProperties & { '--yes-no-switch-size'?: string; '--yes-no-switch-yes'?: string; '--yes-no-switch-no'?: string; '--yes-no-switch-track-yes'?: string; '--yes-no-switch-track-no'?: string; }; type YesNoSwitchProps = Omit & { checked?: boolean; defaultChecked?: boolean; onCheckedChange?: (checked: boolean) => void; onChange?: ChangeEventHandler; className?: string; style?: YesNoSwitchStyle; variant?: YesNoSwitchVariant; size?: CssLength; yesColor?: string; noColor?: string; yesTrackColor?: string; noTrackColor?: string; }; type YesNoSwitchesProps = Omit, 'children' | 'onChange'> & { variants?: readonly YesNoSwitchVariant[]; defaultCheckedVariants?: readonly YesNoSwitchVariant[]; switchProps?: Omit; ref?: Ref; }; declare const YesNoSwitch: ({ checked: controlledChecked, defaultChecked, onCheckedChange, onChange, className, style, variant, size, yesColor, noColor, yesTrackColor, noTrackColor, disabled, ref, "aria-label": ariaLabel, ...inputProps }: YesNoSwitchProps) => import("react/jsx-runtime").JSX.Element; declare const YesNoSwitches: ({ variants, defaultCheckedVariants, switchProps, className, ref, "aria-label": ariaLabel, ...sectionProps }: YesNoSwitchesProps) => import("react/jsx-runtime").JSX.Element; export { YES_NO_SWITCH_VARIANTS, YesNoSwitch, YesNoSwitches }; export type { YesNoSwitchProps, YesNoSwitchStyle, YesNoSwitchVariant, YesNoSwitchesProps, };