| // 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_PERMISSIONS_PREDICTION_SERVICE_PREDICTION_REQUEST_FEATURES_H_ |
| #define COMPONENTS_PERMISSIONS_PREDICTION_SERVICE_PREDICTION_REQUEST_FEATURES_H_ |
| |
| #include "components/permissions/permission_request_enums.h" |
| #include "components/permissions/request_type.h" |
| #include "url/gurl.h" |
| |
| namespace permissions { |
| |
| struct PredictionRequestFeatures { |
| // Do not delete / modify enum assignments, as they will be interpreted on the |
| // server side and should be backwards compatible! |
| enum class ExperimentId { |
| kNoExperimentId = 0, |
| kCpssV3ExperimentId = 1, |
| kAiV1ExperimentId = 2, |
| kAiV3ExperimentId = 3, |
| kAiV4ExperimentId = 4, |
| }; |
| |
| struct ActionCounts { |
| size_t grants = 0; |
| size_t denies = 0; |
| size_t dismissals = 0; |
| size_t ignores = 0; |
| size_t total() const { return grants + denies + dismissals + ignores; } |
| }; |
| |
| // Whether a gesture is present or not. |
| PermissionRequestGestureType gesture; |
| |
| // Which permissions request type this is for. |
| RequestType type; |
| |
| // The permission action counts for this specific permission type. |
| ActionCounts requested_permission_counts; |
| |
| // The permission action counts for all permissions type. |
| ActionCounts all_permission_counts; |
| |
| // The origin of the website requesting the permission. |
| GURL url; |
| |
| // The id of a currently conducted Finch experiment. |
| // 0 = default, client is in Finch experiment control group, |
| // Different than 0 = client is in Finch enabled group. |
| ExperimentId experiment_id = ExperimentId::kNoExperimentId; |
| |
| // The permission request relevance generated by the AI on-device model. |
| PermissionRequestRelevance permission_relevance; |
| }; |
| |
| } // namespace permissions |
| |
| #endif // COMPONENTS_PERMISSIONS_PREDICTION_SERVICE_PREDICTION_REQUEST_FEATURES_H_ |