/**
* SvPopover - a floating panel anchored to a trigger, portalled to
so it
* escapes any `overflow:hidden` ancestor. Open on click (default), hover, or
* manually via `open`. Positioned by the shared engine (`computePosition`): full
* placement matrix + flip + shift + an optional arrow, kept in sync with
* `autoUpdate`. Closes on outside-click / Escape via the dismissable layer
* stack, and animates in. The panel is hoverable (interactive) under the hover
* trigger. Parity: Smart popover.
*
* ```svelte
*
* {#snippet anchor()}{/snippet}
*
Panel content
*
* ```
*/
import type { Snippet } from 'svelte';
import { type Placement } from './positioning';
type Props = {
/** Controlled open state (bindable). */
open?: boolean;
onOpenChange?: (open: boolean) => void;
/** How the anchor opens the panel. `manual` = only `open` drives it. */
trigger?: 'click' | 'hover' | 'manual';
/** Preferred placement (flips when there is no room). Default `bottom-start`. */
placement?: Placement;
/** Main-axis gap between trigger and panel. Default 8 (room for the arrow). */
offset?: number;
/** Render a pointer arrow toward the trigger. Default true. */
arrow?: boolean;
/** Hover trigger: delay (ms) before opening. Default 0. */
openDelay?: number;
/** Hover trigger: delay (ms) before closing after leave. Default 120. */
closeDelay?: number;
/** Estimated panel height, used before the panel has been measured. */
estimatedHeight?: number;
/** Force a minimum panel width (else it hugs its content). */
minWidth?: number;
/** Close when clicking outside. Default true. */
closeOnOutsideClick?: boolean;
ariaLabel?: string;
/** The anchor element(s) that open the panel. */
anchor?: Snippet;
/** Panel content. */
children?: Snippet;
};
declare const SvPopover: import("svelte").Component;
type SvPopover = ReturnType;
export default SvPopover;