import { FC, ChangeEventHandler, RefObject, MouseEventHandler, KeyboardEventHandler, ReactNode, FocusEventHandler } from 'react'; import './Tumbler.css'; export declare const CHECKED_KEYS: number[]; export declare const UNCHECKED_KEYS: number[]; export declare type TumblerProps = { /** * Состояние переключателя */ checked: boolean; /** * Дополнительный класс у корневого DOM-элемента */ className?: string; /** * Ссылка на нативный DOM-элемент нативного инпута */ controlRef?: RefObject; /** * Неактивное состояние переключателя */ disabled?: boolean; /** * Уникальный id компонента */ id?: string; /** * Ссылка на корневой DOM-элемент компонента */ innerRef?: RefObject; /** * Подпись после переключателя */ labelAfter?: ReactNode; /** * Подпись перед переключателем */ labelBefore?: ReactNode; /** * Имя переключателя в форме */ name?: string; /** * Обработчик, который вызывается при потере фокуса переключателем */ onBlur?: FocusEventHandler; /** * Обработчик, который вызывается при изменении состояния */ onChange: ChangeEventHandler; /** * Обработчик, который вызывается при нажатии на переключатель */ onClick?: MouseEventHandler; /** * Обработчик, который вызывается при получении фокуса переключателем */ onFocus?: FocusEventHandler; /** * Обработчик, который вызывается при нажатии клавиши на клавиатуре (при этом переключатель должен быть в фокусе) */ onKeyDown?: KeyboardEventHandler; /** * Обработчик, который вызывается при отжатии клавиши на клавиатуре (при этом переключатель должен быть в фокусе) */ onKeyUp?: KeyboardEventHandler; /** * Целое число, определяющее должен ли переключатель участвовать * в последовательной навигации по всей странице с помощью клавиатуры */ tabIndex?: number; /** * Всплывающая подсказка */ title?: string; /** * Устанавливает фокус в компонент при монтировании */ autoFocus?: boolean; /** * Устанавливает в компоненте обязательное состояние */ required?: boolean; }; export declare const cnTumbler: import("@bem-react/classname").ClassNameFormatter; /** * Компонент, предназначенный для создания переключателя. * * @param {TumblerProps} props Свойства компонента. */ export declare const Tumbler: FC;