import * as _angular_core from '@angular/core'; import { TemplateRef } from '@angular/core'; import { BooleanInput } from '@angular/cdk/coercion'; /** * @license * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://github.com/thekhegay/ngwr/blob/main/LICENSE */ type WrPopoverPosition = 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end'; declare class WrPopover { /** * Content to render inside the panel. * - In **popover** mode (default): pass a `TemplateRef`. * - In **tooltip** mode: pass a plain string. */ readonly content: _angular_core.InputSignal>; /** * Shape preset. * * - `'popover'` (default) — template content, click trigger, dialog * semantics. * - `'tooltip'` — text content, hover+focus trigger, `role="tooltip"`, * `aria-describedby` on the host. */ readonly mode: _angular_core.InputSignal<"tooltip" | "popover">; /** * How the popover opens. Ignored in tooltip mode — tooltips are always * hover+focus. @default 'click' */ readonly trigger: _angular_core.InputSignal<"click" | "hover">; /** Anchor side. @default 'bottom' for popover, 'top' for tooltip */ readonly position: _angular_core.InputSignal; /** Tooltip only — delay before showing, in ms. @default 120 */ readonly showDelay: _angular_core.InputSignalWithTransform; /** Tooltip only — delay before hiding, in ms. @default 60 */ readonly hideDelay: _angular_core.InputSignalWithTransform; /** * Popover mode only — present the panel as a full-width bottom-sheet on * small viewports instead of an anchored panel. `undefined` follows the * app-wide `provideWrResponsiveOverlays()` setting; `true`/`false` * overrides it. Tooltips never become sheets. @default undefined */ readonly responsive: _angular_core.InputSignalWithTransform; /** Fires after the panel opens. */ readonly opened: _angular_core.OutputEmitterRef; /** Fires after the panel closes. */ readonly closed: _angular_core.OutputEmitterRef; private readonly host; private readonly overlay; private readonly responsiveConfig; private readonly vcr; private readonly scrollStrategies; private readonly destroyRef; /** @internal */ readonly isOpen: _angular_core.WritableSignal; /** @internal */ protected readonly isTooltip: _angular_core.Signal; /** Auto-generated id for `aria-controls` / `aria-describedby`. */ protected readonly panelId: string; private readonly resolvedPosition; private overlayRef; private hoverCloseTimer; private showTimer; private hideTimer; constructor(); open(): void; close(): void; toggle(): void; /** @internal */ protected onClick(event: MouseEvent): void; /** @internal */ protected onMouseEnter(): void; /** @internal */ protected onMouseLeave(event: MouseEvent): void; /** @internal */ protected onFocus(): void; /** @internal */ protected onBlur(): void; /** @internal */ protected onEscape(): void; private scheduleShow; private scheduleHide; private clearTimers; private openOverlay; private closeOverlay; private readonly onOverlayLeave; private readonly onOverlayEnter; private scheduleHoverClose; private clearHoverClose; static ɵfac: _angular_core.ɵɵFactoryDeclaration; static ɵdir: _angular_core.ɵɵDirectiveDeclaration; } export { WrPopover }; export type { WrPopoverPosition };