summaryrefslogtreecommitdiffstats
path: root/dom/webidl/CustomElementRegistry.webidl
diff options
context:
space:
mode:
Diffstat (limited to 'dom/webidl/CustomElementRegistry.webidl')
-rw-r--r--dom/webidl/CustomElementRegistry.webidl26
1 files changed, 26 insertions, 0 deletions
diff --git a/dom/webidl/CustomElementRegistry.webidl b/dom/webidl/CustomElementRegistry.webidl
new file mode 100644
index 0000000000..aea345d647
--- /dev/null
+++ b/dom/webidl/CustomElementRegistry.webidl
@@ -0,0 +1,26 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this file,
+ * You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+// https://html.spec.whatwg.org/#dom-window-customelements
+[Exposed=Window]
+interface CustomElementRegistry {
+ [CEReactions, Throws, UseCounter]
+ void define(DOMString name, CustomElementConstructor constructor,
+ optional ElementDefinitionOptions options = {});
+ [ChromeOnly, Throws]
+ void setElementCreationCallback(DOMString name, CustomElementCreationCallback callback);
+ any get(DOMString name);
+ [Throws]
+ Promise<CustomElementConstructor> whenDefined(DOMString name);
+ [CEReactions] void upgrade(Node root);
+};
+
+dictionary ElementDefinitionOptions {
+ DOMString extends;
+};
+
+callback constructor CustomElementConstructor = any ();
+
+[MOZ_CAN_RUN_SCRIPT_BOUNDARY]
+callback CustomElementCreationCallback = void (DOMString name);