export declare const BUTTON_CLASSNAME = "k-button";
declare const states: ("active" | "focus" | "disabled" | "selected" | "hover")[];
declare const options: {
    size: ("small" | "medium" | "large")[];
    rounded: ("small" | "medium" | "full" | "large")[];
    fillMode: ("link" | "flat" | "clear" | "outline" | "solid")[];
    themeColor: ("base" | "error" | "inverse" | "success" | "dark" | "light" | "primary" | "secondary" | "tertiary" | "info" | "warning")[];
};
export type KendoButtonOptions = {
    size?: (typeof options.size)[number] | null;
    rounded?: (typeof options.rounded)[number] | null;
    fillMode?: (typeof options.fillMode)[number] | null;
    themeColor?: (typeof options.themeColor)[number] | null;
};
export type KendoButtonProps = KendoButtonOptions & {
    icon?: string;
    text?: string;
    iconClassName?: string;
    showArrow?: boolean;
    arrowIconName?: string;
};
export type KendoButtonState = {
    [K in (typeof states)[number]]?: boolean;
};
export declare const Button: {
    (props: KendoButtonProps & KendoButtonState & React.HTMLAttributes<HTMLButtonElement>): import("react/jsx-runtime").JSX.Element;
    states: ("active" | "focus" | "disabled" | "selected" | "hover")[];
    options: {
        size: ("small" | "medium" | "large")[];
        rounded: ("small" | "medium" | "full" | "large")[];
        fillMode: ("link" | "flat" | "clear" | "outline" | "solid")[];
        themeColor: ("base" | "error" | "inverse" | "success" | "dark" | "light" | "primary" | "secondary" | "tertiary" | "info" | "warning")[];
    };
    className: string;
    defaultOptions: {
        size: "medium";
        rounded: "medium";
        fillMode: "solid";
        themeColor: "base";
        showArrow: boolean;
        arrowIconName: string;
    };
};
export default Button;
