blob: 8061cb734e4ae188dcbd911d96dd1d929a009353 [file] [log] [blame]
// 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.
// https://html.spec.whatwg.org/C/custom-elements.html#customelementregistry
interface CustomElementRegistry {
[CallWith=ScriptState, CEReactions, CustomElementCallbacks, RaisesException, MeasureAs=CustomElementRegistryDefine] void define(DOMString name, CustomElementConstructor constructor, optional ElementDefinitionOptions options);
any get(DOMString name);
[CallWith=ScriptState,RaisesException] Promise<void> whenDefined(DOMString name);
[CEReactions] void upgrade(Node root);
};
callback CustomElementConstructor = any ();
// Blink specific types. HTML standard does not explicitly define these types.
callback CustomElementAdoptedCallback = void (Document oldOwner, Document newOwner);
callback CustomElementAttributeChangedCallback = void (DOMString localName, DOMString? oldValue, DOMString? newValue, USVString? attrNamespace);
callback CustomElementFormAssociatedCallback = void (HTMLFormElement? form);
callback CustomElementDisabledStateChangedCallback = void (boolean disabled);