import { PropType, CSSProperties, ComputedRef, Ref } from 'vue'; import { FollowerPlacement } from 'vueuc'; import type { ExtractPublicPropTypes, ExtractInternalPropTypes, MaybeArray } from '../../_utils'; import type { PopoverTrigger, InternalRenderBody } from './interface'; export interface TriggerEventHandlers { onClick: (e: MouseEvent) => void; onMouseenter: (e: MouseEvent) => void; onMouseleave: (e: MouseEvent) => void; onFocus: (e: FocusEvent) => void; onBlur: (e: FocusEvent) => void; } interface BodyInstance { syncPosition: () => void; [key: string]: unknown; } export interface PopoverInjection { handleMouseLeave: (e: MouseEvent) => void; handleMouseEnter: (e: MouseEvent) => void; handleMouseMoveOutside: (e: MouseEvent) => void; handleClickOutside: (e: MouseEvent) => void; getTriggerElement: () => HTMLElement; setBodyInstance: (value: BodyInstance | null) => void; zIndexRef: Ref; internalRenderBodyRef: Ref; positionManuallyRef: ComputedRef; isMountedRef: Ref; extraClassRef: Ref; } export declare const popoverBaseProps: { show: { type: PropType; default: undefined; }; defaultShow: BooleanConstructor; showArrow: { type: BooleanConstructor; default: boolean; }; trigger: { type: PropType; default: string; }; delay: { type: NumberConstructor; default: number; }; duration: { type: NumberConstructor; default: number; }; raw: BooleanConstructor; placement: { type: PropType; default: string; }; x: NumberConstructor; y: NumberConstructor; disabled: BooleanConstructor; getDisabled: PropType<() => boolean>; displayDirective: { type: PropType<"show" | "if">; default: string; }; arrowStyle: PropType; filp: { type: BooleanConstructor; default: boolean; }; animated: { type: BooleanConstructor; default: boolean; }; width: { type: PropType; default: undefined; }; overlap: BooleanConstructor; internalExtraClass: { type: PropType; default: () => never[]; }; onClickoutside: PropType<(e: MouseEvent) => void>; 'onUpdate:show': PropType void>>; onUpdateShow: PropType void>>; zIndex: NumberConstructor; to: { type: PropType; default: undefined; }; internalSyncTargetWithParent: BooleanConstructor; internalInheritedEventHandlers: { type: PropType; default: () => never[]; }; /** @deprecated */ onShow: PropType void> | undefined>; /** @deprecated */ onHide: PropType void> | undefined>; /** @deprecated */ arrow: { type: PropType; default: undefined; }; /** @deprecated */ minWidth: NumberConstructor; /** @deprecated */ maxWidth: NumberConstructor; }; declare const popoverProps: { internalRenderBody: PropType; show: { type: PropType; default: undefined; }; defaultShow: BooleanConstructor; showArrow: { type: BooleanConstructor; default: boolean; }; trigger: { type: PropType; default: string; }; delay: { type: NumberConstructor; default: number; }; duration: { type: NumberConstructor; default: number; }; raw: BooleanConstructor; placement: { type: PropType; default: string; }; x: NumberConstructor; y: NumberConstructor; disabled: BooleanConstructor; getDisabled: PropType<() => boolean>; displayDirective: { type: PropType<"show" | "if">; default: string; }; arrowStyle: PropType; filp: { type: BooleanConstructor; default: boolean; }; animated: { type: BooleanConstructor; default: boolean; }; width: { type: PropType; default: undefined; }; overlap: BooleanConstructor; internalExtraClass: { type: PropType; default: () => never[]; }; onClickoutside: PropType<(e: MouseEvent) => void>; 'onUpdate:show': PropType void>>; onUpdateShow: PropType void>>; zIndex: NumberConstructor; to: { type: PropType; default: undefined; }; internalSyncTargetWithParent: BooleanConstructor; internalInheritedEventHandlers: { type: PropType; default: () => never[]; }; /** @deprecated */ onShow: PropType void> | undefined>; /** @deprecated */ onHide: PropType void> | undefined>; /** @deprecated */ arrow: { type: PropType; default: undefined; }; /** @deprecated */ minWidth: NumberConstructor; /** @deprecated */ maxWidth: NumberConstructor; theme: PropType>; themeOverrides: PropType>>; builtinThemeOverrides: PropType>>; }; export declare type PopoverProps = ExtractPublicPropTypes; export declare type PopoverInternalProps = ExtractInternalPropTypes; declare const _default: import("vue").DefineComponent<{ internalRenderBody: PropType; show: { type: PropType; default: undefined; }; defaultShow: BooleanConstructor; showArrow: { type: BooleanConstructor; default: boolean; }; trigger: { type: PropType; default: string; }; delay: { type: NumberConstructor; default: number; }; duration: { type: NumberConstructor; default: number; }; raw: BooleanConstructor; placement: { type: PropType; default: string; }; x: NumberConstructor; y: NumberConstructor; disabled: BooleanConstructor; getDisabled: PropType<() => boolean>; displayDirective: { type: PropType<"show" | "if">; default: string; }; arrowStyle: PropType; filp: { type: BooleanConstructor; default: boolean; }; animated: { type: BooleanConstructor; default: boolean; }; width: { type: PropType; default: undefined; }; overlap: BooleanConstructor; internalExtraClass: { type: PropType; default: () => never[]; }; onClickoutside: PropType<(e: MouseEvent) => void>; 'onUpdate:show': PropType void>>; onUpdateShow: PropType void>>; zIndex: NumberConstructor; to: { type: PropType; default: undefined; }; internalSyncTargetWithParent: BooleanConstructor; internalInheritedEventHandlers: { type: PropType; default: () => never[]; }; /** @deprecated */ onShow: PropType void> | undefined>; /** @deprecated */ onHide: PropType void> | undefined>; /** @deprecated */ arrow: { type: PropType; default: undefined; }; /** @deprecated */ minWidth: NumberConstructor; /** @deprecated */ maxWidth: NumberConstructor; theme: PropType>; themeOverrides: PropType>>; builtinThemeOverrides: PropType>>; }, { binderInstRef: Ref<{ targetRef: HTMLElement | null; } | null>; positionManually: ComputedRef; mergedShowConsideringDisabledProp: ComputedRef; uncontrolledShow: Ref; mergedShowArrow: ComputedRef; getMergedShow: () => boolean; setShow: (value: boolean) => void; handleClick: () => void; handleMouseEnter: () => void; handleMouseLeave: () => void; handleFocus: () => void; handleBlur: () => void; syncPosition: () => void; }, unknown, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, Record, string, import("vue").VNodeProps & import("vue").AllowedComponentProps & import("vue").ComponentCustomProps, Readonly<{ internalRenderBody?: unknown; show?: unknown; defaultShow?: unknown; showArrow?: unknown; trigger?: unknown; delay?: unknown; duration?: unknown; raw?: unknown; placement?: unknown; x?: unknown; y?: unknown; disabled?: unknown; getDisabled?: unknown; displayDirective?: unknown; arrowStyle?: unknown; filp?: unknown; animated?: unknown; width?: unknown; overlap?: unknown; internalExtraClass?: unknown; onClickoutside?: unknown; 'onUpdate:show'?: unknown; onUpdateShow?: unknown; zIndex?: unknown; to?: unknown; internalSyncTargetWithParent?: unknown; internalInheritedEventHandlers?: unknown; onShow?: unknown; onHide?: unknown; arrow?: unknown; minWidth?: unknown; maxWidth?: unknown; theme?: unknown; themeOverrides?: unknown; builtinThemeOverrides?: unknown; } & { disabled: boolean; duration: number; raw: boolean; placement: FollowerPlacement; overlap: boolean; trigger: PopoverTrigger; showArrow: boolean; delay: number; displayDirective: "show" | "if"; filp: boolean; animated: boolean; defaultShow: boolean; internalExtraClass: string[]; internalSyncTargetWithParent: boolean; internalInheritedEventHandlers: TriggerEventHandlers[]; } & { show?: boolean | undefined; x?: number | undefined; y?: number | undefined; maxWidth?: number | undefined; minWidth?: number | undefined; width?: number | "trigger" | undefined; zIndex?: number | undefined; to?: string | boolean | HTMLElement | undefined; theme?: import("../../_mixins").Theme<"Popover", { fontSize: string; borderRadius: string; color: string; dividerColor: string; textColor: string; boxShadow: string; space: string; spaceArrow: string; arrowOffset: string; arrowOffsetVertical: string; arrowHeight: string; padding: string; }, any> | undefined; themeOverrides?: import("../../_mixins/use-theme").ExtractThemeOverrides> | undefined; builtinThemeOverrides?: import("../../_mixins/use-theme").ExtractThemeOverrides> | undefined; arrowStyle?: string | CSSProperties | undefined; onClickoutside?: ((e: MouseEvent) => void) | undefined; getDisabled?: (() => boolean) | undefined; "onUpdate:show"?: MaybeArray<(value: boolean) => void> | undefined; onUpdateShow?: MaybeArray<(value: boolean) => void> | undefined; onShow?: MaybeArray<(value: boolean) => void> | undefined; onHide?: MaybeArray<(value: boolean) => void> | undefined; arrow?: boolean | undefined; internalRenderBody?: InternalRenderBody | undefined; }>, { show: boolean | undefined; width: number | "trigger"; disabled: boolean; duration: number; to: string | boolean | HTMLElement; raw: boolean; placement: FollowerPlacement; overlap: boolean; trigger: PopoverTrigger; showArrow: boolean; delay: number; displayDirective: "show" | "if"; filp: boolean; animated: boolean; defaultShow: boolean; internalExtraClass: string[]; internalSyncTargetWithParent: boolean; internalInheritedEventHandlers: TriggerEventHandlers[]; arrow: boolean | undefined; }>; export default _default;