chromium/third_party/blink/renderer/core/css/cssom/style_property_map_read_only.idl

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

// Spec: https://drafts.css-houdini.org/css-typed-om/#the-stylepropertymap
[
    Exposed=(Window,LayoutWorklet,PaintWorklet)
] interface StylePropertyMapReadOnly {
    iterable<CSSOMString, sequence<CSSStyleValue>>;
    /* TODO: This should return (undefined or CSSStyleValue),
       but IDL doesn't have anything like that yet. See:
       https://github.com/heycam/webidl/issues/60 */
    [RaisesException, CallWith=ExecutionContext] CSSStyleValue? get(CSSOMString property);
    [RaisesException, CallWith=ExecutionContext] sequence<CSSStyleValue> getAll(CSSOMString property);
    [RaisesException, CallWith=ExecutionContext] boolean has(CSSOMString property);
    readonly attribute unsigned long size;
};