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 file,
4 * You can obtain one at http://mozilla.org/MPL/2.0/.
6 * The origin of this IDL file is
7 * http://slightlyoff.github.io/ServiceWorker/spec/service_worker/index.html#service-worker-obj
11 // Still unclear what should be subclassed.
12 // https://github.com/slightlyoff/ServiceWorker/issues/189
13 [Func="ServiceWorkerVisible",
14 // FIXME(nsm): Bug 1113522. This is exposed to satisfy webidl constraints, but it won't actually work.
15 Exposed=(Window,Worker)]
16 interface ServiceWorker : EventTarget {
17 readonly attribute USVString scriptURL;
18 readonly attribute ServiceWorkerState state;
20 attribute EventHandler onstatechange;
23 undefined postMessage(any message, sequence<object> transferable);
25 undefined postMessage(any message, optional StructuredSerializeOptions options = {});
28 ServiceWorker includes AbstractWorker;
30 enum ServiceWorkerState {
31 // https://github.com/w3c/ServiceWorker/issues/1162