Bug 1885602 - Part 5: Implement navigating to the SUMO help topic from the menu heade...
[gecko.git] / dom / webidl / Worker.webidl
blob155a21cb3a4d8ae004c3e43083d51d108ad56d5d
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
2 /* This Source Code Form is subject to the terms of the Mozilla Public
3  * License, v. 2.0. If a copy of the MPL was not distributed with this
4  * file, You can obtain one at http://mozilla.org/MPL/2.0/.
5  *
6  * The origin of this IDL file is
7  * https://html.spec.whatwg.org/multipage/workers.html
8  *
9  * © Copyright 2004-2011 Apple Computer, Inc., Mozilla Foundation, and Opera
10  * Software ASA.
11  * You are granted a license to use, reproduce and create derivative works of
12  * this document.
13  */
15 [Exposed=(Window,DedicatedWorker,SharedWorker)]
16 interface Worker : EventTarget {
17   [Throws]
18   constructor(USVString scriptURL, optional WorkerOptions options = {});
20   undefined terminate();
22   [Throws]
23   undefined postMessage(any message, sequence<object> transfer);
24   [Throws]
25   undefined postMessage(any message, optional StructuredSerializeOptions aOptions = {});
27   attribute EventHandler onmessage;
28   attribute EventHandler onmessageerror;
31 Worker includes AbstractWorker;
33 dictionary WorkerOptions {
34   [Pref="dom.workers.modules.enabled"]
35   WorkerType type = "classic";
36   [Pref="dom.workers.modules.enabled"]
37   RequestCredentials credentials = "same-origin"; // credentials is only used if type is "module"
38   DOMString name = "";
41 enum WorkerType { "classic", "module" };
43 [Func="mozilla::dom::ChromeWorker::WorkerAvailable",
44  Exposed=(Window,DedicatedWorker,SharedWorker)]
45 interface ChromeWorker : Worker {
46   [Throws]
47   constructor(USVString scriptURL, optional WorkerOptions options = {});