// Copyright 2014 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
// https://w3c.github.io/ServiceWorker/#cachestorage-interface
[
ActiveScriptWrappable,
SecureContext,
Exposed=(Window,Worker)
] interface CacheStorage {
[CallWith=ScriptState, MeasureAs=CacheStorageRead, RaisesException]
Promise<Response> match(RequestInfo request,
optional MultiCacheQueryOptions options = {});
[CallWith=ScriptState, MeasureAs=CacheStorageRead, RaisesException]
Promise<boolean> has(DOMString cacheName);
[CallWith=ScriptState, RaisesException] Promise<Cache> open(DOMString cacheName);
[CallWith=ScriptState, MeasureAs=CacheStorageWrite, ImplementedAs=Delete, RaisesException]
Promise<boolean> delete(DOMString cacheName);
[CallWith=ScriptState, MeasureAs=CacheStorageRead, RaisesException]
Promise<sequence<DOMString>> keys();
};