UNPKG

@trove-ui/react

Version:

A React component library for T Design UI

56 lines (55 loc) 1.43 kB
import './index.scss'; import { ButtonHTMLAttributes, type FC, HTMLAttributes, ReactNode } from 'react'; export type ButtonIconPosition = 'left' | 'right'; export type ButtonSize = 'small' | 'large' | 'default'; export type ButtonVariant = 'text' | 'outlined' | 'filled' | 'solid' | 'dashed'; export type ButtonState = 'primary' | 'success' | 'warning' | 'danger' | 'info'; export interface ButtonProps extends HTMLAttributes<HTMLButtonElement> { /** * 设置按钮的大小 * @default default */ size?: ButtonSize; /** * 设置按钮的图标 * @default null */ icon?: ReactNode; /** * 设置按钮的状态 * @default primary */ state?: ButtonState; /** * 设置按钮的样式 * @default solid */ variant?: ButtonVariant; /** * 设置按钮的图标位置 * @default left */ iconPosition?: ButtonIconPosition; /** * 设置按钮的类型 * @default button */ type?: ButtonHTMLAttributes<HTMLButtonElement>['type']; /** * 设置按钮是否禁用 * @default false */ disabled?: ButtonHTMLAttributes<HTMLButtonElement>['disabled']; /** * 设置按钮的点击事件 * @default null */ onClick?: () => void; } /** * @author 冯子健 * @date 2025/3/26 * @description 按钮组件 */ declare const Button: FC<ButtonProps>; export default Button;