@farris/ui-vue
Version:
Farris Vue, a Farris Design based Vue3 component library.
115 lines (114 loc) • 2.72 kB
TypeScript
/**
* Copyright (c) 2020 - present, Inspur Genersoft Co., Ltd.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import { ExtractPropTypes, PropType } from 'vue';
/**
* 按钮显示样式类型。
*/
export type ButtonType = 'primary' | 'warning' | 'danger' | 'success' | 'link' | 'secondary';
/**
* 按钮尺寸类型。
*/
export type ButtonSize = 'small' | 'large' | 'middle';
/**
* Button 组件的 props 配置对象。
*
* @remarks
* 用于触发操作的基础交互按钮,支持 primary、warning、danger 等多种类型,
* 以及 small / middle / large 三种尺寸。
*/
export declare const buttonProps: {
/**
* 组件唯一标识。
*/
id: StringConstructor;
/**
* 按钮显示样式。
*
* @default 'primary'
*/
type: {
type: PropType<ButtonType>;
default: string;
};
/**
* 是否禁用按钮。
*
* @default false
*/
disabled: {
type: BooleanConstructor;
default: boolean;
};
/**
* 按钮尺寸,可选 small、middle、large。
*
* @default 'middle'
*/
size: {
type: PropType<ButtonSize>;
default: string;
};
/**
* 按钮图标类名。
*
* @default ''
*/
icon: {
type: StringConstructor;
default: string;
};
/**
* 按钮文本。
*
* @default ''
*/
text: {
type: StringConstructor;
default: string;
};
/**
* 自定义 CSS 类名。
*
* @default ''
*/
customClass: {
type: StringConstructor;
default: string;
};
/**
* 自定义内联样式。
*
* @default ''
*/
customStyle: {
type: StringConstructor;
default: string;
};
/**
* 控制按钮是否可见。
*
* @default true
*/
visible: {
type: BooleanConstructor;
default: boolean;
};
};
/**
* Button 组件 props 的推导类型。
*/
export type ButtonProps = ExtractPropTypes<typeof buttonProps>;
export declare const propsResolver: (schemaValue?: Record<string, any>, mergeDefaults?: boolean) => Record<string, any>;