import type { ExtractPropTypes, PropType } from 'vue'; import type { SizeType } from '../config-provider'; export declare type ButtonType = 'link' | 'default' | 'primary' | 'ghost' | 'secondary' | 'text' | 'danger' | 'warning'; export declare type ButtonShape = 'default' | 'circle' | 'round'; export declare type ButtonHTMLType = 'submit' | 'button' | 'reset'; export declare type IconButtonType = 'solid' | 'primary' | 'neutral' | 'hot' | 'default' | 'gray'; export declare type LegacyButtonType = ButtonType | 'danger'; export declare function convertLegacyProps(type?: LegacyButtonType): ButtonProps; export declare const buttonProps: () => { prefixCls: StringConstructor; type: PropType; iconType: PropType; htmlType: { type: PropType; default: string; }; shape: { type: PropType; }; size: { type: PropType; }; loading: { type: PropType; default: () => boolean | { delay?: number; }; }; disabled: { type: BooleanConstructor; default: any; }; ghost: { type: BooleanConstructor; default: any; }; block: { type: BooleanConstructor; default: any; }; danger: { type: BooleanConstructor; default: any; }; icon: import("vue-types").VueTypeValidableDef; href: StringConstructor; target: StringConstructor; title: StringConstructor; noPadding: BooleanConstructor; onClick: { type: PropType<(event: MouseEvent) => void>; }; onMousedown: { type: PropType<(event: MouseEvent) => void>; }; onKeydown: { type: PropType<(event: KeyboardEvent) => void>; }; id: StringConstructor; }; export declare type ButtonProps = Partial>>; export default buttonProps;