//
// Copyright (C) 2022 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/third_party/statsd/shell_config.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/third_party/statsd/shell_config.proto.
 */
export const file_protos_third_party_statsd_shell_config: GenFile = /*@__PURE__*/
  fileDesc("Cixwcm90b3MvdGhpcmRfcGFydHkvc3RhdHNkL3NoZWxsX2NvbmZpZy5wcm90bxIPcGVyZmV0dG8ucHJvdG9zIpIBChdTdGF0c2RTaGVsbFN1YnNjcmlwdGlvbhI4CgZwdXNoZWQYASADKAsyKC5wZXJmZXR0by5wcm90b3MuU3RhdHNkU2ltcGxlQXRvbU1hdGNoZXISPQoGcHVsbGVkGAIgAygLMi0ucGVyZmV0dG8ucHJvdG9zLlN0YXRzZFB1bGxlZEF0b21TdWJzY3JpcHRpb24igAEKHFN0YXRzZFB1bGxlZEF0b21TdWJzY3JpcHRpb24SOQoHbWF0Y2hlchgBIAEoCzIoLnBlcmZldHRvLnByb3Rvcy5TdGF0c2RTaW1wbGVBdG9tTWF0Y2hlchITCgtmcmVxX21pbGxpcxgCIAEoBRIQCghwYWNrYWdlcxgDIAMoCSIqChdTdGF0c2RTaW1wbGVBdG9tTWF0Y2hlchIPCgdhdG9tX2lkGAEgASgF");

/**
 * @generated from message perfetto.protos.StatsdShellSubscription
 */
export type StatsdShellSubscription = Message<"perfetto.protos.StatsdShellSubscription"> & {
  /**
   * @generated from field: repeated perfetto.protos.StatsdSimpleAtomMatcher pushed = 1;
   */
  pushed: StatsdSimpleAtomMatcher[];

  /**
   * @generated from field: repeated perfetto.protos.StatsdPulledAtomSubscription pulled = 2;
   */
  pulled: StatsdPulledAtomSubscription[];
};

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

/**
 * @generated from message perfetto.protos.StatsdPulledAtomSubscription
 */
export type StatsdPulledAtomSubscription = Message<"perfetto.protos.StatsdPulledAtomSubscription"> & {
  /**
   * @generated from field: optional perfetto.protos.StatsdSimpleAtomMatcher matcher = 1;
   */
  matcher?: StatsdSimpleAtomMatcher;

  /**
   * @generated from field: optional int32 freq_millis = 2;
   */
  freqMillis: number;

  /**
   * @generated from field: repeated string packages = 3;
   */
  packages: string[];
};

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

/**
 * @generated from message perfetto.protos.StatsdSimpleAtomMatcher
 */
export type StatsdSimpleAtomMatcher = Message<"perfetto.protos.StatsdSimpleAtomMatcher"> & {
  /**
   * @generated from field: optional int32 atom_id = 1;
   */
  atomId: number;
};

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

