@minto-ai/mt-ui
Version:
UI组件库
81 lines (80 loc) • 1.74 kB
TypeScript
import { Options, Placement } from '@popperjs/core';
import { ExtractPropTypes, PropType } from 'vue';
interface PopoverInstance {
close: () => void;
show: () => void;
}
type PopoverTriggerType = 'hover' | 'click' | 'manual';
type PopoverEffect = 'light' | 'dark';
declare const popoverProps: {
/**
* 是否显示
*/
modelValue: {
type: BooleanConstructor;
default: boolean;
};
/**
* 显示的内容
*/
content: {
type: StringConstructor;
default: string;
};
/**
* 延迟显示,单位毫秒
*/
showDelay: {
type: NumberConstructor;
default: number;
};
/**
* 延迟关闭,单位毫秒
*/
closeDelay: {
type: NumberConstructor;
default: number;
};
/**
* 触发方式
*/
trigger: {
type: PropType<PopoverTriggerType>;
default: string;
};
/**
* 出现的位置
*/
placement: {
type: PropType<Placement>;
default: string;
};
/**
* popover 的参数
*/
popperOptions: {
type: PropType<Partial<Options>>;
default: () => {};
};
/**
* Content 挂载到哪个 DOM 元素
*/
appendTo: {
type: PropType<string | HTMLElement>;
default: string;
};
/**
* Content 主题
*/
effect: {
type: PropType<PopoverEffect>;
default: string;
};
};
interface PopoverEmits {
'update:modelValue': [boolean];
'close': [];
}
type PopoverProps = ExtractPropTypes<typeof popoverProps>;
export type { PopoverEffect, PopoverEmits, PopoverInstance, PopoverProps, PopoverTriggerType, };
export { popoverProps, };