import { Component } from 'react';
import { IButtonDirectiveProps, ButtonDirective } from './Directive';
import { IPopoverHoverTriggerContext } from '../popover';
export interface IButtonProps extends Omit<IButtonDirectiveProps<React.ButtonHTMLAttributes<HTMLButtonElement>>, 'children'>, React.HTMLAttributes<HTMLElement> {
    className?: string;
    style?: React.CSSProperties;
    href?: string;
    target?: string;
    htmlType?: React.ButtonHTMLAttributes<HTMLButtonElement>['type'];
    download?: string;
}
export declare class Button extends Component<IButtonProps> {
    static defaultProps: {
        type: string;
        size: string;
        htmlType: string;
        bordered: boolean;
    };
    static Group: import("react").FC<import("./Group").IButtonGroupProps>;
    static Directive: typeof ButtonDirective;
    static contextType: import("react").Context<Required<import("../popover").IHoverTriggerCompatibleProps>>;
    context: IPopoverHoverTriggerContext;
    render(): JSX.Element;
}
export default Button;
