import { ElementType, FC, ReactNode, MouseEventHandler, MouseEvent } from 'react';
import './ButtonGroup.css';
export interface ButtonGroupProps {
    /**
     * Выбранные кнопки
     */
    selected?: number[];
    /**
     * Уникальный id компонента
     */
    id?: string;
    /**
     * Дополнительный класс компонента
     */
    className?: string;
    /**
     * Дочерние компоненты
     */
    children?: ReactNode;
    /**
     * Доступ на изменение компонента
     *
     * @default false
     */
    disabled?: boolean;
    /**
     * Вертикальное направление кнопок
     *
     * @default false
     */
    vertical?: boolean;
    /**
     * Расстояние между кнопками
     */
    gap?: 's' | 'm' | 'l' | 'xl';
    /**
     * Компонент, который будет использоваться в качестве обертки
     *
     * @default 'div'
     */
    as?: ElementType;
    /**
     * Обработчик клика, который будет вызван при нажатии на элемент из `children`.
     * Если у элемента из `children` уже имеется функция `onClick`, то она будет запущена первой
     */
    onClick?: MouseEventHandler<ElementType> | ((event: MouseEvent<ElementType>, index: number) => void);
    /**
     * Пины для кнопок
     */
    pin?: 'circle' | 'round';
    /**
     * Компонент для разделения кнопок
     */
    divider?: ReactNode;
}
export declare const cnButtonGroup: import("@bem-react/classname").ClassNameFormatter;
/**
 * Компонент для объединения нескольких кнопок между собой
 * @param {ButtonGroupProps} props
 */
export declare const ButtonGroup: FC<ButtonGroupProps>;
