import { LitElement } from 'lit'; import { Placement } from '@floating-ui/dom'; import type ArcMenu from '../menu/ArcMenu.js'; /** * @slot default - The dropdown content. * @slot trigger - The dropdown trigger, usually an `` element. * * @event arc-show - Emitted when the dropdown opens. * @event arc-after-show - Emitted after the dropdown opens and all animations are complete. * @event arc-hide - Emitted when the dropdown closes. * @event arc-after-hide - Emitted after the dropdown closes and all animations are complete. * * @ssr - True */ export default class ArcDropdown extends LitElement { /** @internal */ static tag: string; static styles: import("lit").CSSResult[]; /** @internal */ trigger: HTMLElement; /** @internal */ triggerSlot: HTMLSlotElement; /** @internal */ positioner: HTMLElement; /** @internal */ panel: HTMLElement; /** @internal */ private _positionerCleanup; /** The preferred placement of the dropdown panel. */ placement: Placement; /** The dropdown will close when the user interacts outside of this element (e.g. clicking). */ containingElement?: HTMLElement; /** The distance in pixels from which to offset the panel away from its trigger. */ distance: number; /** The distance in pixels from which to offset the panel along its trigger. */ skidding: number; /** Indicates whether the dropdown is open. This can be used instead of the show/hide methods. */ open: boolean; /** Disables the dropdown so the panel will not open. */ disabled: boolean; /** Enable this option to prevent the panel from being clipped when the component is placed inside a container with overflow: auto|hidden|scroll. */ hoist: boolean; handleOpenChange(): Promise; handlePopoverOptionsChange(): void; handleDisabledChange(): void; connectedCallback(): void; firstUpdated(): Promise; disconnectedCallback(): void; private startPositioner; private updatePositioner; private stopPositioner; private _updateAccessibleTrigger; addOpenListeners(): void; removeOpenListeners(): void; show(): Promise | undefined; hide(): Promise | undefined; getMenu(): ArcMenu; focusOnTrigger(): void; handleDocumentKeyDown(event: KeyboardEvent): void; handleDocumentMouseDown(event: MouseEvent): void; handleTriggerKeyDown(event: KeyboardEvent): void; handleTriggerKeyUp(event: KeyboardEvent): void; handleTriggerClick(): void; handlePanelSelect(event: CustomEvent): void; protected render(): import("lit-html").TemplateResult<1>; } declare global { interface HTMLElementTagNameMap { 'arc-dropdown': ArcDropdown; } }