import { ComputePositionReturn, Placement } from "@floating-ui/dom"; import { EventEmitter } from "../../stencil-public-runtime"; export type SwirlPopoverAnimation = "fade-in" | "scale-in-xy" | "scale-in-y"; export type SwirlPopoverControlMethod = "click" | "hover" | "programmatic"; declare const swirlPopoverBorderRadiusTokens: readonly ["xs", "sm", "base", "l", "xl"]; export type SwirlPopoverBorderRadius = (typeof swirlPopoverBorderRadiusTokens)[number] | string; /** Mirrors {@link https://floating-ui.com/docs/flip#fallbackaxissidedirection Floating UI `flip`}. */ export type SwirlPopoverFallbackAxisSideDirection = "none" | "start" | "end"; /** * @slot slot - The popover content. */ export declare class SwirlPopover { el: HTMLSwirlPopoverElement; animation?: SwirlPopoverAnimation; disableScrollLock?: boolean; enableFlip?: boolean; fallbackAxisSideDirection?: SwirlPopoverFallbackAxisSideDirection; fullscreenBottomSheet?: boolean; label: string; maxHeight?: string; offset?: number | number[]; padded?: boolean; popoverId?: string; placement?: Placement; returnFocusToTrigger?: boolean; translucent?: boolean; transparent?: boolean; trigger?: string | HTMLElement; triggerContainer?: HTMLElement; useContainerWidth?: boolean | string; borderRadius?: SwirlPopoverBorderRadius; active: boolean; closing: boolean; position: ComputePositionReturn; popoverClose: EventEmitter; popoverOpen: EventEmitter<{ position: ComputePositionReturn; }>; private componentLoaded; private popoverEl; private contentContainer; private disableAutoUpdate; private openedVia?; private scrollContainer; private triggerEl; connectedCallback(): void; componentDidLoad(): void; disconnectedCallback(): void; onWindowFocusIn(event: FocusEvent): void; onWindowBlur(): void; onWindowClick(event: MouseEvent): void; /** * Close the popover. * @returns */ close(disableFocus?: boolean): Promise; /** * Open the popover. * @returns */ open(triggerEl?: HTMLElement, disableFocus?: boolean, via?: SwirlPopoverControlMethod): Promise; /** * Return whether the popover is open. * @returns Promise */ isOpen(): Promise; /** * Toggles the popover. */ toggle(triggerEl?: HTMLElement, via?: SwirlPopoverControlMethod): Promise; togglePopover: (event: Event) => void; private connectTrigger; private getNativeTriggerElement; private onKeydown; private updateTriggerAttributes; private getFocusableChildren; private adjustWidth; private reposition; private lockBodyScroll; private unlockBodyScroll; private onCloseButtonClick; render(): any; } export {};