import { type AutoUpdateOptions, type ComputePositionConfig, type ComputePositionReturn, type Middleware, type Placement, type Platform, type Strategy } from '@floating-ui/dom'; import type { PropertyDeclarations } from 'lit'; import type { FloatingElementEventMap } from '../../definitions/events.js'; import { AracnaBaseElement as BaseElement } from './base-element.js'; declare class FloatingElement extends BaseElement { protected _arrowElement?: HTMLElement; protected _referenceElement?: HTMLElement; /** * Properties */ /** */ ancestorScroll?: boolean; ancestorResize?: boolean; animationFrame?: boolean; arrowPadding?: number; elementResize?: boolean; middlewares?: Middleware[]; placement?: Placement; platform?: Platform; strategy?: Strategy; /** * Internals */ /** */ cleanup?: Function; connectedCallback(): void; attributeChangedCallback(name: string, _old: string | null, value: string | null): void; disconnectedCallback(): void; computePosition: () => Promise; onSlotChange(): void; getArrowStaticSideX(position: ComputePositionReturn): 'left' | 'right'; getArrowStaticSideY(position: ComputePositionReturn): 'top' | 'bottom'; get autoUpdateOptions(): Partial; get computePositionConfig(): Partial; get arrowElement(): HTMLElement | undefined; set arrowElement(element: HTMLElement | undefined); get referenceElement(): HTMLElement | undefined; set referenceElement(element: HTMLElement | undefined); static properties: PropertyDeclarations; } export { FloatingElement as AracnaFloatingElement };