import type { Emitter } from '@mantou/gem/lib/decorators'; import type { TemplateResult } from '@mantou/gem/lib/element'; import { GemElement } from '@mantou/gem/lib/element'; import type { StyleObject } from '@mantou/gem/lib/utils'; import './reflect'; type Position = 'top' | 'bottom' | 'right' | 'left' | 'topLeft' | 'topRight' | 'bottomLeft' | 'bottomRight'; type GhostStyle = { '--bg': string; '--color': string; } & StyleObject; type PopoverOptions = { delay?: number; unreachable?: boolean; content?: string | TemplateResult; position?: Position; ghostStyle?: GhostStyle; trigger?: 'click' | 'hover'; }; type CloseCallback = { (): void; instance: DuoyunPopoverElement; }; export declare class DuoyunPopoverElement extends GemElement { #private; static slot: string; debug: boolean; unreachable: boolean; disabled: boolean; trigger: 'click' | 'hover'; position: Position | 'auto'; content?: string | TemplateResult; open: Emitter; close: Emitter; static open(e: Element, option: PopoverOptions): CloseCallback; static open(x: number, y: number, option: PopoverOptions): CloseCallback; static open(xywh: number[], option: PopoverOptions): CloseCallback; static ghostStyle: GhostStyle; constructor(options?: PopoverOptions); get popoverElement(): DuoyunPopoverGhostElement | undefined; render: () => TemplateResult; ghostStyle?: GhostStyle; } export declare const Popover: typeof DuoyunPopoverElement; export declare class DuoyunPopoverGhostElement extends GemElement { #private; close: Emitter; } export {}; //# sourceMappingURL=popover.d.ts.map