export declare class PositionObserver { positionObserverCallback: (data: { x: number; y: number; target: Element; outOfViewport: boolean; rootBounds: DOMRectReadOnly | null; }) => void; thresholdList: number[]; intersectionObserver?: IntersectionObserver; constructor(positionObserverCallback: (data: { x: number; y: number; target: Element; outOfViewport: boolean; rootBounds: DOMRectReadOnly | null; }) => void, thresholdFraction?: number); observe(targetElement: Element): void; viewportCallback(e: IntersectionObserverEntry[]): void; intersectionObsCallback(e: IntersectionObserverEntry[]): void; disconnect(): void; constructBoxWindow(targetBounds: DOMRectReadOnly, rootBounds: DOMRectReadOnly): { left: number; top: number; right: number; bottom: number; }; getMargins(windowDimensions: { left: number; top: number; right: number; bottom: number; }, rootBounds: DOMRectReadOnly | null): string; }