// @generated by protoc-gen-es v2.12.0 with parameter "target=ts"
// @generated from file meshtastic/interdevice.proto (package meshtastic, syntax proto3)
/* eslint-disable */

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

/**
 * Describes the file meshtastic/interdevice.proto.
 */
export const file_meshtastic_interdevice: GenFile = /*@__PURE__*/
  fileDesc("ChxtZXNodGFzdGljL2ludGVyZGV2aWNlLnByb3RvEgptZXNodGFzdGljImoKClNlbnNvckRhdGESJQoEdHlwZRgBIAEoDjIXLm1lc2h0YXN0aWMuTWVzc2FnZVR5cGUSFQoLZmxvYXRfdmFsdWUYAiABKAJIABIWCgx1aW50MzJfdmFsdWUYAyABKA1IAEIGCgRkYXRhIlYKEkludGVyZGV2aWNlTWVzc2FnZRIOCgRubWVhGAEgASgJSAASKAoGc2Vuc29yGAIgASgLMhYubWVzaHRhc3RpYy5TZW5zb3JEYXRhSABCBgoEZGF0YSrVAQoLTWVzc2FnZVR5cGUSBwoDQUNLEAASFQoQQ09MTEVDVF9JTlRFUlZBTBCgARIMCgdCRUVQX09OEKEBEg0KCEJFRVBfT0ZGEKIBEg0KCFNIVVRET1dOEKMBEg0KCFBPV0VSX09OEKQBEg8KClNDRDQxX1RFTVAQsAESEwoOU0NENDFfSFVNSURJVFkQsQESDgoJU0NENDFfQ08yELIBEg8KCkFIVDIwX1RFTVAQswESEwoOQUhUMjBfSFVNSURJVFkQtAESDwoKVFZPQ19JTkRFWBC1AUJnChRvcmcubWVzaHRhc3RpYy5wcm90b0IRSW50ZXJkZXZpY2VQcm90b3NaImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAGIGcHJvdG8z");

/**
 * @generated from message meshtastic.SensorData
 */
export type SensorData = Message<"meshtastic.SensorData"> & {
  /**
   * The message type
   *
   * @generated from field: meshtastic.MessageType type = 1;
   */
  type: MessageType;

  /**
   * The sensor data, either as a float or an uint32
   *
   * @generated from oneof meshtastic.SensorData.data
   */
  data: {
    /**
     * @generated from field: float float_value = 2;
     */
    value: number;
    case: "floatValue";
  } | {
    /**
     * @generated from field: uint32 uint32_value = 3;
     */
    value: number;
    case: "uint32Value";
  } | { case: undefined; value?: undefined };
};

/**
 * Describes the message meshtastic.SensorData.
 * Use `create(SensorDataSchema)` to create a new message.
 */
export const SensorDataSchema: GenMessage<SensorData> = /*@__PURE__*/
  messageDesc(file_meshtastic_interdevice, 0);

/**
 * @generated from message meshtastic.InterdeviceMessage
 */
export type InterdeviceMessage = Message<"meshtastic.InterdeviceMessage"> & {
  /**
   * The message data
   *
   * @generated from oneof meshtastic.InterdeviceMessage.data
   */
  data: {
    /**
     * @generated from field: string nmea = 1;
     */
    value: string;
    case: "nmea";
  } | {
    /**
     * @generated from field: meshtastic.SensorData sensor = 2;
     */
    value: SensorData;
    case: "sensor";
  } | { case: undefined; value?: undefined };
};

/**
 * Describes the message meshtastic.InterdeviceMessage.
 * Use `create(InterdeviceMessageSchema)` to create a new message.
 */
export const InterdeviceMessageSchema: GenMessage<InterdeviceMessage> = /*@__PURE__*/
  messageDesc(file_meshtastic_interdevice, 1);

/**
 * @generated from enum meshtastic.MessageType
 */
export enum MessageType {
  /**
   * @generated from enum value: ACK = 0;
   */
  ACK = 0,

  /**
   * in ms
   *
   * @generated from enum value: COLLECT_INTERVAL = 160;
   */
  COLLECT_INTERVAL = 160,

  /**
   * duration ms
   *
   * @generated from enum value: BEEP_ON = 161;
   */
  BEEP_ON = 161,

  /**
   * cancel prematurely
   *
   * @generated from enum value: BEEP_OFF = 162;
   */
  BEEP_OFF = 162,

  /**
   * @generated from enum value: SHUTDOWN = 163;
   */
  SHUTDOWN = 163,

  /**
   * @generated from enum value: POWER_ON = 164;
   */
  POWER_ON = 164,

  /**
   * @generated from enum value: SCD41_TEMP = 176;
   */
  SCD41_TEMP = 176,

  /**
   * @generated from enum value: SCD41_HUMIDITY = 177;
   */
  SCD41_HUMIDITY = 177,

  /**
   * @generated from enum value: SCD41_CO2 = 178;
   */
  SCD41_CO2 = 178,

  /**
   * @generated from enum value: AHT20_TEMP = 179;
   */
  AHT20_TEMP = 179,

  /**
   * @generated from enum value: AHT20_HUMIDITY = 180;
   */
  AHT20_HUMIDITY = 180,

  /**
   * @generated from enum value: TVOC_INDEX = 181;
   */
  TVOC_INDEX = 181,
}

/**
 * Describes the enum meshtastic.MessageType.
 */
export const MessageTypeSchema: GenEnum<MessageType> = /*@__PURE__*/
  enumDesc(file_meshtastic_interdevice, 0);

