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

[
    RuntimeEnabled=CSSTypedOM,
    GarbageCollected
] interface StylePropertyMap {
    [RaisesException] void append(DOMString property, (StyleValue or sequence<StyleValue> or DOMString) value);
    [RaisesException, ImplementedAs=remove] void delete(DOMString property);
    StyleValue? get(DOMString property);
    sequence<StyleValue> getAll(DOMString property);
    boolean has(DOMString property);
    [RaisesException] void set(DOMString property, (StyleValue or sequence<StyleValue> or DOMString) value);
    iterable<DOMString, (StyleValue or sequence<StyleValue>)>;
    sequence<DOMString> getProperties();
};
