import { Size } from '../config-provider/interface'; import { CSSProperties, HTMLProps, ReactNode } from 'react'; export type { Size as ButtonSize } from '@/config-provider/interface'; export interface BaseButtonProps extends React.HTMLAttributes { type?: 'secondary' | 'primary' | 'dashed' | 'outline' | 'text'; size?: Size; status?: 'warning' | 'danger' | 'success' | 'default'; shape?: 'circle' | 'round' | 'square'; disabled?: boolean; loading?: boolean; icon?: ReactNode; full?: boolean; } export type AnchorButtonProps = { href?: string; target?: '_blank' | '_self' | '_parent' | '_top'; anchorProps?: HTMLProps; } & BaseButtonProps; export type FinalButtonProps = { htmlType?: 'button' | 'submit' | 'reset'; } & BaseButtonProps; export type ButtonProps = Partial; export interface ButtonGroupProps { style?: CSSProperties; className?: string | string[]; children?: ReactNode; }