UNPKG

@blockstack/ui

Version:

Blockstack UI components built using React and styled-components with styled-system.

32 lines (31 loc) 1.07 kB
import * as React from 'react'; import { BoxProps } from '../box'; export declare type ButtonSizes = 'sm' | 'md' | 'lg'; export declare type ButtonColorVariants = string; export declare type ButtonVariants = 'outline' | 'unstyled' | 'link' | 'solid'; export declare type ButtonModes = 'primary' | 'secondary' | 'tertiary'; export declare type CustomStyles = { [key in ButtonModes]: BoxProps; }; interface ButtonPropsBase { size?: ButtonSizes; isLoading?: boolean; variantColor?: ButtonColorVariants; variant?: ButtonVariants; mode?: ButtonModes; customStyles?: CustomStyles; isActive?: boolean; isDisabled?: boolean; loadingText?: string; isFullWidth?: boolean; type?: 'button' | 'reset' | 'submit'; children: React.ReactNode; } export interface ButtonStyles { variant: ButtonVariants; mode: ButtonModes; size: ButtonSizes; customStyles?: CustomStyles; } export declare type ButtonProps = ButtonPropsBase & BoxProps & React.RefAttributes<HTMLButtonElement>; export {};