| // Copyright 2023 The Chromium Authors |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| [RuntimeEnabled=StorageAccessAPIBeyondCookies] |
| interface StorageAccessHandle { |
| [LogActivity=GetterOnly, RaisesException=Getter] readonly attribute Storage sessionStorage; |
| [LogActivity=GetterOnly, RaisesException=Getter] readonly attribute Storage localStorage; |
| [LogActivity=GetterOnly, RaisesException=Getter] readonly attribute IDBFactory indexedDB; |
| [LogActivity=GetterOnly, RaisesException=Getter] readonly attribute LockManager locks; |
| [LogActivity=GetterOnly, RaisesException=Getter] readonly attribute CacheStorage caches; |
| [CallWith=ScriptState, LogActivity, RaisesException] Promise<FileSystemDirectoryHandle> getDirectory(); |
| [CallWith=ScriptState, LogActivity, RaisesException] Promise<StorageEstimate> estimate(); |
| [LogActivity, RaisesException] DOMString createObjectURL(Blob blob); |
| [LogActivity, RaisesException] void revokeObjectURL(DOMString url); |
| [CallWith=ExecutionContext, LogActivity, RaisesException] BroadcastChannel BroadcastChannel(DOMString name); |
| [CallWith=ExecutionContext, LogActivity, RaisesException] SharedWorker SharedWorker(ScriptURLString scriptURL, optional (DOMString or SharedWorkerOptions) options = {}); |
| }; |