import * as React from "react";
import type { CSSProperties } from "aphrodite";
type Props = {
    value: any;
    buttons: ReadonlyArray<{
        value: any;
        content: React.ReactNode;
        title?: string;
    }>;
    onChange: (value?: any) => unknown;
    allowEmpty: boolean;
    /**
     * Customizes the selected button's styling.
     */
    selectedButtonStyle?: CSSProperties;
};
type DefaultProps = {
    allowEmpty: Props["allowEmpty"];
    value: Props["value"];
};
/**
 * ButtonGroup is an aesthetically pleasing group of buttons.
 */
declare class ButtonGroup extends React.Component<Props> {
    container: HTMLDivElement | null | undefined;
    static defaultProps: DefaultProps;
    componentWillUnmount(): void;
    focus(): undefined | boolean;
    toggleSelect(newValue: any): void;
    render(): React.ReactNode;
}
export default ButtonGroup;
