export declare class VisibilityObserver { private callback; private targetElement?; private mutationObservers; constructor(callback: (visible: boolean) => void | Promise); isVisible(element: HTMLElement): boolean; observe(element: HTMLElement): void; unobserve(): void; disconnect(): void; private watchElementVisibility; private handleVisibilityChange; private emitVisibilityChange; }