import { PropType, VNodeChild, Ref, InjectionKey, CSSProperties } from 'vue'; export declare type PopoverTrigger = 'hover' | 'click' | 'manual' | 'follow'; export declare type PopoverPlacement = 'top' | 'bottom' | 'left' | 'right' | 'top-start' | 'top-end' | 'left-start' | 'left-end' | 'right-start' | 'right-end' | 'bottom-start' | 'bottom-end'; export declare type PopoverTriggerBorder = 'top' | 'right' | 'bottom' | 'left'; export declare type PopoverFollowMode = 'move' | 'click'; export declare type PopoverOffset = { top?: CSSProperties['top']; right?: CSSProperties['right']; bottom?: CSSProperties['bottom']; left?: CSSProperties['left']; }; export declare type PopoverInjection = Ref | null; export interface PopoverExposeInstance { syncPosition: () => void; show: () => void; hide: () => void; el: HTMLElement; } export interface PopoverProps { trigger?: PopoverTrigger; placement?: PopoverPlacement; destroyWhenHide?: boolean; zIndex?: number; show?: boolean; disabled?: boolean; withArrow?: boolean; showDelay?: number; hideDelay?: number; offset?: PopoverOffset; wrapBoundary?: boolean; matchTrigger?: boolean; autoSync?: boolean; title?: string; content?: string | (() => VNodeChild); followMode?: PopoverFollowMode; x?: number; y?: number; teleport?: boolean; } export declare const popoverProps: { trigger: { type: PropType; default: string; }; placement: { type: PropType; default: string; }; destroyWhenHide: { type: PropType; default: boolean; }; zIndex: { type: PropType; default: undefined; }; show: { type: PropType; default: boolean; }; disabled: { type: PropType; default: boolean; }; withArrow: { type: PropType; default: boolean; }; showDelay: { type: PropType; default: number; }; hideDelay: { type: PropType; default: number; }; offset: { type: PropType; default: undefined; }; wrapBoundary: { type: PropType; default: boolean; }; matchTrigger: { type: PropType; default: boolean; }; autoSync: { type: PropType; default: boolean; }; title: { type: PropType; default: undefined; }; content: { type: PropType VNodeChild) | undefined>; default: undefined; }; followMode: { type: PropType; default: string; }; x: { type: PropType; default: undefined; }; y: { type: PropType; default: undefined; }; teleport: { type: PropType; default: boolean; }; }; export declare const popoverEmits: string[]; export declare const popoverInjectionKey: InjectionKey;