import { ID } from '@zeniai/client-epic-state';
import * as React from "react";
type Style = {
    default: string;
    disabled: string;
    hover: string;
};
export type ButtonColors = {
    backgroundColor: Style;
    borderColor: Style;
    textColor: Style;
};
export type ButtonType = "submit" | "reset" | "button";
export type ButtonVariant = "primary" | "secondary" | "ghost" | "destructive" | "success" | "outline";
export type ButtonSize = "small" | "standard" | "medium";
type Props = {
    label: string;
    buttonColors?: ButtonColors;
    className?: string;
    /** When set, used as the full `data-testid` value instead of the default label-based id. */
    dataTestId?: string;
    disabled?: boolean;
    form?: ID;
    loading?: boolean;
    onClick?: React.MouseEventHandler<HTMLButtonElement>;
    prefixIcon?: JSX.Element;
    reverseSpinnerColor?: boolean;
    size?: ButtonSize;
    style?: React.CSSProperties;
    suffixIcon?: JSX.Element;
    textStyle?: React.CSSProperties;
    type?: ButtonType;
    variant?: ButtonVariant;
};
declare const Button: (props: Props) => import("react/jsx-runtime").JSX.Element;
export default Button;
