// GENERATED CONTENT - DO NOT EDIT // Content was automatically extracted by Reffy into reffy-reports // (https://github.com/tidoust/reffy-reports) // Source: Intersection Observer (https://w3c.github.io/IntersectionObserver/) callback IntersectionObserverCallback = void (sequence entries, IntersectionObserver observer); [Constructor(IntersectionObserverCallback callback, optional IntersectionObserverInit options), Exposed=Window] interface IntersectionObserver { readonly attribute Element? root; readonly attribute DOMString rootMargin; readonly attribute FrozenArray thresholds; void observe(Element target); void unobserve(Element target); void disconnect(); sequence takeRecords(); }; [Constructor(IntersectionObserverEntryInit intersectionObserverEntryInit)] interface IntersectionObserverEntry { readonly attribute DOMHighResTimeStamp time; readonly attribute DOMRectReadOnly? rootBounds; readonly attribute DOMRectReadOnly boundingClientRect; readonly attribute DOMRectReadOnly intersectionRect; readonly attribute boolean isIntersecting; readonly attribute double intersectionRatio; readonly attribute Element target; }; dictionary IntersectionObserverEntryInit { required DOMHighResTimeStamp time; required DOMRectInit? rootBounds; required DOMRectInit boundingClientRect; required DOMRectInit intersectionRect; required boolean isIntersecting; required double intersectionRatio; required Element target; }; dictionary IntersectionObserverInit { Element? root = null; DOMString rootMargin = "0px"; (double or sequence) threshold = 0; };