import { type EventEmitter } from '../../stencil-public-runtime'; import type { DropdownPlacement, DropdownSelectEventDetail, DropdownStrategy, DropdownToggleEventDetail, Theme } from './types'; import type { ButtonSize, ButtonVariant } from '../diwa-button/types'; export declare class DiwaDropdown { host: HTMLElement; theme: Theme; open: boolean; disabled: boolean; submenu: boolean; placement: DropdownPlacement; strategy: DropdownStrategy; offsetPx: number; matchTriggerWidth: boolean; closeOnSelect: boolean; triggerLabel: string; triggerVariant: ButtonVariant; triggerSize: ButtonSize; triggerIcon: string; hideTriggerLabel: boolean; toggle: EventEmitter; select: EventEmitter; private floatingStyle; /** * Becomes `true` only after Floating UI resolves position coordinates. * The panel CSS uses this to gate the entry animation and prevent a (0,0) flash. */ private isPositioned; private triggerSlotEl?; private contentSlotEl?; private panelEl?; private fallbackTriggerEl?; private cleanupAutoUpdate?; private boundTriggerEl?; /** Light-DOM items that currently have hover/active listeners attached. */ private itemHandlerTargets; onOpenChange(nextOpen: boolean): Promise; onPositionPropsChange(): Promise; componentDidLoad(): void; disconnectedCallback(): void; show(): Promise; hide(): Promise; toggleOpen(): Promise; handleGlobalKeydown(event: KeyboardEvent): void; handleGlobalPointerDown(event: PointerEvent): void; private get effectivePlacement(); private getTriggerEl; private resolveTriggerRef; private detachTriggerHandlers; private attachItemInteractionHandlers; private detachItemInteractionHandlers; private onItemMouseEnter; private onItemMouseLeave; private onItemMouseDown; private onItemMouseUp; private startAutoUpdate; private stopAutoUpdate; private updatePosition; private isPotentialItem; private onPanelClick; private getKeyboardItems; private focusItemByIndex; private onTriggerClick; private onTriggerKeyDown; private onPanelKeyDown; render(): any; } //# sourceMappingURL=diwa-dropdown.d.ts.map