import React from 'react';
export declare type ButtonLayoutProps = {
    disabled?: boolean;
    filled?: boolean;
    label: string | React.ReactElement;
    loading?: boolean;
    rounded?: boolean;
    size?: 'small' | 'medium';
    variant?: 'primary' | 'secondary' | 'light' | 'dark' | 'danger' | 'gradient';
};
export declare type ButtonDefaultProps = ButtonLayoutProps & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, keyof ButtonLayoutProps> & {
    href?: undefined;
};
export declare type ButtonAnchorProps = ButtonLayoutProps & Omit<React.AnchorHTMLAttributes<HTMLAnchorElement>, keyof ButtonLayoutProps> & {
    href?: string;
};
export declare type ButtonType = {
    (props: ButtonDefaultProps): JSX.Element;
    (props: ButtonAnchorProps): JSX.Element;
};
export declare const Button: ButtonType;
