@tplc/wot
Version:
99 lines (98 loc) • 1.99 kB
TypeScript
import type { ExtractPropTypes, PropType } from 'vue'
export type PlacementType =
| 'top'
| 'top-start'
| 'top-end'
| 'bottom'
| 'bottom-start'
| 'bottom-end'
| 'left'
| 'left-start'
| 'left-end'
| 'right'
| 'right-start'
| 'right-end'
export type PopoverMode = 'menu' | 'normal'
export declare const popoverProps: {
customArrow: {
type: PropType<string>
default: string
}
customPop: {
type: PropType<string>
default: string
}
/**
* 是否显示 popover 箭头
*/
visibleArrow: {
type: BooleanConstructor
default: boolean
}
/**
* 显示的内容,也可以通过 slot#content 传入
*/
content: PropType<string | Record<string, any>[]>
/**
* 指定 popover 的放置位置:top / top-start / top-end / bottom / bottom-start / bottom-end / left / left-start / left-end / right / right-start / right-end
*/
placement: {
type: PropType<PlacementType>
default: PlacementType
}
/**
* 偏移量
*/
offset: {
type: NumberConstructor
default: number
}
/**
* 是否使用内容插槽
*/
useContentSlot: {
type: BooleanConstructor
default: boolean
}
/**
* 是否禁用 popover
*/
disabled: {
type: BooleanConstructor
default: boolean
}
/**
* 是否显示关闭按钮
*/
showClose: {
type: BooleanConstructor
default: boolean
}
/**
* 控制 popover 的显示状态
*/
modelValue: {
type: BooleanConstructor
default: boolean
}
/**
* 当前显示的模式,决定内容的展现形式,可选值:normal(普通模式)/ menu(菜单模式)
*/
mode: {
type: PropType<PopoverMode>
default: PopoverMode
}
customStyle: {
type: PropType<string>
default: string
}
customClass: {
type: PropType<string>
default: string
}
}
export type PopoverProps = ExtractPropTypes<typeof popoverProps>
export type PopoverExpose = {
open: () => void
close: () => void
}