import { LitElement } from "lit";

//#region src/elements/ElementPositionInfo.d.ts
type Constructor<T = {}> = new (...args: any[]) => T;
/**
 * Element position information interface.
 * Provides computed position, bounds, and transform information for elements.
 */
interface ElementPositionInfo {
  /**
   * The bounding rectangle of the element in screen coordinates.
   */
  bounds: DOMRect;
  /**
   * The computed transform string (e.g., "translate(10px, 20px) rotate(45deg)").
   */
  transform: string;
  /**
   * The rotation angle in degrees, extracted from the transform.
   */
  rotation: number;
}
/**
 * Mixin that adds getPositionInfo() method to LitElement.
 * Elements can use this to expose their position information.
 */
declare function PositionInfoMixin<T extends Constructor<LitElement>>(superClass: T): T;
/**
 * Helper function to get position info from any HTMLElement.
 * Reads computed styles and bounding rect to determine position.
 */
declare function getPositionInfoFromElement(element: HTMLElement | null): ElementPositionInfo | null;
//#endregion
export { ElementPositionInfo, PositionInfoMixin, getPositionInfoFromElement };
//# sourceMappingURL=ElementPositionInfo.d.ts.map