| // 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"; |
| |
| option optimize_for = LITE_RUNTIME; |
| |
| package content.proto; |
| |
| message AttributionAggregationKey { |
| optional uint64 high_bits = 1; |
| optional uint64 low_bits = 2; |
| } |
| |
| message AttributionAggregatableSource { |
| map<string, AttributionAggregationKey> keys = 1; |
| } |
| |
| message AttributionFilterValues { |
| repeated string values = 1; |
| } |
| |
| // Proto equivalent of `blink::mojom::AttributionData`. |
| message AttributionFilterData { |
| map<string, AttributionFilterValues> filter_values = 1; |
| } |
| |
| message AttributionEventLevelMetadata { |
| optional uint64 trigger_data = 1; |
| optional int64 priority = 2; |
| } |
| |
| message AttributionCommonAggregatableMetadata { |
| enum Coordinator { |
| AWS_CLOUD = 0; |
| } |
| |
| enum SourceRegistrationTimeConfig { |
| INCLUDE = 0; |
| EXCLUDE = 1; |
| } |
| |
| optional Coordinator coordinator = 1; |
| optional string verification_token = 2; |
| optional SourceRegistrationTimeConfig source_registration_time_config = 3; |
| } |
| |
| message AttributionAggregatableMetadata { |
| optional AttributionCommonAggregatableMetadata common_data = 1; |
| |
| message Contribution { |
| optional AttributionAggregationKey key = 1; |
| optional uint32 value = 2; |
| } |
| repeated Contribution contributions = 2; |
| } |
| |
| message AttributionNullAggregatableMetadata { |
| optional AttributionCommonAggregatableMetadata common_data = 1; |
| // Stored as microseconds since the Windows epoch (1601-01-01 00:00:00 UTC). |
| optional int64 fake_source_time = 2; |
| } |