// Copyright 2024 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_NOTICE_STORAGE_H_ #define COMPONENTS_PRIVACY_SANDBOX_PRIVACY_SANDBOX_NOTICE_STORAGE_H_ #include <optional> #include <string> #include "base/no_destructor.h" #include "base/time/time.h" #include "components/prefs/pref_registry_simple.h" class PrefService; namespace privacy_sandbox { // Startup states // LINT.IfChange(NoticeStartupState) enum class NoticeStartupState { … }; // LINT.ThenChange(//tools/metrics/histograms/enums.xml:PrivacySandboxNoticeStartupState) // Different notice actions. // LINT.IfChange(NoticeActionTaken) enum class NoticeActionTaken { … }; // LINT.ThenChange(//tools/metrics/histograms/enums.xml:PrivacySandboxNoticeAction) // Different notice action outcomes. // LINT.IfChange(NoticeActionBehavior) enum class NoticeActionBehavior { … }; // LINT.ThenChange(//tools/metrics/histograms/enums.xml:PrivacySandboxNoticeActionBehavior) // Stores information about profile interactions on a notice. struct PrivacySandboxNoticeData { … }; class PrivacySandboxNoticeStorage { … }; } // namespace privacy_sandbox #endif // COMPONENTS_PRIVACY_SANDBOX_PRIVACY_SANDBOX_NOTICE_STORAGE_H_