@yandex/ui
Version:
Yandex UI components
62 lines (61 loc) • 1.97 kB
TypeScript
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>;