import { record } from '@synnaxlabs/x';
import { ReactElement } from 'react';
import { Button as CoreButton } from '../button';
import { Flex } from '../flex';
import { FrameProps } from './Frame';
export interface ButtonsProps<K extends record.Key = record.Key, E extends record.Keyed<K> | undefined = record.Keyed<K>> extends Omit<Flex.BoxProps, "onSelect" | "onChange">, Omit<FrameProps<K, E>, "getItem" | "subscribe" | "data"> {
    keys: K[] | readonly K[];
}
export declare const Buttons: <K extends record.Key = record.Key>({ keys, value, onChange, allowNone, multiple, ...rest }: ButtonsProps<K>) => ReactElement;
export interface ButtonProps<K extends record.Key = record.Key> extends Omit<CoreButton.ToggleProps, "onChange" | "value"> {
    itemKey: K;
}
export declare const Button: <K extends record.Key = record.Key>({ itemKey, ...rest }: ButtonProps<K>) => ReactElement | null;
//# sourceMappingURL=Button.d.ts.map