import * as React from 'react'; import { IconProps } from '../Icon/Icon'; export interface ButtonProps { /** Controls the look of the element */ appearance?: 'primary' | 'secondary' | 'tertiary' | 'twitter' | 'link' | 'danger'; /** Child element(s) */ children?: React.ReactNode | React.ReactNode[]; /** Indicates a disabled state */ disabled?: boolean; /** Adds an icon before the button */ icon?: IconProps['name']; /** Indicates if the button triggered action is in progress */ loading?: boolean; /** Name of the button */ name?: string; /** The button click event callback */ onClick?: (event: React.MouseEvent) => void | undefined; /** The size of the button */ size?: 'small' | 'medium' | 'large'; /** Allow the button to take the size of its parent container */ stretch?: boolean; /** Position of icon if visible (defaults to left) */ iconPosition?: 'left' | 'right'; } declare const Button: ({ appearance, children, onClick, disabled, loading, size, stretch, icon, name, iconPosition, ...other }: ButtonProps & React.HTMLAttributes) => JSX.Element; export default Button;