aboutsummaryrefslogtreecommitdiffstats
path: root/components/script_bindings/webidls/CustomElementRegistry.webidl
blob: 818e8892461d414e4df7fcfc1b28150b2927edad (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
/* 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 https://mozilla.org/MPL/2.0/. */

// https://html.spec.whatwg.org/multipage/#customelementregistry
[Exposed=Window, Pref="dom_customelements_enabled"]
interface CustomElementRegistry {
  [Throws, CEReactions]
  undefined define(
    DOMString name,
    CustomElementConstructor constructor_,
    optional ElementDefinitionOptions options = {}
  );

  any get(DOMString name);

  DOMString? getName(CustomElementConstructor constructor);

  Promise<CustomElementConstructor> whenDefined(DOMString name);

  [CEReactions] undefined upgrade(Node root);
};

callback CustomElementConstructor = HTMLElement();

dictionary ElementDefinitionOptions {
  DOMString extends;
};