declare const _default: import("@restart/context/mapContextToProps").ContextInjectedComponent<typeof Button, any, any>;
export default _default;
/**
 * @deprecated - Components in the legacy folder (/src/legacy) are deprecated. Please use a component from the components folder (/src/components) instead. Legacy components may not follow accessibility standards.
 **/
declare class Button extends React.Component<any, any, any> {
    constructor(props: any);
    constructor(props: any, context: any);
    handleKeyDown: (e: any, eventKey: any) => void;
    handleClick: (e: any, eventKey: any) => void;
    handleKeyUp: (e: any) => void;
    render(): JSX.Element;
    button: any;
}
declare namespace Button {
    namespace propTypes {
        let active: PropTypes.Requireable<boolean>;
        let ariaLabel: PropTypes.Requireable<string>;
        let ariaLabelledBy: PropTypes.Requireable<string>;
        let ariaPressed: PropTypes.Requireable<NonNullable<string | boolean>>;
        let children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        let circle: PropTypes.Requireable<boolean>;
        let className: PropTypes.Requireable<string>;
        let color: PropTypes.Requireable<string>;
        let containerLarge: PropTypes.Requireable<boolean>;
        let disabled: PropTypes.Requireable<boolean>;
        let eventKey: PropTypes.Requireable<string>;
        let expand: PropTypes.Requireable<boolean>;
        let href: PropTypes.Requireable<string>;
        let id: PropTypes.Requireable<string>;
        let keyboardKey: PropTypes.Requireable<string>;
        let label: PropTypes.Requireable<string>;
        let large: PropTypes.Requireable<boolean>;
        let loading: PropTypes.Requireable<boolean>;
        let onClick: PropTypes.Requireable<(...args: any[]) => any>;
        let parentKeyDown: PropTypes.Requireable<(...args: any[]) => any>;
        let parentOnSelect: PropTypes.Requireable<(...args: any[]) => any>;
        let preventKeyboardDoubleClick: PropTypes.Requireable<boolean>;
        let removeStyle: PropTypes.Requireable<boolean>;
        let size: PropTypes.Requireable<NonNullable<string | number>>;
        let style: PropTypes.Requireable<object>;
        let tag: PropTypes.Requireable<string>;
        let type: PropTypes.Requireable<string>;
    }
    namespace defaultProps {
        let active_1: boolean;
        export { active_1 as active };
        let ariaLabel_1: string;
        export { ariaLabel_1 as ariaLabel };
        let ariaLabelledBy_1: string;
        export { ariaLabelledBy_1 as ariaLabelledBy };
        let ariaPressed_1: any;
        export { ariaPressed_1 as ariaPressed };
        let children_1: any;
        export { children_1 as children };
        let circle_1: boolean;
        export { circle_1 as circle };
        let className_1: string;
        export { className_1 as className };
        let color_1: string;
        export { color_1 as color };
        let containerLarge_1: boolean;
        export { containerLarge_1 as containerLarge };
        let disabled_1: boolean;
        export { disabled_1 as disabled };
        let eventKey_1: string;
        export { eventKey_1 as eventKey };
        let expand_1: boolean;
        export { expand_1 as expand };
        let href_1: string;
        export { href_1 as href };
        let id_1: string;
        export { id_1 as id };
        let keyboardKey_1: string;
        export { keyboardKey_1 as keyboardKey };
        let label_1: string;
        export { label_1 as label };
        let large_1: boolean;
        export { large_1 as large };
        let loading_1: boolean;
        export { loading_1 as loading };
        let onClick_1: any;
        export { onClick_1 as onClick };
        let parentKeyDown_1: any;
        export { parentKeyDown_1 as parentKeyDown };
        let parentOnSelect_1: any;
        export { parentOnSelect_1 as parentOnSelect };
        let preventKeyboardDoubleClick_1: boolean;
        export { preventKeyboardDoubleClick_1 as preventKeyboardDoubleClick };
        let removeStyle_1: boolean;
        export { removeStyle_1 as removeStyle };
        let size_1: number;
        export { size_1 as size };
        let style_1: {};
        export { style_1 as style };
        let tag_1: string;
        export { tag_1 as tag };
        let type_1: string;
        export { type_1 as type };
    }
    let displayName: string;
}
import React from 'react';
import PropTypes from 'prop-types';
