import * as React from 'react'; import { ColorWithInherit, StandardProps } from './types'; export interface ButtonProps extends StandardProps { /** * @name Color * @default Primary * @group Style * */ color?: ColorWithInherit; /** * @name Variant * @default Contained * @group Style * @control ButtonGroup * */ variant?: ButtonVariant; /** * @name Size * @default Medium * @group Style * @control ButtonGroup * */ size?: ButtonSize; /** * @name Full Width * @group Style * */ fullWidth?: boolean; /** * @name Disabled * @group Disabled * */ disabled?: boolean; /** * @name Disable Ripple * @group Ripple * */ disableRipple?: boolean; /** * @default * ```tsx * import * as React from 'react'; * import { Text } from '@meetalva/essentials'; * * export default () => ( * * ); * ``` **/ children?: React.ReactNode; } export interface ButtonBaseProps { /** * @name Disable Ripple * @group Ripple * */ disableRipple?: boolean; /** * @name On Click * @description Set an interaction that happens on Click. * */ onClick?: React.MouseEventHandler; children?: React.ReactNode; } export interface IconButtonProps extends StandardProps { /** * @name Color * @default Inherit */ color?: ColorWithInherit; /** * @name Disabled * @group Disabled * */ disabled?: boolean; /** * @name Disable Ripple * @group Ripple * */ disableRipple?: boolean; /** * @default * ```tsx * import * as React from 'react'; * import { Icon } from './icon'; * * export default () => ; * ``` **/ children?: React.ReactNode; } export declare enum ButtonSize { Small = "small", Medium = "medium", Large = "large" } export declare enum ButtonVariant { Text = "text", Outlined = "outlined", Contained = "contained" } /** * @name Button * @description Allow users to take actions and make choices, with a single tap * @icon MinusSquare * @group Buttons */ export declare const Button: React.SFC; /** * @name Icon Button * @group Buttons * @icon PlusCircle * @description Nest icon from an icon package */ export declare const IconButton: React.SFC;