import * as React from 'react'; import * as PropTypes from 'prop-types'; import { ButtonProps as ReakitButtonProps } from 'reakit/ts/Button/Button'; import { Omit, ButtonType, Size } from '../types'; import { LocalIconProps } from '../Icon/Icon'; export declare const SpinnerWrapper: import("styled-components").StyledComponent & React.RefAttributes>, any, {}, never>>, any, {}, never>; export declare type LocalButtonProps = { /** Specifies that the button should have focus when the page loads. */ autoFocus?: boolean; children: React.ReactNode; className?: string; /** Makes the button disabled. The user is unable to interact with the button. */ disabled?: boolean; id?: string; /** Icon that appears on the right side of the button. */ iconAfter?: LocalIconProps['icon']; /** Icon that appears on the left side of the button. */ iconBefore?: LocalIconProps['icon']; /** Adds a loading indicator to the button. */ isLoading?: boolean; /** Makes the button not interactable. */ isStatic?: boolean; kind?: ButtonType; palette?: string; size?: Size; type?: string; }; export declare type ButtonProps = LocalButtonProps & Omit; export declare const Button: React.FunctionComponent; export declare const buttonPropTypes: { autoFocus: PropTypes.Requireable; children: PropTypes.Validator; className: PropTypes.Requireable; disabled: PropTypes.Requireable; id: PropTypes.Requireable; iconAfter: PropTypes.Validator; iconBefore: PropTypes.Validator; isLoading: PropTypes.Requireable; isStatic: PropTypes.Requireable; kind: PropTypes.Validator; palette: PropTypes.Requireable; size: PropTypes.Validator; type: PropTypes.Requireable; }; export declare const buttonDefaultProps: Partial; declare const C: React.FunctionComponent; export default C;