import React from 'react';
import { Theme } from '../cn';
export declare type ToggleProps = {
    /**
     * Идентификатор компонента в DOM
     */
    id?: string;
    /**
     * Имя компонента в DOM
     */
    name?: string;
    /**
     * Текст подписи к чекбоксу
     */
    label?: React.ReactNode;
    /**
     * Выравнивание подписи
     */
    labelAlign?: 'left' | 'right';
    /**
     * Подсказка под полем
     */
    hint?: React.ReactNode;
    /**
     * Значение чекбокса, которое будет отправлено на сервер, если он выбран
     */
    value?: string;
    /**
     * Управление возможностью взаимодействия с компонентом
     */
    disabled?: boolean;
    /**
     * Управление состоянием вкл/выкл компонента
     */
    checked?: boolean;
    /**
     * Размер компонента
     */
    size?: 's' | 'm';
    /**
     * Тема компонента
     */
    theme?: Theme;
    /**
     * Дополнительный класс
     */
    className?: string;
    /**
     * Обработчик изменения значения 'checked' компонента, принимает на вход isChecked и value компонента
     */
    onChange?: (isChecked?: boolean, value?: string) => void;
    /**
     * Обработчик фокуса комнонента
     */
    onFocus?: (event?: React.FocusEvent<any>) => void;
    /**
     * Обработчик снятия фокуса компонента
     */
    onBlur?: (event?: React.FocusEvent<any>) => void;
    /**
     * Идентификатор для систем автоматизированного тестирования
     */
    'data-test-id'?: string;
};
/**
 * Компонент переключателя.
 */
export declare class Toggle extends React.PureComponent<ToggleProps> {
    protected cn: (this: void | {
        props?: Record<string, unknown>;
    }, elementNameOrMods?: string | {
        [key: string]: string | number | boolean;
    }, mods?: {
        [key: string]: string | number | boolean;
    }) => string;
    static defaultProps: Partial<ToggleProps>;
    state: {
        checked: boolean;
        focused: boolean;
    };
    render(): JSX.Element;
    static handleClick(event: any): void;
    private handleChange;
    private handleFocus;
    private handleUnfocus;
    private handleBlur;
}
declare const _default: React.ForwardRefExoticComponent<ToggleProps & React.RefAttributes<Toggle>> & Toggle;
export default _default;
