1 // Copyright 2022 The Chromium Authors
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
5 #ifndef COMPONENTS_UKM_UKM_CONSENT_STATE_H_
6 #define COMPONENTS_UKM_UKM_CONSENT_STATE_H_
8 #include "base/containers/enum_set.h"
12 // Different types of consents that control what types of data is recorded by
15 // "Make searches and browsing better" (MSBB) is consented.
16 // MSBB is toggled on in chrome://settings for all user profiles.
18 // Extensions are consented, depends on MSBB.
19 // Separately controls recording of chrome-extension:// urls.
20 // This flag should reflect the "Extensions" user setting
21 // found in chrome://settings/syncSetup/advanced.
23 // App Sync is consented, depends on MSBB.
24 // Controls recording of urls in the form of app:// urls.
25 // This flag should reflect the "Apps" user setting
26 // found in chrome://settings/syncSetup/advanced.
30 // Collection of ukm consent type states.
31 using UkmConsentState =
32 base::EnumSet<UkmConsentType, UkmConsentType::MSBB, UkmConsentType::APPS>;
35 #endif // COMPONENTS_UKM_UKM_CONSENT_STATE_H_