// Copyright 2020 The Chromium Authors // Use of this source code is governed by a BSD-style license that can be // found in the LICENSE file. #ifndef COMPONENTS_PRIVACY_SANDBOX_PRIVACY_SANDBOX_SETTINGS_H_ #define COMPONENTS_PRIVACY_SANDBOX_PRIVACY_SANDBOX_SETTINGS_H_ #include "components/browsing_topics/common/common_types.h" #include "components/keyed_service/core/keyed_service.h" #include "components/privacy_sandbox/tpcd_experiment_eligibility.h" #include "content/public/browser/interest_group_api_operation.h" #include "base/time/time.h" class GURL; namespace content { class RenderFrameHost; } namespace url { class Origin; } namespace privacy_sandbox { class CanonicalTopic; // When a new enum value is added: // 1. Update kMaxValue to match it. // 2. Update `PrivacySandboxAttestationsGatedAPIProto` in // `privacy_sandbox_attestations.proto`. // 3. Update `InsertAPI` in `privacy_sandbox_attestations_parser.cc`. enum class PrivacySandboxAttestationsGatedAPI { … }; // A service which acts as a intermediary between Privacy Sandbox APIs and the // preferences and content settings which define when they are allowed to be // accessed. Privacy Sandbox APIs, regardless of where they live (renderer, // browser, network etc), must consult this service to determine when // they are allowed to run. While a basic on/off control is provided by this // service, embedders are expected to achieve fine-grained control though // the underlying preferences and content settings separately. class PrivacySandboxSettings : public KeyedService { … }; } // namespace privacy_sandbox #endif // COMPONENTS_PRIVACY_SANDBOX_PRIVACY_SANDBOX_SETTINGS_H_