import React, { AnchorHTMLAttributes, ButtonHTMLAttributes, ReactNode } from 'react';
import { MarginProps, WidthProps } from 'styled-system';
import { ThemeProps } from '@t3n/theme';
export type ButtonAsType = 'button' | 'a';
export type ButtonVariant = 'primary' | 'secondary';
export type ButtonColorVariant = 'default' | 'inverse' | 'highlight' | 'accent';
export type ButtonSizeVariant = 'small' | 'regular' | 'big';
export interface ButtonProps extends ButtonHTMLAttributes, Omit, 'type'>, MarginProps, WidthProps {
variant?: ButtonVariant;
color?: ButtonColorVariant;
size?: ButtonSizeVariant;
iconLeft?: React.FC>;
iconRight?: React.FC>;
loading?: boolean;
as?: ButtonAsType;
children?: ReactNode;
}
export declare const buttonStyles: import("styled-components").FlattenInterpolation>;
declare const Button: React.FC;
export default Button;