//
// Copyright (C) 2023 The Android Open Source Project
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//      http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// @generated by protoc-gen-es v2.2.2 with parameter "target=ts"
// @generated from file protos/perfetto/metrics/android/ad_services_metric.proto (package perfetto.protos, syntax proto2)
/* eslint-disable */

import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv1";
import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv1";
import type { Message } from "@bufbuild/protobuf";

/**
 * Describes the file protos/perfetto/metrics/android/ad_services_metric.proto.
 */
export const file_protos_perfetto_metrics_android_ad_services_metric: GenFile = /*@__PURE__*/
  fileDesc("Cjhwcm90b3MvcGVyZmV0dG8vbWV0cmljcy9hbmRyb2lkL2FkX3NlcnZpY2VzX21ldHJpYy5wcm90bxIPcGVyZmV0dG8ucHJvdG9zIsgCChJBZFNlcnZpY2VzVWlNZXRyaWMSLQolY29tbW9uX3NlcnZpY2VfaW5pdGlhbGl6YXRpb25fbGF0ZW5jeRgBIAEoARIvCidjb21tb25fc2VydmljZV9wZXJtaXNzaW9uX2NoZWNrX2xhdGVuY3kYAiABKAESLQolY29tbW9uX3NlcnZpY2VfdXhfZW5naW5lX2Zsb3dfbGF0ZW5jeRgDIAEoARImCh5tYWluX2FjdGl2aXR5X2NyZWF0aW9uX2xhdGVuY3kYBCABKAESLgomY29uc2VudF9tYW5hZ2VyX2luaXRpYWxpemF0aW9uX2xhdGVuY3kYBSABKAESJAocY29uc2VudF9tYW5hZ2VyX3JlYWRfbGF0ZW5jeRgGIAEoARIlCh1jb25zZW50X21hbmFnZXJfd3JpdGVfbGF0ZW5jeRgHIAEoASInChRBZFNlcnZpY2VzQWRJZE1ldHJpYxIPCgdsYXRlbmN5GAEgASgBIisKGEFkU2VydmljZXNBcHBTZXRJZE1ldHJpYxIPCgdsYXRlbmN5GAEgASgBIvABCh1PbkRldmljZVBlcnNvbmFsaXphdGlvbk1ldHJpYxIvCidtYW5hZ2luZ19zZXJ2aWNlX2luaXRpYWxpemF0aW9uX2xhdGVuY3kYASABKAESLQolc2VydmljZV9kZWxlZ2F0ZV9leGVjdXRlX2Zsb3dfbGF0ZW5jeRgCIAEoARI4CjBzZXJ2aWNlX2RlbGVnYXRlX3JlcXVlc3Rfc3VyZmFjZV9wYWNrYWdlX2xhdGVuY3kYAyABKAESNQotc2VydmljZV9kZWxlZ2F0ZV9yZWdpc3Rlcl93ZWJfdHJpZ2dlcl9sYXRlbmN5GAQgASgBIpECChBBZFNlcnZpY2VzTWV0cmljEjYKCXVpX21ldHJpYxgBIAMoCzIjLnBlcmZldHRvLnByb3Rvcy5BZFNlcnZpY2VzVWlNZXRyaWMSOwoMYWRfaWRfbWV0cmljGAIgAygLMiUucGVyZmV0dG8ucHJvdG9zLkFkU2VydmljZXNBZElkTWV0cmljEkQKEWFwcF9zZXRfaWRfbWV0cmljGAMgAygLMikucGVyZmV0dG8ucHJvdG9zLkFkU2VydmljZXNBcHBTZXRJZE1ldHJpYxJCCgpvZHBfbWV0cmljGAQgAygLMi4ucGVyZmV0dG8ucHJvdG9zLk9uRGV2aWNlUGVyc29uYWxpemF0aW9uTWV0cmlj");

/**
 * Next: 8
 *
 * @generated from message perfetto.protos.AdServicesUiMetric
 */
export type AdServicesUiMetric = Message<"perfetto.protos.AdServicesUiMetric"> & {
  /**
   * @generated from field: optional double common_service_initialization_latency = 1;
   */
  commonServiceInitializationLatency: number;

  /**
   * @generated from field: optional double common_service_permission_check_latency = 2;
   */
  commonServicePermissionCheckLatency: number;

  /**
   * @generated from field: optional double common_service_ux_engine_flow_latency = 3;
   */
  commonServiceUxEngineFlowLatency: number;

  /**
   * @generated from field: optional double main_activity_creation_latency = 4;
   */
  mainActivityCreationLatency: number;

  /**
   * @generated from field: optional double consent_manager_initialization_latency = 5;
   */
  consentManagerInitializationLatency: number;

  /**
   * @generated from field: optional double consent_manager_read_latency = 6;
   */
  consentManagerReadLatency: number;

  /**
   * @generated from field: optional double consent_manager_write_latency = 7;
   */
  consentManagerWriteLatency: number;
};

/**
 * Describes the message perfetto.protos.AdServicesUiMetric.
 * Use `create(AdServicesUiMetricSchema)` to create a new message.
 */
export const AdServicesUiMetricSchema: GenMessage<AdServicesUiMetric> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_metrics_android_ad_services_metric, 0);

/**
 * Next: 2
 *
 * @generated from message perfetto.protos.AdServicesAdIdMetric
 */
export type AdServicesAdIdMetric = Message<"perfetto.protos.AdServicesAdIdMetric"> & {
  /**
   * @generated from field: optional double latency = 1;
   */
  latency: number;
};

/**
 * Describes the message perfetto.protos.AdServicesAdIdMetric.
 * Use `create(AdServicesAdIdMetricSchema)` to create a new message.
 */
export const AdServicesAdIdMetricSchema: GenMessage<AdServicesAdIdMetric> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_metrics_android_ad_services_metric, 1);

/**
 * Next: 2
 *
 * @generated from message perfetto.protos.AdServicesAppSetIdMetric
 */
export type AdServicesAppSetIdMetric = Message<"perfetto.protos.AdServicesAppSetIdMetric"> & {
  /**
   * @generated from field: optional double latency = 1;
   */
  latency: number;
};

/**
 * Describes the message perfetto.protos.AdServicesAppSetIdMetric.
 * Use `create(AdServicesAppSetIdMetricSchema)` to create a new message.
 */
export const AdServicesAppSetIdMetricSchema: GenMessage<AdServicesAppSetIdMetric> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_metrics_android_ad_services_metric, 2);

/**
 * Next: 5
 *
 * @generated from message perfetto.protos.OnDevicePersonalizationMetric
 */
export type OnDevicePersonalizationMetric = Message<"perfetto.protos.OnDevicePersonalizationMetric"> & {
  /**
   * @generated from field: optional double managing_service_initialization_latency = 1;
   */
  managingServiceInitializationLatency: number;

  /**
   * @generated from field: optional double service_delegate_execute_flow_latency = 2;
   */
  serviceDelegateExecuteFlowLatency: number;

  /**
   * @generated from field: optional double service_delegate_request_surface_package_latency = 3;
   */
  serviceDelegateRequestSurfacePackageLatency: number;

  /**
   * @generated from field: optional double service_delegate_register_web_trigger_latency = 4;
   */
  serviceDelegateRegisterWebTriggerLatency: number;
};

/**
 * Describes the message perfetto.protos.OnDevicePersonalizationMetric.
 * Use `create(OnDevicePersonalizationMetricSchema)` to create a new message.
 */
export const OnDevicePersonalizationMetricSchema: GenMessage<OnDevicePersonalizationMetric> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_metrics_android_ad_services_metric, 3);

/**
 * Next: 5
 *
 * @generated from message perfetto.protos.AdServicesMetric
 */
export type AdServicesMetric = Message<"perfetto.protos.AdServicesMetric"> & {
  /**
   * @generated from field: repeated perfetto.protos.AdServicesUiMetric ui_metric = 1;
   */
  uiMetric: AdServicesUiMetric[];

  /**
   * @generated from field: repeated perfetto.protos.AdServicesAdIdMetric ad_id_metric = 2;
   */
  adIdMetric: AdServicesAdIdMetric[];

  /**
   * @generated from field: repeated perfetto.protos.AdServicesAppSetIdMetric app_set_id_metric = 3;
   */
  appSetIdMetric: AdServicesAppSetIdMetric[];

  /**
   * @generated from field: repeated perfetto.protos.OnDevicePersonalizationMetric odp_metric = 4;
   */
  odpMetric: OnDevicePersonalizationMetric[];
};

/**
 * Describes the message perfetto.protos.AdServicesMetric.
 * Use `create(AdServicesMetricSchema)` to create a new message.
 */
export const AdServicesMetricSchema: GenMessage<AdServicesMetric> = /*@__PURE__*/
  messageDesc(file_protos_perfetto_metrics_android_ad_services_metric, 4);

