import { type HTMLAttributes } from 'vue';
import type { Placement } from '@popperjs/core';
type PopoverProps = {
placement?: Placement;
strategy?: 'absolute' | 'fixed';
offset?: [number, number];
isOpen?: boolean;
parentElementTag?: keyof HTMLElementTagNameMap;
reference?: string | Element;
usePortalTarget?: string;
usePortal?: boolean;
zIndex?: number;
showPopoverArrow?: boolean;
} & /* @vue-ignore */ HTMLAttributes;
declare var __VLS_17: {};
type __VLS_Slots = {} & {
default?: (props: typeof __VLS_17) => any;
};
declare const __VLS_base: import("vue").DefineComponent any;
hide: () => any;
"popover-placement": (placement: Placement) => any;
}, string, import("vue").PublicProps, Readonly & Readonly<{
onShow?: (() => any) | undefined;
onHide?: (() => any) | undefined;
"onPopover-placement"?: ((placement: Placement) => any) | undefined;
}>, {
placement: Placement;
offset: [number, number];
zIndex: number;
strategy: "absolute" | "fixed";
isOpen: boolean;
parentElementTag: keyof HTMLElementTagNameMap;
reference: string | Element;
usePortalTarget: string;
usePortal: boolean;
showPopoverArrow: boolean;
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
declare const __VLS_export: __VLS_WithSlots;
declare const _default: typeof __VLS_export;
export default _default;
type __VLS_WithSlots = T & {
new (): {
$slots: S;
};
};