import { booleanType, someType, stringType, vNodeType } from '@v-c/utils' import type { ExtractPropTypes } from 'vue' import type { SizeType } from '../config-provider/context' import type { ButtonHTMLType, ButtonShape, ButtonType } from './button-helper' export interface LoadingConfigType { loading: boolean delay: number } export const buttonProps = { type: stringType('default'), icon: vNodeType(), shape: stringType(), size: someType([String], 'default'), disabled: booleanType(), loading: someType(), prefixCls: stringType(), rootClassName: stringType(), ghost: booleanType(), danger: booleanType(), block: booleanType(), htmlType: stringType('button') } export type ButtonProps = ExtractPropTypes