import * as React from 'react'; import { SemanticCOLORS, SemanticFLOATS, SemanticShorthandContent, SemanticShorthandItem, SemanticSIZES } from '../..'; import { LabelProps } from '../Label'; import { default as ButtonContent } from './ButtonContent'; import { default as ButtonGroup } from './ButtonGroup'; import { default as ButtonOr } from './ButtonOr'; export interface ButtonProps { [key: string]: any; /** An element type to render as (string or function). */ as?: any; /** A button can show it is currently the active user selection. */ active?: boolean; /** A button can animate to show hidden content. */ animated?: boolean | 'fade' | 'vertical'; /** A button can be attached to other content. */ attached?: boolean | 'left' | 'right' | 'top' | 'bottom'; /** A basic button is less pronounced. */ basic?: boolean; /** Primary content. */ children?: React.ReactNode; /** A button can be circular. */ circular?: boolean; /** Additional classes. */ className?: string; /** A button can have different colors. */ color?: SemanticCOLORS | 'facebook' | 'google plus' | 'vk' | 'twitter' | 'linkedin' | 'instagram' | 'youtube'; /** A button can reduce its padding to fit into tighter spaces. */ compact?: boolean; /** Shorthand for primary content. */ content?: SemanticShorthandContent; /** A button can show it is currently unable to be interacted with. */ disabled?: boolean; /** A button can be aligned to the left or right of its container. */ floated?: SemanticFLOATS; /** A button can take the width of its container. */ fluid?: boolean; /** Add an Icon by name, props object, or pass an . */ icon?: any; /** A button can be formatted to appear on dark backgrounds. */ inverted?: boolean; /** Add a Label by text, props object, or pass a