CacheStorage.webidl (1119B)
1 /* -*- Mode: IDL; tab-width: 2; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 2 /* This Source Code Form is subject to the terms of the Mozilla Public 3 * License, v. 2.0. If a copy of the MPL was not distributed with this file, 4 * You can obtain one at http://mozilla.org/MPL/2.0/. 5 * 6 * The origin of this IDL file is 7 * https://w3c.github.io/ServiceWorker/#cachestorage-interface 8 */ 9 10 interface Principal; 11 12 [Exposed=(Window,Worker), 13 Func="cache::CacheStorage::CachesEnabled"] 14 interface CacheStorage { 15 [Throws, ChromeOnly] 16 constructor(CacheStorageNamespace namespace, Principal principal); 17 18 [NewObject] 19 Promise<Response> match(RequestInfo request, optional MultiCacheQueryOptions options = {}); 20 [NewObject] 21 Promise<boolean> has(DOMString cacheName); 22 [NewObject] 23 Promise<Cache> open(DOMString cacheName); 24 [NewObject] 25 Promise<boolean> delete(DOMString cacheName); 26 [NewObject] 27 Promise<sequence<DOMString>> keys(); 28 }; 29 30 dictionary MultiCacheQueryOptions : CacheQueryOptions { 31 DOMString cacheName; 32 }; 33 34 // chrome-only, gecko specific extension 35 enum CacheStorageNamespace { 36 "content", "chrome" 37 };