import { FASTElement } from "@microsoft/fast-element"; import { HTMLPopoverElement, PopoverMode, PopoverRepositionMode, PopoverSize, PositioningShorthandValues } from "./popover.options.js"; export declare class Popover extends FASTElement { private positioning; /** #@ ariaLabel */ ariaLabel: string | null; /** * beak * * renders the beak of the popover */ beak: boolean; /** * clickable * * Defaults to True. Set to false if the popover anchor is not meant to be clickable */ clickable: boolean; /** * size */ size: PopoverSize; /** * mode * Sets the popover mode. In auto mode the popover closes when the user clicks outside of the popover. In manual mode, the popover will not close when the user clicks outside of the popover. */ mode: PopoverMode; /** * position */ position: PositioningShorthandValues; /** * targetId */ targetId: string | undefined; /** * anchorReferences */ anchorReferences: HTMLElement[] | undefined; /** * anchorReferencesChanged * * Adds anchor attributes and event listeners when the anchor is added to the DOM. */ anchorReferencesChanged(): void; /** * repositionMode * * Flip causes the popover to move to the opposite side. Auto causes the popover to move to the next available position. */ repositionMode: PopoverRepositionMode; /** * repositionModeChanged */ repositionModeChanged(): void; /** * ## openPositions * * An array of open positions based on the collisionEdge */ openPositions: Array; /** * originalPopoverPosition * * Tracks the original position of the popover before it was repositioned so that it can be reset when the popover is no longer overflowing */ private originalPopoverPosition; /** * open */ open: boolean; /** * openChanged * * Opens and closes the popover. It's used to control the popover from the outside. However, it's not recommended to use this property to control the popover before load. To control the popover correctly, wait until the window has fully loaded before opening the popover. * * Adds and removes many of the event listeners. */ openChanged(): void; addActiveHandlers(): void; /** * popoverReference */ popoverReference: HTMLPopoverElement | undefined; /** * initializeTargetId * * initializes the targetId with a random id if it's not set by the user */ private initializeTargetId; /** * overflowBoundary * * The boundary container of the popover for use in repositioning the floating popover in the event that the popover needs to respond to a positiioning boundary other than the window or document body */ overflowBoundaryRef: Element | null | undefined; /** * overflowBoundaryRefChanged */ overflowBoundaryRefChanged(): void; /** * overflowBoundarySelector * * This selector is used to define the boundary container of the popover - for use in repositioning the floating popover */ overflowBoundarySelector: string | undefined; /** * registerOverflowBoundary * * Saves a reference to the containing element of the popover if the overflowBoundarySelector is set */ private registerOverflowBoundary; /** * hidePopover */ hidePopover: () => void; /** * showPopover */ showPopover: () => void; /** * togglePopover */ togglePopover: () => void; /** * ## emitHideEvent * */ emitHideEvent: () => void; /** * ## emitOpenEvent */ emitShowEvent: () => void; /** * ## emitToggleEvent */ emitToggleEvent(): void; /** * emitMouseOverEvent */ emitMouseEnterEvent: () => void; /** * emitMouseOutEvent */ emitMouseLeaveEvent: () => void; /** * addMouseOverEventListeners */ private addMouseOverEventListeners; /** * removeMouseOverEventListeners */ private removeMouseOverEventListeners; /** * ## updatePopoverPosition */ private updatePopoverPosition; /** * handleWindowChanges */ private handleWindowChanges; /** * addAnchorEventListeners */ private addAnchorEventListeners; /** * addOverflowBoundaryEventListeners * * adds event listeners to the overflowBoundary if it exists. This is used to reposition the popover when the overflowBoundary is scrolled, like in the case of an overflowed scrollable container that has a popover as a child. */ private addOverflowBoundaryEventListeners; /** * addWindowEventListeners */ private addWindowEventListeners; /** * removeWindowEventListeners */ private removeWindowEventListeners; private handleWindowClick; /** * addOverlayEventListeners */ private addOverlayEventListeners; /** * removeOverlayEventListeners */ private removeOverlayEventListeners; /** * intersectionObserver * * used for tracking the overflow / collision of the popover to adjacent edges on ui changes */ private intersectionObserver; /** * createOverflowHandler * * handles the overflow of the popover based on the overflowBoundarySelector */ private createOverflowHandler; /** * handleOverflow * * Repositions the popover when it collides with its container or user defined overflowed boundary. * * Called by the intersectionObserver in createOverflowHandler. */ private handleOverflow; /** * ## addRepositioningHandlers */ addRepositioningHandlers(): void; /** * ## addPositioningManager */ createPositioningManager(): void; /** * ## removeEventListeners */ removeEventListeners(): void; /** * ## releasePositions * * cleans the positions that are not allowed */ private releasePositions; /** * repositionPopover * * Updates the position of the popover based on popover collisions */ private repositionPopover; /** * observePopoverOverflow * * Disconnects and re-observes the popoverReference for overflow. This is used to reposition the popover in the event that it collides with its container or user defined overflowed boundary. Disconnecting is required to reset the baseline for the intersection observer. This method will be called repeatedly on ui changes like resizing the window or scrolling the overflowBoundary. */ private observePopoverOverflow; connectedCallback(): void; } //# sourceMappingURL=popover.d.ts.map