The StorageAccessHandle interface represents access to unpartitioned state granted by a call to Document.requestStorageAccess().
StorageAccessHandle.sessionStorage Read onlyReturns an unpartitioned session Storage object if access was granted.
StorageAccessHandle.localStorage Read onlyReturns an unpartitioned local Storage object if access was granted.
StorageAccessHandle.indexedDB Read onlyReturns an unpartitioned IDBFactory object if access was granted.
StorageAccessHandle.locks Read onlyReturns an unpartitioned LockManager object if access was granted.
StorageAccessHandle.caches Read onlyReturns an unpartitioned CacheStorage object if access was granted.
StorageAccessHandle.getDirectory()Returns a Promise that fulfills with an unpartitioned FileSystemDirectoryHandle object if access was granted, and rejects otherwise.
StorageAccessHandle.estimate()Returns a Promise that fulfills with an unpartitioned StorageEstimate object if access was granted, and rejects otherwise.
StorageAccessHandle.createObjectURL()Returns a string representing the unpartitioned blob storage url created if access was granted, and throws otherwise.
StorageAccessHandle.revokeObjectURL()Revokes the unpartitioned blob storage url passed in if access was granted, and throws otherwise.
StorageAccessHandle.BroadcastChannel()Returns the unpartitioned BroadcastChannel created if access was granted, and throws otherwise.
Returns the unpartitioned SharedWorker created if access was granted, and throws otherwise.
document.requestStorageAccess({ localStorage: true }).then(
(handle) => {
console.log("localStorage access granted");
handle.localStorage.setItem("foo", "bar");
},
() => {
console.log("localStorage access denied");
},
);Note: See Using the Storage Access API for a more complete example.