chromium/components/feed/core/proto/v2/wire/client_user_profiles.proto

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

syntax = "proto2";

package feedwire;

import "components/feed/core/proto/v2/wire/view_demotion_profile_extension.proto";

option optimize_for = LITE_RUNTIME;

message ClientUserProfiles {
  optional DiscoverUserActionsProfile discover_user_actions_profile = 1;
  optional ViewDemotionProfile view_demotion_profile = 2;
}
message ActionCounts {
  message Counts {
    optional uint32 count_1d = 1;
    optional uint32 count_7d = 2;
    optional uint32 count_30d = 3;
  }
  enum ActionType {
    UNKNOWN = 0;
    CLICK = 1;
  }
  optional ActionType type = 1;
  optional Counts counts = 2;
}
message DiscoverUserActionsProfile {
  message ContentMediaXEntityActionCounts {
    optional uint64 content_category_media_type = 1;
    optional uint64 mid = 2;
    repeated ActionCounts counts = 3;
  }
  message CardCategoryXEntityActionCounts {
    optional uint64 card_category = 1;
    optional uint64 mid = 2;
    repeated ActionCounts counts = 3;
  }
  repeated ContentMediaXEntityActionCounts content_media_x_entity = 2;
  repeated CardCategoryXEntityActionCounts card_category_x_entity = 3;
}
message ViewDemotionProfile {
  optional ViewDemotionProfileExtension view_demotion_profile = 1000;
}