chromium/third_party/blink/public/mojom/worker/worker_content_settings_proxy.mojom

// Copyright 2017 The Chromium Authors
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.

module blink.mojom;

// The renderer uses this interface to ask the browser process about content
// settings for whether features are allowed to be used by the worker.
// Each method is called when every relevant web exposed API is called,
// and the result is returned synchronously because the web exposed
// APIs are synchronous.
interface WorkerContentSettingsProxy {

  // Returns whether the worker is allowed access to IndexedDB.
  [Sync]
  AllowIndexedDB() => (bool result);

  // Returns whether the worker is allowed access to CacheStorage.
  [Sync]
  AllowCacheStorage() => (bool result);

  // Returns whether the worker is allowed access to Web Locks.
  [Sync]
  AllowWebLocks() => (bool result);

  // Returns whether the worker is allowed access to the file system.
  [Sync]
  RequestFileSystemAccessSync() => (bool result);
};