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

import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2";
import type { PositionLite, UserLite } from "./deviceonly_pb";
import { file_meshtastic_deviceonly } from "./deviceonly_pb";
import type { DeviceMetrics } from "./telemetry_pb";
import { file_meshtastic_telemetry } from "./telemetry_pb";
import { file_nanopb } from "../nanopb_pb";
import type { Message } from "@bufbuild/protobuf";

/**
 * Describes the file meshtastic/deviceonly_legacy.proto.
 */
export const file_meshtastic_deviceonly_legacy: GenFile = /*@__PURE__*/
  fileDesc("CiJtZXNodGFzdGljL2RldmljZW9ubHlfbGVnYWN5LnByb3RvEgptZXNodGFzdGljItwCChNOb2RlSW5mb0xpdGVfTGVnYWN5EgsKA251bRgBIAEoDRIiCgR1c2VyGAIgASgLMhQubWVzaHRhc3RpYy5Vc2VyTGl0ZRIqCghwb3NpdGlvbhgDIAEoCzIYLm1lc2h0YXN0aWMuUG9zaXRpb25MaXRlEgsKA3NuchgEIAEoAhISCgpsYXN0X2hlYXJkGAUgASgHEjEKDmRldmljZV9tZXRyaWNzGAYgASgLMhkubWVzaHRhc3RpYy5EZXZpY2VNZXRyaWNzEg8KB2NoYW5uZWwYByABKA0SEAoIdmlhX21xdHQYCCABKAgSFgoJaG9wc19hd2F5GAkgASgNSACIAQESEwoLaXNfZmF2b3JpdGUYCiABKAgSEgoKaXNfaWdub3JlZBgLIAEoCBIQCghuZXh0X2hvcBgMIAEoDRIQCghiaXRmaWVsZBgNIAEoDUIMCgpfaG9wc19hd2F5IokBChNOb2RlRGF0YWJhc2VfTGVnYWN5Eg8KB3ZlcnNpb24YASABKA0SYQoFbm9kZXMYAiADKAsyHy5tZXNodGFzdGljLk5vZGVJbmZvTGl0ZV9MZWdhY3lCMZI/LpIBK3N0ZDo6dmVjdG9yPG1lc2h0YXN0aWNfTm9kZUluZm9MaXRlX0xlZ2FjeT5CdAoUb3JnLm1lc2h0YXN0aWMucHJvdG9CEERldmljZU9ubHlMZWdhY3laImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAJI/C8IBCDx2ZWN0b3I+YgZwcm90bzM", [file_meshtastic_deviceonly, file_meshtastic_telemetry, file_nanopb]);

/**
 *
 * Legacy NodeInfoLite descriptor used only to decode pre-split
 * /prefs/nodes.proto saves during the v24 -> v25 migration boot.
 * This preserves the original NodeInfoLite-compatible field numbers needed
 * to parse old wire bytes cleanly, including user (2), position (3),
 * device_metrics (6), and the legacy-only compatibility fields via_mqtt (8),
 * is_favorite (10), and is_ignored (11). Steady-state code does not use
 * this struct; it is dropped after migration completes. This file should be
 * removed once DEVICESTATE_MIN_VER advances past 24.
 *
 * @generated from message meshtastic.NodeInfoLite_Legacy
 */
export type NodeInfoLite_Legacy = Message<"meshtastic.NodeInfoLite_Legacy"> & {
  /**
   * @generated from field: uint32 num = 1;
   */
  num: number;

  /**
   * @generated from field: meshtastic.UserLite user = 2;
   */
  user?: UserLite | undefined;

  /**
   * @generated from field: meshtastic.PositionLite position = 3;
   */
  position?: PositionLite | undefined;

  /**
   * @generated from field: float snr = 4;
   */
  snr: number;

  /**
   * @generated from field: fixed32 last_heard = 5;
   */
  lastHeard: number;

  /**
   * @generated from field: meshtastic.DeviceMetrics device_metrics = 6;
   */
  deviceMetrics?: DeviceMetrics | undefined;

  /**
   * @generated from field: uint32 channel = 7;
   */
  channel: number;

  /**
   * @generated from field: bool via_mqtt = 8;
   */
  viaMqtt: boolean;

  /**
   * @generated from field: optional uint32 hops_away = 9;
   */
  hopsAway?: number | undefined;

  /**
   * @generated from field: bool is_favorite = 10;
   */
  isFavorite: boolean;

  /**
   * @generated from field: bool is_ignored = 11;
   */
  isIgnored: boolean;

  /**
   * @generated from field: uint32 next_hop = 12;
   */
  nextHop: number;

  /**
   * @generated from field: uint32 bitfield = 13;
   */
  bitfield: number;
};

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

/**
 *
 * Legacy NodeDatabase shape: one repeated array of fat NodeInfoLite_Legacy
 * with no satellite position/telemetry arrays.
 *
 * @generated from message meshtastic.NodeDatabase_Legacy
 */
export type NodeDatabase_Legacy = Message<"meshtastic.NodeDatabase_Legacy"> & {
  /**
   * @generated from field: uint32 version = 1;
   */
  version: number;

  /**
   * @generated from field: repeated meshtastic.NodeInfoLite_Legacy nodes = 2;
   */
  nodes: NodeInfoLite_Legacy[];
};

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

