{
    "cache-add": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Cache.json",
            "name": "add",
            "slug": "API/Cache/add",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Cache/add",
            "summary": "The add() method of the Cache interface takes a URL, retrieves it, and adds the resulting response object to the given cache.",
            "support": {
                "chrome": {
                    "version_added": "44",
                    "notes": "Requires HTTPS from version 46."
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": false
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": {
                    "version_added": "4.0",
                    "notes": "Requires HTTPS from Samsung Internet 5.0."
                },
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79",
                    "notes": "Requires HTTPS from version 46."
                }
            },
            "title": "Cache: add() method"
        }
    ],
    "cache-addAll": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Cache.json",
            "name": "addAll",
            "slug": "API/Cache/addAll",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Cache/addAll",
            "summary": "The addAll() method of the Cache interface takes an array of URLs, retrieves them, and adds the resulting response objects to the given cache. The request objects created during retrieval become keys to the stored response operations.",
            "support": {
                "chrome": {
                    "version_added": "46",
                    "notes": "Requires HTTPS."
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": false
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79",
                    "notes": "Requires HTTPS."
                }
            },
            "title": "Cache: addAll() method"
        }
    ],
    "cache-delete": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Cache.json",
            "name": "delete",
            "slug": "API/Cache/delete",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Cache/delete",
            "summary": "The delete() method of the Cache interface finds the Cache entry whose key is the request, and if found, deletes the Cache entry and returns a Promise that resolves to true. If no Cache entry is found, it resolves to false.",
            "support": {
                "chrome": {
                    "version_added": "43"
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": "1.26",
                    "notes": "Currently doesn't support query options"
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Cache: delete() method"
        }
    ],
    "cache-keys": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Cache.json",
            "name": "keys",
            "slug": "API/Cache/keys",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Cache/keys",
            "summary": "The keys() method of the Cache interface returns a Promise that resolves to an array of Request objects representing the keys of the Cache.",
            "support": {
                "chrome": {
                    "version_added": "43"
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": false
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Cache: keys() method"
        }
    ],
    "cache-match": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Cache.json",
            "name": "match",
            "slug": "API/Cache/match",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Cache/match",
            "summary": "The match() method of the Cache interface returns a Promise that resolves to the Response associated with the first matching request in the Cache object. If no match is found, the Promise resolves to undefined.",
            "support": {
                "chrome": {
                    "version_added": "43"
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": "1.26",
                    "notes": "Currently doesn't support query options"
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Cache: match() method"
        }
    ],
    "cache-matchall": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Cache.json",
            "name": "matchAll",
            "slug": "API/Cache/matchAll",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Cache/matchAll",
            "summary": "The matchAll() method of the Cache interface returns a Promise that resolves to an array of all matching responses in the Cache object.",
            "support": {
                "chrome": {
                    "version_added": "47"
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": false
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "34",
                    "notes": "Requires HTTPS."
                },
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Cache: matchAll() method"
        }
    ],
    "cache-put": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Cache.json",
            "name": "put",
            "slug": "API/Cache/put",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Cache/put",
            "summary": "The put() method of the Cache interface allows key/value pairs to be added to the current Cache object.",
            "support": {
                "chrome": {
                    "version_added": "43",
                    "notes": "Requires HTTPS from version 46."
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": "1.26"
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": {
                    "version_added": "4.0",
                    "notes": "Requires HTTPS from Samsung Internet 5.0."
                },
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79",
                    "notes": "Requires HTTPS from version 46."
                }
            },
            "title": "Cache: put() method"
        }
    ],
    "cache-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Cache.json",
            "name": "Cache",
            "slug": "API/Cache",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Cache",
            "summary": "The Cache interface provides a persistent storage mechanism for Request / Response object pairs that are cached in long lived memory. How long a Cache object lives is browser dependent, but a single origin's scripts can typically rely on the presence of a previously populated Cache object. Note that the Cache interface is exposed to windowed scopes as well as workers. You don't have to use it in conjunction with service workers, even though it is defined in the service worker spec.",
            "support": {
                "chrome": {
                    "version_added": "40",
                    "notes": "Before version 43, only service workers are supported. From version 43, all worker types and the main thread are supported."
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": "1.26"
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": {
                    "version_added": "4.0"
                },
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79",
                    "notes": "Before version 43, only service workers are supported. From version 43, all worker types and the main thread are supported."
                }
            },
            "title": "Cache"
        }
    ],
    "cache-storage-delete": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/CacheStorage.json",
            "name": "delete",
            "slug": "API/CacheStorage/delete",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/CacheStorage/delete",
            "summary": "The delete() method of the CacheStorage interface finds the Cache object matching the cacheName, and if found, deletes the Cache object and returns a Promise that resolves to true. If no Cache object is found, it resolves to false.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": "1.26"
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "CacheStorage: delete() method"
        }
    ],
    "cache-storage-has": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/CacheStorage.json",
            "name": "has",
            "slug": "API/CacheStorage/has",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/CacheStorage/has",
            "summary": "The has() method of the CacheStorage interface returns a Promise that resolves to true if a Cache object matches the cacheName.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": "1.26"
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "CacheStorage: has() method"
        }
    ],
    "cache-storage-keys": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/CacheStorage.json",
            "name": "keys",
            "slug": "API/CacheStorage/keys",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/CacheStorage/keys",
            "summary": "The keys() method of the CacheStorage interface returns a Promise that will resolve with an array containing strings corresponding to all of the named Cache objects tracked by the CacheStorage object in the order they were created. Use this method to iterate over a list of all Cache objects.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": false
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "CacheStorage: keys() method"
        }
    ],
    "cache-storage-match": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/CacheStorage.json",
            "name": "match",
            "slug": "API/CacheStorage/match",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/CacheStorage/match",
            "summary": "The match() method of the CacheStorage interface checks if a given Request or URL string is a key for a stored Response. This method returns a Promise for a Response, or a Promise which resolves to undefined if no match is found.",
            "support": {
                "chrome": [
                    {
                        "version_added": "54"
                    },
                    {
                        "version_added": "40",
                        "partial_implementation": true,
                        "notes": "The options parameter only supports <code>ignoreSearch</code>, and <code>cacheName</code>."
                    }
                ],
                "chrome_android": "mirror",
                "deno": {
                    "version_added": false
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": [
                    {
                        "version_added": "79"
                    },
                    {
                        "version_added": "79",
                        "partial_implementation": true,
                        "notes": "The options parameter only supports <code>ignoreSearch</code>, and <code>cacheName</code>."
                    }
                ]
            },
            "title": "CacheStorage: match() method"
        }
    ],
    "cache-storage-open": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/CacheStorage.json",
            "name": "open",
            "slug": "API/CacheStorage/open",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/CacheStorage/open",
            "summary": "The open() method of the CacheStorage interface returns a Promise that resolves to the Cache object matching the cacheName.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": "1.26"
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "CacheStorage: open() method"
        }
    ],
    "cachestorage-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/CacheStorage.json",
            "name": "CacheStorage",
            "slug": "API/CacheStorage",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/CacheStorage",
            "summary": "The CacheStorage interface represents the storage for Cache objects.",
            "support": {
                "chrome": [
                    {
                        "version_added": "43"
                    },
                    {
                        "version_added": "40",
                        "version_removed": "43",
                        "partial_implementation": true,
                        "notes": "Only available in service workers."
                    }
                ],
                "chrome_android": "mirror",
                "deno": {
                    "version_added": "1.26"
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": [
                    {
                        "version_added": "79"
                    },
                    {
                        "version_added": false,
                        "version_removed": "43",
                        "partial_implementation": true,
                        "notes": "Only available in service workers."
                    }
                ]
            },
            "title": "CacheStorage"
        }
    ],
    "client-frametype": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Client.json",
            "name": "frameType",
            "slug": "API/Client/frameType",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Client/frameType",
            "summary": "The frameType read-only property of the Client interface indicates the type of browsing context of the current Client. This value can be one of \"auxiliary\", \"top-level\", \"nested\", or \"none\".",
            "support": {
                "chrome": {
                    "version_added": "43"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Client: frameType property"
        }
    ],
    "client-id": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Client.json",
            "name": "id",
            "slug": "API/Client/id",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Client/id",
            "summary": "The id read-only property of the Client interface returns the universally unique identifier of the Client object.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Client: id property"
        }
    ],
    "dom-client-postmessage-message-options": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Client.json",
            "name": "postMessage",
            "slug": "API/Client/postMessage",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Client/postMessage",
            "summary": "The postMessage() method of the Client interface allows a service worker to send a message to a client (a Window, Worker, or SharedWorker). The message is received in the \"message\" event on navigator.serviceWorker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Client: postMessage() method"
        }
    ],
    "client-type": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Client.json",
            "name": "type",
            "slug": "API/Client/type",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Client/type",
            "summary": "The type read-only property of the Client interface indicates the type of client the service worker is controlling.",
            "support": {
                "chrome": {
                    "version_added": "60"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "54"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Client: type property"
        }
    ],
    "client-url": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Client.json",
            "name": "url",
            "slug": "API/Client/url",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Client/url",
            "summary": "The url read-only property of the Client interface returns the URL of the current service worker client.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Client: url property"
        }
    ],
    "client-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Client.json",
            "name": "Client",
            "slug": "API/Client",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Client",
            "summary": "The Client interface represents an executable context such as a Worker, or a SharedWorker. Window clients are represented by the more-specific WindowClient. You can get Client/WindowClient objects from methods such as Clients.matchAll() and Clients.get().",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Client"
        }
    ],
    "clients-claim": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Clients.json",
            "name": "claim",
            "slug": "API/Clients/claim",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Clients/claim",
            "summary": "The claim() method of the Clients interface allows an active service worker to set itself as the controller for all clients within its scope. This triggers a \"controllerchange\" event on navigator.serviceWorker in any clients that become controlled by this service worker.",
            "support": {
                "chrome": {
                    "version_added": "42"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Clients: claim() method"
        }
    ],
    "clients-get": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Clients.json",
            "name": "get",
            "slug": "API/Clients/get",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Clients/get",
            "summary": "The get() method of the Clients interface gets a service worker client matching a given id and returns it in a Promise.",
            "support": {
                "chrome": {
                    "version_added": "51"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "45"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Clients: get() method"
        }
    ],
    "clients-matchall": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Clients.json",
            "name": "matchAll",
            "slug": "API/Clients/matchAll",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Clients/matchAll",
            "summary": "The matchAll() method of the Clients interface returns a Promise for a list of service worker Client objects. Include the options parameter to return all service worker clients whose origin is the same as the associated service worker's origin. If options are not included, the method returns only the service worker clients controlled by the service worker.",
            "support": {
                "chrome": {
                    "version_added": "42",
                    "notes": "<code>Client</code> objects returned in most recent focus order."
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": [
                    {
                        "version_added": "54"
                    },
                    {
                        "version_added": "44",
                        "version_removed": "54",
                        "partial_implementation": true,
                        "notes": "Before Firefox 54, <code>Client</code> objects were not returned in the most recent focus order as required by the specification."
                    }
                ],
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "29"
                },
                "opera_android": {
                    "version_added": "29"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79",
                    "notes": "<code>Client</code> objects returned in most recent focus order."
                }
            },
            "title": "Clients: matchAll() method"
        }
    ],
    "clients-openwindow": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Clients.json",
            "name": "openWindow",
            "slug": "API/Clients/openWindow",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Clients/openWindow",
            "summary": "The openWindow() method of the Clients interface creates a new top level browsing context and loads a given URL. If the calling script doesn't have permission to show popups, openWindow() will throw an InvalidAccessError.",
            "support": {
                "chrome": {
                    "version_added": "40",
                    "notes": [
                        "Before Chrome 43, this method could only open URLs on the same origin.",
                        "Since Chrome 51, URLs may open inside an existing browsing context provided by a standalone web app."
                    ]
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "38"
                },
                "opera_android": {
                    "version_added": "41"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79",
                    "notes": [
                        "Before Chrome 43, this method could only open URLs on the same origin.",
                        "Since Chrome 51, URLs may open inside an existing browsing context provided by a standalone web app."
                    ]
                }
            },
            "title": "Clients: openWindow() method"
        }
    ],
    "clients-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Clients.json",
            "name": "Clients",
            "slug": "API/Clients",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Clients",
            "summary": "The Clients interface provides access to Client objects. Access it via self.clients within a service worker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Clients"
        }
    ],
    "dom-extendableevent-extendableevent": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ExtendableEvent.json",
            "name": "ExtendableEvent",
            "slug": "API/ExtendableEvent/ExtendableEvent",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ExtendableEvent/ExtendableEvent",
            "summary": "The ExtendableEvent() constructor creates a new ExtendableEvent object.",
            "support": {
                "chrome": {
                    "version_added": "41"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ExtendableEvent: ExtendableEvent() constructor"
        }
    ],
    "dom-extendableevent-waituntil": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ExtendableEvent.json",
            "name": "waitUntil",
            "slug": "API/ExtendableEvent/waitUntil",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ExtendableEvent/waitUntil",
            "summary": "The ExtendableEvent.waitUntil() method tells the event dispatcher that work is ongoing. It can also be used to detect whether that work was successful. In service workers, waitUntil() tells the browser that work is ongoing until the promise settles, and it shouldn't terminate the service worker if it wants that work to complete.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ExtendableEvent: waitUntil() method"
        }
    ],
    "extendableevent-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ExtendableEvent.json",
            "name": "ExtendableEvent",
            "slug": "API/ExtendableEvent",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ExtendableEvent",
            "summary": "The ExtendableEvent interface extends the lifetime of the install and activate events dispatched on the global scope as part of the service worker lifecycle. This ensures that any functional events (like FetchEvent) are not dispatched until it upgrades database schemas and deletes the outdated cache entries.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ExtendableEvent"
        }
    ],
    "dom-extendablemessageevent-extendablemessageevent": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ExtendableMessageEvent.json",
            "name": "ExtendableMessageEvent",
            "slug": "API/ExtendableMessageEvent/ExtendableMessageEvent",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent/ExtendableMessageEvent",
            "summary": "The ExtendableMessageEvent() constructor creates a new ExtendableMessageEvent object.",
            "support": {
                "chrome": {
                    "version_added": "51"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ExtendableMessageEvent: ExtendableMessageEvent() constructor"
        }
    ],
    "extendablemessage-event-data": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ExtendableMessageEvent.json",
            "name": "data",
            "slug": "API/ExtendableMessageEvent/data",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent/data",
            "summary": "The data read-only property of the ExtendableMessageEvent interface returns the event's data. It can be any data type.",
            "support": {
                "chrome": {
                    "version_added": "51"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ExtendableMessageEvent: data property"
        }
    ],
    "extendablemessage-event-lasteventid": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ExtendableMessageEvent.json",
            "name": "lastEventId",
            "slug": "API/ExtendableMessageEvent/lastEventId",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent/lastEventId",
            "summary": "The lastEventID read-only property of the ExtendableMessageEvent interface represents, in server-sent events, the last event ID of the event source. This is an empty string.",
            "support": {
                "chrome": {
                    "version_added": "51"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ExtendableMessageEvent: lastEventId property"
        }
    ],
    "extendablemessage-event-origin": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ExtendableMessageEvent.json",
            "name": "origin",
            "slug": "API/ExtendableMessageEvent/origin",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent/origin",
            "summary": "The origin read-only property of the ExtendableMessageEvent interface returns the origin of the Client that sent the message.",
            "support": {
                "chrome": {
                    "version_added": "51"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ExtendableMessageEvent: origin property"
        }
    ],
    "extendablemessage-event-ports": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ExtendableMessageEvent.json",
            "name": "ports",
            "slug": "API/ExtendableMessageEvent/ports",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent/ports",
            "summary": "The ports read-only property of the ExtendableMessageEvent interface returns the array containing the MessagePort objects representing the ports of the associated message channel (the channel the message is being sent through.)",
            "support": {
                "chrome": {
                    "version_added": "51"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ExtendableMessageEvent: ports property"
        }
    ],
    "extendablemessage-event-source": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ExtendableMessageEvent.json",
            "name": "source",
            "slug": "API/ExtendableMessageEvent/source",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent/source",
            "summary": "The source read-only property of the ExtendableMessageEvent interface returns a reference to the Client object from which the message was sent.",
            "support": {
                "chrome": {
                    "version_added": "51"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ExtendableMessageEvent: source property"
        }
    ],
    "extendablemessageevent-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ExtendableMessageEvent.json",
            "name": "ExtendableMessageEvent",
            "slug": "API/ExtendableMessageEvent",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ExtendableMessageEvent",
            "summary": "The ExtendableMessageEvent interface of the Service Worker API represents the event object of a message event fired on a service worker (when a message is received on the ServiceWorkerGlobalScope from another context) — extends the lifetime of such events.",
            "support": {
                "chrome": {
                    "version_added": "51"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ExtendableMessageEvent"
        }
    ],
    "dom-fetchevent-fetchevent": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/FetchEvent.json",
            "name": "FetchEvent",
            "slug": "API/FetchEvent/FetchEvent",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent/FetchEvent",
            "summary": "The FetchEvent() constructor creates a new FetchEvent object.",
            "support": {
                "chrome": {
                    "version_added": "44"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "FetchEvent: FetchEvent() constructor"
        }
    ],
    "fetch-event-clientid": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/FetchEvent.json",
            "name": "clientId",
            "slug": "API/FetchEvent/clientId",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent/clientId",
            "summary": "The clientId read-only property of the FetchEvent interface returns the id of the Client that the current service worker is controlling.",
            "support": {
                "chrome": {
                    "version_added": "49"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "45"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "FetchEvent: clientId property"
        }
    ],
    "dom-fetchevent-handled": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/FetchEvent.json",
            "name": "handled",
            "slug": "API/FetchEvent/handled",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent/handled",
            "summary": "The handled property of the FetchEvent interface returns a promise indicating if the event has been handled by the fetch algorithm or not. This property allows executing code after the browser has consumed a response, and is usually used together with the waitUntil() method.",
            "support": {
                "chrome": {
                    "version_added": "86"
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": "84"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "16"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "86"
                }
            },
            "title": "FetchEvent: handled property"
        }
    ],
    "fetch-event-preloadresponse": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/FetchEvent.json",
            "name": "preloadResponse",
            "slug": "API/FetchEvent/preloadResponse",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent/preloadResponse",
            "summary": "The preloadResponse read-only property of the FetchEvent interface returns a Promise that resolves to the navigation preload Response if navigation preload was triggered, or undefined otherwise.",
            "support": {
                "chrome": {
                    "version_added": "59"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "18"
                },
                "firefox": {
                    "version_added": "99"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "15.4"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "FetchEvent: preloadResponse property"
        }
    ],
    "fetch-event-replacesClientId": [
        {
            "engines": [],
            "filename": "api/FetchEvent.json",
            "name": "replacesClientId",
            "slug": "API/FetchEvent/replacesClientId",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent/replacesClientId",
            "summary": "The replacesClientId read-only property of the FetchEvent interface is the id of the client that is being replaced during a page navigation.",
            "support": {
                "chrome": {
                    "version_added": false
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": false
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "alternative_name": "targetClientId",
                    "version_added": "11.1",
                    "version_removed": "16",
                    "notes": "See <a href='https://webkit.org/b/226638'>bug 226638</a>."
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": false
                }
            },
            "title": "FetchEvent: replacesClientId property"
        }
    ],
    "fetch-event-request": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/FetchEvent.json",
            "name": "request",
            "slug": "API/FetchEvent/request",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent/request",
            "summary": "The request read-only property of the FetchEvent interface returns the Request that triggered the event handler.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "FetchEvent: request property"
        }
    ],
    "fetch-event-respondwith": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/FetchEvent.json",
            "name": "respondWith",
            "slug": "API/FetchEvent/respondWith",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent/respondWith",
            "summary": "The respondWith() method of FetchEvent prevents the browser's default fetch handling, and allows you to provide a promise for a Response yourself.",
            "support": {
                "chrome": {
                    "version_added": "42"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "FetchEvent: respondWith() method"
        }
    ],
    "fetch-event-resultingclientid": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/FetchEvent.json",
            "name": "resultingClientId",
            "slug": "API/FetchEvent/resultingClientId",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent/resultingClientId",
            "summary": "The resultingClientId read-only property of the FetchEvent interface is the id of the client that replaces the previous client during a page navigation.",
            "support": {
                "chrome": {
                    "version_added": "72"
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": "65"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": {
                    "version_added": "50"
                },
                "safari": {
                    "version_added": "16"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "FetchEvent: resultingClientId property"
        }
    ],
    "fetchevent-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/FetchEvent.json",
            "name": "FetchEvent",
            "slug": "API/FetchEvent",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/FetchEvent",
            "summary": "This is the event type for fetch events dispatched on the service worker global scope. It contains information about the fetch, including the request and how the receiver will treat the response. It provides the event.respondWith() method, which allows us to provide a response to this fetch.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "FetchEvent"
        }
    ],
    "dom-navigationpreloadmanager-disable": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/NavigationPreloadManager.json",
            "name": "disable",
            "slug": "API/NavigationPreloadManager/disable",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/NavigationPreloadManager/disable",
            "summary": "The disable() method of the NavigationPreloadManager interface halts the automatic preloading of service-worker-managed resources previously started using enable() It returns a promise that resolves with undefined.",
            "support": {
                "chrome": {
                    "version_added": "59"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "18"
                },
                "firefox": {
                    "version_added": "99"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "15.4"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "NavigationPreloadManager: disable() method"
        }
    ],
    "dom-navigationpreloadmanager-enable": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/NavigationPreloadManager.json",
            "name": "enable",
            "slug": "API/NavigationPreloadManager/enable",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/NavigationPreloadManager/enable",
            "summary": "The enable() method of the NavigationPreloadManager interface is used to enable preloading of resources managed by the service worker. It returns a promise that resolves with undefined.",
            "support": {
                "chrome": {
                    "version_added": "59"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "18"
                },
                "firefox": {
                    "version_added": "99"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "15.4"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "NavigationPreloadManager: enable() method"
        }
    ],
    "dom-navigationpreloadmanager-getstate": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/NavigationPreloadManager.json",
            "name": "getState",
            "slug": "API/NavigationPreloadManager/getState",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/NavigationPreloadManager/getState",
            "summary": "The getState() method of the NavigationPreloadManager interface returns a Promise that resolves to an object with properties that indicate whether preload is enabled and what value will be sent in the Service-Worker-Navigation-Preload HTTP header.",
            "support": {
                "chrome": {
                    "version_added": "59"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "18"
                },
                "firefox": {
                    "version_added": "99"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "15.4"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "NavigationPreloadManager: getState() method"
        }
    ],
    "dom-navigationpreloadmanager-setheadervalue": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/NavigationPreloadManager.json",
            "name": "setHeaderValue",
            "slug": "API/NavigationPreloadManager/setHeaderValue",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/NavigationPreloadManager/setHeaderValue",
            "summary": "The setHeaderValue() method of the NavigationPreloadManager interface sets the value of the Service-Worker-Navigation-Preload header that will be sent with requests resulting from a fetch() operation made during service worker navigation preloading. It returns an empty Promise that resolves with undefined.",
            "support": {
                "chrome": {
                    "version_added": "59"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "18"
                },
                "firefox": {
                    "version_added": "99"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "15.4"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "NavigationPreloadManager: setHeaderValue() method"
        }
    ],
    "navigation-preload-manager": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/NavigationPreloadManager.json",
            "name": "NavigationPreloadManager",
            "slug": "API/NavigationPreloadManager",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/NavigationPreloadManager",
            "summary": "The NavigationPreloadManager interface of the Service Worker API provides methods for managing the preloading of resources in parallel with service worker bootup.",
            "support": {
                "chrome": {
                    "version_added": "59"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "18"
                },
                "firefox": {
                    "version_added": "99"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "15.4"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "NavigationPreloadManager"
        }
    ],
    "navigator-service-worker-attribute": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/Navigator.json",
            "name": "serviceWorker",
            "slug": "API/Navigator/serviceWorker",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/Navigator/serviceWorker",
            "summary": "The Navigator.serviceWorker read-only property returns the ServiceWorkerContainer object for the associated document, which provides access to registration, removal, upgrade, and communication with the ServiceWorker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "notes": "In Firefox private windows, the <code>serviceWorker</code> object is <code>undefined</code>. See <a href='https://bugzil.la/1320796'>bug 1320796</a>.",
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Navigator: serviceWorker property"
        }
    ],
    "dom-serviceworker-postmessage": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorker.json",
            "name": "postMessage",
            "slug": "API/ServiceWorker/postMessage",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker/postMessage",
            "summary": "The postMessage() method of the ServiceWorker interface sends a message to the worker. This accepts a single parameter, which is the data to send to the worker. The data may be any JavaScript object which can be handled by the structured clone algorithm.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorker: postMessage() method"
        }
    ],
    "dom-serviceworker-postmessage-message-options": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorker.json",
            "name": "postMessage",
            "slug": "API/ServiceWorker/postMessage",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker/postMessage",
            "summary": "The postMessage() method of the ServiceWorker interface sends a message to the worker. This accepts a single parameter, which is the data to send to the worker. The data may be any JavaScript object which can be handled by the structured clone algorithm.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorker: postMessage() method"
        }
    ],
    "service-worker-url": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorker.json",
            "name": "scriptURL",
            "slug": "API/ServiceWorker/scriptURL",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker/scriptURL",
            "summary": "Returns the ServiceWorker serialized script URL defined as part of ServiceWorkerRegistration. Must be on the same origin as the document that registers the ServiceWorker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorker: scriptURL property"
        }
    ],
    "service-worker-state": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorker.json",
            "name": "state",
            "slug": "API/ServiceWorker/state",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker/state",
            "summary": "The state read-only property of the ServiceWorker interface returns a string representing the current state of the service worker. It can be one of the following values: parsed, installing, installed, activating, activated, or redundant.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorker: state property"
        }
    ],
    "dom-serviceworker-onstatechange": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorker.json",
            "name": "statechange_event",
            "slug": "API/ServiceWorker/statechange_event",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker/statechange_event",
            "summary": "The statechange event fires anytime the ServiceWorker.state changes.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorker: statechange event"
        }
    ],
    "serviceworker-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorker.json",
            "name": "ServiceWorker",
            "slug": "API/ServiceWorker",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorker",
            "summary": "The ServiceWorker interface of the Service Worker API provides a reference to a service worker. Multiple browsing contexts (e.g. pages, workers, etc.) can be associated with the same service worker, each through a unique ServiceWorker object.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorker"
        }
    ],
    "navigator-service-worker-controller": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerContainer.json",
            "name": "controller",
            "slug": "API/ServiceWorkerContainer/controller",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/controller",
            "summary": "The controller read-only property of the ServiceWorkerContainer interface returns a ServiceWorker object if its state is activating or activated (the same object returned by ServiceWorkerRegistration.active). This property returns null if the request is a force refresh (Shift + refresh) or if there is no active worker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerContainer: controller property"
        }
    ],
    "dom-serviceworkercontainer-oncontrollerchange": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerContainer.json",
            "name": "controllerchange_event",
            "slug": "API/ServiceWorkerContainer/controllerchange_event",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/controllerchange_event",
            "summary": "The controllerchange event of the ServiceWorkerContainer interface fires when the document's associated ServiceWorkerRegistration acquires a new active worker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerContainer: controllerchange event"
        }
    ],
    "navigator-service-worker-getRegistration": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerContainer.json",
            "name": "getRegistration",
            "slug": "API/ServiceWorkerContainer/getRegistration",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/getRegistration",
            "summary": "The getRegistration() method of the ServiceWorkerContainer interface gets a ServiceWorkerRegistration object whose scope URL matches the provided client URL. The method returns a Promise that resolves to a ServiceWorkerRegistration or undefined.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerContainer: getRegistration() method"
        }
    ],
    "navigator-service-worker-getRegistrations": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerContainer.json",
            "name": "getRegistrations",
            "slug": "API/ServiceWorkerContainer/getRegistrations",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/getRegistrations",
            "summary": "The getRegistrations() method of the ServiceWorkerContainer interface gets all ServiceWorkerRegistrations associated with a ServiceWorkerContainer, in an array. The method returns a Promise that resolves to an array of ServiceWorkerRegistration.",
            "support": {
                "chrome": {
                    "version_added": "45"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "27"
                },
                "opera_android": {
                    "version_added": "27"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": {
                    "version_added": "4.0"
                },
                "webview_android": {
                    "version_added": "40"
                },
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerContainer: getRegistrations() method"
        }
    ],
    "dom-serviceworkercontainer-onmessage": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerContainer.json",
            "name": "message_event",
            "slug": "API/ServiceWorkerContainer/message_event",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/message_event",
            "summary": "The message event is used in a page controlled by a service worker to receive messages from the service worker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerContainer: message event"
        }
    ],
    "navigator-service-worker-ready": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerContainer.json",
            "name": "ready",
            "slug": "API/ServiceWorkerContainer/ready",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/ready",
            "summary": "The ready read-only property of the ServiceWorkerContainer interface provides a way of delaying code execution until a service worker is active. It returns a Promise that will never reject, and which waits indefinitely until the ServiceWorkerRegistration associated with the current page has an active worker. Once that condition is met, it resolves with the ServiceWorkerRegistration.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerContainer: ready property"
        }
    ],
    "navigator-service-worker-register": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerContainer.json",
            "name": "register",
            "slug": "API/ServiceWorkerContainer/register",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/register",
            "summary": "The register() method of the ServiceWorkerContainer interface creates or updates a ServiceWorkerRegistration for the given scriptURL.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerContainer: register() method"
        }
    ],
    "navigator-service-worker-startMessages": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerContainer.json",
            "name": "startMessages",
            "slug": "API/ServiceWorkerContainer/startMessages",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer/startMessages",
            "summary": "The startMessages() method of the ServiceWorkerContainer interface explicitly starts the flow of messages being dispatched from a service worker to pages under its control (e.g. sent via Client.postMessage()). This can be used to react to sent messages earlier, even before that page's content has finished loading.",
            "support": {
                "chrome": {
                    "version_added": "74"
                },
                "chrome_android": "mirror",
                "edge": "mirror",
                "firefox": {
                    "version_added": "64"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": {
                    "version_added": "50"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerContainer: startMessages() method"
        }
    ],
    "serviceworkercontainer-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerContainer.json",
            "name": "ServiceWorkerContainer",
            "slug": "API/ServiceWorkerContainer",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerContainer",
            "summary": "The ServiceWorkerContainer interface of the Service Worker API provides an object representing the service worker as an overall unit in the network ecosystem, including facilities to register, unregister and update service workers, and access the state of service workers and their registrations.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerContainer"
        }
    ],
    "service-worker-global-scope-activate-event": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerGlobalScope.json",
            "name": "activate_event",
            "slug": "API/ServiceWorkerGlobalScope/activate_event",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/activate_event",
            "summary": "The activate event of the ServiceWorkerGlobalScope interface is fired when a ServiceWorkerRegistration acquires a new ServiceWorkerRegistration.active worker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerGlobalScope: activate event"
        }
    ],
    "dom-serviceworkerglobalscope-onactivate": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerGlobalScope.json",
            "name": "activate_event",
            "slug": "API/ServiceWorkerGlobalScope/activate_event",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/activate_event",
            "summary": "The activate event of the ServiceWorkerGlobalScope interface is fired when a ServiceWorkerRegistration acquires a new ServiceWorkerRegistration.active worker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerGlobalScope: activate event"
        }
    ],
    "service-worker-global-scope-clients": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerGlobalScope.json",
            "name": "clients",
            "slug": "API/ServiceWorkerGlobalScope/clients",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/clients",
            "summary": "The clients read-only property of the ServiceWorkerGlobalScope interface returns the Clients object associated with the service worker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerGlobalScope: clients property"
        }
    ],
    "dom-serviceworkerglobalscope-onfetch": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerGlobalScope.json",
            "name": "fetch_event",
            "slug": "API/ServiceWorkerGlobalScope/fetch_event",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/fetch_event",
            "summary": "The fetch event is fired in the service worker's global scope when the main app thread makes a network request. It enables the service worker to intercept network requests and send customized responses (for example, from a local cache).",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerGlobalScope: fetch event"
        }
    ],
    "dom-serviceworkerglobalscope-oninstall": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerGlobalScope.json",
            "name": "install_event",
            "slug": "API/ServiceWorkerGlobalScope/install_event",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/install_event",
            "summary": "The install event of the ServiceWorkerGlobalScope interface is fired when a ServiceWorkerRegistration acquires a new ServiceWorkerRegistration.installing worker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerGlobalScope: install event"
        }
    ],
    "eventdef-serviceworkerglobalscope-message": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerGlobalScope.json",
            "name": "message_event",
            "slug": "API/ServiceWorkerGlobalScope/message_event",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/message_event",
            "summary": "The message event of the ServiceWorkerGlobalScope interface occurs when incoming messages are received. Controlled pages can use the ServiceWorker.postMessage() method to send messages to service workers. The service worker can optionally send a response back via the Client.postMessage(), corresponding to the controlled page.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerGlobalScope: message event"
        }
    ],
    "dom-serviceworkerglobalscope-onmessage": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerGlobalScope.json",
            "name": "message_event",
            "slug": "API/ServiceWorkerGlobalScope/message_event",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/message_event",
            "summary": "The message event of the ServiceWorkerGlobalScope interface occurs when incoming messages are received. Controlled pages can use the ServiceWorker.postMessage() method to send messages to service workers. The service worker can optionally send a response back via the Client.postMessage(), corresponding to the controlled page.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerGlobalScope: message event"
        }
    ],
    "service-worker-global-scope-registration": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerGlobalScope.json",
            "name": "registration",
            "slug": "API/ServiceWorkerGlobalScope/registration",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/registration",
            "summary": "The registration read-only property of the ServiceWorkerGlobalScope interface returns a reference to the ServiceWorkerRegistration object, which represents the service worker's registration.",
            "support": {
                "chrome": {
                    "version_added": "42"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "26"
                },
                "opera_android": {
                    "version_added": "26"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerGlobalScope: registration property"
        }
    ],
    "service-worker-global-scope-skipwaiting": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerGlobalScope.json",
            "name": "skipWaiting",
            "slug": "API/ServiceWorkerGlobalScope/skipWaiting",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope/skipWaiting",
            "summary": "The ServiceWorkerGlobalScope.skipWaiting() method of the ServiceWorkerGlobalScope forces the waiting service worker to become the active service worker.",
            "support": {
                "chrome": {
                    "version_added": "41"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "25"
                },
                "opera_android": {
                    "version_added": "25"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerGlobalScope: skipWaiting() method"
        }
    ],
    "serviceworkerglobalscope-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerGlobalScope.json",
            "name": "ServiceWorkerGlobalScope",
            "slug": "API/ServiceWorkerGlobalScope",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerGlobalScope",
            "summary": "The ServiceWorkerGlobalScope interface of the Service Worker API represents the global execution context of a service worker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": {
                    "version_added": "24"
                },
                "opera_android": {
                    "version_added": "24"
                },
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerGlobalScope"
        }
    ],
    "navigator-service-worker-active": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerRegistration.json",
            "name": "active",
            "slug": "API/ServiceWorkerRegistration/active",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/active",
            "summary": "The active property of the ServiceWorkerRegistration interface returns a service worker whose ServiceWorker.state is activating or activated. This property is initially set to null.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerRegistration: active property"
        }
    ],
    "navigator-service-worker-installing": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerRegistration.json",
            "name": "installing",
            "slug": "API/ServiceWorkerRegistration/installing",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/installing",
            "summary": "The installing property of the ServiceWorkerRegistration interface returns a service worker whose ServiceWorker.state is installing. This property is initially set to null.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerRegistration: installing property"
        }
    ],
    "service-worker-registration-navigationpreload": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerRegistration.json",
            "name": "navigationPreload",
            "slug": "API/ServiceWorkerRegistration/navigationPreload",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/navigationPreload",
            "summary": "The navigationPreload read-only property of the ServiceWorkerRegistration interface returns the NavigationPreloadManager associated with the current service worker registration.",
            "support": {
                "chrome": {
                    "version_added": "59"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "99"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "15.4"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": {
                    "version_added": "4.0"
                },
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerRegistration: navigationPreload property"
        }
    ],
    "service-worker-registration-scope": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerRegistration.json",
            "name": "scope",
            "slug": "API/ServiceWorkerRegistration/scope",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/scope",
            "summary": "The scope read-only property of the ServiceWorkerRegistration interface returns a unique identifier for a service worker registration. The service worker must be on the same origin as the document that registers the ServiceWorker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerRegistration: scope property"
        }
    ],
    "navigator-service-worker-unregister": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerRegistration.json",
            "name": "unregister",
            "slug": "API/ServiceWorkerRegistration/unregister",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/unregister",
            "summary": "The unregister() method of the ServiceWorkerRegistration interface unregisters the service worker registration and returns a Promise. The promise will resolve to false if no registration was found, otherwise it resolves to true irrespective of whether unregistration happened or not (it may not unregister if someone else just called ServiceWorkerContainer.register() with the same scope.) The service worker will finish any ongoing operations before it is unregistered.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerRegistration: unregister() method"
        }
    ],
    "service-worker-registration-update": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerRegistration.json",
            "name": "update",
            "slug": "API/ServiceWorkerRegistration/update",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/update",
            "summary": "The update() method of the ServiceWorkerRegistration interface attempts to update the service worker. It fetches the worker's script URL, and if the new worker is not byte-by-byte identical to the current worker, it installs the new worker. The fetch of the worker bypasses any browser caches if the previous fetch occurred over 24 hours ago.",
            "support": {
                "chrome": {
                    "version_added": "45",
                    "notes": [
                        "Starting with Chrome 46, update() returns a promise that resolves with 'undefined' if the operation completed successfully or there was no update, and rejects if update failed. If the new worker ran but installation failed, the promise still resolves. Formerly, it raised an exception.",
                        "Before Chrome 48, this method always bypassed the browser cache. Starting with Chrome 48, it only bypasses the cache when the previous service worker check was more than twenty-four hours ago."
                    ]
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": {
                    "version_added": "4.0",
                    "notes": [
                        "Starting with Samsung Internet 5.0, update() returns a promise that resolves with 'undefined' if the operation completed successfully or there was no update, and rejects if update failed. If the new worker ran but installation failed, the promise still resolves. Formerly, it raised an exception.",
                        "Before Samsung Internet 5.0, this method always bypassed the browser cache. Starting with Samsung Internet 5.0, it only bypasses the cache when the previous service worker check was more than twenty-four hours ago."
                    ]
                },
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79",
                    "notes": [
                        "Starting with Chrome 46, update() returns a promise that resolves with 'undefined' if the operation completed successfully or there was no update, and rejects if update failed. If the new worker ran but installation failed, the promise still resolves. Formerly, it raised an exception.",
                        "Before Chrome 48, this method always bypassed the browser cache. Starting with Chrome 48, it only bypasses the cache when the previous service worker check was more than twenty-four hours ago."
                    ]
                }
            },
            "title": "ServiceWorkerRegistration: update() method"
        }
    ],
    "dom-serviceworkerregistration-onupdatefound": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerRegistration.json",
            "name": "updatefound_event",
            "slug": "API/ServiceWorkerRegistration/updatefound_event",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/updatefound_event",
            "summary": "The updatefound event of the ServiceWorkerRegistration interface is fired any time the ServiceWorkerRegistration.installing property acquires a new service worker.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerRegistration: updatefound event"
        }
    ],
    "service-worker-registration-updateviacache": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerRegistration.json",
            "name": "updateViaCache",
            "slug": "API/ServiceWorkerRegistration/updateViaCache",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/updateViaCache",
            "summary": "The updateViaCache read-only property of the ServiceWorkerRegistration interface updates the cache using the mode specified in the call to ServiceWorkerContainer.register. Requests for importScripts still go via the HTTP cache. updateViaCache offers control over this behavior.",
            "support": {
                "chrome": {
                    "version_added": "68"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "18"
                },
                "firefox": {
                    "version_added": "57"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerRegistration: updateViaCache property"
        }
    ],
    "navigator-service-worker-waiting": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerRegistration.json",
            "name": "waiting",
            "slug": "API/ServiceWorkerRegistration/waiting",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration/waiting",
            "summary": "The waiting property of the ServiceWorkerRegistration interface returns a service worker whose ServiceWorker.state is installed. This property is initially set to null.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerRegistration: waiting property"
        }
    ],
    "serviceworkerregistration-interface": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/ServiceWorkerRegistration.json",
            "name": "ServiceWorkerRegistration",
            "slug": "API/ServiceWorkerRegistration",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/ServiceWorkerRegistration",
            "summary": "The ServiceWorkerRegistration interface of the Service Worker API represents the service worker registration. You register a service worker to control one or more pages that share the same origin.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "ServiceWorkerRegistration"
        }
    ],
    "client-focus": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/WindowClient.json",
            "name": "focus",
            "slug": "API/WindowClient/focus",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/WindowClient/focus",
            "summary": "The focus() method of the WindowClient interface gives user input focus to the current client and returns a Promise that resolves to the existing WindowClient.",
            "support": {
                "chrome": {
                    "version_added": "42"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "WindowClient: focus() method"
        }
    ],
    "client-focused": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/WindowClient.json",
            "name": "focused",
            "slug": "API/WindowClient/focused",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/WindowClient/focused",
            "summary": "The focused read-only property of the WindowClient interface is a boolean value that indicates whether the current client has focus.",
            "support": {
                "chrome": {
                    "version_added": "42"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "WindowClient: focused property"
        }
    ],
    "client-navigate": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/WindowClient.json",
            "name": "navigate",
            "slug": "API/WindowClient/navigate",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/WindowClient/navigate",
            "summary": "The navigate() method of the WindowClient interface loads a specified URL into a controlled client page then returns a Promise that resolves to the existing WindowClient.",
            "support": {
                "chrome": {
                    "version_added": "49"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "50"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": [
                    {
                        "version_added": "16"
                    },
                    {
                        "version_added": "11.1",
                        "version_removed": "16",
                        "partial_implementation": true,
                        "notes": "This method exists, but always throws <code>NotSupportedError</code>."
                    }
                ],
                "safari_ios": "mirror",
                "samsunginternet_android": {
                    "version_added": "4.0"
                },
                "webview_android": {
                    "version_added": "42"
                },
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "WindowClient: navigate() method"
        }
    ],
    "client-visibilitystate": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/WindowClient.json",
            "name": "visibilityState",
            "slug": "API/WindowClient/visibilityState",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/WindowClient/visibilityState",
            "summary": "The visibilityState read-only property of the WindowClient interface indicates the visibility of the current client. This value can be one of \"hidden\", \"visible\", or \"prerender\".",
            "support": {
                "chrome": {
                    "version_added": "42"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "WindowClient: visibilityState property"
        }
    ],
    "windowclient": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/WindowClient.json",
            "name": "WindowClient",
            "slug": "API/WindowClient",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/WindowClient",
            "summary": "The WindowClient interface of the ServiceWorker API represents the scope of a service worker client that is a document in a browsing context, controlled by an active worker. The service worker client independently selects and uses a service worker for its own loading and sub-resources.",
            "support": {
                "chrome": {
                    "version_added": "42"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "17"
                },
                "firefox": {
                    "version_added": "44"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "WindowClient"
        }
    ],
    "self-caches": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "api/_globals/caches.json",
            "name": "caches",
            "slug": "API/caches",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/API/caches",
            "summary": "The global caches read-only property returns the CacheStorage object associated with the current context. This object enables functionality such as storing assets for offline use, and generating custom responses to requests.",
            "support": {
                "chrome": {
                    "version_added": "40"
                },
                "chrome_android": "mirror",
                "deno": {
                    "version_added": "1.26"
                },
                "edge": {
                    "version_added": "16"
                },
                "firefox": {
                    "version_added": "41"
                },
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "11.1"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "caches global property"
        }
    ],
    "handle-fetch": [
        {
            "engines": [
                "blink",
                "gecko",
                "webkit"
            ],
            "filename": "http/headers/Service-Worker-Navigation-Preload.json",
            "name": "Service-Worker-Navigation-Preload",
            "slug": "HTTP/Headers/Service-Worker-Navigation-Preload",
            "mdn_url": "https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Service-Worker-Navigation-Preload",
            "summary": "The Service-Worker-Navigation-Preload request header indicates that the request was the result of a fetch() operation made during service worker navigation preloading. It allows a server to respond with a different resource than for a normal fetch().",
            "support": {
                "chrome": {
                    "version_added": "59"
                },
                "chrome_android": "mirror",
                "edge": {
                    "version_added": "18"
                },
                "firefox": [
                    {
                        "version_added": "preview"
                    },
                    {
                        "version_added": "97",
                        "flags": [
                            {
                                "type": "preference",
                                "name": "dom.serviceWorkers.navigationPreload.enabled",
                                "value_to_set": "true"
                            }
                        ]
                    }
                ],
                "firefox_android": "mirror",
                "ie": {
                    "version_added": false
                },
                "oculus": "mirror",
                "opera": "mirror",
                "opera_android": "mirror",
                "safari": {
                    "version_added": "15.4"
                },
                "safari_ios": "mirror",
                "samsunginternet_android": "mirror",
                "webview_android": "mirror",
                "edge_blink": {
                    "version_added": "79"
                }
            },
            "title": "Service-Worker-Navigation-Preload"
        }
    ]
}
