import * as React from 'react';
import * as PropTypes from 'prop-types';
import { StandardProps, StyledProps } from '..';
declare type Variant = 'standard' | 'primary';
declare type Size = 'small' | 'medium' | 'large';
export declare type ButtonClassProps = 'root' | 'variantStandard' | 'variantPrimary' | 'sizeSmall' | 'sizeMedium' | 'sizeLarge' | 'block';
export interface ButtonProps extends StandardProps<React.ButtonHTMLAttributes<HTMLButtonElement>, HTMLButtonElement>, StyledProps {
    variant?: Variant;
    disabled?: boolean;
    size?: Size;
    block?: boolean;
    onClick?: React.MouseEventHandler<HTMLButtonElement>;
    children: React.ReactNode;
}
export declare const ButtonPropTypes: {
    variant: PropTypes.Requireable<Variant>;
    disabled: PropTypes.Requireable<boolean>;
    size: PropTypes.Requireable<Size>;
    block: PropTypes.Requireable<boolean>;
    onClick: PropTypes.Requireable<(...args: any[]) => any>;
    children: PropTypes.Validator<string | number | boolean | {} | PropTypes.ReactElementLike | PropTypes.ReactNodeArray>;
};
export {};
