UNPKG

lucid-ui

Version:

A UI component library from AppNexus.

54 lines (53 loc) 2 kB
import { IButtonProps } from '../Button/Button'; import React from 'react'; import { StandardProps } from '../../util/component-types'; export interface IButtonGroupState { selectedIndices: number[]; } export interface IButtonGroupProps extends StandardProps { /** A function that is called with the index of the child button clicked. */ onSelect: (selectedIndex: number, { event, props }: { event: React.MouseEvent; props: IButtonProps; }) => void; /** An array of currently selected \`ButtonGroup.Button\`s indices. You can also pass the prop \`isActive\` to individual \`ButtonGroup.Button\` components. */ selectedIndices: number[]; } declare class ButtonGroup extends React.Component<IButtonGroupProps, IButtonGroupState> { static displayName: string; static peek: { description: string; categories: string[]; madeFrom: string[]; }; static Button: { (_props: Partial<import("../../util/component-types").Overwrite<React.DetailedHTMLProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, import("../Button/Button").IButtonPropsRaw>>): null; displayName: string; peek: { description: string; }; }; static reducers: { onSelect(state: IButtonGroupState | undefined, index: number): IButtonGroupState; }; static defaultProps: { onSelect: (...args: any[]) => void; selectedIndices: never[]; }; static propTypes: { onSelect: any; className: any; children: any; selectedIndices: any; }; handleSelect: ({ event, props: childProps, }: { event: React.MouseEvent<HTMLButtonElement>; props: IButtonProps; }) => void; render(): JSX.Element; } declare const _default: typeof ButtonGroup & import("../../util/state-management").IHybridComponent<IButtonGroupProps, IButtonGroupState>; export default _default; export { ButtonGroup as ButtonGroupDumb };