chromium/third_party/blink/renderer/core/layout/custom/layout_child.idl

// Copyright 2018 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.css-houdini.org/css-layout-api/#layoutchild

[
  Exposed=LayoutWorklet,
  ImplementedAs=CustomLayoutChild,
  RuntimeEnabled=CSSLayoutAPI
]
interface LayoutChild {
  readonly attribute StylePropertyMapReadOnly styleMap;

  [CallWith=ScriptState, RaisesException] Promise<IntrinsicSizes> intrinsicSizes();
  [CallWith=ScriptState, RaisesException] Promise<LayoutFragment> layoutNextFragment(optional CustomLayoutConstraintsOptions options = {});
};