chromium/third_party/blink/renderer/core/resize_observer/resize_observer.idl

// Copyright 2016 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

// https://drafts.csswg.org/resize-observer-1/#resize-observer-callback

callback ResizeObserverCallback = void (sequence<ResizeObserverEntry> entries, ResizeObserver observer);

// https://drafts.csswg.org/resize-observer-1/#resize-observer-interface

[
    Exposed=Window,
    ActiveScriptWrappable
] interface ResizeObserver {
    [CallWith=ScriptState, MeasureAs=ResizeObserver_Constructor] constructor(ResizeObserverCallback callback);
    void observe(Element target, ResizeObserverOptions options);
    void observe(Element target);
    void unobserve(Element target);
    void disconnect();
};