diff --git a/packages/protobufs/packages/ts/dist/meshtastic/admin_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/admin_pb.ts deleted file mode 100644 index 9861594b9..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/admin_pb.ts +++ /dev/null @@ -1,1559 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/admin.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 { Channel } from "./channel_pb"; -import { file_meshtastic_channel } from "./channel_pb"; -import type { Config } from "./config_pb"; -import { file_meshtastic_config } from "./config_pb"; -import type { DeviceConnectionStatus } from "./connection_status_pb"; -import { file_meshtastic_connection_status } from "./connection_status_pb"; -import type { DeviceUIConfig } from "./device_ui_pb"; -import { file_meshtastic_device_ui } from "./device_ui_pb"; -import type { DeviceMetadata, NodeRemoteHardwarePin, Position, User } from "./mesh_pb"; -import { file_meshtastic_mesh } from "./mesh_pb"; -import type { ModuleConfig } from "./module_config_pb"; -import { file_meshtastic_module_config } from "./module_config_pb"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/admin.proto. - */ -export const file_meshtastic_admin: GenFile = /*@__PURE__*/ - fileDesc("ChZtZXNodGFzdGljL2FkbWluLnByb3RvEgptZXNodGFzdGljIqsbCgxBZG1pbk1lc3NhZ2USFwoPc2Vzc2lvbl9wYXNza2V5GGUgASgMEh0KE2dldF9jaGFubmVsX3JlcXVlc3QYASABKA1IABIzChRnZXRfY2hhbm5lbF9yZXNwb25zZRgCIAEoCzITLm1lc2h0YXN0aWMuQ2hhbm5lbEgAEhsKEWdldF9vd25lcl9yZXF1ZXN0GAMgASgISAASLgoSZ2V0X293bmVyX3Jlc3BvbnNlGAQgASgLMhAubWVzaHRhc3RpYy5Vc2VySAASQQoSZ2V0X2NvbmZpZ19yZXF1ZXN0GAUgASgOMiMubWVzaHRhc3RpYy5BZG1pbk1lc3NhZ2UuQ29uZmlnVHlwZUgAEjEKE2dldF9jb25maWdfcmVzcG9uc2UYBiABKAsyEi5tZXNodGFzdGljLkNvbmZpZ0gAEk4KGWdldF9tb2R1bGVfY29uZmlnX3JlcXVlc3QYByABKA4yKS5tZXNodGFzdGljLkFkbWluTWVzc2FnZS5Nb2R1bGVDb25maWdUeXBlSAASPgoaZ2V0X21vZHVsZV9jb25maWdfcmVzcG9uc2UYCCABKAsyGC5tZXNodGFzdGljLk1vZHVsZUNvbmZpZ0gAEjQKKmdldF9jYW5uZWRfbWVzc2FnZV9tb2R1bGVfbWVzc2FnZXNfcmVxdWVzdBgKIAEoCEgAEjUKK2dldF9jYW5uZWRfbWVzc2FnZV9tb2R1bGVfbWVzc2FnZXNfcmVzcG9uc2UYCyABKAlIABIlChtnZXRfZGV2aWNlX21ldGFkYXRhX3JlcXVlc3QYDCABKAhIABJCChxnZXRfZGV2aWNlX21ldGFkYXRhX3Jlc3BvbnNlGA0gASgLMhoubWVzaHRhc3RpYy5EZXZpY2VNZXRhZGF0YUgAEh4KFGdldF9yaW5ndG9uZV9yZXF1ZXN0GA4gASgISAASHwoVZ2V0X3Jpbmd0b25lX3Jlc3BvbnNlGA8gASgJSAASLgokZ2V0X2RldmljZV9jb25uZWN0aW9uX3N0YXR1c19yZXF1ZXN0GBAgASgISAASUwolZ2V0X2RldmljZV9jb25uZWN0aW9uX3N0YXR1c19yZXNwb25zZRgRIAEoCzIiLm1lc2h0YXN0aWMuRGV2aWNlQ29ubmVjdGlvblN0YXR1c0gAEjEKDHNldF9oYW1fbW9kZRgSIAEoCzIZLm1lc2h0YXN0aWMuSGFtUGFyYW1ldGVyc0gAEi8KJWdldF9ub2RlX3JlbW90ZV9oYXJkd2FyZV9waW5zX3JlcXVlc3QYEyABKAhIABJcCiZnZXRfbm9kZV9yZW1vdGVfaGFyZHdhcmVfcGluc19yZXNwb25zZRgUIAEoCzIqLm1lc2h0YXN0aWMuTm9kZVJlbW90ZUhhcmR3YXJlUGluc1Jlc3BvbnNlSAASIAoWZW50ZXJfZGZ1X21vZGVfcmVxdWVzdBgVIAEoCEgAEh0KE2RlbGV0ZV9maWxlX3JlcXVlc3QYFiABKAlIABITCglzZXRfc2NhbGUYFyABKA1IABJFChJiYWNrdXBfcHJlZmVyZW5jZXMYGCABKA4yJy5tZXNodGFzdGljLkFkbWluTWVzc2FnZS5CYWNrdXBMb2NhdGlvbkgAEkYKE3Jlc3RvcmVfcHJlZmVyZW5jZXMYGSABKA4yJy5tZXNodGFzdGljLkFkbWluTWVzc2FnZS5CYWNrdXBMb2NhdGlvbkgAEkwKGXJlbW92ZV9iYWNrdXBfcHJlZmVyZW5jZXMYGiABKA4yJy5tZXNodGFzdGljLkFkbWluTWVzc2FnZS5CYWNrdXBMb2NhdGlvbkgAEj8KEHNlbmRfaW5wdXRfZXZlbnQYGyABKAsyIy5tZXNodGFzdGljLkFkbWluTWVzc2FnZS5JbnB1dEV2ZW50SAASJQoJc2V0X293bmVyGCAgASgLMhAubWVzaHRhc3RpYy5Vc2VySAASKgoLc2V0X2NoYW5uZWwYISABKAsyEy5tZXNodGFzdGljLkNoYW5uZWxIABIoCgpzZXRfY29uZmlnGCIgASgLMhIubWVzaHRhc3RpYy5Db25maWdIABI1ChFzZXRfbW9kdWxlX2NvbmZpZxgjIAEoCzIYLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnSAASLAoic2V0X2Nhbm5lZF9tZXNzYWdlX21vZHVsZV9tZXNzYWdlcxgkIAEoCUgAEh4KFHNldF9yaW5ndG9uZV9tZXNzYWdlGCUgASgJSAASGwoRcmVtb3ZlX2J5X25vZGVudW0YJiABKA1IABIbChFzZXRfZmF2b3JpdGVfbm9kZRgnIAEoDUgAEh4KFHJlbW92ZV9mYXZvcml0ZV9ub2RlGCggASgNSAASMgoSc2V0X2ZpeGVkX3Bvc2l0aW9uGCkgASgLMhQubWVzaHRhc3RpYy5Qb3NpdGlvbkgAEh8KFXJlbW92ZV9maXhlZF9wb3NpdGlvbhgqIAEoCEgAEhcKDXNldF90aW1lX29ubHkYKyABKAdIABIfChVnZXRfdWlfY29uZmlnX3JlcXVlc3QYLCABKAhIABI8ChZnZXRfdWlfY29uZmlnX3Jlc3BvbnNlGC0gASgLMhoubWVzaHRhc3RpYy5EZXZpY2VVSUNvbmZpZ0gAEjUKD3N0b3JlX3VpX2NvbmZpZxguIAEoCzIaLm1lc2h0YXN0aWMuRGV2aWNlVUlDb25maWdIABIaChBzZXRfaWdub3JlZF9ub2RlGC8gASgNSAASHQoTcmVtb3ZlX2lnbm9yZWRfbm9kZRgwIAEoDUgAEhsKEXRvZ2dsZV9tdXRlZF9ub2RlGDEgASgNSAASHQoTYmVnaW5fZWRpdF9zZXR0aW5ncxhAIAEoCEgAEh4KFGNvbW1pdF9lZGl0X3NldHRpbmdzGEEgASgISAASMAoLYWRkX2NvbnRhY3QYQiABKAsyGS5tZXNodGFzdGljLlNoYXJlZENvbnRhY3RIABI8ChBrZXlfdmVyaWZpY2F0aW9uGEMgASgLMiAubWVzaHRhc3RpYy5LZXlWZXJpZmljYXRpb25BZG1pbkgAEh4KFGZhY3RvcnlfcmVzZXRfZGV2aWNlGF4gASgFSAASIAoScmVib290X290YV9zZWNvbmRzGF8gASgFQgIYAUgAEhgKDmV4aXRfc2ltdWxhdG9yGGAgASgISAASGAoOcmVib290X3NlY29uZHMYYSABKAVIABIaChBzaHV0ZG93bl9zZWNvbmRzGGIgASgFSAASHgoUZmFjdG9yeV9yZXNldF9jb25maWcYYyABKAVIABIWCgxub2RlZGJfcmVzZXQYZCABKAhIABI4CgtvdGFfcmVxdWVzdBhmIAEoCzIhLm1lc2h0YXN0aWMuQWRtaW5NZXNzYWdlLk9UQUV2ZW50SAASMQoNc2Vuc29yX2NvbmZpZxhnIAEoCzIYLm1lc2h0YXN0aWMuU2Vuc29yQ29uZmlnSAASMQoNbG9ja2Rvd25fYXV0aBhoIAEoCzIYLm1lc2h0YXN0aWMuTG9ja2Rvd25BdXRoSAAaUwoKSW5wdXRFdmVudBISCgpldmVudF9jb2RlGAEgASgNEg8KB2tiX2NoYXIYAiABKA0SDwoHdG91Y2hfeBgDIAEoDRIPCgd0b3VjaF95GAQgASgNGkoKCE9UQUV2ZW50EiwKD3JlYm9vdF9vdGFfbW9kZRgBIAEoDjITLm1lc2h0YXN0aWMuT1RBTW9kZRIQCghvdGFfaGFzaBgCIAEoDCLWAQoKQ29uZmlnVHlwZRIRCg1ERVZJQ0VfQ09ORklHEAASEwoPUE9TSVRJT05fQ09ORklHEAESEAoMUE9XRVJfQ09ORklHEAISEgoOTkVUV09SS19DT05GSUcQAxISCg5ESVNQTEFZX0NPTkZJRxAEEg8KC0xPUkFfQ09ORklHEAUSFAoQQkxVRVRPT1RIX0NPTkZJRxAGEhMKD1NFQ1VSSVRZX0NPTkZJRxAHEhUKEVNFU1NJT05LRVlfQ09ORklHEAgSEwoPREVWSUNFVUlfQ09ORklHEAkigwMKEE1vZHVsZUNvbmZpZ1R5cGUSDwoLTVFUVF9DT05GSUcQABIRCg1TRVJJQUxfQ09ORklHEAESEwoPRVhUTk9USUZfQ09ORklHEAISFwoTU1RPUkVGT1JXQVJEX0NPTkZJRxADEhQKEFJBTkdFVEVTVF9DT05GSUcQBBIUChBURUxFTUVUUllfQ09ORklHEAUSFAoQQ0FOTkVETVNHX0NPTkZJRxAGEhAKDEFVRElPX0NPTkZJRxAHEhkKFVJFTU9URUhBUkRXQVJFX0NPTkZJRxAIEhcKE05FSUdIQk9SSU5GT19DT05GSUcQCRIaChZBTUJJRU5UTElHSFRJTkdfQ09ORklHEAoSGgoWREVURUNUSU9OU0VOU09SX0NPTkZJRxALEhUKEVBBWENPVU5URVJfQ09ORklHEAwSGAoUU1RBVFVTTUVTU0FHRV9DT05GSUcQDRIcChhUUkFGRklDTUFOQUdFTUVOVF9DT05GSUcQDhIOCgpUQUtfQ09ORklHEA8iIwoOQmFja3VwTG9jYXRpb24SCQoFRkxBU0gQABIGCgJTRBABQhEKD3BheWxvYWRfdmFyaWFudCKWAQoMTG9ja2Rvd25BdXRoEhIKCnBhc3NwaHJhc2UYASABKAwSFwoPYm9vdHNfcmVtYWluaW5nGAIgASgNEhkKEXZhbGlkX3VudGlsX2Vwb2NoGAMgASgNEhAKCGxvY2tfbm93GAQgASgIEhsKE21heF9zZXNzaW9uX3NlY29uZHMYBSABKA0SDwoHZGlzYWJsZRgGIAEoCCJuCg1IYW1QYXJhbWV0ZXJzEhEKCWNhbGxfc2lnbhgBIAEoCRIQCgh0eF9wb3dlchgCIAEoBRIRCglmcmVxdWVuY3kYAyABKAISEgoKc2hvcnRfbmFtZRgEIAEoCRIRCglsb25nX25hbWUYBSABKAkiZgoeTm9kZVJlbW90ZUhhcmR3YXJlUGluc1Jlc3BvbnNlEkQKGW5vZGVfcmVtb3RlX2hhcmR3YXJlX3BpbnMYASADKAsyIS5tZXNodGFzdGljLk5vZGVSZW1vdGVIYXJkd2FyZVBpbiJzCg1TaGFyZWRDb250YWN0EhAKCG5vZGVfbnVtGAEgASgNEh4KBHVzZXIYAiABKAsyEC5tZXNodGFzdGljLlVzZXISFQoNc2hvdWxkX2lnbm9yZRgDIAEoCBIZChFtYW51YWxseV92ZXJpZmllZBgEIAEoCCKcAgoUS2V5VmVyaWZpY2F0aW9uQWRtaW4SQgoMbWVzc2FnZV90eXBlGAEgASgOMiwubWVzaHRhc3RpYy5LZXlWZXJpZmljYXRpb25BZG1pbi5NZXNzYWdlVHlwZRIWCg5yZW1vdGVfbm9kZW51bRgCIAEoDRINCgVub25jZRgDIAEoBBIcCg9zZWN1cml0eV9udW1iZXIYBCABKA1IAIgBASJnCgtNZXNzYWdlVHlwZRIZChVJTklUSUFURV9WRVJJRklDQVRJT04QABIbChdQUk9WSURFX1NFQ1VSSVRZX05VTUJFUhABEg0KCURPX1ZFUklGWRACEhEKDURPX05PVF9WRVJJRlkQA0ISChBfc2VjdXJpdHlfbnVtYmVyIs4BCgxTZW5zb3JDb25maWcSLgoMc2NkNHhfY29uZmlnGAEgASgLMhgubWVzaHRhc3RpYy5TQ0Q0WF9jb25maWcSLgoMc2VuNXhfY29uZmlnGAIgASgLMhgubWVzaHRhc3RpYy5TRU41WF9jb25maWcSLgoMc2NkMzBfY29uZmlnGAMgASgLMhgubWVzaHRhc3RpYy5TQ0QzMF9jb25maWcSLgoMc2h0eHhfY29uZmlnGAQgASgLMhgubWVzaHRhc3RpYy5TSFRYWF9jb25maWci4gIKDFNDRDRYX2NvbmZpZxIUCgdzZXRfYXNjGAEgASgISACIAQESIAoTc2V0X3RhcmdldF9jbzJfY29uYxgCIAEoDUgBiAEBEhwKD3NldF90ZW1wZXJhdHVyZRgDIAEoAkgCiAEBEhkKDHNldF9hbHRpdHVkZRgEIAEoDUgDiAEBEiEKFHNldF9hbWJpZW50X3ByZXNzdXJlGAUgASgNSASIAQESGgoNZmFjdG9yeV9yZXNldBgGIAEoCEgFiAEBEhsKDnNldF9wb3dlcl9tb2RlGAcgASgISAaIAQFCCgoIX3NldF9hc2NCFgoUX3NldF90YXJnZXRfY28yX2NvbmNCEgoQX3NldF90ZW1wZXJhdHVyZUIPCg1fc2V0X2FsdGl0dWRlQhcKFV9zZXRfYW1iaWVudF9wcmVzc3VyZUIQCg5fZmFjdG9yeV9yZXNldEIRCg9fc2V0X3Bvd2VyX21vZGUidgoMU0VONVhfY29uZmlnEhwKD3NldF90ZW1wZXJhdHVyZRgBIAEoAkgAiAEBEh4KEXNldF9vbmVfc2hvdF9tb2RlGAIgASgISAGIAQFCEgoQX3NldF90ZW1wZXJhdHVyZUIUChJfc2V0X29uZV9zaG90X21vZGUitAIKDFNDRDMwX2NvbmZpZxIUCgdzZXRfYXNjGAEgASgISACIAQESIAoTc2V0X3RhcmdldF9jbzJfY29uYxgCIAEoDUgBiAEBEhwKD3NldF90ZW1wZXJhdHVyZRgDIAEoAkgCiAEBEhkKDHNldF9hbHRpdHVkZRgEIAEoDUgDiAEBEiUKGHNldF9tZWFzdXJlbWVudF9pbnRlcnZhbBgFIAEoDUgEiAEBEhcKCnNvZnRfcmVzZXQYBiABKAhIBYgBAUIKCghfc2V0X2FzY0IWChRfc2V0X3RhcmdldF9jbzJfY29uY0ISChBfc2V0X3RlbXBlcmF0dXJlQg8KDV9zZXRfYWx0aXR1ZGVCGwoZX3NldF9tZWFzdXJlbWVudF9pbnRlcnZhbEINCgtfc29mdF9yZXNldCI6CgxTSFRYWF9jb25maWcSGQoMc2V0X2FjY3VyYWN5GAEgASgNSACIAQFCDwoNX3NldF9hY2N1cmFjeSo3CgdPVEFNb2RlEhEKDU5PX1JFQk9PVF9PVEEQABILCgdPVEFfQkxFEAESDAoIT1RBX1dJRkkQAkJhChRvcmcubWVzaHRhc3RpYy5wcm90b0ILQWRtaW5Qcm90b3NaImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAGIGcHJvdG8z", [file_meshtastic_channel, file_meshtastic_config, file_meshtastic_connection_status, file_meshtastic_device_ui, file_meshtastic_mesh, file_meshtastic_module_config]); - -/** - * - * This message is handled by the Admin module and is responsible for all settings/channel read/write operations. - * This message is used to do settings operations to both remote AND local nodes. - * (Prior to 1.2 these operations were done via special ToRadio operations) - * - * @generated from message meshtastic.AdminMessage - */ -export type AdminMessage = Message<"meshtastic.AdminMessage"> & { - /** - * - * The node generates this key and sends it with any get_x_response packets. - * The client MUST include the same key with any set_x commands. Key expires after 300 seconds. - * Prevents replay attacks for admin messages. - * - * @generated from field: bytes session_passkey = 101; - */ - sessionPasskey: Uint8Array; - - /** - * - * TODO: REPLACE - * - * @generated from oneof meshtastic.AdminMessage.payload_variant - */ - payloadVariant: { - /** - * - * Send the specified channel in the response to this message - * NOTE: This field is sent with the channel index + 1 (to ensure we never try to send 'zero' - which protobufs treats as not present) - * - * @generated from field: uint32 get_channel_request = 1; - */ - value: number; - case: "getChannelRequest"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.Channel get_channel_response = 2; - */ - value: Channel; - case: "getChannelResponse"; - } | { - /** - * - * Send the current owner data in the response to this message. - * - * @generated from field: bool get_owner_request = 3; - */ - value: boolean; - case: "getOwnerRequest"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.User get_owner_response = 4; - */ - value: User; - case: "getOwnerResponse"; - } | { - /** - * - * Ask for the following config data to be sent - * - * @generated from field: meshtastic.AdminMessage.ConfigType get_config_request = 5; - */ - value: AdminMessage_ConfigType; - case: "getConfigRequest"; - } | { - /** - * - * Send the current Config in the response to this message. - * - * @generated from field: meshtastic.Config get_config_response = 6; - */ - value: Config; - case: "getConfigResponse"; - } | { - /** - * - * Ask for the following config data to be sent - * - * @generated from field: meshtastic.AdminMessage.ModuleConfigType get_module_config_request = 7; - */ - value: AdminMessage_ModuleConfigType; - case: "getModuleConfigRequest"; - } | { - /** - * - * Send the current Config in the response to this message. - * - * @generated from field: meshtastic.ModuleConfig get_module_config_response = 8; - */ - value: ModuleConfig; - case: "getModuleConfigResponse"; - } | { - /** - * - * Get the Canned Message Module messages in the response to this message. - * - * @generated from field: bool get_canned_message_module_messages_request = 10; - */ - value: boolean; - case: "getCannedMessageModuleMessagesRequest"; - } | { - /** - * - * Get the Canned Message Module messages in the response to this message. - * - * @generated from field: string get_canned_message_module_messages_response = 11; - */ - value: string; - case: "getCannedMessageModuleMessagesResponse"; - } | { - /** - * - * Request the node to send device metadata (firmware, protobuf version, etc) - * - * @generated from field: bool get_device_metadata_request = 12; - */ - value: boolean; - case: "getDeviceMetadataRequest"; - } | { - /** - * - * Device metadata response - * - * @generated from field: meshtastic.DeviceMetadata get_device_metadata_response = 13; - */ - value: DeviceMetadata; - case: "getDeviceMetadataResponse"; - } | { - /** - * - * Get the Ringtone in the response to this message. - * - * @generated from field: bool get_ringtone_request = 14; - */ - value: boolean; - case: "getRingtoneRequest"; - } | { - /** - * - * Get the Ringtone in the response to this message. - * - * @generated from field: string get_ringtone_response = 15; - */ - value: string; - case: "getRingtoneResponse"; - } | { - /** - * - * Request the node to send it's connection status - * - * @generated from field: bool get_device_connection_status_request = 16; - */ - value: boolean; - case: "getDeviceConnectionStatusRequest"; - } | { - /** - * - * Device connection status response - * - * @generated from field: meshtastic.DeviceConnectionStatus get_device_connection_status_response = 17; - */ - value: DeviceConnectionStatus; - case: "getDeviceConnectionStatusResponse"; - } | { - /** - * - * Setup a node for licensed amateur (ham) radio operation - * - * @generated from field: meshtastic.HamParameters set_ham_mode = 18; - */ - value: HamParameters; - case: "setHamMode"; - } | { - /** - * - * Get the mesh's nodes with their available gpio pins for RemoteHardware module use - * - * @generated from field: bool get_node_remote_hardware_pins_request = 19; - */ - value: boolean; - case: "getNodeRemoteHardwarePinsRequest"; - } | { - /** - * - * Respond with the mesh's nodes with their available gpio pins for RemoteHardware module use - * - * @generated from field: meshtastic.NodeRemoteHardwarePinsResponse get_node_remote_hardware_pins_response = 20; - */ - value: NodeRemoteHardwarePinsResponse; - case: "getNodeRemoteHardwarePinsResponse"; - } | { - /** - * - * Enter (UF2) DFU mode - * Only implemented on NRF52 currently - * - * @generated from field: bool enter_dfu_mode_request = 21; - */ - value: boolean; - case: "enterDfuModeRequest"; - } | { - /** - * - * Delete the file by the specified path from the device - * - * @generated from field: string delete_file_request = 22; - */ - value: string; - case: "deleteFileRequest"; - } | { - /** - * - * Set zero and offset for scale chips - * - * @generated from field: uint32 set_scale = 23; - */ - value: number; - case: "setScale"; - } | { - /** - * - * Backup the node's preferences - * - * @generated from field: meshtastic.AdminMessage.BackupLocation backup_preferences = 24; - */ - value: AdminMessage_BackupLocation; - case: "backupPreferences"; - } | { - /** - * - * Restore the node's preferences - * - * @generated from field: meshtastic.AdminMessage.BackupLocation restore_preferences = 25; - */ - value: AdminMessage_BackupLocation; - case: "restorePreferences"; - } | { - /** - * - * Remove backups of the node's preferences - * - * @generated from field: meshtastic.AdminMessage.BackupLocation remove_backup_preferences = 26; - */ - value: AdminMessage_BackupLocation; - case: "removeBackupPreferences"; - } | { - /** - * - * Send an input event to the node. - * This is used to trigger physical input events like button presses, touch events, etc. - * - * @generated from field: meshtastic.AdminMessage.InputEvent send_input_event = 27; - */ - value: AdminMessage_InputEvent; - case: "sendInputEvent"; - } | { - /** - * - * Set the owner for this node - * - * @generated from field: meshtastic.User set_owner = 32; - */ - value: User; - case: "setOwner"; - } | { - /** - * - * Set channels (using the new API). - * A special channel is the "primary channel". - * The other records are secondary channels. - * Note: only one channel can be marked as primary. - * If the client sets a particular channel to be primary, the previous channel will be set to SECONDARY automatically. - * - * @generated from field: meshtastic.Channel set_channel = 33; - */ - value: Channel; - case: "setChannel"; - } | { - /** - * - * Set the current Config - * - * @generated from field: meshtastic.Config set_config = 34; - */ - value: Config; - case: "setConfig"; - } | { - /** - * - * Set the current Config - * - * @generated from field: meshtastic.ModuleConfig set_module_config = 35; - */ - value: ModuleConfig; - case: "setModuleConfig"; - } | { - /** - * - * Set the Canned Message Module messages text. - * - * @generated from field: string set_canned_message_module_messages = 36; - */ - value: string; - case: "setCannedMessageModuleMessages"; - } | { - /** - * - * Set the ringtone for ExternalNotification. - * - * @generated from field: string set_ringtone_message = 37; - */ - value: string; - case: "setRingtoneMessage"; - } | { - /** - * - * Remove the node by the specified node-num from the NodeDB on the device - * - * @generated from field: uint32 remove_by_nodenum = 38; - */ - value: number; - case: "removeByNodenum"; - } | { - /** - * - * Set specified node-num to be favorited on the NodeDB on the device - * - * @generated from field: uint32 set_favorite_node = 39; - */ - value: number; - case: "setFavoriteNode"; - } | { - /** - * - * Set specified node-num to be un-favorited on the NodeDB on the device - * - * @generated from field: uint32 remove_favorite_node = 40; - */ - value: number; - case: "removeFavoriteNode"; - } | { - /** - * - * Set fixed position data on the node and then set the position.fixed_position = true - * - * @generated from field: meshtastic.Position set_fixed_position = 41; - */ - value: Position; - case: "setFixedPosition"; - } | { - /** - * - * Clear fixed position coordinates and then set position.fixed_position = false - * - * @generated from field: bool remove_fixed_position = 42; - */ - value: boolean; - case: "removeFixedPosition"; - } | { - /** - * - * Set time only on the node - * Convenience method to set the time on the node (as Net quality) without any other position data - * - * @generated from field: fixed32 set_time_only = 43; - */ - value: number; - case: "setTimeOnly"; - } | { - /** - * - * Tell the node to send the stored ui data. - * - * @generated from field: bool get_ui_config_request = 44; - */ - value: boolean; - case: "getUiConfigRequest"; - } | { - /** - * - * Reply stored device ui data. - * - * @generated from field: meshtastic.DeviceUIConfig get_ui_config_response = 45; - */ - value: DeviceUIConfig; - case: "getUiConfigResponse"; - } | { - /** - * - * Tell the node to store UI data persistently. - * - * @generated from field: meshtastic.DeviceUIConfig store_ui_config = 46; - */ - value: DeviceUIConfig; - case: "storeUiConfig"; - } | { - /** - * - * Set specified node-num to be ignored on the NodeDB on the device - * - * @generated from field: uint32 set_ignored_node = 47; - */ - value: number; - case: "setIgnoredNode"; - } | { - /** - * - * Set specified node-num to be un-ignored on the NodeDB on the device - * - * @generated from field: uint32 remove_ignored_node = 48; - */ - value: number; - case: "removeIgnoredNode"; - } | { - /** - * - * Set specified node-num to be muted - * - * @generated from field: uint32 toggle_muted_node = 49; - */ - value: number; - case: "toggleMutedNode"; - } | { - /** - * - * Begins an edit transaction for config, module config, owner, and channel settings changes - * This will delay the standard *implicit* save to the file system and subsequent reboot behavior until committed (commit_edit_settings) - * - * @generated from field: bool begin_edit_settings = 64; - */ - value: boolean; - case: "beginEditSettings"; - } | { - /** - * - * Commits an open transaction for any edits made to config, module config, owner, and channel settings - * - * @generated from field: bool commit_edit_settings = 65; - */ - value: boolean; - case: "commitEditSettings"; - } | { - /** - * - * Add a contact (User) to the nodedb - * - * @generated from field: meshtastic.SharedContact add_contact = 66; - */ - value: SharedContact; - case: "addContact"; - } | { - /** - * - * Initiate or respond to a key verification request - * - * @generated from field: meshtastic.KeyVerificationAdmin key_verification = 67; - */ - value: KeyVerificationAdmin; - case: "keyVerification"; - } | { - /** - * - * Tell the node to factory reset config everything; all device state and configuration will be returned to factory defaults and BLE bonds will be cleared. - * - * @generated from field: int32 factory_reset_device = 94; - */ - value: number; - case: "factoryResetDevice"; - } | { - /** - * - * Tell the node to reboot into the OTA Firmware in this many seconds (or <0 to cancel reboot) - * Only Implemented for ESP32 Devices. This needs to be issued to send a new main firmware via bluetooth. - * Deprecated in favor of reboot_ota_mode in 2.7.17 - * - * @generated from field: int32 reboot_ota_seconds = 95 [deprecated = true]; - * @deprecated - */ - value: number; - case: "rebootOtaSeconds"; - } | { - /** - * - * This message is only supported for the simulator Portduino build. - * If received the simulator will exit successfully. - * - * @generated from field: bool exit_simulator = 96; - */ - value: boolean; - case: "exitSimulator"; - } | { - /** - * - * Tell the node to reboot in this many seconds (or <0 to cancel reboot) - * - * @generated from field: int32 reboot_seconds = 97; - */ - value: number; - case: "rebootSeconds"; - } | { - /** - * - * Tell the node to shutdown in this many seconds (or <0 to cancel shutdown) - * - * @generated from field: int32 shutdown_seconds = 98; - */ - value: number; - case: "shutdownSeconds"; - } | { - /** - * - * Tell the node to factory reset config; all device state and configuration will be returned to factory defaults; BLE bonds will be preserved. - * - * @generated from field: int32 factory_reset_config = 99; - */ - value: number; - case: "factoryResetConfig"; - } | { - /** - * - * Tell the node to reset the nodedb. - * When true, favorites are preserved through reset. - * - * @generated from field: bool nodedb_reset = 100; - */ - value: boolean; - case: "nodedbReset"; - } | { - /** - * - * Tell the node to reset into the OTA Loader - * - * @generated from field: meshtastic.AdminMessage.OTAEvent ota_request = 102; - */ - value: AdminMessage_OTAEvent; - case: "otaRequest"; - } | { - /** - * - * Parameters and sensor configuration - * - * @generated from field: meshtastic.SensorConfig sensor_config = 103; - */ - value: SensorConfig; - case: "sensorConfig"; - } | { - /** - * - * Lockdown passphrase delivery / unlock / lock-now command for hardened - * firmware builds (see MESHTASTIC_LOCKDOWN). Used to provision the - * passphrase on first boot, unlock encrypted storage on subsequent - * reboots, re-verify on already-unlocked devices to authorize a new - * client connection, or immediately re-lock the device. - * - * Replaces the earlier scheme that repurposed SecurityConfig.private_key - * to carry passphrase bytes; that hack is retired. - * - * @generated from field: meshtastic.LockdownAuth lockdown_auth = 104; - */ - value: LockdownAuth; - case: "lockdownAuth"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.AdminMessage. - * Use `create(AdminMessageSchema)` to create a new message. - */ -export const AdminMessageSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 0); - -/** - * - * Input event message to be sent to the node. - * - * @generated from message meshtastic.AdminMessage.InputEvent - */ -export type AdminMessage_InputEvent = Message<"meshtastic.AdminMessage.InputEvent"> & { - /** - * - * The input event code - * - * @generated from field: uint32 event_code = 1; - */ - eventCode: number; - - /** - * - * Keyboard character code - * - * @generated from field: uint32 kb_char = 2; - */ - kbChar: number; - - /** - * - * The touch X coordinate - * - * @generated from field: uint32 touch_x = 3; - */ - touchX: number; - - /** - * - * The touch Y coordinate - * - * @generated from field: uint32 touch_y = 4; - */ - touchY: number; -}; - -/** - * Describes the message meshtastic.AdminMessage.InputEvent. - * Use `create(AdminMessage_InputEventSchema)` to create a new message. - */ -export const AdminMessage_InputEventSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 0, 0); - -/** - * - * User is requesting an over the air update. - * Node will reboot into the OTA loader - * - * @generated from message meshtastic.AdminMessage.OTAEvent - */ -export type AdminMessage_OTAEvent = Message<"meshtastic.AdminMessage.OTAEvent"> & { - /** - * - * Tell the node to reboot into OTA mode for firmware update via BLE or WiFi (ESP32 only for now) - * - * @generated from field: meshtastic.OTAMode reboot_ota_mode = 1; - */ - rebootOtaMode: OTAMode; - - /** - * - * A 32 byte hash of the OTA firmware. - * Used to verify the integrity of the firmware before applying an update. - * - * @generated from field: bytes ota_hash = 2; - */ - otaHash: Uint8Array; -}; - -/** - * Describes the message meshtastic.AdminMessage.OTAEvent. - * Use `create(AdminMessage_OTAEventSchema)` to create a new message. - */ -export const AdminMessage_OTAEventSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 0, 1); - -/** - * - * TODO: REPLACE - * - * @generated from enum meshtastic.AdminMessage.ConfigType - */ -export enum AdminMessage_ConfigType { - /** - * - * TODO: REPLACE - * - * @generated from enum value: DEVICE_CONFIG = 0; - */ - DEVICE_CONFIG = 0, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: POSITION_CONFIG = 1; - */ - POSITION_CONFIG = 1, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: POWER_CONFIG = 2; - */ - POWER_CONFIG = 2, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: NETWORK_CONFIG = 3; - */ - NETWORK_CONFIG = 3, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: DISPLAY_CONFIG = 4; - */ - DISPLAY_CONFIG = 4, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: LORA_CONFIG = 5; - */ - LORA_CONFIG = 5, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: BLUETOOTH_CONFIG = 6; - */ - BLUETOOTH_CONFIG = 6, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: SECURITY_CONFIG = 7; - */ - SECURITY_CONFIG = 7, - - /** - * - * Session key config - * - * @generated from enum value: SESSIONKEY_CONFIG = 8; - */ - SESSIONKEY_CONFIG = 8, - - /** - * - * device-ui config - * - * @generated from enum value: DEVICEUI_CONFIG = 9; - */ - DEVICEUI_CONFIG = 9, -} - -/** - * Describes the enum meshtastic.AdminMessage.ConfigType. - */ -export const AdminMessage_ConfigTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_admin, 0, 0); - -/** - * - * TODO: REPLACE - * - * @generated from enum meshtastic.AdminMessage.ModuleConfigType - */ -export enum AdminMessage_ModuleConfigType { - /** - * - * TODO: REPLACE - * - * @generated from enum value: MQTT_CONFIG = 0; - */ - MQTT_CONFIG = 0, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: SERIAL_CONFIG = 1; - */ - SERIAL_CONFIG = 1, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: EXTNOTIF_CONFIG = 2; - */ - EXTNOTIF_CONFIG = 2, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: STOREFORWARD_CONFIG = 3; - */ - STOREFORWARD_CONFIG = 3, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: RANGETEST_CONFIG = 4; - */ - RANGETEST_CONFIG = 4, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: TELEMETRY_CONFIG = 5; - */ - TELEMETRY_CONFIG = 5, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: CANNEDMSG_CONFIG = 6; - */ - CANNEDMSG_CONFIG = 6, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: AUDIO_CONFIG = 7; - */ - AUDIO_CONFIG = 7, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: REMOTEHARDWARE_CONFIG = 8; - */ - REMOTEHARDWARE_CONFIG = 8, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: NEIGHBORINFO_CONFIG = 9; - */ - NEIGHBORINFO_CONFIG = 9, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: AMBIENTLIGHTING_CONFIG = 10; - */ - AMBIENTLIGHTING_CONFIG = 10, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: DETECTIONSENSOR_CONFIG = 11; - */ - DETECTIONSENSOR_CONFIG = 11, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: PAXCOUNTER_CONFIG = 12; - */ - PAXCOUNTER_CONFIG = 12, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: STATUSMESSAGE_CONFIG = 13; - */ - STATUSMESSAGE_CONFIG = 13, - - /** - * - * Traffic management module config - * - * @generated from enum value: TRAFFICMANAGEMENT_CONFIG = 14; - */ - TRAFFICMANAGEMENT_CONFIG = 14, - - /** - * - * TAK module config - * - * @generated from enum value: TAK_CONFIG = 15; - */ - TAK_CONFIG = 15, -} - -/** - * Describes the enum meshtastic.AdminMessage.ModuleConfigType. - */ -export const AdminMessage_ModuleConfigTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_admin, 0, 1); - -/** - * @generated from enum meshtastic.AdminMessage.BackupLocation - */ -export enum AdminMessage_BackupLocation { - /** - * - * Backup to the internal flash - * - * @generated from enum value: FLASH = 0; - */ - FLASH = 0, - - /** - * - * Backup to the SD card - * - * @generated from enum value: SD = 1; - */ - SD = 1, -} - -/** - * Describes the enum meshtastic.AdminMessage.BackupLocation. - */ -export const AdminMessage_BackupLocationSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_admin, 0, 2); - -/** - * - * Lockdown passphrase delivery payload. - * - * One message handles three operations distinguished by content: - * - Provision (first-time): passphrase set, lock_now=false. Firmware - * generates DEK, wraps with passphrase-derived KEK, persists. - * - Unlock: passphrase set, lock_now=false. Firmware verifies - * passphrase against stored DEK, unlocks storage, authorizes the - * connection that delivered this packet. - * - Lock now: lock_now=true, passphrase ignored. Firmware revokes - * all client auth and reboots into the locked state. - * - * Firmware decides between provision and unlock based on its own state - * (whether a DEK file already exists). Clients do not need to track - * which case applies. - * - * @generated from message meshtastic.LockdownAuth - */ -export type LockdownAuth = Message<"meshtastic.LockdownAuth"> & { - /** - * - * Passphrase bytes (1-32). Empty when lock_now is true. - * Capped to 32 to match the proto cap on related security fields. - * - * @generated from field: bytes passphrase = 1; - */ - passphrase: Uint8Array; - - /** - * - * Optional override of the boot-count token TTL granted on success. - * 0 = use firmware default (TOKEN_DEFAULT_BOOTS). - * On reboot the firmware decrements this; when it reaches 0 the - * device boots fully locked and requires a fresh passphrase. - * - * @generated from field: uint32 boots_remaining = 2; - */ - bootsRemaining: number; - - /** - * - * Optional wall-clock expiry for the unlock token, as absolute - * Unix-epoch seconds. 0 = no time limit (only the boot-count TTL - * applies). On boot, if the device RTC is set and now > this value, - * the token is treated as expired. - * - * @generated from field: uint32 valid_until_epoch = 3; - */ - validUntilEpoch: number; - - /** - * - * If true, ignore passphrase fields, immediately revoke all - * connection-level admin authorization, and reboot the device into - * the locked state. Always honoured regardless of current lock state. - * - * @generated from field: bool lock_now = 4; - */ - lockNow: boolean; - - /** - * - * Optional per-boot uptime cap on the unlocked session, in seconds. - * 0 = unlimited (token-only enforcement, suitable for unattended - * tower / infrastructure nodes). - * - * When non-zero, the firmware arms an uptime timer at unlock. On - * each expiry, while there is still boot-count budget, the firmware - * decrements the on-flash boot count in place, revokes per- - * connection admin auth (clients must re-authenticate to see - * content), re-engages the screen lock, and re-arms the timer - * without rebooting. Mesh routing keeps running across session - * boundaries; only when the boot-count budget reaches zero does - * the device hard-lock and reboot. - * - * Total exposure ceiling = ((resolved boot count) + 1) * max_session_seconds. - * The +1 accounts for the initial passphrase-unlocked session - * itself, since boots_remaining is the number of subsequent - * session rolls (each consuming one boot from the rollback ledger). - * The resolved boot count is the value the firmware writes into the - * token at unlock time: the client-supplied boots_remaining when - * non-zero, otherwise the firmware default (TOKEN_DEFAULT_BOOTS). - * Note that boots_remaining == 0 in this message means "use firmware - * default", NOT "zero boots" — a client computing the ceiling for - * display should mirror that resolution rather than multiplying the - * raw request value. - * - * The cap is persisted in the token, so it survives token-based - * auto-unlock across reboots. Explicit operator Lock Now still - * deletes the token and forces passphrase re-entry. - * - * Uses millis() (CPU uptime), not wall-clock time, so the cap is - * immune to GPS spoofing, RTC backup-battery removal, and Faraday - * cage isolation — none of those move the uptime counter. The only - * way to reset the session clock is a reboot, which costs a boot - * from the on-flash, HMAC-bound counter. - * - * @generated from field: uint32 max_session_seconds = 5; - */ - maxSessionSeconds: number; - - /** - * - * Disable lockdown mode. Requires a valid passphrase in the same - * message (the device must prove the operator owns it before - * reverting at-rest encryption). On success the firmware decrypts - * every stored config / channel / nodedb file back to plaintext, - * removes the wrapped DEK, unlock token, monotonic-counter, and - * backoff files, and reboots out of lockdown. - * - * This is the inverse of the provision/unlock path: it is how the - * client app's "lockdown mode" toggle returns a device to normal - * operation. - * - * NOT reversed by this operation: APPROTECT. Once the debug port - * lockout has been burned (on silicon where it is effective) it is - * permanent — disabling lockdown decrypts your data and removes the - * access gates, but the SWD/JTAG port stays locked for the life of - * the device (recoverable only via a full chip erase over a debug - * probe, which destroys all data). Clients should make this - * irreversibility clear at the moment lockdown is first enabled. - * - * When true the passphrase field is still required; boots_remaining, - * valid_until_epoch, max_session_seconds, and lock_now are ignored. - * - * @generated from field: bool disable = 6; - */ - disable: boolean; -}; - -/** - * Describes the message meshtastic.LockdownAuth. - * Use `create(LockdownAuthSchema)` to create a new message. - */ -export const LockdownAuthSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 1); - -/** - * - * Parameters for setting up Meshtastic for ameteur radio usage - * - * @generated from message meshtastic.HamParameters - */ -export type HamParameters = Message<"meshtastic.HamParameters"> & { - /** - * - * Amateur radio call sign, eg. KD2ABC - * - * @generated from field: string call_sign = 1; - */ - callSign: string; - - /** - * - * Transmit power in dBm at the LoRA transceiver, not including any amplification - * - * @generated from field: int32 tx_power = 2; - */ - txPower: number; - - /** - * - * The selected frequency of LoRA operation - * Please respect your local laws, regulations, and band plans. - * Ensure your radio is capable of operating of the selected frequency before setting this. - * - * @generated from field: float frequency = 3; - */ - frequency: number; - - /** - * - * Optional short name of user - * - * @generated from field: string short_name = 4; - */ - shortName: string; - - /** - * - * Optional long name of user - * Appended to callsign - * - * @generated from field: string long_name = 5; - */ - longName: string; -}; - -/** - * Describes the message meshtastic.HamParameters. - * Use `create(HamParametersSchema)` to create a new message. - */ -export const HamParametersSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 2); - -/** - * - * Response envelope for node_remote_hardware_pins - * - * @generated from message meshtastic.NodeRemoteHardwarePinsResponse - */ -export type NodeRemoteHardwarePinsResponse = Message<"meshtastic.NodeRemoteHardwarePinsResponse"> & { - /** - * - * Nodes and their respective remote hardware GPIO pins - * - * @generated from field: repeated meshtastic.NodeRemoteHardwarePin node_remote_hardware_pins = 1; - */ - nodeRemoteHardwarePins: NodeRemoteHardwarePin[]; -}; - -/** - * Describes the message meshtastic.NodeRemoteHardwarePinsResponse. - * Use `create(NodeRemoteHardwarePinsResponseSchema)` to create a new message. - */ -export const NodeRemoteHardwarePinsResponseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 3); - -/** - * @generated from message meshtastic.SharedContact - */ -export type SharedContact = Message<"meshtastic.SharedContact"> & { - /** - * - * The node number of the contact - * - * @generated from field: uint32 node_num = 1; - */ - nodeNum: number; - - /** - * - * The User of the contact - * - * @generated from field: meshtastic.User user = 2; - */ - user?: User | undefined; - - /** - * - * Add this contact to the blocked / ignored list - * - * @generated from field: bool should_ignore = 3; - */ - shouldIgnore: boolean; - - /** - * - * Set the IS_KEY_MANUALLY_VERIFIED bit - * - * @generated from field: bool manually_verified = 4; - */ - manuallyVerified: boolean; -}; - -/** - * Describes the message meshtastic.SharedContact. - * Use `create(SharedContactSchema)` to create a new message. - */ -export const SharedContactSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 4); - -/** - * - * This message is used by a client to initiate or complete a key verification - * - * @generated from message meshtastic.KeyVerificationAdmin - */ -export type KeyVerificationAdmin = Message<"meshtastic.KeyVerificationAdmin"> & { - /** - * @generated from field: meshtastic.KeyVerificationAdmin.MessageType message_type = 1; - */ - messageType: KeyVerificationAdmin_MessageType; - - /** - * - * The nodenum we're requesting - * - * @generated from field: uint32 remote_nodenum = 2; - */ - remoteNodenum: number; - - /** - * - * The nonce is used to track the connection - * - * @generated from field: uint64 nonce = 3; - */ - nonce: bigint; - - /** - * - * The 4 digit code generated by the remote node, and communicated outside the mesh - * - * @generated from field: optional uint32 security_number = 4; - */ - securityNumber?: number | undefined; -}; - -/** - * Describes the message meshtastic.KeyVerificationAdmin. - * Use `create(KeyVerificationAdminSchema)` to create a new message. - */ -export const KeyVerificationAdminSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 5); - -/** - * - * Three stages of this request. - * - * @generated from enum meshtastic.KeyVerificationAdmin.MessageType - */ -export enum KeyVerificationAdmin_MessageType { - /** - * - * This is the first stage, where a client initiates - * - * @generated from enum value: INITIATE_VERIFICATION = 0; - */ - INITIATE_VERIFICATION = 0, - - /** - * - * After the nonce has been returned over the mesh, the client prompts for the security number - * And uses this message to provide it to the node. - * - * @generated from enum value: PROVIDE_SECURITY_NUMBER = 1; - */ - PROVIDE_SECURITY_NUMBER = 1, - - /** - * - * Once the user has compared the verification message, this message notifies the node. - * - * @generated from enum value: DO_VERIFY = 2; - */ - DO_VERIFY = 2, - - /** - * - * This is the cancel path, can be taken at any point - * - * @generated from enum value: DO_NOT_VERIFY = 3; - */ - DO_NOT_VERIFY = 3, -} - -/** - * Describes the enum meshtastic.KeyVerificationAdmin.MessageType. - */ -export const KeyVerificationAdmin_MessageTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_admin, 5, 0); - -/** - * @generated from message meshtastic.SensorConfig - */ -export type SensorConfig = Message<"meshtastic.SensorConfig"> & { - /** - * - * SCD4X CO2 Sensor configuration - * - * @generated from field: meshtastic.SCD4X_config scd4x_config = 1; - */ - scd4xConfig?: SCD4X_config | undefined; - - /** - * - * SEN5X PM Sensor configuration - * - * @generated from field: meshtastic.SEN5X_config sen5x_config = 2; - */ - sen5xConfig?: SEN5X_config | undefined; - - /** - * - * SCD30 CO2 Sensor configuration - * - * @generated from field: meshtastic.SCD30_config scd30_config = 3; - */ - scd30Config?: SCD30_config | undefined; - - /** - * - * SHTXX temperature and relative humidity sensor configuration - * - * @generated from field: meshtastic.SHTXX_config shtxx_config = 4; - */ - shtxxConfig?: SHTXX_config | undefined; -}; - -/** - * Describes the message meshtastic.SensorConfig. - * Use `create(SensorConfigSchema)` to create a new message. - */ -export const SensorConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 6); - -/** - * @generated from message meshtastic.SCD4X_config - */ -export type SCD4X_config = Message<"meshtastic.SCD4X_config"> & { - /** - * - * Set Automatic self-calibration enabled - * - * @generated from field: optional bool set_asc = 1; - */ - setAsc?: boolean | undefined; - - /** - * - * Recalibration target CO2 concentration in ppm (FRC or ASC) - * - * @generated from field: optional uint32 set_target_co2_conc = 2; - */ - setTargetCo2Conc?: number | undefined; - - /** - * - * Reference temperature in degC - * - * @generated from field: optional float set_temperature = 3; - */ - setTemperature?: number | undefined; - - /** - * - * Altitude of sensor in meters above sea level. 0 - 3000m (overrides ambient pressure) - * - * @generated from field: optional uint32 set_altitude = 4; - */ - setAltitude?: number | undefined; - - /** - * - * Sensor ambient pressure in Pa. 70000 - 120000 Pa (overrides altitude) - * - * @generated from field: optional uint32 set_ambient_pressure = 5; - */ - setAmbientPressure?: number | undefined; - - /** - * - * Perform a factory reset of the sensor - * - * @generated from field: optional bool factory_reset = 6; - */ - factoryReset?: boolean | undefined; - - /** - * - * Power mode for sensor (true for low power, false for normal) - * - * @generated from field: optional bool set_power_mode = 7; - */ - setPowerMode?: boolean | undefined; -}; - -/** - * Describes the message meshtastic.SCD4X_config. - * Use `create(SCD4X_configSchema)` to create a new message. - */ -export const SCD4X_configSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 7); - -/** - * @generated from message meshtastic.SEN5X_config - */ -export type SEN5X_config = Message<"meshtastic.SEN5X_config"> & { - /** - * - * Reference temperature in degC - * - * @generated from field: optional float set_temperature = 1; - */ - setTemperature?: number | undefined; - - /** - * - * One-shot mode (true for low power - one-shot mode, false for normal - continuous mode) - * - * @generated from field: optional bool set_one_shot_mode = 2; - */ - setOneShotMode?: boolean | undefined; -}; - -/** - * Describes the message meshtastic.SEN5X_config. - * Use `create(SEN5X_configSchema)` to create a new message. - */ -export const SEN5X_configSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 8); - -/** - * @generated from message meshtastic.SCD30_config - */ -export type SCD30_config = Message<"meshtastic.SCD30_config"> & { - /** - * - * Set Automatic self-calibration enabled - * - * @generated from field: optional bool set_asc = 1; - */ - setAsc?: boolean | undefined; - - /** - * - * Recalibration target CO2 concentration in ppm (FRC or ASC) - * - * @generated from field: optional uint32 set_target_co2_conc = 2; - */ - setTargetCo2Conc?: number | undefined; - - /** - * - * Reference temperature in degC - * - * @generated from field: optional float set_temperature = 3; - */ - setTemperature?: number | undefined; - - /** - * - * Altitude of sensor in meters above sea level. 0 - 3000m (overrides ambient pressure) - * - * @generated from field: optional uint32 set_altitude = 4; - */ - setAltitude?: number | undefined; - - /** - * - * Power mode for sensor (true for low power, false for normal) - * - * @generated from field: optional uint32 set_measurement_interval = 5; - */ - setMeasurementInterval?: number | undefined; - - /** - * - * Perform a factory reset of the sensor - * - * @generated from field: optional bool soft_reset = 6; - */ - softReset?: boolean | undefined; -}; - -/** - * Describes the message meshtastic.SCD30_config. - * Use `create(SCD30_configSchema)` to create a new message. - */ -export const SCD30_configSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 9); - -/** - * @generated from message meshtastic.SHTXX_config - */ -export type SHTXX_config = Message<"meshtastic.SHTXX_config"> & { - /** - * - * Accuracy mode (0 = low, 1 = medium, 2 = high) - * - * @generated from field: optional uint32 set_accuracy = 1; - */ - setAccuracy?: number | undefined; -}; - -/** - * Describes the message meshtastic.SHTXX_config. - * Use `create(SHTXX_configSchema)` to create a new message. - */ -export const SHTXX_configSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_admin, 10); - -/** - * - * Firmware update mode for OTA updates - * - * @generated from enum meshtastic.OTAMode - */ -export enum OTAMode { - /** - * - * Do not reboot into OTA mode - * - * @generated from enum value: NO_REBOOT_OTA = 0; - */ - NO_REBOOT_OTA = 0, - - /** - * - * Reboot into OTA mode for BLE firmware update - * - * @generated from enum value: OTA_BLE = 1; - */ - OTA_BLE = 1, - - /** - * - * Reboot into OTA mode for WiFi firmware update - * - * @generated from enum value: OTA_WIFI = 2; - */ - OTA_WIFI = 2, -} - -/** - * Describes the enum meshtastic.OTAMode. - */ -export const OTAModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_admin, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/apponly_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/apponly_pb.ts deleted file mode 100644 index 2b3aee646..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/apponly_pb.ts +++ /dev/null @@ -1,53 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/apponly.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; -import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; -import type { ChannelSettings } from "./channel_pb"; -import { file_meshtastic_channel } from "./channel_pb"; -import type { Config_LoRaConfig } from "./config_pb"; -import { file_meshtastic_config } from "./config_pb"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/apponly.proto. - */ -export const file_meshtastic_apponly: GenFile = /*@__PURE__*/ - fileDesc("ChhtZXNodGFzdGljL2FwcG9ubHkucHJvdG8SCm1lc2h0YXN0aWMibwoKQ2hhbm5lbFNldBItCghzZXR0aW5ncxgBIAMoCzIbLm1lc2h0YXN0aWMuQ2hhbm5lbFNldHRpbmdzEjIKC2xvcmFfY29uZmlnGAIgASgLMh0ubWVzaHRhc3RpYy5Db25maWcuTG9SYUNvbmZpZ0JjChRvcmcubWVzaHRhc3RpYy5wcm90b0INQXBwT25seVByb3Rvc1oiZ2l0aHViLmNvbS9tZXNodGFzdGljL2dvL2dlbmVyYXRlZKoCFE1lc2h0YXN0aWMuUHJvdG9idWZzugIAYgZwcm90bzM", [file_meshtastic_channel, file_meshtastic_config]); - -/** - * - * This is the most compact possible representation for a set of channels. - * It includes only one PRIMARY channel (which must be first) and - * any SECONDARY channels. - * No DISABLED channels are included. - * This abstraction is used only on the the 'app side' of the world (ie python, javascript and android etc) to show a group of Channels as a (long) URL - * - * @generated from message meshtastic.ChannelSet - */ -export type ChannelSet = Message<"meshtastic.ChannelSet"> & { - /** - * - * Channel list with settings - * - * @generated from field: repeated meshtastic.ChannelSettings settings = 1; - */ - settings: ChannelSettings[]; - - /** - * - * LoRa config - * - * @generated from field: meshtastic.Config.LoRaConfig lora_config = 2; - */ - loraConfig?: Config_LoRaConfig | undefined; -}; - -/** - * Describes the message meshtastic.ChannelSet. - * Use `create(ChannelSetSchema)` to create a new message. - */ -export const ChannelSetSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_apponly, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/atak_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/atak_pb.ts deleted file mode 100644 index b27b15b11..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/atak_pb.ts +++ /dev/null @@ -1,4216 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/atak.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -// trunk-ignore(buf-lint/PACKAGE_DIRECTORY_MATCH) - -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/atak.proto. - */ -export const file_meshtastic_atak: GenFile = /*@__PURE__*/ - fileDesc("ChVtZXNodGFzdGljL2F0YWsucHJvdG8SCm1lc2h0YXN0aWMi+AEKCVRBS1BhY2tldBIVCg1pc19jb21wcmVzc2VkGAEgASgIEiQKB2NvbnRhY3QYAiABKAsyEy5tZXNodGFzdGljLkNvbnRhY3QSIAoFZ3JvdXAYAyABKAsyES5tZXNodGFzdGljLkdyb3VwEiIKBnN0YXR1cxgEIAEoCzISLm1lc2h0YXN0aWMuU3RhdHVzEh4KA3BsaRgFIAEoCzIPLm1lc2h0YXN0aWMuUExJSAASIwoEY2hhdBgGIAEoCzITLm1lc2h0YXN0aWMuR2VvQ2hhdEgAEhAKBmRldGFpbBgHIAEoDEgAQhEKD3BheWxvYWRfdmFyaWFudCL0AgoHR2VvQ2hhdBIPCgdtZXNzYWdlGAEgASgJEg8KAnRvGAIgASgJSACIAQESGAoLdG9fY2FsbHNpZ24YAyABKAlIAYgBARIXCg9yZWNlaXB0X2Zvcl91aWQYBCABKAkSNQoMcmVjZWlwdF90eXBlGAUgASgOMh8ubWVzaHRhc3RpYy5HZW9DaGF0LlJlY2VpcHRUeXBlEhEKBGxhbmcYBiABKAlIAogBARIUCgdyb29tX2lkGAcgASgJSAOIAQESHQoQdm9pY2VfcHJvZmlsZV9pZBgIIAEoCUgEiAEBIlQKC1JlY2VpcHRUeXBlEhQKEFJlY2VpcHRUeXBlX05vbmUQABIZChVSZWNlaXB0VHlwZV9EZWxpdmVyZWQQARIUChBSZWNlaXB0VHlwZV9SZWFkEAJCBQoDX3RvQg4KDF90b19jYWxsc2lnbkIHCgVfbGFuZ0IKCghfcm9vbV9pZEITChFfdm9pY2VfcHJvZmlsZV9pZCJNCgVHcm91cBIkCgRyb2xlGAEgASgOMhYubWVzaHRhc3RpYy5NZW1iZXJSb2xlEh4KBHRlYW0YAiABKA4yEC5tZXNodGFzdGljLlRlYW0iGQoGU3RhdHVzEg8KB2JhdHRlcnkYASABKA0iNAoHQ29udGFjdBIQCghjYWxsc2lnbhgBIAEoCRIXCg9kZXZpY2VfY2FsbHNpZ24YAiABKAkiXwoDUExJEhIKCmxhdGl0dWRlX2kYASABKA8SEwoLbG9uZ2l0dWRlX2kYAiABKA8SEAoIYWx0aXR1ZGUYAyABKAUSDQoFc3BlZWQYBCABKA0SDgoGY291cnNlGAUgASgNIrABCg1BaXJjcmFmdFRyYWNrEgwKBGljYW8YASABKAkSFAoMcmVnaXN0cmF0aW9uGAIgASgJEg4KBmZsaWdodBgDIAEoCRIVCg1haXJjcmFmdF90eXBlGAQgASgJEg4KBnNxdWF3axgFIAEoDRIQCghjYXRlZ29yeRgGIAEoCRIQCghyc3NpX3gxMBgHIAEoERILCgNncHMYCCABKAgSEwoLY290X2hvc3RfaWQYCSABKAkiNwoLQ290R2VvUG9pbnQSEwoLbGF0X2RlbHRhX2kYASABKBESEwoLbG9uX2RlbHRhX2kYAiABKBEi3AYKCkRyYXduU2hhcGUSKQoEa2luZBgBIAEoDjIbLm1lc2h0YXN0aWMuRHJhd25TaGFwZS5LaW5kEi8KBXN0eWxlGAIgASgOMiAubWVzaHRhc3RpYy5EcmF3blNoYXBlLlN0eWxlTW9kZRIQCghtYWpvcl9jbRgDIAEoDRIQCghtaW5vcl9jbRgEIAEoDRIRCglhbmdsZV9kZWcYBSABKA0SJgoMc3Ryb2tlX2NvbG9yGAYgASgOMhAubWVzaHRhc3RpYy5UZWFtEhMKC3N0cm9rZV9hcmdiGAcgASgHEhkKEXN0cm9rZV93ZWlnaHRfeDEwGAggASgNEiQKCmZpbGxfY29sb3IYCSABKA4yEC5tZXNodGFzdGljLlRlYW0SEQoJZmlsbF9hcmdiGAogASgHEhEKCWxhYmVsc19vbhgLIAEoCBIZChF2ZXJ0ZXhfbGF0X2RlbHRhcxgSIAMoERIZChF2ZXJ0ZXhfbG9uX2RlbHRhcxgTIAMoERIRCgl0cnVuY2F0ZWQYDSABKAgSHAoUYnVsbHNleWVfZGlzdGFuY2VfZG0YDiABKA0SHAoUYnVsbHNleWVfYmVhcmluZ19yZWYYDyABKA0SFgoOYnVsbHNleWVfZmxhZ3MYECABKA0SGAoQYnVsbHNleWVfdWlkX3JlZhgRIAEoCSLiAQoES2luZBIUChBLaW5kX1Vuc3BlY2lmaWVkEAASDwoLS2luZF9DaXJjbGUQARISCg5LaW5kX1JlY3RhbmdsZRACEhEKDUtpbmRfRnJlZWZvcm0QAxIVChFLaW5kX1RlbGVzdHJhdGlvbhAEEhAKDEtpbmRfUG9seWdvbhAFEhYKEktpbmRfUmFuZ2luZ0NpcmNsZRAGEhEKDUtpbmRfQnVsbHNleWUQBxIQCgxLaW5kX0VsbGlwc2UQCBISCg5LaW5kX1ZlaGljbGUyRBAJEhIKDktpbmRfVmVoaWNsZTNEEAoidQoJU3R5bGVNb2RlEhkKFVN0eWxlTW9kZV9VbnNwZWNpZmllZBAAEhgKFFN0eWxlTW9kZV9TdHJva2VPbmx5EAESFgoSU3R5bGVNb2RlX0ZpbGxPbmx5EAISGwoXU3R5bGVNb2RlX1N0cm9rZUFuZEZpbGwQA0oECAwQDSLlAwoGTWFya2VyEiUKBGtpbmQYASABKA4yFy5tZXNodGFzdGljLk1hcmtlci5LaW5kEh8KBWNvbG9yGAIgASgOMhAubWVzaHRhc3RpYy5UZWFtEhIKCmNvbG9yX2FyZ2IYAyABKAcSEQoJcmVhZGluZXNzGAQgASgIEhIKCnBhcmVudF91aWQYBSABKAkSEwoLcGFyZW50X3R5cGUYBiABKAkSFwoPcGFyZW50X2NhbGxzaWduGAcgASgJEg8KB2ljb25zZXQYCCABKAkimAIKBEtpbmQSFAoQS2luZF9VbnNwZWNpZmllZBAAEg0KCUtpbmRfU3BvdBABEhEKDUtpbmRfV2F5cG9pbnQQAhITCg9LaW5kX0NoZWNrcG9pbnQQAxIVChFLaW5kX1NlbGZQb3NpdGlvbhAEEhMKD0tpbmRfU3ltYm9sMjUyNRAFEhAKDEtpbmRfU3BvdE1hcBAGEhMKD0tpbmRfQ3VzdG9tSWNvbhAHEhIKDktpbmRfR29Ub1BvaW50EAgSFQoRS2luZF9Jbml0aWFsUG9pbnQQCRIVChFLaW5kX0NvbnRhY3RQb2ludBAKEhgKFEtpbmRfT2JzZXJ2YXRpb25Qb3N0EAsSFAoQS2luZF9JbWFnZU1hcmtlchAMIs4BCg9SYW5nZUFuZEJlYXJpbmcSJwoGYW5jaG9yGAEgASgLMhcubWVzaHRhc3RpYy5Db3RHZW9Qb2ludBISCgphbmNob3JfdWlkGAIgASgJEhAKCHJhbmdlX2NtGAMgASgNEhQKDGJlYXJpbmdfY2RlZxgEIAEoDRImCgxzdHJva2VfY29sb3IYBSABKA4yEC5tZXNodGFzdGljLlRlYW0SEwoLc3Ryb2tlX2FyZ2IYBiABKAcSGQoRc3Ryb2tlX3dlaWdodF94MTAYByABKA0ihAQKBVJvdXRlEigKBm1ldGhvZBgBIAEoDjIYLm1lc2h0YXN0aWMuUm91dGUuTWV0aG9kEi4KCWRpcmVjdGlvbhgCIAEoDjIbLm1lc2h0YXN0aWMuUm91dGUuRGlyZWN0aW9uEg4KBnByZWZpeBgDIAEoCRIZChFzdHJva2Vfd2VpZ2h0X3gxMBgEIAEoDRIlCgVsaW5rcxgFIAMoCzIWLm1lc2h0YXN0aWMuUm91dGUuTGluaxIRCgl0cnVuY2F0ZWQYBiABKAgaYAoETGluaxImCgVwb2ludBgBIAEoCzIXLm1lc2h0YXN0aWMuQ290R2VvUG9pbnQSCwoDdWlkGAIgASgJEhAKCGNhbGxzaWduGAMgASgJEhEKCWxpbmtfdHlwZRgEIAEoDSKHAQoGTWV0aG9kEhYKEk1ldGhvZF9VbnNwZWNpZmllZBAAEhIKDk1ldGhvZF9Ecml2aW5nEAESEgoOTWV0aG9kX1dhbGtpbmcQAhIRCg1NZXRob2RfRmx5aW5nEAMSEwoPTWV0aG9kX1N3aW1taW5nEAQSFQoRTWV0aG9kX1dhdGVyY3JhZnQQBSJQCglEaXJlY3Rpb24SGQoVRGlyZWN0aW9uX1Vuc3BlY2lmaWVkEAASEwoPRGlyZWN0aW9uX0luZmlsEAESEwoPRGlyZWN0aW9uX0V4ZmlsEAIi1goKDUNhc2V2YWNSZXBvcnQSOAoKcHJlY2VkZW5jZRgBIAEoDjIkLm1lc2h0YXN0aWMuQ2FzZXZhY1JlcG9ydC5QcmVjZWRlbmNlEhcKD2VxdWlwbWVudF9mbGFncxgCIAEoDRIXCg9saXR0ZXJfcGF0aWVudHMYAyABKA0SGwoTYW1idWxhdG9yeV9wYXRpZW50cxgEIAEoDRI0CghzZWN1cml0eRgFIAEoDjIiLm1lc2h0YXN0aWMuQ2FzZXZhY1JlcG9ydC5TZWN1cml0eRI5CgtobHpfbWFya2luZxgGIAEoDjIkLm1lc2h0YXN0aWMuQ2FzZXZhY1JlcG9ydC5IbHpNYXJraW5nEhMKC3pvbmVfbWFya2VyGAcgASgJEhMKC3VzX21pbGl0YXJ5GAggASgNEhMKC3VzX2NpdmlsaWFuGAkgASgNEhcKD25vbl91c19taWxpdGFyeRgKIAEoDRIXCg9ub25fdXNfY2l2aWxpYW4YCyABKA0SCwoDZXB3GAwgASgNEg0KBWNoaWxkGA0gASgNEhUKDXRlcnJhaW5fZmxhZ3MYDiABKA0SEQoJZnJlcXVlbmN5GA8gASgJEg0KBXRpdGxlGBAgASgJEhcKD21lZGxpbmVfcmVtYXJrcxgRIAEoCRIUCgx1cmdlbnRfY291bnQYEiABKA0SHQoVdXJnZW50X3N1cmdpY2FsX2NvdW50GBMgASgNEhYKDnByaW9yaXR5X2NvdW50GBQgASgNEhUKDXJvdXRpbmVfY291bnQYFSABKA0SGQoRY29udmVuaWVuY2VfY291bnQYFiABKA0SGAoQZXF1aXBtZW50X2RldGFpbBgXIAEoCRIcChR6b25lX3Byb3RlY3RlZF9jb29yZBgYIAEoCRIZChF0ZXJyYWluX3Nsb3BlX2RpchgZIAEoCRIcChR0ZXJyYWluX290aGVyX2RldGFpbBgaIAEoCRIRCgltYXJrZWRfYnkYGyABKAkSEQoJb2JzdGFjbGVzGBwgASgJEhYKDndpbmRzX2FyZV9mcm9tGB0gASgJEhIKCmZyaWVuZGxpZXMYHiABKAkSDQoFZW5lbXkYHyABKAkSEwoLaGx6X3JlbWFya3MYICABKAkSJQoFem1pc3QYISADKAsyFi5tZXNodGFzdGljLlpNaXN0RW50cnkiqwEKClByZWNlZGVuY2USGgoWUHJlY2VkZW5jZV9VbnNwZWNpZmllZBAAEhUKEVByZWNlZGVuY2VfVXJnZW50EAESHQoZUHJlY2VkZW5jZV9VcmdlbnRTdXJnaWNhbBACEhcKE1ByZWNlZGVuY2VfUHJpb3JpdHkQAxIWChJQcmVjZWRlbmNlX1JvdXRpbmUQBBIaChZQcmVjZWRlbmNlX0NvbnZlbmllbmNlEAUimwEKCkhsek1hcmtpbmcSGgoWSGx6TWFya2luZ19VbnNwZWNpZmllZBAAEhUKEUhsek1hcmtpbmdfUGFuZWxzEAESGQoVSGx6TWFya2luZ19QeXJvU2lnbmFsEAISFAoQSGx6TWFya2luZ19TbW9rZRADEhMKD0hsek1hcmtpbmdfTm9uZRAEEhQKEEhsek1hcmtpbmdfT3RoZXIQBSKSAQoIU2VjdXJpdHkSGAoUU2VjdXJpdHlfVW5zcGVjaWZpZWQQABIUChBTZWN1cml0eV9Ob0VuZW15EAESGgoWU2VjdXJpdHlfUG9zc2libGVFbmVteRACEhgKFFNlY3VyaXR5X0VuZW15SW5BcmVhEAMSIAocU2VjdXJpdHlfRW5lbXlJbkFybWVkQ29udGFjdBAEIlIKClpNaXN0RW50cnkSDQoFdGl0bGUYASABKAkSCQoBehgCIAEoCRIJCgFtGAMgASgJEgkKAWkYBCABKAkSCQoBcxgFIAEoCRIJCgF0GAYgASgJIo0CCg5FbWVyZ2VuY3lBbGVydBItCgR0eXBlGAEgASgOMh8ubWVzaHRhc3RpYy5FbWVyZ2VuY3lBbGVydC5UeXBlEhUKDWF1dGhvcmluZ191aWQYAiABKAkSHAoUY2FuY2VsX3JlZmVyZW5jZV91aWQYAyABKAkilgEKBFR5cGUSFAoQVHlwZV9VbnNwZWNpZmllZBAAEhEKDVR5cGVfQWxlcnQ5MTEQARIUChBUeXBlX1JpbmdUaGVCZWxsEAISEgoOVHlwZV9JbkNvbnRhY3QQAxIZChVUeXBlX0dlb0ZlbmNlQnJlYWNoZWQQBBIPCgtUeXBlX0N1c3RvbRAFEg8KC1R5cGVfQ2FuY2VsEAYixgMKC1Rhc2tSZXF1ZXN0EhEKCXRhc2tfdHlwZRgBIAEoCRISCgp0YXJnZXRfdWlkGAIgASgJEhQKDGFzc2lnbmVlX3VpZBgDIAEoCRIyCghwcmlvcml0eRgEIAEoDjIgLm1lc2h0YXN0aWMuVGFza1JlcXVlc3QuUHJpb3JpdHkSLgoGc3RhdHVzGAUgASgOMh4ubWVzaHRhc3RpYy5UYXNrUmVxdWVzdC5TdGF0dXMSDAoEbm90ZRgGIAEoCSJ1CghQcmlvcml0eRIYChRQcmlvcml0eV9VbnNwZWNpZmllZBAAEhAKDFByaW9yaXR5X0xvdxABEhMKD1ByaW9yaXR5X05vcm1hbBACEhEKDVByaW9yaXR5X0hpZ2gQAxIVChFQcmlvcml0eV9Dcml0aWNhbBAEIpABCgZTdGF0dXMSFgoSU3RhdHVzX1Vuc3BlY2lmaWVkEAASEgoOU3RhdHVzX1BlbmRpbmcQARIXChNTdGF0dXNfQWNrbm93bGVkZ2VkEAISFQoRU3RhdHVzX0luUHJvZ3Jlc3MQAxIUChBTdGF0dXNfQ29tcGxldGVkEAQSFAoQU3RhdHVzX0NhbmNlbGxlZBAFImAKDlRBS0Vudmlyb25tZW50EhkKEXRlbXBlcmF0dXJlX2NfeDEwGAEgASgREhoKEndpbmRfZGlyZWN0aW9uX2RlZxgCIAEoDRIXCg93aW5kX3NwZWVkX2NtX3MYAyABKA0ijQMKCVNlbnNvckZvdhIuCgR0eXBlGAEgASgOMiAubWVzaHRhc3RpYy5TZW5zb3JGb3YuU2Vuc29yVHlwZRITCgthemltdXRoX2RlZxgCIAEoDRIUCgdyYW5nZV9tGAMgASgNSACIAQESGgoSZm92X2hvcml6b250YWxfZGVnGAQgASgNEhgKEGZvdl92ZXJ0aWNhbF9kZWcYBSABKA0SFQoNZWxldmF0aW9uX2RlZxgGIAEoERIQCghyb2xsX2RlZxgHIAEoERINCgVtb2RlbBgIIAEoCSKqAQoKU2Vuc29yVHlwZRIaChZTZW5zb3JUeXBlX1Vuc3BlY2lmaWVkEAASFQoRU2Vuc29yVHlwZV9DYW1lcmEQARIWChJTZW5zb3JUeXBlX1RoZXJtYWwQAhIUChBTZW5zb3JUeXBlX0xhc2VyEAMSEgoOU2Vuc29yVHlwZV9OdmcQBBIRCg1TZW5zb3JUeXBlX1JmEAUSFAoQU2Vuc29yVHlwZV9PdGhlchAGQgoKCF9yYW5nZV9tIlUKDlRha1RhbGtNZXNzYWdlEgwKBHRleHQYASABKAkSEwoLY2hhdHJvb21faWQYAiABKAkSDAoEbGFuZxgDIAEoCRISCgpmcm9tX3ZvaWNlGAQgASgIImgKD1Rha1RhbGtSb29tRGF0YRIbCg9zZW5kZXJfY2FsbHNpZ24YASABKAlCAhgBEg8KB3Jvb21faWQYAiABKAkSEQoJcm9vbV9uYW1lGAMgASgJEhQKDHBhcnRpY2lwYW50cxgEIAMoCSIeCgVNYXJ0aRIVCg1kZXN0X2NhbGxzaWduGAEgAygJIpkKCgtUQUtQYWNrZXRWMhIoCgtjb3RfdHlwZV9pZBgBIAEoDjITLm1lc2h0YXN0aWMuQ290VHlwZRIfCgNob3cYAiABKA4yEi5tZXNodGFzdGljLkNvdEhvdxIQCghjYWxsc2lnbhgDIAEoCRIeCgR0ZWFtGAQgASgOMhAubWVzaHRhc3RpYy5UZWFtEiQKBHJvbGUYBSABKA4yFi5tZXNodGFzdGljLk1lbWJlclJvbGUSEgoKbGF0aXR1ZGVfaRgGIAEoDxITCgtsb25naXR1ZGVfaRgHIAEoDxIQCghhbHRpdHVkZRgIIAEoERINCgVzcGVlZBgJIAEoDRIOCgZjb3Vyc2UYCiABKA0SDwoHYmF0dGVyeRgLIAEoDRIrCgdnZW9fc3JjGAwgASgOMhoubWVzaHRhc3RpYy5HZW9Qb2ludFNvdXJjZRIrCgdhbHRfc3JjGA0gASgOMhoubWVzaHRhc3RpYy5HZW9Qb2ludFNvdXJjZRILCgN1aWQYDiABKAkSFwoPZGV2aWNlX2NhbGxzaWduGA8gASgJEhUKDXN0YWxlX3NlY29uZHMYECABKA0SEwoLdGFrX3ZlcnNpb24YESABKAkSEgoKdGFrX2RldmljZRgSIAEoCRIUCgx0YWtfcGxhdGZvcm0YEyABKAkSDgoGdGFrX29zGBQgASgJEhAKCGVuZHBvaW50GBUgASgJEg0KBXBob25lGBYgASgJEhQKDGNvdF90eXBlX3N0chgXIAEoCRIPCgdyZW1hcmtzGBggASgJEjQKC2Vudmlyb25tZW50GBkgASgLMhoubWVzaHRhc3RpYy5UQUtFbnZpcm9ubWVudEgBiAEBEi4KCnNlbnNvcl9mb3YYGiABKAsyFS5tZXNodGFzdGljLlNlbnNvckZvdkgCiAEBEiUKBW1hcnRpGB0gASgLMhEubWVzaHRhc3RpYy5NYXJ0aUgDiAEBEiMKBGNoYXQYHyABKAsyEy5tZXNodGFzdGljLkdlb0NoYXRIABItCghhaXJjcmFmdBggIAEoCzIZLm1lc2h0YXN0aWMuQWlyY3JhZnRUcmFja0gAEhQKCnJhd19kZXRhaWwYISABKAxIABInCgVzaGFwZRgiIAEoCzIWLm1lc2h0YXN0aWMuRHJhd25TaGFwZUgAEiQKBm1hcmtlchgjIAEoCzISLm1lc2h0YXN0aWMuTWFya2VySAASKgoDcmFiGCQgASgLMhsubWVzaHRhc3RpYy5SYW5nZUFuZEJlYXJpbmdIABIiCgVyb3V0ZRglIAEoCzIRLm1lc2h0YXN0aWMuUm91dGVIABIsCgdjYXNldmFjGCYgASgLMhkubWVzaHRhc3RpYy5DYXNldmFjUmVwb3J0SAASLwoJZW1lcmdlbmN5GCcgASgLMhoubWVzaHRhc3RpYy5FbWVyZ2VuY3lBbGVydEgAEicKBHRhc2sYKCABKAsyFy5tZXNodGFzdGljLlRhc2tSZXF1ZXN0SAASLQoHdGFrdGFsaxgpIAEoCzIaLm1lc2h0YXN0aWMuVGFrVGFsa01lc3NhZ2VIABIzCgx0YWt0YWxrX3Jvb20YKiABKAsyGy5tZXNodGFzdGljLlRha1RhbGtSb29tRGF0YUgAQhEKD3BheWxvYWRfdmFyaWFudEIOCgxfZW52aXJvbm1lbnRCDQoLX3NlbnNvcl9mb3ZCCAoGX21hcnRpSgQIGxAcSgQIHBAdSgQIHhAfKsABCgRUZWFtEhQKEFVuc3BlY2lmZWRfQ29sb3IQABIJCgVXaGl0ZRABEgoKBlllbGxvdxACEgoKBk9yYW5nZRADEgsKB01hZ2VudGEQBBIHCgNSZWQQBRIKCgZNYXJvb24QBhIKCgZQdXJwbGUQBxINCglEYXJrX0JsdWUQCBIICgRCbHVlEAkSCAoEQ3lhbhAKEggKBFRlYWwQCxIJCgVHcmVlbhAMEg4KCkRhcmtfR3JlZW4QDRIJCgVCcm93bhAOKn8KCk1lbWJlclJvbGUSDgoKVW5zcGVjaWZlZBAAEg4KClRlYW1NZW1iZXIQARIMCghUZWFtTGVhZBACEgYKAkhREAMSCgoGU25pcGVyEAQSCQoFTWVkaWMQBRITCg9Gb3J3YXJkT2JzZXJ2ZXIQBhIHCgNSVE8QBxIGCgJLORAIKpYBCgZDb3RIb3cSFgoSQ290SG93X1Vuc3BlY2lmaWVkEAASDgoKQ290SG93X2hfZRABEg4KCkNvdEhvd19tX2cQAhIUChBDb3RIb3dfaF9nX2lfZ19vEAMSDgoKQ290SG93X21fchAEEg4KCkNvdEhvd19tX2YQBRIOCgpDb3RIb3dfbV9wEAYSDgoKQ290SG93X21fcxAHKoMXCgdDb3RUeXBlEhEKDUNvdFR5cGVfT3RoZXIQABIVChFDb3RUeXBlX2FfZl9HX1VfQxABEhcKE0NvdFR5cGVfYV9mX0dfVV9DX0kQAhIVChFDb3RUeXBlX2Ffbl9BX0NfRhADEhUKEUNvdFR5cGVfYV9uX0FfQ19IEAQSEwoPQ290VHlwZV9hX25fQV9DEAUSFQoRQ290VHlwZV9hX2ZfQV9NX0gQBhITCg9Db3RUeXBlX2FfZl9BX00QBxIXChNDb3RUeXBlX2FfZl9BX01fRl9GEAgSFwoTQ290VHlwZV9hX2ZfQV9NX0hfQRAJEhkKFUNvdFR5cGVfYV9mX0FfTV9IX1VfTRAKEhcKE0NvdFR5cGVfYV9oX0FfTV9GX0YQCxIXChNDb3RUeXBlX2FfaF9BX01fSF9BEAwSEwoPQ290VHlwZV9hX3VfQV9DEA0SEwoPQ290VHlwZV90X3hfZF9kEA4SFwoTQ290VHlwZV9hX2ZfR19FX1NfRRAPEhcKE0NvdFR5cGVfYV9mX0dfRV9WX0MQEBIRCg1Db3RUeXBlX2FfZl9TEBESFQoRQ290VHlwZV9hX2ZfQV9NX0YQEhIZChVDb3RUeXBlX2FfZl9BX01fRl9DX0gQExIZChVDb3RUeXBlX2FfZl9BX01fRl9VX0wQFBIXChNDb3RUeXBlX2FfZl9BX01fRl9MEBUSFwoTQ290VHlwZV9hX2ZfQV9NX0ZfUBAWEhUKEUNvdFR5cGVfYV9mX0FfQ19IEBcSFwoTQ290VHlwZV9hX25fQV9NX0ZfURAYEhEKDUNvdFR5cGVfYl90X2YQGRIVChFDb3RUeXBlX2Jfcl9mX2hfYxAaEhUKEUNvdFR5cGVfYl9hX29fcGFuEBsSFQoRQ290VHlwZV9iX2Ffb19vcG4QHBIVChFDb3RUeXBlX2JfYV9vX2NhbhAdEhUKEUNvdFR5cGVfYl9hX29fdGJsEB4SEQoNQ290VHlwZV9iX2FfZxAfEhEKDUNvdFR5cGVfYV9mX0cQIBITCg9Db3RUeXBlX2FfZl9HX1UQIRIRCg1Db3RUeXBlX2FfaF9HECISEQoNQ290VHlwZV9hX3VfRxAjEhEKDUNvdFR5cGVfYV9uX0cQJBIRCg1Db3RUeXBlX2JfbV9yECUSEwoPQ290VHlwZV9iX21fcF93ECYSFwoTQ290VHlwZV9iX21fcF9zX3BfaRAnEhEKDUNvdFR5cGVfdV9kX2YQKBIRCg1Db3RUeXBlX3VfZF9yECkSEwoPQ290VHlwZV91X2RfY19jECoSEgoOQ290VHlwZV91X3JiX2EQKxIRCg1Db3RUeXBlX2FfaF9BECwSEQoNQ290VHlwZV9hX3VfQRAtEhcKE0NvdFR5cGVfYV9mX0FfTV9IX1EQLhIVChFDb3RUeXBlX2FfZl9BX0NfRhAvEhMKD0NvdFR5cGVfYV9mX0FfQxAwEhUKEUNvdFR5cGVfYV9mX0FfQ19MEDESEQoNQ290VHlwZV9hX2ZfQRAyEhcKE0NvdFR5cGVfYV9mX0FfTV9IX0MQMxIXChNDb3RUeXBlX2Ffbl9BX01fRl9GEDQSFQoRQ290VHlwZV9hX3VfQV9DX0YQNRIbChdDb3RUeXBlX2FfZl9HX1VfQ19GX1RfQRA2EhkKFUNvdFR5cGVfYV9mX0dfVV9DX1ZfUxA3EhkKFUNvdFR5cGVfYV9mX0dfVV9DX1JfWBA4EhkKFUNvdFR5cGVfYV9mX0dfVV9DX0lfWhA5EhsKF0NvdFR5cGVfYV9mX0dfVV9DX0VfQ19XEDoSGQoVQ290VHlwZV9hX2ZfR19VX0NfSV9MEDsSGQoVQ290VHlwZV9hX2ZfR19VX0NfUl9PEDwSGQoVQ290VHlwZV9hX2ZfR19VX0NfUl9WED0SFQoRQ290VHlwZV9hX2ZfR19VX0gQPhIbChdDb3RUeXBlX2FfZl9HX1VfVV9NX1NfRRA/EhkKFUNvdFR5cGVfYV9mX0dfVV9TX01fQxBAEhUKEUNvdFR5cGVfYV9mX0dfRV9TEEESEwoPQ290VHlwZV9hX2ZfR19FEEISGQoVQ290VHlwZV9hX2ZfR19FX1ZfQ19VEEMSGgoWQ290VHlwZV9hX2ZfR19FX1ZfQ19wcxBEEhUKEUNvdFR5cGVfYV91X0dfRV9WEEUSFwoTQ290VHlwZV9hX2ZfU19OX05fUhBGEhMKD0NvdFR5cGVfYV9mX0ZfQhBHEhkKFUNvdFR5cGVfYl9tX3Bfc19wX2xvYxBIEhEKDUNvdFR5cGVfYl9pX3YQSRITCg9Db3RUeXBlX2JfZl90X3IQShITCg9Db3RUeXBlX2JfZl90X2EQSxITCg9Db3RUeXBlX3VfZF9mX20QTBIRCg1Db3RUeXBlX3VfZF9wEE0SFQoRQ290VHlwZV9iX21fcF9zX20QThITCg9Db3RUeXBlX2JfbV9wX2MQTxIVChFDb3RUeXBlX3Vfcl9iX2NfYxBQEhoKFkNvdFR5cGVfdV9yX2JfYnVsbHNleWUQURIXChNDb3RUeXBlX2FfZl9HX0VfVl9BEFISEQoNQ290VHlwZV9hX25fQRBTEhcKE0NvdFR5cGVfYV91X0dfVV9DX0YQVBIXChNDb3RUeXBlX2Ffbl9HX1VfQ19GEFUSFwoTQ290VHlwZV9hX2hfR19VX0NfRhBWEhcKE0NvdFR5cGVfYV9mX0dfVV9DX0YQVxITCg9Db3RUeXBlX2FfdV9HX0kQWBITCg9Db3RUeXBlX2Ffbl9HX0kQWRITCg9Db3RUeXBlX2FfaF9HX0kQWhITCg9Db3RUeXBlX2FfZl9HX0kQWxIXChNDb3RUeXBlX2FfdV9HX0VfWF9NEFwSFwoTQ290VHlwZV9hX25fR19FX1hfTRBdEhcKE0NvdFR5cGVfYV9oX0dfRV9YX00QXhIXChNDb3RUeXBlX2FfZl9HX0VfWF9NEF8SEQoNQ290VHlwZV9hX3VfUxBgEhEKDUNvdFR5cGVfYV9uX1MQYRIRCg1Db3RUeXBlX2FfaF9TEGISGQoVQ290VHlwZV9hX3VfR19VX0NfSV9kEGMSGQoVQ290VHlwZV9hX25fR19VX0NfSV9kEGQSGQoVQ290VHlwZV9hX2hfR19VX0NfSV9kEGUSGQoVQ290VHlwZV9hX2ZfR19VX0NfSV9kEGYSGQoVQ290VHlwZV9hX3VfR19FX1ZfQV9UEGcSGQoVQ290VHlwZV9hX25fR19FX1ZfQV9UEGgSGQoVQ290VHlwZV9hX2hfR19FX1ZfQV9UEGkSGQoVQ290VHlwZV9hX2ZfR19FX1ZfQV9UEGoSFwoTQ290VHlwZV9hX3VfR19VX0NfSRBrEhcKE0NvdFR5cGVfYV9uX0dfVV9DX0kQbBIXChNDb3RUeXBlX2FfaF9HX1VfQ19JEG0SFQoRQ290VHlwZV9hX25fR19FX1YQbhIVChFDb3RUeXBlX2FfaF9HX0VfVhBvEhUKEUNvdFR5cGVfYV9mX0dfRV9WEHASGAoUQ290VHlwZV9iX21fcF93X0dPVE8QcRIWChJDb3RUeXBlX2JfbV9wX2NfaXAQchIWChJDb3RUeXBlX2JfbV9wX2NfY3AQcxIYChRDb3RUeXBlX2JfbV9wX3NfcF9vcBB0EhEKDUNvdFR5cGVfdV9kX3YQdRITCg9Db3RUeXBlX3VfZF92X20QdhITCg9Db3RUeXBlX3VfZF9jX2UQdxITCg9Db3RUeXBlX2JfaV94X2kQeBITCg9Db3RUeXBlX2JfdF9mX2QQeRITCg9Db3RUeXBlX2JfdF9mX3IQehITCg9Db3RUeXBlX2JfYV9vX2MQexIPCgtDb3RUeXBlX3RfcxB8EhEKDUNvdFR5cGVfbV90X3QQfRINCglDb3RUeXBlX3kQfip9Cg5HZW9Qb2ludFNvdXJjZRIeChpHZW9Qb2ludFNvdXJjZV9VbnNwZWNpZmllZBAAEhYKEkdlb1BvaW50U291cmNlX0dQUxABEhcKE0dlb1BvaW50U291cmNlX1VTRVIQAhIaChZHZW9Qb2ludFNvdXJjZV9ORVRXT1JLEANCYAoUb3JnLm1lc2h0YXN0aWMucHJvdG9CCkFUQUtQcm90b3NaImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAGIGcHJvdG8z"); - -/** - * - * Packets for the official ATAK Plugin - * - * @generated from message meshtastic.TAKPacket - */ -export type TAKPacket = Message<"meshtastic.TAKPacket"> & { - /** - * - * Are the payloads strings compressed for LoRA transport? - * - * @generated from field: bool is_compressed = 1; - */ - isCompressed: boolean; - - /** - * - * The contact / callsign for ATAK user - * - * @generated from field: meshtastic.Contact contact = 2; - */ - contact?: Contact | undefined; - - /** - * - * The group for ATAK user - * - * @generated from field: meshtastic.Group group = 3; - */ - group?: Group | undefined; - - /** - * - * The status of the ATAK EUD - * - * @generated from field: meshtastic.Status status = 4; - */ - status?: Status | undefined; - - /** - * - * The payload of the packet - * - * @generated from oneof meshtastic.TAKPacket.payload_variant - */ - payloadVariant: { - /** - * - * TAK position report - * - * @generated from field: meshtastic.PLI pli = 5; - */ - value: PLI; - case: "pli"; - } | { - /** - * - * ATAK GeoChat message - * - * @generated from field: meshtastic.GeoChat chat = 6; - */ - value: GeoChat; - case: "chat"; - } | { - /** - * - * Generic CoT detail XML - * May be compressed / truncated by the sender (EUD) - * - * @generated from field: bytes detail = 7; - */ - value: Uint8Array; - case: "detail"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.TAKPacket. - * Use `create(TAKPacketSchema)` to create a new message. - */ -export const TAKPacketSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 0); - -/** - * - * ATAK GeoChat message - * - * @generated from message meshtastic.GeoChat - */ -export type GeoChat = Message<"meshtastic.GeoChat"> & { - /** - * - * The text message. Empty for receipts. - * - * @generated from field: string message = 1; - */ - message: string; - - /** - * - * Uid recipient of the message - * - * @generated from field: optional string to = 2; - */ - to?: string | undefined; - - /** - * - * Callsign of the recipient for the message - * - * @generated from field: optional string to_callsign = 3; - */ - toCallsign?: string | undefined; - - /** - * - * UID of the chat message this event is acknowledging. Empty for a - * normal chat message; set for delivered / read receipts. Paired with - * receipt_type so receivers can match the ack back to the original - * outbound GeoChat by its event uid. - * - * @generated from field: string receipt_for_uid = 4; - */ - receiptForUid: string; - - /** - * - * Receipt kind discriminator. See ReceiptType doc. Default ReceiptType_None - * means this is a regular chat message, not a receipt. - * - * @generated from field: meshtastic.GeoChat.ReceiptType receipt_type = 5; - */ - receiptType: GeoChat_ReceiptType; - - /** - * - * BCP-47-ish language tag or human-readable name (e.g. "en", "English") - * that the originator's TAKTALK plugin recorded for the message. - * - * @generated from field: optional string lang = 6; - */ - lang?: string | undefined; - - /** - * - * TAKTALK chatroom UUID (e.g. "30b2755c-c547-44ef-a0cc-cdbd8a15616f") that - * the receiver's TAKTALK plugin uses to thread the message under the - * right room. Resolved to a friendly name via TakTalkRoomData broadcasts. - * - * @generated from field: optional string room_id = 7; - */ - roomId?: string | undefined; - - /** - * - * TAKTALK voice profile pointer. Often empty in practice (the empty - * marker `` still signals TAKTALK origination), so - * receivers should treat empty-but-present as the equivalent of the - * marker rather than a missing field. - * - * @generated from field: optional string voice_profile_id = 8; - */ - voiceProfileId?: string | undefined; -}; - -/** - * Describes the message meshtastic.GeoChat. - * Use `create(GeoChatSchema)` to create a new message. - */ -export const GeoChatSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 1); - -/** - * - * Receipt discriminator. Set alongside cot_type_id = b-t-f-d (delivered) - * or b-t-f-r (read). ReceiptType_None is the default for a normal chat - * message (cot_type_id = b-t-f). - * - * Receivers can detect a receipt by checking receipt_type != ReceiptType_None - * without re-parsing the envelope cot_type_id. - * - * @generated from enum meshtastic.GeoChat.ReceiptType - */ -export enum GeoChat_ReceiptType { - /** - * normal chat message - * - * @generated from enum value: ReceiptType_None = 0; - */ - ReceiptType_None = 0, - - /** - * b-t-f-d delivered receipt - * - * @generated from enum value: ReceiptType_Delivered = 1; - */ - ReceiptType_Delivered = 1, - - /** - * b-t-f-r read receipt - * - * @generated from enum value: ReceiptType_Read = 2; - */ - ReceiptType_Read = 2, -} - -/** - * Describes the enum meshtastic.GeoChat.ReceiptType. - */ -export const GeoChat_ReceiptTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 1, 0); - -/** - * - * ATAK Group - * <__group role='Team Member' name='Cyan'/> - * - * @generated from message meshtastic.Group - */ -export type Group = Message<"meshtastic.Group"> & { - /** - * - * Role of the group member - * - * @generated from field: meshtastic.MemberRole role = 1; - */ - role: MemberRole; - - /** - * - * Team (color) - * Default Cyan - * - * @generated from field: meshtastic.Team team = 2; - */ - team: Team; -}; - -/** - * Describes the message meshtastic.Group. - * Use `create(GroupSchema)` to create a new message. - */ -export const GroupSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 2); - -/** - * - * ATAK EUD Status - * - * - * @generated from message meshtastic.Status - */ -export type Status = Message<"meshtastic.Status"> & { - /** - * - * Battery level - * - * @generated from field: uint32 battery = 1; - */ - battery: number; -}; - -/** - * Describes the message meshtastic.Status. - * Use `create(StatusSchema)` to create a new message. - */ -export const StatusSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 3); - -/** - * - * ATAK Contact - * - * - * @generated from message meshtastic.Contact - */ -export type Contact = Message<"meshtastic.Contact"> & { - /** - * - * Callsign - * - * @generated from field: string callsign = 1; - */ - callsign: string; - - /** - * - * Device callsign - * - * - * IP address of endpoint in integer form (0.0.0.0 default) - * - * @generated from field: string device_callsign = 2; - */ - deviceCallsign: string; -}; - -/** - * Describes the message meshtastic.Contact. - * Use `create(ContactSchema)` to create a new message. - */ -export const ContactSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 4); - -/** - * - * Position Location Information from ATAK - * - * @generated from message meshtastic.PLI - */ -export type PLI = Message<"meshtastic.PLI"> & { - /** - * - * The new preferred location encoding, multiply by 1e-7 to get degrees - * in floating point - * - * @generated from field: sfixed32 latitude_i = 1; - */ - latitudeI: number; - - /** - * - * The new preferred location encoding, multiply by 1e-7 to get degrees - * in floating point - * - * @generated from field: sfixed32 longitude_i = 2; - */ - longitudeI: number; - - /** - * - * Altitude (ATAK prefers HAE) - * - * @generated from field: int32 altitude = 3; - */ - altitude: number; - - /** - * - * Speed - * - * @generated from field: uint32 speed = 4; - */ - speed: number; - - /** - * - * Course in degrees - * - * @generated from field: uint32 course = 5; - */ - course: number; -}; - -/** - * Describes the message meshtastic.PLI. - * Use `create(PLISchema)` to create a new message. - */ -export const PLISchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 5); - -/** - * - * Aircraft track information from ADS-B or military air tracking. - * Covers the majority of observed real-world CoT traffic. - * - * @generated from message meshtastic.AircraftTrack - */ -export type AircraftTrack = Message<"meshtastic.AircraftTrack"> & { - /** - * - * ICAO hex identifier (e.g. "AD237C") - * - * @generated from field: string icao = 1; - */ - icao: string; - - /** - * - * Aircraft registration (e.g. "N946AK") - * - * @generated from field: string registration = 2; - */ - registration: string; - - /** - * - * Flight number/callsign (e.g. "ASA864") - * - * @generated from field: string flight = 3; - */ - flight: string; - - /** - * - * ICAO aircraft type designator (e.g. "B39M") - * - * @generated from field: string aircraft_type = 4; - */ - aircraftType: string; - - /** - * - * Transponder squawk code (0-7777 octal) - * - * @generated from field: uint32 squawk = 5; - */ - squawk: number; - - /** - * - * ADS-B emitter category (e.g. "A3") - * - * @generated from field: string category = 6; - */ - category: string; - - /** - * - * Received signal strength * 10 (e.g. -194 for -19.4 dBm) - * - * @generated from field: sint32 rssi_x10 = 7; - */ - rssiX10: number; - - /** - * - * Whether receiver has GPS fix - * - * @generated from field: bool gps = 8; - */ - gps: boolean; - - /** - * - * CoT host ID for source attribution - * - * @generated from field: string cot_host_id = 9; - */ - cotHostId: string; -}; - -/** - * Describes the message meshtastic.AircraftTrack. - * Use `create(AircraftTrackSchema)` to create a new message. - */ -export const AircraftTrackSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 6); - -/** - * - * Compact geographic vertex used by repeated vertex lists in TAK geometry - * payloads. Named with a `Cot` prefix to avoid a namespace collision with - * `meshtastic.GeoPoint` in `device_ui.proto`, which is an unrelated zoom/ - * latitude/longitude type used by the on-device map UI. - * - * Encoded as a signed DELTA from TAKPacketV2.latitude_i / longitude_i (the - * enclosing event's anchor point). The absolute coordinate is recovered by - * the receiver as `event.latitude_i + vertex.lat_delta_i` (and likewise for - * longitude). - * - * Why deltas: a 32-vertex telestration with vertices clustered within a few - * hundred meters of the anchor has per-vertex deltas in the ±10^4 range. - * Under sint32+zigzag those encode as 2 bytes each (tag+varint), versus the - * 4 bytes that sfixed32 would always require. At 32 vertices that is ~128 - * bytes of savings — the difference between fitting under the LoRa MTU or - * not. Absolute coordinates (values ~10^9) would cost sint32 varint 5 bytes - * per field, which is why TAKPacketV2's top-level latitude_i / longitude_i - * stay sfixed32 — only small values win with sint32. - * - * @generated from message meshtastic.CotGeoPoint - */ -export type CotGeoPoint = Message<"meshtastic.CotGeoPoint"> & { - /** - * - * Latitude delta from TAKPacketV2.latitude_i, in 1e-7 degree units. - * Add to the enclosing event's latitude_i to recover the absolute latitude. - * - * @generated from field: sint32 lat_delta_i = 1; - */ - latDeltaI: number; - - /** - * - * Longitude delta from TAKPacketV2.longitude_i, in 1e-7 degree units. - * - * @generated from field: sint32 lon_delta_i = 2; - */ - lonDeltaI: number; -}; - -/** - * Describes the message meshtastic.CotGeoPoint. - * Use `create(CotGeoPointSchema)` to create a new message. - */ -export const CotGeoPointSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 7); - -/** - * - * User-drawn tactical graphic: circle, rectangle, polygon, polyline, freehand - * telestration, ranging circle, or bullseye. - * - * Covers CoT types u-d-c-c, u-d-r, u-d-f, u-d-f-m, u-d-p, u-r-b-c-c, - * u-r-b-bullseye. The shape's anchor position is carried on - * TAKPacketV2.latitude_i/longitude_i; polyline/polygon vertices are in the - * `vertices` repeated field as `CotGeoPoint` deltas from that anchor. - * - * Colors use the Team enum as a 14-color palette (see color encoding below) - * with a fixed32 exact-ARGB fallback for custom user-picked colors that - * don't map to a palette entry. - * - * @generated from message meshtastic.DrawnShape - */ -export type DrawnShape = Message<"meshtastic.DrawnShape"> & { - /** - * - * Shape kind (circle, rectangle, freeform, etc.) - * - * @generated from field: meshtastic.DrawnShape.Kind kind = 1; - */ - kind: DrawnShape_Kind; - - /** - * - * Explicit stroke/fill/both discriminator. See StyleMode doc. - * - * @generated from field: meshtastic.DrawnShape.StyleMode style = 2; - */ - style: DrawnShape_StyleMode; - - /** - * - * Ellipse major radius in centimeters. 0 for non-ellipse kinds. - * - * @generated from field: uint32 major_cm = 3; - */ - majorCm: number; - - /** - * - * Ellipse minor radius in centimeters. 0 for non-ellipse kinds. - * - * @generated from field: uint32 minor_cm = 4; - */ - minorCm: number; - - /** - * - * Ellipse rotation angle in degrees. Valid values are 0..360 inclusive; - * 0 and 360 are equivalent rotations. In proto3, an unset uint32 reads - * as 0, so senders should emit 0 when the angle is unspecified. - * - * @generated from field: uint32 angle_deg = 5; - */ - angleDeg: number; - - /** - * - * Stroke color as a named palette entry from the Team enum. If - * Unspecifed_Color, the exact ARGB is carried in stroke_argb. - * Valid only when style is StrokeOnly or StrokeAndFill. - * - * @generated from field: meshtastic.Team stroke_color = 6; - */ - strokeColor: Team; - - /** - * - * Stroke color as an exact 32-bit ARGB bit pattern. Always populated - * on the wire; readers MUST use this value when stroke_color == - * Unspecifed_Color and MAY use it to recover the exact original bytes - * even when a palette entry is set. - * - * @generated from field: fixed32 stroke_argb = 7; - */ - strokeArgb: number; - - /** - * - * Stroke weight in tenths of a unit (e.g. 30 = 3.0). Typical ATAK - * range 10..60. - * - * @generated from field: uint32 stroke_weight_x10 = 8; - */ - strokeWeightX10: number; - - /** - * - * Fill color as a named palette entry. See stroke_color docs. - * Valid only when style is FillOnly or StrokeAndFill. - * - * @generated from field: meshtastic.Team fill_color = 9; - */ - fillColor: Team; - - /** - * - * Fill color exact ARGB fallback. See stroke_argb docs. - * - * @generated from field: fixed32 fill_argb = 10; - */ - fillArgb: number; - - /** - * - * Whether labels are rendered on this shape. - * - * @generated from field: bool labels_on = 11; - */ - labelsOn: boolean; - - /** - * @generated from field: repeated sint32 vertex_lat_deltas = 18; - */ - vertexLatDeltas: number[]; - - /** - * @generated from field: repeated sint32 vertex_lon_deltas = 19; - */ - vertexLonDeltas: number[]; - - /** - * - * True if the sender truncated the vertex columns to fit the pool. - * - * --- Bullseye-only fields. All ignored unless kind == Kind_Bullseye. --- - * - * @generated from field: bool truncated = 13; - */ - truncated: boolean; - - /** - * - * Bullseye distance in meters * 10 (e.g. 3285 = 328.5 m). 0 = unset. - * - * @generated from field: uint32 bullseye_distance_dm = 14; - */ - bullseyeDistanceDm: number; - - /** - * - * Bullseye bearing reference: 0 unset, 1 Magnetic, 2 True, 3 Grid. - * - * @generated from field: uint32 bullseye_bearing_ref = 15; - */ - bullseyeBearingRef: number; - - /** - * - * Bullseye attribute bit flags: - * bit 0: rangeRingVisible - * bit 1: hasRangeRings - * bit 2: edgeToCenter - * bit 3: mils - * - * @generated from field: uint32 bullseye_flags = 16; - */ - bullseyeFlags: number; - - /** - * - * Bullseye reference UID (anchor marker). Empty = anchor is self. - * - * @generated from field: string bullseye_uid_ref = 17; - */ - bullseyeUidRef: string; -}; - -/** - * Describes the message meshtastic.DrawnShape. - * Use `create(DrawnShapeSchema)` to create a new message. - */ -export const DrawnShapeSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 8); - -/** - * - * Shape kind discriminator. Drives receiver rendering and also controls - * which optional fields below are meaningful. - * - * @generated from enum meshtastic.DrawnShape.Kind - */ -export enum DrawnShape_Kind { - /** - * - * Unspecified (do not use on the wire) - * - * @generated from enum value: Kind_Unspecified = 0; - */ - Unspecified = 0, - - /** - * - * u-d-c-c: User-drawn circle (uses major/minor/angle, anchor = event point) - * - * @generated from enum value: Kind_Circle = 1; - */ - Circle = 1, - - /** - * - * u-d-r: User-drawn rectangle (uses vertices = 4 corners) - * - * @generated from enum value: Kind_Rectangle = 2; - */ - Rectangle = 2, - - /** - * - * u-d-f: User-drawn polyline (uses vertices, not closed) - * - * @generated from enum value: Kind_Freeform = 3; - */ - Freeform = 3, - - /** - * - * u-d-f-m: Freehand telestration / annotation (uses vertices, may be truncated) - * - * @generated from enum value: Kind_Telestration = 4; - */ - Telestration = 4, - - /** - * - * u-d-p: Closed polygon (uses vertices, implicitly closed) - * - * @generated from enum value: Kind_Polygon = 5; - */ - Polygon = 5, - - /** - * - * u-r-b-c-c: Ranging circle (major/minor/angle, stroke + optional fill) - * - * @generated from enum value: Kind_RangingCircle = 6; - */ - RangingCircle = 6, - - /** - * - * u-r-b-bullseye: Bullseye ring with range rings and bearing reference - * - * @generated from enum value: Kind_Bullseye = 7; - */ - Bullseye = 7, - - /** - * - * u-d-c-e: Ellipse with distinct major/minor axes (same storage as - * Kind_Circle — uses major_cm/minor_cm/angle_deg — but receivers - * render it as a non-circular ellipse rather than a round circle). - * - * @generated from enum value: Kind_Ellipse = 8; - */ - Ellipse = 8, - - /** - * - * u-d-v: 2D vehicle outline drawn on the map. Vertices carry the - * outline polygon; receivers draw it as a filled polygon. - * - * @generated from enum value: Kind_Vehicle2D = 9; - */ - Vehicle2D = 9, - - /** - * - * u-d-v-m: 3D vehicle model reference. Same vertex polygon as - * Kind_Vehicle2D; receivers that support 3D rendering extrude it. - * - * @generated from enum value: Kind_Vehicle3D = 10; - */ - Vehicle3D = 10, -} - -/** - * Describes the enum meshtastic.DrawnShape.Kind. - */ -export const DrawnShape_KindSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 8, 0); - -/** - * - * Explicit stroke/fill/both discriminator. - * - * ATAK's source XML distinguishes "stroke-only polyline" from "closed shape - * with both stroke and fill" by the presence of the element. - * Both states can hash to all-zero color fields, so we carry the signal - * explicitly. Parser sets this from (sawStrokeColor, sawFillColor) at the - * end of parse; builder uses it to decide which of / - * to emit in the reconstructed XML. - * - * @generated from enum meshtastic.DrawnShape.StyleMode - */ -export enum DrawnShape_StyleMode { - /** - * - * Unspecified — receiver infers from which color fields are non-zero. - * - * @generated from enum value: StyleMode_Unspecified = 0; - */ - StyleMode_Unspecified = 0, - - /** - * - * Stroke only. No in the source XML. Used for polylines, - * ranging lines, bullseye rings. - * - * @generated from enum value: StyleMode_StrokeOnly = 1; - */ - StyleMode_StrokeOnly = 1, - - /** - * - * Fill only. No in the source XML. Rare but valid in - * ATAK (solid region with no outline). - * - * @generated from enum value: StyleMode_FillOnly = 2; - */ - StyleMode_FillOnly = 2, - - /** - * - * Both stroke and fill present. Closed shapes: circle, rectangle, - * polygon, ranging circle. - * - * @generated from enum value: StyleMode_StrokeAndFill = 3; - */ - StyleMode_StrokeAndFill = 3, -} - -/** - * Describes the enum meshtastic.DrawnShape.StyleMode. - */ -export const DrawnShape_StyleModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 8, 1); - -/** - * - * Fixed point of interest: spot marker, waypoint, checkpoint, 2525 symbol, - * or custom icon. - * - * Covers CoT types b-m-p-s-m, b-m-p-w, b-m-p-c, b-m-p-s-p-i, b-m-p-s-p-loc, - * plus a-u-G / a-f-G / a-h-G / a-n-G with iconset paths. The marker position - * is carried on TAKPacketV2.latitude_i/longitude_i; fields below carry only - * the marker-specific metadata. - * - * @generated from message meshtastic.Marker - */ -export type Marker = Message<"meshtastic.Marker"> & { - /** - * - * Marker kind - * - * @generated from field: meshtastic.Marker.Kind kind = 1; - */ - kind: Marker_Kind; - - /** - * - * Marker color as a named palette entry. If Unspecifed_Color, the exact - * ARGB is in color_argb. - * - * @generated from field: meshtastic.Team color = 2; - */ - color: Team; - - /** - * - * Marker color exact ARGB bit pattern. Always populated on the wire. - * - * @generated from field: fixed32 color_argb = 3; - */ - colorArgb: number; - - /** - * - * Status readiness flag (ATAK ). - * - * @generated from field: bool readiness = 4; - */ - readiness: boolean; - - /** - * - * Parent link UID (ATAK ). Empty = no parent. - * For spot/waypoint markers this is typically the producing TAK user's UID. - * - * @generated from field: string parent_uid = 5; - */ - parentUid: string; - - /** - * - * Parent CoT type (e.g. "a-f-G-U-C"). Usually the parent TAK user's type. - * - * @generated from field: string parent_type = 6; - */ - parentType: string; - - /** - * - * Parent callsign (e.g. "HOPE"). - * - * @generated from field: string parent_callsign = 7; - */ - parentCallsign: string; - - /** - * - * Iconset path stored verbatim. ATAK emits three flavors: - * Kind_Symbol2525 -> "COT_MAPPING_2525B//" - * Kind_SpotMap -> "COT_MAPPING_SPOTMAP//" - * Kind_CustomIcon -> "//.png" - * Stored end-to-end without prefix stripping; the ~19 bytes saved by - * stripping well-known prefixes are not worth the builder-side bug - * surface, and the dict compresses the repetition effectively. - * - * @generated from field: string iconset = 8; - */ - iconset: string; -}; - -/** - * Describes the message meshtastic.Marker. - * Use `create(MarkerSchema)` to create a new message. - */ -export const MarkerSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 9); - -/** - * - * Marker kind. Used to pick sensible receiver defaults when the CoT type - * alone is ambiguous (e.g. a-u-G could be a 2525 symbol or a custom icon - * depending on the iconset path). - * - * @generated from enum meshtastic.Marker.Kind - */ -export enum Marker_Kind { - /** - * - * Unspecified — fall back to TAKPacketV2.cot_type_id - * - * @generated from enum value: Kind_Unspecified = 0; - */ - Unspecified = 0, - - /** - * - * b-m-p-s-m: Spot map marker - * - * @generated from enum value: Kind_Spot = 1; - */ - Spot = 1, - - /** - * - * b-m-p-w: Route waypoint - * - * @generated from enum value: Kind_Waypoint = 2; - */ - Waypoint = 2, - - /** - * - * b-m-p-c: Checkpoint - * - * @generated from enum value: Kind_Checkpoint = 3; - */ - Checkpoint = 3, - - /** - * - * b-m-p-s-p-i / b-m-p-s-p-loc: Self-position marker - * - * @generated from enum value: Kind_SelfPosition = 4; - */ - SelfPosition = 4, - - /** - * - * 2525B/C military symbol (iconsetpath = COT_MAPPING_2525B/...) - * - * @generated from enum value: Kind_Symbol2525 = 5; - */ - Symbol2525 = 5, - - /** - * - * COT_MAPPING_SPOTMAP icon (e.g. colored dot) - * - * @generated from enum value: Kind_SpotMap = 6; - */ - SpotMap = 6, - - /** - * - * Custom icon set (UUID/GroupName/filename.png) - * - * @generated from enum value: Kind_CustomIcon = 7; - */ - CustomIcon = 7, - - /** - * - * b-m-p-w-GOTO: Go To / bloodhound navigation waypoint. - * - * @generated from enum value: Kind_GoToPoint = 8; - */ - GoToPoint = 8, - - /** - * - * b-m-p-c-ip: Initial point (mission planning control point). - * - * @generated from enum value: Kind_InitialPoint = 9; - */ - InitialPoint = 9, - - /** - * - * b-m-p-c-cp: Contact point (mission planning control point). - * - * @generated from enum value: Kind_ContactPoint = 10; - */ - ContactPoint = 10, - - /** - * - * b-m-p-s-p-op: Observation post. - * - * @generated from enum value: Kind_ObservationPost = 11; - */ - ObservationPost = 11, - - /** - * - * b-i-x-i: Quick Pic geotagged image marker. iconset carries the - * image reference (local filename or remote URL); the image itself - * does not ride on the LoRa wire. - * - * @generated from enum value: Kind_ImageMarker = 12; - */ - ImageMarker = 12, -} - -/** - * Describes the enum meshtastic.Marker.Kind. - */ -export const Marker_KindSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 9, 0); - -/** - * - * Range and bearing measurement line from the event anchor to a target point. - * - * Covers CoT type u-rb-a. The anchor position is on - * TAKPacketV2.latitude_i/longitude_i; the target endpoint is carried as a - * CotGeoPoint — same delta-from-anchor encoding used by DrawnShape.vertices - * so a self-anchored RAB (common case) encodes in zero bytes. - * - * @generated from message meshtastic.RangeAndBearing - */ -export type RangeAndBearing = Message<"meshtastic.RangeAndBearing"> & { - /** - * - * Target/anchor endpoint (delta-encoded from TAKPacketV2.latitude_i/longitude_i). - * - * @generated from field: meshtastic.CotGeoPoint anchor = 1; - */ - anchor?: CotGeoPoint | undefined; - - /** - * - * Anchor UID (from ). Empty = free-standing. - * - * @generated from field: string anchor_uid = 2; - */ - anchorUid: string; - - /** - * - * Range in centimeters (value * 100). Range 0..4294 km. - * - * @generated from field: uint32 range_cm = 3; - */ - rangeCm: number; - - /** - * - * Bearing in degrees * 100 (0..36000). - * - * @generated from field: uint32 bearing_cdeg = 4; - */ - bearingCdeg: number; - - /** - * - * Stroke color as a Team palette entry. See DrawnShape.stroke_color doc. - * - * @generated from field: meshtastic.Team stroke_color = 5; - */ - strokeColor: Team; - - /** - * - * Stroke color exact ARGB fallback. - * - * @generated from field: fixed32 stroke_argb = 6; - */ - strokeArgb: number; - - /** - * - * Stroke weight * 10 (e.g. 30 = 3.0). - * - * @generated from field: uint32 stroke_weight_x10 = 7; - */ - strokeWeightX10: number; -}; - -/** - * Describes the message meshtastic.RangeAndBearing. - * Use `create(RangeAndBearingSchema)` to create a new message. - */ -export const RangeAndBearingSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 10); - -/** - * - * Named route consisting of ordered waypoints and control points. - * - * Covers CoT type b-m-r. The first waypoint's position is on - * TAKPacketV2.latitude_i/longitude_i; subsequent waypoints and checkpoints - * are in `links`. Link count is capped at 16 by the nanopb pool; senders - * MUST truncate longer routes and set `truncated = true`. - * - * @generated from message meshtastic.Route - */ -export type Route = Message<"meshtastic.Route"> & { - /** - * - * Travel method - * - * @generated from field: meshtastic.Route.Method method = 1; - */ - method: Route_Method; - - /** - * - * Direction (infil/exfil) - * - * @generated from field: meshtastic.Route.Direction direction = 2; - */ - direction: Route_Direction; - - /** - * - * Waypoint name prefix (e.g. "CP"). - * - * @generated from field: string prefix = 3; - */ - prefix: string; - - /** - * - * Stroke weight * 10 (e.g. 30 = 3.0). 0 = default. - * - * @generated from field: uint32 stroke_weight_x10 = 4; - */ - strokeWeightX10: number; - - /** - * - * Ordered list of route control points. Capped at 16. - * - * @generated from field: repeated meshtastic.Route.Link links = 5; - */ - links: Route_Link[]; - - /** - * - * True if the sender truncated `links` to fit the pool. - * - * @generated from field: bool truncated = 6; - */ - truncated: boolean; -}; - -/** - * Describes the message meshtastic.Route. - * Use `create(RouteSchema)` to create a new message. - */ -export const RouteSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 11); - -/** - * - * Route waypoint or control point. Each link corresponds to one ATAK - * entry inside the b-m-r event. - * - * @generated from message meshtastic.Route.Link - */ -export type Route_Link = Message<"meshtastic.Route.Link"> & { - /** - * - * Waypoint position (delta-encoded from TAKPacketV2.latitude_i/longitude_i). - * - * @generated from field: meshtastic.CotGeoPoint point = 1; - */ - point?: CotGeoPoint | undefined; - - /** - * - * Optional UID (empty = receiver derives). - * - * @generated from field: string uid = 2; - */ - uid: string; - - /** - * - * Optional display callsign (e.g. "CP1"). Empty for unnamed control points. - * - * @generated from field: string callsign = 3; - */ - callsign: string; - - /** - * - * Link role: 0 = waypoint (b-m-p-w), 1 = checkpoint (b-m-p-c). - * - * @generated from field: uint32 link_type = 4; - */ - linkType: number; -}; - -/** - * Describes the message meshtastic.Route.Link. - * Use `create(Route_LinkSchema)` to create a new message. - */ -export const Route_LinkSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 11, 0); - -/** - * - * Travel method for the route. - * - * @generated from enum meshtastic.Route.Method - */ -export enum Route_Method { - /** - * - * Unspecified / unknown - * - * @generated from enum value: Method_Unspecified = 0; - */ - Unspecified = 0, - - /** - * - * Driving / vehicle - * - * @generated from enum value: Method_Driving = 1; - */ - Driving = 1, - - /** - * - * Walking / foot - * - * @generated from enum value: Method_Walking = 2; - */ - Walking = 2, - - /** - * - * Flying - * - * @generated from enum value: Method_Flying = 3; - */ - Flying = 3, - - /** - * - * Swimming (individual) - * - * @generated from enum value: Method_Swimming = 4; - */ - Swimming = 4, - - /** - * - * Watercraft (boat) - * - * @generated from enum value: Method_Watercraft = 5; - */ - Watercraft = 5, -} - -/** - * Describes the enum meshtastic.Route.Method. - */ -export const Route_MethodSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 11, 0); - -/** - * - * Route direction (infil = ingress, exfil = egress). - * - * @generated from enum meshtastic.Route.Direction - */ -export enum Route_Direction { - /** - * - * Unspecified - * - * @generated from enum value: Direction_Unspecified = 0; - */ - Unspecified = 0, - - /** - * - * Infiltration (ingress) - * - * @generated from enum value: Direction_Infil = 1; - */ - Infil = 1, - - /** - * - * Exfiltration (egress) - * - * @generated from enum value: Direction_Exfil = 2; - */ - Exfil = 2, -} - -/** - * Describes the enum meshtastic.Route.Direction. - */ -export const Route_DirectionSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 11, 1); - -/** - * - * 9-line MEDEVAC request (CoT type b-r-f-h-c). - * - * Mirrors the ATAK MedLine tool's <_medevac_> detail element. Every field - * is optional (proto3 default); senders omit lines they don't have. The - * envelope (TAKPacketV2.uid, cot_type_id=b-r-f-h-c, latitude_i/longitude_i, - * altitude, callsign) carries Line 1 (location) and Line 2 (callsign). - * - * All numeric fields are tight varints so a complete 9-line request fits - * in well under 100 bytes of proto on the wire. - * - * @generated from message meshtastic.CasevacReport - */ -export type CasevacReport = Message<"meshtastic.CasevacReport"> & { - /** - * - * Line 3: precedence / urgency. - * - * @generated from field: meshtastic.CasevacReport.Precedence precedence = 1; - */ - precedence: CasevacReport_Precedence; - - /** - * - * Line 4: special equipment required, as a bitfield. - * bit 0: none - * bit 1: hoist - * bit 2: extraction equipment - * bit 3: ventilator - * bit 4: blood - * - * @generated from field: uint32 equipment_flags = 2; - */ - equipmentFlags: number; - - /** - * - * Line 5: number of litter (stretcher-bound) patients. - * - * @generated from field: uint32 litter_patients = 3; - */ - litterPatients: number; - - /** - * - * Line 5: number of ambulatory (walking-wounded) patients. - * - * @generated from field: uint32 ambulatory_patients = 4; - */ - ambulatoryPatients: number; - - /** - * - * Line 6: security situation at the PZ. - * - * @generated from field: meshtastic.CasevacReport.Security security = 5; - */ - security: CasevacReport_Security; - - /** - * - * Line 7: HLZ marking method. - * - * @generated from field: meshtastic.CasevacReport.HlzMarking hlz_marking = 6; - */ - hlzMarking: CasevacReport_HlzMarking; - - /** - * - * Line 7 supplementary: short free-text describing the zone marker - * (e.g. "Green smoke", "VS-17 panel west"). Capped tight in options. - * - * @generated from field: string zone_marker = 7; - */ - zoneMarker: string; - - /** - * --- Line 8: patient nationality counts --- - * - * @generated from field: uint32 us_military = 8; - */ - usMilitary: number; - - /** - * @generated from field: uint32 us_civilian = 9; - */ - usCivilian: number; - - /** - * @generated from field: uint32 non_us_military = 10; - */ - nonUsMilitary: number; - - /** - * @generated from field: uint32 non_us_civilian = 11; - */ - nonUsCivilian: number; - - /** - * enemy prisoner of war - * - * @generated from field: uint32 epw = 12; - */ - epw: number; - - /** - * @generated from field: uint32 child = 13; - */ - child: number; - - /** - * - * Line 9: terrain and obstacles at the PZ, as a bitfield. - * bit 0: slope - * bit 1: rough - * bit 2: loose - * bit 3: trees - * bit 4: wires - * bit 5: other - * - * @generated from field: uint32 terrain_flags = 14; - */ - terrainFlags: number; - - /** - * - * Line 2: radio frequency / callsign metadata (e.g. "38.90 Mhz" or - * "Victor 6"). Capped tight in options. - * - * @generated from field: string frequency = 15; - */ - frequency: string; - - /** - * - * Short title / MEDEVAC identifier (e.g. "EAGLE.15.181230"). Usually the - * same as the envelope callsign but ATAK sometimes carries a distinct - * ops-number here. - * - * @generated from field: string title = 16; - */ - title: string; - - /** - * - * Primary medline free-text — the single most clinically important line - * on a MEDLINE form (e.g. "2 urgent litter patients, smoke on approach"). - * MUST be preserved under MTU pressure as long as any casevac is sent. - * - * @generated from field: string medline_remarks = 17; - */ - medlineRemarks: string; - - /** - * - * Line 3 (newer ATAK format): patient counts by precedence level. - * Coexists with the enum-style `precedence` field (tag 1) — older ATAK - * emits a single enum, newer ATAK emits these counts, and both can be - * set simultaneously. Senders populate whichever style(s) the source - * XML had; receivers prefer counts when non-zero. - * - * @generated from field: uint32 urgent_count = 18; - */ - urgentCount: number; - - /** - * @generated from field: uint32 urgent_surgical_count = 19; - */ - urgentSurgicalCount: number; - - /** - * @generated from field: uint32 priority_count = 20; - */ - priorityCount: number; - - /** - * @generated from field: uint32 routine_count = 21; - */ - routineCount: number; - - /** - * @generated from field: uint32 convenience_count = 22; - */ - convenienceCount: number; - - /** - * - * Line 4 supplementary: free-text description of non-standard equipment - * (e.g. "Blood warmer"). Pairs with the `equipment_flags` bitfield. - * - * @generated from field: string equipment_detail = 23; - */ - equipmentDetail: string; - - /** - * - * Line 1 override: MGRS grid when distinct from the event anchor point - * (e.g. "34T CQ 12345 67890"). Event lat/lon/hae still carries the - * numeric location; this field preserves the exact MGRS string the - * medic entered. - * - * @generated from field: string zone_protected_coord = 24; - */ - zoneProtectedCoord: string; - - /** - * - * Line 9 supplementary: slope direction (e.g. "N", "NE", "SSW") when - * `terrain_flags` bit 0 (slope) is set. - * - * @generated from field: string terrain_slope_dir = 25; - */ - terrainSlopeDir: string; - - /** - * - * Line 9 supplementary: free-text description of "other" terrain hazards - * (e.g. "Loose debris on west edge") when `terrain_flags` bit 5 (other) - * is set. Tier-2 strippable under MTU pressure. - * - * @generated from field: string terrain_other_detail = 26; - */ - terrainOtherDetail: string; - - /** - * - * Line 7 supplementary: how the zone is being marked right now - * (e.g. "Orange smoke", "VS-17 panel"). Complements the structured - * `hlz_marking` enum with a specific human-readable description. - * - * @generated from field: string marked_by = 27; - */ - markedBy: string; - - /** - * - * Nearby obstacles on the approach (e.g. "Power lines north of HLZ"). - * - * @generated from field: string obstacles = 28; - */ - obstacles: string; - - /** - * - * Wind direction and speed (e.g. "270 at 12 kts"). - * - * @generated from field: string winds_are_from = 29; - */ - windsAreFrom: string; - - /** - * - * Friendly forces posture near the pickup zone - * (e.g. "Squad east of HLZ"). - * - * @generated from field: string friendlies = 30; - */ - friendlies: string; - - /** - * - * Known or suspected enemy positions near the pickup zone - * (e.g. "Possible enemy on south ridge"). - * - * @generated from field: string enemy = 31; - */ - enemy: string; - - /** - * - * Free-text description of the HLZ itself - * (e.g. "Primary HLZ is soccer field"). - * - * @generated from field: string hlz_remarks = 32; - */ - hlzRemarks: string; - - /** - * - * Per-patient clinical records. Each entry is one patient's ZMIST card - * (Zap number / Mechanism / Injuries / Signs / Treatment). Repeatable — - * a mass-casualty event can carry 1-6 entries in practice, limited by - * the 237 B LoRa MTU. - * - * @generated from field: repeated meshtastic.ZMistEntry zmist = 33; - */ - zmist: ZMistEntry[]; -}; - -/** - * Describes the message meshtastic.CasevacReport. - * Use `create(CasevacReportSchema)` to create a new message. - */ -export const CasevacReportSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 12); - -/** - * - * Line 3: precedence / urgency. - * - * @generated from enum meshtastic.CasevacReport.Precedence - */ -export enum CasevacReport_Precedence { - /** - * @generated from enum value: Precedence_Unspecified = 0; - */ - Unspecified = 0, - - /** - * A - immediate, life-threatening - * - * @generated from enum value: Precedence_Urgent = 1; - */ - Urgent = 1, - - /** - * B - needs surgery - * - * @generated from enum value: Precedence_UrgentSurgical = 2; - */ - UrgentSurgical = 2, - - /** - * C - within 4 hours - * - * @generated from enum value: Precedence_Priority = 3; - */ - Priority = 3, - - /** - * D - within 24 hours - * - * @generated from enum value: Precedence_Routine = 4; - */ - Routine = 4, - - /** - * E - convenience - * - * @generated from enum value: Precedence_Convenience = 5; - */ - Convenience = 5, -} - -/** - * Describes the enum meshtastic.CasevacReport.Precedence. - */ -export const CasevacReport_PrecedenceSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 12, 0); - -/** - * - * Line 7: HLZ marking method. - * - * @generated from enum meshtastic.CasevacReport.HlzMarking - */ -export enum CasevacReport_HlzMarking { - /** - * @generated from enum value: HlzMarking_Unspecified = 0; - */ - HlzMarking_Unspecified = 0, - - /** - * @generated from enum value: HlzMarking_Panels = 1; - */ - HlzMarking_Panels = 1, - - /** - * @generated from enum value: HlzMarking_PyroSignal = 2; - */ - HlzMarking_PyroSignal = 2, - - /** - * @generated from enum value: HlzMarking_Smoke = 3; - */ - HlzMarking_Smoke = 3, - - /** - * @generated from enum value: HlzMarking_None = 4; - */ - HlzMarking_None = 4, - - /** - * @generated from enum value: HlzMarking_Other = 5; - */ - HlzMarking_Other = 5, -} - -/** - * Describes the enum meshtastic.CasevacReport.HlzMarking. - */ -export const CasevacReport_HlzMarkingSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 12, 1); - -/** - * - * Line 6: security situation at the pickup zone. - * - * @generated from enum meshtastic.CasevacReport.Security - */ -export enum CasevacReport_Security { - /** - * @generated from enum value: Security_Unspecified = 0; - */ - Unspecified = 0, - - /** - * N - no enemy activity - * - * @generated from enum value: Security_NoEnemy = 1; - */ - NoEnemy = 1, - - /** - * P - possible enemy - * - * @generated from enum value: Security_PossibleEnemy = 2; - */ - PossibleEnemy = 2, - - /** - * E - enemy, approach with caution - * - * @generated from enum value: Security_EnemyInArea = 3; - */ - EnemyInArea = 3, - - /** - * X - armed escort required - * - * @generated from enum value: Security_EnemyInArmedContact = 4; - */ - EnemyInArmedContact = 4, -} - -/** - * Describes the enum meshtastic.CasevacReport.Security. - */ -export const CasevacReport_SecuritySchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 12, 2); - -/** - * - * Per-patient clinical summary record — one entry per patient in a CASEVAC. - * Maps directly to ATAK's child element inside . - * All fields are optional free-text; senders populate what they have. - * - * @generated from message meshtastic.ZMistEntry - */ -export type ZMistEntry = Message<"meshtastic.ZMistEntry"> & { - /** - * - * Patient identifier / sequence label (e.g. "ZMIST-1", "ZMIST-2"). - * - * @generated from field: string title = 1; - */ - title: string; - - /** - * - * Zap number — unique patient tracking ID (often a terse code like - * "Gunshot" or a serial). - * - * @generated from field: string z = 2; - */ - z: string; - - /** - * - * Mechanism of injury (e.g. "Penetrating trauma", "Blast injury"). - * - * @generated from field: string m = 3; - */ - m: string; - - /** - * - * Injuries observed (e.g. "Left thigh", "Concussion"). - * - * @generated from field: string i = 4; - */ - i: string; - - /** - * - * Signs / vital stats (e.g. "Stable", "Priority", "BP 110/70"). - * - * @generated from field: string s = 5; - */ - s: string; - - /** - * - * Treatment given (e.g. "Tourniquet 1810Z", "O2 administered"). - * - * @generated from field: string t = 6; - */ - t: string; -}; - -/** - * Describes the message meshtastic.ZMistEntry. - * Use `create(ZMistEntrySchema)` to create a new message. - */ -export const ZMistEntrySchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 13); - -/** - * - * Emergency alert / 911 beacon (CoT types b-a-o-tbl, b-a-o-pan, b-a-o-opn, - * b-a-o-can, b-a-o-c, b-a-g). - * - * Small, high-priority structured record. The CoT type string is still set - * on cot_type_id so receivers that ignore payload_variant can still display - * the alert from the enum alone; the typed fields let modern receivers show - * the authoring unit and handle cancel-referencing without XML parsing. - * - * @generated from message meshtastic.EmergencyAlert - */ -export type EmergencyAlert = Message<"meshtastic.EmergencyAlert"> & { - /** - * - * Alert discriminator. - * - * @generated from field: meshtastic.EmergencyAlert.Type type = 1; - */ - type: EmergencyAlert_Type; - - /** - * - * UID of the unit that raised the alert. Often the same as - * TAKPacketV2.uid but can be a parent device uid when a tracker raises - * an alert on behalf of a dismount. - * - * @generated from field: string authoring_uid = 2; - */ - authoringUid: string; - - /** - * - * For Type_Cancel: the uid of the alert being cancelled. Empty for - * non-cancel alert types. - * - * @generated from field: string cancel_reference_uid = 3; - */ - cancelReferenceUid: string; -}; - -/** - * Describes the message meshtastic.EmergencyAlert. - * Use `create(EmergencyAlertSchema)` to create a new message. - */ -export const EmergencyAlertSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 14); - -/** - * @generated from enum meshtastic.EmergencyAlert.Type - */ -export enum EmergencyAlert_Type { - /** - * @generated from enum value: Type_Unspecified = 0; - */ - Unspecified = 0, - - /** - * b-a-o-tbl - * - * @generated from enum value: Type_Alert911 = 1; - */ - Alert911 = 1, - - /** - * b-a-o-pan - * - * @generated from enum value: Type_RingTheBell = 2; - */ - RingTheBell = 2, - - /** - * b-a-o-opn - * - * @generated from enum value: Type_InContact = 3; - */ - InContact = 3, - - /** - * b-a-g - * - * @generated from enum value: Type_GeoFenceBreached = 4; - */ - GeoFenceBreached = 4, - - /** - * b-a-o-c - * - * @generated from enum value: Type_Custom = 5; - */ - Custom = 5, - - /** - * b-a-o-can - * - * @generated from enum value: Type_Cancel = 6; - */ - Cancel = 6, -} - -/** - * Describes the enum meshtastic.EmergencyAlert.Type. - */ -export const EmergencyAlert_TypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 14, 0); - -/** - * - * Task / engage request (CoT type t-s). - * - * Mirrors ATAK's TaskCotReceiver / CotTaskBuilder workflow. The envelope - * carries the task's originating uid (implicit requester), position, and - * creation time; the fields below carry structured metadata the raw-detail - * fallback currently loses. - * - * Fields are deliberately lean — this variant is closer to the MTU ceiling - * than the others, so every string is capped in options. - * - * @generated from message meshtastic.TaskRequest - */ -export type TaskRequest = Message<"meshtastic.TaskRequest"> & { - /** - * - * Short tag for the task category (e.g. "engage", "observe", "recon", - * "rescue"). Free text on the wire so ATAK-specific task taxonomies - * don't need proto coordination; capped tight in options. - * - * @generated from field: string task_type = 1; - */ - taskType: string; - - /** - * - * UID of the target / map item being tasked. - * - * @generated from field: string target_uid = 2; - */ - targetUid: string; - - /** - * - * UID of the assigned unit. Empty = unassigned / broadcast task. - * - * @generated from field: string assignee_uid = 3; - */ - assigneeUid: string; - - /** - * @generated from field: meshtastic.TaskRequest.Priority priority = 4; - */ - priority: TaskRequest_Priority; - - /** - * @generated from field: meshtastic.TaskRequest.Status status = 5; - */ - status: TaskRequest_Status; - - /** - * - * Optional short note (reason, constraints, grid reference). Capped - * tight in options to keep the worst-case under the LoRa MTU. - * - * @generated from field: string note = 6; - */ - note: string; -}; - -/** - * Describes the message meshtastic.TaskRequest. - * Use `create(TaskRequestSchema)` to create a new message. - */ -export const TaskRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 15); - -/** - * @generated from enum meshtastic.TaskRequest.Priority - */ -export enum TaskRequest_Priority { - /** - * @generated from enum value: Priority_Unspecified = 0; - */ - Unspecified = 0, - - /** - * @generated from enum value: Priority_Low = 1; - */ - Low = 1, - - /** - * @generated from enum value: Priority_Normal = 2; - */ - Normal = 2, - - /** - * @generated from enum value: Priority_High = 3; - */ - High = 3, - - /** - * @generated from enum value: Priority_Critical = 4; - */ - Critical = 4, -} - -/** - * Describes the enum meshtastic.TaskRequest.Priority. - */ -export const TaskRequest_PrioritySchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 15, 0); - -/** - * @generated from enum meshtastic.TaskRequest.Status - */ -export enum TaskRequest_Status { - /** - * @generated from enum value: Status_Unspecified = 0; - */ - Unspecified = 0, - - /** - * assigned, not yet acknowledged - * - * @generated from enum value: Status_Pending = 1; - */ - Pending = 1, - - /** - * assignee has seen it - * - * @generated from enum value: Status_Acknowledged = 2; - */ - Acknowledged = 2, - - /** - * assignee is working it - * - * @generated from enum value: Status_InProgress = 3; - */ - InProgress = 3, - - /** - * task done - * - * @generated from enum value: Status_Completed = 4; - */ - Completed = 4, - - /** - * cancelled before completion - * - * @generated from enum value: Status_Cancelled = 5; - */ - Cancelled = 5, -} - -/** - * Describes the enum meshtastic.TaskRequest.Status. - */ -export const TaskRequest_StatusSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 15, 1); - -/** - * - * Weather annotation from CoT detail element. - * - * Attaches to any TAKPacketV2 regardless of payload_variant — an Aircraft, - * PLI, or Marker can all carry observed conditions at the emitting station. - * ATAK-CIV ships an XSD for but no dedicated handler, so the - * element round-trips through the generic detail pipeline; this message - * promotes it to a first-class structured field. - * - * Target wire cost: ~6-8 bytes compressed with a fully populated instance. - * - * Named `TAKEnvironment` (not just `Environment`) because the bare name - * collides with `SwiftUI.Environment` — every SwiftUI view in a consuming - * iOS app uses the `@Environment` property wrapper, and importing the - * generated proto module would make `Environment` ambiguous in every one - * of those files. The `TAK` prefix matches the convention used by the - * outer `TAKPacketV2` wrapper and is unambiguous across all target - * languages (Swift, Kotlin, Python, TypeScript, C#). - * - * @generated from message meshtastic.TAKEnvironment - */ -export type TAKEnvironment = Message<"meshtastic.TAKEnvironment"> & { - /** - * - * Temperature in deci-degrees Celsius. 225 = 22.5°C. - * Range covers -50°C to +50°C (-500 to +500) which spans every realistic - * outdoor TAK deployment. sint32 because negative temps are common in - * cold-weather ops. - * - * @generated from field: sint32 temperature_c_x10 = 1; - */ - temperatureCX10: number; - - /** - * - * Wind direction in whole degrees, 0-359. "Direction FROM" per - * meteorological convention (matches CoT / ATAK). - * - * @generated from field: uint32 wind_direction_deg = 2; - */ - windDirectionDeg: number; - - /** - * - * Wind speed in cm/s. Matches the unit of TAKPacketV2.speed for - * consistency. 1200 = 12.00 m/s = ~27 mph. - * - * @generated from field: uint32 wind_speed_cm_s = 3; - */ - windSpeedCmS: number; -}; - -/** - * Describes the message meshtastic.TAKEnvironment. - * Use `create(TAKEnvironmentSchema)` to create a new message. - */ -export const TAKEnvironmentSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 16); - -/** - * - * Sensor field-of-view cone from CoT detail element. - * - * Encodes the 8 geometry attributes that ATAK-CIV's SensorDetailHandler - * reads from the wire; drops the 9 visual-styling attributes that are - * receiver-side render hints (fovAlpha, fovRed/Green/Blue, strokeColor, - * strokeWeight, displayMagneticReference, hideFov, fovLabels, rangeLines). - * The receiving ATAK client restores those from its own defaults, same as - * every other CoT carried over Meshtastic today. - * - * Attaches to any TAKPacketV2 — a PLI with a sensor on the operator's head, - * an Aircraft with a FLIR turret, a Marker dropped on a UAV. - * Target wire cost: ~7-14 bytes compressed (dominated by model string). - * - * @generated from message meshtastic.SensorFov - */ -export type SensorFov = Message<"meshtastic.SensorFov"> & { - /** - * @generated from field: meshtastic.SensorFov.SensorType type = 1; - */ - type: SensorFov_SensorType; - - /** - * - * Azimuth in whole degrees, 0-359. "Pointing direction" of the cone axis, - * measured clockwise from true north. Whole degrees match ATAK-CIV's - * SensorDetailHandler default (270°) and save varint bytes over centi-deg. - * - * @generated from field: uint32 azimuth_deg = 2; - */ - azimuthDeg: number; - - /** - * - * Maximum range of the cone in meters. - * Optional — if unset, receivers should use the ATAK-CIV default of 100m. - * - * @generated from field: optional uint32 range_m = 3; - */ - rangeM?: number | undefined; - - /** - * - * Horizontal field of view in whole degrees (cone's angular width). - * ATAK-CIV default is 45°. - * - * @generated from field: uint32 fov_horizontal_deg = 4; - */ - fovHorizontalDeg: number; - - /** - * - * Vertical field of view in whole degrees. ATAK-CIV default is 45°. - * Optional — a value of 0 means "not set / use horizontal FOV". - * - * @generated from field: uint32 fov_vertical_deg = 5; - */ - fovVerticalDeg: number; - - /** - * - * Elevation angle in whole degrees. Positive = up, negative = down. - * Range -90 to +90. sint32 for varint efficiency on small negatives. - * - * @generated from field: sint32 elevation_deg = 6; - */ - elevationDeg: number; - - /** - * - * Roll (camera tilt) in whole degrees, -180 to +180. - * Optional — use 0 if the sensor doesn't track roll. - * - * @generated from field: sint32 roll_deg = 7; - */ - rollDeg: number; - - /** - * - * Free-form device model identifier, e.g. "FLIR-Boson-640", "SEEK". - * Optional — empty string means "unknown model" (ATAK-CIV default). - * - * @generated from field: string model = 8; - */ - model: string; -}; - -/** - * Describes the message meshtastic.SensorFov. - * Use `create(SensorFovSchema)` to create a new message. - */ -export const SensorFovSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 17); - -/** - * - * Coarse sensor category, inferred from `model` on parse when the source - * XML doesn't label it. Receivers that render differently per sensor - * class (thermal overlay vs daylight cone) use this. - * - * @generated from enum meshtastic.SensorFov.SensorType - */ -export enum SensorFov_SensorType { - /** - * @generated from enum value: SensorType_Unspecified = 0; - */ - SensorType_Unspecified = 0, - - /** - * daylight / general optical - * - * @generated from enum value: SensorType_Camera = 1; - */ - SensorType_Camera = 1, - - /** - * FLIR, thermal imager - * - * @generated from enum value: SensorType_Thermal = 2; - */ - SensorType_Thermal = 2, - - /** - * rangefinder, LRF, designator - * - * @generated from enum value: SensorType_Laser = 3; - */ - SensorType_Laser = 3, - - /** - * night vision goggles - * - * @generated from enum value: SensorType_Nvg = 4; - */ - SensorType_Nvg = 4, - - /** - * radio/radar direction-finding - * - * @generated from enum value: SensorType_Rf = 5; - */ - SensorType_Rf = 5, - - /** - * @generated from enum value: SensorType_Other = 6; - */ - SensorType_Other = 6, -} - -/** - * Describes the enum meshtastic.SensorFov.SensorType. - */ -export const SensorFov_SensorTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 17, 0); - -/** - * - * TAKTALK chat message payload (CoT type m-t-t). - * - * TAKTALK is an ATAK plugin for voice + text team messaging. The voice - * audio stream goes over UDP/RTP and is NOT carried by the mesh — only - * the text envelope (this message) is. `from_voice` marks messages sent - * via push-to-talk speech-to-text so receivers can render a mic icon - * next to the text. - * - * Wire shape inside /: - * ... - mapped to TAKPacketV2.callsign - * English - lang - * ... - text - * 1 - chatroom_id - * - presence sets from_voice = true - * - * @generated from message meshtastic.TakTalkMessage - */ -export type TakTalkMessage = Message<"meshtastic.TakTalkMessage"> & { - /** - * - * The text body of the TAKTALK message (speech-to-text transcript when - * from_voice = true, typed message otherwise). - * - * @generated from field: string text = 1; - */ - text: string; - - /** - * - * TAKTALK chatroom identifier. May be a short id like "1" for the - * default room or a UUID like "30b2755c-c547-44ef-a0cc-cdbd8a15616f" - * for custom rooms (resolved by TakTalkRoomData broadcasts). - * Empty = broadcast room. - * - * @generated from field: string chatroom_id = 2; - */ - chatroomId: string; - - /** - * - * BCP-47-ish language tag or human-readable name (e.g. "en", "English"). - * Empty = unspecified. - * - * @generated from field: string lang = 3; - */ - lang: string; - - /** - * - * True when the source CoT carried a marker, i.e. the message - * originated as push-to-talk speech-to-text. Lets receivers show a mic - * icon. Proto3 only encodes when true so empty payload cost is 0 bytes. - * - * @generated from field: bool from_voice = 4; - */ - fromVoice: boolean; -}; - -/** - * Describes the message meshtastic.TakTalkMessage. - * Use `create(TakTalkMessageSchema)` to create a new message. - */ -export const TakTalkMessageSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 18); - -/** - * - * TAKTALK room/membership broadcast (CoT type y-). - * - * Announces a TAKTALK chatroom's friendly name and roster so peers can - * resolve room UUIDs (used in TakTalkMessage.chatroom_id and - * GeoChat.room_id) to a display name and participant list. Not a chat - * message itself — these events are emitted by TAKTALK when rooms are - * created or memberships change. - * - * @generated from message meshtastic.TakTalkRoomData - */ -export type TakTalkRoomData = Message<"meshtastic.TakTalkRoomData"> & { - /** - * - * Callsign of the device broadcasting the room state (typically the - * room owner / latest writer). - * - * DEPRECATED in v0.3.2: always equals TAKPacketV2.callsign, so the wire - * byte was redundant. Builders stop emitting this field in v0.3.2; - * parsers still read it for one release so v0.3.1-encoded packets decode - * cleanly. To be removed entirely in v0.4.x. - * - * @generated from field: string sender_callsign = 1 [deprecated = true]; - * @deprecated - */ - senderCallsign: string; - - /** - * - * Room UUID, matches TakTalkMessage.chatroom_id / GeoChat.room_id on - * messages routed into this room. - * - * @generated from field: string room_id = 2; - */ - roomId: string; - - /** - * - * Friendly display name for the room (e.g. "test", "Alpha Team"). - * - * @generated from field: string room_name = 3; - */ - roomName: string; - - /** - * - * Member callsigns. Wire-encoded as repeated strings; the underlying - * CoT carries them as a single A,B,C element - * which parsers split / builders join on ','. - * - * @generated from field: repeated string participants = 4; - */ - participants: string[]; -}; - -/** - * Describes the message meshtastic.TakTalkRoomData. - * Use `create(TakTalkRoomDataSchema)` to create a new message. - */ -export const TakTalkRoomDataSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 19); - -/** - * - * ATAK directed-routing recipient list (CoT ). - * - * Present when an event is addressed to specific TAK users rather than the - * broadcast group. TAKTALK gates voice TTS on this element matching the - * receiver's callsign; directed b-t-f chats use it for the same purpose. A - * missing means "broadcast to all peers", which is the default for - * PLI, alerts, drawings, and most situational-awareness events. - * - * Carried as repeated strings (not indexes into a per-packet table) because - * the typical event has 1-2 destinations and table overhead would erase the - * savings. Receivers that need the original XML element rebuild it from - * dest_callsign on emit. - * - * @generated from message meshtastic.Marti - */ -export type Marti = Message<"meshtastic.Marti"> & { - /** - * - * Recipient callsigns. Order is preserved end-to-end so receivers can show - * primary-vs-cc distinction the same way ATAK does. - * - * If dest_callsign is [TAKPacketV2.callsign] (self-addressed, unusual but - * legal — e.g. ATAK echoing back to its own room), the builder still emits - * the element so loopback shapes round-trip cleanly. - * - * @generated from field: repeated string dest_callsign = 1; - */ - destCallsign: string[]; -}; - -/** - * Describes the message meshtastic.Marti. - * Use `create(MartiSchema)` to create a new message. - */ -export const MartiSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 20); - -/** - * - * ATAK v2 packet with expanded CoT field support and zstd dictionary compression. - * Sent on ATAK_PLUGIN_V2 port. The wire payload is: - * [1 byte flags][zstd-compressed TAKPacketV2 protobuf] - * Flags byte: bits 0-5 = dictionary ID, bits 6-7 = reserved. - * - * @generated from message meshtastic.TAKPacketV2 - */ -export type TAKPacketV2 = Message<"meshtastic.TAKPacketV2"> & { - /** - * - * Well-known CoT event type enum. - * Use CotType_Other with cot_type_str for unknown types. - * - * @generated from field: meshtastic.CotType cot_type_id = 1; - */ - cotTypeId: CotType; - - /** - * - * How the coordinates were generated - * - * @generated from field: meshtastic.CotHow how = 2; - */ - how: CotHow; - - /** - * - * Callsign - * - * @generated from field: string callsign = 3; - */ - callsign: string; - - /** - * - * Team color assignment - * - * @generated from field: meshtastic.Team team = 4; - */ - team: Team; - - /** - * - * Role of the group member - * - * @generated from field: meshtastic.MemberRole role = 5; - */ - role: MemberRole; - - /** - * - * Latitude, multiply by 1e-7 to get degrees in floating point - * - * @generated from field: sfixed32 latitude_i = 6; - */ - latitudeI: number; - - /** - * - * Longitude, multiply by 1e-7 to get degrees in floating point - * - * @generated from field: sfixed32 longitude_i = 7; - */ - longitudeI: number; - - /** - * - * Altitude in meters (HAE). ATAK's "no altitude" sentinel is hae=9999999.0. - * - * NOTE: an earlier v0.4.0 attempt made this `optional` to omit the 9999999 - * sentinel from the wire, but measurement showed it was net-negative: the - * zstd dictionary already compresses the literal 9999999 to ~nothing, while - * proto3 `optional` forces a genuine 0 m HAE (common on routes/drawings that - * carry hae="0.0" or omit hae → parsed as 0) to encode explicitly (+2 bytes), - * which REGRESSED the worst-case route fixture. Kept as a plain field. - * - * @generated from field: sint32 altitude = 8; - */ - altitude: number; - - /** - * - * Speed in cm/s - * - * @generated from field: uint32 speed = 9; - */ - speed: number; - - /** - * - * Course in degrees * 100 (0-36000) - * - * @generated from field: uint32 course = 10; - */ - course: number; - - /** - * - * Battery level 0-100 - * - * @generated from field: uint32 battery = 11; - */ - battery: number; - - /** - * - * Geopoint source - * - * @generated from field: meshtastic.GeoPointSource geo_src = 12; - */ - geoSrc: GeoPointSource; - - /** - * - * Altitude source - * - * @generated from field: meshtastic.GeoPointSource alt_src = 13; - */ - altSrc: GeoPointSource; - - /** - * - * Device UID (UUID string or device ID like "ANDROID-xxxx") - * - * @generated from field: string uid = 14; - */ - uid: string; - - /** - * - * Device callsign - * - * @generated from field: string device_callsign = 15; - */ - deviceCallsign: string; - - /** - * - * Stale time as seconds offset from event time - * - * @generated from field: uint32 stale_seconds = 16; - */ - staleSeconds: number; - - /** - * - * TAK client version string - * - * @generated from field: string tak_version = 17; - */ - takVersion: string; - - /** - * - * TAK device model - * - * @generated from field: string tak_device = 18; - */ - takDevice: string; - - /** - * - * TAK platform (ATAK-CIV, WebTAK, etc.) - * - * @generated from field: string tak_platform = 19; - */ - takPlatform: string; - - /** - * - * TAK OS version - * - * @generated from field: string tak_os = 20; - */ - takOs: string; - - /** - * - * Connection endpoint - * - * @generated from field: string endpoint = 21; - */ - endpoint: string; - - /** - * - * Phone number - * - * @generated from field: string phone = 22; - */ - phone: string; - - /** - * - * CoT event type string, only populated when cot_type_id is CotType_Other - * - * @generated from field: string cot_type_str = 23; - */ - cotTypeStr: string; - - /** - * - * Optional remarks / free-text annotation from the element. - * Populated for non-GeoChat payload types (shapes, markers, routes, etc.) - * when the original CoT event carried non-empty remarks text. - * GeoChat messages carry their text in GeoChat.message instead. - * Empty string (proto3 default) means no remarks were present. - * - * @generated from field: string remarks = 24; - */ - remarks: string; - - /** - * - * Observed weather conditions (temperature, wind). From . - * Type is `TAKEnvironment`, not `Environment`, to avoid colliding with - * SwiftUI's `@Environment` property wrapper in iOS consumers. - * - * @generated from field: optional meshtastic.TAKEnvironment environment = 25; - */ - environment?: TAKEnvironment | undefined; - - /** - * - * Sensor field-of-view cone (camera, FLIR, laser, etc.). From . - * - * @generated from field: optional meshtastic.SensorFov sensor_fov = 26; - */ - sensorFov?: SensorFov | undefined; - - /** - * - * Directed-routing recipient list (CoT ). - * Empty / unset = broadcast to all peers (the default for situational-awareness - * events). Populated for TAKTALK m-t-t, directed b-t-f DMs, and any other CoT - * shape that ATAK addresses to specific recipients. TAKTALK gates voice TTS - * playback on this element matching the receiver's callsign, so dropping it - * silently breaks voice messaging end-to-end. - * - * See Marti. - * - * @generated from field: optional meshtastic.Marti marti = 29; - */ - marti?: Marti | undefined; - - /** - * - * The payload of the packet - * - * Tag 30 was `bool pli` — a PLI carries no fields beyond the common - * envelope (position is in latitude_i/longitude_i), so the boolean was - * pure overhead (~3 wire bytes on every position beacon, the highest- - * frequency packet). PLI is now the IMPLICIT payload: a packet with NO - * payload_variant set decodes as a position report. Tag 30 is reserved at - * the message level (proto3 forbids `reserved` inside a oneof). - * - * @generated from oneof meshtastic.TAKPacketV2.payload_variant - */ - payloadVariant: { - /** - * - * ATAK GeoChat message - * - * @generated from field: meshtastic.GeoChat chat = 31; - */ - value: GeoChat; - case: "chat"; - } | { - /** - * - * Aircraft track data (ADS-B, military air) - * - * @generated from field: meshtastic.AircraftTrack aircraft = 32; - */ - value: AircraftTrack; - case: "aircraft"; - } | { - /** - * - * Generic CoT detail XML for unmapped types. Kept as a fallback for CoT - * types not yet promoted to a typed variant; drawings, markers, ranging - * tools, and routes have dedicated variants below and should not land here. - * - * @generated from field: bytes raw_detail = 33; - */ - value: Uint8Array; - case: "rawDetail"; - } | { - /** - * - * User-drawn tactical graphic: circle, rectangle, polygon, polyline, - * telestration, ranging circle, or bullseye. See DrawnShape. - * - * @generated from field: meshtastic.DrawnShape shape = 34; - */ - value: DrawnShape; - case: "shape"; - } | { - /** - * - * Fixed point of interest: spot marker, waypoint, checkpoint, 2525 - * symbol, or custom icon. See Marker. - * - * @generated from field: meshtastic.Marker marker = 35; - */ - value: Marker; - case: "marker"; - } | { - /** - * - * Range and bearing measurement line. See RangeAndBearing. - * - * @generated from field: meshtastic.RangeAndBearing rab = 36; - */ - value: RangeAndBearing; - case: "rab"; - } | { - /** - * - * Named route with ordered waypoints and control points. See Route. - * - * @generated from field: meshtastic.Route route = 37; - */ - value: Route; - case: "route"; - } | { - /** - * - * 9-line MEDEVAC request. See CasevacReport. - * - * @generated from field: meshtastic.CasevacReport casevac = 38; - */ - value: CasevacReport; - case: "casevac"; - } | { - /** - * - * Emergency beacon / 911 alert. See EmergencyAlert. - * - * @generated from field: meshtastic.EmergencyAlert emergency = 39; - */ - value: EmergencyAlert; - case: "emergency"; - } | { - /** - * - * Task / engage request. See TaskRequest. - * - * @generated from field: meshtastic.TaskRequest task = 40; - */ - value: TaskRequest; - case: "task"; - } | { - /** - * - * TAKTALK chat message (CoT type m-t-t). See TakTalkMessage. - * Voice audio itself rides UDP/RTP outside the mesh; this carries the - * text envelope plus a from_voice marker for receiver UX. - * - * @generated from field: meshtastic.TakTalkMessage taktalk = 41; - */ - value: TakTalkMessage; - case: "taktalk"; - } | { - /** - * - * TAKTALK room/membership broadcast (CoT type y-). See TakTalkRoomData. - * Resolves room UUIDs (used in TakTalkMessage.chatroom_id and - * GeoChat.room_id) to display name + roster on receivers. - * - * @generated from field: meshtastic.TakTalkRoomData taktalk_room = 42; - */ - value: TakTalkRoomData; - case: "taktalkRoom"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.TAKPacketV2. - * Use `create(TAKPacketV2Schema)` to create a new message. - */ -export const TAKPacketV2Schema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_atak, 21); - -/** - * @generated from enum meshtastic.Team - */ -export enum Team { - /** - * - * Unspecifed - * - * @generated from enum value: Unspecifed_Color = 0; - */ - Unspecifed_Color = 0, - - /** - * - * White - * - * @generated from enum value: White = 1; - */ - White = 1, - - /** - * - * Yellow - * - * @generated from enum value: Yellow = 2; - */ - Yellow = 2, - - /** - * - * Orange - * - * @generated from enum value: Orange = 3; - */ - Orange = 3, - - /** - * - * Magenta - * - * @generated from enum value: Magenta = 4; - */ - Magenta = 4, - - /** - * - * Red - * - * @generated from enum value: Red = 5; - */ - Red = 5, - - /** - * - * Maroon - * - * @generated from enum value: Maroon = 6; - */ - Maroon = 6, - - /** - * - * Purple - * - * @generated from enum value: Purple = 7; - */ - Purple = 7, - - /** - * - * Dark Blue - * - * @generated from enum value: Dark_Blue = 8; - */ - Dark_Blue = 8, - - /** - * - * Blue - * - * @generated from enum value: Blue = 9; - */ - Blue = 9, - - /** - * - * Cyan - * - * @generated from enum value: Cyan = 10; - */ - Cyan = 10, - - /** - * - * Teal - * - * @generated from enum value: Teal = 11; - */ - Teal = 11, - - /** - * - * Green - * - * @generated from enum value: Green = 12; - */ - Green = 12, - - /** - * - * Dark Green - * - * @generated from enum value: Dark_Green = 13; - */ - Dark_Green = 13, - - /** - * - * Brown - * - * @generated from enum value: Brown = 14; - */ - Brown = 14, -} - -/** - * Describes the enum meshtastic.Team. - */ -export const TeamSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 0); - -/** - * - * Role of the group member - * - * @generated from enum meshtastic.MemberRole - */ -export enum MemberRole { - /** - * - * Unspecifed - * - * @generated from enum value: Unspecifed = 0; - */ - Unspecifed = 0, - - /** - * - * Team Member - * - * @generated from enum value: TeamMember = 1; - */ - TeamMember = 1, - - /** - * - * Team Lead - * - * @generated from enum value: TeamLead = 2; - */ - TeamLead = 2, - - /** - * - * Headquarters - * - * @generated from enum value: HQ = 3; - */ - HQ = 3, - - /** - * - * Airsoft enthusiast - * - * @generated from enum value: Sniper = 4; - */ - Sniper = 4, - - /** - * - * Medic - * - * @generated from enum value: Medic = 5; - */ - Medic = 5, - - /** - * - * ForwardObserver - * - * @generated from enum value: ForwardObserver = 6; - */ - ForwardObserver = 6, - - /** - * - * Radio Telephone Operator - * - * @generated from enum value: RTO = 7; - */ - RTO = 7, - - /** - * - * Doggo - * - * @generated from enum value: K9 = 8; - */ - K9 = 8, -} - -/** - * Describes the enum meshtastic.MemberRole. - */ -export const MemberRoleSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 1); - -/** - * - * CoT how field values. - * Represents how the coordinates were generated. - * - * @generated from enum meshtastic.CotHow - */ -export enum CotHow { - /** - * - * Unspecified - * - * @generated from enum value: CotHow_Unspecified = 0; - */ - CotHow_Unspecified = 0, - - /** - * - * Human entered - * - * @generated from enum value: CotHow_h_e = 1; - */ - CotHow_h_e = 1, - - /** - * - * Machine generated - * - * @generated from enum value: CotHow_m_g = 2; - */ - CotHow_m_g = 2, - - /** - * - * Human GPS/INS derived - * - * @generated from enum value: CotHow_h_g_i_g_o = 3; - */ - CotHow_h_g_i_g_o = 3, - - /** - * - * Machine relayed (imported from another system/gateway) - * - * @generated from enum value: CotHow_m_r = 4; - */ - CotHow_m_r = 4, - - /** - * - * Machine fused (corroborated from multiple sources) - * - * @generated from enum value: CotHow_m_f = 5; - */ - CotHow_m_f = 5, - - /** - * - * Machine predicted - * - * @generated from enum value: CotHow_m_p = 6; - */ - CotHow_m_p = 6, - - /** - * - * Machine simulated - * - * @generated from enum value: CotHow_m_s = 7; - */ - CotHow_m_s = 7, -} - -/** - * Describes the enum meshtastic.CotHow. - */ -export const CotHowSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 2); - -/** - * - * Well-known CoT event types. - * When the type is known, use the enum value for efficient encoding. - * For unknown types, set cot_type_id to CotType_Other and populate cot_type_str. - * - * @generated from enum meshtastic.CotType - */ -export enum CotType { - /** - * - * Unknown or unmapped type, use cot_type_str - * - * @generated from enum value: CotType_Other = 0; - */ - CotType_Other = 0, - - /** - * - * a-f-G-U-C: Friendly ground unit combat - * - * @generated from enum value: CotType_a_f_G_U_C = 1; - */ - CotType_a_f_G_U_C = 1, - - /** - * - * a-f-G-U-C-I: Friendly ground unit combat infantry - * - * @generated from enum value: CotType_a_f_G_U_C_I = 2; - */ - CotType_a_f_G_U_C_I = 2, - - /** - * - * a-n-A-C-F: Neutral aircraft civilian fixed-wing - * - * @generated from enum value: CotType_a_n_A_C_F = 3; - */ - CotType_a_n_A_C_F = 3, - - /** - * - * a-n-A-C-H: Neutral aircraft civilian helicopter - * - * @generated from enum value: CotType_a_n_A_C_H = 4; - */ - CotType_a_n_A_C_H = 4, - - /** - * - * a-n-A-C: Neutral aircraft civilian - * - * @generated from enum value: CotType_a_n_A_C = 5; - */ - CotType_a_n_A_C = 5, - - /** - * - * a-f-A-M-H: Friendly aircraft military helicopter - * - * @generated from enum value: CotType_a_f_A_M_H = 6; - */ - CotType_a_f_A_M_H = 6, - - /** - * - * a-f-A-M: Friendly aircraft military - * - * @generated from enum value: CotType_a_f_A_M = 7; - */ - CotType_a_f_A_M = 7, - - /** - * - * a-f-A-M-F-F: Friendly aircraft military fixed-wing fighter - * - * @generated from enum value: CotType_a_f_A_M_F_F = 8; - */ - CotType_a_f_A_M_F_F = 8, - - /** - * - * a-f-A-M-H-A: Friendly aircraft military helicopter attack - * - * @generated from enum value: CotType_a_f_A_M_H_A = 9; - */ - CotType_a_f_A_M_H_A = 9, - - /** - * - * a-f-A-M-H-U-M: Friendly aircraft military helicopter utility medium - * - * @generated from enum value: CotType_a_f_A_M_H_U_M = 10; - */ - CotType_a_f_A_M_H_U_M = 10, - - /** - * - * a-h-A-M-F-F: Hostile aircraft military fixed-wing fighter - * - * @generated from enum value: CotType_a_h_A_M_F_F = 11; - */ - CotType_a_h_A_M_F_F = 11, - - /** - * - * a-h-A-M-H-A: Hostile aircraft military helicopter attack - * - * @generated from enum value: CotType_a_h_A_M_H_A = 12; - */ - CotType_a_h_A_M_H_A = 12, - - /** - * - * a-u-A-C: Unknown aircraft civilian - * - * @generated from enum value: CotType_a_u_A_C = 13; - */ - CotType_a_u_A_C = 13, - - /** - * - * t-x-d-d: Tasking delete/disconnect - * - * @generated from enum value: CotType_t_x_d_d = 14; - */ - CotType_t_x_d_d = 14, - - /** - * - * a-f-G-E-S-E: Friendly ground equipment sensor - * - * @generated from enum value: CotType_a_f_G_E_S_E = 15; - */ - CotType_a_f_G_E_S_E = 15, - - /** - * - * a-f-G-E-V-C: Friendly ground equipment vehicle - * - * @generated from enum value: CotType_a_f_G_E_V_C = 16; - */ - CotType_a_f_G_E_V_C = 16, - - /** - * - * a-f-S: Friendly sea - * - * @generated from enum value: CotType_a_f_S = 17; - */ - CotType_a_f_S = 17, - - /** - * - * a-f-A-M-F: Friendly aircraft military fixed-wing - * - * @generated from enum value: CotType_a_f_A_M_F = 18; - */ - CotType_a_f_A_M_F = 18, - - /** - * - * a-f-A-M-F-C-H: Friendly aircraft military fixed-wing cargo heavy - * - * @generated from enum value: CotType_a_f_A_M_F_C_H = 19; - */ - CotType_a_f_A_M_F_C_H = 19, - - /** - * - * a-f-A-M-F-U-L: Friendly aircraft military fixed-wing utility light - * - * @generated from enum value: CotType_a_f_A_M_F_U_L = 20; - */ - CotType_a_f_A_M_F_U_L = 20, - - /** - * - * a-f-A-M-F-L: Friendly aircraft military fixed-wing liaison - * - * @generated from enum value: CotType_a_f_A_M_F_L = 21; - */ - CotType_a_f_A_M_F_L = 21, - - /** - * - * a-f-A-M-F-P: Friendly aircraft military fixed-wing patrol - * - * @generated from enum value: CotType_a_f_A_M_F_P = 22; - */ - CotType_a_f_A_M_F_P = 22, - - /** - * - * a-f-A-C-H: Friendly aircraft civilian helicopter - * - * @generated from enum value: CotType_a_f_A_C_H = 23; - */ - CotType_a_f_A_C_H = 23, - - /** - * - * a-n-A-M-F-Q: Neutral aircraft military fixed-wing drone - * - * @generated from enum value: CotType_a_n_A_M_F_Q = 24; - */ - CotType_a_n_A_M_F_Q = 24, - - /** - * - * b-t-f: GeoChat message - * - * @generated from enum value: CotType_b_t_f = 25; - */ - CotType_b_t_f = 25, - - /** - * - * b-r-f-h-c: CASEVAC/MEDEVAC report - * - * @generated from enum value: CotType_b_r_f_h_c = 26; - */ - CotType_b_r_f_h_c = 26, - - /** - * - * b-a-o-pan: Ring the bell / alert all - * - * @generated from enum value: CotType_b_a_o_pan = 27; - */ - CotType_b_a_o_pan = 27, - - /** - * - * b-a-o-opn: Troops in contact - * - * @generated from enum value: CotType_b_a_o_opn = 28; - */ - CotType_b_a_o_opn = 28, - - /** - * - * b-a-o-can: Cancel alert - * - * @generated from enum value: CotType_b_a_o_can = 29; - */ - CotType_b_a_o_can = 29, - - /** - * - * b-a-o-tbl: 911 alert - * - * @generated from enum value: CotType_b_a_o_tbl = 30; - */ - CotType_b_a_o_tbl = 30, - - /** - * - * b-a-g: Geofence breach alert - * - * @generated from enum value: CotType_b_a_g = 31; - */ - CotType_b_a_g = 31, - - /** - * - * a-f-G: Friendly ground (generic) - * - * @generated from enum value: CotType_a_f_G = 32; - */ - CotType_a_f_G = 32, - - /** - * - * a-f-G-U: Friendly ground unit (generic) - * - * @generated from enum value: CotType_a_f_G_U = 33; - */ - CotType_a_f_G_U = 33, - - /** - * - * a-h-G: Hostile ground (generic) - * - * @generated from enum value: CotType_a_h_G = 34; - */ - CotType_a_h_G = 34, - - /** - * - * a-u-G: Unknown ground (generic) - * - * @generated from enum value: CotType_a_u_G = 35; - */ - CotType_a_u_G = 35, - - /** - * - * a-n-G: Neutral ground (generic) - * - * @generated from enum value: CotType_a_n_G = 36; - */ - CotType_a_n_G = 36, - - /** - * - * b-m-r: Route - * - * @generated from enum value: CotType_b_m_r = 37; - */ - CotType_b_m_r = 37, - - /** - * - * b-m-p-w: Route waypoint - * - * @generated from enum value: CotType_b_m_p_w = 38; - */ - CotType_b_m_p_w = 38, - - /** - * - * b-m-p-s-p-i: Self-position marker - * - * @generated from enum value: CotType_b_m_p_s_p_i = 39; - */ - CotType_b_m_p_s_p_i = 39, - - /** - * - * u-d-f: Freeform shape (line/polygon) - * - * @generated from enum value: CotType_u_d_f = 40; - */ - CotType_u_d_f = 40, - - /** - * - * u-d-r: Rectangle - * - * @generated from enum value: CotType_u_d_r = 41; - */ - CotType_u_d_r = 41, - - /** - * - * u-d-c-c: Circle - * - * @generated from enum value: CotType_u_d_c_c = 42; - */ - CotType_u_d_c_c = 42, - - /** - * - * u-rb-a: Range/bearing line - * - * @generated from enum value: CotType_u_rb_a = 43; - */ - CotType_u_rb_a = 43, - - /** - * - * a-h-A: Hostile aircraft (generic) - * - * @generated from enum value: CotType_a_h_A = 44; - */ - CotType_a_h_A = 44, - - /** - * - * a-u-A: Unknown aircraft (generic) - * - * @generated from enum value: CotType_a_u_A = 45; - */ - CotType_a_u_A = 45, - - /** - * - * a-f-A-M-H-Q: Friendly aircraft military helicopter observation - * - * @generated from enum value: CotType_a_f_A_M_H_Q = 46; - */ - CotType_a_f_A_M_H_Q = 46, - - /** - * - * a-f-A-C-F: Friendly aircraft civilian fixed-wing - * - * @generated from enum value: CotType_a_f_A_C_F = 47; - */ - CotType_a_f_A_C_F = 47, - - /** - * - * a-f-A-C: Friendly aircraft civilian (generic) - * - * @generated from enum value: CotType_a_f_A_C = 48; - */ - CotType_a_f_A_C = 48, - - /** - * - * a-f-A-C-L: Friendly aircraft civilian lighter-than-air - * - * @generated from enum value: CotType_a_f_A_C_L = 49; - */ - CotType_a_f_A_C_L = 49, - - /** - * - * a-f-A: Friendly aircraft (generic) - * - * @generated from enum value: CotType_a_f_A = 50; - */ - CotType_a_f_A = 50, - - /** - * - * a-f-A-M-H-C: Friendly aircraft military helicopter cargo - * - * @generated from enum value: CotType_a_f_A_M_H_C = 51; - */ - CotType_a_f_A_M_H_C = 51, - - /** - * - * a-n-A-M-F-F: Neutral aircraft military fixed-wing fighter - * - * @generated from enum value: CotType_a_n_A_M_F_F = 52; - */ - CotType_a_n_A_M_F_F = 52, - - /** - * - * a-u-A-C-F: Unknown aircraft civilian fixed-wing - * - * @generated from enum value: CotType_a_u_A_C_F = 53; - */ - CotType_a_u_A_C_F = 53, - - /** - * - * a-f-G-U-C-F-T-A: Friendly ground unit combat forces theater aviation - * - * @generated from enum value: CotType_a_f_G_U_C_F_T_A = 54; - */ - CotType_a_f_G_U_C_F_T_A = 54, - - /** - * - * a-f-G-U-C-V-S: Friendly ground unit combat vehicle support - * - * @generated from enum value: CotType_a_f_G_U_C_V_S = 55; - */ - CotType_a_f_G_U_C_V_S = 55, - - /** - * - * a-f-G-U-C-R-X: Friendly ground unit combat reconnaissance exploitation - * - * @generated from enum value: CotType_a_f_G_U_C_R_X = 56; - */ - CotType_a_f_G_U_C_R_X = 56, - - /** - * - * a-f-G-U-C-I-Z: Friendly ground unit combat infantry mechanized - * - * @generated from enum value: CotType_a_f_G_U_C_I_Z = 57; - */ - CotType_a_f_G_U_C_I_Z = 57, - - /** - * - * a-f-G-U-C-E-C-W: Friendly ground unit combat engineer construction wheeled - * - * @generated from enum value: CotType_a_f_G_U_C_E_C_W = 58; - */ - CotType_a_f_G_U_C_E_C_W = 58, - - /** - * - * a-f-G-U-C-I-L: Friendly ground unit combat infantry light - * - * @generated from enum value: CotType_a_f_G_U_C_I_L = 59; - */ - CotType_a_f_G_U_C_I_L = 59, - - /** - * - * a-f-G-U-C-R-O: Friendly ground unit combat reconnaissance other - * - * @generated from enum value: CotType_a_f_G_U_C_R_O = 60; - */ - CotType_a_f_G_U_C_R_O = 60, - - /** - * - * a-f-G-U-C-R-V: Friendly ground unit combat reconnaissance cavalry - * - * @generated from enum value: CotType_a_f_G_U_C_R_V = 61; - */ - CotType_a_f_G_U_C_R_V = 61, - - /** - * - * a-f-G-U-H: Friendly ground unit headquarters - * - * @generated from enum value: CotType_a_f_G_U_H = 62; - */ - CotType_a_f_G_U_H = 62, - - /** - * - * a-f-G-U-U-M-S-E: Friendly ground unit support medical surgical evacuation - * - * @generated from enum value: CotType_a_f_G_U_U_M_S_E = 63; - */ - CotType_a_f_G_U_U_M_S_E = 63, - - /** - * - * a-f-G-U-S-M-C: Friendly ground unit support maintenance collection - * - * @generated from enum value: CotType_a_f_G_U_S_M_C = 64; - */ - CotType_a_f_G_U_S_M_C = 64, - - /** - * - * a-f-G-E-S: Friendly ground equipment sensor (generic) - * - * @generated from enum value: CotType_a_f_G_E_S = 65; - */ - CotType_a_f_G_E_S = 65, - - /** - * - * a-f-G-E: Friendly ground equipment (generic) - * - * @generated from enum value: CotType_a_f_G_E = 66; - */ - CotType_a_f_G_E = 66, - - /** - * - * a-f-G-E-V-C-U: Friendly ground equipment vehicle utility - * - * @generated from enum value: CotType_a_f_G_E_V_C_U = 67; - */ - CotType_a_f_G_E_V_C_U = 67, - - /** - * - * a-f-G-E-V-C-ps: Friendly ground equipment vehicle public safety - * - * @generated from enum value: CotType_a_f_G_E_V_C_ps = 68; - */ - CotType_a_f_G_E_V_C_ps = 68, - - /** - * - * a-u-G-E-V: Unknown ground equipment vehicle - * - * @generated from enum value: CotType_a_u_G_E_V = 69; - */ - CotType_a_u_G_E_V = 69, - - /** - * - * a-f-S-N-N-R: Friendly sea surface non-naval rescue - * - * @generated from enum value: CotType_a_f_S_N_N_R = 70; - */ - CotType_a_f_S_N_N_R = 70, - - /** - * - * a-f-F-B: Friendly force boundary - * - * @generated from enum value: CotType_a_f_F_B = 71; - */ - CotType_a_f_F_B = 71, - - /** - * - * b-m-p-s-p-loc: Self-position location marker - * - * @generated from enum value: CotType_b_m_p_s_p_loc = 72; - */ - CotType_b_m_p_s_p_loc = 72, - - /** - * - * b-i-v: Imagery/video - * - * @generated from enum value: CotType_b_i_v = 73; - */ - CotType_b_i_v = 73, - - /** - * - * b-f-t-r: File transfer request - * - * @generated from enum value: CotType_b_f_t_r = 74; - */ - CotType_b_f_t_r = 74, - - /** - * - * b-f-t-a: File transfer acknowledgment - * - * @generated from enum value: CotType_b_f_t_a = 75; - */ - CotType_b_f_t_a = 75, - - /** - * - * u-d-f-m: Freehand telestration / annotation. Anchor at event point, - * geometry carried via DrawnShape.vertices. May be truncated to - * MAX_VERTICES by the sender. - * - * @generated from enum value: CotType_u_d_f_m = 76; - */ - CotType_u_d_f_m = 76, - - /** - * - * u-d-p: Closed polygon. Geometry carried via DrawnShape.vertices, - * implicitly closed (receiver duplicates first vertex as needed). - * - * @generated from enum value: CotType_u_d_p = 77; - */ - CotType_u_d_p = 77, - - /** - * - * b-m-p-s-m: Spot map marker (colored dot at a point of interest). - * - * @generated from enum value: CotType_b_m_p_s_m = 78; - */ - CotType_b_m_p_s_m = 78, - - /** - * - * b-m-p-c: Checkpoint (intermediate route control point). - * - * @generated from enum value: CotType_b_m_p_c = 79; - */ - CotType_b_m_p_c = 79, - - /** - * - * u-r-b-c-c: Ranging circle (range rings centered on the event point). - * - * @generated from enum value: CotType_u_r_b_c_c = 80; - */ - CotType_u_r_b_c_c = 80, - - /** - * - * u-r-b-bullseye: Bullseye with configurable range rings and bearing - * reference (magnetic / true / grid). - * - * @generated from enum value: CotType_u_r_b_bullseye = 81; - */ - CotType_u_r_b_bullseye = 81, - - /** - * - * a-f-G-E-V-A: Friendly armored vehicle, user-selectable self PLI. - * - * @generated from enum value: CotType_a_f_G_E_V_A = 82; - */ - CotType_a_f_G_E_V_A = 82, - - /** - * - * a-n-A: Neutral aircraft (friendly/hostile/unknown already present). - * - * @generated from enum value: CotType_a_n_A = 83; - */ - CotType_a_n_A = 83, - - /** - * --- 2525 quick-drop: artillery (4) ---------------------------------- - * - * @generated from enum value: CotType_a_u_G_U_C_F = 84; - */ - CotType_a_u_G_U_C_F = 84, - - /** - * @generated from enum value: CotType_a_n_G_U_C_F = 85; - */ - CotType_a_n_G_U_C_F = 85, - - /** - * @generated from enum value: CotType_a_h_G_U_C_F = 86; - */ - CotType_a_h_G_U_C_F = 86, - - /** - * @generated from enum value: CotType_a_f_G_U_C_F = 87; - */ - CotType_a_f_G_U_C_F = 87, - - /** - * --- 2525 quick-drop: building (4) ----------------------------------- - * - * @generated from enum value: CotType_a_u_G_I = 88; - */ - CotType_a_u_G_I = 88, - - /** - * @generated from enum value: CotType_a_n_G_I = 89; - */ - CotType_a_n_G_I = 89, - - /** - * @generated from enum value: CotType_a_h_G_I = 90; - */ - CotType_a_h_G_I = 90, - - /** - * @generated from enum value: CotType_a_f_G_I = 91; - */ - CotType_a_f_G_I = 91, - - /** - * --- 2525 quick-drop: mine (4) --------------------------------------- - * - * @generated from enum value: CotType_a_u_G_E_X_M = 92; - */ - CotType_a_u_G_E_X_M = 92, - - /** - * @generated from enum value: CotType_a_n_G_E_X_M = 93; - */ - CotType_a_n_G_E_X_M = 93, - - /** - * @generated from enum value: CotType_a_h_G_E_X_M = 94; - */ - CotType_a_h_G_E_X_M = 94, - - /** - * @generated from enum value: CotType_a_f_G_E_X_M = 95; - */ - CotType_a_f_G_E_X_M = 95, - - /** - * --- 2525 quick-drop: ship (3; a-f-S already at 17) ------------------ - * - * @generated from enum value: CotType_a_u_S = 96; - */ - CotType_a_u_S = 96, - - /** - * @generated from enum value: CotType_a_n_S = 97; - */ - CotType_a_n_S = 97, - - /** - * @generated from enum value: CotType_a_h_S = 98; - */ - CotType_a_h_S = 98, - - /** - * --- 2525 quick-drop: sniper (4) ------------------------------------- - * - * @generated from enum value: CotType_a_u_G_U_C_I_d = 99; - */ - CotType_a_u_G_U_C_I_d = 99, - - /** - * @generated from enum value: CotType_a_n_G_U_C_I_d = 100; - */ - CotType_a_n_G_U_C_I_d = 100, - - /** - * @generated from enum value: CotType_a_h_G_U_C_I_d = 101; - */ - CotType_a_h_G_U_C_I_d = 101, - - /** - * @generated from enum value: CotType_a_f_G_U_C_I_d = 102; - */ - CotType_a_f_G_U_C_I_d = 102, - - /** - * --- 2525 quick-drop: tank (4) --------------------------------------- - * - * @generated from enum value: CotType_a_u_G_E_V_A_T = 103; - */ - CotType_a_u_G_E_V_A_T = 103, - - /** - * @generated from enum value: CotType_a_n_G_E_V_A_T = 104; - */ - CotType_a_n_G_E_V_A_T = 104, - - /** - * @generated from enum value: CotType_a_h_G_E_V_A_T = 105; - */ - CotType_a_h_G_E_V_A_T = 105, - - /** - * @generated from enum value: CotType_a_f_G_E_V_A_T = 106; - */ - CotType_a_f_G_E_V_A_T = 106, - - /** - * --- 2525 quick-drop: troops (3; a-f-G-U-C-I already at 2) ----------- - * - * @generated from enum value: CotType_a_u_G_U_C_I = 107; - */ - CotType_a_u_G_U_C_I = 107, - - /** - * @generated from enum value: CotType_a_n_G_U_C_I = 108; - */ - CotType_a_n_G_U_C_I = 108, - - /** - * @generated from enum value: CotType_a_h_G_U_C_I = 109; - */ - CotType_a_h_G_U_C_I = 109, - - /** - * --- 2525 quick-drop: generic vehicle (3; a-u-G-E-V already at 69) --- - * - * @generated from enum value: CotType_a_n_G_E_V = 110; - */ - CotType_a_n_G_E_V = 110, - - /** - * @generated from enum value: CotType_a_h_G_E_V = 111; - */ - CotType_a_h_G_E_V = 111, - - /** - * @generated from enum value: CotType_a_f_G_E_V = 112; - */ - CotType_a_f_G_E_V = 112, - - /** - * - * b-m-p-w-GOTO: Go To / bloodhound navigation target. - * - * @generated from enum value: CotType_b_m_p_w_GOTO = 113; - */ - CotType_b_m_p_w_GOTO = 113, - - /** - * - * b-m-p-c-ip: Initial point (mission planning). - * - * @generated from enum value: CotType_b_m_p_c_ip = 114; - */ - CotType_b_m_p_c_ip = 114, - - /** - * - * b-m-p-c-cp: Contact point (mission planning). - * - * @generated from enum value: CotType_b_m_p_c_cp = 115; - */ - CotType_b_m_p_c_cp = 115, - - /** - * - * b-m-p-s-p-op: Observation post. - * - * @generated from enum value: CotType_b_m_p_s_p_op = 116; - */ - CotType_b_m_p_s_p_op = 116, - - /** - * - * u-d-v: 2D vehicle outline drawn on the map. - * - * @generated from enum value: CotType_u_d_v = 117; - */ - CotType_u_d_v = 117, - - /** - * - * u-d-v-m: 3D vehicle model reference. - * - * @generated from enum value: CotType_u_d_v_m = 118; - */ - CotType_u_d_v_m = 118, - - /** - * - * u-d-c-e: Non-circular ellipse (circle with distinct major/minor axes). - * - * @generated from enum value: CotType_u_d_c_e = 119; - */ - CotType_u_d_c_e = 119, - - /** - * - * b-i-x-i: Quick Pic geotagged image marker. The image itself does not - * ride on LoRa; this event references the image via iconset metadata. - * - * @generated from enum value: CotType_b_i_x_i = 120; - */ - CotType_b_i_x_i = 120, - - /** - * - * b-t-f-d: GeoChat delivered receipt. Carried on the existing `chat` - * payload_variant via GeoChat.receipt_for_uid + receipt_type. - * - * @generated from enum value: CotType_b_t_f_d = 121; - */ - CotType_b_t_f_d = 121, - - /** - * - * b-t-f-r: GeoChat read receipt. Same wire slot as b-t-f-d. - * - * @generated from enum value: CotType_b_t_f_r = 122; - */ - CotType_b_t_f_r = 122, - - /** - * - * b-a-o-c: Custom / generic emergency beacon. - * - * @generated from enum value: CotType_b_a_o_c = 123; - */ - CotType_b_a_o_c = 123, - - /** - * - * t-s: Task / engage request. Structured payload carried via the new - * TaskRequest typed variant. - * - * @generated from enum value: CotType_t_s = 124; - */ - CotType_t_s = 124, - - /** - * - * m-t-t: TAKTALK voice/text chat message. Payload carried via the - * TakTalkMessage typed variant (text, chatroom_id, lang, from_voice). - * - * @generated from enum value: CotType_m_t_t = 125; - */ - CotType_m_t_t = 125, - - /** - * - * y-: TAKTALK room/membership broadcast. Payload carried via the - * TakTalkRoomData typed variant (sender_callsign, room_id, room_name, - * participants). The CoT type literally has a trailing dash and no - * second atom — not a typo. - * - * @generated from enum value: CotType_y = 126; - */ - CotType_y = 126, -} - -/** - * Describes the enum meshtastic.CotType. - */ -export const CotTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 3); - -/** - * - * Geopoint and altitude source - * - * @generated from enum meshtastic.GeoPointSource - */ -export enum GeoPointSource { - /** - * - * Unspecified - * - * @generated from enum value: GeoPointSource_Unspecified = 0; - */ - GeoPointSource_Unspecified = 0, - - /** - * - * GPS derived - * - * @generated from enum value: GeoPointSource_GPS = 1; - */ - GeoPointSource_GPS = 1, - - /** - * - * User entered - * - * @generated from enum value: GeoPointSource_USER = 2; - */ - GeoPointSource_USER = 2, - - /** - * - * Network/external - * - * @generated from enum value: GeoPointSource_NETWORK = 3; - */ - GeoPointSource_NETWORK = 3, -} - -/** - * Describes the enum meshtastic.GeoPointSource. - */ -export const GeoPointSourceSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_atak, 4); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/cannedmessages_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/cannedmessages_pb.ts deleted file mode 100644 index d7c160423..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/cannedmessages_pb.ts +++ /dev/null @@ -1,37 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/cannedmessages.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; -import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/cannedmessages.proto. - */ -export const file_meshtastic_cannedmessages: GenFile = /*@__PURE__*/ - fileDesc("Ch9tZXNodGFzdGljL2Nhbm5lZG1lc3NhZ2VzLnByb3RvEgptZXNodGFzdGljIi0KGUNhbm5lZE1lc3NhZ2VNb2R1bGVDb25maWcSEAoIbWVzc2FnZXMYASABKAlCbwoUb3JnLm1lc2h0YXN0aWMucHJvdG9CGUNhbm5lZE1lc3NhZ2VDb25maWdQcm90b3NaImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAGIGcHJvdG8z"); - -/** - * - * Canned message module configuration. - * - * @generated from message meshtastic.CannedMessageModuleConfig - */ -export type CannedMessageModuleConfig = Message<"meshtastic.CannedMessageModuleConfig"> & { - /** - * - * Predefined messages for canned message module separated by '|' characters. - * - * @generated from field: string messages = 1; - */ - messages: string; -}; - -/** - * Describes the message meshtastic.CannedMessageModuleConfig. - * Use `create(CannedMessageModuleConfigSchema)` to create a new message. - */ -export const CannedMessageModuleConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_cannedmessages, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/channel_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/channel_pb.ts deleted file mode 100644 index 931366ee7..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/channel_pb.ts +++ /dev/null @@ -1,248 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/channel.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -// trunk-ignore(buf-lint/PACKAGE_DIRECTORY_MATCH) - -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/channel.proto. - */ -export const file_meshtastic_channel: GenFile = /*@__PURE__*/ - fileDesc("ChhtZXNodGFzdGljL2NoYW5uZWwucHJvdG8SCm1lc2h0YXN0aWMiuAEKD0NoYW5uZWxTZXR0aW5ncxIXCgtjaGFubmVsX251bRgBIAEoDUICGAESCwoDcHNrGAIgASgMEgwKBG5hbWUYAyABKAkSCgoCaWQYBCABKAcSFgoOdXBsaW5rX2VuYWJsZWQYBSABKAgSGAoQZG93bmxpbmtfZW5hYmxlZBgGIAEoCBIzCg9tb2R1bGVfc2V0dGluZ3MYByABKAsyGi5tZXNodGFzdGljLk1vZHVsZVNldHRpbmdzIj4KDk1vZHVsZVNldHRpbmdzEhoKEnBvc2l0aW9uX3ByZWNpc2lvbhgBIAEoDRIQCghpc19tdXRlZBgCIAEoCCKhAQoHQ2hhbm5lbBINCgVpbmRleBgBIAEoBRItCghzZXR0aW5ncxgCIAEoCzIbLm1lc2h0YXN0aWMuQ2hhbm5lbFNldHRpbmdzEiYKBHJvbGUYAyABKA4yGC5tZXNodGFzdGljLkNoYW5uZWwuUm9sZSIwCgRSb2xlEgwKCERJU0FCTEVEEAASCwoHUFJJTUFSWRABEg0KCVNFQ09OREFSWRACQmMKFG9yZy5tZXNodGFzdGljLnByb3RvQg1DaGFubmVsUHJvdG9zWiJnaXRodWIuY29tL21lc2h0YXN0aWMvZ28vZ2VuZXJhdGVkqgIUTWVzaHRhc3RpYy5Qcm90b2J1ZnO6AgBiBnByb3RvMw"); - -/** - * - * This information can be encoded as a QRcode/url so that other users can configure - * their radio to join the same channel. - * A note about how channel names are shown to users: channelname-X - * poundsymbol is a prefix used to indicate this is a channel name (idea from @professr). - * Where X is a letter from A-Z (base 26) representing a hash of the PSK for this - * channel - so that if the user changes anything about the channel (which does - * force a new PSK) this letter will also change. Thus preventing user confusion if - * two friends try to type in a channel name of "BobsChan" and then can't talk - * because their PSKs will be different. - * The PSK is hashed into this letter by "0x41 + [xor all bytes of the psk ] modulo 26" - * This also allows the option of someday if people have the PSK off (zero), the - * users COULD type in a channel name and be able to talk. - * FIXME: Add description of multi-channel support and how primary vs secondary channels are used. - * FIXME: explain how apps use channels for security. - * explain how remote settings and remote gpio are managed as an example - * - * @generated from message meshtastic.ChannelSettings - */ -export type ChannelSettings = Message<"meshtastic.ChannelSettings"> & { - /** - * - * Deprecated in favor of LoraConfig.channel_num - * - * @generated from field: uint32 channel_num = 1 [deprecated = true]; - * @deprecated - */ - channelNum: number; - - /** - * - * A simple pre-shared key for now for crypto. - * Must be either 0 bytes (no crypto), 16 bytes (AES128), or 32 bytes (AES256). - * A special shorthand is used for 1 byte long psks. - * These psks should be treated as only minimally secure, - * because they are listed in this source code. - * Those bytes are mapped using the following scheme: - * `0` = No crypto - * `1` = The special "default" channel key: {0xd4, 0xf1, 0xbb, 0x3a, 0x20, 0x29, 0x07, 0x59, 0xf0, 0xbc, 0xff, 0xab, 0xcf, 0x4e, 0x69, 0x01} - * `2` through 10 = The default channel key, except with 1 through 9 added to the last byte. - * Shown to user as simple1 through 10 - * - * @generated from field: bytes psk = 2; - */ - psk: Uint8Array; - - /** - * - * A SHORT name that will be packed into the URL. - * Less than 12 bytes. - * Something for end users to call the channel - * If this is the empty string it is assumed that this channel - * is the special (minimally secure) "Default"channel. - * In user interfaces it should be rendered as a local language translation of "X". - * For channel_num hashing empty string will be treated as "X". - * Where "X" is selected based on the English words listed above for ModemPreset - * - * @generated from field: string name = 3; - */ - name: string; - - /** - * - * Used to construct a globally unique channel ID. - * The full globally unique ID will be: "name.id" where ID is shown as base36. - * Assuming that the number of meshtastic users is below 20K (true for a long time) - * the chance of this 64 bit random number colliding with anyone else is super low. - * And the penalty for collision is low as well, it just means that anyone trying to decrypt channel messages might need to - * try multiple candidate channels. - * Any time a non wire compatible change is made to a channel, this field should be regenerated. - * There are a small number of 'special' globally known (and fairly) insecure standard channels. - * Those channels do not have a numeric id included in the settings, but instead it is pulled from - * a table of well known IDs. - * (see Well Known Channels FIXME) - * - * @generated from field: fixed32 id = 4; - */ - id: number; - - /** - * - * If true, messages on the mesh will be sent to the *public* internet by any gateway ndoe - * - * @generated from field: bool uplink_enabled = 5; - */ - uplinkEnabled: boolean; - - /** - * - * If true, messages seen on the internet will be forwarded to the local mesh. - * - * @generated from field: bool downlink_enabled = 6; - */ - downlinkEnabled: boolean; - - /** - * - * Per-channel module settings. - * - * @generated from field: meshtastic.ModuleSettings module_settings = 7; - */ - moduleSettings?: ModuleSettings | undefined; -}; - -/** - * Describes the message meshtastic.ChannelSettings. - * Use `create(ChannelSettingsSchema)` to create a new message. - */ -export const ChannelSettingsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_channel, 0); - -/** - * - * This message is specifically for modules to store per-channel configuration data. - * - * @generated from message meshtastic.ModuleSettings - */ -export type ModuleSettings = Message<"meshtastic.ModuleSettings"> & { - /** - * - * Bits of precision for the location sent in position packets. - * - * @generated from field: uint32 position_precision = 1; - */ - positionPrecision: number; - - /** - * - * Controls whether or not the client / device should mute the current channel - * Useful for noisy public channels you don't necessarily want to disable - * - * @generated from field: bool is_muted = 2; - */ - isMuted: boolean; -}; - -/** - * Describes the message meshtastic.ModuleSettings. - * Use `create(ModuleSettingsSchema)` to create a new message. - */ -export const ModuleSettingsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_channel, 1); - -/** - * - * A pair of a channel number, mode and the (sharable) settings for that channel - * - * @generated from message meshtastic.Channel - */ -export type Channel = Message<"meshtastic.Channel"> & { - /** - * - * The index of this channel in the channel table (from 0 to MAX_NUM_CHANNELS-1) - * (Someday - not currently implemented) An index of -1 could be used to mean "set by name", - * in which case the target node will find and set the channel by settings.name. - * - * @generated from field: int32 index = 1; - */ - index: number; - - /** - * - * The new settings, or NULL to disable that channel - * - * @generated from field: meshtastic.ChannelSettings settings = 2; - */ - settings?: ChannelSettings | undefined; - - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.Channel.Role role = 3; - */ - role: Channel_Role; -}; - -/** - * Describes the message meshtastic.Channel. - * Use `create(ChannelSchema)` to create a new message. - */ -export const ChannelSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_channel, 2); - -/** - * - * How this channel is being used (or not). - * Note: this field is an enum to give us options for the future. - * In particular, someday we might make a 'SCANNING' option. - * SCANNING channels could have different frequencies and the radio would - * occasionally check that freq to see if anything is being transmitted. - * For devices that have multiple physical radios attached, we could keep multiple PRIMARY/SCANNING channels active at once to allow - * cross band routing as needed. - * If a device has only a single radio (the common case) only one channel can be PRIMARY at a time - * (but any number of SECONDARY channels can't be sent received on that common frequency) - * - * @generated from enum meshtastic.Channel.Role - */ -export enum Channel_Role { - /** - * - * This channel is not in use right now - * - * @generated from enum value: DISABLED = 0; - */ - DISABLED = 0, - - /** - * - * This channel is used to set the frequency for the radio - all other enabled channels must be SECONDARY - * - * @generated from enum value: PRIMARY = 1; - */ - PRIMARY = 1, - - /** - * - * Secondary channels are only used for encryption/decryption/authentication purposes. - * Their radio settings (freq etc) are ignored, only psk is used. - * - * @generated from enum value: SECONDARY = 2; - */ - SECONDARY = 2, -} - -/** - * Describes the enum meshtastic.Channel.Role. - */ -export const Channel_RoleSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_channel, 2, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/clientonly_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/clientonly_pb.ts deleted file mode 100644 index 878ab6638..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/clientonly_pb.ts +++ /dev/null @@ -1,98 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/clientonly.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; -import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; -import type { LocalConfig, LocalModuleConfig } from "./localonly_pb"; -import { file_meshtastic_localonly } from "./localonly_pb"; -import type { Position } from "./mesh_pb"; -import { file_meshtastic_mesh } from "./mesh_pb"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/clientonly.proto. - */ -export const file_meshtastic_clientonly: GenFile = /*@__PURE__*/ - fileDesc("ChttZXNodGFzdGljL2NsaWVudG9ubHkucHJvdG8SCm1lc2h0YXN0aWMiqQMKDURldmljZVByb2ZpbGUSFgoJbG9uZ19uYW1lGAEgASgJSACIAQESFwoKc2hvcnRfbmFtZRgCIAEoCUgBiAEBEhgKC2NoYW5uZWxfdXJsGAMgASgJSAKIAQESLAoGY29uZmlnGAQgASgLMhcubWVzaHRhc3RpYy5Mb2NhbENvbmZpZ0gDiAEBEjkKDW1vZHVsZV9jb25maWcYBSABKAsyHS5tZXNodGFzdGljLkxvY2FsTW9kdWxlQ29uZmlnSASIAQESMQoOZml4ZWRfcG9zaXRpb24YBiABKAsyFC5tZXNodGFzdGljLlBvc2l0aW9uSAWIAQESFQoIcmluZ3RvbmUYByABKAlIBogBARIcCg9jYW5uZWRfbWVzc2FnZXMYCCABKAlIB4gBAUIMCgpfbG9uZ19uYW1lQg0KC19zaG9ydF9uYW1lQg4KDF9jaGFubmVsX3VybEIJCgdfY29uZmlnQhAKDl9tb2R1bGVfY29uZmlnQhEKD19maXhlZF9wb3NpdGlvbkILCglfcmluZ3RvbmVCEgoQX2Nhbm5lZF9tZXNzYWdlc0JmChRvcmcubWVzaHRhc3RpYy5wcm90b0IQQ2xpZW50T25seVByb3Rvc1oiZ2l0aHViLmNvbS9tZXNodGFzdGljL2dvL2dlbmVyYXRlZKoCFE1lc2h0YXN0aWMuUHJvdG9idWZzugIAYgZwcm90bzM", [file_meshtastic_localonly, file_meshtastic_mesh]); - -/** - * - * This abstraction is used to contain any configuration for provisioning a node on any client. - * It is useful for importing and exporting configurations. - * - * @generated from message meshtastic.DeviceProfile - */ -export type DeviceProfile = Message<"meshtastic.DeviceProfile"> & { - /** - * - * Long name for the node - * - * @generated from field: optional string long_name = 1; - */ - longName?: string | undefined; - - /** - * - * Short name of the node - * - * @generated from field: optional string short_name = 2; - */ - shortName?: string | undefined; - - /** - * - * The url of the channels from our node - * - * @generated from field: optional string channel_url = 3; - */ - channelUrl?: string | undefined; - - /** - * - * The Config of the node - * - * @generated from field: optional meshtastic.LocalConfig config = 4; - */ - config?: LocalConfig | undefined; - - /** - * - * The ModuleConfig of the node - * - * @generated from field: optional meshtastic.LocalModuleConfig module_config = 5; - */ - moduleConfig?: LocalModuleConfig | undefined; - - /** - * - * Fixed position data - * - * @generated from field: optional meshtastic.Position fixed_position = 6; - */ - fixedPosition?: Position | undefined; - - /** - * - * Ringtone for ExternalNotification - * - * @generated from field: optional string ringtone = 7; - */ - ringtone?: string | undefined; - - /** - * - * Predefined messages for CannedMessage - * - * @generated from field: optional string canned_messages = 8; - */ - cannedMessages?: string | undefined; -}; - -/** - * Describes the message meshtastic.DeviceProfile. - * Use `create(DeviceProfileSchema)` to create a new message. - */ -export const DeviceProfileSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_clientonly, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/config_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/config_pb.ts deleted file mode 100644 index 0b8be50a2..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/config_pb.ts +++ /dev/null @@ -1,2314 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/config.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 { DeviceUIConfig } from "./device_ui_pb"; -import { file_meshtastic_device_ui } from "./device_ui_pb"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/config.proto. - */ -export const file_meshtastic_config: GenFile = /*@__PURE__*/ - fileDesc("ChdtZXNodGFzdGljL2NvbmZpZy5wcm90bxIKbWVzaHRhc3RpYyLlLAoGQ29uZmlnEjEKBmRldmljZRgBIAEoCzIfLm1lc2h0YXN0aWMuQ29uZmlnLkRldmljZUNvbmZpZ0gAEjUKCHBvc2l0aW9uGAIgASgLMiEubWVzaHRhc3RpYy5Db25maWcuUG9zaXRpb25Db25maWdIABIvCgVwb3dlchgDIAEoCzIeLm1lc2h0YXN0aWMuQ29uZmlnLlBvd2VyQ29uZmlnSAASMwoHbmV0d29yaxgEIAEoCzIgLm1lc2h0YXN0aWMuQ29uZmlnLk5ldHdvcmtDb25maWdIABIzCgdkaXNwbGF5GAUgASgLMiAubWVzaHRhc3RpYy5Db25maWcuRGlzcGxheUNvbmZpZ0gAEi0KBGxvcmEYBiABKAsyHS5tZXNodGFzdGljLkNvbmZpZy5Mb1JhQ29uZmlnSAASNwoJYmx1ZXRvb3RoGAcgASgLMiIubWVzaHRhc3RpYy5Db25maWcuQmx1ZXRvb3RoQ29uZmlnSAASNQoIc2VjdXJpdHkYCCABKAsyIS5tZXNodGFzdGljLkNvbmZpZy5TZWN1cml0eUNvbmZpZ0gAEjkKCnNlc3Npb25rZXkYCSABKAsyIy5tZXNodGFzdGljLkNvbmZpZy5TZXNzaW9ua2V5Q29uZmlnSAASLwoJZGV2aWNlX3VpGAogASgLMhoubWVzaHRhc3RpYy5EZXZpY2VVSUNvbmZpZ0gAGvYGCgxEZXZpY2VDb25maWcSMgoEcm9sZRgBIAEoDjIkLm1lc2h0YXN0aWMuQ29uZmlnLkRldmljZUNvbmZpZy5Sb2xlEhoKDnNlcmlhbF9lbmFibGVkGAIgASgIQgIYARITCgtidXR0b25fZ3BpbxgEIAEoDRITCgtidXp6ZXJfZ3BpbxgFIAEoDRJJChByZWJyb2FkY2FzdF9tb2RlGAYgASgOMi8ubWVzaHRhc3RpYy5Db25maWcuRGV2aWNlQ29uZmlnLlJlYnJvYWRjYXN0TW9kZRIgChhub2RlX2luZm9fYnJvYWRjYXN0X3NlY3MYByABKA0SIgoaZG91YmxlX3RhcF9hc19idXR0b25fcHJlc3MYCCABKAgSFgoKaXNfbWFuYWdlZBgJIAEoCEICGAESHAoUZGlzYWJsZV90cmlwbGVfY2xpY2sYCiABKAgSDQoFdHpkZWYYCyABKAkSHgoWbGVkX2hlYXJ0YmVhdF9kaXNhYmxlZBgMIAEoCBI/CgtidXp6ZXJfbW9kZRgNIAEoDjIqLm1lc2h0YXN0aWMuQ29uZmlnLkRldmljZUNvbmZpZy5CdXp6ZXJNb2RlItQBCgRSb2xlEgoKBkNMSUVOVBAAEg8KC0NMSUVOVF9NVVRFEAESCgoGUk9VVEVSEAISFQoNUk9VVEVSX0NMSUVOVBADGgIIARIQCghSRVBFQVRFUhAEGgIIARILCgdUUkFDS0VSEAUSCgoGU0VOU09SEAYSBwoDVEFLEAcSEQoNQ0xJRU5UX0hJRERFThAIEhIKDkxPU1RfQU5EX0ZPVU5EEAkSDwoLVEFLX1RSQUNLRVIQChIPCgtST1VURVJfTEFURRALEg8KC0NMSUVOVF9CQVNFEAwicwoPUmVicm9hZGNhc3RNb2RlEgcKA0FMTBAAEhUKEUFMTF9TS0lQX0RFQ09ESU5HEAESDgoKTE9DQUxfT05MWRACEg4KCktOT1dOX09OTFkQAxIICgROT05FEAQSFgoSQ09SRV9QT1JUTlVNU19PTkxZEAUiaQoKQnV6emVyTW9kZRIPCgtBTExfRU5BQkxFRBAAEgwKCERJU0FCTEVEEAESFgoSTk9USUZJQ0FUSU9OU19PTkxZEAISDwoLU1lTVEVNX09OTFkQAxITCg9ESVJFQ1RfTVNHX09OTFkQBBqRBQoOUG9zaXRpb25Db25maWcSHwoXcG9zaXRpb25fYnJvYWRjYXN0X3NlY3MYASABKA0SKAogcG9zaXRpb25fYnJvYWRjYXN0X3NtYXJ0X2VuYWJsZWQYAiABKAgSFgoOZml4ZWRfcG9zaXRpb24YAyABKAgSFwoLZ3BzX2VuYWJsZWQYBCABKAhCAhgBEhsKE2dwc191cGRhdGVfaW50ZXJ2YWwYBSABKA0SHAoQZ3BzX2F0dGVtcHRfdGltZRgGIAEoDUICGAESFgoOcG9zaXRpb25fZmxhZ3MYByABKA0SDwoHcnhfZ3BpbxgIIAEoDRIPCgd0eF9ncGlvGAkgASgNEigKIGJyb2FkY2FzdF9zbWFydF9taW5pbXVtX2Rpc3RhbmNlGAogASgNEi0KJWJyb2FkY2FzdF9zbWFydF9taW5pbXVtX2ludGVydmFsX3NlY3MYCyABKA0SEwoLZ3BzX2VuX2dwaW8YDCABKA0SOwoIZ3BzX21vZGUYDSABKA4yKS5tZXNodGFzdGljLkNvbmZpZy5Qb3NpdGlvbkNvbmZpZy5HcHNNb2RlIqsBCg1Qb3NpdGlvbkZsYWdzEgkKBVVOU0VUEAASDAoIQUxUSVRVREUQARIQCgxBTFRJVFVERV9NU0wQAhIWChJHRU9JREFMX1NFUEFSQVRJT04QBBIHCgNET1AQCBIJCgVIVkRPUBAQEg0KCVNBVElOVklFVxAgEgoKBlNFUV9OTxBAEg4KCVRJTUVTVEFNUBCAARIMCgdIRUFESU5HEIACEgoKBVNQRUVEEIAEIjUKB0dwc01vZGUSDAoIRElTQUJMRUQQABILCgdFTkFCTEVEEAESDwoLTk9UX1BSRVNFTlQQAhqEAgoLUG93ZXJDb25maWcSFwoPaXNfcG93ZXJfc2F2aW5nGAEgASgIEiYKHm9uX2JhdHRlcnlfc2h1dGRvd25fYWZ0ZXJfc2VjcxgCIAEoDRIfChdhZGNfbXVsdGlwbGllcl9vdmVycmlkZRgDIAEoAhIbChN3YWl0X2JsdWV0b290aF9zZWNzGAQgASgNEhAKCHNkc19zZWNzGAYgASgNEg8KB2xzX3NlY3MYByABKA0SFQoNbWluX3dha2Vfc2VjcxgIIAEoDRIiChpkZXZpY2VfYmF0dGVyeV9pbmFfYWRkcmVzcxgJIAEoDRIYChBwb3dlcm1vbl9lbmFibGVzGCAgASgEGuUDCg1OZXR3b3JrQ29uZmlnEhQKDHdpZmlfZW5hYmxlZBgBIAEoCBIRCgl3aWZpX3NzaWQYAyABKAkSEAoId2lmaV9wc2sYBCABKAkSEgoKbnRwX3NlcnZlchgFIAEoCRITCgtldGhfZW5hYmxlZBgGIAEoCBJCCgxhZGRyZXNzX21vZGUYByABKA4yLC5tZXNodGFzdGljLkNvbmZpZy5OZXR3b3JrQ29uZmlnLkFkZHJlc3NNb2RlEkAKC2lwdjRfY29uZmlnGAggASgLMisubWVzaHRhc3RpYy5Db25maWcuTmV0d29ya0NvbmZpZy5JcFY0Q29uZmlnEhYKDnJzeXNsb2dfc2VydmVyGAkgASgJEhkKEWVuYWJsZWRfcHJvdG9jb2xzGAogASgNEhQKDGlwdjZfZW5hYmxlZBgLIAEoCBpGCgpJcFY0Q29uZmlnEgoKAmlwGAEgASgHEg8KB2dhdGV3YXkYAiABKAcSDgoGc3VibmV0GAMgASgHEgsKA2RucxgEIAEoByIjCgtBZGRyZXNzTW9kZRIICgRESENQEAASCgoGU1RBVElDEAEiNAoNUHJvdG9jb2xGbGFncxIQCgxOT19CUk9BRENBU1QQABIRCg1VRFBfQlJPQURDQVNUEAEawggKDURpc3BsYXlDb25maWcSFgoOc2NyZWVuX29uX3NlY3MYASABKA0SVgoKZ3BzX2Zvcm1hdBgCIAEoDjI+Lm1lc2h0YXN0aWMuQ29uZmlnLkRpc3BsYXlDb25maWcuRGVwcmVjYXRlZEdwc0Nvb3JkaW5hdGVGb3JtYXRCAhgBEiEKGWF1dG9fc2NyZWVuX2Nhcm91c2VsX3NlY3MYAyABKA0SHQoRY29tcGFzc19ub3J0aF90b3AYBCABKAhCAhgBEhMKC2ZsaXBfc2NyZWVuGAUgASgIEjwKBXVuaXRzGAYgASgOMi0ubWVzaHRhc3RpYy5Db25maWcuRGlzcGxheUNvbmZpZy5EaXNwbGF5VW5pdHMSNwoEb2xlZBgHIAEoDjIpLm1lc2h0YXN0aWMuQ29uZmlnLkRpc3BsYXlDb25maWcuT2xlZFR5cGUSQQoLZGlzcGxheW1vZGUYCCABKA4yLC5tZXNodGFzdGljLkNvbmZpZy5EaXNwbGF5Q29uZmlnLkRpc3BsYXlNb2RlEhQKDGhlYWRpbmdfYm9sZBgJIAEoCBIdChV3YWtlX29uX3RhcF9vcl9tb3Rpb24YCiABKAgSUAoTY29tcGFzc19vcmllbnRhdGlvbhgLIAEoDjIzLm1lc2h0YXN0aWMuQ29uZmlnLkRpc3BsYXlDb25maWcuQ29tcGFzc09yaWVudGF0aW9uEhUKDXVzZV8xMmhfY2xvY2sYDCABKAgSGgoSdXNlX2xvbmdfbm9kZV9uYW1lGA0gASgIEh4KFmVuYWJsZV9tZXNzYWdlX2J1YmJsZXMYDiABKAgiKwodRGVwcmVjYXRlZEdwc0Nvb3JkaW5hdGVGb3JtYXQSCgoGVU5VU0VEEAAiKAoMRGlzcGxheVVuaXRzEgoKBk1FVFJJQxAAEgwKCElNUEVSSUFMEAEifwoIT2xlZFR5cGUSDQoJT0xFRF9BVVRPEAASEAoMT0xFRF9TU0QxMzA2EAESDwoLT0xFRF9TSDExMDYQAhIPCgtPTEVEX1NIMTEwNxADEhcKE09MRURfU0gxMTA3XzEyOF8xMjgQBBIXChNPTEVEX1NIMTEwN19ST1RBVEVEEAUiQQoLRGlzcGxheU1vZGUSCwoHREVGQVVMVBAAEgwKCFRXT0NPTE9SEAESDAoISU5WRVJURUQQAhIJCgVDT0xPUhADIroBChJDb21wYXNzT3JpZW50YXRpb24SDQoJREVHUkVFU18wEAASDgoKREVHUkVFU185MBABEg8KC0RFR1JFRVNfMTgwEAISDwoLREVHUkVFU18yNzAQAxIWChJERUdSRUVTXzBfSU5WRVJURUQQBBIXChNERUdSRUVTXzkwX0lOVkVSVEVEEAUSGAoUREVHUkVFU18xODBfSU5WRVJURUQQBhIYChRERUdSRUVTXzI3MF9JTlZFUlRFRBAHGvkKCgpMb1JhQ29uZmlnEhIKCnVzZV9wcmVzZXQYASABKAgSPwoMbW9kZW1fcHJlc2V0GAIgASgOMikubWVzaHRhc3RpYy5Db25maWcuTG9SYUNvbmZpZy5Nb2RlbVByZXNldBIRCgliYW5kd2lkdGgYAyABKA0SFQoNc3ByZWFkX2ZhY3RvchgEIAEoDRITCgtjb2RpbmdfcmF0ZRgFIAEoDRIYChBmcmVxdWVuY3lfb2Zmc2V0GAYgASgCEjgKBnJlZ2lvbhgHIAEoDjIoLm1lc2h0YXN0aWMuQ29uZmlnLkxvUmFDb25maWcuUmVnaW9uQ29kZRIRCglob3BfbGltaXQYCCABKA0SEgoKdHhfZW5hYmxlZBgJIAEoCBIQCgh0eF9wb3dlchgKIAEoBRITCgtjaGFubmVsX251bRgLIAEoDRIbChNvdmVycmlkZV9kdXR5X2N5Y2xlGAwgASgIEh4KFnN4MTI2eF9yeF9ib29zdGVkX2dhaW4YDSABKAgSGgoSb3ZlcnJpZGVfZnJlcXVlbmN5GA4gASgCEhcKD3BhX2Zhbl9kaXNhYmxlZBgPIAEoCBIXCg9pZ25vcmVfaW5jb21pbmcYZyADKA0SEwoLaWdub3JlX21xdHQYaCABKAgSGQoRY29uZmlnX29rX3RvX21xdHQYaSABKAgSQAoMZmVtX2xuYV9tb2RlGGogASgOMioubWVzaHRhc3RpYy5Db25maWcuTG9SYUNvbmZpZy5GRU1fTE5BX01vZGUSFwoPc2VyaWFsX2hhbF9vbmx5GGsgASgIIsQDCgpSZWdpb25Db2RlEgkKBVVOU0VUEAASBgoCVVMQARIKCgZFVV80MzMQAhIKCgZFVV84NjgQAxIGCgJDThAEEgYKAkpQEAUSBwoDQU5aEAYSBgoCS1IQBxIGCgJUVxAIEgYKAlJVEAkSBgoCSU4QChIKCgZOWl84NjUQCxIGCgJUSBAMEgsKB0xPUkFfMjQQDRIKCgZVQV80MzMQDhIKCgZVQV84NjgQDxIKCgZNWV80MzMQEBIKCgZNWV85MTkQERIKCgZTR185MjMQEhIKCgZQSF80MzMQExIKCgZQSF84NjgQFBIKCgZQSF85MTUQFRILCgdBTlpfNDMzEBYSCgoGS1pfNDMzEBcSCgoGS1pfODYzEBgSCgoGTlBfODY1EBkSCgoGQlJfOTAyEBoSCwoHSVRVMV8yTRAbEgsKB0lUVTJfMk0QHBIKCgZFVV84NjYQHRIKCgZFVV84NzQQHhIKCgZFVV85MTcQHxIMCghFVV9OXzg2OBAgEgsKB0lUVTNfMk0QIRINCglJVFUxXzcwQ00QIhINCglJVFUyXzcwQ00QIxINCglJVFUzXzcwQ00QJBIOCgpJVFUyXzEyNUNNECUimwIKC01vZGVtUHJlc2V0Eg0KCUxPTkdfRkFTVBAAEhEKCUxPTkdfU0xPVxABGgIIARIWCg5WRVJZX0xPTkdfU0xPVxACGgIIARIPCgtNRURJVU1fU0xPVxADEg8KC01FRElVTV9GQVNUEAQSDgoKU0hPUlRfU0xPVxAFEg4KClNIT1JUX0ZBU1QQBhIRCg1MT05HX01PREVSQVRFEAcSDwoLU0hPUlRfVFVSQk8QCBIOCgpMT05HX1RVUkJPEAkSDQoJTElURV9GQVNUEAoSDQoJTElURV9TTE9XEAsSDwoLTkFSUk9XX0ZBU1QQDBIPCgtOQVJST1dfU0xPVxANEg0KCVRJTllfRkFTVBAOEg0KCVRJTllfU0xPVxAPIjoKDEZFTV9MTkFfTW9kZRIMCghESVNBQkxFRBAAEgsKB0VOQUJMRUQQARIPCgtOT1RfUFJFU0VOVBACGq0BCg9CbHVldG9vdGhDb25maWcSDwoHZW5hYmxlZBgBIAEoCBI8CgRtb2RlGAIgASgOMi4ubWVzaHRhc3RpYy5Db25maWcuQmx1ZXRvb3RoQ29uZmlnLlBhaXJpbmdNb2RlEhEKCWZpeGVkX3BpbhgDIAEoDSI4CgtQYWlyaW5nTW9kZRIOCgpSQU5ET01fUElOEAASDQoJRklYRURfUElOEAESCgoGTk9fUElOEAIatgEKDlNlY3VyaXR5Q29uZmlnEhIKCnB1YmxpY19rZXkYASABKAwSEwoLcHJpdmF0ZV9rZXkYAiABKAwSEQoJYWRtaW5fa2V5GAMgAygMEhIKCmlzX21hbmFnZWQYBCABKAgSFgoOc2VyaWFsX2VuYWJsZWQYBSABKAgSHQoVZGVidWdfbG9nX2FwaV9lbmFibGVkGAYgASgIEh0KFWFkbWluX2NoYW5uZWxfZW5hYmxlZBgIIAEoCBoSChBTZXNzaW9ua2V5Q29uZmlnQhEKD3BheWxvYWRfdmFyaWFudEJiChRvcmcubWVzaHRhc3RpYy5wcm90b0IMQ29uZmlnUHJvdG9zWiJnaXRodWIuY29tL21lc2h0YXN0aWMvZ28vZ2VuZXJhdGVkqgIUTWVzaHRhc3RpYy5Qcm90b2J1ZnO6AgBiBnByb3RvMw", [file_meshtastic_device_ui]); - -/** - * @generated from message meshtastic.Config - */ -export type Config = Message<"meshtastic.Config"> & { - /** - * - * Payload Variant - * - * @generated from oneof meshtastic.Config.payload_variant - */ - payloadVariant: { - /** - * @generated from field: meshtastic.Config.DeviceConfig device = 1; - */ - value: Config_DeviceConfig; - case: "device"; - } | { - /** - * @generated from field: meshtastic.Config.PositionConfig position = 2; - */ - value: Config_PositionConfig; - case: "position"; - } | { - /** - * @generated from field: meshtastic.Config.PowerConfig power = 3; - */ - value: Config_PowerConfig; - case: "power"; - } | { - /** - * @generated from field: meshtastic.Config.NetworkConfig network = 4; - */ - value: Config_NetworkConfig; - case: "network"; - } | { - /** - * @generated from field: meshtastic.Config.DisplayConfig display = 5; - */ - value: Config_DisplayConfig; - case: "display"; - } | { - /** - * @generated from field: meshtastic.Config.LoRaConfig lora = 6; - */ - value: Config_LoRaConfig; - case: "lora"; - } | { - /** - * @generated from field: meshtastic.Config.BluetoothConfig bluetooth = 7; - */ - value: Config_BluetoothConfig; - case: "bluetooth"; - } | { - /** - * @generated from field: meshtastic.Config.SecurityConfig security = 8; - */ - value: Config_SecurityConfig; - case: "security"; - } | { - /** - * @generated from field: meshtastic.Config.SessionkeyConfig sessionkey = 9; - */ - value: Config_SessionkeyConfig; - case: "sessionkey"; - } | { - /** - * @generated from field: meshtastic.DeviceUIConfig device_ui = 10; - */ - value: DeviceUIConfig; - case: "deviceUi"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.Config. - * Use `create(ConfigSchema)` to create a new message. - */ -export const ConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0); - -/** - * - * Configuration - * - * @generated from message meshtastic.Config.DeviceConfig - */ -export type Config_DeviceConfig = Message<"meshtastic.Config.DeviceConfig"> & { - /** - * - * Sets the role of node - * - * @generated from field: meshtastic.Config.DeviceConfig.Role role = 1; - */ - role: Config_DeviceConfig_Role; - - /** - * - * Disabling this will disable the SerialConsole by not initilizing the StreamAPI - * Moved to SecurityConfig - * - * @generated from field: bool serial_enabled = 2 [deprecated = true]; - * @deprecated - */ - serialEnabled: boolean; - - /** - * - * For boards without a hard wired button, this is the pin number that will be used - * Boards that have more than one button can swap the function with this one. defaults to BUTTON_PIN if defined. - * - * @generated from field: uint32 button_gpio = 4; - */ - buttonGpio: number; - - /** - * - * For boards without a PWM buzzer, this is the pin number that will be used - * Defaults to PIN_BUZZER if defined. - * - * @generated from field: uint32 buzzer_gpio = 5; - */ - buzzerGpio: number; - - /** - * - * Sets the role of node - * - * @generated from field: meshtastic.Config.DeviceConfig.RebroadcastMode rebroadcast_mode = 6; - */ - rebroadcastMode: Config_DeviceConfig_RebroadcastMode; - - /** - * - * Send our nodeinfo this often - * Defaults to 900 Seconds (15 minutes) - * - * @generated from field: uint32 node_info_broadcast_secs = 7; - */ - nodeInfoBroadcastSecs: number; - - /** - * - * Treat double tap interrupt on supported accelerometers as a button press if set to true - * - * @generated from field: bool double_tap_as_button_press = 8; - */ - doubleTapAsButtonPress: boolean; - - /** - * - * If true, device is considered to be "managed" by a mesh administrator - * Clients should then limit available configuration and administrative options inside the user interface - * Moved to SecurityConfig - * - * @generated from field: bool is_managed = 9 [deprecated = true]; - * @deprecated - */ - isManaged: boolean; - - /** - * - * Disables the triple-press of user button to enable or disable GPS - * - * @generated from field: bool disable_triple_click = 10; - */ - disableTripleClick: boolean; - - /** - * - * POSIX Timezone definition string from https://github.com/nayarsystems/posix_tz_db/blob/master/zones.csv. - * - * @generated from field: string tzdef = 11; - */ - tzdef: string; - - /** - * - * If true, disable the default blinking LED (LED_PIN) behavior on the device - * - * @generated from field: bool led_heartbeat_disabled = 12; - */ - ledHeartbeatDisabled: boolean; - - /** - * - * Controls buzzer behavior for audio feedback - * Defaults to ENABLED - * - * @generated from field: meshtastic.Config.DeviceConfig.BuzzerMode buzzer_mode = 13; - */ - buzzerMode: Config_DeviceConfig_BuzzerMode; -}; - -/** - * Describes the message meshtastic.Config.DeviceConfig. - * Use `create(Config_DeviceConfigSchema)` to create a new message. - */ -export const Config_DeviceConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0, 0); - -/** - * - * Defines the device's role on the Mesh network - * - * @generated from enum meshtastic.Config.DeviceConfig.Role - */ -export enum Config_DeviceConfig_Role { - /** - * - * Description: App connected or stand alone messaging device. - * Technical Details: Default Role - * - * @generated from enum value: CLIENT = 0; - */ - CLIENT = 0, - - /** - * - * Description: Device that does not forward packets from other devices. - * - * @generated from enum value: CLIENT_MUTE = 1; - */ - CLIENT_MUTE = 1, - - /** - * - * Description: Infrastructure node for extending network coverage by relaying messages. Visible in Nodes list. - * Technical Details: Mesh packets will prefer to be routed over this node. This node will not be used by client apps. - * The wifi radio and the oled screen will be put to sleep. - * This mode may still potentially have higher power usage due to it's preference in message rebroadcasting on the mesh. - * - * @generated from enum value: ROUTER = 2; - */ - ROUTER = 2, - - /** - * @generated from enum value: ROUTER_CLIENT = 3 [deprecated = true]; - * @deprecated - */ - ROUTER_CLIENT = 3, - - /** - * - * Description: Infrastructure node for extending network coverage by relaying messages with minimal overhead. Not visible in Nodes list. - * Technical Details: Mesh packets will simply be rebroadcasted over this node. Nodes configured with this role will not originate NodeInfo, Position, Telemetry - * or any other packet type. They will simply rebroadcast any mesh packets on the same frequency, channel num, spread factor, and coding rate. - * Deprecated in v2.7.11 because it creates "holes" in the mesh rebroadcast chain. - * - * @generated from enum value: REPEATER = 4 [deprecated = true]; - * @deprecated - */ - REPEATER = 4, - - /** - * - * Description: Broadcasts GPS position packets as priority. - * Technical Details: Position Mesh packets will be prioritized higher and sent more frequently by default. - * When used in conjunction with power.is_power_saving = true, nodes will wake up, - * send position, and then sleep for position.position_broadcast_secs seconds. - * - * @generated from enum value: TRACKER = 5; - */ - TRACKER = 5, - - /** - * - * Description: Broadcasts telemetry packets as priority. - * Technical Details: Telemetry Mesh packets will be prioritized higher and sent more frequently by default. - * When used in conjunction with power.is_power_saving = true, nodes will wake up, - * send environment telemetry, and then sleep for telemetry.environment_update_interval seconds. - * - * @generated from enum value: SENSOR = 6; - */ - SENSOR = 6, - - /** - * - * Description: Optimized for ATAK system communication and reduces routine broadcasts. - * Technical Details: Used for nodes dedicated for connection to an ATAK EUD. - * Turns off many of the routine broadcasts to favor CoT packet stream - * from the Meshtastic ATAK plugin -> IMeshService -> Node - * - * @generated from enum value: TAK = 7; - */ - TAK = 7, - - /** - * - * Description: Device that only broadcasts as needed for stealth or power savings. - * Technical Details: Used for nodes that "only speak when spoken to" - * Turns all of the routine broadcasts but allows for ad-hoc communication - * Still rebroadcasts, but with local only rebroadcast mode (known meshes only) - * Can be used for clandestine operation or to dramatically reduce airtime / power consumption - * - * @generated from enum value: CLIENT_HIDDEN = 8; - */ - CLIENT_HIDDEN = 8, - - /** - * - * Description: Broadcasts location as message to default channel regularly for to assist with device recovery. - * Technical Details: Used to automatically send a text message to the mesh - * with the current position of the device on a frequent interval: - * "I'm lost! Position: lat / long" - * - * @generated from enum value: LOST_AND_FOUND = 9; - */ - LOST_AND_FOUND = 9, - - /** - * - * Description: Enables automatic TAK PLI broadcasts and reduces routine broadcasts. - * Technical Details: Turns off many of the routine broadcasts to favor ATAK CoT packet stream - * and automatic TAK PLI (position location information) broadcasts. - * Uses position module configuration to determine TAK PLI broadcast interval. - * - * @generated from enum value: TAK_TRACKER = 10; - */ - TAK_TRACKER = 10, - - /** - * - * Description: Will always rebroadcast packets, but will do so after all other modes. - * Technical Details: Used for router nodes that are intended to provide additional coverage - * in areas not already covered by other routers, or to bridge around problematic terrain, - * but should not be given priority over other routers in order to avoid unnecessaraily - * consuming hops. - * - * @generated from enum value: ROUTER_LATE = 11; - */ - ROUTER_LATE = 11, - - /** - * - * Description: Treats packets from or to favorited nodes as ROUTER_LATE, and all other packets as CLIENT. - * Technical Details: Used for stronger attic/roof nodes to distribute messages more widely - * from weaker, indoor, or less-well-positioned nodes. Recommended for users with multiple nodes - * where one CLIENT_BASE acts as a more powerful base station, such as an attic/roof node. - * - * @generated from enum value: CLIENT_BASE = 12; - */ - CLIENT_BASE = 12, -} - -/** - * Describes the enum meshtastic.Config.DeviceConfig.Role. - */ -export const Config_DeviceConfig_RoleSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 0, 0); - -/** - * - * Defines the device's behavior for how messages are rebroadcast - * - * @generated from enum meshtastic.Config.DeviceConfig.RebroadcastMode - */ -export enum Config_DeviceConfig_RebroadcastMode { - /** - * - * Default behavior. - * Rebroadcast any observed message, if it was on our private channel or from another mesh with the same lora params. - * - * @generated from enum value: ALL = 0; - */ - ALL = 0, - - /** - * - * Same as behavior as ALL but skips packet decoding and simply rebroadcasts them. - * Only available in Repeater role. Setting this on any other roles will result in ALL behavior. - * - * @generated from enum value: ALL_SKIP_DECODING = 1; - */ - ALL_SKIP_DECODING = 1, - - /** - * - * Ignores observed messages from foreign meshes that are open or those which it cannot decrypt. - * Only rebroadcasts message on the nodes local primary / secondary channels. - * - * @generated from enum value: LOCAL_ONLY = 2; - */ - LOCAL_ONLY = 2, - - /** - * - * Ignores observed messages from foreign meshes like LOCAL_ONLY, - * but takes it step further by also ignoring messages from nodenums not in the node's known list (NodeDB) - * - * @generated from enum value: KNOWN_ONLY = 3; - */ - KNOWN_ONLY = 3, - - /** - * - * Only permitted for SENSOR, TRACKER and TAK_TRACKER roles, this will inhibit all rebroadcasts, not unlike CLIENT_MUTE role. - * - * @generated from enum value: NONE = 4; - */ - NONE = 4, - - /** - * - * Ignores packets from non-standard portnums such as: TAK, RangeTest, PaxCounter, etc. - * Only rebroadcasts packets with standard portnums: NodeInfo, Text, Position, Telemetry, and Routing. - * - * @generated from enum value: CORE_PORTNUMS_ONLY = 5; - */ - CORE_PORTNUMS_ONLY = 5, -} - -/** - * Describes the enum meshtastic.Config.DeviceConfig.RebroadcastMode. - */ -export const Config_DeviceConfig_RebroadcastModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 0, 1); - -/** - * - * Defines buzzer behavior for audio feedback - * - * @generated from enum meshtastic.Config.DeviceConfig.BuzzerMode - */ -export enum Config_DeviceConfig_BuzzerMode { - /** - * - * Default behavior. - * Buzzer is enabled for all audio feedback including button presses and alerts. - * - * @generated from enum value: ALL_ENABLED = 0; - */ - ALL_ENABLED = 0, - - /** - * - * Disabled. - * All buzzer audio feedback is disabled. - * - * @generated from enum value: DISABLED = 1; - */ - DISABLED = 1, - - /** - * - * Notifications Only. - * Buzzer is enabled only for notifications and alerts, but not for button presses. - * External notification config determines the specifics of the notification behavior. - * - * @generated from enum value: NOTIFICATIONS_ONLY = 2; - */ - NOTIFICATIONS_ONLY = 2, - - /** - * - * Non-notification system buzzer tones only. - * Buzzer is enabled only for non-notification tones such as button presses, startup, shutdown, but not for alerts. - * - * @generated from enum value: SYSTEM_ONLY = 3; - */ - SYSTEM_ONLY = 3, - - /** - * - * Direct Message notifications only. - * Buzzer is enabled only for direct messages and alerts, but not for button presses. - * External notification config determines the specifics of the notification behavior. - * - * @generated from enum value: DIRECT_MSG_ONLY = 4; - */ - DIRECT_MSG_ONLY = 4, -} - -/** - * Describes the enum meshtastic.Config.DeviceConfig.BuzzerMode. - */ -export const Config_DeviceConfig_BuzzerModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 0, 2); - -/** - * - * Position Config - * - * @generated from message meshtastic.Config.PositionConfig - */ -export type Config_PositionConfig = Message<"meshtastic.Config.PositionConfig"> & { - /** - * - * We should send our position this often (but only if it has changed significantly) - * Defaults to 15 minutes - * - * @generated from field: uint32 position_broadcast_secs = 1; - */ - positionBroadcastSecs: number; - - /** - * - * Adaptive position braoadcast, which is now the default. - * - * @generated from field: bool position_broadcast_smart_enabled = 2; - */ - positionBroadcastSmartEnabled: boolean; - - /** - * - * If set, this node is at a fixed position. - * We will generate GPS position updates at the regular interval, but use whatever the last lat/lon/alt we have for the node. - * The lat/lon/alt can be set by an internal GPS or with the help of the app. - * - * @generated from field: bool fixed_position = 3; - */ - fixedPosition: boolean; - - /** - * - * Is GPS enabled for this node? - * - * @generated from field: bool gps_enabled = 4 [deprecated = true]; - * @deprecated - */ - gpsEnabled: boolean; - - /** - * - * How often should we try to get GPS position (in seconds) - * or zero for the default of once every 30 seconds - * or a very large value (maxint) to update only once at boot. - * - * @generated from field: uint32 gps_update_interval = 5; - */ - gpsUpdateInterval: number; - - /** - * - * Deprecated in favor of using smart / regular broadcast intervals as implicit attempt time - * - * @generated from field: uint32 gps_attempt_time = 6 [deprecated = true]; - * @deprecated - */ - gpsAttemptTime: number; - - /** - * - * Bit field of boolean configuration options for POSITION messages - * (bitwise OR of PositionFlags) - * - * @generated from field: uint32 position_flags = 7; - */ - positionFlags: number; - - /** - * - * (Re)define GPS_RX_PIN for your board. - * - * @generated from field: uint32 rx_gpio = 8; - */ - rxGpio: number; - - /** - * - * (Re)define GPS_TX_PIN for your board. - * - * @generated from field: uint32 tx_gpio = 9; - */ - txGpio: number; - - /** - * - * The minimum distance in meters traveled (since the last send) before we can send a position to the mesh if position_broadcast_smart_enabled - * - * @generated from field: uint32 broadcast_smart_minimum_distance = 10; - */ - broadcastSmartMinimumDistance: number; - - /** - * - * The minimum number of seconds (since the last send) before we can send a position to the mesh if position_broadcast_smart_enabled - * - * @generated from field: uint32 broadcast_smart_minimum_interval_secs = 11; - */ - broadcastSmartMinimumIntervalSecs: number; - - /** - * - * (Re)define PIN_GPS_EN for your board. - * - * @generated from field: uint32 gps_en_gpio = 12; - */ - gpsEnGpio: number; - - /** - * - * Set where GPS is enabled, disabled, or not present - * - * @generated from field: meshtastic.Config.PositionConfig.GpsMode gps_mode = 13; - */ - gpsMode: Config_PositionConfig_GpsMode; -}; - -/** - * Describes the message meshtastic.Config.PositionConfig. - * Use `create(Config_PositionConfigSchema)` to create a new message. - */ -export const Config_PositionConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0, 1); - -/** - * - * Bit field of boolean configuration options, indicating which optional - * fields to include when assembling POSITION messages. - * Longitude, latitude, altitude, speed, heading, and DOP - * are always included (also time if GPS-synced) - * NOTE: the more fields are included, the larger the message will be - - * leading to longer airtime and a higher risk of packet loss - * - * @generated from enum meshtastic.Config.PositionConfig.PositionFlags - */ -export enum Config_PositionConfig_PositionFlags { - /** - * - * Required for compilation - * - * @generated from enum value: UNSET = 0; - */ - UNSET = 0, - - /** - * - * Include an altitude value (if available) - * - * @generated from enum value: ALTITUDE = 1; - */ - ALTITUDE = 1, - - /** - * - * Altitude value is MSL - * - * @generated from enum value: ALTITUDE_MSL = 2; - */ - ALTITUDE_MSL = 2, - - /** - * - * Include geoidal separation - * - * @generated from enum value: GEOIDAL_SEPARATION = 4; - */ - GEOIDAL_SEPARATION = 4, - - /** - * - * Include the DOP value ; PDOP used by default, see below - * - * @generated from enum value: DOP = 8; - */ - DOP = 8, - - /** - * - * If POS_DOP set, send separate HDOP / VDOP values instead of PDOP - * - * @generated from enum value: HVDOP = 16; - */ - HVDOP = 16, - - /** - * - * Include number of "satellites in view" - * - * @generated from enum value: SATINVIEW = 32; - */ - SATINVIEW = 32, - - /** - * - * Include a sequence number incremented per packet - * - * @generated from enum value: SEQ_NO = 64; - */ - SEQ_NO = 64, - - /** - * - * Include positional timestamp (from GPS solution) - * - * @generated from enum value: TIMESTAMP = 128; - */ - TIMESTAMP = 128, - - /** - * - * Include positional heading - * Intended for use with vehicle not walking speeds - * walking speeds are likely to be error prone like the compass - * - * @generated from enum value: HEADING = 256; - */ - HEADING = 256, - - /** - * - * Include positional speed - * Intended for use with vehicle not walking speeds - * walking speeds are likely to be error prone like the compass - * - * @generated from enum value: SPEED = 512; - */ - SPEED = 512, -} - -/** - * Describes the enum meshtastic.Config.PositionConfig.PositionFlags. - */ -export const Config_PositionConfig_PositionFlagsSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 1, 0); - -/** - * @generated from enum meshtastic.Config.PositionConfig.GpsMode - */ -export enum Config_PositionConfig_GpsMode { - /** - * - * GPS is present but disabled - * - * @generated from enum value: DISABLED = 0; - */ - DISABLED = 0, - - /** - * - * GPS is present and enabled - * - * @generated from enum value: ENABLED = 1; - */ - ENABLED = 1, - - /** - * - * GPS is not present on the device - * - * @generated from enum value: NOT_PRESENT = 2; - */ - NOT_PRESENT = 2, -} - -/** - * Describes the enum meshtastic.Config.PositionConfig.GpsMode. - */ -export const Config_PositionConfig_GpsModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 1, 1); - -/** - * - * Power Config\ - * See [Power Config](/docs/settings/config/power) for additional power config details. - * - * @generated from message meshtastic.Config.PowerConfig - */ -export type Config_PowerConfig = Message<"meshtastic.Config.PowerConfig"> & { - /** - * - * Description: Will sleep everything as much as possible, for the tracker and sensor role this will also include the lora radio. - * Don't use this setting if you want to use your device with the phone apps or are using a device without a user button. - * Technical Details: Works for ESP32 devices and NRF52 devices in the Sensor or Tracker roles - * - * @generated from field: bool is_power_saving = 1; - */ - isPowerSaving: boolean; - - /** - * - * Description: If non-zero, the device will fully power off this many seconds after external power is removed. - * - * @generated from field: uint32 on_battery_shutdown_after_secs = 2; - */ - onBatteryShutdownAfterSecs: number; - - /** - * - * Ratio of voltage divider for battery pin eg. 3.20 (R1=100k, R2=220k) - * Overrides the ADC_MULTIPLIER defined in variant for battery voltage calculation. - * https://meshtastic.org/docs/configuration/radio/power/#adc-multiplier-override - * Should be set to floating point value between 2 and 6 - * - * @generated from field: float adc_multiplier_override = 3; - */ - adcMultiplierOverride: number; - - /** - * - * Description: The number of seconds for to wait before turning off BLE in No Bluetooth states - * Technical Details: ESP32 Only 0 for default of 1 minute - * - * @generated from field: uint32 wait_bluetooth_secs = 4; - */ - waitBluetoothSecs: number; - - /** - * - * Super Deep Sleep Seconds - * While in Light Sleep if mesh_sds_timeout_secs is exceeded we will lower into super deep sleep - * for this value (default 1 year) or a button press - * 0 for default of one year - * - * @generated from field: uint32 sds_secs = 6; - */ - sdsSecs: number; - - /** - * - * Description: In light sleep the CPU is suspended, LoRa radio is on, BLE is off an GPS is on - * Technical Details: ESP32 Only 0 for default of 300 - * - * @generated from field: uint32 ls_secs = 7; - */ - lsSecs: number; - - /** - * - * Description: While in light sleep when we receive packets on the LoRa radio we will wake and handle them and stay awake in no BLE mode for this value - * Technical Details: ESP32 Only 0 for default of 10 seconds - * - * @generated from field: uint32 min_wake_secs = 8; - */ - minWakeSecs: number; - - /** - * - * I2C address of INA_2XX to use for reading device battery voltage - * - * @generated from field: uint32 device_battery_ina_address = 9; - */ - deviceBatteryInaAddress: number; - - /** - * - * If non-zero, we want powermon log outputs. With the particular (bitfield) sources enabled. - * Note: we picked an ID of 32 so that lower more efficient IDs can be used for more frequently used options. - * - * @generated from field: uint64 powermon_enables = 32; - */ - powermonEnables: bigint; -}; - -/** - * Describes the message meshtastic.Config.PowerConfig. - * Use `create(Config_PowerConfigSchema)` to create a new message. - */ -export const Config_PowerConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0, 2); - -/** - * - * Network Config - * - * @generated from message meshtastic.Config.NetworkConfig - */ -export type Config_NetworkConfig = Message<"meshtastic.Config.NetworkConfig"> & { - /** - * - * Enable WiFi (disables Bluetooth) - * - * @generated from field: bool wifi_enabled = 1; - */ - wifiEnabled: boolean; - - /** - * - * If set, this node will try to join the specified wifi network and - * acquire an address via DHCP - * - * @generated from field: string wifi_ssid = 3; - */ - wifiSsid: string; - - /** - * - * If set, will be use to authenticate to the named wifi - * - * @generated from field: string wifi_psk = 4; - */ - wifiPsk: string; - - /** - * - * NTP server to use if WiFi is conneced, defaults to `meshtastic.pool.ntp.org` - * - * @generated from field: string ntp_server = 5; - */ - ntpServer: string; - - /** - * - * Enable Ethernet - * - * @generated from field: bool eth_enabled = 6; - */ - ethEnabled: boolean; - - /** - * - * acquire an address via DHCP or assign static - * - * @generated from field: meshtastic.Config.NetworkConfig.AddressMode address_mode = 7; - */ - addressMode: Config_NetworkConfig_AddressMode; - - /** - * - * struct to keep static address - * - * @generated from field: meshtastic.Config.NetworkConfig.IpV4Config ipv4_config = 8; - */ - ipv4Config?: Config_NetworkConfig_IpV4Config | undefined; - - /** - * - * rsyslog Server and Port - * - * @generated from field: string rsyslog_server = 9; - */ - rsyslogServer: string; - - /** - * - * Flags for enabling/disabling network protocols - * - * @generated from field: uint32 enabled_protocols = 10; - */ - enabledProtocols: number; - - /** - * - * Enable/Disable ipv6 support - * - * @generated from field: bool ipv6_enabled = 11; - */ - ipv6Enabled: boolean; -}; - -/** - * Describes the message meshtastic.Config.NetworkConfig. - * Use `create(Config_NetworkConfigSchema)` to create a new message. - */ -export const Config_NetworkConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0, 3); - -/** - * @generated from message meshtastic.Config.NetworkConfig.IpV4Config - */ -export type Config_NetworkConfig_IpV4Config = Message<"meshtastic.Config.NetworkConfig.IpV4Config"> & { - /** - * - * Static IP address - * - * @generated from field: fixed32 ip = 1; - */ - ip: number; - - /** - * - * Static gateway address - * - * @generated from field: fixed32 gateway = 2; - */ - gateway: number; - - /** - * - * Static subnet mask - * - * @generated from field: fixed32 subnet = 3; - */ - subnet: number; - - /** - * - * Static DNS server address - * - * @generated from field: fixed32 dns = 4; - */ - dns: number; -}; - -/** - * Describes the message meshtastic.Config.NetworkConfig.IpV4Config. - * Use `create(Config_NetworkConfig_IpV4ConfigSchema)` to create a new message. - */ -export const Config_NetworkConfig_IpV4ConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0, 3, 0); - -/** - * @generated from enum meshtastic.Config.NetworkConfig.AddressMode - */ -export enum Config_NetworkConfig_AddressMode { - /** - * - * obtain ip address via DHCP - * - * @generated from enum value: DHCP = 0; - */ - DHCP = 0, - - /** - * - * use static ip address - * - * @generated from enum value: STATIC = 1; - */ - STATIC = 1, -} - -/** - * Describes the enum meshtastic.Config.NetworkConfig.AddressMode. - */ -export const Config_NetworkConfig_AddressModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 3, 0); - -/** - * - * Available flags auxiliary network protocols - * - * @generated from enum meshtastic.Config.NetworkConfig.ProtocolFlags - */ -export enum Config_NetworkConfig_ProtocolFlags { - /** - * - * Do not broadcast packets over any network protocol - * - * @generated from enum value: NO_BROADCAST = 0; - */ - NO_BROADCAST = 0, - - /** - * - * Enable broadcasting packets via UDP over the local network - * - * @generated from enum value: UDP_BROADCAST = 1; - */ - UDP_BROADCAST = 1, -} - -/** - * Describes the enum meshtastic.Config.NetworkConfig.ProtocolFlags. - */ -export const Config_NetworkConfig_ProtocolFlagsSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 3, 1); - -/** - * - * Display Config - * - * @generated from message meshtastic.Config.DisplayConfig - */ -export type Config_DisplayConfig = Message<"meshtastic.Config.DisplayConfig"> & { - /** - * - * Number of seconds the screen stays on after pressing the user button or receiving a message - * 0 for default of one minute MAXUINT for always on - * - * @generated from field: uint32 screen_on_secs = 1; - */ - screenOnSecs: number; - - /** - * - * Deprecated in 2.7.4: Unused - * How the GPS coordinates are formatted on the OLED screen. - * - * @generated from field: meshtastic.Config.DisplayConfig.DeprecatedGpsCoordinateFormat gps_format = 2 [deprecated = true]; - * @deprecated - */ - gpsFormat: Config_DisplayConfig_DeprecatedGpsCoordinateFormat; - - /** - * - * Automatically toggles to the next page on the screen like a carousel, based the specified interval in seconds. - * Potentially useful for devices without user buttons. - * - * @generated from field: uint32 auto_screen_carousel_secs = 3; - */ - autoScreenCarouselSecs: number; - - /** - * - * If this is set, the displayed compass will always point north. if unset, the old behaviour - * (top of display is heading direction) is used. - * - * @generated from field: bool compass_north_top = 4 [deprecated = true]; - * @deprecated - */ - compassNorthTop: boolean; - - /** - * - * Flip screen vertically, for cases that mount the screen upside down - * - * @generated from field: bool flip_screen = 5; - */ - flipScreen: boolean; - - /** - * - * Perferred display units - * - * @generated from field: meshtastic.Config.DisplayConfig.DisplayUnits units = 6; - */ - units: Config_DisplayConfig_DisplayUnits; - - /** - * - * Override auto-detect in screen - * - * @generated from field: meshtastic.Config.DisplayConfig.OledType oled = 7; - */ - oled: Config_DisplayConfig_OledType; - - /** - * - * Display Mode - * - * @generated from field: meshtastic.Config.DisplayConfig.DisplayMode displaymode = 8; - */ - displaymode: Config_DisplayConfig_DisplayMode; - - /** - * - * Print first line in pseudo-bold? FALSE is original style, TRUE is bold - * - * @generated from field: bool heading_bold = 9; - */ - headingBold: boolean; - - /** - * - * Should we wake the screen up on accelerometer detected motion or tap - * - * @generated from field: bool wake_on_tap_or_motion = 10; - */ - wakeOnTapOrMotion: boolean; - - /** - * - * Indicates how to rotate or invert the compass output to accurate display on the display. - * - * @generated from field: meshtastic.Config.DisplayConfig.CompassOrientation compass_orientation = 11; - */ - compassOrientation: Config_DisplayConfig_CompassOrientation; - - /** - * - * If false (default), the device will display the time in 24-hour format on screen. - * If true, the device will display the time in 12-hour format on screen. - * - * @generated from field: bool use_12h_clock = 12; - */ - use12hClock: boolean; - - /** - * - * If false (default), the device will use short names for various display screens. - * If true, node names will show in long format - * - * @generated from field: bool use_long_node_name = 13; - */ - useLongNodeName: boolean; - - /** - * - * If true, the device will display message bubbles on screen. - * - * @generated from field: bool enable_message_bubbles = 14; - */ - enableMessageBubbles: boolean; -}; - -/** - * Describes the message meshtastic.Config.DisplayConfig. - * Use `create(Config_DisplayConfigSchema)` to create a new message. - */ -export const Config_DisplayConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0, 4); - -/** - * - * Deprecated in 2.7.4: Unused - * - * @generated from enum meshtastic.Config.DisplayConfig.DeprecatedGpsCoordinateFormat - */ -export enum Config_DisplayConfig_DeprecatedGpsCoordinateFormat { - /** - * @generated from enum value: UNUSED = 0; - */ - UNUSED = 0, -} - -/** - * Describes the enum meshtastic.Config.DisplayConfig.DeprecatedGpsCoordinateFormat. - */ -export const Config_DisplayConfig_DeprecatedGpsCoordinateFormatSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 4, 0); - -/** - * - * Unit display preference - * - * @generated from enum meshtastic.Config.DisplayConfig.DisplayUnits - */ -export enum Config_DisplayConfig_DisplayUnits { - /** - * - * Metric (Default) - * - * @generated from enum value: METRIC = 0; - */ - METRIC = 0, - - /** - * - * Imperial - * - * @generated from enum value: IMPERIAL = 1; - */ - IMPERIAL = 1, -} - -/** - * Describes the enum meshtastic.Config.DisplayConfig.DisplayUnits. - */ -export const Config_DisplayConfig_DisplayUnitsSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 4, 1); - -/** - * - * Override OLED outo detect with this if it fails. - * - * @generated from enum meshtastic.Config.DisplayConfig.OledType - */ -export enum Config_DisplayConfig_OledType { - /** - * - * Default / Autodetect - * - * @generated from enum value: OLED_AUTO = 0; - */ - OLED_AUTO = 0, - - /** - * - * Default / Autodetect - * - * @generated from enum value: OLED_SSD1306 = 1; - */ - OLED_SSD1306 = 1, - - /** - * - * Default / Autodetect - * - * @generated from enum value: OLED_SH1106 = 2; - */ - OLED_SH1106 = 2, - - /** - * - * Can not be auto detected but set by proto. Used for 128x64 screens - * - * @generated from enum value: OLED_SH1107 = 3; - */ - OLED_SH1107 = 3, - - /** - * - * Can not be auto detected but set by proto. Used for 128x128 screens - * - * @generated from enum value: OLED_SH1107_128_128 = 4; - */ - OLED_SH1107_128_128 = 4, - - /** - * - * Can not be auto detected but set by proto. Used for 64x128 rotated screens - * - * @generated from enum value: OLED_SH1107_ROTATED = 5; - */ - OLED_SH1107_ROTATED = 5, -} - -/** - * Describes the enum meshtastic.Config.DisplayConfig.OledType. - */ -export const Config_DisplayConfig_OledTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 4, 2); - -/** - * @generated from enum meshtastic.Config.DisplayConfig.DisplayMode - */ -export enum Config_DisplayConfig_DisplayMode { - /** - * - * Default. The old style for the 128x64 OLED screen - * - * @generated from enum value: DEFAULT = 0; - */ - DEFAULT = 0, - - /** - * - * Rearrange display elements to cater for bicolor OLED displays - * - * @generated from enum value: TWOCOLOR = 1; - */ - TWOCOLOR = 1, - - /** - * - * Same as TwoColor, but with inverted top bar. Not so good for Epaper displays - * - * @generated from enum value: INVERTED = 2; - */ - INVERTED = 2, - - /** - * - * TFT Full Color Displays (not implemented yet) - * - * @generated from enum value: COLOR = 3; - */ - COLOR = 3, -} - -/** - * Describes the enum meshtastic.Config.DisplayConfig.DisplayMode. - */ -export const Config_DisplayConfig_DisplayModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 4, 3); - -/** - * @generated from enum meshtastic.Config.DisplayConfig.CompassOrientation - */ -export enum Config_DisplayConfig_CompassOrientation { - /** - * - * The compass and the display are in the same orientation. - * - * @generated from enum value: DEGREES_0 = 0; - */ - DEGREES_0 = 0, - - /** - * - * Rotate the compass by 90 degrees. - * - * @generated from enum value: DEGREES_90 = 1; - */ - DEGREES_90 = 1, - - /** - * - * Rotate the compass by 180 degrees. - * - * @generated from enum value: DEGREES_180 = 2; - */ - DEGREES_180 = 2, - - /** - * - * Rotate the compass by 270 degrees. - * - * @generated from enum value: DEGREES_270 = 3; - */ - DEGREES_270 = 3, - - /** - * - * Don't rotate the compass, but invert the result. - * - * @generated from enum value: DEGREES_0_INVERTED = 4; - */ - DEGREES_0_INVERTED = 4, - - /** - * - * Rotate the compass by 90 degrees and invert. - * - * @generated from enum value: DEGREES_90_INVERTED = 5; - */ - DEGREES_90_INVERTED = 5, - - /** - * - * Rotate the compass by 180 degrees and invert. - * - * @generated from enum value: DEGREES_180_INVERTED = 6; - */ - DEGREES_180_INVERTED = 6, - - /** - * - * Rotate the compass by 270 degrees and invert. - * - * @generated from enum value: DEGREES_270_INVERTED = 7; - */ - DEGREES_270_INVERTED = 7, -} - -/** - * Describes the enum meshtastic.Config.DisplayConfig.CompassOrientation. - */ -export const Config_DisplayConfig_CompassOrientationSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 4, 4); - -/** - * - * Lora Config - * - * @generated from message meshtastic.Config.LoRaConfig - */ -export type Config_LoRaConfig = Message<"meshtastic.Config.LoRaConfig"> & { - /** - * - * When enabled, the `modem_preset` fields will be adhered to, else the `bandwidth`/`spread_factor`/`coding_rate` - * will be taked from their respective manually defined fields - * - * @generated from field: bool use_preset = 1; - */ - usePreset: boolean; - - /** - * - * Either modem_config or bandwidth/spreading/coding will be specified - NOT BOTH. - * As a heuristic: If bandwidth is specified, do not use modem_config. - * Because protobufs take ZERO space when the value is zero this works out nicely. - * This value is replaced by bandwidth/spread_factor/coding_rate. - * If you'd like to experiment with other options add them to MeshRadio.cpp in the device code. - * - * @generated from field: meshtastic.Config.LoRaConfig.ModemPreset modem_preset = 2; - */ - modemPreset: Config_LoRaConfig_ModemPreset; - - /** - * - * Bandwidth in MHz - * Certain bandwidth numbers are 'special' and will be converted to the - * appropriate floating point value: 31 -> 31.25MHz - * - * @generated from field: uint32 bandwidth = 3; - */ - bandwidth: number; - - /** - * - * A number from 7 to 12. - * Indicates number of chirps per symbol as 1< 7 results in the default - * - * @generated from field: uint32 hop_limit = 8; - */ - hopLimit: number; - - /** - * - * Disable TX from the LoRa radio. Useful for hot-swapping antennas and other tests. - * Defaults to false - * - * @generated from field: bool tx_enabled = 9; - */ - txEnabled: boolean; - - /** - * - * If zero, then use default max legal continuous power (ie. something that won't - * burn out the radio hardware) - * In most cases you should use zero here. - * Units are in dBm. - * - * @generated from field: int32 tx_power = 10; - */ - txPower: number; - - /** - * - * This controls the actual hardware frequency the radio transmits on. - * Most users should never need to be exposed to this field/concept. - * A channel number between 1 and NUM_CHANNELS (whatever the max is in the current region). - * If ZERO then the rule is "use the old channel name hash based - * algorithm to derive the channel number") - * If using the hash algorithm the channel number will be: hash(channel_name) % - * NUM_CHANNELS (Where num channels depends on the regulatory region). - * - * @generated from field: uint32 channel_num = 11; - */ - channelNum: number; - - /** - * - * If true, duty cycle limits will be exceeded and thus you're possibly not following - * the local regulations if you're not a HAM. - * Has no effect if the duty cycle of the used region is 100%. - * - * @generated from field: bool override_duty_cycle = 12; - */ - overrideDutyCycle: boolean; - - /** - * - * If true, sets RX boosted gain mode on SX126X based radios - * - * @generated from field: bool sx126x_rx_boosted_gain = 13; - */ - sx126xRxBoostedGain: boolean; - - /** - * - * This parameter is for advanced users and licensed HAM radio operators. - * Ignore Channel Calculation and use this frequency instead. The frequency_offset - * will still be applied. This will allow you to use out-of-band frequencies. - * Please respect your local laws and regulations. If you are a HAM, make sure you - * enable HAM mode and turn off encryption. - * - * @generated from field: float override_frequency = 14; - */ - overrideFrequency: number; - - /** - * - * If true, disable the build-in PA FAN using pin define in RF95_FAN_EN. - * - * @generated from field: bool pa_fan_disabled = 15; - */ - paFanDisabled: boolean; - - /** - * - * For testing it is useful sometimes to force a node to never listen to - * particular other nodes (simulating radio out of range). All nodenums listed - * in ignore_incoming will have packets they send dropped on receive (by router.cpp) - * - * @generated from field: repeated uint32 ignore_incoming = 103; - */ - ignoreIncoming: number[]; - - /** - * - * If true, the device will not process any packets received via LoRa that passed via MQTT anywhere on the path towards it. - * - * @generated from field: bool ignore_mqtt = 104; - */ - ignoreMqtt: boolean; - - /** - * - * Sets the ok_to_mqtt bit on outgoing packets - * - * @generated from field: bool config_ok_to_mqtt = 105; - */ - configOkToMqtt: boolean; - - /** - * - * Set where LORA FEM is enabled, disabled, or not present - * - * @generated from field: meshtastic.Config.LoRaConfig.FEM_LNA_Mode fem_lna_mode = 106; - */ - femLnaMode: Config_LoRaConfig_FEM_LNA_Mode; - - /** - * - * Don't use radiolib to initialize the radio, instead listen for a serialHal connection - * - * @generated from field: bool serial_hal_only = 107; - */ - serialHalOnly: boolean; -}; - -/** - * Describes the message meshtastic.Config.LoRaConfig. - * Use `create(Config_LoRaConfigSchema)` to create a new message. - */ -export const Config_LoRaConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0, 5); - -/** - * @generated from enum meshtastic.Config.LoRaConfig.RegionCode - */ -export enum Config_LoRaConfig_RegionCode { - /** - * - * Region is not set - * - * @generated from enum value: UNSET = 0; - */ - UNSET = 0, - - /** - * - * United States - * - * @generated from enum value: US = 1; - */ - US = 1, - - /** - * - * European Union 433mhz - * - * @generated from enum value: EU_433 = 2; - */ - EU_433 = 2, - - /** - * - * European Union 868mhz - * - * @generated from enum value: EU_868 = 3; - */ - EU_868 = 3, - - /** - * - * China - * - * @generated from enum value: CN = 4; - */ - CN = 4, - - /** - * - * Japan - * - * @generated from enum value: JP = 5; - */ - JP = 5, - - /** - * - * Australia / New Zealand - * - * @generated from enum value: ANZ = 6; - */ - ANZ = 6, - - /** - * - * Korea - * - * @generated from enum value: KR = 7; - */ - KR = 7, - - /** - * - * Taiwan - * - * @generated from enum value: TW = 8; - */ - TW = 8, - - /** - * - * Russia - * - * @generated from enum value: RU = 9; - */ - RU = 9, - - /** - * - * India - * - * @generated from enum value: IN = 10; - */ - IN = 10, - - /** - * - * New Zealand 865mhz - * - * @generated from enum value: NZ_865 = 11; - */ - NZ_865 = 11, - - /** - * - * Thailand - * - * @generated from enum value: TH = 12; - */ - TH = 12, - - /** - * - * WLAN Band - * - * @generated from enum value: LORA_24 = 13; - */ - LORA_24 = 13, - - /** - * - * Ukraine 433mhz - * - * @generated from enum value: UA_433 = 14; - */ - UA_433 = 14, - - /** - * - * Ukraine 868mhz - * - * @generated from enum value: UA_868 = 15; - */ - UA_868 = 15, - - /** - * - * Malaysia 433mhz - * - * @generated from enum value: MY_433 = 16; - */ - MY_433 = 16, - - /** - * - * Malaysia 919mhz - * - * @generated from enum value: MY_919 = 17; - */ - MY_919 = 17, - - /** - * - * Singapore 923mhz - * - * @generated from enum value: SG_923 = 18; - */ - SG_923 = 18, - - /** - * - * Philippines 433mhz - * - * @generated from enum value: PH_433 = 19; - */ - PH_433 = 19, - - /** - * - * Philippines 868mhz - * - * @generated from enum value: PH_868 = 20; - */ - PH_868 = 20, - - /** - * - * Philippines 915mhz - * - * @generated from enum value: PH_915 = 21; - */ - PH_915 = 21, - - /** - * - * Australia / New Zealand 433MHz - * - * @generated from enum value: ANZ_433 = 22; - */ - ANZ_433 = 22, - - /** - * - * Kazakhstan 433MHz - * - * @generated from enum value: KZ_433 = 23; - */ - KZ_433 = 23, - - /** - * - * Kazakhstan 863MHz - * - * @generated from enum value: KZ_863 = 24; - */ - KZ_863 = 24, - - /** - * - * Nepal 865MHz - * - * @generated from enum value: NP_865 = 25; - */ - NP_865 = 25, - - /** - * - * Brazil 902MHz - * - * @generated from enum value: BR_902 = 26; - */ - BR_902 = 26, - - /** - * - * ITU Region 1 Amateur Radio 2m band (144-146 MHz) - * - * @generated from enum value: ITU1_2M = 27; - */ - ITU1_2M = 27, - - /** - * - * ITU Region 2 Amateur Radio 2m band (144-148 MHz) - * - * @generated from enum value: ITU2_2M = 28; - */ - ITU2_2M = 28, - - /** - * - * EU 866MHz band (Band no. 47b of 2006/771/EC and subsequent amendments) for Non-specific short-range devices (SRD) - * - * @generated from enum value: EU_866 = 29; - */ - EU_866 = 29, - - /** - * - * EU 874MHz and 917MHz bands (Band no. 1 and 4 of 2022/172/EC and subsequent amendments) for Non-specific short-range devices (SRD) - * - * @generated from enum value: EU_874 = 30; - */ - EU_874 = 30, - - /** - * @generated from enum value: EU_917 = 31; - */ - EU_917 = 31, - - /** - * - * EU 868MHz band, with narrow presets - * - * @generated from enum value: EU_N_868 = 32; - */ - EU_N_868 = 32, - - /** - * - * ITU Region 3 Amateur Radio 2m band (144-148 MHz) - * - * @generated from enum value: ITU3_2M = 33; - */ - ITU3_2M = 33, - - /** - * - * ITU Region 1 Amateur Radio 70cm band (430-440 MHz) - * - * @generated from enum value: ITU1_70CM = 34; - */ - ITU1_70CM = 34, - - /** - * - * ITU Region 2 Amateur Radio 70cm band (420-450 MHz) - * Note: Some countries do not allocate 420-430 MHz or 440-450 MHz. - * Check local law! - * - * @generated from enum value: ITU2_70CM = 35; - */ - ITU2_70CM = 35, - - /** - * - * ITU Region 3 Amateur Radio 70cm band (430-450 MHz) - * Note: Some countries do not allocate 440-450 MHz. Check local law! - * - * @generated from enum value: ITU3_70CM = 36; - */ - ITU3_70CM = 36, - - /** - * - * ITU Region 2 Amateur Radio 1.25m '125cm' band (220-225 MHz) - * Note: Some countries do not allocate 220-222 MHz (Ex: USA/Canada). - * Check local law! - * - * @generated from enum value: ITU2_125CM = 37; - */ - ITU2_125CM = 37, -} - -/** - * Describes the enum meshtastic.Config.LoRaConfig.RegionCode. - */ -export const Config_LoRaConfig_RegionCodeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 5, 0); - -/** - * - * Standard predefined channel settings - * Note: these mappings must match ModemPreset Choice in the device code. - * - * @generated from enum meshtastic.Config.LoRaConfig.ModemPreset - */ -export enum Config_LoRaConfig_ModemPreset { - /** - * - * Long Range - Fast - * - * @generated from enum value: LONG_FAST = 0; - */ - LONG_FAST = 0, - - /** - * - * Long Range - Slow - * Deprecated in 2.7: Unpopular slow preset. - * - * @generated from enum value: LONG_SLOW = 1 [deprecated = true]; - * @deprecated - */ - LONG_SLOW = 1, - - /** - * - * Very Long Range - Slow - * Deprecated in 2.5: Works only with txco and is unusably slow - * - * @generated from enum value: VERY_LONG_SLOW = 2 [deprecated = true]; - * @deprecated - */ - VERY_LONG_SLOW = 2, - - /** - * - * Medium Range - Slow - * - * @generated from enum value: MEDIUM_SLOW = 3; - */ - MEDIUM_SLOW = 3, - - /** - * - * Medium Range - Fast - * - * @generated from enum value: MEDIUM_FAST = 4; - */ - MEDIUM_FAST = 4, - - /** - * - * Short Range - Slow - * - * @generated from enum value: SHORT_SLOW = 5; - */ - SHORT_SLOW = 5, - - /** - * - * Short Range - Fast - * - * @generated from enum value: SHORT_FAST = 6; - */ - SHORT_FAST = 6, - - /** - * - * Long Range - Moderately Fast - * - * @generated from enum value: LONG_MODERATE = 7; - */ - LONG_MODERATE = 7, - - /** - * - * Short Range - Turbo - * This is the fastest preset and the only one with 500kHz bandwidth. - * It is not legal to use in all regions due to this wider bandwidth. - * - * @generated from enum value: SHORT_TURBO = 8; - */ - SHORT_TURBO = 8, - - /** - * - * Long Range - Turbo - * This preset performs similarly to LongFast, but with 500Khz bandwidth. - * - * @generated from enum value: LONG_TURBO = 9; - */ - LONG_TURBO = 9, - - /** - * - * Lite Fast - * Medium range preset optimized for EU 866MHz SRD band with 125kHz bandwidth. - * Comparable link budget to MEDIUM_FAST but compliant with Band no. 47b of 2006/771/EC. - * - * @generated from enum value: LITE_FAST = 10; - */ - LITE_FAST = 10, - - /** - * - * Lite Slow - * Medium-to-moderate range preset optimized for EU 866MHz SRD band with 125kHz bandwidth. - * Comparable link budget to LONG_FAST but compliant with Band no. 47b of 2006/771/EC. - * - * @generated from enum value: LITE_SLOW = 11; - */ - LITE_SLOW = 11, - - /** - * - * Narrow Fast - * Medium-to-moderate range preset optimized for EU 868MHz band with 62.5kHz bandwidth. - * Comparable link budget to SHORT_SLOW, but with half the data rate. - * Intended to avoid interference with other devices. - * - * @generated from enum value: NARROW_FAST = 12; - */ - NARROW_FAST = 12, - - /** - * - * Narrow Slow - * Moderate range preset optimized for EU 868MHz band with 62.5kHz bandwidth. - * Comparable link budget and data rate to LONG_FAST. - * - * @generated from enum value: NARROW_SLOW = 13; - */ - NARROW_SLOW = 13, - - /** - * - * Tiny Fast - * Preset optimized for compliance with Amateur Radio restrictions with 20kHz bandwidth. - * Many regions limit data transmission bandwidth in lower amateur bands (2 Meter). - * Note: TCXO with tight tolerances (±5 ppm or better) is *absolutely required* at these narrow bandwidths. - * Only compatible with SX127x and SX126x chipsets. - * Comparable link budget and data rate to LONG_FAST. - * - * @generated from enum value: TINY_FAST = 14; - */ - TINY_FAST = 14, - - /** - * - * Tiny Slow - * Preset optimized for compliance with Amateur Radio restrictions with 20kHz bandwidth. - * Many regions limit data transmission bandwidth in lower amateur bands (2 Meter). - * Note: TCXO with tight tolerances (±5 ppm or better) is *absolutely required* at these narrow bandwidths. - * Only compatible with SX127x and SX126x chipsets. - * Comparable link budget and data rate to LONG_MODERATE. - * - * @generated from enum value: TINY_SLOW = 15; - */ - TINY_SLOW = 15, -} - -/** - * Describes the enum meshtastic.Config.LoRaConfig.ModemPreset. - */ -export const Config_LoRaConfig_ModemPresetSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 5, 1); - -/** - * @generated from enum meshtastic.Config.LoRaConfig.FEM_LNA_Mode - */ -export enum Config_LoRaConfig_FEM_LNA_Mode { - /** - * - * FEM_LNA is present but disabled - * - * @generated from enum value: DISABLED = 0; - */ - DISABLED = 0, - - /** - * - * FEM_LNA is present and enabled - * - * @generated from enum value: ENABLED = 1; - */ - ENABLED = 1, - - /** - * - * FEM_LNA is not present on the device - * - * @generated from enum value: NOT_PRESENT = 2; - */ - NOT_PRESENT = 2, -} - -/** - * Describes the enum meshtastic.Config.LoRaConfig.FEM_LNA_Mode. - */ -export const Config_LoRaConfig_FEM_LNA_ModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 5, 2); - -/** - * @generated from message meshtastic.Config.BluetoothConfig - */ -export type Config_BluetoothConfig = Message<"meshtastic.Config.BluetoothConfig"> & { - /** - * - * Enable Bluetooth on the device - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * - * Determines the pairing strategy for the device - * - * @generated from field: meshtastic.Config.BluetoothConfig.PairingMode mode = 2; - */ - mode: Config_BluetoothConfig_PairingMode; - - /** - * - * Specified PIN for PairingMode.FixedPin - * - * @generated from field: uint32 fixed_pin = 3; - */ - fixedPin: number; -}; - -/** - * Describes the message meshtastic.Config.BluetoothConfig. - * Use `create(Config_BluetoothConfigSchema)` to create a new message. - */ -export const Config_BluetoothConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0, 6); - -/** - * @generated from enum meshtastic.Config.BluetoothConfig.PairingMode - */ -export enum Config_BluetoothConfig_PairingMode { - /** - * - * Device generates a random PIN that will be shown on the screen of the device for pairing - * - * @generated from enum value: RANDOM_PIN = 0; - */ - RANDOM_PIN = 0, - - /** - * - * Device requires a specified fixed PIN for pairing - * - * @generated from enum value: FIXED_PIN = 1; - */ - FIXED_PIN = 1, - - /** - * - * Device requires no PIN for pairing - * - * @generated from enum value: NO_PIN = 2; - */ - NO_PIN = 2, -} - -/** - * Describes the enum meshtastic.Config.BluetoothConfig.PairingMode. - */ -export const Config_BluetoothConfig_PairingModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_config, 0, 6, 0); - -/** - * @generated from message meshtastic.Config.SecurityConfig - */ -export type Config_SecurityConfig = Message<"meshtastic.Config.SecurityConfig"> & { - /** - * - * The public key of the user's device. - * Sent out to other nodes on the mesh to allow them to compute a shared secret key. - * - * @generated from field: bytes public_key = 1; - */ - publicKey: Uint8Array; - - /** - * - * The private key of the device. - * Used to create a shared key with a remote device. - * - * @generated from field: bytes private_key = 2; - */ - privateKey: Uint8Array; - - /** - * - * The public key authorized to send admin messages to this node. - * - * @generated from field: repeated bytes admin_key = 3; - */ - adminKey: Uint8Array[]; - - /** - * - * If true, device is considered to be "managed" by a mesh administrator via admin messages - * Device is managed by a mesh administrator. - * - * @generated from field: bool is_managed = 4; - */ - isManaged: boolean; - - /** - * - * Serial Console over the Stream API." - * - * @generated from field: bool serial_enabled = 5; - */ - serialEnabled: boolean; - - /** - * - * By default we turn off logging as soon as an API client connects (to keep shared serial link quiet). - * Output live debug logging over serial or bluetooth is set to true. - * - * @generated from field: bool debug_log_api_enabled = 6; - */ - debugLogApiEnabled: boolean; - - /** - * - * Allow incoming device control over the insecure legacy admin channel. - * - * @generated from field: bool admin_channel_enabled = 8; - */ - adminChannelEnabled: boolean; -}; - -/** - * Describes the message meshtastic.Config.SecurityConfig. - * Use `create(Config_SecurityConfigSchema)` to create a new message. - */ -export const Config_SecurityConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0, 7); - -/** - * - * Blank config request, strictly for getting the session key - * - * @generated from message meshtastic.Config.SessionkeyConfig - */ -export type Config_SessionkeyConfig = Message<"meshtastic.Config.SessionkeyConfig"> & { -}; - -/** - * Describes the message meshtastic.Config.SessionkeyConfig. - * Use `create(Config_SessionkeyConfigSchema)` to create a new message. - */ -export const Config_SessionkeyConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_config, 0, 8); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/connection_status_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/connection_status_pb.ts deleted file mode 100644 index 3768ff67c..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/connection_status_pb.ts +++ /dev/null @@ -1,237 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/connection_status.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; -import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/connection_status.proto. - */ -export const file_meshtastic_connection_status: GenFile = /*@__PURE__*/ - fileDesc("CiJtZXNodGFzdGljL2Nvbm5lY3Rpb25fc3RhdHVzLnByb3RvEgptZXNodGFzdGljIrECChZEZXZpY2VDb25uZWN0aW9uU3RhdHVzEjMKBHdpZmkYASABKAsyIC5tZXNodGFzdGljLldpZmlDb25uZWN0aW9uU3RhdHVzSACIAQESOwoIZXRoZXJuZXQYAiABKAsyJC5tZXNodGFzdGljLkV0aGVybmV0Q29ubmVjdGlvblN0YXR1c0gBiAEBEj0KCWJsdWV0b290aBgDIAEoCzIlLm1lc2h0YXN0aWMuQmx1ZXRvb3RoQ29ubmVjdGlvblN0YXR1c0gCiAEBEjcKBnNlcmlhbBgEIAEoCzIiLm1lc2h0YXN0aWMuU2VyaWFsQ29ubmVjdGlvblN0YXR1c0gDiAEBQgcKBV93aWZpQgsKCV9ldGhlcm5ldEIMCgpfYmx1ZXRvb3RoQgkKB19zZXJpYWwiZwoUV2lmaUNvbm5lY3Rpb25TdGF0dXMSMwoGc3RhdHVzGAEgASgLMiMubWVzaHRhc3RpYy5OZXR3b3JrQ29ubmVjdGlvblN0YXR1cxIMCgRzc2lkGAIgASgJEgwKBHJzc2kYAyABKAUiTwoYRXRoZXJuZXRDb25uZWN0aW9uU3RhdHVzEjMKBnN0YXR1cxgBIAEoCzIjLm1lc2h0YXN0aWMuTmV0d29ya0Nvbm5lY3Rpb25TdGF0dXMiewoXTmV0d29ya0Nvbm5lY3Rpb25TdGF0dXMSEgoKaXBfYWRkcmVzcxgBIAEoBxIUCgxpc19jb25uZWN0ZWQYAiABKAgSGQoRaXNfbXF0dF9jb25uZWN0ZWQYAyABKAgSGwoTaXNfc3lzbG9nX2Nvbm5lY3RlZBgEIAEoCCJMChlCbHVldG9vdGhDb25uZWN0aW9uU3RhdHVzEgsKA3BpbhgBIAEoDRIMCgRyc3NpGAIgASgFEhQKDGlzX2Nvbm5lY3RlZBgDIAEoCCI8ChZTZXJpYWxDb25uZWN0aW9uU3RhdHVzEgwKBGJhdWQYASABKA0SFAoMaXNfY29ubmVjdGVkGAIgASgIQmYKFG9yZy5tZXNodGFzdGljLnByb3RvQhBDb25uU3RhdHVzUHJvdG9zWiJnaXRodWIuY29tL21lc2h0YXN0aWMvZ28vZ2VuZXJhdGVkqgIUTWVzaHRhc3RpYy5Qcm90b2J1ZnO6AgBiBnByb3RvMw"); - -/** - * @generated from message meshtastic.DeviceConnectionStatus - */ -export type DeviceConnectionStatus = Message<"meshtastic.DeviceConnectionStatus"> & { - /** - * - * WiFi Status - * - * @generated from field: optional meshtastic.WifiConnectionStatus wifi = 1; - */ - wifi?: WifiConnectionStatus | undefined; - - /** - * - * WiFi Status - * - * @generated from field: optional meshtastic.EthernetConnectionStatus ethernet = 2; - */ - ethernet?: EthernetConnectionStatus | undefined; - - /** - * - * Bluetooth Status - * - * @generated from field: optional meshtastic.BluetoothConnectionStatus bluetooth = 3; - */ - bluetooth?: BluetoothConnectionStatus | undefined; - - /** - * - * Serial Status - * - * @generated from field: optional meshtastic.SerialConnectionStatus serial = 4; - */ - serial?: SerialConnectionStatus | undefined; -}; - -/** - * Describes the message meshtastic.DeviceConnectionStatus. - * Use `create(DeviceConnectionStatusSchema)` to create a new message. - */ -export const DeviceConnectionStatusSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_connection_status, 0); - -/** - * - * WiFi connection status - * - * @generated from message meshtastic.WifiConnectionStatus - */ -export type WifiConnectionStatus = Message<"meshtastic.WifiConnectionStatus"> & { - /** - * - * Connection status - * - * @generated from field: meshtastic.NetworkConnectionStatus status = 1; - */ - status?: NetworkConnectionStatus | undefined; - - /** - * - * WiFi access point SSID - * - * @generated from field: string ssid = 2; - */ - ssid: string; - - /** - * - * RSSI of wireless connection - * - * @generated from field: int32 rssi = 3; - */ - rssi: number; -}; - -/** - * Describes the message meshtastic.WifiConnectionStatus. - * Use `create(WifiConnectionStatusSchema)` to create a new message. - */ -export const WifiConnectionStatusSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_connection_status, 1); - -/** - * - * Ethernet connection status - * - * @generated from message meshtastic.EthernetConnectionStatus - */ -export type EthernetConnectionStatus = Message<"meshtastic.EthernetConnectionStatus"> & { - /** - * - * Connection status - * - * @generated from field: meshtastic.NetworkConnectionStatus status = 1; - */ - status?: NetworkConnectionStatus | undefined; -}; - -/** - * Describes the message meshtastic.EthernetConnectionStatus. - * Use `create(EthernetConnectionStatusSchema)` to create a new message. - */ -export const EthernetConnectionStatusSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_connection_status, 2); - -/** - * - * Ethernet or WiFi connection status - * - * @generated from message meshtastic.NetworkConnectionStatus - */ -export type NetworkConnectionStatus = Message<"meshtastic.NetworkConnectionStatus"> & { - /** - * - * IP address of device - * - * @generated from field: fixed32 ip_address = 1; - */ - ipAddress: number; - - /** - * - * Whether the device has an active connection or not - * - * @generated from field: bool is_connected = 2; - */ - isConnected: boolean; - - /** - * - * Whether the device has an active connection to an MQTT broker or not - * - * @generated from field: bool is_mqtt_connected = 3; - */ - isMqttConnected: boolean; - - /** - * - * Whether the device is actively remote syslogging or not - * - * @generated from field: bool is_syslog_connected = 4; - */ - isSyslogConnected: boolean; -}; - -/** - * Describes the message meshtastic.NetworkConnectionStatus. - * Use `create(NetworkConnectionStatusSchema)` to create a new message. - */ -export const NetworkConnectionStatusSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_connection_status, 3); - -/** - * - * Bluetooth connection status - * - * @generated from message meshtastic.BluetoothConnectionStatus - */ -export type BluetoothConnectionStatus = Message<"meshtastic.BluetoothConnectionStatus"> & { - /** - * - * The pairing PIN for bluetooth - * - * @generated from field: uint32 pin = 1; - */ - pin: number; - - /** - * - * RSSI of bluetooth connection - * - * @generated from field: int32 rssi = 2; - */ - rssi: number; - - /** - * - * Whether the device has an active connection or not - * - * @generated from field: bool is_connected = 3; - */ - isConnected: boolean; -}; - -/** - * Describes the message meshtastic.BluetoothConnectionStatus. - * Use `create(BluetoothConnectionStatusSchema)` to create a new message. - */ -export const BluetoothConnectionStatusSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_connection_status, 4); - -/** - * - * Serial connection status - * - * @generated from message meshtastic.SerialConnectionStatus - */ -export type SerialConnectionStatus = Message<"meshtastic.SerialConnectionStatus"> & { - /** - * - * Serial baud rate - * - * @generated from field: uint32 baud = 1; - */ - baud: number; - - /** - * - * Whether the device has an active connection or not - * - * @generated from field: bool is_connected = 2; - */ - isConnected: boolean; -}; - -/** - * Describes the message meshtastic.SerialConnectionStatus. - * Use `create(SerialConnectionStatusSchema)` to create a new message. - */ -export const SerialConnectionStatusSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_connection_status, 5); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/device_ui_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/device_ui_pb.ts deleted file mode 100644 index 20fe43447..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/device_ui_pb.ts +++ /dev/null @@ -1,698 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/device_ui.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/device_ui.proto. - */ -export const file_meshtastic_device_ui: GenFile = /*@__PURE__*/ - fileDesc("ChptZXNodGFzdGljL2RldmljZV91aS5wcm90bxIKbWVzaHRhc3RpYyLABQoORGV2aWNlVUlDb25maWcSDwoHdmVyc2lvbhgBIAEoDRIZChFzY3JlZW5fYnJpZ2h0bmVzcxgCIAEoDRIWCg5zY3JlZW5fdGltZW91dBgDIAEoDRITCgtzY3JlZW5fbG9jaxgEIAEoCBIVCg1zZXR0aW5nc19sb2NrGAUgASgIEhAKCHBpbl9jb2RlGAYgASgNEiAKBXRoZW1lGAcgASgOMhEubWVzaHRhc3RpYy5UaGVtZRIVCg1hbGVydF9lbmFibGVkGAggASgIEhYKDmJhbm5lcl9lbmFibGVkGAkgASgIEhQKDHJpbmdfdG9uZV9pZBgKIAEoDRImCghsYW5ndWFnZRgLIAEoDjIULm1lc2h0YXN0aWMuTGFuZ3VhZ2USKwoLbm9kZV9maWx0ZXIYDCABKAsyFi5tZXNodGFzdGljLk5vZGVGaWx0ZXISMQoObm9kZV9oaWdobGlnaHQYDSABKAsyGS5tZXNodGFzdGljLk5vZGVIaWdobGlnaHQSGAoQY2FsaWJyYXRpb25fZGF0YRgOIAEoDBIhCghtYXBfZGF0YRgPIAEoCzIPLm1lc2h0YXN0aWMuTWFwEi0KDGNvbXBhc3NfbW9kZRgQIAEoDjIXLm1lc2h0YXN0aWMuQ29tcGFzc01vZGUSGAoQc2NyZWVuX3JnYl9jb2xvchgRIAEoDRIbChNpc19jbG9ja2ZhY2VfYW5hbG9nGBIgASgIEkIKCmdwc19mb3JtYXQYEyABKA4yLi5tZXNodGFzdGljLkRldmljZVVJQ29uZmlnLkdwc0Nvb3JkaW5hdGVGb3JtYXQiVgoTR3BzQ29vcmRpbmF0ZUZvcm1hdBIHCgNERUMQABIHCgNETVMQARIHCgNVVE0QAhIICgRNR1JTEAMSBwoDT0xDEAQSCAoET1NHUhAFEgcKA01MUxAGIqcBCgpOb2RlRmlsdGVyEhYKDnVua25vd25fc3dpdGNoGAEgASgIEhYKDm9mZmxpbmVfc3dpdGNoGAIgASgIEhkKEXB1YmxpY19rZXlfc3dpdGNoGAMgASgIEhEKCWhvcHNfYXdheRgEIAEoBRIXCg9wb3NpdGlvbl9zd2l0Y2gYBSABKAgSEQoJbm9kZV9uYW1lGAYgASgJEg8KB2NoYW5uZWwYByABKAUifgoNTm9kZUhpZ2hsaWdodBITCgtjaGF0X3N3aXRjaBgBIAEoCBIXCg9wb3NpdGlvbl9zd2l0Y2gYAiABKAgSGAoQdGVsZW1ldHJ5X3N3aXRjaBgDIAEoCBISCgppYXFfc3dpdGNoGAQgASgIEhEKCW5vZGVfbmFtZRgFIAEoCSI9CghHZW9Qb2ludBIMCgR6b29tGAEgASgFEhAKCGxhdGl0dWRlGAIgASgFEhEKCWxvbmdpdHVkZRgDIAEoBSJMCgNNYXASIgoEaG9tZRgBIAEoCzIULm1lc2h0YXN0aWMuR2VvUG9pbnQSDQoFc3R5bGUYAiABKAkSEgoKZm9sbG93X2dwcxgDIAEoCCo+CgtDb21wYXNzTW9kZRILCgdEWU5BTUlDEAASDgoKRklYRURfUklORxABEhIKDkZSRUVaRV9IRUFESU5HEAIqJQoFVGhlbWUSCAoEREFSSxAAEgkKBUxJR0hUEAESBwoDUkVEEAIqwAIKCExhbmd1YWdlEgsKB0VOR0xJU0gQABIKCgZGUkVOQ0gQARIKCgZHRVJNQU4QAhILCgdJVEFMSUFOEAMSDgoKUE9SVFVHVUVTRRAEEgsKB1NQQU5JU0gQBRILCgdTV0VESVNIEAYSCwoHRklOTklTSBAHEgoKBlBPTElTSBAIEgsKB1RVUktJU0gQCRILCgdTRVJCSUFOEAoSCwoHUlVTU0lBThALEgkKBURVVENIEAwSCQoFR1JFRUsQDRINCglOT1JXRUdJQU4QDhINCglTTE9WRU5JQU4QDxINCglVS1JBSU5JQU4QEBINCglCVUxHQVJJQU4QERIJCgVDWkVDSBASEgoKBkRBTklTSBATEhYKElNJTVBMSUZJRURfQ0hJTkVTRRAeEhcKE1RSQURJVElPTkFMX0NISU5FU0UQH0JkChRvcmcubWVzaHRhc3RpYy5wcm90b0IORGV2aWNlVUlQcm90b3NaImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAGIGcHJvdG8z"); - -/** - * @generated from message meshtastic.DeviceUIConfig - */ -export type DeviceUIConfig = Message<"meshtastic.DeviceUIConfig"> & { - /** - * - * A version integer used to invalidate saved files when we make incompatible changes. - * - * @generated from field: uint32 version = 1; - */ - version: number; - - /** - * - * TFT display brightness 1..255 - * - * @generated from field: uint32 screen_brightness = 2; - */ - screenBrightness: number; - - /** - * - * Screen timeout 0..900 - * - * @generated from field: uint32 screen_timeout = 3; - */ - screenTimeout: number; - - /** - * - * Screen/Settings lock enabled - * - * @generated from field: bool screen_lock = 4; - */ - screenLock: boolean; - - /** - * @generated from field: bool settings_lock = 5; - */ - settingsLock: boolean; - - /** - * @generated from field: uint32 pin_code = 6; - */ - pinCode: number; - - /** - * - * Color theme - * - * @generated from field: meshtastic.Theme theme = 7; - */ - theme: Theme; - - /** - * - * Audible message, banner and ring tone - * - * @generated from field: bool alert_enabled = 8; - */ - alertEnabled: boolean; - - /** - * @generated from field: bool banner_enabled = 9; - */ - bannerEnabled: boolean; - - /** - * @generated from field: uint32 ring_tone_id = 10; - */ - ringToneId: number; - - /** - * - * Localization - * - * @generated from field: meshtastic.Language language = 11; - */ - language: Language; - - /** - * - * Node list filter - * - * @generated from field: meshtastic.NodeFilter node_filter = 12; - */ - nodeFilter?: NodeFilter | undefined; - - /** - * - * Node list highlightening - * - * @generated from field: meshtastic.NodeHighlight node_highlight = 13; - */ - nodeHighlight?: NodeHighlight | undefined; - - /** - * - * 8 integers for screen calibration data - * - * @generated from field: bytes calibration_data = 14; - */ - calibrationData: Uint8Array; - - /** - * - * Map related data - * - * @generated from field: meshtastic.Map map_data = 15; - */ - mapData?: Map | undefined; - - /** - * - * Compass mode - * - * @generated from field: meshtastic.CompassMode compass_mode = 16; - */ - compassMode: CompassMode; - - /** - * - * RGB color for BaseUI - * 0xRRGGBB format, e.g. 0xFF0000 for red - * - * @generated from field: uint32 screen_rgb_color = 17; - */ - screenRgbColor: number; - - /** - * - * Clockface analog style - * true for analog clockface, false for digital clockface - * - * @generated from field: bool is_clockface_analog = 18; - */ - isClockfaceAnalog: boolean; - - /** - * - * How the GPS coordinates are formatted on the OLED screen. - * - * @generated from field: meshtastic.DeviceUIConfig.GpsCoordinateFormat gps_format = 19; - */ - gpsFormat: DeviceUIConfig_GpsCoordinateFormat; -}; - -/** - * Describes the message meshtastic.DeviceUIConfig. - * Use `create(DeviceUIConfigSchema)` to create a new message. - */ -export const DeviceUIConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_device_ui, 0); - -/** - * - * How the GPS coordinates are displayed on the OLED screen. - * - * @generated from enum meshtastic.DeviceUIConfig.GpsCoordinateFormat - */ -export enum DeviceUIConfig_GpsCoordinateFormat { - /** - * - * GPS coordinates are displayed in the normal decimal degrees format: - * DD.DDDDDD DDD.DDDDDD - * - * @generated from enum value: DEC = 0; - */ - DEC = 0, - - /** - * - * GPS coordinates are displayed in the degrees minutes seconds format: - * DD°MM'SS"C DDD°MM'SS"C, where C is the compass point representing the locations quadrant - * - * @generated from enum value: DMS = 1; - */ - DMS = 1, - - /** - * - * Universal Transverse Mercator format: - * ZZB EEEEEE NNNNNNN, where Z is zone, B is band, E is easting, N is northing - * - * @generated from enum value: UTM = 2; - */ - UTM = 2, - - /** - * - * Military Grid Reference System format: - * ZZB CD EEEEE NNNNN, where Z is zone, B is band, C is the east 100k square, D is the north 100k square, - * E is easting, N is northing - * - * @generated from enum value: MGRS = 3; - */ - MGRS = 3, - - /** - * - * Open Location Code (aka Plus Codes). - * - * @generated from enum value: OLC = 4; - */ - OLC = 4, - - /** - * - * Ordnance Survey Grid Reference (the National Grid System of the UK). - * Format: AB EEEEE NNNNN, where A is the east 100k square, B is the north 100k square, - * E is the easting, N is the northing - * - * @generated from enum value: OSGR = 5; - */ - OSGR = 5, - - /** - * - * Maidenhead Locator System - * Described here: https://en.wikipedia.org/wiki/Maidenhead_Locator_System - * - * @generated from enum value: MLS = 6; - */ - MLS = 6, -} - -/** - * Describes the enum meshtastic.DeviceUIConfig.GpsCoordinateFormat. - */ -export const DeviceUIConfig_GpsCoordinateFormatSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_device_ui, 0, 0); - -/** - * @generated from message meshtastic.NodeFilter - */ -export type NodeFilter = Message<"meshtastic.NodeFilter"> & { - /** - * - * Filter unknown nodes - * - * @generated from field: bool unknown_switch = 1; - */ - unknownSwitch: boolean; - - /** - * - * Filter offline nodes - * - * @generated from field: bool offline_switch = 2; - */ - offlineSwitch: boolean; - - /** - * - * Filter nodes w/o public key - * - * @generated from field: bool public_key_switch = 3; - */ - publicKeySwitch: boolean; - - /** - * - * Filter based on hops away - * - * @generated from field: int32 hops_away = 4; - */ - hopsAway: number; - - /** - * - * Filter nodes w/o position - * - * @generated from field: bool position_switch = 5; - */ - positionSwitch: boolean; - - /** - * - * Filter nodes by matching name string - * - * @generated from field: string node_name = 6; - */ - nodeName: string; - - /** - * - * Filter based on channel - * - * @generated from field: int32 channel = 7; - */ - channel: number; -}; - -/** - * Describes the message meshtastic.NodeFilter. - * Use `create(NodeFilterSchema)` to create a new message. - */ -export const NodeFilterSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_device_ui, 1); - -/** - * @generated from message meshtastic.NodeHighlight - */ -export type NodeHighlight = Message<"meshtastic.NodeHighlight"> & { - /** - * - * Hightlight nodes w/ active chat - * - * @generated from field: bool chat_switch = 1; - */ - chatSwitch: boolean; - - /** - * - * Highlight nodes w/ position - * - * @generated from field: bool position_switch = 2; - */ - positionSwitch: boolean; - - /** - * - * Highlight nodes w/ telemetry data - * - * @generated from field: bool telemetry_switch = 3; - */ - telemetrySwitch: boolean; - - /** - * - * Highlight nodes w/ iaq data - * - * @generated from field: bool iaq_switch = 4; - */ - iaqSwitch: boolean; - - /** - * - * Highlight nodes by matching name string - * - * @generated from field: string node_name = 5; - */ - nodeName: string; -}; - -/** - * Describes the message meshtastic.NodeHighlight. - * Use `create(NodeHighlightSchema)` to create a new message. - */ -export const NodeHighlightSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_device_ui, 2); - -/** - * @generated from message meshtastic.GeoPoint - */ -export type GeoPoint = Message<"meshtastic.GeoPoint"> & { - /** - * - * Zoom level - * - * @generated from field: int32 zoom = 1; - */ - zoom: number; - - /** - * - * Coordinate: latitude - * - * @generated from field: int32 latitude = 2; - */ - latitude: number; - - /** - * - * Coordinate: longitude - * - * @generated from field: int32 longitude = 3; - */ - longitude: number; -}; - -/** - * Describes the message meshtastic.GeoPoint. - * Use `create(GeoPointSchema)` to create a new message. - */ -export const GeoPointSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_device_ui, 3); - -/** - * @generated from message meshtastic.Map - */ -export type Map = Message<"meshtastic.Map"> & { - /** - * - * Home coordinates - * - * @generated from field: meshtastic.GeoPoint home = 1; - */ - home?: GeoPoint | undefined; - - /** - * - * Map tile style - * - * @generated from field: string style = 2; - */ - style: string; - - /** - * - * Map scroll follows GPS - * - * @generated from field: bool follow_gps = 3; - */ - followGps: boolean; -}; - -/** - * Describes the message meshtastic.Map. - * Use `create(MapSchema)` to create a new message. - */ -export const MapSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_device_ui, 4); - -/** - * @generated from enum meshtastic.CompassMode - */ -export enum CompassMode { - /** - * - * Compass with dynamic ring and heading - * - * @generated from enum value: DYNAMIC = 0; - */ - DYNAMIC = 0, - - /** - * - * Compass with fixed ring and heading - * - * @generated from enum value: FIXED_RING = 1; - */ - FIXED_RING = 1, - - /** - * - * Compass with heading and freeze option - * - * @generated from enum value: FREEZE_HEADING = 2; - */ - FREEZE_HEADING = 2, -} - -/** - * Describes the enum meshtastic.CompassMode. - */ -export const CompassModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_device_ui, 0); - -/** - * @generated from enum meshtastic.Theme - */ -export enum Theme { - /** - * - * Dark - * - * @generated from enum value: DARK = 0; - */ - DARK = 0, - - /** - * - * Light - * - * @generated from enum value: LIGHT = 1; - */ - LIGHT = 1, - - /** - * - * Red - * - * @generated from enum value: RED = 2; - */ - RED = 2, -} - -/** - * Describes the enum meshtastic.Theme. - */ -export const ThemeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_device_ui, 1); - -/** - * - * Localization - * - * @generated from enum meshtastic.Language - */ -export enum Language { - /** - * - * English - * - * @generated from enum value: ENGLISH = 0; - */ - ENGLISH = 0, - - /** - * - * French - * - * @generated from enum value: FRENCH = 1; - */ - FRENCH = 1, - - /** - * - * German - * - * @generated from enum value: GERMAN = 2; - */ - GERMAN = 2, - - /** - * - * Italian - * - * @generated from enum value: ITALIAN = 3; - */ - ITALIAN = 3, - - /** - * - * Portuguese - * - * @generated from enum value: PORTUGUESE = 4; - */ - PORTUGUESE = 4, - - /** - * - * Spanish - * - * @generated from enum value: SPANISH = 5; - */ - SPANISH = 5, - - /** - * - * Swedish - * - * @generated from enum value: SWEDISH = 6; - */ - SWEDISH = 6, - - /** - * - * Finnish - * - * @generated from enum value: FINNISH = 7; - */ - FINNISH = 7, - - /** - * - * Polish - * - * @generated from enum value: POLISH = 8; - */ - POLISH = 8, - - /** - * - * Turkish - * - * @generated from enum value: TURKISH = 9; - */ - TURKISH = 9, - - /** - * - * Serbian - * - * @generated from enum value: SERBIAN = 10; - */ - SERBIAN = 10, - - /** - * - * Russian - * - * @generated from enum value: RUSSIAN = 11; - */ - RUSSIAN = 11, - - /** - * - * Dutch - * - * @generated from enum value: DUTCH = 12; - */ - DUTCH = 12, - - /** - * - * Greek - * - * @generated from enum value: GREEK = 13; - */ - GREEK = 13, - - /** - * - * Norwegian - * - * @generated from enum value: NORWEGIAN = 14; - */ - NORWEGIAN = 14, - - /** - * - * Slovenian - * - * @generated from enum value: SLOVENIAN = 15; - */ - SLOVENIAN = 15, - - /** - * - * Ukrainian - * - * @generated from enum value: UKRAINIAN = 16; - */ - UKRAINIAN = 16, - - /** - * - * Bulgarian - * - * @generated from enum value: BULGARIAN = 17; - */ - BULGARIAN = 17, - - /** - * - * Czech - * - * @generated from enum value: CZECH = 18; - */ - CZECH = 18, - - /** - * - * Danish - * - * @generated from enum value: DANISH = 19; - */ - DANISH = 19, - - /** - * - * Simplified Chinese (experimental) - * - * @generated from enum value: SIMPLIFIED_CHINESE = 30; - */ - SIMPLIFIED_CHINESE = 30, - - /** - * - * Traditional Chinese (experimental) - * - * @generated from enum value: TRADITIONAL_CHINESE = 31; - */ - TRADITIONAL_CHINESE = 31, -} - -/** - * Describes the enum meshtastic.Language. - */ -export const LanguageSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_device_ui, 2); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/deviceonly_legacy_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/deviceonly_legacy_pb.ts deleted file mode 100644 index 34a91fb13..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/deviceonly_legacy_pb.ts +++ /dev/null @@ -1,132 +0,0 @@ -// @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 = /*@__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 = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly_legacy, 1); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/deviceonly_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/deviceonly_pb.ts deleted file mode 100644 index 9707782ba..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/deviceonly_pb.ts +++ /dev/null @@ -1,636 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/deviceonly.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; -import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; -import type { Channel } from "./channel_pb"; -import { file_meshtastic_channel } from "./channel_pb"; -import type { Config_DeviceConfig_Role } from "./config_pb"; -import { file_meshtastic_config } from "./config_pb"; -import type { LocalConfig, LocalModuleConfig } from "./localonly_pb"; -import { file_meshtastic_localonly } from "./localonly_pb"; -import type { HardwareModel, MeshPacket, MyNodeInfo, NodeRemoteHardwarePin, Position_LocSource, StatusMessage, User } from "./mesh_pb"; -import { file_meshtastic_mesh } from "./mesh_pb"; -import type { DeviceMetrics, EnvironmentMetrics } 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.proto. - */ -export const file_meshtastic_deviceonly: GenFile = /*@__PURE__*/ - fileDesc("ChttZXNodGFzdGljL2RldmljZW9ubHkucHJvdG8SCm1lc2h0YXN0aWMiqAEKDFBvc2l0aW9uTGl0ZRISCgpsYXRpdHVkZV9pGAEgASgPEhMKC2xvbmdpdHVkZV9pGAIgASgPEhAKCGFsdGl0dWRlGAMgASgFEgwKBHRpbWUYBCABKAcSNwoPbG9jYXRpb25fc291cmNlGAUgASgOMh4ubWVzaHRhc3RpYy5Qb3NpdGlvbi5Mb2NTb3VyY2USFgoOcHJlY2lzaW9uX2JpdHMYBiABKA0iggIKCFVzZXJMaXRlEhMKB21hY2FkZHIYASABKAxCAhgBEhEKCWxvbmdfbmFtZRgCIAEoCRISCgpzaG9ydF9uYW1lGAMgASgJEisKCGh3X21vZGVsGAQgASgOMhkubWVzaHRhc3RpYy5IYXJkd2FyZU1vZGVsEhMKC2lzX2xpY2Vuc2VkGAUgASgIEjIKBHJvbGUYBiABKA4yJC5tZXNodGFzdGljLkNvbmZpZy5EZXZpY2VDb25maWcuUm9sZRISCgpwdWJsaWNfa2V5GAcgASgMEhwKD2lzX3VubWVzc2FnYWJsZRgJIAEoCEgAiAEBQhIKEF9pc191bm1lc3NhZ2FibGUiqgMKDE5vZGVJbmZvTGl0ZRILCgNudW0YASABKA0SCwoDc25yGAQgASgCEhIKCmxhc3RfaGVhcmQYBSABKAcSDwoHY2hhbm5lbBgHIAEoDRIWCglob3BzX2F3YXkYCSABKA1IAIgBARIQCghuZXh0X2hvcBgMIAEoDRIQCghiaXRmaWVsZBgNIAEoDRIRCglsb25nX25hbWUYDiABKAkSEgoKc2hvcnRfbmFtZRgPIAEoCRIrCghod19tb2RlbBgQIAEoDjIZLm1lc2h0YXN0aWMuSGFyZHdhcmVNb2RlbBIyCgRyb2xlGBEgASgOMiQubWVzaHRhc3RpYy5Db25maWcuRGV2aWNlQ29uZmlnLlJvbGUSEgoKcHVibGljX2tleRgSIAEoDBIOCgZzbnJfcTQYEyABKBFCDAoKX2hvcHNfYXdheUoECAIQA0oECAMQBEoECAYQB0oECAgQCUoECAoQC0oECAsQDFIEdXNlclIIcG9zaXRpb25SDmRldmljZV9tZXRyaWNzUgh2aWFfbXF0dFILaXNfZmF2b3JpdGVSCmlzX2lnbm9yZWQi6wIKC0RldmljZVN0YXRlEicKB215X25vZGUYAiABKAsyFi5tZXNodGFzdGljLk15Tm9kZUluZm8SHwoFb3duZXIYAyABKAsyEC5tZXNodGFzdGljLlVzZXISLQoNcmVjZWl2ZV9xdWV1ZRgFIAMoCzIWLm1lc2h0YXN0aWMuTWVzaFBhY2tldBIPCgd2ZXJzaW9uGAggASgNEi8KD3J4X3RleHRfbWVzc2FnZRgHIAEoCzIWLm1lc2h0YXN0aWMuTWVzaFBhY2tldBITCgdub19zYXZlGAkgASgIQgIYARIZCg1kaWRfZ3BzX3Jlc2V0GAsgASgIQgIYARIrCgtyeF93YXlwb2ludBgMIAEoCzIWLm1lc2h0YXN0aWMuTWVzaFBhY2tldBJEChlub2RlX3JlbW90ZV9oYXJkd2FyZV9waW5zGA0gAygLMiEubWVzaHRhc3RpYy5Ob2RlUmVtb3RlSGFyZHdhcmVQaW4iTAoRTm9kZVBvc2l0aW9uRW50cnkSCwoDbnVtGAEgASgNEioKCHBvc2l0aW9uGAIgASgLMhgubWVzaHRhc3RpYy5Qb3NpdGlvbkxpdGUiVAoSTm9kZVRlbGVtZXRyeUVudHJ5EgsKA251bRgBIAEoDRIxCg5kZXZpY2VfbWV0cmljcxgCIAEoCzIZLm1lc2h0YXN0aWMuRGV2aWNlTWV0cmljcyJgChROb2RlRW52aXJvbm1lbnRFbnRyeRILCgNudW0YASABKA0SOwoTZW52aXJvbm1lbnRfbWV0cmljcxgCIAEoCzIeLm1lc2h0YXN0aWMuRW52aXJvbm1lbnRNZXRyaWNzIkkKD05vZGVTdGF0dXNFbnRyeRILCgNudW0YASABKA0SKQoGc3RhdHVzGAIgASgLMhkubWVzaHRhc3RpYy5TdGF0dXNNZXNzYWdlIoMECgxOb2RlRGF0YWJhc2USDwoHdmVyc2lvbhgBIAEoDRJTCgVub2RlcxgCIAMoCzIYLm1lc2h0YXN0aWMuTm9kZUluZm9MaXRlQiqSPyeSASRzdGQ6OnZlY3RvcjxtZXNodGFzdGljX05vZGVJbmZvTGl0ZT4SYQoJcG9zaXRpb25zGAMgAygLMh0ubWVzaHRhc3RpYy5Ob2RlUG9zaXRpb25FbnRyeUIvkj8skgEpc3RkOjp2ZWN0b3I8bWVzaHRhc3RpY19Ob2RlUG9zaXRpb25FbnRyeT4SYwoJdGVsZW1ldHJ5GAQgAygLMh4ubWVzaHRhc3RpYy5Ob2RlVGVsZW1ldHJ5RW50cnlCMJI/LZIBKnN0ZDo6dmVjdG9yPG1lc2h0YXN0aWNfTm9kZVRlbGVtZXRyeUVudHJ5PhJaCgZzdGF0dXMYBSADKAsyGy5tZXNodGFzdGljLk5vZGVTdGF0dXNFbnRyeUItkj8qkgEnc3RkOjp2ZWN0b3I8bWVzaHRhc3RpY19Ob2RlU3RhdHVzRW50cnk+EmkKC2Vudmlyb25tZW50GAYgAygLMiAubWVzaHRhc3RpYy5Ob2RlRW52aXJvbm1lbnRFbnRyeUIykj8vkgEsc3RkOjp2ZWN0b3I8bWVzaHRhc3RpY19Ob2RlRW52aXJvbm1lbnRFbnRyeT4iRQoLQ2hhbm5lbEZpbGUSJQoIY2hhbm5lbHMYASADKAsyEy5tZXNodGFzdGljLkNoYW5uZWwSDwoHdmVyc2lvbhgCIAEoDSLiAQoRQmFja3VwUHJlZmVyZW5jZXMSDwoHdmVyc2lvbhgBIAEoDRIRCgl0aW1lc3RhbXAYAiABKAcSJwoGY29uZmlnGAMgASgLMhcubWVzaHRhc3RpYy5Mb2NhbENvbmZpZxI0Cg1tb2R1bGVfY29uZmlnGAQgASgLMh0ubWVzaHRhc3RpYy5Mb2NhbE1vZHVsZUNvbmZpZxIpCghjaGFubmVscxgFIAEoCzIXLm1lc2h0YXN0aWMuQ2hhbm5lbEZpbGUSHwoFb3duZXIYBiABKAsyEC5tZXNodGFzdGljLlVzZXJCbgoUb3JnLm1lc2h0YXN0aWMucHJvdG9CCkRldmljZU9ubHlaImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAJI/C8IBCDx2ZWN0b3I+YgZwcm90bzM", [file_meshtastic_channel, file_meshtastic_config, file_meshtastic_localonly, file_meshtastic_mesh, file_meshtastic_telemetry, file_nanopb]); - -/** - * - * Position with static location information only for NodeDBLite - * - * @generated from message meshtastic.PositionLite - */ -export type PositionLite = Message<"meshtastic.PositionLite"> & { - /** - * - * The new preferred location encoding, multiply by 1e-7 to get degrees - * in floating point - * - * @generated from field: sfixed32 latitude_i = 1; - */ - latitudeI: number; - - /** - * - * TODO: REPLACE - * - * @generated from field: sfixed32 longitude_i = 2; - */ - longitudeI: number; - - /** - * - * In meters above MSL (but see issue #359) - * - * @generated from field: int32 altitude = 3; - */ - altitude: number; - - /** - * - * This is usually not sent over the mesh (to save space), but it is sent - * from the phone so that the local device can set its RTC If it is sent over - * the mesh (because there are devices on the mesh without GPS), it will only - * be sent by devices which has a hardware GPS clock. - * seconds since 1970 - * - * @generated from field: fixed32 time = 4; - */ - time: number; - - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.Position.LocSource location_source = 5; - */ - locationSource: Position_LocSource; - - /** - * - * Indicates the bits of precision set by the sending node - * - * @generated from field: uint32 precision_bits = 6; - */ - precisionBits: number; -}; - -/** - * Describes the message meshtastic.PositionLite. - * Use `create(PositionLiteSchema)` to create a new message. - */ -export const PositionLiteSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 0); - -/** - * @generated from message meshtastic.UserLite - */ -export type UserLite = Message<"meshtastic.UserLite"> & { - /** - * - * This is the addr of the radio. - * - * @generated from field: bytes macaddr = 1 [deprecated = true]; - * @deprecated - */ - macaddr: Uint8Array; - - /** - * - * A full name for this user, i.e. "Kevin Hester" - * - * @generated from field: string long_name = 2; - */ - longName: string; - - /** - * - * A VERY short name, ideally two characters. - * Suitable for a tiny OLED screen - * - * @generated from field: string short_name = 3; - */ - shortName: string; - - /** - * - * TBEAM, HELTEC, etc... - * Starting in 1.2.11 moved to hw_model enum in the NodeInfo object. - * Apps will still need the string here for older builds - * (so OTA update can find the right image), but if the enum is available it will be used instead. - * - * @generated from field: meshtastic.HardwareModel hw_model = 4; - */ - hwModel: HardwareModel; - - /** - * - * In some regions Ham radio operators have different bandwidth limitations than others. - * If this user is a licensed operator, set this flag. - * Also, "long_name" should be their licence number. - * - * @generated from field: bool is_licensed = 5; - */ - isLicensed: boolean; - - /** - * - * Indicates that the user's role in the mesh - * - * @generated from field: meshtastic.Config.DeviceConfig.Role role = 6; - */ - role: Config_DeviceConfig_Role; - - /** - * - * The public key of the user's device. - * This is sent out to other nodes on the mesh to allow them to compute a shared secret key. - * - * @generated from field: bytes public_key = 7; - */ - publicKey: Uint8Array; - - /** - * - * Whether or not the node can be messaged - * - * @generated from field: optional bool is_unmessagable = 9; - */ - isUnmessagable?: boolean | undefined; -}; - -/** - * Describes the message meshtastic.UserLite. - * Use `create(UserLiteSchema)` to create a new message. - */ -export const UserLiteSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 1); - -/** - * @generated from message meshtastic.NodeInfoLite - */ -export type NodeInfoLite = Message<"meshtastic.NodeInfoLite"> & { - /** - * - * The node number - * - * @generated from field: uint32 num = 1; - */ - num: number; - - /** - * - * In-memory SNR of the last received message in dB. Not serialised directly: - * always zeroed before encode; persisted as snr_q4 = 19 below. - * - * @generated from field: float snr = 4; - */ - snr: number; - - /** - * - * Set to indicate the last time we received a packet from this node - * - * @generated from field: fixed32 last_heard = 5; - */ - lastHeard: number; - - /** - * - * local channel index we heard that node on. Only populated if its not the default channel. - * - * @generated from field: uint32 channel = 7; - */ - channel: number; - - /** - * - * Number of hops away from us this node is (0 if direct neighbor) - * - * @generated from field: optional uint32 hops_away = 9; - */ - hopsAway?: number | undefined; - - /** - * - * Last byte of the node number of the node that should be used as the next hop to reach this node. - * - * @generated from field: uint32 next_hop = 12; - */ - nextHop: number; - - /** - * - * Bitfield for storing booleans. See NODEINFO_BITFIELD_* in src/mesh/NodeDB.h. - * - * @generated from field: uint32 bitfield = 13; - */ - bitfield: number; - - /** - * - * A full name for this user, i.e. "Kevin Hester". - * - * @generated from field: string long_name = 14; - */ - longName: string; - - /** - * - * A VERY short name, ideally two characters or an emoji. - * Suitable for a tiny OLED screen. - * - * @generated from field: string short_name = 15; - */ - shortName: string; - - /** - * - * Hardware model the user's device is running. - * - * @generated from field: meshtastic.HardwareModel hw_model = 16; - */ - hwModel: HardwareModel; - - /** - * - * The user's role in the mesh. - * - * @generated from field: meshtastic.Config.DeviceConfig.Role role = 17; - */ - role: Config_DeviceConfig_Role; - - /** - * - * The public key of the user's device, for PKI-based encrypted DMs. - * - * @generated from field: bytes public_key = 18; - */ - publicKey: Uint8Array; - - /** - * - * Q4-encoded SNR: dB × 4, sint32 zigzag. Matches RouteDiscovery convention. - * Encode: snr_q4 = (int32_t)(snr * 4.0f). Decode: snr = snr_q4 / 4.0f. - * float snr is always zeroed on disk; this field carries all persisted SNR. - * - * @generated from field: sint32 snr_q4 = 19; - */ - snrQ4: number; -}; - -/** - * Describes the message meshtastic.NodeInfoLite. - * Use `create(NodeInfoLiteSchema)` to create a new message. - */ -export const NodeInfoLiteSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 2); - -/** - * - * This message is never sent over the wire, but it is used for serializing DB - * state to flash in the device code - * FIXME, since we write this each time we enter deep sleep (and have infinite - * flash) it would be better to use some sort of append only data structure for - * the receive queue and use the preferences store for the other stuff - * - * @generated from message meshtastic.DeviceState - */ -export type DeviceState = Message<"meshtastic.DeviceState"> & { - /** - * - * Read only settings/info about this node - * - * @generated from field: meshtastic.MyNodeInfo my_node = 2; - */ - myNode?: MyNodeInfo | undefined; - - /** - * - * My owner info - * - * @generated from field: meshtastic.User owner = 3; - */ - owner?: User | undefined; - - /** - * - * Received packets saved for delivery to the phone - * - * @generated from field: repeated meshtastic.MeshPacket receive_queue = 5; - */ - receiveQueue: MeshPacket[]; - - /** - * - * A version integer used to invalidate old save files when we make - * incompatible changes This integer is set at build time and is private to - * NodeDB.cpp in the device code. - * - * @generated from field: uint32 version = 8; - */ - version: number; - - /** - * - * We keep the last received text message (only) stored in the device flash, - * so we can show it on the screen. - * Might be null - * - * @generated from field: meshtastic.MeshPacket rx_text_message = 7; - */ - rxTextMessage?: MeshPacket | undefined; - - /** - * - * Used only during development. - * Indicates developer is testing and changes should never be saved to flash. - * Deprecated in 2.3.1 - * - * @generated from field: bool no_save = 9 [deprecated = true]; - * @deprecated - */ - noSave: boolean; - - /** - * - * Previously used to manage GPS factory resets. - * Deprecated in 2.5.23 - * - * @generated from field: bool did_gps_reset = 11 [deprecated = true]; - * @deprecated - */ - didGpsReset: boolean; - - /** - * - * We keep the last received waypoint stored in the device flash, - * so we can show it on the screen. - * Might be null - * - * @generated from field: meshtastic.MeshPacket rx_waypoint = 12; - */ - rxWaypoint?: MeshPacket | undefined; - - /** - * - * The mesh's nodes with their available gpio pins for RemoteHardware module - * - * @generated from field: repeated meshtastic.NodeRemoteHardwarePin node_remote_hardware_pins = 13; - */ - nodeRemoteHardwarePins: NodeRemoteHardwarePin[]; -}; - -/** - * Describes the message meshtastic.DeviceState. - * Use `create(DeviceStateSchema)` to create a new message. - */ -export const DeviceStateSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 3); - -/** - * @generated from message meshtastic.NodePositionEntry - */ -export type NodePositionEntry = Message<"meshtastic.NodePositionEntry"> & { - /** - * @generated from field: uint32 num = 1; - */ - num: number; - - /** - * @generated from field: meshtastic.PositionLite position = 2; - */ - position?: PositionLite | undefined; -}; - -/** - * Describes the message meshtastic.NodePositionEntry. - * Use `create(NodePositionEntrySchema)` to create a new message. - */ -export const NodePositionEntrySchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 4); - -/** - * @generated from message meshtastic.NodeTelemetryEntry - */ -export type NodeTelemetryEntry = Message<"meshtastic.NodeTelemetryEntry"> & { - /** - * @generated from field: uint32 num = 1; - */ - num: number; - - /** - * @generated from field: meshtastic.DeviceMetrics device_metrics = 2; - */ - deviceMetrics?: DeviceMetrics | undefined; -}; - -/** - * Describes the message meshtastic.NodeTelemetryEntry. - * Use `create(NodeTelemetryEntrySchema)` to create a new message. - */ -export const NodeTelemetryEntrySchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 5); - -/** - * @generated from message meshtastic.NodeEnvironmentEntry - */ -export type NodeEnvironmentEntry = Message<"meshtastic.NodeEnvironmentEntry"> & { - /** - * @generated from field: uint32 num = 1; - */ - num: number; - - /** - * @generated from field: meshtastic.EnvironmentMetrics environment_metrics = 2; - */ - environmentMetrics?: EnvironmentMetrics | undefined; -}; - -/** - * Describes the message meshtastic.NodeEnvironmentEntry. - * Use `create(NodeEnvironmentEntrySchema)` to create a new message. - */ -export const NodeEnvironmentEntrySchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 6); - -/** - * @generated from message meshtastic.NodeStatusEntry - */ -export type NodeStatusEntry = Message<"meshtastic.NodeStatusEntry"> & { - /** - * @generated from field: uint32 num = 1; - */ - num: number; - - /** - * @generated from field: meshtastic.StatusMessage status = 2; - */ - status?: StatusMessage | undefined; -}; - -/** - * Describes the message meshtastic.NodeStatusEntry. - * Use `create(NodeStatusEntrySchema)` to create a new message. - */ -export const NodeStatusEntrySchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 7); - -/** - * @generated from message meshtastic.NodeDatabase - */ -export type NodeDatabase = Message<"meshtastic.NodeDatabase"> & { - /** - * - * A version integer used to invalidate old save files when we make - * incompatible changes This integer is set at build time and is private to - * NodeDB.cpp in the device code. - * - * @generated from field: uint32 version = 1; - */ - version: number; - - /** - * - * New lite version of NodeDB to decrease memory footprint - * - * @generated from field: repeated meshtastic.NodeInfoLite nodes = 2; - */ - nodes: NodeInfoLite[]; - - /** - * Per-NodeNum satellite arrays. Constrained platforms (e.g. STM32WL) omit - * these via MESHTASTIC_EXCLUDE_*DB build flags. - * - * @generated from field: repeated meshtastic.NodePositionEntry positions = 3; - */ - positions: NodePositionEntry[]; - - /** - * @generated from field: repeated meshtastic.NodeTelemetryEntry telemetry = 4; - */ - telemetry: NodeTelemetryEntry[]; - - /** - * @generated from field: repeated meshtastic.NodeStatusEntry status = 5; - */ - status: NodeStatusEntry[]; - - /** - * @generated from field: repeated meshtastic.NodeEnvironmentEntry environment = 6; - */ - environment: NodeEnvironmentEntry[]; -}; - -/** - * Describes the message meshtastic.NodeDatabase. - * Use `create(NodeDatabaseSchema)` to create a new message. - */ -export const NodeDatabaseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 8); - -/** - * - * The on-disk saved channels - * - * @generated from message meshtastic.ChannelFile - */ -export type ChannelFile = Message<"meshtastic.ChannelFile"> & { - /** - * - * The channels our node knows about - * - * @generated from field: repeated meshtastic.Channel channels = 1; - */ - channels: Channel[]; - - /** - * - * A version integer used to invalidate old save files when we make - * incompatible changes This integer is set at build time and is private to - * NodeDB.cpp in the device code. - * - * @generated from field: uint32 version = 2; - */ - version: number; -}; - -/** - * Describes the message meshtastic.ChannelFile. - * Use `create(ChannelFileSchema)` to create a new message. - */ -export const ChannelFileSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 9); - -/** - * - * The on-disk backup of the node's preferences - * - * @generated from message meshtastic.BackupPreferences - */ -export type BackupPreferences = Message<"meshtastic.BackupPreferences"> & { - /** - * - * The version of the backup - * - * @generated from field: uint32 version = 1; - */ - version: number; - - /** - * - * The timestamp of the backup (if node has time) - * - * @generated from field: fixed32 timestamp = 2; - */ - timestamp: number; - - /** - * - * The node's configuration - * - * @generated from field: meshtastic.LocalConfig config = 3; - */ - config?: LocalConfig | undefined; - - /** - * - * The node's module configuration - * - * @generated from field: meshtastic.LocalModuleConfig module_config = 4; - */ - moduleConfig?: LocalModuleConfig | undefined; - - /** - * - * The node's channels - * - * @generated from field: meshtastic.ChannelFile channels = 5; - */ - channels?: ChannelFile | undefined; - - /** - * - * The node's user (owner) information - * - * @generated from field: meshtastic.User owner = 6; - */ - owner?: User | undefined; -}; - -/** - * Describes the message meshtastic.BackupPreferences. - * Use `create(BackupPreferencesSchema)` to create a new message. - */ -export const BackupPreferencesSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_deviceonly, 10); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/interdevice_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/interdevice_pb.ts deleted file mode 100644 index 1e17a12d9..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/interdevice_pb.ts +++ /dev/null @@ -1,160 +0,0 @@ -// @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 = /*@__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 = /*@__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 = /*@__PURE__*/ - enumDesc(file_meshtastic_interdevice, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/localonly_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/localonly_pb.ts deleted file mode 100644 index fceda7044..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/localonly_pb.ts +++ /dev/null @@ -1,254 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/localonly.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; -import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; -import type { Config_BluetoothConfig, Config_DeviceConfig, Config_DisplayConfig, Config_LoRaConfig, Config_NetworkConfig, Config_PositionConfig, Config_PowerConfig, Config_SecurityConfig } from "./config_pb"; -import { file_meshtastic_config } from "./config_pb"; -import type { ModuleConfig_AmbientLightingConfig, ModuleConfig_AudioConfig, ModuleConfig_CannedMessageConfig, ModuleConfig_DetectionSensorConfig, ModuleConfig_ExternalNotificationConfig, ModuleConfig_MQTTConfig, ModuleConfig_NeighborInfoConfig, ModuleConfig_PaxcounterConfig, ModuleConfig_RangeTestConfig, ModuleConfig_RemoteHardwareConfig, ModuleConfig_SerialConfig, ModuleConfig_StatusMessageConfig, ModuleConfig_StoreForwardConfig, ModuleConfig_TAKConfig, ModuleConfig_TelemetryConfig, ModuleConfig_TrafficManagementConfig } from "./module_config_pb"; -import { file_meshtastic_module_config } from "./module_config_pb"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/localonly.proto. - */ -export const file_meshtastic_localonly: GenFile = /*@__PURE__*/ - fileDesc("ChptZXNodGFzdGljL2xvY2Fsb25seS5wcm90bxIKbWVzaHRhc3RpYyKyAwoLTG9jYWxDb25maWcSLwoGZGV2aWNlGAEgASgLMh8ubWVzaHRhc3RpYy5Db25maWcuRGV2aWNlQ29uZmlnEjMKCHBvc2l0aW9uGAIgASgLMiEubWVzaHRhc3RpYy5Db25maWcuUG9zaXRpb25Db25maWcSLQoFcG93ZXIYAyABKAsyHi5tZXNodGFzdGljLkNvbmZpZy5Qb3dlckNvbmZpZxIxCgduZXR3b3JrGAQgASgLMiAubWVzaHRhc3RpYy5Db25maWcuTmV0d29ya0NvbmZpZxIxCgdkaXNwbGF5GAUgASgLMiAubWVzaHRhc3RpYy5Db25maWcuRGlzcGxheUNvbmZpZxIrCgRsb3JhGAYgASgLMh0ubWVzaHRhc3RpYy5Db25maWcuTG9SYUNvbmZpZxI1CglibHVldG9vdGgYByABKAsyIi5tZXNodGFzdGljLkNvbmZpZy5CbHVldG9vdGhDb25maWcSDwoHdmVyc2lvbhgIIAEoDRIzCghzZWN1cml0eRgJIAEoCzIhLm1lc2h0YXN0aWMuQ29uZmlnLlNlY3VyaXR5Q29uZmlnIr8IChFMb2NhbE1vZHVsZUNvbmZpZxIxCgRtcXR0GAEgASgLMiMubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuTVFUVENvbmZpZxI1CgZzZXJpYWwYAiABKAsyJS5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5TZXJpYWxDb25maWcSUgoVZXh0ZXJuYWxfbm90aWZpY2F0aW9uGAMgASgLMjMubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuRXh0ZXJuYWxOb3RpZmljYXRpb25Db25maWcSQgoNc3RvcmVfZm9yd2FyZBgEIAEoCzIrLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLlN0b3JlRm9yd2FyZENvbmZpZxI8CgpyYW5nZV90ZXN0GAUgASgLMigubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuUmFuZ2VUZXN0Q29uZmlnEjsKCXRlbGVtZXRyeRgGIAEoCzIoLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLlRlbGVtZXRyeUNvbmZpZxJECg5jYW5uZWRfbWVzc2FnZRgHIAEoCzIsLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLkNhbm5lZE1lc3NhZ2VDb25maWcSMwoFYXVkaW8YCSABKAsyJC5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5BdWRpb0NvbmZpZxJGCg9yZW1vdGVfaGFyZHdhcmUYCiABKAsyLS5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5SZW1vdGVIYXJkd2FyZUNvbmZpZxJCCg1uZWlnaGJvcl9pbmZvGAsgASgLMisubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuTmVpZ2hib3JJbmZvQ29uZmlnEkgKEGFtYmllbnRfbGlnaHRpbmcYDCABKAsyLi5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5BbWJpZW50TGlnaHRpbmdDb25maWcSSAoQZGV0ZWN0aW9uX3NlbnNvchgNIAEoCzIuLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLkRldGVjdGlvblNlbnNvckNvbmZpZxI9CgpwYXhjb3VudGVyGA4gASgLMikubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuUGF4Y291bnRlckNvbmZpZxJDCg1zdGF0dXNtZXNzYWdlGA8gASgLMiwubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuU3RhdHVzTWVzc2FnZUNvbmZpZxJMChJ0cmFmZmljX21hbmFnZW1lbnQYECABKAsyMC5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5UcmFmZmljTWFuYWdlbWVudENvbmZpZxIvCgN0YWsYESABKAsyIi5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5UQUtDb25maWcSDwoHdmVyc2lvbhgIIAEoDUJlChRvcmcubWVzaHRhc3RpYy5wcm90b0IPTG9jYWxPbmx5UHJvdG9zWiJnaXRodWIuY29tL21lc2h0YXN0aWMvZ28vZ2VuZXJhdGVkqgIUTWVzaHRhc3RpYy5Qcm90b2J1ZnO6AgBiBnByb3RvMw", [file_meshtastic_config, file_meshtastic_module_config]); - -/** - * @generated from message meshtastic.LocalConfig - */ -export type LocalConfig = Message<"meshtastic.LocalConfig"> & { - /** - * - * The part of the config that is specific to the Device - * - * @generated from field: meshtastic.Config.DeviceConfig device = 1; - */ - device?: Config_DeviceConfig | undefined; - - /** - * - * The part of the config that is specific to the GPS Position - * - * @generated from field: meshtastic.Config.PositionConfig position = 2; - */ - position?: Config_PositionConfig | undefined; - - /** - * - * The part of the config that is specific to the Power settings - * - * @generated from field: meshtastic.Config.PowerConfig power = 3; - */ - power?: Config_PowerConfig | undefined; - - /** - * - * The part of the config that is specific to the Wifi Settings - * - * @generated from field: meshtastic.Config.NetworkConfig network = 4; - */ - network?: Config_NetworkConfig | undefined; - - /** - * - * The part of the config that is specific to the Display - * - * @generated from field: meshtastic.Config.DisplayConfig display = 5; - */ - display?: Config_DisplayConfig | undefined; - - /** - * - * The part of the config that is specific to the Lora Radio - * - * @generated from field: meshtastic.Config.LoRaConfig lora = 6; - */ - lora?: Config_LoRaConfig | undefined; - - /** - * - * The part of the config that is specific to the Bluetooth settings - * - * @generated from field: meshtastic.Config.BluetoothConfig bluetooth = 7; - */ - bluetooth?: Config_BluetoothConfig | undefined; - - /** - * - * A version integer used to invalidate old save files when we make - * incompatible changes This integer is set at build time and is private to - * NodeDB.cpp in the device code. - * - * @generated from field: uint32 version = 8; - */ - version: number; - - /** - * - * The part of the config that is specific to Security settings - * - * @generated from field: meshtastic.Config.SecurityConfig security = 9; - */ - security?: Config_SecurityConfig | undefined; -}; - -/** - * Describes the message meshtastic.LocalConfig. - * Use `create(LocalConfigSchema)` to create a new message. - */ -export const LocalConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_localonly, 0); - -/** - * @generated from message meshtastic.LocalModuleConfig - */ -export type LocalModuleConfig = Message<"meshtastic.LocalModuleConfig"> & { - /** - * - * The part of the config that is specific to the MQTT module - * - * @generated from field: meshtastic.ModuleConfig.MQTTConfig mqtt = 1; - */ - mqtt?: ModuleConfig_MQTTConfig | undefined; - - /** - * - * The part of the config that is specific to the Serial module - * - * @generated from field: meshtastic.ModuleConfig.SerialConfig serial = 2; - */ - serial?: ModuleConfig_SerialConfig | undefined; - - /** - * - * The part of the config that is specific to the ExternalNotification module - * - * @generated from field: meshtastic.ModuleConfig.ExternalNotificationConfig external_notification = 3; - */ - externalNotification?: ModuleConfig_ExternalNotificationConfig | undefined; - - /** - * - * The part of the config that is specific to the Store & Forward module - * - * @generated from field: meshtastic.ModuleConfig.StoreForwardConfig store_forward = 4; - */ - storeForward?: ModuleConfig_StoreForwardConfig | undefined; - - /** - * - * The part of the config that is specific to the RangeTest module - * - * @generated from field: meshtastic.ModuleConfig.RangeTestConfig range_test = 5; - */ - rangeTest?: ModuleConfig_RangeTestConfig | undefined; - - /** - * - * The part of the config that is specific to the Telemetry module - * - * @generated from field: meshtastic.ModuleConfig.TelemetryConfig telemetry = 6; - */ - telemetry?: ModuleConfig_TelemetryConfig | undefined; - - /** - * - * The part of the config that is specific to the Canned Message module - * - * @generated from field: meshtastic.ModuleConfig.CannedMessageConfig canned_message = 7; - */ - cannedMessage?: ModuleConfig_CannedMessageConfig | undefined; - - /** - * - * The part of the config that is specific to the Audio module - * - * @generated from field: meshtastic.ModuleConfig.AudioConfig audio = 9; - */ - audio?: ModuleConfig_AudioConfig | undefined; - - /** - * - * The part of the config that is specific to the Remote Hardware module - * - * @generated from field: meshtastic.ModuleConfig.RemoteHardwareConfig remote_hardware = 10; - */ - remoteHardware?: ModuleConfig_RemoteHardwareConfig | undefined; - - /** - * - * The part of the config that is specific to the Neighbor Info module - * - * @generated from field: meshtastic.ModuleConfig.NeighborInfoConfig neighbor_info = 11; - */ - neighborInfo?: ModuleConfig_NeighborInfoConfig | undefined; - - /** - * - * The part of the config that is specific to the Ambient Lighting module - * - * @generated from field: meshtastic.ModuleConfig.AmbientLightingConfig ambient_lighting = 12; - */ - ambientLighting?: ModuleConfig_AmbientLightingConfig | undefined; - - /** - * - * The part of the config that is specific to the Detection Sensor module - * - * @generated from field: meshtastic.ModuleConfig.DetectionSensorConfig detection_sensor = 13; - */ - detectionSensor?: ModuleConfig_DetectionSensorConfig | undefined; - - /** - * - * Paxcounter Config - * - * @generated from field: meshtastic.ModuleConfig.PaxcounterConfig paxcounter = 14; - */ - paxcounter?: ModuleConfig_PaxcounterConfig | undefined; - - /** - * - * StatusMessage Config - * - * @generated from field: meshtastic.ModuleConfig.StatusMessageConfig statusmessage = 15; - */ - statusmessage?: ModuleConfig_StatusMessageConfig | undefined; - - /** - * - * The part of the config that is specific to the Traffic Management module - * - * @generated from field: meshtastic.ModuleConfig.TrafficManagementConfig traffic_management = 16; - */ - trafficManagement?: ModuleConfig_TrafficManagementConfig | undefined; - - /** - * - * TAK Config - * - * @generated from field: meshtastic.ModuleConfig.TAKConfig tak = 17; - */ - tak?: ModuleConfig_TAKConfig | undefined; - - /** - * - * A version integer used to invalidate old save files when we make - * incompatible changes This integer is set at build time and is private to - * NodeDB.cpp in the device code. - * - * @generated from field: uint32 version = 8; - */ - version: number; -}; - -/** - * Describes the message meshtastic.LocalModuleConfig. - * Use `create(LocalModuleConfigSchema)` to create a new message. - */ -export const LocalModuleConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_localonly, 1); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/mesh_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/mesh_pb.ts deleted file mode 100644 index 96681d018..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/mesh_pb.ts +++ /dev/null @@ -1,4852 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/mesh.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 { Channel } from "./channel_pb"; -import { file_meshtastic_channel } from "./channel_pb"; -import type { Config, Config_DeviceConfig_Role } from "./config_pb"; -import { file_meshtastic_config } from "./config_pb"; -import type { DeviceUIConfig } from "./device_ui_pb"; -import { file_meshtastic_device_ui } from "./device_ui_pb"; -import type { ModuleConfig, RemoteHardwarePin } from "./module_config_pb"; -import { file_meshtastic_module_config } from "./module_config_pb"; -import type { PortNum } from "./portnums_pb"; -import { file_meshtastic_portnums } from "./portnums_pb"; -import type { DeviceMetrics } from "./telemetry_pb"; -import { file_meshtastic_telemetry } from "./telemetry_pb"; -import type { XModem } from "./xmodem_pb"; -import { file_meshtastic_xmodem } from "./xmodem_pb"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/mesh.proto. - */ -export const file_meshtastic_mesh: GenFile = /*@__PURE__*/ - fileDesc("ChVtZXNodGFzdGljL21lc2gucHJvdG8SCm1lc2h0YXN0aWMihwcKCFBvc2l0aW9uEhcKCmxhdGl0dWRlX2kYASABKA9IAIgBARIYCgtsb25naXR1ZGVfaRgCIAEoD0gBiAEBEhUKCGFsdGl0dWRlGAMgASgFSAKIAQESDAoEdGltZRgEIAEoBxI3Cg9sb2NhdGlvbl9zb3VyY2UYBSABKA4yHi5tZXNodGFzdGljLlBvc2l0aW9uLkxvY1NvdXJjZRI3Cg9hbHRpdHVkZV9zb3VyY2UYBiABKA4yHi5tZXNodGFzdGljLlBvc2l0aW9uLkFsdFNvdXJjZRIRCgl0aW1lc3RhbXAYByABKAcSHwoXdGltZXN0YW1wX21pbGxpc19hZGp1c3QYCCABKAUSGQoMYWx0aXR1ZGVfaGFlGAkgASgRSAOIAQESKAobYWx0aXR1ZGVfZ2VvaWRhbF9zZXBhcmF0aW9uGAogASgRSASIAQESDAoEUERPUBgLIAEoDRIMCgRIRE9QGAwgASgNEgwKBFZET1AYDSABKA0SFAoMZ3BzX2FjY3VyYWN5GA4gASgNEhkKDGdyb3VuZF9zcGVlZBgPIAEoDUgFiAEBEhkKDGdyb3VuZF90cmFjaxgQIAEoDUgGiAEBEhMKC2ZpeF9xdWFsaXR5GBEgASgNEhAKCGZpeF90eXBlGBIgASgNEhQKDHNhdHNfaW5fdmlldxgTIAEoDRIRCglzZW5zb3JfaWQYFCABKA0SEwoLbmV4dF91cGRhdGUYFSABKA0SEgoKc2VxX251bWJlchgWIAEoDRIWCg5wcmVjaXNpb25fYml0cxgXIAEoDSJOCglMb2NTb3VyY2USDQoJTE9DX1VOU0VUEAASDgoKTE9DX01BTlVBTBABEhAKDExPQ19JTlRFUk5BTBACEhAKDExPQ19FWFRFUk5BTBADImIKCUFsdFNvdXJjZRINCglBTFRfVU5TRVQQABIOCgpBTFRfTUFOVUFMEAESEAoMQUxUX0lOVEVSTkFMEAISEAoMQUxUX0VYVEVSTkFMEAMSEgoOQUxUX0JBUk9NRVRSSUMQBEINCgtfbGF0aXR1ZGVfaUIOCgxfbG9uZ2l0dWRlX2lCCwoJX2FsdGl0dWRlQg8KDV9hbHRpdHVkZV9oYWVCHgocX2FsdGl0dWRlX2dlb2lkYWxfc2VwYXJhdGlvbkIPCg1fZ3JvdW5kX3NwZWVkQg8KDV9ncm91bmRfdHJhY2siigIKBFVzZXISCgoCaWQYASABKAkSEQoJbG9uZ19uYW1lGAIgASgJEhIKCnNob3J0X25hbWUYAyABKAkSEwoHbWFjYWRkchgEIAEoDEICGAESKwoIaHdfbW9kZWwYBSABKA4yGS5tZXNodGFzdGljLkhhcmR3YXJlTW9kZWwSEwoLaXNfbGljZW5zZWQYBiABKAgSMgoEcm9sZRgHIAEoDjIkLm1lc2h0YXN0aWMuQ29uZmlnLkRldmljZUNvbmZpZy5Sb2xlEhIKCnB1YmxpY19rZXkYCCABKAwSHAoPaXNfdW5tZXNzYWdhYmxlGAkgASgISACIAQFCEgoQX2lzX3VubWVzc2FnYWJsZSJaCg5Sb3V0ZURpc2NvdmVyeRINCgVyb3V0ZRgBIAMoBxITCgtzbnJfdG93YXJkcxgCIAMoBRISCgpyb3V0ZV9iYWNrGAMgAygHEhAKCHNucl9iYWNrGAQgAygFIpkECgdSb3V0aW5nEjMKDXJvdXRlX3JlcXVlc3QYASABKAsyGi5tZXNodGFzdGljLlJvdXRlRGlzY292ZXJ5SAASMQoLcm91dGVfcmVwbHkYAiABKAsyGi5tZXNodGFzdGljLlJvdXRlRGlzY292ZXJ5SAASMQoMZXJyb3JfcmVhc29uGAMgASgOMhkubWVzaHRhc3RpYy5Sb3V0aW5nLkVycm9ySAAi5wIKBUVycm9yEggKBE5PTkUQABIMCghOT19ST1VURRABEgsKB0dPVF9OQUsQAhILCgdUSU1FT1VUEAMSEAoMTk9fSU5URVJGQUNFEAQSEgoOTUFYX1JFVFJBTlNNSVQQBRIOCgpOT19DSEFOTkVMEAYSDQoJVE9PX0xBUkdFEAcSDwoLTk9fUkVTUE9OU0UQCBIUChBEVVRZX0NZQ0xFX0xJTUlUEAkSDwoLQkFEX1JFUVVFU1QQIBISCg5OT1RfQVVUSE9SSVpFRBAhEg4KClBLSV9GQUlMRUQQIhIWChJQS0lfVU5LTk9XTl9QVUJLRVkQIxIZChVBRE1JTl9CQURfU0VTU0lPTl9LRVkQJBIhCh1BRE1JTl9QVUJMSUNfS0VZX1VOQVVUSE9SSVpFRBAlEhcKE1JBVEVfTElNSVRfRVhDRUVERUQQJhIcChhQS0lfU0VORF9GQUlMX1BVQkxJQ19LRVkQJ0IJCgd2YXJpYW50IuUBCgREYXRhEiQKB3BvcnRudW0YASABKA4yEy5tZXNodGFzdGljLlBvcnROdW0SDwoHcGF5bG9hZBgCIAEoDBIVCg13YW50X3Jlc3BvbnNlGAMgASgIEgwKBGRlc3QYBCABKAcSDgoGc291cmNlGAUgASgHEhIKCnJlcXVlc3RfaWQYBiABKAcSEAoIcmVwbHlfaWQYByABKAcSDQoFZW1vamkYCCABKAcSFQoIYml0ZmllbGQYCSABKA1IAIgBARIYChB4ZWRkc2Ffc2lnbmF0dXJlGAogASgMQgsKCV9iaXRmaWVsZCI+Cg9LZXlWZXJpZmljYXRpb24SDQoFbm9uY2UYASABKAQSDQoFaGFzaDEYAiABKAwSDQoFaGFzaDIYAyABKAwiywMKFFN0b3JlRm9yd2FyZFBsdXNQbHVzEk0KEXNmcHBfbWVzc2FnZV90eXBlGAEgASgOMjIubWVzaHRhc3RpYy5TdG9yZUZvcndhcmRQbHVzUGx1cy5TRlBQX21lc3NhZ2VfdHlwZRIUCgxtZXNzYWdlX2hhc2gYAiABKAwSEwoLY29tbWl0X2hhc2gYAyABKAwSEQoJcm9vdF9oYXNoGAQgASgMEg8KB21lc3NhZ2UYBSABKAwSFwoPZW5jYXBzdWxhdGVkX2lkGAYgASgNEhcKD2VuY2Fwc3VsYXRlZF90bxgHIAEoDRIZChFlbmNhcHN1bGF0ZWRfZnJvbRgIIAEoDRIbChNlbmNhcHN1bGF0ZWRfcnh0aW1lGAkgASgNEhMKC2NoYWluX2NvdW50GAogASgNIpUBChFTRlBQX21lc3NhZ2VfdHlwZRISCg5DQU5PTl9BTk5PVU5DRRAAEg8KC0NIQUlOX1FVRVJZEAESEAoMTElOS19SRVFVRVNUEAMSEAoMTElOS19QUk9WSURFEAQSGgoWTElOS19QUk9WSURFX0ZJUlNUSEFMRhAFEhsKF0xJTktfUFJPVklERV9TRUNPTkRIQUxGEAYi4wIKC1JlbW90ZVNoZWxsEioKAm9wGAEgASgOMh4ubWVzaHRhc3RpYy5SZW1vdGVTaGVsbC5PcENvZGUSEgoKc2Vzc2lvbl9pZBgCIAEoDRILCgNzZXEYAyABKA0SDwoHYWNrX3NlcRgEIAEoDRIPCgdwYXlsb2FkGAUgASgMEgwKBGNvbHMYBiABKA0SDAoEcm93cxgHIAEoDRINCgVmbGFncxgIIAEoDRITCgtsYXN0X3R4X3NlcRgJIAEoDRITCgtsYXN0X3J4X3NlcRgKIAEoDSKPAQoGT3BDb2RlEgwKCE9QX1VOU0VUEAASCAoET1BFThABEgkKBUlOUFVUEAISCgoGUkVTSVpFEAMSCQoFQ0xPU0UQBBIICgRQSU5HEAUSBwoDQUNLEAYSCwoHT1BFTl9PSxBAEgoKBk9VVFBVVBBBEgoKBkNMT1NFRBBCEgkKBUVSUk9SEEMSCAoEUE9ORxBEIrwBCghXYXlwb2ludBIKCgJpZBgBIAEoDRIXCgpsYXRpdHVkZV9pGAIgASgPSACIAQESGAoLbG9uZ2l0dWRlX2kYAyABKA9IAYgBARIOCgZleHBpcmUYBCABKA0SEQoJbG9ja2VkX3RvGAUgASgNEgwKBG5hbWUYBiABKAkSEwoLZGVzY3JpcHRpb24YByABKAkSDAoEaWNvbhgIIAEoB0INCgtfbGF0aXR1ZGVfaUIOCgxfbG9uZ2l0dWRlX2kiHwoNU3RhdHVzTWVzc2FnZRIOCgZzdGF0dXMYASABKAkibAoWTXF0dENsaWVudFByb3h5TWVzc2FnZRINCgV0b3BpYxgBIAEoCRIOCgRkYXRhGAIgASgMSAASDgoEdGV4dBgDIAEoCUgAEhAKCHJldGFpbmVkGAQgASgIQhEKD3BheWxvYWRfdmFyaWFudCLnBwoKTWVzaFBhY2tldBIMCgRmcm9tGAEgASgHEgoKAnRvGAIgASgHEg8KB2NoYW5uZWwYAyABKA0SIwoHZGVjb2RlZBgEIAEoCzIQLm1lc2h0YXN0aWMuRGF0YUgAEhMKCWVuY3J5cHRlZBgFIAEoDEgAEgoKAmlkGAYgASgHEg8KB3J4X3RpbWUYByABKAcSDgoGcnhfc25yGAggASgCEhEKCWhvcF9saW1pdBgJIAEoDRIQCgh3YW50X2FjaxgKIAEoCBIxCghwcmlvcml0eRgLIAEoDjIfLm1lc2h0YXN0aWMuTWVzaFBhY2tldC5Qcmlvcml0eRIPCgdyeF9yc3NpGAwgASgFEjMKB2RlbGF5ZWQYDSABKA4yHi5tZXNodGFzdGljLk1lc2hQYWNrZXQuRGVsYXllZEICGAESEAoIdmlhX21xdHQYDiABKAgSEQoJaG9wX3N0YXJ0GA8gASgNEhIKCnB1YmxpY19rZXkYECABKAwSFQoNcGtpX2VuY3J5cHRlZBgRIAEoCBIQCghuZXh0X2hvcBgSIAEoDRISCgpyZWxheV9ub2RlGBMgASgNEhAKCHR4X2FmdGVyGBQgASgNEkYKE3RyYW5zcG9ydF9tZWNoYW5pc20YFSABKA4yKS5tZXNodGFzdGljLk1lc2hQYWNrZXQuVHJhbnNwb3J0TWVjaGFuaXNtEhUKDXhlZGRzYV9zaWduZWQYFiABKAgifgoIUHJpb3JpdHkSCQoFVU5TRVQQABIHCgNNSU4QARIOCgpCQUNLR1JPVU5EEAoSCwoHREVGQVVMVBBAEgwKCFJFTElBQkxFEEYSDAoIUkVTUE9OU0UQUBIICgRISUdIEGQSCQoFQUxFUlQQbhIHCgNBQ0sQeBIHCgNNQVgQfyJCCgdEZWxheWVkEgwKCE5PX0RFTEFZEAASFQoRREVMQVlFRF9CUk9BRENBU1QQARISCg5ERUxBWUVEX0RJUkVDVBACIuoBChJUcmFuc3BvcnRNZWNoYW5pc20SFgoSVFJBTlNQT1JUX0lOVEVSTkFMEAASEgoOVFJBTlNQT1JUX0xPUkEQARIXChNUUkFOU1BPUlRfTE9SQV9BTFQxEAISFwoTVFJBTlNQT1JUX0xPUkFfQUxUMhADEhcKE1RSQU5TUE9SVF9MT1JBX0FMVDMQBBISCg5UUkFOU1BPUlRfTVFUVBAFEhsKF1RSQU5TUE9SVF9NVUxUSUNBU1RfVURQEAYSEQoNVFJBTlNQT1JUX0FQSRAHEhkKFVRSQU5TUE9SVF9VTklDQVNUX1VEUBAIQhEKD3BheWxvYWRfdmFyaWFudCL0AgoITm9kZUluZm8SCwoDbnVtGAEgASgNEh4KBHVzZXIYAiABKAsyEC5tZXNodGFzdGljLlVzZXISJgoIcG9zaXRpb24YAyABKAsyFC5tZXNodGFzdGljLlBvc2l0aW9uEgsKA3NuchgEIAEoAhISCgpsYXN0X2hlYXJkGAUgASgHEjEKDmRldmljZV9tZXRyaWNzGAYgASgLMhkubWVzaHRhc3RpYy5EZXZpY2VNZXRyaWNzEg8KB2NoYW5uZWwYByABKA0SEAoIdmlhX21xdHQYCCABKAgSFgoJaG9wc19hd2F5GAkgASgNSACIAQESEwoLaXNfZmF2b3JpdGUYCiABKAgSEgoKaXNfaWdub3JlZBgLIAEoCBIgChhpc19rZXlfbWFudWFsbHlfdmVyaWZpZWQYDCABKAgSEAoIaXNfbXV0ZWQYDSABKAgSGQoRaGFzX3hlZGRzYV9zaWduZWQYDiABKAhCDAoKX2hvcHNfYXdheSLBAQoKTXlOb2RlSW5mbxITCgtteV9ub2RlX251bRgBIAEoDRIUCgxyZWJvb3RfY291bnQYCCABKA0SFwoPbWluX2FwcF92ZXJzaW9uGAsgASgNEhEKCWRldmljZV9pZBgMIAEoDBIPCgdwaW9fZW52GA0gASgJEjUKEGZpcm13YXJlX2VkaXRpb24YDiABKA4yGy5tZXNodGFzdGljLkZpcm13YXJlRWRpdGlvbhIUCgxub2RlZGJfY291bnQYDyABKA0iwAEKCUxvZ1JlY29yZBIPCgdtZXNzYWdlGAEgASgJEgwKBHRpbWUYAiABKAcSDgoGc291cmNlGAMgASgJEioKBWxldmVsGAQgASgOMhsubWVzaHRhc3RpYy5Mb2dSZWNvcmQuTGV2ZWwiWAoFTGV2ZWwSCQoFVU5TRVQQABIMCghDUklUSUNBTBAyEgkKBUVSUk9SECgSCwoHV0FSTklORxAeEggKBElORk8QFBIJCgVERUJVRxAKEgkKBVRSQUNFEAUiUAoLUXVldWVTdGF0dXMSCwoDcmVzGAEgASgFEgwKBGZyZWUYAiABKA0SDgoGbWF4bGVuGAMgASgNEhYKDm1lc2hfcGFja2V0X2lkGAQgASgNIrAGCglGcm9tUmFkaW8SCgoCaWQYASABKA0SKAoGcGFja2V0GAIgASgLMhYubWVzaHRhc3RpYy5NZXNoUGFja2V0SAASKQoHbXlfaW5mbxgDIAEoCzIWLm1lc2h0YXN0aWMuTXlOb2RlSW5mb0gAEikKCW5vZGVfaW5mbxgEIAEoCzIULm1lc2h0YXN0aWMuTm9kZUluZm9IABIkCgZjb25maWcYBSABKAsyEi5tZXNodGFzdGljLkNvbmZpZ0gAEisKCmxvZ19yZWNvcmQYBiABKAsyFS5tZXNodGFzdGljLkxvZ1JlY29yZEgAEhwKEmNvbmZpZ19jb21wbGV0ZV9pZBgHIAEoDUgAEhIKCHJlYm9vdGVkGAggASgISAASMAoMbW9kdWxlQ29uZmlnGAkgASgLMhgubWVzaHRhc3RpYy5Nb2R1bGVDb25maWdIABImCgdjaGFubmVsGAogASgLMhMubWVzaHRhc3RpYy5DaGFubmVsSAASLgoLcXVldWVTdGF0dXMYCyABKAsyFy5tZXNodGFzdGljLlF1ZXVlU3RhdHVzSAASKgoMeG1vZGVtUGFja2V0GAwgASgLMhIubWVzaHRhc3RpYy5YTW9kZW1IABIuCghtZXRhZGF0YRgNIAEoCzIaLm1lc2h0YXN0aWMuRGV2aWNlTWV0YWRhdGFIABJEChZtcXR0Q2xpZW50UHJveHlNZXNzYWdlGA4gASgLMiIubWVzaHRhc3RpYy5NcXR0Q2xpZW50UHJveHlNZXNzYWdlSAASKAoIZmlsZUluZm8YDyABKAsyFC5tZXNodGFzdGljLkZpbGVJbmZvSAASPAoSY2xpZW50Tm90aWZpY2F0aW9uGBAgASgLMh4ubWVzaHRhc3RpYy5DbGllbnROb3RpZmljYXRpb25IABI0Cg5kZXZpY2V1aUNvbmZpZxgRIAEoCzIaLm1lc2h0YXN0aWMuRGV2aWNlVUlDb25maWdIABI1Cg9sb2NrZG93bl9zdGF0dXMYEiABKAsyGi5tZXNodGFzdGljLkxvY2tkb3duU3RhdHVzSABCEQoPcGF5bG9hZF92YXJpYW50IpMCCg5Mb2NrZG93blN0YXR1cxIvCgVzdGF0ZRgBIAEoDjIgLm1lc2h0YXN0aWMuTG9ja2Rvd25TdGF0dXMuU3RhdGUSEwoLbG9ja19yZWFzb24YAiABKAkSFwoPYm9vdHNfcmVtYWluaW5nGAMgASgNEhkKEXZhbGlkX3VudGlsX2Vwb2NoGAQgASgNEhcKD2JhY2tvZmZfc2Vjb25kcxgFIAEoDSJuCgVTdGF0ZRIVChFTVEFURV9VTlNQRUNJRklFRBAAEhMKD05FRURTX1BST1ZJU0lPThABEgoKBkxPQ0tFRBACEgwKCFVOTE9DS0VEEAMSEQoNVU5MT0NLX0ZBSUxFRBAEEgwKCERJU0FCTEVEEAUi+gMKEkNsaWVudE5vdGlmaWNhdGlvbhIVCghyZXBseV9pZBgBIAEoDUgBiAEBEgwKBHRpbWUYAiABKAcSKgoFbGV2ZWwYAyABKA4yGy5tZXNodGFzdGljLkxvZ1JlY29yZC5MZXZlbBIPCgdtZXNzYWdlGAQgASgJElEKHmtleV92ZXJpZmljYXRpb25fbnVtYmVyX2luZm9ybRgLIAEoCzInLm1lc2h0YXN0aWMuS2V5VmVyaWZpY2F0aW9uTnVtYmVySW5mb3JtSAASUwofa2V5X3ZlcmlmaWNhdGlvbl9udW1iZXJfcmVxdWVzdBgMIAEoCzIoLm1lc2h0YXN0aWMuS2V5VmVyaWZpY2F0aW9uTnVtYmVyUmVxdWVzdEgAEkIKFmtleV92ZXJpZmljYXRpb25fZmluYWwYDSABKAsyIC5tZXNodGFzdGljLktleVZlcmlmaWNhdGlvbkZpbmFsSAASQAoVZHVwbGljYXRlZF9wdWJsaWNfa2V5GA4gASgLMh8ubWVzaHRhc3RpYy5EdXBsaWNhdGVkUHVibGljS2V5SAASNAoPbG93X2VudHJvcHlfa2V5GA8gASgLMhkubWVzaHRhc3RpYy5Mb3dFbnRyb3B5S2V5SABCEQoPcGF5bG9hZF92YXJpYW50QgsKCV9yZXBseV9pZCJeChtLZXlWZXJpZmljYXRpb25OdW1iZXJJbmZvcm0SDQoFbm9uY2UYASABKAQSFwoPcmVtb3RlX2xvbmduYW1lGAIgASgJEhcKD3NlY3VyaXR5X251bWJlchgDIAEoDSJGChxLZXlWZXJpZmljYXRpb25OdW1iZXJSZXF1ZXN0Eg0KBW5vbmNlGAEgASgEEhcKD3JlbW90ZV9sb25nbmFtZRgCIAEoCSJxChRLZXlWZXJpZmljYXRpb25GaW5hbBINCgVub25jZRgBIAEoBBIXCg9yZW1vdGVfbG9uZ25hbWUYAiABKAkSEAoIaXNTZW5kZXIYAyABKAgSHwoXdmVyaWZpY2F0aW9uX2NoYXJhY3RlcnMYBCABKAkiFQoTRHVwbGljYXRlZFB1YmxpY0tleSIPCg1Mb3dFbnRyb3B5S2V5IjEKCEZpbGVJbmZvEhEKCWZpbGVfbmFtZRgBIAEoCRISCgpzaXplX2J5dGVzGAIgASgNIpQCCgdUb1JhZGlvEigKBnBhY2tldBgBIAEoCzIWLm1lc2h0YXN0aWMuTWVzaFBhY2tldEgAEhgKDndhbnRfY29uZmlnX2lkGAMgASgNSAASFAoKZGlzY29ubmVjdBgEIAEoCEgAEioKDHhtb2RlbVBhY2tldBgFIAEoCzISLm1lc2h0YXN0aWMuWE1vZGVtSAASRAoWbXF0dENsaWVudFByb3h5TWVzc2FnZRgGIAEoCzIiLm1lc2h0YXN0aWMuTXF0dENsaWVudFByb3h5TWVzc2FnZUgAEioKCWhlYXJ0YmVhdBgHIAEoCzIVLm1lc2h0YXN0aWMuSGVhcnRiZWF0SABCEQoPcGF5bG9hZF92YXJpYW50IkAKCkNvbXByZXNzZWQSJAoHcG9ydG51bRgBIAEoDjITLm1lc2h0YXN0aWMuUG9ydE51bRIMCgRkYXRhGAIgASgMIocBCgxOZWlnaGJvckluZm8SDwoHbm9kZV9pZBgBIAEoDRIXCg9sYXN0X3NlbnRfYnlfaWQYAiABKA0SJAocbm9kZV9icm9hZGNhc3RfaW50ZXJ2YWxfc2VjcxgDIAEoDRInCgluZWlnaGJvcnMYBCADKAsyFC5tZXNodGFzdGljLk5laWdoYm9yImQKCE5laWdoYm9yEg8KB25vZGVfaWQYASABKA0SCwoDc25yGAIgASgCEhQKDGxhc3RfcnhfdGltZRgDIAEoBxIkChxub2RlX2Jyb2FkY2FzdF9pbnRlcnZhbF9zZWNzGAQgASgNItcCCg5EZXZpY2VNZXRhZGF0YRIYChBmaXJtd2FyZV92ZXJzaW9uGAEgASgJEhwKFGRldmljZV9zdGF0ZV92ZXJzaW9uGAIgASgNEhMKC2NhblNodXRkb3duGAMgASgIEg8KB2hhc1dpZmkYBCABKAgSFAoMaGFzQmx1ZXRvb3RoGAUgASgIEhMKC2hhc0V0aGVybmV0GAYgASgIEjIKBHJvbGUYByABKA4yJC5tZXNodGFzdGljLkNvbmZpZy5EZXZpY2VDb25maWcuUm9sZRIWCg5wb3NpdGlvbl9mbGFncxgIIAEoDRIrCghod19tb2RlbBgJIAEoDjIZLm1lc2h0YXN0aWMuSGFyZHdhcmVNb2RlbBIZChFoYXNSZW1vdGVIYXJkd2FyZRgKIAEoCBIOCgZoYXNQS0MYCyABKAgSGAoQZXhjbHVkZWRfbW9kdWxlcxgMIAEoDSIaCglIZWFydGJlYXQSDQoFbm9uY2UYASABKA0iVQoVTm9kZVJlbW90ZUhhcmR3YXJlUGluEhAKCG5vZGVfbnVtGAEgASgNEioKA3BpbhgCIAEoCzIdLm1lc2h0YXN0aWMuUmVtb3RlSGFyZHdhcmVQaW4iZQoOQ2h1bmtlZFBheWxvYWQSEgoKcGF5bG9hZF9pZBgBIAEoDRITCgtjaHVua19jb3VudBgCIAEoDRITCgtjaHVua19pbmRleBgDIAEoDRIVCg1wYXlsb2FkX2NodW5rGAQgASgMIh8KDXJlc2VuZF9jaHVua3MSDgoGY2h1bmtzGAEgAygNIqoBChZDaHVua2VkUGF5bG9hZFJlc3BvbnNlEhIKCnBheWxvYWRfaWQYASABKA0SGgoQcmVxdWVzdF90cmFuc2ZlchgCIAEoCEgAEhkKD2FjY2VwdF90cmFuc2ZlchgDIAEoCEgAEjIKDXJlc2VuZF9jaHVua3MYBCABKAsyGS5tZXNodGFzdGljLnJlc2VuZF9jaHVua3NIAEIRCg9wYXlsb2FkX3ZhcmlhbnQqrBUKDUhhcmR3YXJlTW9kZWwSCQoFVU5TRVQQABIMCghUTE9SQV9WMhABEgwKCFRMT1JBX1YxEAISEgoOVExPUkFfVjJfMV8xUDYQAxIJCgVUQkVBTRAEEg8KC0hFTFRFQ19WMl8wEAUSDgoKVEJFQU1fVjBQNxAGEgoKBlRfRUNITxAHEhAKDFRMT1JBX1YxXzFQMxAIEgsKB1JBSzQ2MzEQCRIPCgtIRUxURUNfVjJfMRAKEg0KCUhFTFRFQ19WMRALEhgKFExJTFlHT19UQkVBTV9TM19DT1JFEAwSDAoIUkFLMTEyMDAQDRILCgdOQU5PX0cxEA4SEgoOVExPUkFfVjJfMV8xUDgQDxIPCgtUTE9SQV9UM19TMxAQEhQKEE5BTk9fRzFfRVhQTE9SRVIQERIRCg1OQU5PX0cyX1VMVFJBEBISDQoJTE9SQV9UWVBFEBMSCwoHV0lQSE9ORRAUEg4KCldJT19XTTExMTAQFRILCgdSQUsyNTYwEBYSEwoPSEVMVEVDX0hSVV8zNjAxEBcSGgoWSEVMVEVDX1dJUkVMRVNTX0JSSURHRRAYEg4KClNUQVRJT05fRzEQGRIMCghSQUsxMTMxMBAaEhQKEFNFTlNFTE9SQV9SUDIwNDAQGxIQCgxTRU5TRUxPUkFfUzMQHBINCglDQU5BUllPTkUQHRIPCgtSUDIwNDBfTE9SQRAeEg4KClNUQVRJT05fRzIQHxIRCg1MT1JBX1JFTEFZX1YxECASDwoLVF9FQ0hPX1BMVVMQIRIHCgNQUFIQIhIPCgtHRU5JRUJMT0NLUxAjEhEKDU5SRjUyX1VOS05PV04QJBINCglQT1JURFVJTk8QJRIPCgtBTkRST0lEX1NJTRAmEgoKBkRJWV9WMRAnEhUKEU5SRjUyODQwX1BDQTEwMDU5ECgSCgoGRFJfREVWECkSCwoHTTVTVEFDSxAqEg0KCUhFTFRFQ19WMxArEhEKDUhFTFRFQ19XU0xfVjMQLBITCg9CRVRBRlBWXzI0MDBfVFgQLRIXChNCRVRBRlBWXzkwMF9OQU5PX1RYEC4SDAoIUlBJX1BJQ08QLxIbChdIRUxURUNfV0lSRUxFU1NfVFJBQ0tFUhAwEhkKFUhFTFRFQ19XSVJFTEVTU19QQVBFUhAxEgoKBlRfREVDSxAyEg4KClRfV0FUQ0hfUzMQMxIRCg1QSUNPTVBVVEVSX1MzEDQSDwoLSEVMVEVDX0hUNjIQNRISCg5FQllURV9FU1AzMl9TMxA2EhEKDUVTUDMyX1MzX1BJQ08QNxINCglDSEFUVEVSXzIQOBIeChpIRUxURUNfV0lSRUxFU1NfUEFQRVJfVjFfMBA5EiAKHEhFTFRFQ19XSVJFTEVTU19UUkFDS0VSX1YxXzAQOhILCgdVTlBIT05FEDsSDAoIVERfTE9SQUMQPBITCg9DREVCWVRFX0VPUkFfUzMQPRIPCgtUV0NfTUVTSF9WNBA+EhYKEk5SRjUyX1BST01JQ1JPX0RJWRA/Eh8KG1JBRElPTUFTVEVSXzkwMF9CQU5ESVRfTkFOTxBAEhwKGEhFTFRFQ19DQVBTVUxFX1NFTlNPUl9WMxBBEh0KGUhFTFRFQ19WSVNJT05fTUFTVEVSX1QxOTAQQhIdChlIRUxURUNfVklTSU9OX01BU1RFUl9FMjEzEEMSHQoZSEVMVEVDX1ZJU0lPTl9NQVNURVJfRTI5MBBEEhkKFUhFTFRFQ19NRVNIX05PREVfVDExNBBFEhYKElNFTlNFQ0FQX0lORElDQVRPUhBGEhMKD1RSQUNLRVJfVDEwMDBfRRBHEgsKB1JBSzMxNzIQSBIKCgZXSU9fRTUQSRIaChZSQURJT01BU1RFUl85MDBfQkFORElUEEoSEwoPTUUyNUxTMDFfNFkxMFREEEsSGAoUUlAyMDQwX0ZFQVRIRVJfUkZNOTUQTBIVChFNNVNUQUNLX0NPUkVCQVNJQxBNEhEKDU01U1RBQ0tfQ09SRTIQThINCglSUElfUElDTzIQTxISCg5NNVNUQUNLX0NPUkVTMxBQEhEKDVNFRUVEX1hJQU9fUzMQURILCgdNUzI0U0YxEFISDAoIVExPUkFfQzYQUxIPCgtXSVNNRVNIX1RBUBBUEg0KCVJPVVRBU1RJQxBVEgwKCE1FU0hfVEFCEFYSDAoITUVTSExJTksQVxISCg5YSUFPX05SRjUyX0tJVBBYEhAKDFRISU5LTk9ERV9NMRBZEhAKDFRISU5LTk9ERV9NMhBaEg8KC1RfRVRIX0VMSVRFEFsSFQoRSEVMVEVDX1NFTlNPUl9IVUIQXBINCglNVVpJX0JBU0UQXRIWChJIRUxURUNfTUVTSF9QT0NLRVQQXhIUChBTRUVFRF9TT0xBUl9OT0RFEF8SGAoUTk9NQURTVEFSX01FVEVPUl9QUk8QYBINCglDUk9XUEFORUwQYRILCgdMSU5LXzMyEGISGAoUU0VFRURfV0lPX1RSQUNLRVJfTDEQYxIdChlTRUVFRF9XSU9fVFJBQ0tFUl9MMV9FSU5LEGQSDwoLTVVaSV9SMV9ORU8QZRIOCgpUX0RFQ0tfUFJPEGYSEAoMVF9MT1JBX1BBR0VSEGcSFAoQTTVTVEFDS19SRVNFUlZFRBBoEg8KC1dJU01FU0hfVEFHEGkSCwoHUkFLMzMxMhBqEhAKDFRISU5LTk9ERV9NNRBrEhUKEUhFTFRFQ19NRVNIX1NPTEFSEGwSDwoLVF9FQ0hPX0xJVEUQbRINCglIRUxURUNfVjQQbhIPCgtNNVNUQUNLX0M2TBBvEhkKFU01U1RBQ0tfQ0FSRFBVVEVSX0FEVhBwEh4KGkhFTFRFQ19XSVJFTEVTU19UUkFDS0VSX1YyEHESEQoNVF9XQVRDSF9VTFRSQRByEhAKDFRISU5LTk9ERV9NMxBzEhIKDldJU01FU0hfVEFQX1YyEHQSCwoHUkFLMzQwMRB1EgsKB1JBSzY0MjEQdhIQCgxUSElOS05PREVfTTQQdxIQCgxUSElOS05PREVfTTYQeBISCg5NRVNIU1RJQ0tfMTI2MhB5EhAKDFRCRUFNXzFfV0FUVBB6EhQKEFQ1X1MzX0VQQVBFUl9QUk8QexINCglUQkVBTV9CUEYQfBISCg5NSU5JX0VQQVBFUl9TMxB9EhMKD1RESVNQTEFZX1MzX1BSTxB+EhkKFUhFTFRFQ19NRVNIX05PREVfVDA5NhB/EhgKE1RSQUNLRVJfVDEwMDBfRV9QUk8QgAESEQoMVEhJTktOT0RFX003EIEBEhEKDFRISU5LTk9ERV9NOBCCARIRCgxUSElOS05PREVfTTkQgwESEQoMSEVMVEVDX1Y0X1I4EIQBEhgKE0hFTFRFQ19NRVNIX05PREVfVDEQhQESDwoKU1RBVElPTl9HMxCGARITCg5UX0lNUFVMU0VfUExVUxCHARIQCgtUX0VDSE9fQ0FSRBCIARIZChRTRUVFRF9XSU9fVFJBQ0tFUl9MMhCJARIRCgxDUk9XUEFORUxfUDQQigESGQoUSEVMVEVDX01FU0hfVE9XRVJfVjIQiwESEwoOTUVTSE5PTE9HWV9XMTAQjAESDwoKUFJJVkFURV9IVxD/ASosCglDb25zdGFudHMSCAoEWkVSTxAAEhUKEERBVEFfUEFZTE9BRF9MRU4Q6QEqtAIKEUNyaXRpY2FsRXJyb3JDb2RlEggKBE5PTkUQABIPCgtUWF9XQVRDSERPRxABEhQKEFNMRUVQX0VOVEVSX1dBSVQQAhIMCghOT19SQURJTxADEg8KC1VOU1BFQ0lGSUVEEAQSFQoRVUJMT1hfVU5JVF9GQUlMRUQQBRINCglOT19BWFAxOTIQBhIZChVJTlZBTElEX1JBRElPX1NFVFRJTkcQBxITCg9UUkFOU01JVF9GQUlMRUQQCBIMCghCUk9XTk9VVBAJEhIKDlNYMTI2Ml9GQUlMVVJFEAoSEQoNUkFESU9fU1BJX0JVRxALEiAKHEZMQVNIX0NPUlJVUFRJT05fUkVDT1ZFUkFCTEUQDBIiCh5GTEFTSF9DT1JSVVBUSU9OX1VOUkVDT1ZFUkFCTEUQDSp/Cg9GaXJtd2FyZUVkaXRpb24SCwoHVkFOSUxMQRAAEhEKDVNNQVJUX0NJVElaRU4QARIOCgpPUEVOX1NBVUNFEBASCgoGREVGQ09OEBESDwoLQlVSTklOR19NQU4QEhIOCgpIQU1WRU5USU9OEBMSDwoLRElZX0VESVRJT04QfyqAAwoPRXhjbHVkZWRNb2R1bGVzEhEKDUVYQ0xVREVEX05PTkUQABIPCgtNUVRUX0NPTkZJRxABEhEKDVNFUklBTF9DT05GSUcQAhITCg9FWFROT1RJRl9DT05GSUcQBBIXChNTVE9SRUZPUldBUkRfQ09ORklHEAgSFAoQUkFOR0VURVNUX0NPTkZJRxAQEhQKEFRFTEVNRVRSWV9DT05GSUcQIBIUChBDQU5ORURNU0dfQ09ORklHEEASEQoMQVVESU9fQ09ORklHEIABEhoKFVJFTU9URUhBUkRXQVJFX0NPTkZJRxCAAhIYChNORUlHSEJPUklORk9fQ09ORklHEIAEEhsKFkFNQklFTlRMSUdIVElOR19DT05GSUcQgAgSGwoWREVURUNUSU9OU0VOU09SX0NPTkZJRxCAEBIWChFQQVhDT1VOVEVSX0NPTkZJRxCAIBIVChBCTFVFVE9PVEhfQ09ORklHEIBAEhQKDk5FVFdPUktfQ09ORklHEICAAUJgChRvcmcubWVzaHRhc3RpYy5wcm90b0IKTWVzaFByb3Rvc1oiZ2l0aHViLmNvbS9tZXNodGFzdGljL2dvL2dlbmVyYXRlZKoCFE1lc2h0YXN0aWMuUHJvdG9idWZzugIAYgZwcm90bzM", [file_meshtastic_channel, file_meshtastic_config, file_meshtastic_device_ui, file_meshtastic_module_config, file_meshtastic_portnums, file_meshtastic_telemetry, file_meshtastic_xmodem]); - -/** - * - * A GPS Position - * - * @generated from message meshtastic.Position - */ -export type Position = Message<"meshtastic.Position"> & { - /** - * - * The new preferred location encoding, multiply by 1e-7 to get degrees - * in floating point - * - * @generated from field: optional sfixed32 latitude_i = 1; - */ - latitudeI?: number | undefined; - - /** - * - * TODO: REPLACE - * - * @generated from field: optional sfixed32 longitude_i = 2; - */ - longitudeI?: number | undefined; - - /** - * - * In meters above MSL (but see issue #359) - * - * @generated from field: optional int32 altitude = 3; - */ - altitude?: number | undefined; - - /** - * - * This is usually not sent over the mesh (to save space), but it is sent - * from the phone so that the local device can set its time if it is sent over - * the mesh (because there are devices on the mesh without GPS or RTC). - * seconds since 1970 - * - * @generated from field: fixed32 time = 4; - */ - time: number; - - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.Position.LocSource location_source = 5; - */ - locationSource: Position_LocSource; - - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.Position.AltSource altitude_source = 6; - */ - altitudeSource: Position_AltSource; - - /** - * - * Positional timestamp (actual timestamp of GPS solution) in integer epoch seconds - * - * @generated from field: fixed32 timestamp = 7; - */ - timestamp: number; - - /** - * - * Pos. timestamp milliseconds adjustment (rarely available or required) - * - * @generated from field: int32 timestamp_millis_adjust = 8; - */ - timestampMillisAdjust: number; - - /** - * - * HAE altitude in meters - can be used instead of MSL altitude - * - * @generated from field: optional sint32 altitude_hae = 9; - */ - altitudeHae?: number | undefined; - - /** - * - * Geoidal separation in meters - * - * @generated from field: optional sint32 altitude_geoidal_separation = 10; - */ - altitudeGeoidalSeparation?: number | undefined; - - /** - * - * Horizontal, Vertical and Position Dilution of Precision, in 1/100 units - * - PDOP is sufficient for most cases - * - for higher precision scenarios, HDOP and VDOP can be used instead, - * in which case PDOP becomes redundant (PDOP=sqrt(HDOP^2 + VDOP^2)) - * TODO: REMOVE/INTEGRATE - * - * @generated from field: uint32 PDOP = 11; - */ - PDOP: number; - - /** - * - * TODO: REPLACE - * - * @generated from field: uint32 HDOP = 12; - */ - HDOP: number; - - /** - * - * TODO: REPLACE - * - * @generated from field: uint32 VDOP = 13; - */ - VDOP: number; - - /** - * - * GPS accuracy (a hardware specific constant) in mm - * multiplied with DOP to calculate positional accuracy - * Default: "'bout three meters-ish" :) - * - * @generated from field: uint32 gps_accuracy = 14; - */ - gpsAccuracy: number; - - /** - * - * Ground speed in m/s and True North TRACK in 1/100 degrees - * Clarification of terms: - * - "track" is the direction of motion (measured in horizontal plane) - * - "heading" is where the fuselage points (measured in horizontal plane) - * - "yaw" indicates a relative rotation about the vertical axis - * TODO: REMOVE/INTEGRATE - * - * @generated from field: optional uint32 ground_speed = 15; - */ - groundSpeed?: number | undefined; - - /** - * - * TODO: REPLACE - * - * @generated from field: optional uint32 ground_track = 16; - */ - groundTrack?: number | undefined; - - /** - * - * GPS fix quality (from NMEA GxGGA statement or similar) - * - * @generated from field: uint32 fix_quality = 17; - */ - fixQuality: number; - - /** - * - * GPS fix type 2D/3D (from NMEA GxGSA statement) - * - * @generated from field: uint32 fix_type = 18; - */ - fixType: number; - - /** - * - * GPS "Satellites in View" number - * - * @generated from field: uint32 sats_in_view = 19; - */ - satsInView: number; - - /** - * - * Sensor ID - in case multiple positioning sensors are being used - * - * @generated from field: uint32 sensor_id = 20; - */ - sensorId: number; - - /** - * - * Estimated/expected time (in seconds) until next update: - * - if we update at fixed intervals of X seconds, use X - * - if we update at dynamic intervals (based on relative movement etc), - * but "AT LEAST every Y seconds", use Y - * - * @generated from field: uint32 next_update = 21; - */ - nextUpdate: number; - - /** - * - * A sequence number, incremented with each Position message to help - * detect lost updates if needed - * - * @generated from field: uint32 seq_number = 22; - */ - seqNumber: number; - - /** - * - * Indicates the bits of precision set by the sending node - * - * @generated from field: uint32 precision_bits = 23; - */ - precisionBits: number; -}; - -/** - * Describes the message meshtastic.Position. - * Use `create(PositionSchema)` to create a new message. - */ -export const PositionSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 0); - -/** - * - * How the location was acquired: manual, onboard GPS, external (EUD) GPS - * - * @generated from enum meshtastic.Position.LocSource - */ -export enum Position_LocSource { - /** - * - * TODO: REPLACE - * - * @generated from enum value: LOC_UNSET = 0; - */ - LOC_UNSET = 0, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: LOC_MANUAL = 1; - */ - LOC_MANUAL = 1, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: LOC_INTERNAL = 2; - */ - LOC_INTERNAL = 2, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: LOC_EXTERNAL = 3; - */ - LOC_EXTERNAL = 3, -} - -/** - * Describes the enum meshtastic.Position.LocSource. - */ -export const Position_LocSourceSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 0, 0); - -/** - * - * How the altitude was acquired: manual, GPS int/ext, etc - * Default: same as location_source if present - * - * @generated from enum meshtastic.Position.AltSource - */ -export enum Position_AltSource { - /** - * - * TODO: REPLACE - * - * @generated from enum value: ALT_UNSET = 0; - */ - ALT_UNSET = 0, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: ALT_MANUAL = 1; - */ - ALT_MANUAL = 1, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: ALT_INTERNAL = 2; - */ - ALT_INTERNAL = 2, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: ALT_EXTERNAL = 3; - */ - ALT_EXTERNAL = 3, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: ALT_BAROMETRIC = 4; - */ - ALT_BAROMETRIC = 4, -} - -/** - * Describes the enum meshtastic.Position.AltSource. - */ -export const Position_AltSourceSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 0, 1); - -/** - * - * Broadcast when a newly powered mesh node wants to find a node num it can use - * Sent from the phone over bluetooth to set the user id for the owner of this node. - * Also sent from nodes to each other when a new node signs on (so all clients can have this info) - * The algorithm is as follows: - * when a node starts up, it broadcasts their user and the normal flow is for all - * other nodes to reply with their User as well (so the new node can build its nodedb) - * If a node ever receives a User (not just the first broadcast) message where - * the sender node number equals our node number, that indicates a collision has - * occurred and the following steps should happen: - * If the receiving node (that was already in the mesh)'s macaddr is LOWER than the - * new User who just tried to sign in: it gets to keep its nodenum. - * We send a broadcast message of OUR User (we use a broadcast so that the other node can - * receive our message, considering we have the same id - it also serves to let - * observers correct their nodedb) - this case is rare so it should be okay. - * If any node receives a User where the macaddr is GTE than their local macaddr, - * they have been vetoed and should pick a new random nodenum (filtering against - * whatever it knows about the nodedb) and rebroadcast their User. - * A few nodenums are reserved and will never be requested: - * 0xff - broadcast - * 0 through 3 - for future use - * - * @generated from message meshtastic.User - */ -export type User = Message<"meshtastic.User"> & { - /** - * - * A globally unique ID string for this user. - * In the case of Signal that would mean +16504442323, for the default macaddr derived id it would be !<8 hexidecimal bytes>. - * Note: app developers are encouraged to also use the following standard - * node IDs "^all" (for broadcast), "^local" (for the locally connected node) - * - * @generated from field: string id = 1; - */ - id: string; - - /** - * - * A full name for this user, i.e. "Kevin Hester" - * Limited to 24 bytes of UTF-8: longer names are accepted from senders - * built against the older 39-byte limit, but devices truncate them before - * storing or rebroadcasting. Clients should enforce 24 bytes in their UI. - * - * @generated from field: string long_name = 2; - */ - longName: string; - - /** - * - * A VERY short name, ideally two characters. - * Suitable for a tiny OLED screen - * - * @generated from field: string short_name = 3; - */ - shortName: string; - - /** - * - * Deprecated in Meshtastic 2.1.x - * This is the addr of the radio. - * Not populated by the phone, but added by the esp32 when broadcasting - * - * @generated from field: bytes macaddr = 4 [deprecated = true]; - * @deprecated - */ - macaddr: Uint8Array; - - /** - * - * TBEAM, HELTEC, etc... - * Starting in 1.2.11 moved to hw_model enum in the NodeInfo object. - * Apps will still need the string here for older builds - * (so OTA update can find the right image), but if the enum is available it will be used instead. - * - * @generated from field: meshtastic.HardwareModel hw_model = 5; - */ - hwModel: HardwareModel; - - /** - * - * In some regions Ham radio operators have different bandwidth limitations than others. - * If this user is a licensed operator, set this flag. - * Also, "long_name" should be their licence number. - * - * @generated from field: bool is_licensed = 6; - */ - isLicensed: boolean; - - /** - * - * Indicates that the user's role in the mesh - * - * @generated from field: meshtastic.Config.DeviceConfig.Role role = 7; - */ - role: Config_DeviceConfig_Role; - - /** - * - * The public key of the user's device. - * This is sent out to other nodes on the mesh to allow them to compute a shared secret key. - * - * @generated from field: bytes public_key = 8; - */ - publicKey: Uint8Array; - - /** - * - * Whether or not the node can be messaged - * - * @generated from field: optional bool is_unmessagable = 9; - */ - isUnmessagable?: boolean | undefined; -}; - -/** - * Describes the message meshtastic.User. - * Use `create(UserSchema)` to create a new message. - */ -export const UserSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 1); - -/** - * - * A message used in a traceroute - * - * @generated from message meshtastic.RouteDiscovery - */ -export type RouteDiscovery = Message<"meshtastic.RouteDiscovery"> & { - /** - * - * The list of nodenums this packet has visited so far to the destination. - * - * @generated from field: repeated fixed32 route = 1; - */ - route: number[]; - - /** - * - * The list of SNRs (in dB, scaled by 4) in the route towards the destination. - * - * @generated from field: repeated int32 snr_towards = 2; - */ - snrTowards: number[]; - - /** - * - * The list of nodenums the packet has visited on the way back from the destination. - * - * @generated from field: repeated fixed32 route_back = 3; - */ - routeBack: number[]; - - /** - * - * The list of SNRs (in dB, scaled by 4) in the route back from the destination. - * - * @generated from field: repeated int32 snr_back = 4; - */ - snrBack: number[]; -}; - -/** - * Describes the message meshtastic.RouteDiscovery. - * Use `create(RouteDiscoverySchema)` to create a new message. - */ -export const RouteDiscoverySchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 2); - -/** - * - * A Routing control Data packet handled by the routing module - * - * @generated from message meshtastic.Routing - */ -export type Routing = Message<"meshtastic.Routing"> & { - /** - * @generated from oneof meshtastic.Routing.variant - */ - variant: { - /** - * - * A route request going from the requester - * - * @generated from field: meshtastic.RouteDiscovery route_request = 1; - */ - value: RouteDiscovery; - case: "routeRequest"; - } | { - /** - * - * A route reply - * - * @generated from field: meshtastic.RouteDiscovery route_reply = 2; - */ - value: RouteDiscovery; - case: "routeReply"; - } | { - /** - * - * A failure in delivering a message (usually used for routing control messages, but might be provided - * in addition to ack.fail_id to provide details on the type of failure). - * - * @generated from field: meshtastic.Routing.Error error_reason = 3; - */ - value: Routing_Error; - case: "errorReason"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.Routing. - * Use `create(RoutingSchema)` to create a new message. - */ -export const RoutingSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 3); - -/** - * - * A failure in delivering a message (usually used for routing control messages, but might be provided in addition to ack.fail_id to provide - * details on the type of failure). - * - * @generated from enum meshtastic.Routing.Error - */ -export enum Routing_Error { - /** - * - * This message is not a failure - * - * @generated from enum value: NONE = 0; - */ - NONE = 0, - - /** - * - * Our node doesn't have a route to the requested destination anymore. - * - * @generated from enum value: NO_ROUTE = 1; - */ - NO_ROUTE = 1, - - /** - * - * We received a nak while trying to forward on your behalf - * - * @generated from enum value: GOT_NAK = 2; - */ - GOT_NAK = 2, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: TIMEOUT = 3; - */ - TIMEOUT = 3, - - /** - * - * No suitable interface could be found for delivering this packet - * - * @generated from enum value: NO_INTERFACE = 4; - */ - NO_INTERFACE = 4, - - /** - * - * We reached the max retransmission count (typically for naive flood routing) - * - * @generated from enum value: MAX_RETRANSMIT = 5; - */ - MAX_RETRANSMIT = 5, - - /** - * - * No suitable channel was found for sending this packet (i.e. was requested channel index disabled?) - * - * @generated from enum value: NO_CHANNEL = 6; - */ - NO_CHANNEL = 6, - - /** - * - * The packet was too big for sending (exceeds interface MTU after encoding) - * - * @generated from enum value: TOO_LARGE = 7; - */ - TOO_LARGE = 7, - - /** - * - * The request had want_response set, the request reached the destination node, but no service on that node wants to send a response - * (possibly due to bad channel permissions) - * - * @generated from enum value: NO_RESPONSE = 8; - */ - NO_RESPONSE = 8, - - /** - * - * Cannot send currently because duty cycle regulations will be violated. - * - * @generated from enum value: DUTY_CYCLE_LIMIT = 9; - */ - DUTY_CYCLE_LIMIT = 9, - - /** - * - * The application layer service on the remote node received your request, but considered your request somehow invalid - * - * @generated from enum value: BAD_REQUEST = 32; - */ - BAD_REQUEST = 32, - - /** - * - * The application layer service on the remote node received your request, but considered your request not authorized - * (i.e you did not send the request on the required bound channel) - * - * @generated from enum value: NOT_AUTHORIZED = 33; - */ - NOT_AUTHORIZED = 33, - - /** - * - * The client specified a PKI transport, but the node was unable to send the packet using PKI (and did not send the message at all) - * - * @generated from enum value: PKI_FAILED = 34; - */ - PKI_FAILED = 34, - - /** - * - * The receiving node does not have a Public Key to decode with - * - * @generated from enum value: PKI_UNKNOWN_PUBKEY = 35; - */ - PKI_UNKNOWN_PUBKEY = 35, - - /** - * - * Admin packet otherwise checks out, but uses a bogus or expired session key - * - * @generated from enum value: ADMIN_BAD_SESSION_KEY = 36; - */ - ADMIN_BAD_SESSION_KEY = 36, - - /** - * - * Admin packet sent using PKC, but not from a public key on the admin key list - * - * @generated from enum value: ADMIN_PUBLIC_KEY_UNAUTHORIZED = 37; - */ - ADMIN_PUBLIC_KEY_UNAUTHORIZED = 37, - - /** - * - * Airtime fairness rate limit exceeded for a packet - * This typically enforced per portnum and is used to prevent a single node from monopolizing airtime - * - * @generated from enum value: RATE_LIMIT_EXCEEDED = 38; - */ - RATE_LIMIT_EXCEEDED = 38, - - /** - * - * PKI encryption failed, due to no public key for the remote node - * This is different from PKI_UNKNOWN_PUBKEY which indicates a failure upon receiving a packet - * - * @generated from enum value: PKI_SEND_FAIL_PUBLIC_KEY = 39; - */ - PKI_SEND_FAIL_PUBLIC_KEY = 39, -} - -/** - * Describes the enum meshtastic.Routing.Error. - */ -export const Routing_ErrorSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 3, 0); - -/** - * - * (Formerly called SubPacket) - * The payload portion fo a packet, this is the actual bytes that are sent - * inside a radio packet (because from/to are broken out by the comms library) - * - * @generated from message meshtastic.Data - */ -export type Data = Message<"meshtastic.Data"> & { - /** - * - * Formerly named typ and of type Type - * - * @generated from field: meshtastic.PortNum portnum = 1; - */ - portnum: PortNum; - - /** - * - * TODO: REPLACE - * - * @generated from field: bytes payload = 2; - */ - payload: Uint8Array; - - /** - * - * Not normally used, but for testing a sender can request that recipient - * responds in kind (i.e. if it received a position, it should unicast back it's position). - * Note: that if you set this on a broadcast you will receive many replies. - * - * @generated from field: bool want_response = 3; - */ - wantResponse: boolean; - - /** - * - * The address of the destination node. - * This field is is filled in by the mesh radio device software, application - * layer software should never need it. - * RouteDiscovery messages _must_ populate this. - * Other message types might need to if they are doing multihop routing. - * - * @generated from field: fixed32 dest = 4; - */ - dest: number; - - /** - * - * The address of the original sender for this message. - * This field should _only_ be populated for reliable multihop packets (to keep - * packets small). - * - * @generated from field: fixed32 source = 5; - */ - source: number; - - /** - * - * Only used in routing or response messages. - * Indicates the original message ID that this message is reporting failure on. (formerly called original_id) - * - * @generated from field: fixed32 request_id = 6; - */ - requestId: number; - - /** - * - * If set, this message is intened to be a reply to a previously sent message with the defined id. - * - * @generated from field: fixed32 reply_id = 7; - */ - replyId: number; - - /** - * - * Defaults to false. If true, then what is in the payload should be treated as an emoji like giving - * a message a heart or poop emoji. - * - * @generated from field: fixed32 emoji = 8; - */ - emoji: number; - - /** - * - * Bitfield for extra flags. First use is to indicate that user approves the packet being uploaded to MQTT. - * - * @generated from field: optional uint32 bitfield = 9; - */ - bitfield?: number | undefined; - - /** - * - * XEdDSA signature for the payload - * - * @generated from field: bytes xeddsa_signature = 10; - */ - xeddsaSignature: Uint8Array; -}; - -/** - * Describes the message meshtastic.Data. - * Use `create(DataSchema)` to create a new message. - */ -export const DataSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 4); - -/** - * - * The actual over-the-mesh message doing KeyVerification - * - * @generated from message meshtastic.KeyVerification - */ -export type KeyVerification = Message<"meshtastic.KeyVerification"> & { - /** - * - * random value Selected by the requesting node - * - * @generated from field: uint64 nonce = 1; - */ - nonce: bigint; - - /** - * - * The final authoritative hash, only to be sent by NodeA at the end of the handshake - * - * @generated from field: bytes hash1 = 2; - */ - hash1: Uint8Array; - - /** - * - * The intermediary hash (actually derived from hash1), - * sent from NodeB to NodeA in response to the initial message. - * - * @generated from field: bytes hash2 = 3; - */ - hash2: Uint8Array; -}; - -/** - * Describes the message meshtastic.KeyVerification. - * Use `create(KeyVerificationSchema)` to create a new message. - */ -export const KeyVerificationSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 5); - -/** - * - * The actual over-the-mesh message doing store and forward++ - * - * @generated from message meshtastic.StoreForwardPlusPlus - */ -export type StoreForwardPlusPlus = Message<"meshtastic.StoreForwardPlusPlus"> & { - /** - * - * Which message type is this - * - * @generated from field: meshtastic.StoreForwardPlusPlus.SFPP_message_type sfpp_message_type = 1; - */ - sfppMessageType: StoreForwardPlusPlus_SFPP_message_type; - - /** - * - * The hash of the specific message - * - * @generated from field: bytes message_hash = 2; - */ - messageHash: Uint8Array; - - /** - * - * The hash of a link on a chain - * - * @generated from field: bytes commit_hash = 3; - */ - commitHash: Uint8Array; - - /** - * - * the root hash of a chain - * - * @generated from field: bytes root_hash = 4; - */ - rootHash: Uint8Array; - - /** - * - * The encrypted bytes from a message - * - * @generated from field: bytes message = 5; - */ - message: Uint8Array; - - /** - * - * Message ID of the contained message - * - * @generated from field: uint32 encapsulated_id = 6; - */ - encapsulatedId: number; - - /** - * - * Destination of the contained message - * - * @generated from field: uint32 encapsulated_to = 7; - */ - encapsulatedTo: number; - - /** - * - * Sender of the contained message - * - * @generated from field: uint32 encapsulated_from = 8; - */ - encapsulatedFrom: number; - - /** - * - * The receive time of the message in question - * - * @generated from field: uint32 encapsulated_rxtime = 9; - */ - encapsulatedRxtime: number; - - /** - * - * Used in a LINK_REQUEST to specify the message X spots back from head - * - * @generated from field: uint32 chain_count = 10; - */ - chainCount: number; -}; - -/** - * Describes the message meshtastic.StoreForwardPlusPlus. - * Use `create(StoreForwardPlusPlusSchema)` to create a new message. - */ -export const StoreForwardPlusPlusSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 6); - -/** - * - * Enum of message types - * - * @generated from enum meshtastic.StoreForwardPlusPlus.SFPP_message_type - */ -export enum StoreForwardPlusPlus_SFPP_message_type { - /** - * - * Send an announcement of the canonical tip of a chain - * - * @generated from enum value: CANON_ANNOUNCE = 0; - */ - CANON_ANNOUNCE = 0, - - /** - * - * Query whether a specific link is on the chain - * - * @generated from enum value: CHAIN_QUERY = 1; - */ - CHAIN_QUERY = 1, - - /** - * - * Request the next link in the chain - * - * @generated from enum value: LINK_REQUEST = 3; - */ - LINK_REQUEST = 3, - - /** - * - * Provide a link to add to the chain - * - * @generated from enum value: LINK_PROVIDE = 4; - */ - LINK_PROVIDE = 4, - - /** - * - * If we must fragment, send the first half - * - * @generated from enum value: LINK_PROVIDE_FIRSTHALF = 5; - */ - LINK_PROVIDE_FIRSTHALF = 5, - - /** - * - * If we must fragment, send the second half - * - * @generated from enum value: LINK_PROVIDE_SECONDHALF = 6; - */ - LINK_PROVIDE_SECONDHALF = 6, -} - -/** - * Describes the enum meshtastic.StoreForwardPlusPlus.SFPP_message_type. - */ -export const StoreForwardPlusPlus_SFPP_message_typeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 6, 0); - -/** - * - * The actual over-the-mesh message doing RemoteShell - * - * @generated from message meshtastic.RemoteShell - */ -export type RemoteShell = Message<"meshtastic.RemoteShell"> & { - /** - * - * Structured frame operation. - * - * @generated from field: meshtastic.RemoteShell.OpCode op = 1; - */ - op: RemoteShell_OpCode; - - /** - * - * Logical PTY session identifier. - * - * @generated from field: uint32 session_id = 2; - */ - sessionId: number; - - /** - * - * Monotonic sequence number for this frame. - * - * @generated from field: uint32 seq = 3; - */ - seq: number; - - /** - * - * Cumulative ack sequence number. - * - * @generated from field: uint32 ack_seq = 4; - */ - ackSeq: number; - - /** - * - * Opaque bytes payload for INPUT/OUTPUT/ERROR and other frame bodies. - * - * @generated from field: bytes payload = 5; - */ - payload: Uint8Array; - - /** - * - * Terminal size columns used for OPEN/RESIZE signaling. - * - * @generated from field: uint32 cols = 6; - */ - cols: number; - - /** - * - * Terminal size rows used for OPEN/RESIZE signaling. - * - * @generated from field: uint32 rows = 7; - */ - rows: number; - - /** - * - * Bit flags for protocol extensions. - * - * @generated from field: uint32 flags = 8; - */ - flags: number; - - /** - * - * The last sequence number TX'd. - * - * @generated from field: uint32 last_tx_seq = 9; - */ - lastTxSeq: number; - - /** - * - * The last sequence number RX'd. - * - * @generated from field: uint32 last_rx_seq = 10; - */ - lastRxSeq: number; -}; - -/** - * Describes the message meshtastic.RemoteShell. - * Use `create(RemoteShellSchema)` to create a new message. - */ -export const RemoteShellSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 7); - -/** - * - * Frame op code for PTY session control and stream transport. - * - * Values 1-63 are client->server requests. - * Values 64-127 are server->client responses/events. - * - * @generated from enum meshtastic.RemoteShell.OpCode - */ -export enum RemoteShell_OpCode { - /** - * @generated from enum value: OP_UNSET = 0; - */ - OP_UNSET = 0, - - /** - * Client -> server - * - * @generated from enum value: OPEN = 1; - */ - OPEN = 1, - - /** - * @generated from enum value: INPUT = 2; - */ - INPUT = 2, - - /** - * @generated from enum value: RESIZE = 3; - */ - RESIZE = 3, - - /** - * @generated from enum value: CLOSE = 4; - */ - CLOSE = 4, - - /** - * @generated from enum value: PING = 5; - */ - PING = 5, - - /** - * @generated from enum value: ACK = 6; - */ - ACK = 6, - - /** - * Server -> client - * - * @generated from enum value: OPEN_OK = 64; - */ - OPEN_OK = 64, - - /** - * @generated from enum value: OUTPUT = 65; - */ - OUTPUT = 65, - - /** - * @generated from enum value: CLOSED = 66; - */ - CLOSED = 66, - - /** - * @generated from enum value: ERROR = 67; - */ - ERROR = 67, - - /** - * @generated from enum value: PONG = 68; - */ - PONG = 68, -} - -/** - * Describes the enum meshtastic.RemoteShell.OpCode. - */ -export const RemoteShell_OpCodeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 7, 0); - -/** - * - * Waypoint message, used to share arbitrary locations across the mesh - * - * @generated from message meshtastic.Waypoint - */ -export type Waypoint = Message<"meshtastic.Waypoint"> & { - /** - * - * Id of the waypoint - * - * @generated from field: uint32 id = 1; - */ - id: number; - - /** - * - * latitude_i - * - * @generated from field: optional sfixed32 latitude_i = 2; - */ - latitudeI?: number | undefined; - - /** - * - * longitude_i - * - * @generated from field: optional sfixed32 longitude_i = 3; - */ - longitudeI?: number | undefined; - - /** - * - * Time the waypoint is to expire (epoch) - * - * @generated from field: uint32 expire = 4; - */ - expire: number; - - /** - * - * If greater than zero, treat the value as a nodenum only allowing them to update the waypoint. - * If zero, the waypoint is open to be edited by any member of the mesh. - * - * @generated from field: uint32 locked_to = 5; - */ - lockedTo: number; - - /** - * - * Name of the waypoint - max 30 chars - * - * @generated from field: string name = 6; - */ - name: string; - - /** - * - * Description of the waypoint - max 100 chars - * - * @generated from field: string description = 7; - */ - description: string; - - /** - * - * Designator icon for the waypoint in the form of a unicode emoji - * - * @generated from field: fixed32 icon = 8; - */ - icon: number; -}; - -/** - * Describes the message meshtastic.Waypoint. - * Use `create(WaypointSchema)` to create a new message. - */ -export const WaypointSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 8); - -/** - * - * Message for node status - * - * @generated from message meshtastic.StatusMessage - */ -export type StatusMessage = Message<"meshtastic.StatusMessage"> & { - /** - * @generated from field: string status = 1; - */ - status: string; -}; - -/** - * Describes the message meshtastic.StatusMessage. - * Use `create(StatusMessageSchema)` to create a new message. - */ -export const StatusMessageSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 9); - -/** - * - * This message will be proxied over the PhoneAPI for the client to deliver to the MQTT server - * - * @generated from message meshtastic.MqttClientProxyMessage - */ -export type MqttClientProxyMessage = Message<"meshtastic.MqttClientProxyMessage"> & { - /** - * - * The MQTT topic this message will be sent /received on - * - * @generated from field: string topic = 1; - */ - topic: string; - - /** - * - * The actual service envelope payload or text for mqtt pub / sub - * - * @generated from oneof meshtastic.MqttClientProxyMessage.payload_variant - */ - payloadVariant: { - /** - * - * Bytes - * - * @generated from field: bytes data = 2; - */ - value: Uint8Array; - case: "data"; - } | { - /** - * - * Text - * - * @generated from field: string text = 3; - */ - value: string; - case: "text"; - } | { case: undefined; value?: undefined }; - - /** - * - * Whether the message should be retained (or not) - * - * @generated from field: bool retained = 4; - */ - retained: boolean; -}; - -/** - * Describes the message meshtastic.MqttClientProxyMessage. - * Use `create(MqttClientProxyMessageSchema)` to create a new message. - */ -export const MqttClientProxyMessageSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 10); - -/** - * - * A packet envelope sent/received over the mesh - * only payload_variant is sent in the payload portion of the LORA packet. - * The other fields are either not sent at all, or sent in the special 16 byte LORA header. - * - * @generated from message meshtastic.MeshPacket - */ -export type MeshPacket = Message<"meshtastic.MeshPacket"> & { - /** - * - * The sending node number. - * Note: Our crypto implementation uses this field as well. - * See [crypto](/docs/overview/encryption) for details. - * - * @generated from field: fixed32 from = 1; - */ - from: number; - - /** - * - * The (immediate) destination for this packet - * If the value is 4,294,967,295 (maximum value of an unsigned 32bit integer), this indicates that the packet was - * not destined for a specific node, but for a channel as indicated by the value of `channel` below. - * If the value is another, this indicates that the packet was destined for a specific - * node (i.e. a kind of "Direct Message" to this node) and not broadcast on a channel. - * - * @generated from field: fixed32 to = 2; - */ - to: number; - - /** - * - * (Usually) If set, this indicates the index in the secondary_channels table that this packet was sent/received on. - * If unset, packet was on the primary channel. - * A particular node might know only a subset of channels in use on the mesh. - * Therefore channel_index is inherently a local concept and meaningless to send between nodes. - * Very briefly, while sending and receiving deep inside the device Router code, this field instead - * contains the 'channel hash' instead of the index. - * This 'trick' is only used while the payload_variant is an 'encrypted'. - * - * @generated from field: uint32 channel = 3; - */ - channel: number; - - /** - * @generated from oneof meshtastic.MeshPacket.payload_variant - */ - payloadVariant: { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.Data decoded = 4; - */ - value: Data; - case: "decoded"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: bytes encrypted = 5; - */ - value: Uint8Array; - case: "encrypted"; - } | { case: undefined; value?: undefined }; - - /** - * - * A unique ID for this packet. - * Always 0 for no-ack packets or non broadcast packets (and therefore take zero bytes of space). - * Otherwise a unique ID for this packet, useful for flooding algorithms. - * ID only needs to be unique on a _per sender_ basis, and it only - * needs to be unique for a few minutes (long enough to last for the length of - * any ACK or the completion of a mesh broadcast flood). - * Note: Our crypto implementation uses this id as well. - * See [crypto](/docs/overview/encryption) for details. - * - * @generated from field: fixed32 id = 6; - */ - id: number; - - /** - * - * The time this message was received by the esp32 (secs since 1970). - * Note: this field is _never_ sent on the radio link itself (to save space) Times - * are typically not sent over the mesh, but they will be added to any Packet - * (chain of SubPacket) sent to the phone (so the phone can know exact time of reception) - * - * @generated from field: fixed32 rx_time = 7; - */ - rxTime: number; - - /** - * - * *Never* sent over the radio links. - * Set during reception to indicate the SNR of this packet. - * Used to collect statistics on current link quality. - * - * @generated from field: float rx_snr = 8; - */ - rxSnr: number; - - /** - * - * If unset treated as zero (no forwarding, send to direct neighbor nodes only) - * if 1, allow hopping through one node, etc... - * For our usecase real world topologies probably have a max of about 3. - * This field is normally placed into a few of bits in the header. - * - * @generated from field: uint32 hop_limit = 9; - */ - hopLimit: number; - - /** - * - * This packet is being sent as a reliable message, we would prefer it to arrive at the destination. - * We would like to receive a ack packet in response. - * Broadcasts messages treat this flag specially: Since acks for broadcasts would - * rapidly flood the channel, the normal ack behavior is suppressed. - * Instead, the original sender listens to see if at least one node is rebroadcasting this packet (because naive flooding algorithm). - * If it hears that the odds (given typical LoRa topologies) the odds are very high that every node should eventually receive the message. - * So FloodingRouter.cpp generates an implicit ack which is delivered to the original sender. - * If after some time we don't hear anyone rebroadcast our packet, we will timeout and retransmit, using the regular resend logic. - * Note: This flag is normally sent in a flag bit in the header when sent over the wire - * - * @generated from field: bool want_ack = 10; - */ - wantAck: boolean; - - /** - * - * The priority of this message for sending. - * See MeshPacket.Priority description for more details. - * - * @generated from field: meshtastic.MeshPacket.Priority priority = 11; - */ - priority: MeshPacket_Priority; - - /** - * - * rssi of received packet. Only sent to phone for dispay purposes. - * - * @generated from field: int32 rx_rssi = 12; - */ - rxRssi: number; - - /** - * - * Describe if this message is delayed - * - * @generated from field: meshtastic.MeshPacket.Delayed delayed = 13 [deprecated = true]; - * @deprecated - */ - delayed: MeshPacket_Delayed; - - /** - * - * Describes whether this packet passed via MQTT somewhere along the path it currently took. - * - * @generated from field: bool via_mqtt = 14; - */ - viaMqtt: boolean; - - /** - * - * Hop limit with which the original packet started. Sent via LoRa using three bits in the unencrypted header. - * When receiving a packet, the difference between hop_start and hop_limit gives how many hops it traveled. - * - * @generated from field: uint32 hop_start = 15; - */ - hopStart: number; - - /** - * - * Records the public key the packet was encrypted with, if applicable. - * - * @generated from field: bytes public_key = 16; - */ - publicKey: Uint8Array; - - /** - * - * Indicates whether the packet was en/decrypted using PKI - * - * @generated from field: bool pki_encrypted = 17; - */ - pkiEncrypted: boolean; - - /** - * - * Last byte of the node number of the node that should be used as the next hop in routing. - * Set by the firmware internally, clients are not supposed to set this. - * - * @generated from field: uint32 next_hop = 18; - */ - nextHop: number; - - /** - * - * Last byte of the node number of the node that will relay/relayed this packet. - * Set by the firmware internally, clients are not supposed to set this. - * - * @generated from field: uint32 relay_node = 19; - */ - relayNode: number; - - /** - * - * *Never* sent over the radio links. - * Timestamp after which this packet may be sent. - * Set by the firmware internally, clients are not supposed to set this. - * - * @generated from field: uint32 tx_after = 20; - */ - txAfter: number; - - /** - * - * Indicates which transport mechanism this packet arrived over - * - * @generated from field: meshtastic.MeshPacket.TransportMechanism transport_mechanism = 21; - */ - transportMechanism: MeshPacket_TransportMechanism; - - /** - * - * Indicates whether the packet has a valid signature - * - * @generated from field: bool xeddsa_signed = 22; - */ - xeddsaSigned: boolean; -}; - -/** - * Describes the message meshtastic.MeshPacket. - * Use `create(MeshPacketSchema)` to create a new message. - */ -export const MeshPacketSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 11); - -/** - * - * The priority of this message for sending. - * Higher priorities are sent first (when managing the transmit queue). - * This field is never sent over the air, it is only used internally inside of a local device node. - * API clients (either on the local node or connected directly to the node) - * can set this parameter if necessary. - * (values must be <= 127 to keep protobuf field to one byte in size. - * Detailed background on this field: - * I noticed a funny side effect of lora being so slow: Usually when making - * a protocol there isn’t much need to use message priority to change the order - * of transmission (because interfaces are fairly fast). - * But for lora where packets can take a few seconds each, it is very important - * to make sure that critical packets are sent ASAP. - * In the case of meshtastic that means we want to send protocol acks as soon as possible - * (to prevent unneeded retransmissions), we want routing messages to be sent next, - * then messages marked as reliable and finally 'background' packets like periodic position updates. - * So I bit the bullet and implemented a new (internal - not sent over the air) - * field in MeshPacket called 'priority'. - * And the transmission queue in the router object is now a priority queue. - * - * @generated from enum meshtastic.MeshPacket.Priority - */ -export enum MeshPacket_Priority { - /** - * - * Treated as Priority.DEFAULT - * - * @generated from enum value: UNSET = 0; - */ - UNSET = 0, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: MIN = 1; - */ - MIN = 1, - - /** - * - * Background position updates are sent with very low priority - - * if the link is super congested they might not go out at all - * - * @generated from enum value: BACKGROUND = 10; - */ - BACKGROUND = 10, - - /** - * - * This priority is used for most messages that don't have a priority set - * - * @generated from enum value: DEFAULT = 64; - */ - DEFAULT = 64, - - /** - * - * If priority is unset but the message is marked as want_ack, - * assume it is important and use a slightly higher priority - * - * @generated from enum value: RELIABLE = 70; - */ - RELIABLE = 70, - - /** - * - * If priority is unset but the packet is a response to a request, we want it to get there relatively quickly. - * Furthermore, responses stop relaying packets directed to a node early. - * - * @generated from enum value: RESPONSE = 80; - */ - RESPONSE = 80, - - /** - * - * Higher priority for specific message types (portnums) to distinguish between other reliable packets. - * - * @generated from enum value: HIGH = 100; - */ - HIGH = 100, - - /** - * - * Higher priority alert message used for critical alerts which take priority over other reliable packets. - * - * @generated from enum value: ALERT = 110; - */ - ALERT = 110, - - /** - * - * Ack/naks are sent with very high priority to ensure that retransmission - * stops as soon as possible - * - * @generated from enum value: ACK = 120; - */ - ACK = 120, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: MAX = 127; - */ - MAX = 127, -} - -/** - * Describes the enum meshtastic.MeshPacket.Priority. - */ -export const MeshPacket_PrioritySchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 11, 0); - -/** - * - * Identify if this is a delayed packet - * - * @generated from enum meshtastic.MeshPacket.Delayed - */ -export enum MeshPacket_Delayed { - /** - * - * If unset, the message is being sent in real time. - * - * @generated from enum value: NO_DELAY = 0; - */ - NO_DELAY = 0, - - /** - * - * The message is delayed and was originally a broadcast - * - * @generated from enum value: DELAYED_BROADCAST = 1; - */ - DELAYED_BROADCAST = 1, - - /** - * - * The message is delayed and was originally a direct message - * - * @generated from enum value: DELAYED_DIRECT = 2; - */ - DELAYED_DIRECT = 2, -} - -/** - * Describes the enum meshtastic.MeshPacket.Delayed. - */ -export const MeshPacket_DelayedSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 11, 1); - -/** - * - * Enum to identify which transport mechanism this packet arrived over - * - * @generated from enum meshtastic.MeshPacket.TransportMechanism - */ -export enum MeshPacket_TransportMechanism { - /** - * - * The default case is that the node generated a packet itself - * - * @generated from enum value: TRANSPORT_INTERNAL = 0; - */ - TRANSPORT_INTERNAL = 0, - - /** - * - * Arrived via the primary LoRa radio - * - * @generated from enum value: TRANSPORT_LORA = 1; - */ - TRANSPORT_LORA = 1, - - /** - * - * Arrived via a secondary LoRa radio - * - * @generated from enum value: TRANSPORT_LORA_ALT1 = 2; - */ - TRANSPORT_LORA_ALT1 = 2, - - /** - * - * Arrived via a tertiary LoRa radio - * - * @generated from enum value: TRANSPORT_LORA_ALT2 = 3; - */ - TRANSPORT_LORA_ALT2 = 3, - - /** - * - * Arrived via a quaternary LoRa radio - * - * @generated from enum value: TRANSPORT_LORA_ALT3 = 4; - */ - TRANSPORT_LORA_ALT3 = 4, - - /** - * - * Arrived via an MQTT connection - * - * @generated from enum value: TRANSPORT_MQTT = 5; - */ - TRANSPORT_MQTT = 5, - - /** - * - * Arrived via Multicast UDP - * - * @generated from enum value: TRANSPORT_MULTICAST_UDP = 6; - */ - TRANSPORT_MULTICAST_UDP = 6, - - /** - * - * Arrived via API connection - * - * @generated from enum value: TRANSPORT_API = 7; - */ - TRANSPORT_API = 7, - - /** - * - * Arrived via Unicast UDP - * - * @generated from enum value: TRANSPORT_UNICAST_UDP = 8; - */ - TRANSPORT_UNICAST_UDP = 8, -} - -/** - * Describes the enum meshtastic.MeshPacket.TransportMechanism. - */ -export const MeshPacket_TransportMechanismSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 11, 2); - -/** - * - * The bluetooth to device link: - * Old BTLE protocol docs from TODO, merge in above and make real docs... - * use protocol buffers, and NanoPB - * messages from device to phone: - * POSITION_UPDATE (..., time) - * TEXT_RECEIVED(from, text, time) - * OPAQUE_RECEIVED(from, payload, time) (for signal messages or other applications) - * messages from phone to device: - * SET_MYID(id, human readable long, human readable short) (send down the unique ID - * string used for this node, a human readable string shown for that id, and a very - * short human readable string suitable for oled screen) SEND_OPAQUE(dest, payload) - * (for signal messages or other applications) SEND_TEXT(dest, text) Get all - * nodes() (returns list of nodes, with full info, last time seen, loc, battery - * level etc) SET_CONFIG (switches device to a new set of radio params and - * preshared key, drops all existing nodes, force our node to rejoin this new group) - * Full information about a node on the mesh - * - * @generated from message meshtastic.NodeInfo - */ -export type NodeInfo = Message<"meshtastic.NodeInfo"> & { - /** - * - * The node number - * - * @generated from field: uint32 num = 1; - */ - num: number; - - /** - * - * The user info for this node - * - * @generated from field: meshtastic.User user = 2; - */ - user?: User | undefined; - - /** - * - * This position data. Note: before 1.2.14 we would also store the last time we've heard from this node in position.time, that is no longer true. - * Position.time now indicates the last time we received a POSITION from that node. - * - * @generated from field: meshtastic.Position position = 3; - */ - position?: Position | undefined; - - /** - * - * Returns the Signal-to-noise ratio (SNR) of the last received message, - * as measured by the receiver. Return SNR of the last received message in dB - * - * @generated from field: float snr = 4; - */ - snr: number; - - /** - * - * Set to indicate the last time we received a packet from this node - * - * @generated from field: fixed32 last_heard = 5; - */ - lastHeard: number; - - /** - * - * The latest device metrics for the node. - * - * @generated from field: meshtastic.DeviceMetrics device_metrics = 6; - */ - deviceMetrics?: DeviceMetrics | undefined; - - /** - * - * local channel index we heard that node on. Only populated if its not the default channel. - * - * @generated from field: uint32 channel = 7; - */ - channel: number; - - /** - * - * True if we witnessed the node over MQTT instead of LoRA transport - * - * @generated from field: bool via_mqtt = 8; - */ - viaMqtt: boolean; - - /** - * - * Number of hops away from us this node is (0 if direct neighbor) - * - * @generated from field: optional uint32 hops_away = 9; - */ - hopsAway?: number | undefined; - - /** - * - * True if node is in our favorites list - * Persists between NodeDB internal clean ups - * - * @generated from field: bool is_favorite = 10; - */ - isFavorite: boolean; - - /** - * - * True if node is in our ignored list - * Persists between NodeDB internal clean ups - * - * @generated from field: bool is_ignored = 11; - */ - isIgnored: boolean; - - /** - * - * True if node public key has been verified. - * Persists between NodeDB internal clean ups - * LSB 0 of the bitfield - * - * @generated from field: bool is_key_manually_verified = 12; - */ - isKeyManuallyVerified: boolean; - - /** - * - * True if node has been muted - * Persistes between NodeDB internal clean ups - * - * @generated from field: bool is_muted = 13; - */ - isMuted: boolean; - - /** - * - * True if node is signing its packets via XEdDSA - * Persists between NodeDB internal clean ups - * LSB 1 of the bitfield - * - * @generated from field: bool has_xeddsa_signed = 14; - */ - hasXeddsaSigned: boolean; -}; - -/** - * Describes the message meshtastic.NodeInfo. - * Use `create(NodeInfoSchema)` to create a new message. - */ -export const NodeInfoSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 12); - -/** - * - * Unique local debugging info for this node - * Note: we don't include position or the user info, because that will come in the - * Sent to the phone in response to WantNodes. - * - * @generated from message meshtastic.MyNodeInfo - */ -export type MyNodeInfo = Message<"meshtastic.MyNodeInfo"> & { - /** - * - * Tells the phone what our node number is, default starting value is - * lowbyte of macaddr, but it will be fixed if that is already in use - * - * @generated from field: uint32 my_node_num = 1; - */ - myNodeNum: number; - - /** - * - * The total number of reboots this node has ever encountered - * (well - since the last time we discarded preferences) - * - * @generated from field: uint32 reboot_count = 8; - */ - rebootCount: number; - - /** - * - * The minimum app version that can talk to this device. - * Phone/PC apps should compare this to their build number and if too low tell the user they must update their app - * - * @generated from field: uint32 min_app_version = 11; - */ - minAppVersion: number; - - /** - * - * Unique hardware identifier for this device - * - * @generated from field: bytes device_id = 12; - */ - deviceId: Uint8Array; - - /** - * - * The PlatformIO environment used to build this firmware - * - * @generated from field: string pio_env = 13; - */ - pioEnv: string; - - /** - * - * The indicator for whether this device is running event firmware and which - * - * @generated from field: meshtastic.FirmwareEdition firmware_edition = 14; - */ - firmwareEdition: FirmwareEdition; - - /** - * - * The number of nodes in the nodedb. - * This is used by the phone to know how many NodeInfo packets to expect on want_config - * - * @generated from field: uint32 nodedb_count = 15; - */ - nodedbCount: number; -}; - -/** - * Describes the message meshtastic.MyNodeInfo. - * Use `create(MyNodeInfoSchema)` to create a new message. - */ -export const MyNodeInfoSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 13); - -/** - * - * Debug output from the device. - * To minimize the size of records inside the device code, if a time/source/level is not set - * on the message it is assumed to be a continuation of the previously sent message. - * This allows the device code to use fixed maxlen 64 byte strings for messages, - * and then extend as needed by emitting multiple records. - * - * @generated from message meshtastic.LogRecord - */ -export type LogRecord = Message<"meshtastic.LogRecord"> & { - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from field: string message = 1; - */ - message: string; - - /** - * - * Seconds since 1970 - or 0 for unknown/unset - * - * @generated from field: fixed32 time = 2; - */ - time: number; - - /** - * - * Usually based on thread name - if known - * - * @generated from field: string source = 3; - */ - source: string; - - /** - * - * Not yet set - * - * @generated from field: meshtastic.LogRecord.Level level = 4; - */ - level: LogRecord_Level; -}; - -/** - * Describes the message meshtastic.LogRecord. - * Use `create(LogRecordSchema)` to create a new message. - */ -export const LogRecordSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 14); - -/** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from enum meshtastic.LogRecord.Level - */ -export enum LogRecord_Level { - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from enum value: UNSET = 0; - */ - UNSET = 0, - - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from enum value: CRITICAL = 50; - */ - CRITICAL = 50, - - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from enum value: ERROR = 40; - */ - ERROR = 40, - - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from enum value: WARNING = 30; - */ - WARNING = 30, - - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from enum value: INFO = 20; - */ - INFO = 20, - - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from enum value: DEBUG = 10; - */ - DEBUG = 10, - - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from enum value: TRACE = 5; - */ - TRACE = 5, -} - -/** - * Describes the enum meshtastic.LogRecord.Level. - */ -export const LogRecord_LevelSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 14, 0); - -/** - * @generated from message meshtastic.QueueStatus - */ -export type QueueStatus = Message<"meshtastic.QueueStatus"> & { - /** - * Last attempt to queue status, ErrorCode - * - * @generated from field: int32 res = 1; - */ - res: number; - - /** - * Free entries in the outgoing queue - * - * @generated from field: uint32 free = 2; - */ - free: number; - - /** - * Maximum entries in the outgoing queue - * - * @generated from field: uint32 maxlen = 3; - */ - maxlen: number; - - /** - * What was mesh packet id that generated this response? - * - * @generated from field: uint32 mesh_packet_id = 4; - */ - meshPacketId: number; -}; - -/** - * Describes the message meshtastic.QueueStatus. - * Use `create(QueueStatusSchema)` to create a new message. - */ -export const QueueStatusSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 15); - -/** - * - * Packets from the radio to the phone will appear on the fromRadio characteristic. - * It will support READ and NOTIFY. When a new packet arrives the device will BLE notify? - * It will sit in that descriptor until consumed by the phone, - * at which point the next item in the FIFO will be populated. - * - * @generated from message meshtastic.FromRadio - */ -export type FromRadio = Message<"meshtastic.FromRadio"> & { - /** - * - * The packet id, used to allow the phone to request missing read packets from the FIFO, - * see our bluetooth docs - * - * @generated from field: uint32 id = 1; - */ - id: number; - - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from oneof meshtastic.FromRadio.payload_variant - */ - payloadVariant: { - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from field: meshtastic.MeshPacket packet = 2; - */ - value: MeshPacket; - case: "packet"; - } | { - /** - * - * Tells the phone what our node number is, can be -1 if we've not yet joined a mesh. - * NOTE: This ID must not change - to keep (minimal) compatibility with <1.2 version of android apps. - * - * @generated from field: meshtastic.MyNodeInfo my_info = 3; - */ - value: MyNodeInfo; - case: "myInfo"; - } | { - /** - * - * One packet is sent for each node in the on radio DB - * starts over with the first node in our DB - * - * @generated from field: meshtastic.NodeInfo node_info = 4; - */ - value: NodeInfo; - case: "nodeInfo"; - } | { - /** - * - * Include a part of the config (was: RadioConfig radio) - * - * @generated from field: meshtastic.Config config = 5; - */ - value: Config; - case: "config"; - } | { - /** - * - * Set to send debug console output over our protobuf stream - * - * @generated from field: meshtastic.LogRecord log_record = 6; - */ - value: LogRecord; - case: "logRecord"; - } | { - /** - * - * Sent as true once the device has finished sending all of the responses to want_config - * recipient should check if this ID matches our original request nonce, if - * not, it means your config responses haven't started yet. - * NOTE: This ID must not change - to keep (minimal) compatibility with <1.2 version of android apps. - * - * @generated from field: uint32 config_complete_id = 7; - */ - value: number; - case: "configCompleteId"; - } | { - /** - * - * Sent to tell clients the radio has just rebooted. - * Set to true if present. - * Not used on all transports, currently just used for the serial console. - * NOTE: This ID must not change - to keep (minimal) compatibility with <1.2 version of android apps. - * - * @generated from field: bool rebooted = 8; - */ - value: boolean; - case: "rebooted"; - } | { - /** - * - * Include module config - * - * @generated from field: meshtastic.ModuleConfig moduleConfig = 9; - */ - value: ModuleConfig; - case: "moduleConfig"; - } | { - /** - * - * One packet is sent for each channel - * - * @generated from field: meshtastic.Channel channel = 10; - */ - value: Channel; - case: "channel"; - } | { - /** - * - * Queue status info - * - * @generated from field: meshtastic.QueueStatus queueStatus = 11; - */ - value: QueueStatus; - case: "queueStatus"; - } | { - /** - * - * File Transfer Chunk - * - * @generated from field: meshtastic.XModem xmodemPacket = 12; - */ - value: XModem; - case: "xmodemPacket"; - } | { - /** - * - * Device metadata message - * - * @generated from field: meshtastic.DeviceMetadata metadata = 13; - */ - value: DeviceMetadata; - case: "metadata"; - } | { - /** - * - * MQTT Client Proxy Message (device sending to client / phone for publishing to MQTT) - * - * @generated from field: meshtastic.MqttClientProxyMessage mqttClientProxyMessage = 14; - */ - value: MqttClientProxyMessage; - case: "mqttClientProxyMessage"; - } | { - /** - * - * File system manifest messages - * - * @generated from field: meshtastic.FileInfo fileInfo = 15; - */ - value: FileInfo; - case: "fileInfo"; - } | { - /** - * - * Notification message to the client - * - * @generated from field: meshtastic.ClientNotification clientNotification = 16; - */ - value: ClientNotification; - case: "clientNotification"; - } | { - /** - * - * Persistent data for device-ui - * - * @generated from field: meshtastic.DeviceUIConfig deviceuiConfig = 17; - */ - value: DeviceUIConfig; - case: "deviceuiConfig"; - } | { - /** - * - * Lockdown state notification for hardened firmware builds. - * Sent post-config (so unauthorized clients learn they must - * provision/unlock) and after each LockdownAuth admin command - * to report success or failure. Replaces the earlier scheme of - * encoding state as magic-string prefixes inside ClientNotification. - * - * @generated from field: meshtastic.LockdownStatus lockdown_status = 18; - */ - value: LockdownStatus; - case: "lockdownStatus"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.FromRadio. - * Use `create(FromRadioSchema)` to create a new message. - */ -export const FromRadioSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 16); - -/** - * - * Lockdown state report from firmware to client (for hardened builds - * with MESHTASTIC_LOCKDOWN). Sent immediately after config_complete_id - * to inform a freshly-connected unauthorized client what it must do, - * and again in response to each LockdownAuth admin command. - * - * @generated from message meshtastic.LockdownStatus - */ -export type LockdownStatus = Message<"meshtastic.LockdownStatus"> & { - /** - * Current lockdown state being reported. - * - * @generated from field: meshtastic.LockdownStatus.State state = 1; - */ - state: LockdownStatus_State; - - /** - * - * For LOCKED: machine-readable reason. Known values: - * "needs_auth" — storage already unlocked, client must auth - * "token_missing" — no boot token on flash - * "token_expired" — boot token wall-clock TTL elapsed - * "token_boots_zero" — boot token boot-count TTL exhausted - * "token_hmac_fail" — token tampered or wrong device - * "token_dek_fail" — token DEK decrypt failed - * "token_wrong_size" — token file corrupted - * "token_bad_magic" — token file corrupted - * "not_provisioned" — should generally use NEEDS_PROVISION state instead - * Other values may be added; clients should treat unknown values as - * "locked, ask for passphrase". - * - * @generated from field: string lock_reason = 2; - */ - lockReason: string; - - /** - * - * For UNLOCKED: remaining boots on the issued session token. - * Decrements by 1 on each subsequent boot. - * - * @generated from field: uint32 boots_remaining = 3; - */ - bootsRemaining: number; - - /** - * - * For UNLOCKED: wall-clock expiry of the issued session token, - * absolute Unix-epoch seconds. 0 = no time limit. - * - * @generated from field: uint32 valid_until_epoch = 4; - */ - validUntilEpoch: number; - - /** - * - * For UNLOCK_FAILED: seconds the client must wait before another - * passphrase attempt will be accepted. 0 = wrong passphrase, no - * backoff (immediate retry allowed but advisable to prompt user). - * - * @generated from field: uint32 backoff_seconds = 5; - */ - backoffSeconds: number; -}; - -/** - * Describes the message meshtastic.LockdownStatus. - * Use `create(LockdownStatusSchema)` to create a new message. - */ -export const LockdownStatusSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 17); - -/** - * @generated from enum meshtastic.LockdownStatus.State - */ -export enum LockdownStatus_State { - /** - * Default; should not be sent. - * - * @generated from enum value: STATE_UNSPECIFIED = 0; - */ - STATE_UNSPECIFIED = 0, - - /** - * - * No passphrase has ever been provisioned on this device. - * Client should prompt the operator to set one. - * - * @generated from enum value: NEEDS_PROVISION = 1; - */ - NEEDS_PROVISION = 1, - - /** - * - * Storage is locked or this client has not authenticated yet. - * lock_reason carries a machine-readable detail string. - * Client should present (or auto-replay) a passphrase via - * AdminMessage.lockdown_auth. - * - * @generated from enum value: LOCKED = 2; - */ - LOCKED = 2, - - /** - * - * Passphrase accepted; client is now authorized for this connection. - * boots_remaining and valid_until_epoch describe the active session - * token's TTL. - * - * @generated from enum value: UNLOCKED = 3; - */ - UNLOCKED = 3, - - /** - * - * Passphrase rejected. backoff_seconds is non-zero when rate-limited. - * - * @generated from enum value: UNLOCK_FAILED = 4; - */ - UNLOCK_FAILED = 4, - - /** - * - * Lockdown is supported by this firmware but not currently active - * (no passphrase has been provisioned, or it was disabled via - * AdminMessage.lockdown_auth.disable). The device is operating in - * normal, non-encrypted mode. Clients render the lockdown-mode - * toggle as OFF on receiving this. Distinct from NEEDS_PROVISION, - * which is only used during an in-progress enable flow. - * - * @generated from enum value: DISABLED = 5; - */ - DISABLED = 5, -} - -/** - * Describes the enum meshtastic.LockdownStatus.State. - */ -export const LockdownStatus_StateSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 17, 0); - -/** - * - * A notification message from the device to the client - * To be used for important messages that should to be displayed to the user - * in the form of push notifications or validation messages when saving - * invalid configuration. - * - * @generated from message meshtastic.ClientNotification - */ -export type ClientNotification = Message<"meshtastic.ClientNotification"> & { - /** - * - * The id of the packet we're notifying in response to - * - * @generated from field: optional uint32 reply_id = 1; - */ - replyId?: number | undefined; - - /** - * - * Seconds since 1970 - or 0 for unknown/unset - * - * @generated from field: fixed32 time = 2; - */ - time: number; - - /** - * - * The level type of notification - * - * @generated from field: meshtastic.LogRecord.Level level = 3; - */ - level: LogRecord_Level; - - /** - * - * The message body of the notification - * - * @generated from field: string message = 4; - */ - message: string; - - /** - * @generated from oneof meshtastic.ClientNotification.payload_variant - */ - payloadVariant: { - /** - * @generated from field: meshtastic.KeyVerificationNumberInform key_verification_number_inform = 11; - */ - value: KeyVerificationNumberInform; - case: "keyVerificationNumberInform"; - } | { - /** - * @generated from field: meshtastic.KeyVerificationNumberRequest key_verification_number_request = 12; - */ - value: KeyVerificationNumberRequest; - case: "keyVerificationNumberRequest"; - } | { - /** - * @generated from field: meshtastic.KeyVerificationFinal key_verification_final = 13; - */ - value: KeyVerificationFinal; - case: "keyVerificationFinal"; - } | { - /** - * @generated from field: meshtastic.DuplicatedPublicKey duplicated_public_key = 14; - */ - value: DuplicatedPublicKey; - case: "duplicatedPublicKey"; - } | { - /** - * @generated from field: meshtastic.LowEntropyKey low_entropy_key = 15; - */ - value: LowEntropyKey; - case: "lowEntropyKey"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.ClientNotification. - * Use `create(ClientNotificationSchema)` to create a new message. - */ -export const ClientNotificationSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 18); - -/** - * @generated from message meshtastic.KeyVerificationNumberInform - */ -export type KeyVerificationNumberInform = Message<"meshtastic.KeyVerificationNumberInform"> & { - /** - * @generated from field: uint64 nonce = 1; - */ - nonce: bigint; - - /** - * @generated from field: string remote_longname = 2; - */ - remoteLongname: string; - - /** - * @generated from field: uint32 security_number = 3; - */ - securityNumber: number; -}; - -/** - * Describes the message meshtastic.KeyVerificationNumberInform. - * Use `create(KeyVerificationNumberInformSchema)` to create a new message. - */ -export const KeyVerificationNumberInformSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 19); - -/** - * @generated from message meshtastic.KeyVerificationNumberRequest - */ -export type KeyVerificationNumberRequest = Message<"meshtastic.KeyVerificationNumberRequest"> & { - /** - * @generated from field: uint64 nonce = 1; - */ - nonce: bigint; - - /** - * @generated from field: string remote_longname = 2; - */ - remoteLongname: string; -}; - -/** - * Describes the message meshtastic.KeyVerificationNumberRequest. - * Use `create(KeyVerificationNumberRequestSchema)` to create a new message. - */ -export const KeyVerificationNumberRequestSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 20); - -/** - * @generated from message meshtastic.KeyVerificationFinal - */ -export type KeyVerificationFinal = Message<"meshtastic.KeyVerificationFinal"> & { - /** - * @generated from field: uint64 nonce = 1; - */ - nonce: bigint; - - /** - * @generated from field: string remote_longname = 2; - */ - remoteLongname: string; - - /** - * @generated from field: bool isSender = 3; - */ - isSender: boolean; - - /** - * @generated from field: string verification_characters = 4; - */ - verificationCharacters: string; -}; - -/** - * Describes the message meshtastic.KeyVerificationFinal. - * Use `create(KeyVerificationFinalSchema)` to create a new message. - */ -export const KeyVerificationFinalSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 21); - -/** - * @generated from message meshtastic.DuplicatedPublicKey - */ -export type DuplicatedPublicKey = Message<"meshtastic.DuplicatedPublicKey"> & { -}; - -/** - * Describes the message meshtastic.DuplicatedPublicKey. - * Use `create(DuplicatedPublicKeySchema)` to create a new message. - */ -export const DuplicatedPublicKeySchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 22); - -/** - * @generated from message meshtastic.LowEntropyKey - */ -export type LowEntropyKey = Message<"meshtastic.LowEntropyKey"> & { -}; - -/** - * Describes the message meshtastic.LowEntropyKey. - * Use `create(LowEntropyKeySchema)` to create a new message. - */ -export const LowEntropyKeySchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 23); - -/** - * - * Individual File info for the device - * - * @generated from message meshtastic.FileInfo - */ -export type FileInfo = Message<"meshtastic.FileInfo"> & { - /** - * - * The fully qualified path of the file - * - * @generated from field: string file_name = 1; - */ - fileName: string; - - /** - * - * The size of the file in bytes - * - * @generated from field: uint32 size_bytes = 2; - */ - sizeBytes: number; -}; - -/** - * Describes the message meshtastic.FileInfo. - * Use `create(FileInfoSchema)` to create a new message. - */ -export const FileInfoSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 24); - -/** - * - * Packets/commands to the radio will be written (reliably) to the toRadio characteristic. - * Once the write completes the phone can assume it is handled. - * - * @generated from message meshtastic.ToRadio - */ -export type ToRadio = Message<"meshtastic.ToRadio"> & { - /** - * - * Log levels, chosen to match python logging conventions. - * - * @generated from oneof meshtastic.ToRadio.payload_variant - */ - payloadVariant: { - /** - * - * Send this packet on the mesh - * - * @generated from field: meshtastic.MeshPacket packet = 1; - */ - value: MeshPacket; - case: "packet"; - } | { - /** - * - * Phone wants radio to send full node db to the phone, This is - * typically the first packet sent to the radio when the phone gets a - * bluetooth connection. The radio will respond by sending back a - * MyNodeInfo, a owner, a radio config and a series of - * FromRadio.node_infos, and config_complete - * the integer you write into this field will be reported back in the - * config_complete_id response this allows clients to never be confused by - * a stale old partially sent config. - * - * @generated from field: uint32 want_config_id = 3; - */ - value: number; - case: "wantConfigId"; - } | { - /** - * - * Tell API server we are disconnecting now. - * This is useful for serial links where there is no hardware/protocol based notification that the client has dropped the link. - * (Sending this message is optional for clients) - * - * @generated from field: bool disconnect = 4; - */ - value: boolean; - case: "disconnect"; - } | { - /** - * @generated from field: meshtastic.XModem xmodemPacket = 5; - */ - value: XModem; - case: "xmodemPacket"; - } | { - /** - * - * MQTT Client Proxy Message (for client / phone subscribed to MQTT sending to device) - * - * @generated from field: meshtastic.MqttClientProxyMessage mqttClientProxyMessage = 6; - */ - value: MqttClientProxyMessage; - case: "mqttClientProxyMessage"; - } | { - /** - * - * Heartbeat message (used to keep the device connection awake on serial) - * - * @generated from field: meshtastic.Heartbeat heartbeat = 7; - */ - value: Heartbeat; - case: "heartbeat"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.ToRadio. - * Use `create(ToRadioSchema)` to create a new message. - */ -export const ToRadioSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 25); - -/** - * - * Compressed message payload - * - * @generated from message meshtastic.Compressed - */ -export type Compressed = Message<"meshtastic.Compressed"> & { - /** - * - * PortNum to determine the how to handle the compressed payload. - * - * @generated from field: meshtastic.PortNum portnum = 1; - */ - portnum: PortNum; - - /** - * - * Compressed data. - * - * @generated from field: bytes data = 2; - */ - data: Uint8Array; -}; - -/** - * Describes the message meshtastic.Compressed. - * Use `create(CompressedSchema)` to create a new message. - */ -export const CompressedSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 26); - -/** - * - * Full info on edges for a single node - * - * @generated from message meshtastic.NeighborInfo - */ -export type NeighborInfo = Message<"meshtastic.NeighborInfo"> & { - /** - * - * The node ID of the node sending info on its neighbors - * - * @generated from field: uint32 node_id = 1; - */ - nodeId: number; - - /** - * - * Field to pass neighbor info for the next sending cycle - * - * @generated from field: uint32 last_sent_by_id = 2; - */ - lastSentById: number; - - /** - * - * Broadcast interval of the represented node (in seconds) - * - * @generated from field: uint32 node_broadcast_interval_secs = 3; - */ - nodeBroadcastIntervalSecs: number; - - /** - * - * The list of out edges from this node - * - * @generated from field: repeated meshtastic.Neighbor neighbors = 4; - */ - neighbors: Neighbor[]; -}; - -/** - * Describes the message meshtastic.NeighborInfo. - * Use `create(NeighborInfoSchema)` to create a new message. - */ -export const NeighborInfoSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 27); - -/** - * - * A single edge in the mesh - * - * @generated from message meshtastic.Neighbor - */ -export type Neighbor = Message<"meshtastic.Neighbor"> & { - /** - * - * Node ID of neighbor - * - * @generated from field: uint32 node_id = 1; - */ - nodeId: number; - - /** - * - * SNR of last heard message - * - * @generated from field: float snr = 2; - */ - snr: number; - - /** - * - * Reception time (in secs since 1970) of last message that was last sent by this ID. - * Note: this is for local storage only and will not be sent out over the mesh. - * - * @generated from field: fixed32 last_rx_time = 3; - */ - lastRxTime: number; - - /** - * - * Broadcast interval of this neighbor (in seconds). - * Note: this is for local storage only and will not be sent out over the mesh. - * - * @generated from field: uint32 node_broadcast_interval_secs = 4; - */ - nodeBroadcastIntervalSecs: number; -}; - -/** - * Describes the message meshtastic.Neighbor. - * Use `create(NeighborSchema)` to create a new message. - */ -export const NeighborSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 28); - -/** - * - * Device metadata response - * - * @generated from message meshtastic.DeviceMetadata - */ -export type DeviceMetadata = Message<"meshtastic.DeviceMetadata"> & { - /** - * - * Device firmware version string - * - * @generated from field: string firmware_version = 1; - */ - firmwareVersion: string; - - /** - * - * Device state version - * - * @generated from field: uint32 device_state_version = 2; - */ - deviceStateVersion: number; - - /** - * - * Indicates whether the device can shutdown CPU natively or via power management chip - * - * @generated from field: bool canShutdown = 3; - */ - canShutdown: boolean; - - /** - * - * Indicates that the device has native wifi capability - * - * @generated from field: bool hasWifi = 4; - */ - hasWifi: boolean; - - /** - * - * Indicates that the device has native bluetooth capability - * - * @generated from field: bool hasBluetooth = 5; - */ - hasBluetooth: boolean; - - /** - * - * Indicates that the device has an ethernet peripheral - * - * @generated from field: bool hasEthernet = 6; - */ - hasEthernet: boolean; - - /** - * - * Indicates that the device's role in the mesh - * - * @generated from field: meshtastic.Config.DeviceConfig.Role role = 7; - */ - role: Config_DeviceConfig_Role; - - /** - * - * Indicates the device's current enabled position flags - * - * @generated from field: uint32 position_flags = 8; - */ - positionFlags: number; - - /** - * - * Device hardware model - * - * @generated from field: meshtastic.HardwareModel hw_model = 9; - */ - hwModel: HardwareModel; - - /** - * - * Has Remote Hardware enabled - * - * @generated from field: bool hasRemoteHardware = 10; - */ - hasRemoteHardware: boolean; - - /** - * - * Has PKC capabilities - * - * @generated from field: bool hasPKC = 11; - */ - hasPKC: boolean; - - /** - * - * Bit field of boolean for excluded modules - * (bitwise OR of ExcludedModules) - * - * @generated from field: uint32 excluded_modules = 12; - */ - excludedModules: number; -}; - -/** - * Describes the message meshtastic.DeviceMetadata. - * Use `create(DeviceMetadataSchema)` to create a new message. - */ -export const DeviceMetadataSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 29); - -/** - * - * A heartbeat message is sent to the node from the client to keep the connection alive. - * This is currently only needed to keep serial connections alive, but can be used by any PhoneAPI. - * - * @generated from message meshtastic.Heartbeat - */ -export type Heartbeat = Message<"meshtastic.Heartbeat"> & { - /** - * - * The nonce of the heartbeat message - * - * @generated from field: uint32 nonce = 1; - */ - nonce: number; -}; - -/** - * Describes the message meshtastic.Heartbeat. - * Use `create(HeartbeatSchema)` to create a new message. - */ -export const HeartbeatSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 30); - -/** - * - * RemoteHardwarePins associated with a node - * - * @generated from message meshtastic.NodeRemoteHardwarePin - */ -export type NodeRemoteHardwarePin = Message<"meshtastic.NodeRemoteHardwarePin"> & { - /** - * - * The node_num exposing the available gpio pin - * - * @generated from field: uint32 node_num = 1; - */ - nodeNum: number; - - /** - * - * The the available gpio pin for usage with RemoteHardware module - * - * @generated from field: meshtastic.RemoteHardwarePin pin = 2; - */ - pin?: RemoteHardwarePin | undefined; -}; - -/** - * Describes the message meshtastic.NodeRemoteHardwarePin. - * Use `create(NodeRemoteHardwarePinSchema)` to create a new message. - */ -export const NodeRemoteHardwarePinSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 31); - -/** - * @generated from message meshtastic.ChunkedPayload - */ -export type ChunkedPayload = Message<"meshtastic.ChunkedPayload"> & { - /** - * - * The ID of the entire payload - * - * @generated from field: uint32 payload_id = 1; - */ - payloadId: number; - - /** - * - * The total number of chunks in the payload - * - * @generated from field: uint32 chunk_count = 2; - */ - chunkCount: number; - - /** - * - * The current chunk index in the total - * - * @generated from field: uint32 chunk_index = 3; - */ - chunkIndex: number; - - /** - * - * The binary data of the current chunk - * - * @generated from field: bytes payload_chunk = 4; - */ - payloadChunk: Uint8Array; -}; - -/** - * Describes the message meshtastic.ChunkedPayload. - * Use `create(ChunkedPayloadSchema)` to create a new message. - */ -export const ChunkedPayloadSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 32); - -/** - * - * Wrapper message for broken repeated oneof support - * - * @generated from message meshtastic.resend_chunks - */ -export type resend_chunks = Message<"meshtastic.resend_chunks"> & { - /** - * @generated from field: repeated uint32 chunks = 1; - */ - chunks: number[]; -}; - -/** - * Describes the message meshtastic.resend_chunks. - * Use `create(resend_chunksSchema)` to create a new message. - */ -export const resend_chunksSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 33); - -/** - * - * Responses to a ChunkedPayload request - * - * @generated from message meshtastic.ChunkedPayloadResponse - */ -export type ChunkedPayloadResponse = Message<"meshtastic.ChunkedPayloadResponse"> & { - /** - * - * The ID of the entire payload - * - * @generated from field: uint32 payload_id = 1; - */ - payloadId: number; - - /** - * @generated from oneof meshtastic.ChunkedPayloadResponse.payload_variant - */ - payloadVariant: { - /** - * - * Request to transfer chunked payload - * - * @generated from field: bool request_transfer = 2; - */ - value: boolean; - case: "requestTransfer"; - } | { - /** - * - * Accept the transfer chunked payload - * - * @generated from field: bool accept_transfer = 3; - */ - value: boolean; - case: "acceptTransfer"; - } | { - /** - * - * Request missing indexes in the chunked payload - * - * @generated from field: meshtastic.resend_chunks resend_chunks = 4; - */ - value: resend_chunks; - case: "resendChunks"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.ChunkedPayloadResponse. - * Use `create(ChunkedPayloadResponseSchema)` to create a new message. - */ -export const ChunkedPayloadResponseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mesh, 34); - -/** - * - * Note: these enum names must EXACTLY match the string used in the device - * bin/build-all.sh script. - * Because they will be used to find firmware filenames in the android app for OTA updates. - * To match the old style filenames, _ is converted to -, p is converted to . - * - * @generated from enum meshtastic.HardwareModel - */ -export enum HardwareModel { - /** - * - * TODO: REPLACE - * - * @generated from enum value: UNSET = 0; - */ - UNSET = 0, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: TLORA_V2 = 1; - */ - TLORA_V2 = 1, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: TLORA_V1 = 2; - */ - TLORA_V1 = 2, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: TLORA_V2_1_1P6 = 3; - */ - TLORA_V2_1_1P6 = 3, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: TBEAM = 4; - */ - TBEAM = 4, - - /** - * - * The original heltec WiFi_Lora_32_V2, which had battery voltage sensing hooked to GPIO 13 - * (see HELTEC_V2 for the new version). - * - * @generated from enum value: HELTEC_V2_0 = 5; - */ - HELTEC_V2_0 = 5, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: TBEAM_V0P7 = 6; - */ - TBEAM_V0P7 = 6, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: T_ECHO = 7; - */ - T_ECHO = 7, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: TLORA_V1_1P3 = 8; - */ - TLORA_V1_1P3 = 8, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: RAK4631 = 9; - */ - RAK4631 = 9, - - /** - * - * The new version of the heltec WiFi_Lora_32_V2 board that has battery sensing hooked to GPIO 37. - * Sadly they did not update anything on the silkscreen to identify this board - * - * @generated from enum value: HELTEC_V2_1 = 10; - */ - HELTEC_V2_1 = 10, - - /** - * - * Ancient heltec WiFi_Lora_32 board - * - * @generated from enum value: HELTEC_V1 = 11; - */ - HELTEC_V1 = 11, - - /** - * - * New T-BEAM with ESP32-S3 CPU - * - * @generated from enum value: LILYGO_TBEAM_S3_CORE = 12; - */ - LILYGO_TBEAM_S3_CORE = 12, - - /** - * - * RAK WisBlock ESP32 core: https://docs.rakwireless.com/Product-Categories/WisBlock/RAK11200/Overview/ - * - * @generated from enum value: RAK11200 = 13; - */ - RAK11200 = 13, - - /** - * - * B&Q Consulting Nano Edition G1: https://uniteng.com/wiki/doku.php?id=meshtastic:nano - * - * @generated from enum value: NANO_G1 = 14; - */ - NANO_G1 = 14, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: TLORA_V2_1_1P8 = 15; - */ - TLORA_V2_1_1P8 = 15, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: TLORA_T3_S3 = 16; - */ - TLORA_T3_S3 = 16, - - /** - * - * B&Q Consulting Nano G1 Explorer: https://wiki.uniteng.com/en/meshtastic/nano-g1-explorer - * - * @generated from enum value: NANO_G1_EXPLORER = 17; - */ - NANO_G1_EXPLORER = 17, - - /** - * - * B&Q Consulting Nano G2 Ultra: https://wiki.uniteng.com/en/meshtastic/nano-g2-ultra - * - * @generated from enum value: NANO_G2_ULTRA = 18; - */ - NANO_G2_ULTRA = 18, - - /** - * - * LoRAType device: https://loratype.org/ - * - * @generated from enum value: LORA_TYPE = 19; - */ - LORA_TYPE = 19, - - /** - * - * wiphone https://www.wiphone.io/ - * - * @generated from enum value: WIPHONE = 20; - */ - WIPHONE = 20, - - /** - * - * WIO Tracker WM1110 family from Seeed Studio. Includes wio-1110-tracker and wio-1110-sdk - * - * @generated from enum value: WIO_WM1110 = 21; - */ - WIO_WM1110 = 21, - - /** - * - * RAK2560 Solar base station based on RAK4630 - * - * @generated from enum value: RAK2560 = 22; - */ - RAK2560 = 22, - - /** - * - * Heltec HRU-3601: https://heltec.org/project/hru-3601/ - * - * @generated from enum value: HELTEC_HRU_3601 = 23; - */ - HELTEC_HRU_3601 = 23, - - /** - * - * Heltec Wireless Bridge - * - * @generated from enum value: HELTEC_WIRELESS_BRIDGE = 24; - */ - HELTEC_WIRELESS_BRIDGE = 24, - - /** - * - * B&Q Consulting Station Edition G1: https://uniteng.com/wiki/doku.php?id=meshtastic:station - * - * @generated from enum value: STATION_G1 = 25; - */ - STATION_G1 = 25, - - /** - * - * RAK11310 (RP2040 + SX1262) - * - * @generated from enum value: RAK11310 = 26; - */ - RAK11310 = 26, - - /** - * - * Makerfabs SenseLoRA Receiver (RP2040 + RFM96) - * - * @generated from enum value: SENSELORA_RP2040 = 27; - */ - SENSELORA_RP2040 = 27, - - /** - * - * Makerfabs SenseLoRA Industrial Monitor (ESP32-S3 + RFM96) - * - * @generated from enum value: SENSELORA_S3 = 28; - */ - SENSELORA_S3 = 28, - - /** - * - * Canary Radio Company - CanaryOne: https://canaryradio.io/products/canaryone - * - * @generated from enum value: CANARYONE = 29; - */ - CANARYONE = 29, - - /** - * - * Waveshare RP2040 LoRa - https://www.waveshare.com/rp2040-lora.htm - * - * @generated from enum value: RP2040_LORA = 30; - */ - RP2040_LORA = 30, - - /** - * - * B&Q Consulting Station G2: https://wiki.uniteng.com/en/meshtastic/station-g2 - * - * @generated from enum value: STATION_G2 = 31; - */ - STATION_G2 = 31, - - /** - * - * --------------------------------------------------------------------------- - * Less common/prototype boards listed here (needs one more byte over the air) - * --------------------------------------------------------------------------- - * - * @generated from enum value: LORA_RELAY_V1 = 32; - */ - LORA_RELAY_V1 = 32, - - /** - * - * T-Echo Plus device from LilyGo - * - * @generated from enum value: T_ECHO_PLUS = 33; - */ - T_ECHO_PLUS = 33, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: PPR = 34; - */ - PPR = 34, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: GENIEBLOCKS = 35; - */ - GENIEBLOCKS = 35, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: NRF52_UNKNOWN = 36; - */ - NRF52_UNKNOWN = 36, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: PORTDUINO = 37; - */ - PORTDUINO = 37, - - /** - * - * The simulator built into the android app - * - * @generated from enum value: ANDROID_SIM = 38; - */ - ANDROID_SIM = 38, - - /** - * - * Custom DIY device based on @NanoVHF schematics: https://github.com/NanoVHF/Meshtastic-DIY/tree/main/Schematics - * - * @generated from enum value: DIY_V1 = 39; - */ - DIY_V1 = 39, - - /** - * - * nRF52840 Dongle : https://www.nordicsemi.com/Products/Development-hardware/nrf52840-dongle/ - * - * @generated from enum value: NRF52840_PCA10059 = 40; - */ - NRF52840_PCA10059 = 40, - - /** - * - * Custom Disaster Radio esp32 v3 device https://github.com/sudomesh/disaster-radio/tree/master/hardware/board_esp32_v3 - * - * @generated from enum value: DR_DEV = 41; - */ - DR_DEV = 41, - - /** - * - * M5 esp32 based MCU modules with enclosure, TFT and LORA Shields. All Variants (Basic, Core, Fire, Core2, CoreS3, Paper) https://m5stack.com/ - * - * @generated from enum value: M5STACK = 42; - */ - M5STACK = 42, - - /** - * - * New Heltec LoRA32 with ESP32-S3 CPU - * - * @generated from enum value: HELTEC_V3 = 43; - */ - HELTEC_V3 = 43, - - /** - * - * New Heltec Wireless Stick Lite with ESP32-S3 CPU - * - * @generated from enum value: HELTEC_WSL_V3 = 44; - */ - HELTEC_WSL_V3 = 44, - - /** - * - * New BETAFPV ELRS Micro TX Module 2.4G with ESP32 CPU - * - * @generated from enum value: BETAFPV_2400_TX = 45; - */ - BETAFPV_2400_TX = 45, - - /** - * - * BetaFPV ExpressLRS "Nano" TX Module 900MHz with ESP32 CPU - * - * @generated from enum value: BETAFPV_900_NANO_TX = 46; - */ - BETAFPV_900_NANO_TX = 46, - - /** - * - * Raspberry Pi Pico (W) with Waveshare SX1262 LoRa Node Module - * - * @generated from enum value: RPI_PICO = 47; - */ - RPI_PICO = 47, - - /** - * - * Heltec Wireless Tracker with ESP32-S3 CPU, built-in GPS, and TFT - * Newer V1.1, version is written on the PCB near the display. - * - * @generated from enum value: HELTEC_WIRELESS_TRACKER = 48; - */ - HELTEC_WIRELESS_TRACKER = 48, - - /** - * - * Heltec Wireless Paper with ESP32-S3 CPU and E-Ink display - * - * @generated from enum value: HELTEC_WIRELESS_PAPER = 49; - */ - HELTEC_WIRELESS_PAPER = 49, - - /** - * - * LilyGo T-Deck with ESP32-S3 CPU, Keyboard and IPS display - * - * @generated from enum value: T_DECK = 50; - */ - T_DECK = 50, - - /** - * - * LilyGo T-Watch S3 with ESP32-S3 CPU and IPS display - * - * @generated from enum value: T_WATCH_S3 = 51; - */ - T_WATCH_S3 = 51, - - /** - * - * Bobricius Picomputer with ESP32-S3 CPU, Keyboard and IPS display - * - * @generated from enum value: PICOMPUTER_S3 = 52; - */ - PICOMPUTER_S3 = 52, - - /** - * - * Heltec HT-CT62 with ESP32-C3 CPU and SX1262 LoRa - * - * @generated from enum value: HELTEC_HT62 = 53; - */ - HELTEC_HT62 = 53, - - /** - * - * EBYTE SPI LoRa module and ESP32-S3 - * - * @generated from enum value: EBYTE_ESP32_S3 = 54; - */ - EBYTE_ESP32_S3 = 54, - - /** - * - * Waveshare ESP32-S3-PICO with PICO LoRa HAT and 2.9inch e-Ink - * - * @generated from enum value: ESP32_S3_PICO = 55; - */ - ESP32_S3_PICO = 55, - - /** - * - * CircuitMess Chatter 2 LLCC68 Lora Module and ESP32 Wroom - * Lora module can be swapped out for a Heltec RA-62 which is "almost" pin compatible - * with one cut and one jumper Meshtastic works - * - * @generated from enum value: CHATTER_2 = 56; - */ - CHATTER_2 = 56, - - /** - * - * Heltec Wireless Paper, With ESP32-S3 CPU and E-Ink display - * Older "V1.0" Variant, has no "version sticker" - * E-Ink model is DEPG0213BNS800 - * Tab on the screen protector is RED - * Flex connector marking is FPC-7528B - * - * @generated from enum value: HELTEC_WIRELESS_PAPER_V1_0 = 57; - */ - HELTEC_WIRELESS_PAPER_V1_0 = 57, - - /** - * - * Heltec Wireless Tracker with ESP32-S3 CPU, built-in GPS, and TFT - * Older "V1.0" Variant - * - * @generated from enum value: HELTEC_WIRELESS_TRACKER_V1_0 = 58; - */ - HELTEC_WIRELESS_TRACKER_V1_0 = 58, - - /** - * - * unPhone with ESP32-S3, TFT touchscreen, LSM6DS3TR-C accelerometer and gyroscope - * - * @generated from enum value: UNPHONE = 59; - */ - UNPHONE = 59, - - /** - * - * Teledatics TD-LORAC NRF52840 based M.2 LoRA module - * Compatible with the TD-WRLS development board - * - * @generated from enum value: TD_LORAC = 60; - */ - TD_LORAC = 60, - - /** - * - * CDEBYTE EoRa-S3 board using their own MM modules, clone of LILYGO T3S3 - * - * @generated from enum value: CDEBYTE_EORA_S3 = 61; - */ - CDEBYTE_EORA_S3 = 61, - - /** - * - * TWC_MESH_V4 - * Adafruit NRF52840 feather express with SX1262, SSD1306 OLED and NEO6M GPS - * - * @generated from enum value: TWC_MESH_V4 = 62; - */ - TWC_MESH_V4 = 62, - - /** - * - * NRF52_PROMICRO_DIY - * Promicro NRF52840 with SX1262/LLCC68, SSD1306 OLED and NEO6M GPS - * - * @generated from enum value: NRF52_PROMICRO_DIY = 63; - */ - NRF52_PROMICRO_DIY = 63, - - /** - * - * RadioMaster 900 Bandit Nano, https://www.radiomasterrc.com/products/bandit-nano-expresslrs-rf-module - * ESP32-D0WDQ6 With SX1276/SKY66122, SSD1306 OLED and No GPS - * - * @generated from enum value: RADIOMASTER_900_BANDIT_NANO = 64; - */ - RADIOMASTER_900_BANDIT_NANO = 64, - - /** - * - * Heltec Capsule Sensor V3 with ESP32-S3 CPU, Portable LoRa device that can replace GNSS modules or sensors - * - * @generated from enum value: HELTEC_CAPSULE_SENSOR_V3 = 65; - */ - HELTEC_CAPSULE_SENSOR_V3 = 65, - - /** - * - * Heltec Vision Master T190 with ESP32-S3 CPU, and a 1.90 inch TFT display - * - * @generated from enum value: HELTEC_VISION_MASTER_T190 = 66; - */ - HELTEC_VISION_MASTER_T190 = 66, - - /** - * - * Heltec Vision Master E213 with ESP32-S3 CPU, and a 2.13 inch E-Ink display - * - * @generated from enum value: HELTEC_VISION_MASTER_E213 = 67; - */ - HELTEC_VISION_MASTER_E213 = 67, - - /** - * - * Heltec Vision Master E290 with ESP32-S3 CPU, and a 2.9 inch E-Ink display - * - * @generated from enum value: HELTEC_VISION_MASTER_E290 = 68; - */ - HELTEC_VISION_MASTER_E290 = 68, - - /** - * - * Heltec Mesh Node T114 board with nRF52840 CPU, and a 1.14 inch TFT display, Ultimate low-power design, - * specifically adapted for the Meshtatic project - * - * @generated from enum value: HELTEC_MESH_NODE_T114 = 69; - */ - HELTEC_MESH_NODE_T114 = 69, - - /** - * - * Sensecap Indicator from Seeed Studio. ESP32-S3 device with TFT and RP2040 coprocessor - * - * @generated from enum value: SENSECAP_INDICATOR = 70; - */ - SENSECAP_INDICATOR = 70, - - /** - * - * Seeed studio T1000-E tracker card. NRF52840 w/ LR1110 radio, GPS, button, buzzer, and sensors. - * - * @generated from enum value: TRACKER_T1000_E = 71; - */ - TRACKER_T1000_E = 71, - - /** - * - * RAK3172 STM32WLE5 Module (https://store.rakwireless.com/products/wisduo-lpwan-module-rak3172) - * - * @generated from enum value: RAK3172 = 72; - */ - RAK3172 = 72, - - /** - * - * Seeed Studio Wio-E5 (either mini or Dev kit) using STM32WL chip. - * - * @generated from enum value: WIO_E5 = 73; - */ - WIO_E5 = 73, - - /** - * - * RadioMaster 900 Bandit, https://www.radiomasterrc.com/products/bandit-expresslrs-rf-module - * SSD1306 OLED and No GPS - * - * @generated from enum value: RADIOMASTER_900_BANDIT = 74; - */ - RADIOMASTER_900_BANDIT = 74, - - /** - * - * Minewsemi ME25LS01 (ME25LE01_V1.0). NRF52840 w/ LR1110 radio, buttons and leds and pins. - * - * @generated from enum value: ME25LS01_4Y10TD = 75; - */ - ME25LS01_4Y10TD = 75, - - /** - * - * RP2040_FEATHER_RFM95 - * Adafruit Feather RP2040 with RFM95 LoRa Radio RFM95 with SX1272, SSD1306 OLED - * https://www.adafruit.com/product/5714 - * https://www.adafruit.com/product/326 - * https://www.adafruit.com/product/938 - * ^^^ short A0 to switch to I2C address 0x3C - * - * - * @generated from enum value: RP2040_FEATHER_RFM95 = 76; - */ - RP2040_FEATHER_RFM95 = 76, - - /** - * M5 esp32 based MCU modules with enclosure, TFT and LORA Shields. All Variants (Basic, Core, Fire, Core2, CoreS3, Paper) https://m5stack.com/ - * - * @generated from enum value: M5STACK_COREBASIC = 77; - */ - M5STACK_COREBASIC = 77, - - /** - * @generated from enum value: M5STACK_CORE2 = 78; - */ - M5STACK_CORE2 = 78, - - /** - * Pico2 with Waveshare Hat, same as Pico - * - * @generated from enum value: RPI_PICO2 = 79; - */ - RPI_PICO2 = 79, - - /** - * M5 esp32 based MCU modules with enclosure, TFT and LORA Shields. All Variants (Basic, Core, Fire, Core2, CoreS3, Paper) https://m5stack.com/ - * - * @generated from enum value: M5STACK_CORES3 = 80; - */ - M5STACK_CORES3 = 80, - - /** - * Seeed XIAO S3 DK - * - * @generated from enum value: SEEED_XIAO_S3 = 81; - */ - SEEED_XIAO_S3 = 81, - - /** - * - * Nordic nRF52840+Semtech SX1262 LoRa BLE Combo Module. nRF52840+SX1262 MS24SF1 - * - * @generated from enum value: MS24SF1 = 82; - */ - MS24SF1 = 82, - - /** - * - * Lilygo TLora-C6 with the new ESP32-C6 MCU - * - * @generated from enum value: TLORA_C6 = 83; - */ - TLORA_C6 = 83, - - /** - * - * WisMesh Tap - * RAK-4631 w/ TFT in injection modled case - * - * @generated from enum value: WISMESH_TAP = 84; - */ - WISMESH_TAP = 84, - - /** - * - * Similar to PORTDUINO but used by Routastic devices, this is not any - * particular device and does not run Meshtastic's code but supports - * the same frame format. - * Runs on linux, see https://github.com/Jorropo/routastic - * - * @generated from enum value: ROUTASTIC = 85; - */ - ROUTASTIC = 85, - - /** - * - * Mesh-Tab, esp32 based - * https://github.com/valzzu/Mesh-Tab - * - * @generated from enum value: MESH_TAB = 86; - */ - MESH_TAB = 86, - - /** - * - * MeshLink board developed by LoraItalia. NRF52840, eByte E22900M22S (Will also come with other frequencies), 25w MPPT solar charger (5v,12v,18v selectable), support for gps, buzzer, oled or e-ink display, 10 gpios, hardware watchdog - * https://www.loraitalia.it - * - * @generated from enum value: MESHLINK = 87; - */ - MESHLINK = 87, - - /** - * - * Seeed XIAO nRF52840 + Wio SX1262 kit - * - * @generated from enum value: XIAO_NRF52_KIT = 88; - */ - XIAO_NRF52_KIT = 88, - - /** - * - * Elecrow ThinkNode M1 & M2 - * https://www.elecrow.com/wiki/ThinkNode-M1_Transceiver_Device(Meshtastic)_Power_By_nRF52840.html - * https://www.elecrow.com/wiki/ThinkNode-M2_Transceiver_Device(Meshtastic)_Power_By_NRF52840.html (this actually uses ESP32-S3) - * - * @generated from enum value: THINKNODE_M1 = 89; - */ - THINKNODE_M1 = 89, - - /** - * @generated from enum value: THINKNODE_M2 = 90; - */ - THINKNODE_M2 = 90, - - /** - * - * Lilygo T-ETH-Elite - * - * @generated from enum value: T_ETH_ELITE = 91; - */ - T_ETH_ELITE = 91, - - /** - * - * Heltec HRI-3621 industrial probe - * - * @generated from enum value: HELTEC_SENSOR_HUB = 92; - */ - HELTEC_SENSOR_HUB = 92, - - /** - * - * Muzi Works Muzi-Base device - * - * @generated from enum value: MUZI_BASE = 93; - */ - MUZI_BASE = 93, - - /** - * - * Heltec Magnetic Power Bank with Meshtastic compatible - * - * @generated from enum value: HELTEC_MESH_POCKET = 94; - */ - HELTEC_MESH_POCKET = 94, - - /** - * - * Seeed Solar Node - * - * @generated from enum value: SEEED_SOLAR_NODE = 95; - */ - SEEED_SOLAR_NODE = 95, - - /** - * - * NomadStar Meteor Pro https://nomadstar.ch/ - * - * @generated from enum value: NOMADSTAR_METEOR_PRO = 96; - */ - NOMADSTAR_METEOR_PRO = 96, - - /** - * - * Elecrow CrowPanel Advance models, ESP32-S3 and TFT with SX1262 radio plugin - * - * @generated from enum value: CROWPANEL = 97; - */ - CROWPANEL = 97, - - /** - * - * Lilygo LINK32 board with sensors - * - * @generated from enum value: LINK_32 = 98; - */ - LINK_32 = 98, - - /** - * - * Seeed Tracker L1 - * - * @generated from enum value: SEEED_WIO_TRACKER_L1 = 99; - */ - SEEED_WIO_TRACKER_L1 = 99, - - /** - * - * Seeed Tracker L1 EINK driver - * - * @generated from enum value: SEEED_WIO_TRACKER_L1_EINK = 100; - */ - SEEED_WIO_TRACKER_L1_EINK = 100, - - /** - * - * Muzi Works R1 Neo - * - * @generated from enum value: MUZI_R1_NEO = 101; - */ - MUZI_R1_NEO = 101, - - /** - * - * Lilygo T-Deck Pro - * - * @generated from enum value: T_DECK_PRO = 102; - */ - T_DECK_PRO = 102, - - /** - * - * Lilygo TLora Pager - * - * @generated from enum value: T_LORA_PAGER = 103; - */ - T_LORA_PAGER = 103, - - /** - * - * M5Stack Reserved - * - * 0x68 - * - * @generated from enum value: M5STACK_RESERVED = 104; - */ - M5STACK_RESERVED = 104, - - /** - * - * RAKwireless WisMesh Tag - * - * @generated from enum value: WISMESH_TAG = 105; - */ - WISMESH_TAG = 105, - - /** - * - * RAKwireless WisBlock Core RAK3312 https://docs.rakwireless.com/product-categories/wisduo/rak3112-module/overview/ - * - * @generated from enum value: RAK3312 = 106; - */ - RAK3312 = 106, - - /** - * - * Elecrow ThinkNode M5 https://www.elecrow.com/wiki/ThinkNode_M5_Meshtastic_LoRa_Signal_Transceiver_ESP32-S3.html - * - * @generated from enum value: THINKNODE_M5 = 107; - */ - THINKNODE_M5 = 107, - - /** - * - * MeshSolar is an integrated power management and communication solution designed for outdoor low-power devices. - * https://heltec.org/project/meshsolar/ - * - * @generated from enum value: HELTEC_MESH_SOLAR = 108; - */ - HELTEC_MESH_SOLAR = 108, - - /** - * - * Lilygo T-Echo Lite - * - * @generated from enum value: T_ECHO_LITE = 109; - */ - T_ECHO_LITE = 109, - - /** - * - * New Heltec LoRA32 with ESP32-S3 CPU - * - * @generated from enum value: HELTEC_V4 = 110; - */ - HELTEC_V4 = 110, - - /** - * - * M5Stack C6L - * - * @generated from enum value: M5STACK_C6L = 111; - */ - M5STACK_C6L = 111, - - /** - * - * M5Stack Cardputer Adv - * - * @generated from enum value: M5STACK_CARDPUTER_ADV = 112; - */ - M5STACK_CARDPUTER_ADV = 112, - - /** - * - * ESP32S3 main controller with GPS and TFT screen. - * - * @generated from enum value: HELTEC_WIRELESS_TRACKER_V2 = 113; - */ - HELTEC_WIRELESS_TRACKER_V2 = 113, - - /** - * - * LilyGo T-Watch Ultra - * - * @generated from enum value: T_WATCH_ULTRA = 114; - */ - T_WATCH_ULTRA = 114, - - /** - * - * Elecrow ThinkNode M3 - * - * @generated from enum value: THINKNODE_M3 = 115; - */ - THINKNODE_M3 = 115, - - /** - * - * RAK WISMESH_TAP_V2 with ESP32-S3 CPU - * - * @generated from enum value: WISMESH_TAP_V2 = 116; - */ - WISMESH_TAP_V2 = 116, - - /** - * - * RAK3401 - * - * @generated from enum value: RAK3401 = 117; - */ - RAK3401 = 117, - - /** - * - * RAK6421 Hat+ - * - * @generated from enum value: RAK6421 = 118; - */ - RAK6421 = 118, - - /** - * - * Elecrow ThinkNode M4 - * - * @generated from enum value: THINKNODE_M4 = 119; - */ - THINKNODE_M4 = 119, - - /** - * - * Elecrow ThinkNode M6 - * - * @generated from enum value: THINKNODE_M6 = 120; - */ - THINKNODE_M6 = 120, - - /** - * - * Elecrow Meshstick 1262 - * - * @generated from enum value: MESHSTICK_1262 = 121; - */ - MESHSTICK_1262 = 121, - - /** - * - * LilyGo T-Beam 1W - * - * @generated from enum value: TBEAM_1_WATT = 122; - */ - TBEAM_1_WATT = 122, - - /** - * - * LilyGo T5 S3 ePaper Pro (V1 and V2) - * - * @generated from enum value: T5_S3_EPAPER_PRO = 123; - */ - T5_S3_EPAPER_PRO = 123, - - /** - * - * LilyGo T-Beam BPF (144-148Mhz) - * - * @generated from enum value: TBEAM_BPF = 124; - */ - TBEAM_BPF = 124, - - /** - * - * LilyGo T-Mini E-paper S3 Kit - * - * @generated from enum value: MINI_EPAPER_S3 = 125; - */ - MINI_EPAPER_S3 = 125, - - /** - * - * LilyGo T-Display S3 Pro LR1121 - * - * @generated from enum value: TDISPLAY_S3_PRO = 126; - */ - TDISPLAY_S3_PRO = 126, - - /** - * - * Heltec Mesh Node T096 board features an nRF52840 CPU and a TFT screen. - * - * @generated from enum value: HELTEC_MESH_NODE_T096 = 127; - */ - HELTEC_MESH_NODE_T096 = 127, - - /** - * - * Seeed studio T1000-E Pro tracker card. NRF52840 w/ LR2021 radio, - * GPS, button, buzzer, and sensors. - * - * @generated from enum value: TRACKER_T1000_E_PRO = 128; - */ - TRACKER_T1000_E_PRO = 128, - - /** - * - * Elecrow ThinkNode M7, M8 and M9 - * - * @generated from enum value: THINKNODE_M7 = 129; - */ - THINKNODE_M7 = 129, - - /** - * @generated from enum value: THINKNODE_M8 = 130; - */ - THINKNODE_M8 = 130, - - /** - * @generated from enum value: THINKNODE_M9 = 131; - */ - THINKNODE_M9 = 131, - - /** - * - * The Heltec-V4-R8 uses an ESP32S3R8 chip, plus an SX1262. - * - * @generated from enum value: HELTEC_V4_R8 = 132; - */ - HELTEC_V4_R8 = 132, - - /** - * - * The HELTEC_MESH_NODE_T1 uses an NRF52840 chip, plus an SX1262. - * - * @generated from enum value: HELTEC_MESH_NODE_T1 = 133; - */ - HELTEC_MESH_NODE_T1 = 133, - - /** - * - * B&Q Consulting Station G3: TBD - * - * @generated from enum value: STATION_G3 = 134; - */ - STATION_G3 = 134, - - /** - * - * Lilygo T-Impulse-Plus - * - * @generated from enum value: T_IMPULSE_PLUS = 135; - */ - T_IMPULSE_PLUS = 135, - - /** - * - * Lilygo T-Echo Card - * - * @generated from enum value: T_ECHO_CARD = 136; - */ - T_ECHO_CARD = 136, - - /** - * - * Seeed Tracker L2 - * - * @generated from enum value: SEEED_WIO_TRACKER_L2 = 137; - */ - SEEED_WIO_TRACKER_L2 = 137, - - /** - * - * Elecrow CrowPanel Advance P4 models, ESP32-P4 and TFT with SX1262 radio plugin - * - * @generated from enum value: CROWPANEL_P4 = 138; - */ - CROWPANEL_P4 = 138, - - /** - * - * Heltec Mesh Tower V2 - * - * @generated from enum value: HELTEC_MESH_TOWER_V2 = 139; - */ - HELTEC_MESH_TOWER_V2 = 139, - - /** - * - * Meshnology W10 - * - * @generated from enum value: MESHNOLOGY_W10 = 140; - */ - MESHNOLOGY_W10 = 140, - - /** - * - * ------------------------------------------------------------------------------------------------------------------------------------------ - * Reserved ID For developing private Ports. These will show up in live traffic sparsely, so we can use a high number. Keep it within 8 bits. - * ------------------------------------------------------------------------------------------------------------------------------------------ - * - * @generated from enum value: PRIVATE_HW = 255; - */ - PRIVATE_HW = 255, -} - -/** - * Describes the enum meshtastic.HardwareModel. - */ -export const HardwareModelSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 0); - -/** - * - * Shared constants between device and phone - * - * @generated from enum meshtastic.Constants - */ -export enum Constants { - /** - * - * First enum must be zero, and we are just using this enum to - * pass int constants between two very different environments - * - * @generated from enum value: ZERO = 0; - */ - ZERO = 0, - - /** - * - * From mesh.options - * note: this payload length is ONLY the bytes that are sent inside of the Data protobuf (excluding protobuf overhead). The 16 byte header is - * outside of this envelope - * - * @generated from enum value: DATA_PAYLOAD_LEN = 233; - */ - DATA_PAYLOAD_LEN = 233, -} - -/** - * Describes the enum meshtastic.Constants. - */ -export const ConstantsSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 1); - -/** - * - * Error codes for critical errors - * The device might report these fault codes on the screen. - * If you encounter a fault code, please post on the meshtastic.discourse.group - * and we'll try to help. - * - * @generated from enum meshtastic.CriticalErrorCode - */ -export enum CriticalErrorCode { - /** - * - * TODO: REPLACE - * - * @generated from enum value: NONE = 0; - */ - NONE = 0, - - /** - * - * A software bug was detected while trying to send lora - * - * @generated from enum value: TX_WATCHDOG = 1; - */ - TX_WATCHDOG = 1, - - /** - * - * A software bug was detected on entry to sleep - * - * @generated from enum value: SLEEP_ENTER_WAIT = 2; - */ - SLEEP_ENTER_WAIT = 2, - - /** - * - * No Lora radio hardware could be found - * - * @generated from enum value: NO_RADIO = 3; - */ - NO_RADIO = 3, - - /** - * - * Not normally used - * - * @generated from enum value: UNSPECIFIED = 4; - */ - UNSPECIFIED = 4, - - /** - * - * We failed while configuring a UBlox GPS - * - * @generated from enum value: UBLOX_UNIT_FAILED = 5; - */ - UBLOX_UNIT_FAILED = 5, - - /** - * - * This board was expected to have a power management chip and it is missing or broken - * - * @generated from enum value: NO_AXP192 = 6; - */ - NO_AXP192 = 6, - - /** - * - * The channel tried to set a radio setting which is not supported by this chipset, - * radio comms settings are now undefined. - * - * @generated from enum value: INVALID_RADIO_SETTING = 7; - */ - INVALID_RADIO_SETTING = 7, - - /** - * - * Radio transmit hardware failure. We sent data to the radio chip, but it didn't - * reply with an interrupt. - * - * @generated from enum value: TRANSMIT_FAILED = 8; - */ - TRANSMIT_FAILED = 8, - - /** - * - * We detected that the main CPU voltage dropped below the minimum acceptable value - * - * @generated from enum value: BROWNOUT = 9; - */ - BROWNOUT = 9, - - /** - * Selftest of SX1262 radio chip failed - * - * @generated from enum value: SX1262_FAILURE = 10; - */ - SX1262_FAILURE = 10, - - /** - * - * A (likely software but possibly hardware) failure was detected while trying to send packets. - * If this occurs on your board, please post in the forum so that we can ask you to collect some information to allow fixing this bug - * - * @generated from enum value: RADIO_SPI_BUG = 11; - */ - RADIO_SPI_BUG = 11, - - /** - * - * Corruption was detected on the flash filesystem but we were able to repair things. - * If you see this failure in the field please post in the forum because we are interested in seeing if this is occurring in the field. - * - * @generated from enum value: FLASH_CORRUPTION_RECOVERABLE = 12; - */ - FLASH_CORRUPTION_RECOVERABLE = 12, - - /** - * - * Corruption was detected on the flash filesystem but we were unable to repair things. - * NOTE: Your node will probably need to be reconfigured the next time it reboots (it will lose the region code etc...) - * If you see this failure in the field please post in the forum because we are interested in seeing if this is occurring in the field. - * - * @generated from enum value: FLASH_CORRUPTION_UNRECOVERABLE = 13; - */ - FLASH_CORRUPTION_UNRECOVERABLE = 13, -} - -/** - * Describes the enum meshtastic.CriticalErrorCode. - */ -export const CriticalErrorCodeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 2); - -/** - * - * Enum to indicate to clients whether this firmware is a special firmware build, like an event. - * The first 16 values are reserved for non-event special firmwares, like the Smart Citizen use case. - * - * @generated from enum meshtastic.FirmwareEdition - */ -export enum FirmwareEdition { - /** - * - * Vanilla firmware - * - * @generated from enum value: VANILLA = 0; - */ - VANILLA = 0, - - /** - * - * Firmware for use in the Smart Citizen environmental monitoring network - * - * @generated from enum value: SMART_CITIZEN = 1; - */ - SMART_CITIZEN = 1, - - /** - * - * Open Sauce, the maker conference held yearly in CA - * - * @generated from enum value: OPEN_SAUCE = 16; - */ - OPEN_SAUCE = 16, - - /** - * - * DEFCON, the yearly hacker conference - * - * @generated from enum value: DEFCON = 17; - */ - DEFCON = 17, - - /** - * - * Burning Man, the yearly hippie gathering in the desert - * - * @generated from enum value: BURNING_MAN = 18; - */ - BURNING_MAN = 18, - - /** - * - * Hamvention, the Dayton amateur radio convention - * - * @generated from enum value: HAMVENTION = 19; - */ - HAMVENTION = 19, - - /** - * - * Placeholder for DIY and unofficial events - * - * @generated from enum value: DIY_EDITION = 127; - */ - DIY_EDITION = 127, -} - -/** - * Describes the enum meshtastic.FirmwareEdition. - */ -export const FirmwareEditionSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 3); - -/** - * - * Enum for modules excluded from a device's configuration. - * Each value represents a ModuleConfigType that can be toggled as excluded - * by setting its corresponding bit in the `excluded_modules` bitmask field. - * - * @generated from enum meshtastic.ExcludedModules - */ -export enum ExcludedModules { - /** - * - * Default value of 0 indicates no modules are excluded. - * - * @generated from enum value: EXCLUDED_NONE = 0; - */ - EXCLUDED_NONE = 0, - - /** - * - * MQTT module - * - * @generated from enum value: MQTT_CONFIG = 1; - */ - MQTT_CONFIG = 1, - - /** - * - * Serial module - * - * @generated from enum value: SERIAL_CONFIG = 2; - */ - SERIAL_CONFIG = 2, - - /** - * - * External Notification module - * - * @generated from enum value: EXTNOTIF_CONFIG = 4; - */ - EXTNOTIF_CONFIG = 4, - - /** - * - * Store and Forward module - * - * @generated from enum value: STOREFORWARD_CONFIG = 8; - */ - STOREFORWARD_CONFIG = 8, - - /** - * - * Range Test module - * - * @generated from enum value: RANGETEST_CONFIG = 16; - */ - RANGETEST_CONFIG = 16, - - /** - * - * Telemetry module - * - * @generated from enum value: TELEMETRY_CONFIG = 32; - */ - TELEMETRY_CONFIG = 32, - - /** - * - * Canned Message module - * - * @generated from enum value: CANNEDMSG_CONFIG = 64; - */ - CANNEDMSG_CONFIG = 64, - - /** - * - * Audio module - * - * @generated from enum value: AUDIO_CONFIG = 128; - */ - AUDIO_CONFIG = 128, - - /** - * - * Remote Hardware module - * - * @generated from enum value: REMOTEHARDWARE_CONFIG = 256; - */ - REMOTEHARDWARE_CONFIG = 256, - - /** - * - * Neighbor Info module - * - * @generated from enum value: NEIGHBORINFO_CONFIG = 512; - */ - NEIGHBORINFO_CONFIG = 512, - - /** - * - * Ambient Lighting module - * - * @generated from enum value: AMBIENTLIGHTING_CONFIG = 1024; - */ - AMBIENTLIGHTING_CONFIG = 1024, - - /** - * - * Detection Sensor module - * - * @generated from enum value: DETECTIONSENSOR_CONFIG = 2048; - */ - DETECTIONSENSOR_CONFIG = 2048, - - /** - * - * Paxcounter module - * - * @generated from enum value: PAXCOUNTER_CONFIG = 4096; - */ - PAXCOUNTER_CONFIG = 4096, - - /** - * - * Bluetooth config (not technically a module, but used to indicate bluetooth capabilities) - * - * @generated from enum value: BLUETOOTH_CONFIG = 8192; - */ - BLUETOOTH_CONFIG = 8192, - - /** - * - * Network config (not technically a module, but used to indicate network capabilities) - * - * @generated from enum value: NETWORK_CONFIG = 16384; - */ - NETWORK_CONFIG = 16384, -} - -/** - * Describes the enum meshtastic.ExcludedModules. - */ -export const ExcludedModulesSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_mesh, 4); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/module_config_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/module_config_pb.ts deleted file mode 100644 index abc15ab48..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/module_config_pb.ts +++ /dev/null @@ -1,1889 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/module_config.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 { MemberRole, Team } from "./atak_pb"; -import { file_meshtastic_atak } from "./atak_pb"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/module_config.proto. - */ -export const file_meshtastic_module_config: GenFile = /*@__PURE__*/ - fileDesc("Ch5tZXNodGFzdGljL21vZHVsZV9jb25maWcucHJvdG8SCm1lc2h0YXN0aWMiky0KDE1vZHVsZUNvbmZpZxIzCgRtcXR0GAEgASgLMiMubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuTVFUVENvbmZpZ0gAEjcKBnNlcmlhbBgCIAEoCzIlLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLlNlcmlhbENvbmZpZ0gAElQKFWV4dGVybmFsX25vdGlmaWNhdGlvbhgDIAEoCzIzLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLkV4dGVybmFsTm90aWZpY2F0aW9uQ29uZmlnSAASRAoNc3RvcmVfZm9yd2FyZBgEIAEoCzIrLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLlN0b3JlRm9yd2FyZENvbmZpZ0gAEj4KCnJhbmdlX3Rlc3QYBSABKAsyKC5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5SYW5nZVRlc3RDb25maWdIABI9Cgl0ZWxlbWV0cnkYBiABKAsyKC5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5UZWxlbWV0cnlDb25maWdIABJGCg5jYW5uZWRfbWVzc2FnZRgHIAEoCzIsLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLkNhbm5lZE1lc3NhZ2VDb25maWdIABI1CgVhdWRpbxgIIAEoCzIkLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLkF1ZGlvQ29uZmlnSAASSAoPcmVtb3RlX2hhcmR3YXJlGAkgASgLMi0ubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuUmVtb3RlSGFyZHdhcmVDb25maWdIABJECg1uZWlnaGJvcl9pbmZvGAogASgLMisubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuTmVpZ2hib3JJbmZvQ29uZmlnSAASSgoQYW1iaWVudF9saWdodGluZxgLIAEoCzIuLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLkFtYmllbnRMaWdodGluZ0NvbmZpZ0gAEkoKEGRldGVjdGlvbl9zZW5zb3IYDCABKAsyLi5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5EZXRlY3Rpb25TZW5zb3JDb25maWdIABI/CgpwYXhjb3VudGVyGA0gASgLMikubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuUGF4Y291bnRlckNvbmZpZ0gAEkUKDXN0YXR1c21lc3NhZ2UYDiABKAsyLC5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5TdGF0dXNNZXNzYWdlQ29uZmlnSAASTgoSdHJhZmZpY19tYW5hZ2VtZW50GA8gASgLMjAubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuVHJhZmZpY01hbmFnZW1lbnRDb25maWdIABIxCgN0YWsYECABKAsyIi5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5UQUtDb25maWdIABq0AgoKTVFUVENvbmZpZxIPCgdlbmFibGVkGAEgASgIEg8KB2FkZHJlc3MYAiABKAkSEAoIdXNlcm5hbWUYAyABKAkSEAoIcGFzc3dvcmQYBCABKAkSGgoSZW5jcnlwdGlvbl9lbmFibGVkGAUgASgIEhgKDGpzb25fZW5hYmxlZBgGIAEoCEICGAESEwoLdGxzX2VuYWJsZWQYByABKAgSDAoEcm9vdBgIIAEoCRIfChdwcm94eV90b19jbGllbnRfZW5hYmxlZBgJIAEoCBIdChVtYXBfcmVwb3J0aW5nX2VuYWJsZWQYCiABKAgSRwoTbWFwX3JlcG9ydF9zZXR0aW5ncxgLIAEoCzIqLm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLk1hcFJlcG9ydFNldHRpbmdzGm4KEU1hcFJlcG9ydFNldHRpbmdzEh0KFXB1Ymxpc2hfaW50ZXJ2YWxfc2VjcxgBIAEoDRIaChJwb3NpdGlvbl9wcmVjaXNpb24YAiABKA0SHgoWc2hvdWxkX3JlcG9ydF9sb2NhdGlvbhgDIAEoCBqCAQoUUmVtb3RlSGFyZHdhcmVDb25maWcSDwoHZW5hYmxlZBgBIAEoCBIiChphbGxvd191bmRlZmluZWRfcGluX2FjY2VzcxgCIAEoCBI1Cg5hdmFpbGFibGVfcGlucxgDIAMoCzIdLm1lc2h0YXN0aWMuUmVtb3RlSGFyZHdhcmVQaW4aWgoSTmVpZ2hib3JJbmZvQ29uZmlnEg8KB2VuYWJsZWQYASABKAgSFwoPdXBkYXRlX2ludGVydmFsGAIgASgNEhoKEnRyYW5zbWl0X292ZXJfbG9yYRgDIAEoCBqXAwoVRGV0ZWN0aW9uU2Vuc29yQ29uZmlnEg8KB2VuYWJsZWQYASABKAgSHgoWbWluaW11bV9icm9hZGNhc3Rfc2VjcxgCIAEoDRIcChRzdGF0ZV9icm9hZGNhc3Rfc2VjcxgDIAEoDRIRCglzZW5kX2JlbGwYBCABKAgSDAoEbmFtZRgFIAEoCRITCgttb25pdG9yX3BpbhgGIAEoDRJaChZkZXRlY3Rpb25fdHJpZ2dlcl90eXBlGAcgASgOMjoubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuRGV0ZWN0aW9uU2Vuc29yQ29uZmlnLlRyaWdnZXJUeXBlEhIKCnVzZV9wdWxsdXAYCCABKAgiiAEKC1RyaWdnZXJUeXBlEg0KCUxPR0lDX0xPVxAAEg4KCkxPR0lDX0hJR0gQARIQCgxGQUxMSU5HX0VER0UQAhIPCgtSSVNJTkdfRURHRRADEhoKFkVJVEhFUl9FREdFX0FDVElWRV9MT1cQBBIbChdFSVRIRVJfRURHRV9BQ1RJVkVfSElHSBAFGuQCCgtBdWRpb0NvbmZpZxIWCg5jb2RlYzJfZW5hYmxlZBgBIAEoCBIPCgdwdHRfcGluGAIgASgNEkAKB2JpdHJhdGUYAyABKA4yLy5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5BdWRpb0NvbmZpZy5BdWRpb19CYXVkEg4KBmkyc193cxgEIAEoDRIOCgZpMnNfc2QYBSABKA0SDwoHaTJzX2RpbhgGIAEoDRIPCgdpMnNfc2NrGAcgASgNIqcBCgpBdWRpb19CYXVkEhIKDkNPREVDMl9ERUZBVUxUEAASDwoLQ09ERUMyXzMyMDAQARIPCgtDT0RFQzJfMjQwMBACEg8KC0NPREVDMl8xNjAwEAMSDwoLQ09ERUMyXzE0MDAQBBIPCgtDT0RFQzJfMTMwMBAFEg8KC0NPREVDMl8xMjAwEAYSDgoKQ09ERUMyXzcwMBAHEg8KC0NPREVDMl83MDBCEAgadgoQUGF4Y291bnRlckNvbmZpZxIPCgdlbmFibGVkGAEgASgIEiIKGnBheGNvdW50ZXJfdXBkYXRlX2ludGVydmFsGAIgASgNEhYKDndpZmlfdGhyZXNob2xkGAMgASgFEhUKDWJsZV90aHJlc2hvbGQYBCABKAUa0wMKF1RyYWZmaWNNYW5hZ2VtZW50Q29uZmlnEg8KB2VuYWJsZWQYASABKAgSHgoWcG9zaXRpb25fZGVkdXBfZW5hYmxlZBgCIAEoCBIfChdwb3NpdGlvbl9wcmVjaXNpb25fYml0cxgDIAEoDRIiChpwb3NpdGlvbl9taW5faW50ZXJ2YWxfc2VjcxgEIAEoDRIgChhub2RlaW5mb19kaXJlY3RfcmVzcG9uc2UYBSABKAgSKQohbm9kZWluZm9fZGlyZWN0X3Jlc3BvbnNlX21heF9ob3BzGAYgASgNEhoKEnJhdGVfbGltaXRfZW5hYmxlZBgHIAEoCBIeChZyYXRlX2xpbWl0X3dpbmRvd19zZWNzGAggASgNEh4KFnJhdGVfbGltaXRfbWF4X3BhY2tldHMYCSABKA0SHAoUZHJvcF91bmtub3duX2VuYWJsZWQYCiABKAgSIAoYdW5rbm93bl9wYWNrZXRfdGhyZXNob2xkGAsgASgNEh0KFWV4aGF1c3RfaG9wX3RlbGVtZXRyeRgMIAEoCBIcChRleGhhdXN0X2hvcF9wb3NpdGlvbhgNIAEoCBIcChRyb3V0ZXJfcHJlc2VydmVfaG9wcxgOIAEoCBqjBQoMU2VyaWFsQ29uZmlnEg8KB2VuYWJsZWQYASABKAgSDAoEZWNobxgCIAEoCBILCgNyeGQYAyABKA0SCwoDdHhkGAQgASgNEj8KBGJhdWQYBSABKA4yMS5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5TZXJpYWxDb25maWcuU2VyaWFsX0JhdWQSDwoHdGltZW91dBgGIAEoDRI/CgRtb2RlGAcgASgOMjEubWVzaHRhc3RpYy5Nb2R1bGVDb25maWcuU2VyaWFsQ29uZmlnLlNlcmlhbF9Nb2RlEiQKHG92ZXJyaWRlX2NvbnNvbGVfc2VyaWFsX3BvcnQYCCABKAgiigIKC1NlcmlhbF9CYXVkEhAKDEJBVURfREVGQVVMVBAAEgwKCEJBVURfMTEwEAESDAoIQkFVRF8zMDAQAhIMCghCQVVEXzYwMBADEg0KCUJBVURfMTIwMBAEEg0KCUJBVURfMjQwMBAFEg0KCUJBVURfNDgwMBAGEg0KCUJBVURfOTYwMBAHEg4KCkJBVURfMTkyMDAQCBIOCgpCQVVEXzM4NDAwEAkSDgoKQkFVRF81NzYwMBAKEg8KC0JBVURfMTE1MjAwEAsSDwoLQkFVRF8yMzA0MDAQDBIPCgtCQVVEXzQ2MDgwMBANEg8KC0JBVURfNTc2MDAwEA4SDwoLQkFVRF85MjE2MDAQDyKTAQoLU2VyaWFsX01vZGUSCwoHREVGQVVMVBAAEgoKBlNJTVBMRRABEgkKBVBST1RPEAISCwoHVEVYVE1TRxADEggKBE5NRUEQBBILCgdDQUxUT1BPEAUSCAoEV1M4NRAGEg0KCVZFX0RJUkVDVBAHEg0KCU1TX0NPTkZJRxAIEgcKA0xPRxAJEgsKB0xPR1RFWFQQChrpAgoaRXh0ZXJuYWxOb3RpZmljYXRpb25Db25maWcSDwoHZW5hYmxlZBgBIAEoCBIRCglvdXRwdXRfbXMYAiABKA0SDgoGb3V0cHV0GAMgASgNEhQKDG91dHB1dF92aWJyYRgIIAEoDRIVCg1vdXRwdXRfYnV6emVyGAkgASgNEg4KBmFjdGl2ZRgEIAEoCBIVCg1hbGVydF9tZXNzYWdlGAUgASgIEhsKE2FsZXJ0X21lc3NhZ2VfdmlicmEYCiABKAgSHAoUYWxlcnRfbWVzc2FnZV9idXp6ZXIYCyABKAgSEgoKYWxlcnRfYmVsbBgGIAEoCBIYChBhbGVydF9iZWxsX3ZpYnJhGAwgASgIEhkKEWFsZXJ0X2JlbGxfYnV6emVyGA0gASgIEg8KB3VzZV9wd20YByABKAgSEwoLbmFnX3RpbWVvdXQYDiABKA0SGQoRdXNlX2kyc19hc19idXp6ZXIYDyABKAgalwEKElN0b3JlRm9yd2FyZENvbmZpZxIPCgdlbmFibGVkGAEgASgIEhEKCWhlYXJ0YmVhdBgCIAEoCBIPCgdyZWNvcmRzGAMgASgNEhoKEmhpc3RvcnlfcmV0dXJuX21heBgEIAEoDRIdChVoaXN0b3J5X3JldHVybl93aW5kb3cYBSABKA0SEQoJaXNfc2VydmVyGAYgASgIGlkKD1JhbmdlVGVzdENvbmZpZxIPCgdlbmFibGVkGAEgASgIEg4KBnNlbmRlchgCIAEoDRIMCgRzYXZlGAMgASgIEhcKD2NsZWFyX29uX3JlYm9vdBgEIAEoCBqPBAoPVGVsZW1ldHJ5Q29uZmlnEh4KFmRldmljZV91cGRhdGVfaW50ZXJ2YWwYASABKA0SIwobZW52aXJvbm1lbnRfdXBkYXRlX2ludGVydmFsGAIgASgNEicKH2Vudmlyb25tZW50X21lYXN1cmVtZW50X2VuYWJsZWQYAyABKAgSIgoaZW52aXJvbm1lbnRfc2NyZWVuX2VuYWJsZWQYBCABKAgSJgoeZW52aXJvbm1lbnRfZGlzcGxheV9mYWhyZW5oZWl0GAUgASgIEhsKE2Fpcl9xdWFsaXR5X2VuYWJsZWQYBiABKAgSHAoUYWlyX3F1YWxpdHlfaW50ZXJ2YWwYByABKA0SIQoZcG93ZXJfbWVhc3VyZW1lbnRfZW5hYmxlZBgIIAEoCBIdChVwb3dlcl91cGRhdGVfaW50ZXJ2YWwYCSABKA0SHAoUcG93ZXJfc2NyZWVuX2VuYWJsZWQYCiABKAgSIgoaaGVhbHRoX21lYXN1cmVtZW50X2VuYWJsZWQYCyABKAgSHgoWaGVhbHRoX3VwZGF0ZV9pbnRlcnZhbBgMIAEoDRIdChVoZWFsdGhfc2NyZWVuX2VuYWJsZWQYDSABKAgSIAoYZGV2aWNlX3RlbGVtZXRyeV9lbmFibGVkGA4gASgIEiIKGmFpcl9xdWFsaXR5X3NjcmVlbl9lbmFibGVkGA8gASgIGt4EChNDYW5uZWRNZXNzYWdlQ29uZmlnEhcKD3JvdGFyeTFfZW5hYmxlZBgBIAEoCBIZChFpbnB1dGJyb2tlcl9waW5fYRgCIAEoDRIZChFpbnB1dGJyb2tlcl9waW5fYhgDIAEoDRIdChVpbnB1dGJyb2tlcl9waW5fcHJlc3MYBCABKA0SWQoUaW5wdXRicm9rZXJfZXZlbnRfY3cYBSABKA4yOy5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5DYW5uZWRNZXNzYWdlQ29uZmlnLklucHV0RXZlbnRDaGFyEloKFWlucHV0YnJva2VyX2V2ZW50X2NjdxgGIAEoDjI7Lm1lc2h0YXN0aWMuTW9kdWxlQ29uZmlnLkNhbm5lZE1lc3NhZ2VDb25maWcuSW5wdXRFdmVudENoYXISXAoXaW5wdXRicm9rZXJfZXZlbnRfcHJlc3MYByABKA4yOy5tZXNodGFzdGljLk1vZHVsZUNvbmZpZy5DYW5uZWRNZXNzYWdlQ29uZmlnLklucHV0RXZlbnRDaGFyEhcKD3VwZG93bjFfZW5hYmxlZBgIIAEoCBITCgdlbmFibGVkGAkgASgIQgIYARIeChJhbGxvd19pbnB1dF9zb3VyY2UYCiABKAlCAhgBEhEKCXNlbmRfYmVsbBgLIAEoCCJjCg5JbnB1dEV2ZW50Q2hhchIICgROT05FEAASBgoCVVAQERIICgRET1dOEBISCAoETEVGVBATEgkKBVJJR0hUEBQSCgoGU0VMRUNUEAoSCAoEQkFDSxAbEgoKBkNBTkNFTBAYGmUKFUFtYmllbnRMaWdodGluZ0NvbmZpZxIRCglsZWRfc3RhdGUYASABKAgSDwoHY3VycmVudBgCIAEoDRILCgNyZWQYAyABKA0SDQoFZ3JlZW4YBCABKA0SDAoEYmx1ZRgFIAEoDRoqChNTdGF0dXNNZXNzYWdlQ29uZmlnEhMKC25vZGVfc3RhdHVzGAEgASgJGlEKCVRBS0NvbmZpZxIeCgR0ZWFtGAEgASgOMhAubWVzaHRhc3RpYy5UZWFtEiQKBHJvbGUYAiABKA4yFi5tZXNodGFzdGljLk1lbWJlclJvbGVCEQoPcGF5bG9hZF92YXJpYW50ImQKEVJlbW90ZUhhcmR3YXJlUGluEhAKCGdwaW9fcGluGAEgASgNEgwKBG5hbWUYAiABKAkSLwoEdHlwZRgDIAEoDjIhLm1lc2h0YXN0aWMuUmVtb3RlSGFyZHdhcmVQaW5UeXBlKkkKFVJlbW90ZUhhcmR3YXJlUGluVHlwZRILCgdVTktOT1dOEAASEAoMRElHSVRBTF9SRUFEEAESEQoNRElHSVRBTF9XUklURRACQmgKFG9yZy5tZXNodGFzdGljLnByb3RvQhJNb2R1bGVDb25maWdQcm90b3NaImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAGIGcHJvdG8z", [file_meshtastic_atak]); - -/** - * - * Module Config - * - * @generated from message meshtastic.ModuleConfig - */ -export type ModuleConfig = Message<"meshtastic.ModuleConfig"> & { - /** - * - * TODO: REPLACE - * - * @generated from oneof meshtastic.ModuleConfig.payload_variant - */ - payloadVariant: { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.MQTTConfig mqtt = 1; - */ - value: ModuleConfig_MQTTConfig; - case: "mqtt"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.SerialConfig serial = 2; - */ - value: ModuleConfig_SerialConfig; - case: "serial"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.ExternalNotificationConfig external_notification = 3; - */ - value: ModuleConfig_ExternalNotificationConfig; - case: "externalNotification"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.StoreForwardConfig store_forward = 4; - */ - value: ModuleConfig_StoreForwardConfig; - case: "storeForward"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.RangeTestConfig range_test = 5; - */ - value: ModuleConfig_RangeTestConfig; - case: "rangeTest"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.TelemetryConfig telemetry = 6; - */ - value: ModuleConfig_TelemetryConfig; - case: "telemetry"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.CannedMessageConfig canned_message = 7; - */ - value: ModuleConfig_CannedMessageConfig; - case: "cannedMessage"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.AudioConfig audio = 8; - */ - value: ModuleConfig_AudioConfig; - case: "audio"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.RemoteHardwareConfig remote_hardware = 9; - */ - value: ModuleConfig_RemoteHardwareConfig; - case: "remoteHardware"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.NeighborInfoConfig neighbor_info = 10; - */ - value: ModuleConfig_NeighborInfoConfig; - case: "neighborInfo"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.AmbientLightingConfig ambient_lighting = 11; - */ - value: ModuleConfig_AmbientLightingConfig; - case: "ambientLighting"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.DetectionSensorConfig detection_sensor = 12; - */ - value: ModuleConfig_DetectionSensorConfig; - case: "detectionSensor"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.PaxcounterConfig paxcounter = 13; - */ - value: ModuleConfig_PaxcounterConfig; - case: "paxcounter"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.ModuleConfig.StatusMessageConfig statusmessage = 14; - */ - value: ModuleConfig_StatusMessageConfig; - case: "statusmessage"; - } | { - /** - * - * Traffic management module config for mesh network optimization - * - * @generated from field: meshtastic.ModuleConfig.TrafficManagementConfig traffic_management = 15; - */ - value: ModuleConfig_TrafficManagementConfig; - case: "trafficManagement"; - } | { - /** - * - * TAK team/role configuration for TAK_TRACKER - * - * @generated from field: meshtastic.ModuleConfig.TAKConfig tak = 16; - */ - value: ModuleConfig_TAKConfig; - case: "tak"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.ModuleConfig. - * Use `create(ModuleConfigSchema)` to create a new message. - */ -export const ModuleConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0); - -/** - * - * MQTT Client Config - * - * @generated from message meshtastic.ModuleConfig.MQTTConfig - */ -export type ModuleConfig_MQTTConfig = Message<"meshtastic.ModuleConfig.MQTTConfig"> & { - /** - * - * If a meshtastic node is able to reach the internet it will normally attempt to gateway any channels that are marked as - * is_uplink_enabled or is_downlink_enabled. - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * - * The server to use for our MQTT global message gateway feature. - * If not set, the default server will be used - * - * @generated from field: string address = 2; - */ - address: string; - - /** - * - * MQTT username to use (most useful for a custom MQTT server). - * If using a custom server, this will be honoured even if empty. - * If using the default server, this will only be honoured if set, otherwise the device will use the default username - * - * @generated from field: string username = 3; - */ - username: string; - - /** - * - * MQTT password to use (most useful for a custom MQTT server). - * If using a custom server, this will be honoured even if empty. - * If using the default server, this will only be honoured if set, otherwise the device will use the default password - * - * @generated from field: string password = 4; - */ - password: string; - - /** - * - * Whether to send encrypted or decrypted packets to MQTT. - * This parameter is only honoured if you also set server - * (the default official mqtt.meshtastic.org server can handle encrypted packets) - * Decrypted packets may be useful for external systems that want to consume meshtastic packets - * - * @generated from field: bool encryption_enabled = 5; - */ - encryptionEnabled: boolean; - - /** - * - * Deprecated: JSON packet support on MQTT was removed, and this field is ignored. - * - * @generated from field: bool json_enabled = 6 [deprecated = true]; - * @deprecated - */ - jsonEnabled: boolean; - - /** - * - * If true, we attempt to establish a secure connection using TLS - * - * @generated from field: bool tls_enabled = 7; - */ - tlsEnabled: boolean; - - /** - * - * The root topic to use for MQTT messages. Default is "msh". - * This is useful if you want to use a single MQTT server for multiple meshtastic networks and separate them via ACLs - * - * @generated from field: string root = 8; - */ - root: string; - - /** - * - * If true, we can use the connected phone / client to proxy messages to MQTT instead of a direct connection - * - * @generated from field: bool proxy_to_client_enabled = 9; - */ - proxyToClientEnabled: boolean; - - /** - * - * If true, we will periodically report unencrypted information about our node to a map via MQTT - * - * @generated from field: bool map_reporting_enabled = 10; - */ - mapReportingEnabled: boolean; - - /** - * - * Settings for reporting information about our node to a map via MQTT - * - * @generated from field: meshtastic.ModuleConfig.MapReportSettings map_report_settings = 11; - */ - mapReportSettings?: ModuleConfig_MapReportSettings | undefined; -}; - -/** - * Describes the message meshtastic.ModuleConfig.MQTTConfig. - * Use `create(ModuleConfig_MQTTConfigSchema)` to create a new message. - */ -export const ModuleConfig_MQTTConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 0); - -/** - * - * Settings for reporting unencrypted information about our node to a map via MQTT - * - * @generated from message meshtastic.ModuleConfig.MapReportSettings - */ -export type ModuleConfig_MapReportSettings = Message<"meshtastic.ModuleConfig.MapReportSettings"> & { - /** - * - * How often we should report our info to the map (in seconds) - * - * @generated from field: uint32 publish_interval_secs = 1; - */ - publishIntervalSecs: number; - - /** - * - * Bits of precision for the location sent (default of 32 is full precision). - * - * @generated from field: uint32 position_precision = 2; - */ - positionPrecision: number; - - /** - * - * Whether we have opted-in to report our location to the map - * - * @generated from field: bool should_report_location = 3; - */ - shouldReportLocation: boolean; -}; - -/** - * Describes the message meshtastic.ModuleConfig.MapReportSettings. - * Use `create(ModuleConfig_MapReportSettingsSchema)` to create a new message. - */ -export const ModuleConfig_MapReportSettingsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 1); - -/** - * - * RemoteHardwareModule Config - * - * @generated from message meshtastic.ModuleConfig.RemoteHardwareConfig - */ -export type ModuleConfig_RemoteHardwareConfig = Message<"meshtastic.ModuleConfig.RemoteHardwareConfig"> & { - /** - * - * Whether the Module is enabled - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * - * Whether the Module allows consumers to read / write to pins not defined in available_pins - * - * @generated from field: bool allow_undefined_pin_access = 2; - */ - allowUndefinedPinAccess: boolean; - - /** - * - * Exposes the available pins to the mesh for reading and writing - * - * @generated from field: repeated meshtastic.RemoteHardwarePin available_pins = 3; - */ - availablePins: RemoteHardwarePin[]; -}; - -/** - * Describes the message meshtastic.ModuleConfig.RemoteHardwareConfig. - * Use `create(ModuleConfig_RemoteHardwareConfigSchema)` to create a new message. - */ -export const ModuleConfig_RemoteHardwareConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 2); - -/** - * - * NeighborInfoModule Config - * - * @generated from message meshtastic.ModuleConfig.NeighborInfoConfig - */ -export type ModuleConfig_NeighborInfoConfig = Message<"meshtastic.ModuleConfig.NeighborInfoConfig"> & { - /** - * - * Whether the Module is enabled - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * - * Interval in seconds of how often we should try to send our - * Neighbor Info (minimum is 14400, i.e., 4 hours) - * - * @generated from field: uint32 update_interval = 2; - */ - updateInterval: number; - - /** - * - * Whether in addition to sending it to MQTT and the PhoneAPI, our NeighborInfo should be transmitted over LoRa. - * Note that this is not available on a channel with default key and name. - * - * @generated from field: bool transmit_over_lora = 3; - */ - transmitOverLora: boolean; -}; - -/** - * Describes the message meshtastic.ModuleConfig.NeighborInfoConfig. - * Use `create(ModuleConfig_NeighborInfoConfigSchema)` to create a new message. - */ -export const ModuleConfig_NeighborInfoConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 3); - -/** - * - * Detection Sensor Module Config - * - * @generated from message meshtastic.ModuleConfig.DetectionSensorConfig - */ -export type ModuleConfig_DetectionSensorConfig = Message<"meshtastic.ModuleConfig.DetectionSensorConfig"> & { - /** - * - * Whether the Module is enabled - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * - * Interval in seconds of how often we can send a message to the mesh when a - * trigger event is detected - * - * @generated from field: uint32 minimum_broadcast_secs = 2; - */ - minimumBroadcastSecs: number; - - /** - * - * Interval in seconds of how often we should send a message to the mesh - * with the current state regardless of trigger events When set to 0, only - * trigger events will be broadcasted Works as a sort of status heartbeat - * for peace of mind - * - * @generated from field: uint32 state_broadcast_secs = 3; - */ - stateBroadcastSecs: number; - - /** - * - * Send ASCII bell with alert message - * Useful for triggering ext. notification on bell - * - * @generated from field: bool send_bell = 4; - */ - sendBell: boolean; - - /** - * - * Friendly name used to format message sent to mesh - * Example: A name "Motion" would result in a message "Motion detected" - * Maximum length of 20 characters - * - * @generated from field: string name = 5; - */ - name: string; - - /** - * - * GPIO pin to monitor for state changes - * - * @generated from field: uint32 monitor_pin = 6; - */ - monitorPin: number; - - /** - * - * The type of trigger event to be used - * - * @generated from field: meshtastic.ModuleConfig.DetectionSensorConfig.TriggerType detection_trigger_type = 7; - */ - detectionTriggerType: ModuleConfig_DetectionSensorConfig_TriggerType; - - /** - * - * Whether or not use INPUT_PULLUP mode for GPIO pin - * Only applicable if the board uses pull-up resistors on the pin - * - * @generated from field: bool use_pullup = 8; - */ - usePullup: boolean; -}; - -/** - * Describes the message meshtastic.ModuleConfig.DetectionSensorConfig. - * Use `create(ModuleConfig_DetectionSensorConfigSchema)` to create a new message. - */ -export const ModuleConfig_DetectionSensorConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 4); - -/** - * @generated from enum meshtastic.ModuleConfig.DetectionSensorConfig.TriggerType - */ -export enum ModuleConfig_DetectionSensorConfig_TriggerType { - /** - * Event is triggered if pin is low - * - * @generated from enum value: LOGIC_LOW = 0; - */ - LOGIC_LOW = 0, - - /** - * Event is triggered if pin is high - * - * @generated from enum value: LOGIC_HIGH = 1; - */ - LOGIC_HIGH = 1, - - /** - * Event is triggered when pin goes high to low - * - * @generated from enum value: FALLING_EDGE = 2; - */ - FALLING_EDGE = 2, - - /** - * Event is triggered when pin goes low to high - * - * @generated from enum value: RISING_EDGE = 3; - */ - RISING_EDGE = 3, - - /** - * Event is triggered on every pin state change, low is considered to be - * "active" - * - * @generated from enum value: EITHER_EDGE_ACTIVE_LOW = 4; - */ - EITHER_EDGE_ACTIVE_LOW = 4, - - /** - * Event is triggered on every pin state change, high is considered to be - * "active" - * - * @generated from enum value: EITHER_EDGE_ACTIVE_HIGH = 5; - */ - EITHER_EDGE_ACTIVE_HIGH = 5, -} - -/** - * Describes the enum meshtastic.ModuleConfig.DetectionSensorConfig.TriggerType. - */ -export const ModuleConfig_DetectionSensorConfig_TriggerTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_module_config, 0, 4, 0); - -/** - * - * Audio Config for codec2 voice - * - * @generated from message meshtastic.ModuleConfig.AudioConfig - */ -export type ModuleConfig_AudioConfig = Message<"meshtastic.ModuleConfig.AudioConfig"> & { - /** - * - * Whether Audio is enabled - * - * @generated from field: bool codec2_enabled = 1; - */ - codec2Enabled: boolean; - - /** - * - * PTT Pin - * - * @generated from field: uint32 ptt_pin = 2; - */ - pttPin: number; - - /** - * - * The audio sample rate to use for codec2 - * - * @generated from field: meshtastic.ModuleConfig.AudioConfig.Audio_Baud bitrate = 3; - */ - bitrate: ModuleConfig_AudioConfig_Audio_Baud; - - /** - * - * I2S Word Select - * - * @generated from field: uint32 i2s_ws = 4; - */ - i2sWs: number; - - /** - * - * I2S Data IN - * - * @generated from field: uint32 i2s_sd = 5; - */ - i2sSd: number; - - /** - * - * I2S Data OUT - * - * @generated from field: uint32 i2s_din = 6; - */ - i2sDin: number; - - /** - * - * I2S Clock - * - * @generated from field: uint32 i2s_sck = 7; - */ - i2sSck: number; -}; - -/** - * Describes the message meshtastic.ModuleConfig.AudioConfig. - * Use `create(ModuleConfig_AudioConfigSchema)` to create a new message. - */ -export const ModuleConfig_AudioConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 5); - -/** - * - * Baudrate for codec2 voice - * - * @generated from enum meshtastic.ModuleConfig.AudioConfig.Audio_Baud - */ -export enum ModuleConfig_AudioConfig_Audio_Baud { - /** - * @generated from enum value: CODEC2_DEFAULT = 0; - */ - CODEC2_DEFAULT = 0, - - /** - * @generated from enum value: CODEC2_3200 = 1; - */ - CODEC2_3200 = 1, - - /** - * @generated from enum value: CODEC2_2400 = 2; - */ - CODEC2_2400 = 2, - - /** - * @generated from enum value: CODEC2_1600 = 3; - */ - CODEC2_1600 = 3, - - /** - * @generated from enum value: CODEC2_1400 = 4; - */ - CODEC2_1400 = 4, - - /** - * @generated from enum value: CODEC2_1300 = 5; - */ - CODEC2_1300 = 5, - - /** - * @generated from enum value: CODEC2_1200 = 6; - */ - CODEC2_1200 = 6, - - /** - * @generated from enum value: CODEC2_700 = 7; - */ - CODEC2_700 = 7, - - /** - * @generated from enum value: CODEC2_700B = 8; - */ - CODEC2_700B = 8, -} - -/** - * Describes the enum meshtastic.ModuleConfig.AudioConfig.Audio_Baud. - */ -export const ModuleConfig_AudioConfig_Audio_BaudSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_module_config, 0, 5, 0); - -/** - * - * Config for the Paxcounter Module - * - * @generated from message meshtastic.ModuleConfig.PaxcounterConfig - */ -export type ModuleConfig_PaxcounterConfig = Message<"meshtastic.ModuleConfig.PaxcounterConfig"> & { - /** - * - * Enable the Paxcounter Module - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * @generated from field: uint32 paxcounter_update_interval = 2; - */ - paxcounterUpdateInterval: number; - - /** - * - * WiFi RSSI threshold. Defaults to -80 - * - * @generated from field: int32 wifi_threshold = 3; - */ - wifiThreshold: number; - - /** - * - * BLE RSSI threshold. Defaults to -80 - * - * @generated from field: int32 ble_threshold = 4; - */ - bleThreshold: number; -}; - -/** - * Describes the message meshtastic.ModuleConfig.PaxcounterConfig. - * Use `create(ModuleConfig_PaxcounterConfigSchema)` to create a new message. - */ -export const ModuleConfig_PaxcounterConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 6); - -/** - * - * Config for the Traffic Management module. - * Provides packet inspection and traffic shaping to help reduce channel utilization - * - * @generated from message meshtastic.ModuleConfig.TrafficManagementConfig - */ -export type ModuleConfig_TrafficManagementConfig = Message<"meshtastic.ModuleConfig.TrafficManagementConfig"> & { - /** - * - * Master enable for traffic management module - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * - * Enable position deduplication to drop redundant position broadcasts - * - * @generated from field: bool position_dedup_enabled = 2; - */ - positionDedupEnabled: boolean; - - /** - * - * Number of bits of precision for position deduplication (0-32) - * - * @generated from field: uint32 position_precision_bits = 3; - */ - positionPrecisionBits: number; - - /** - * - * Minimum interval in seconds between position updates from the same node - * - * @generated from field: uint32 position_min_interval_secs = 4; - */ - positionMinIntervalSecs: number; - - /** - * - * Enable direct response to NodeInfo requests from local cache - * - * @generated from field: bool nodeinfo_direct_response = 5; - */ - nodeinfoDirectResponse: boolean; - - /** - * - * Minimum hop distance from requestor before responding to NodeInfo requests - * - * @generated from field: uint32 nodeinfo_direct_response_max_hops = 6; - */ - nodeinfoDirectResponseMaxHops: number; - - /** - * - * Enable per-node rate limiting to throttle chatty nodes - * - * @generated from field: bool rate_limit_enabled = 7; - */ - rateLimitEnabled: boolean; - - /** - * - * Time window in seconds for rate limiting calculations - * - * @generated from field: uint32 rate_limit_window_secs = 8; - */ - rateLimitWindowSecs: number; - - /** - * - * Maximum packets allowed per node within the rate limit window - * - * @generated from field: uint32 rate_limit_max_packets = 9; - */ - rateLimitMaxPackets: number; - - /** - * - * Enable dropping of unknown/undecryptable packets per rate_limit_window_secs - * - * @generated from field: bool drop_unknown_enabled = 10; - */ - dropUnknownEnabled: boolean; - - /** - * - * Number of unknown packets before dropping from a node - * - * @generated from field: uint32 unknown_packet_threshold = 11; - */ - unknownPacketThreshold: number; - - /** - * - * Set hop_limit to 0 for relayed telemetry broadcasts (own packets unaffected) - * - * @generated from field: bool exhaust_hop_telemetry = 12; - */ - exhaustHopTelemetry: boolean; - - /** - * - * Set hop_limit to 0 for relayed position broadcasts (own packets unaffected) - * - * @generated from field: bool exhaust_hop_position = 13; - */ - exhaustHopPosition: boolean; - - /** - * - * Preserve hop_limit for router-to-router traffic - * - * @generated from field: bool router_preserve_hops = 14; - */ - routerPreserveHops: boolean; -}; - -/** - * Describes the message meshtastic.ModuleConfig.TrafficManagementConfig. - * Use `create(ModuleConfig_TrafficManagementConfigSchema)` to create a new message. - */ -export const ModuleConfig_TrafficManagementConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 7); - -/** - * - * Serial Config - * - * @generated from message meshtastic.ModuleConfig.SerialConfig - */ -export type ModuleConfig_SerialConfig = Message<"meshtastic.ModuleConfig.SerialConfig"> & { - /** - * - * Preferences for the SerialModule - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * - * TODO: REPLACE - * - * @generated from field: bool echo = 2; - */ - echo: boolean; - - /** - * - * RX pin (should match Arduino gpio pin number) - * - * @generated from field: uint32 rxd = 3; - */ - rxd: number; - - /** - * - * TX pin (should match Arduino gpio pin number) - * - * @generated from field: uint32 txd = 4; - */ - txd: number; - - /** - * - * Serial baud rate - * - * @generated from field: meshtastic.ModuleConfig.SerialConfig.Serial_Baud baud = 5; - */ - baud: ModuleConfig_SerialConfig_Serial_Baud; - - /** - * - * TODO: REPLACE - * - * @generated from field: uint32 timeout = 6; - */ - timeout: number; - - /** - * - * Mode for serial module operation - * - * @generated from field: meshtastic.ModuleConfig.SerialConfig.Serial_Mode mode = 7; - */ - mode: ModuleConfig_SerialConfig_Serial_Mode; - - /** - * - * Overrides the platform's defacto Serial port instance to use with Serial module config settings - * This is currently only usable in output modes like NMEA / CalTopo and may behave strangely or not work at all in other modes - * Existing logging over the Serial Console will still be present - * - * @generated from field: bool override_console_serial_port = 8; - */ - overrideConsoleSerialPort: boolean; -}; - -/** - * Describes the message meshtastic.ModuleConfig.SerialConfig. - * Use `create(ModuleConfig_SerialConfigSchema)` to create a new message. - */ -export const ModuleConfig_SerialConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 8); - -/** - * - * TODO: REPLACE - * - * @generated from enum meshtastic.ModuleConfig.SerialConfig.Serial_Baud - */ -export enum ModuleConfig_SerialConfig_Serial_Baud { - /** - * @generated from enum value: BAUD_DEFAULT = 0; - */ - BAUD_DEFAULT = 0, - - /** - * @generated from enum value: BAUD_110 = 1; - */ - BAUD_110 = 1, - - /** - * @generated from enum value: BAUD_300 = 2; - */ - BAUD_300 = 2, - - /** - * @generated from enum value: BAUD_600 = 3; - */ - BAUD_600 = 3, - - /** - * @generated from enum value: BAUD_1200 = 4; - */ - BAUD_1200 = 4, - - /** - * @generated from enum value: BAUD_2400 = 5; - */ - BAUD_2400 = 5, - - /** - * @generated from enum value: BAUD_4800 = 6; - */ - BAUD_4800 = 6, - - /** - * @generated from enum value: BAUD_9600 = 7; - */ - BAUD_9600 = 7, - - /** - * @generated from enum value: BAUD_19200 = 8; - */ - BAUD_19200 = 8, - - /** - * @generated from enum value: BAUD_38400 = 9; - */ - BAUD_38400 = 9, - - /** - * @generated from enum value: BAUD_57600 = 10; - */ - BAUD_57600 = 10, - - /** - * @generated from enum value: BAUD_115200 = 11; - */ - BAUD_115200 = 11, - - /** - * @generated from enum value: BAUD_230400 = 12; - */ - BAUD_230400 = 12, - - /** - * @generated from enum value: BAUD_460800 = 13; - */ - BAUD_460800 = 13, - - /** - * @generated from enum value: BAUD_576000 = 14; - */ - BAUD_576000 = 14, - - /** - * @generated from enum value: BAUD_921600 = 15; - */ - BAUD_921600 = 15, -} - -/** - * Describes the enum meshtastic.ModuleConfig.SerialConfig.Serial_Baud. - */ -export const ModuleConfig_SerialConfig_Serial_BaudSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_module_config, 0, 8, 0); - -/** - * - * TODO: REPLACE - * - * @generated from enum meshtastic.ModuleConfig.SerialConfig.Serial_Mode - */ -export enum ModuleConfig_SerialConfig_Serial_Mode { - /** - * @generated from enum value: DEFAULT = 0; - */ - DEFAULT = 0, - - /** - * @generated from enum value: SIMPLE = 1; - */ - SIMPLE = 1, - - /** - * @generated from enum value: PROTO = 2; - */ - PROTO = 2, - - /** - * @generated from enum value: TEXTMSG = 3; - */ - TEXTMSG = 3, - - /** - * @generated from enum value: NMEA = 4; - */ - NMEA = 4, - - /** - * NMEA messages specifically tailored for CalTopo - * - * @generated from enum value: CALTOPO = 5; - */ - CALTOPO = 5, - - /** - * Ecowitt WS85 weather station - * - * @generated from enum value: WS85 = 6; - */ - WS85 = 6, - - /** - * VE.Direct is a serial protocol used by Victron Energy products - * https://beta.ivc.no/wiki/index.php/Victron_VE_Direct_DIY_Cable - * - * @generated from enum value: VE_DIRECT = 7; - */ - VE_DIRECT = 7, - - /** - * Used to configure and view some parameters of MeshSolar. - * https://heltec.org/project/meshsolar/ - * - * @generated from enum value: MS_CONFIG = 8; - */ - MS_CONFIG = 8, - - /** - * Logs mesh traffic to the serial pins, ideal for logging via openLog or similar. - * - * includes other packets - * - * @generated from enum value: LOG = 9; - */ - LOG = 9, - - /** - * only text (channel & DM) - * - * @generated from enum value: LOGTEXT = 10; - */ - LOGTEXT = 10, -} - -/** - * Describes the enum meshtastic.ModuleConfig.SerialConfig.Serial_Mode. - */ -export const ModuleConfig_SerialConfig_Serial_ModeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_module_config, 0, 8, 1); - -/** - * - * External Notifications Config - * - * @generated from message meshtastic.ModuleConfig.ExternalNotificationConfig - */ -export type ModuleConfig_ExternalNotificationConfig = Message<"meshtastic.ModuleConfig.ExternalNotificationConfig"> & { - /** - * - * Enable the ExternalNotificationModule - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * - * When using in On/Off mode, keep the output on for this many - * milliseconds. Default 1000ms (1 second). - * - * @generated from field: uint32 output_ms = 2; - */ - outputMs: number; - - /** - * - * Define the output pin GPIO setting Defaults to - * EXT_NOTIFY_OUT if set for the board. - * In standalone devices this pin should drive the LED to match the UI. - * - * @generated from field: uint32 output = 3; - */ - output: number; - - /** - * - * Optional: Define a secondary output pin for a vibra motor - * This is used in standalone devices to match the UI. - * - * @generated from field: uint32 output_vibra = 8; - */ - outputVibra: number; - - /** - * - * Optional: Define a tertiary output pin for an active buzzer - * This is used in standalone devices to to match the UI. - * - * @generated from field: uint32 output_buzzer = 9; - */ - outputBuzzer: number; - - /** - * - * IF this is true, the 'output' Pin will be pulled active high, false - * means active low. - * - * @generated from field: bool active = 4; - */ - active: boolean; - - /** - * - * True: Alert when a text message arrives (output) - * - * @generated from field: bool alert_message = 5; - */ - alertMessage: boolean; - - /** - * - * True: Alert when a text message arrives (output_vibra) - * - * @generated from field: bool alert_message_vibra = 10; - */ - alertMessageVibra: boolean; - - /** - * - * True: Alert when a text message arrives (output_buzzer) - * - * @generated from field: bool alert_message_buzzer = 11; - */ - alertMessageBuzzer: boolean; - - /** - * - * True: Alert when the bell character is received (output) - * - * @generated from field: bool alert_bell = 6; - */ - alertBell: boolean; - - /** - * - * True: Alert when the bell character is received (output_vibra) - * - * @generated from field: bool alert_bell_vibra = 12; - */ - alertBellVibra: boolean; - - /** - * - * True: Alert when the bell character is received (output_buzzer) - * - * @generated from field: bool alert_bell_buzzer = 13; - */ - alertBellBuzzer: boolean; - - /** - * - * use a PWM output instead of a simple on/off output. This will ignore - * the 'output', 'output_ms' and 'active' settings and use the - * device.buzzer_gpio instead. - * - * @generated from field: bool use_pwm = 7; - */ - usePwm: boolean; - - /** - * - * The notification will toggle with 'output_ms' for this time of seconds. - * Default is 0 which means don't repeat at all. 60 would mean blink - * and/or beep for 60 seconds - * - * @generated from field: uint32 nag_timeout = 14; - */ - nagTimeout: number; - - /** - * - * When true, enables devices with native I2S audio output to use the RTTTL over speaker like a buzzer - * T-Watch S3 and T-Deck for example have this capability - * - * @generated from field: bool use_i2s_as_buzzer = 15; - */ - useI2sAsBuzzer: boolean; -}; - -/** - * Describes the message meshtastic.ModuleConfig.ExternalNotificationConfig. - * Use `create(ModuleConfig_ExternalNotificationConfigSchema)` to create a new message. - */ -export const ModuleConfig_ExternalNotificationConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 9); - -/** - * - * Store and Forward Module Config - * - * @generated from message meshtastic.ModuleConfig.StoreForwardConfig - */ -export type ModuleConfig_StoreForwardConfig = Message<"meshtastic.ModuleConfig.StoreForwardConfig"> & { - /** - * - * Enable the Store and Forward Module - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * - * TODO: REPLACE - * - * @generated from field: bool heartbeat = 2; - */ - heartbeat: boolean; - - /** - * - * TODO: REPLACE - * - * @generated from field: uint32 records = 3; - */ - records: number; - - /** - * - * TODO: REPLACE - * - * @generated from field: uint32 history_return_max = 4; - */ - historyReturnMax: number; - - /** - * - * TODO: REPLACE - * - * @generated from field: uint32 history_return_window = 5; - */ - historyReturnWindow: number; - - /** - * - * Set to true to let this node act as a server that stores received messages and resends them upon request. - * - * @generated from field: bool is_server = 6; - */ - isServer: boolean; -}; - -/** - * Describes the message meshtastic.ModuleConfig.StoreForwardConfig. - * Use `create(ModuleConfig_StoreForwardConfigSchema)` to create a new message. - */ -export const ModuleConfig_StoreForwardConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 10); - -/** - * - * Preferences for the RangeTestModule - * - * @generated from message meshtastic.ModuleConfig.RangeTestConfig - */ -export type ModuleConfig_RangeTestConfig = Message<"meshtastic.ModuleConfig.RangeTestConfig"> & { - /** - * - * Enable the Range Test Module - * - * @generated from field: bool enabled = 1; - */ - enabled: boolean; - - /** - * - * Send out range test messages from this node - * - * @generated from field: uint32 sender = 2; - */ - sender: number; - - /** - * - * Bool value indicating that this node should save a RangeTest.csv file. - * ESP32 Only - * - * @generated from field: bool save = 3; - */ - save: boolean; - - /** - * - * Bool indicating that the node should cleanup / destroy it's RangeTest.csv file. - * ESP32 Only - * - * @generated from field: bool clear_on_reboot = 4; - */ - clearOnReboot: boolean; -}; - -/** - * Describes the message meshtastic.ModuleConfig.RangeTestConfig. - * Use `create(ModuleConfig_RangeTestConfigSchema)` to create a new message. - */ -export const ModuleConfig_RangeTestConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 11); - -/** - * - * Configuration for both device and environment metrics - * - * @generated from message meshtastic.ModuleConfig.TelemetryConfig - */ -export type ModuleConfig_TelemetryConfig = Message<"meshtastic.ModuleConfig.TelemetryConfig"> & { - /** - * - * Interval in seconds of how often we should try to send our - * device metrics to the mesh - * - * @generated from field: uint32 device_update_interval = 1; - */ - deviceUpdateInterval: number; - - /** - * @generated from field: uint32 environment_update_interval = 2; - */ - environmentUpdateInterval: number; - - /** - * - * Preferences for the Telemetry Module (Environment) - * Enable/Disable the telemetry measurement module measurement collection - * - * @generated from field: bool environment_measurement_enabled = 3; - */ - environmentMeasurementEnabled: boolean; - - /** - * - * Enable/Disable the telemetry measurement module on-device display - * - * @generated from field: bool environment_screen_enabled = 4; - */ - environmentScreenEnabled: boolean; - - /** - * - * We'll always read the sensor in Celsius, but sometimes we might want to - * display the results in Fahrenheit as a "user preference". - * - * @generated from field: bool environment_display_fahrenheit = 5; - */ - environmentDisplayFahrenheit: boolean; - - /** - * - * Enable/Disable the air quality metrics - * - * @generated from field: bool air_quality_enabled = 6; - */ - airQualityEnabled: boolean; - - /** - * - * Interval in seconds of how often we should try to send our - * air quality metrics to the mesh - * - * @generated from field: uint32 air_quality_interval = 7; - */ - airQualityInterval: number; - - /** - * - * Enable/disable Power metrics - * - * @generated from field: bool power_measurement_enabled = 8; - */ - powerMeasurementEnabled: boolean; - - /** - * - * Interval in seconds of how often we should try to send our - * power metrics to the mesh - * - * @generated from field: uint32 power_update_interval = 9; - */ - powerUpdateInterval: number; - - /** - * - * Enable/Disable the power measurement module on-device display - * - * @generated from field: bool power_screen_enabled = 10; - */ - powerScreenEnabled: boolean; - - /** - * - * Preferences for the (Health) Telemetry Module - * Enable/Disable the telemetry measurement module measurement collection - * - * @generated from field: bool health_measurement_enabled = 11; - */ - healthMeasurementEnabled: boolean; - - /** - * - * Interval in seconds of how often we should try to send our - * health metrics to the mesh - * - * @generated from field: uint32 health_update_interval = 12; - */ - healthUpdateInterval: number; - - /** - * - * Enable/Disable the health telemetry module on-device display - * - * @generated from field: bool health_screen_enabled = 13; - */ - healthScreenEnabled: boolean; - - /** - * - * Enable/Disable the device telemetry module to send metrics to the mesh - * Note: We will still send telemtry to the connected phone / client every minute over the API - * - * @generated from field: bool device_telemetry_enabled = 14; - */ - deviceTelemetryEnabled: boolean; - - /** - * - * Enable/Disable the air quality telemetry measurement module on-device display - * - * @generated from field: bool air_quality_screen_enabled = 15; - */ - airQualityScreenEnabled: boolean; -}; - -/** - * Describes the message meshtastic.ModuleConfig.TelemetryConfig. - * Use `create(ModuleConfig_TelemetryConfigSchema)` to create a new message. - */ -export const ModuleConfig_TelemetryConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 12); - -/** - * - * Canned Messages Module Config - * - * @generated from message meshtastic.ModuleConfig.CannedMessageConfig - */ -export type ModuleConfig_CannedMessageConfig = Message<"meshtastic.ModuleConfig.CannedMessageConfig"> & { - /** - * - * Enable the rotary encoder #1. This is a 'dumb' encoder sending pulses on both A and B pins while rotating. - * - * @generated from field: bool rotary1_enabled = 1; - */ - rotary1Enabled: boolean; - - /** - * - * GPIO pin for rotary encoder A port. - * - * @generated from field: uint32 inputbroker_pin_a = 2; - */ - inputbrokerPinA: number; - - /** - * - * GPIO pin for rotary encoder B port. - * - * @generated from field: uint32 inputbroker_pin_b = 3; - */ - inputbrokerPinB: number; - - /** - * - * GPIO pin for rotary encoder Press port. - * - * @generated from field: uint32 inputbroker_pin_press = 4; - */ - inputbrokerPinPress: number; - - /** - * - * Generate input event on CW of this kind. - * - * @generated from field: meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar inputbroker_event_cw = 5; - */ - inputbrokerEventCw: ModuleConfig_CannedMessageConfig_InputEventChar; - - /** - * - * Generate input event on CCW of this kind. - * - * @generated from field: meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar inputbroker_event_ccw = 6; - */ - inputbrokerEventCcw: ModuleConfig_CannedMessageConfig_InputEventChar; - - /** - * - * Generate input event on Press of this kind. - * - * @generated from field: meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar inputbroker_event_press = 7; - */ - inputbrokerEventPress: ModuleConfig_CannedMessageConfig_InputEventChar; - - /** - * - * Enable the Up/Down/Select input device. Can be RAK rotary encoder or 3 buttons. Uses the a/b/press definitions from inputbroker. - * - * @generated from field: bool updown1_enabled = 8; - */ - updown1Enabled: boolean; - - /** - * - * Enable/disable CannedMessageModule. - * - * @generated from field: bool enabled = 9 [deprecated = true]; - * @deprecated - */ - enabled: boolean; - - /** - * - * Input event origin accepted by the canned message module. - * Can be e.g. "rotEnc1", "upDownEnc1", "scanAndSelect", "cardkb", "serialkb", or keyword "_any" - * - * @generated from field: string allow_input_source = 10 [deprecated = true]; - * @deprecated - */ - allowInputSource: string; - - /** - * - * CannedMessageModule also sends a bell character with the messages. - * ExternalNotificationModule can benefit from this feature. - * - * @generated from field: bool send_bell = 11; - */ - sendBell: boolean; -}; - -/** - * Describes the message meshtastic.ModuleConfig.CannedMessageConfig. - * Use `create(ModuleConfig_CannedMessageConfigSchema)` to create a new message. - */ -export const ModuleConfig_CannedMessageConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 13); - -/** - * - * TODO: REPLACE - * - * @generated from enum meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar - */ -export enum ModuleConfig_CannedMessageConfig_InputEventChar { - /** - * - * TODO: REPLACE - * - * @generated from enum value: NONE = 0; - */ - NONE = 0, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: UP = 17; - */ - UP = 17, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: DOWN = 18; - */ - DOWN = 18, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: LEFT = 19; - */ - LEFT = 19, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: RIGHT = 20; - */ - RIGHT = 20, - - /** - * - * '\n' - * - * @generated from enum value: SELECT = 10; - */ - SELECT = 10, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: BACK = 27; - */ - BACK = 27, - - /** - * - * TODO: REPLACE - * - * @generated from enum value: CANCEL = 24; - */ - CANCEL = 24, -} - -/** - * Describes the enum meshtastic.ModuleConfig.CannedMessageConfig.InputEventChar. - */ -export const ModuleConfig_CannedMessageConfig_InputEventCharSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_module_config, 0, 13, 0); - -/** - * - * Ambient Lighting Module - Settings for control of onboard LEDs to allow users to adjust the brightness levels and respective color levels. - * Initially created for the RAK14001 RGB LED module. - * - * @generated from message meshtastic.ModuleConfig.AmbientLightingConfig - */ -export type ModuleConfig_AmbientLightingConfig = Message<"meshtastic.ModuleConfig.AmbientLightingConfig"> & { - /** - * - * Sets LED to on or off. - * - * @generated from field: bool led_state = 1; - */ - ledState: boolean; - - /** - * - * Sets the current for the LED output. Default is 10. - * - * @generated from field: uint32 current = 2; - */ - current: number; - - /** - * - * Sets the red LED level. Values are 0-255. - * - * @generated from field: uint32 red = 3; - */ - red: number; - - /** - * - * Sets the green LED level. Values are 0-255. - * - * @generated from field: uint32 green = 4; - */ - green: number; - - /** - * - * Sets the blue LED level. Values are 0-255. - * - * @generated from field: uint32 blue = 5; - */ - blue: number; -}; - -/** - * Describes the message meshtastic.ModuleConfig.AmbientLightingConfig. - * Use `create(ModuleConfig_AmbientLightingConfigSchema)` to create a new message. - */ -export const ModuleConfig_AmbientLightingConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 14); - -/** - * - * StatusMessage config - Allows setting a status message for a node to periodically rebroadcast - * - * @generated from message meshtastic.ModuleConfig.StatusMessageConfig - */ -export type ModuleConfig_StatusMessageConfig = Message<"meshtastic.ModuleConfig.StatusMessageConfig"> & { - /** - * - * The actual status string - * - * @generated from field: string node_status = 1; - */ - nodeStatus: string; -}; - -/** - * Describes the message meshtastic.ModuleConfig.StatusMessageConfig. - * Use `create(ModuleConfig_StatusMessageConfigSchema)` to create a new message. - */ -export const ModuleConfig_StatusMessageConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 15); - -/** - * - * TAK team/role configuration - * - * @generated from message meshtastic.ModuleConfig.TAKConfig - */ -export type ModuleConfig_TAKConfig = Message<"meshtastic.ModuleConfig.TAKConfig"> & { - /** - * - * Team color. - * Default Unspecifed_Color -> firmware uses Cyan - * - * @generated from field: meshtastic.Team team = 1; - */ - team: Team; - - /** - * - * Member role. - * Default Unspecifed -> firmware uses TeamMember - * - * @generated from field: meshtastic.MemberRole role = 2; - */ - role: MemberRole; -}; - -/** - * Describes the message meshtastic.ModuleConfig.TAKConfig. - * Use `create(ModuleConfig_TAKConfigSchema)` to create a new message. - */ -export const ModuleConfig_TAKConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 0, 16); - -/** - * - * A GPIO pin definition for remote hardware module - * - * @generated from message meshtastic.RemoteHardwarePin - */ -export type RemoteHardwarePin = Message<"meshtastic.RemoteHardwarePin"> & { - /** - * - * GPIO Pin number (must match Arduino) - * - * @generated from field: uint32 gpio_pin = 1; - */ - gpioPin: number; - - /** - * - * Name for the GPIO pin (i.e. Front gate, mailbox, etc) - * - * @generated from field: string name = 2; - */ - name: string; - - /** - * - * Type of GPIO access available to consumers on the mesh - * - * @generated from field: meshtastic.RemoteHardwarePinType type = 3; - */ - type: RemoteHardwarePinType; -}; - -/** - * Describes the message meshtastic.RemoteHardwarePin. - * Use `create(RemoteHardwarePinSchema)` to create a new message. - */ -export const RemoteHardwarePinSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_module_config, 1); - -/** - * @generated from enum meshtastic.RemoteHardwarePinType - */ -export enum RemoteHardwarePinType { - /** - * - * Unset/unused - * - * @generated from enum value: UNKNOWN = 0; - */ - UNKNOWN = 0, - - /** - * - * GPIO pin can be read (if it is high / low) - * - * @generated from enum value: DIGITAL_READ = 1; - */ - DIGITAL_READ = 1, - - /** - * - * GPIO pin can be written to (high / low) - * - * @generated from enum value: DIGITAL_WRITE = 2; - */ - DIGITAL_WRITE = 2, -} - -/** - * Describes the enum meshtastic.RemoteHardwarePinType. - */ -export const RemoteHardwarePinTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_module_config, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/mqtt_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/mqtt_pb.ts deleted file mode 100644 index 36170b687..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/mqtt_pb.ts +++ /dev/null @@ -1,189 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/mqtt.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; -import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; -import type { Config_DeviceConfig_Role, Config_LoRaConfig_ModemPreset, Config_LoRaConfig_RegionCode } from "./config_pb"; -import { file_meshtastic_config } from "./config_pb"; -import type { HardwareModel, MeshPacket } from "./mesh_pb"; -import { file_meshtastic_mesh } from "./mesh_pb"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/mqtt.proto. - */ -export const file_meshtastic_mqtt: GenFile = /*@__PURE__*/ - fileDesc("ChVtZXNodGFzdGljL21xdHQucHJvdG8SCm1lc2h0YXN0aWMiYQoPU2VydmljZUVudmVsb3BlEiYKBnBhY2tldBgBIAEoCzIWLm1lc2h0YXN0aWMuTWVzaFBhY2tldBISCgpjaGFubmVsX2lkGAIgASgJEhIKCmdhdGV3YXlfaWQYAyABKAki3wMKCU1hcFJlcG9ydBIRCglsb25nX25hbWUYASABKAkSEgoKc2hvcnRfbmFtZRgCIAEoCRIyCgRyb2xlGAMgASgOMiQubWVzaHRhc3RpYy5Db25maWcuRGV2aWNlQ29uZmlnLlJvbGUSKwoIaHdfbW9kZWwYBCABKA4yGS5tZXNodGFzdGljLkhhcmR3YXJlTW9kZWwSGAoQZmlybXdhcmVfdmVyc2lvbhgFIAEoCRI4CgZyZWdpb24YBiABKA4yKC5tZXNodGFzdGljLkNvbmZpZy5Mb1JhQ29uZmlnLlJlZ2lvbkNvZGUSPwoMbW9kZW1fcHJlc2V0GAcgASgOMikubWVzaHRhc3RpYy5Db25maWcuTG9SYUNvbmZpZy5Nb2RlbVByZXNldBIbChNoYXNfZGVmYXVsdF9jaGFubmVsGAggASgIEhIKCmxhdGl0dWRlX2kYCSABKA8SEwoLbG9uZ2l0dWRlX2kYCiABKA8SEAoIYWx0aXR1ZGUYCyABKAUSGgoScG9zaXRpb25fcHJlY2lzaW9uGAwgASgNEh4KFm51bV9vbmxpbmVfbG9jYWxfbm9kZXMYDSABKA0SIQoZaGFzX29wdGVkX3JlcG9ydF9sb2NhdGlvbhgOIAEoCEJgChRvcmcubWVzaHRhc3RpYy5wcm90b0IKTVFUVFByb3Rvc1oiZ2l0aHViLmNvbS9tZXNodGFzdGljL2dvL2dlbmVyYXRlZKoCFE1lc2h0YXN0aWMuUHJvdG9idWZzugIAYgZwcm90bzM", [file_meshtastic_config, file_meshtastic_mesh]); - -/** - * - * This message wraps a MeshPacket with extra metadata about the sender and how it arrived. - * - * @generated from message meshtastic.ServiceEnvelope - */ -export type ServiceEnvelope = Message<"meshtastic.ServiceEnvelope"> & { - /** - * - * The (probably encrypted) packet - * - * @generated from field: meshtastic.MeshPacket packet = 1; - */ - packet?: MeshPacket | undefined; - - /** - * - * The global channel ID it was sent on - * - * @generated from field: string channel_id = 2; - */ - channelId: string; - - /** - * - * The sending gateway node ID. Can we use this to authenticate/prevent fake - * nodeid impersonation for senders? - i.e. use gateway/mesh id (which is authenticated) + local node id as - * the globally trusted nodenum - * - * @generated from field: string gateway_id = 3; - */ - gatewayId: string; -}; - -/** - * Describes the message meshtastic.ServiceEnvelope. - * Use `create(ServiceEnvelopeSchema)` to create a new message. - */ -export const ServiceEnvelopeSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mqtt, 0); - -/** - * - * Information about a node intended to be reported unencrypted to a map using MQTT. - * - * @generated from message meshtastic.MapReport - */ -export type MapReport = Message<"meshtastic.MapReport"> & { - /** - * - * A full name for this user, i.e. "Kevin Hester" - * - * @generated from field: string long_name = 1; - */ - longName: string; - - /** - * - * A VERY short name, ideally two characters. - * Suitable for a tiny OLED screen - * - * @generated from field: string short_name = 2; - */ - shortName: string; - - /** - * - * Role of the node that applies specific settings for a particular use-case - * - * @generated from field: meshtastic.Config.DeviceConfig.Role role = 3; - */ - role: Config_DeviceConfig_Role; - - /** - * - * Hardware model of the node, i.e. T-Beam, Heltec V3, etc... - * - * @generated from field: meshtastic.HardwareModel hw_model = 4; - */ - hwModel: HardwareModel; - - /** - * - * Device firmware version string - * - * @generated from field: string firmware_version = 5; - */ - firmwareVersion: string; - - /** - * - * The region code for the radio (US, CN, EU433, etc...) - * - * @generated from field: meshtastic.Config.LoRaConfig.RegionCode region = 6; - */ - region: Config_LoRaConfig_RegionCode; - - /** - * - * Modem preset used by the radio (LongFast, MediumSlow, etc...) - * - * @generated from field: meshtastic.Config.LoRaConfig.ModemPreset modem_preset = 7; - */ - modemPreset: Config_LoRaConfig_ModemPreset; - - /** - * - * Whether the node has a channel with default PSK and name (LongFast, MediumSlow, etc...) - * and it uses the default frequency slot given the region and modem preset. - * - * @generated from field: bool has_default_channel = 8; - */ - hasDefaultChannel: boolean; - - /** - * - * Latitude: multiply by 1e-7 to get degrees in floating point - * - * @generated from field: sfixed32 latitude_i = 9; - */ - latitudeI: number; - - /** - * - * Longitude: multiply by 1e-7 to get degrees in floating point - * - * @generated from field: sfixed32 longitude_i = 10; - */ - longitudeI: number; - - /** - * - * Altitude in meters above MSL - * - * @generated from field: int32 altitude = 11; - */ - altitude: number; - - /** - * - * Indicates the bits of precision for latitude and longitude set by the sending node - * - * @generated from field: uint32 position_precision = 12; - */ - positionPrecision: number; - - /** - * - * Number of online nodes (heard in the last 2 hours) this node has in its list that were received locally (not via MQTT) - * - * @generated from field: uint32 num_online_local_nodes = 13; - */ - numOnlineLocalNodes: number; - - /** - * - * User has opted in to share their location (map report) with the mqtt server - * Controlled by map_report.should_report_location - * - * @generated from field: bool has_opted_report_location = 14; - */ - hasOptedReportLocation: boolean; -}; - -/** - * Describes the message meshtastic.MapReport. - * Use `create(MapReportSchema)` to create a new message. - */ -export const MapReportSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_mqtt, 1); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/paxcount_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/paxcount_pb.ts deleted file mode 100644 index f0ecbade7..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/paxcount_pb.ts +++ /dev/null @@ -1,53 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/paxcount.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; -import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/paxcount.proto. - */ -export const file_meshtastic_paxcount: GenFile = /*@__PURE__*/ - fileDesc("ChltZXNodGFzdGljL3BheGNvdW50LnByb3RvEgptZXNodGFzdGljIjUKCFBheGNvdW50EgwKBHdpZmkYASABKA0SCwoDYmxlGAIgASgNEg4KBnVwdGltZRgDIAEoDUJkChRvcmcubWVzaHRhc3RpYy5wcm90b0IOUGF4Y291bnRQcm90b3NaImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAGIGcHJvdG8z"); - -/** - * - * TODO: REPLACE - * - * @generated from message meshtastic.Paxcount - */ -export type Paxcount = Message<"meshtastic.Paxcount"> & { - /** - * - * seen Wifi devices - * - * @generated from field: uint32 wifi = 1; - */ - wifi: number; - - /** - * - * Seen BLE devices - * - * @generated from field: uint32 ble = 2; - */ - ble: number; - - /** - * - * Uptime in seconds - * - * @generated from field: uint32 uptime = 3; - */ - uptime: number; -}; - -/** - * Describes the message meshtastic.Paxcount. - * Use `create(PaxcountSchema)` to create a new message. - */ -export const PaxcountSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_paxcount, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/portnums_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/portnums_pb.ts deleted file mode 100644 index b3be2ba74..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/portnums_pb.ts +++ /dev/null @@ -1,412 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/portnums.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -import type { GenEnum, GenFile } from "@bufbuild/protobuf/codegenv2"; -import { enumDesc, fileDesc } from "@bufbuild/protobuf/codegenv2"; - -/** - * Describes the file meshtastic/portnums.proto. - */ -export const file_meshtastic_portnums: GenFile = /*@__PURE__*/ - fileDesc("ChltZXNodGFzdGljL3BvcnRudW1zLnByb3RvEgptZXNodGFzdGljKv0FCgdQb3J0TnVtEg8KC1VOS05PV05fQVBQEAASFAoQVEVYVF9NRVNTQUdFX0FQUBABEhcKE1JFTU9URV9IQVJEV0FSRV9BUFAQAhIQCgxQT1NJVElPTl9BUFAQAxIQCgxOT0RFSU5GT19BUFAQBBIPCgtST1VUSU5HX0FQUBAFEg0KCUFETUlOX0FQUBAGEh8KG1RFWFRfTUVTU0FHRV9DT01QUkVTU0VEX0FQUBAHEhAKDFdBWVBPSU5UX0FQUBAIEg0KCUFVRElPX0FQUBAJEhgKFERFVEVDVElPTl9TRU5TT1JfQVBQEAoSDQoJQUxFUlRfQVBQEAsSGAoUS0VZX1ZFUklGSUNBVElPTl9BUFAQDBIUChBSRU1PVEVfU0hFTExfQVBQEA0SDQoJUkVQTFlfQVBQECASEQoNSVBfVFVOTkVMX0FQUBAhEhIKDlBBWENPVU5URVJfQVBQECISHgoaU1RPUkVfRk9SV0FSRF9QTFVTUExVU19BUFAQIxITCg9OT0RFX1NUQVRVU19BUFAQJBIOCgpTRVJJQUxfQVBQEEASFQoRU1RPUkVfRk9SV0FSRF9BUFAQQRISCg5SQU5HRV9URVNUX0FQUBBCEhEKDVRFTEVNRVRSWV9BUFAQQxILCgdaUFNfQVBQEEQSEQoNU0lNVUxBVE9SX0FQUBBFEhIKDlRSQUNFUk9VVEVfQVBQEEYSFAoQTkVJR0hCT1JJTkZPX0FQUBBHEg8KC0FUQUtfUExVR0lOEEgSEgoOTUFQX1JFUE9SVF9BUFAQSRITCg9QT1dFUlNUUkVTU19BUFAQShISCg5MT1JBV0FOX0JSSURHRRBLEhgKFFJFVElDVUxVTV9UVU5ORUxfQVBQEEwSDwoLQ0FZRU5ORV9BUFAQTRISCg5BVEFLX1BMVUdJTl9WMhBOEhIKDkdST1VQQUxBUk1fQVBQEHASEAoLUFJJVkFURV9BUFAQgAISEwoOQVRBS19GT1JXQVJERVIQgQISCAoDTUFYEP8DQl4KFG9yZy5tZXNodGFzdGljLnByb3RvQghQb3J0bnVtc1oiZ2l0aHViLmNvbS9tZXNodGFzdGljL2dvL2dlbmVyYXRlZKoCFE1lc2h0YXN0aWMuUHJvdG9idWZzugIAYgZwcm90bzM"); - -/** - * - * For any new 'apps' that run on the device or via sister apps on phones/PCs they should pick and use a - * unique 'portnum' for their application. - * If you are making a new app using meshtastic, please send in a pull request to add your 'portnum' to this - * master table. - * PortNums should be assigned in the following range: - * 0-63 Core Meshtastic use, do not use for third party apps - * 64-127 Registered 3rd party apps, send in a pull request that adds a new entry to portnums.proto to register your application - * 256-511 Use one of these portnums for your private applications that you don't want to register publically - * All other values are reserved. - * Note: This was formerly a Type enum named 'typ' with the same id # - * We have change to this 'portnum' based scheme for specifying app handlers for particular payloads. - * This change is backwards compatible by treating the legacy OPAQUE/CLEAR_TEXT values identically. - * - * @generated from enum meshtastic.PortNum - */ -export enum PortNum { - /** - * - * Deprecated: do not use in new code (formerly called OPAQUE) - * A message sent from a device outside of the mesh, in a form the mesh does not understand - * NOTE: This must be 0, because it is documented in IMeshService.aidl to be so - * ENCODING: binary undefined - * - * @generated from enum value: UNKNOWN_APP = 0; - */ - UNKNOWN_APP = 0, - - /** - * - * A simple UTF-8 text message, which even the little micros in the mesh - * can understand and show on their screen eventually in some circumstances - * even signal might send messages in this form (see below) - * ENCODING: UTF-8 Plaintext (?) - * - * @generated from enum value: TEXT_MESSAGE_APP = 1; - */ - TEXT_MESSAGE_APP = 1, - - /** - * - * Reserved for built-in GPIO/example app. - * See remote_hardware.proto/HardwareMessage for details on the message sent/received to this port number - * ENCODING: Protobuf - * - * @generated from enum value: REMOTE_HARDWARE_APP = 2; - */ - REMOTE_HARDWARE_APP = 2, - - /** - * - * The built-in position messaging app. - * Payload is a Position message. - * ENCODING: Protobuf - * - * @generated from enum value: POSITION_APP = 3; - */ - POSITION_APP = 3, - - /** - * - * The built-in user info app. - * Payload is a User message. - * ENCODING: Protobuf - * - * @generated from enum value: NODEINFO_APP = 4; - */ - NODEINFO_APP = 4, - - /** - * - * Protocol control packets for mesh protocol use. - * Payload is a Routing message. - * ENCODING: Protobuf - * - * @generated from enum value: ROUTING_APP = 5; - */ - ROUTING_APP = 5, - - /** - * - * Admin control packets. - * Payload is a AdminMessage message. - * ENCODING: Protobuf - * - * @generated from enum value: ADMIN_APP = 6; - */ - ADMIN_APP = 6, - - /** - * - * Compressed TEXT_MESSAGE payloads. - * ENCODING: UTF-8 Plaintext (?) with Unishox2 Compression - * NOTE: The Device Firmware converts a TEXT_MESSAGE_APP to TEXT_MESSAGE_COMPRESSED_APP if the compressed - * payload is shorter. There's no need for app developers to do this themselves. Also the firmware will decompress - * any incoming TEXT_MESSAGE_COMPRESSED_APP payload and convert to TEXT_MESSAGE_APP. - * - * @generated from enum value: TEXT_MESSAGE_COMPRESSED_APP = 7; - */ - TEXT_MESSAGE_COMPRESSED_APP = 7, - - /** - * - * Waypoint payloads. - * Payload is a Waypoint message. - * ENCODING: Protobuf - * - * @generated from enum value: WAYPOINT_APP = 8; - */ - WAYPOINT_APP = 8, - - /** - * - * Audio Payloads. - * Encapsulated codec2 packets. On 2.4 GHZ Bandwidths only for now - * ENCODING: codec2 audio frames - * NOTE: audio frames contain a 3 byte header (0xc0 0xde 0xc2) and a one byte marker for the decompressed bitrate. - * This marker comes from the 'moduleConfig.audio.bitrate' enum minus one. - * - * @generated from enum value: AUDIO_APP = 9; - */ - AUDIO_APP = 9, - - /** - * - * Same as Text Message but originating from Detection Sensor Module. - * NOTE: This portnum traffic is not sent to the public MQTT starting at firmware version 2.2.9 - * - * @generated from enum value: DETECTION_SENSOR_APP = 10; - */ - DETECTION_SENSOR_APP = 10, - - /** - * - * Same as Text Message but used for critical alerts. - * - * @generated from enum value: ALERT_APP = 11; - */ - ALERT_APP = 11, - - /** - * - * Module/port for handling key verification requests. - * - * @generated from enum value: KEY_VERIFICATION_APP = 12; - */ - KEY_VERIFICATION_APP = 12, - - /** - * - * Module/port for handling primitive remote shell access. - * - * @generated from enum value: REMOTE_SHELL_APP = 13; - */ - REMOTE_SHELL_APP = 13, - - /** - * - * Provides a 'ping' service that replies to any packet it receives. - * Also serves as a small example module. - * ENCODING: ASCII Plaintext - * - * @generated from enum value: REPLY_APP = 32; - */ - REPLY_APP = 32, - - /** - * - * Used for the python IP tunnel feature - * ENCODING: IP Packet. Handled by the python API, firmware ignores this one and pases on. - * - * @generated from enum value: IP_TUNNEL_APP = 33; - */ - IP_TUNNEL_APP = 33, - - /** - * - * Paxcounter lib included in the firmware - * ENCODING: protobuf - * - * @generated from enum value: PAXCOUNTER_APP = 34; - */ - PAXCOUNTER_APP = 34, - - /** - * - * Store and Forward++ module included in the firmware - * ENCODING: protobuf - * This module is specifically for Native Linux nodes, and provides a Git-style - * chain of messages. - * - * @generated from enum value: STORE_FORWARD_PLUSPLUS_APP = 35; - */ - STORE_FORWARD_PLUSPLUS_APP = 35, - - /** - * - * Node Status module - * ENCODING: protobuf - * This module allows setting an extra string of status for a node. - * Broadcasts on change and on a timer, possibly once a day. - * - * @generated from enum value: NODE_STATUS_APP = 36; - */ - NODE_STATUS_APP = 36, - - /** - * - * Provides a hardware serial interface to send and receive from the Meshtastic network. - * Connect to the RX/TX pins of a device with 38400 8N1. Packets received from the Meshtastic - * network is forwarded to the RX pin while sending a packet to TX will go out to the Mesh network. - * Maximum packet size of 240 bytes. - * Module is disabled by default can be turned on by setting SERIAL_MODULE_ENABLED = 1 in SerialPlugh.cpp. - * ENCODING: binary undefined - * - * @generated from enum value: SERIAL_APP = 64; - */ - SERIAL_APP = 64, - - /** - * - * STORE_FORWARD_APP (Work in Progress) - * Maintained by Jm Casler (MC Hamster) : jm@casler.org - * ENCODING: Protobuf - * - * @generated from enum value: STORE_FORWARD_APP = 65; - */ - STORE_FORWARD_APP = 65, - - /** - * - * Optional port for messages for the range test module. - * ENCODING: ASCII Plaintext - * NOTE: This portnum traffic is not sent to the public MQTT starting at firmware version 2.2.9 - * - * @generated from enum value: RANGE_TEST_APP = 66; - */ - RANGE_TEST_APP = 66, - - /** - * - * Provides a format to send and receive telemetry data from the Meshtastic network. - * Maintained by Charles Crossan (crossan007) : crossan007@gmail.com - * ENCODING: Protobuf - * - * @generated from enum value: TELEMETRY_APP = 67; - */ - TELEMETRY_APP = 67, - - /** - * - * Experimental tools for estimating node position without a GPS - * Maintained by Github user a-f-G-U-C (a Meshtastic contributor) - * Project files at https://github.com/a-f-G-U-C/Meshtastic-ZPS - * ENCODING: arrays of int64 fields - * - * @generated from enum value: ZPS_APP = 68; - */ - ZPS_APP = 68, - - /** - * - * Used to let multiple instances of Linux native applications communicate - * as if they did using their LoRa chip. - * Maintained by GitHub user GUVWAF. - * Project files at https://github.com/GUVWAF/Meshtasticator - * ENCODING: Protobuf (?) - * - * @generated from enum value: SIMULATOR_APP = 69; - */ - SIMULATOR_APP = 69, - - /** - * - * Provides a traceroute functionality to show the route a packet towards - * a certain destination would take on the mesh. Contains a RouteDiscovery message as payload. - * ENCODING: Protobuf - * - * @generated from enum value: TRACEROUTE_APP = 70; - */ - TRACEROUTE_APP = 70, - - /** - * - * Aggregates edge info for the network by sending out a list of each node's neighbors - * ENCODING: Protobuf - * - * @generated from enum value: NEIGHBORINFO_APP = 71; - */ - NEIGHBORINFO_APP = 71, - - /** - * - * ATAK Plugin - * Portnum for payloads from the official Meshtastic ATAK plugin - * - * @generated from enum value: ATAK_PLUGIN = 72; - */ - ATAK_PLUGIN = 72, - - /** - * - * Provides unencrypted information about a node for consumption by a map via MQTT - * - * @generated from enum value: MAP_REPORT_APP = 73; - */ - MAP_REPORT_APP = 73, - - /** - * - * PowerStress based monitoring support (for automated power consumption testing) - * - * @generated from enum value: POWERSTRESS_APP = 74; - */ - POWERSTRESS_APP = 74, - - /** - * - * LoraWAN Payload Transport - * ENCODING: compact binary LoRaWAN uplink (10-byte RF metadata + PHY payload) - see LoRaWANBridgeModule - * - * @generated from enum value: LORAWAN_BRIDGE = 75; - */ - LORAWAN_BRIDGE = 75, - - /** - * - * Reticulum Network Stack Tunnel App - * ENCODING: Fragmented RNS Packet. Handled by Meshtastic RNS interface - * - * @generated from enum value: RETICULUM_TUNNEL_APP = 76; - */ - RETICULUM_TUNNEL_APP = 76, - - /** - * - * App for transporting Cayenne Low Power Payload, popular for LoRaWAN sensor nodes. Offers ability to send - * arbitrary telemetry over meshtastic that is not covered by telemetry.proto - * ENCODING: CayenneLLP - * - * @generated from enum value: CAYENNE_APP = 77; - */ - CAYENNE_APP = 77, - - /** - * - * ATAK Plugin V2 - * Portnum for payloads from the official Meshtastic ATAK plugin using - * TAKPacketV2 with zstd dictionary compression. - * - * @generated from enum value: ATAK_PLUGIN_V2 = 78; - */ - ATAK_PLUGIN_V2 = 78, - - /** - * - * GroupAlarm integration - * Used for transporting GroupAlarm-related messages between Meshtastic nodes - * and companion applications/services. - * - * @generated from enum value: GROUPALARM_APP = 112; - */ - GROUPALARM_APP = 112, - - /** - * - * Private applications should use portnums >= 256. - * To simplify initial development and testing you can use "PRIVATE_APP" - * in your code without needing to rebuild protobuf files (via [regen-protos.sh](https://github.com/meshtastic/firmware/blob/master/bin/regen-protos.sh)) - * - * @generated from enum value: PRIVATE_APP = 256; - */ - PRIVATE_APP = 256, - - /** - * - * ATAK Forwarder Module https://github.com/paulmandal/atak-forwarder - * ENCODING: libcotshrink - * - * @generated from enum value: ATAK_FORWARDER = 257; - */ - ATAK_FORWARDER = 257, - - /** - * - * Currently we limit port nums to no higher than this value - * - * @generated from enum value: MAX = 511; - */ - MAX = 511, -} - -/** - * Describes the enum meshtastic.PortNum. - */ -export const PortNumSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_portnums, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/powermon_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/powermon_pb.ts deleted file mode 100644 index 5a22ce628..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/powermon_pb.ts +++ /dev/null @@ -1,308 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/powermon.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/powermon.proto. - */ -export const file_meshtastic_powermon: GenFile = /*@__PURE__*/ - fileDesc("ChltZXNodGFzdGljL3Bvd2VybW9uLnByb3RvEgptZXNodGFzdGljIuABCghQb3dlck1vbiLTAQoFU3RhdGUSCAoETm9uZRAAEhEKDUNQVV9EZWVwU2xlZXAQARISCg5DUFVfTGlnaHRTbGVlcBACEgwKCFZleHQxX09uEAQSDQoJTG9yYV9SWE9uEAgSDQoJTG9yYV9UWE9uEBASEQoNTG9yYV9SWEFjdGl2ZRAgEgkKBUJUX09uEEASCwoGTEVEX09uEIABEg4KCVNjcmVlbl9PbhCAAhITCg5TY3JlZW5fRHJhd2luZxCABBIMCgdXaWZpX09uEIAIEg8KCkdQU19BY3RpdmUQgBAi/wIKElBvd2VyU3RyZXNzTWVzc2FnZRIyCgNjbWQYASABKA4yJS5tZXNodGFzdGljLlBvd2VyU3RyZXNzTWVzc2FnZS5PcGNvZGUSEwoLbnVtX3NlY29uZHMYAiABKAIinwIKBk9wY29kZRIJCgVVTlNFVBAAEg4KClBSSU5UX0lORk8QARIPCgtGT1JDRV9RVUlFVBACEg0KCUVORF9RVUlFVBADEg0KCVNDUkVFTl9PThAQEg4KClNDUkVFTl9PRkYQERIMCghDUFVfSURMRRAgEhEKDUNQVV9ERUVQU0xFRVAQIRIOCgpDUFVfRlVMTE9OECISCgoGTEVEX09OEDASCwoHTEVEX09GRhAxEgwKCExPUkFfT0ZGEEASCwoHTE9SQV9UWBBBEgsKB0xPUkFfUlgQQhIKCgZCVF9PRkYQUBIJCgVCVF9PThBREgwKCFdJRklfT0ZGEGASCwoHV0lGSV9PThBhEgsKB0dQU19PRkYQcBIKCgZHUFNfT04QcUJkChRvcmcubWVzaHRhc3RpYy5wcm90b0IOUG93ZXJNb25Qcm90b3NaImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAGIGcHJvdG8z"); - -/** - * Note: There are no 'PowerMon' messages normally in use (PowerMons are sent only as structured logs - slogs). - * But we wrap our State enum in this message to effectively nest a namespace (without our linter yelling at us) - * - * @generated from message meshtastic.PowerMon - */ -export type PowerMon = Message<"meshtastic.PowerMon"> & { -}; - -/** - * Describes the message meshtastic.PowerMon. - * Use `create(PowerMonSchema)` to create a new message. - */ -export const PowerMonSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_powermon, 0); - -/** - * Any significant power changing event in meshtastic should be tagged with a powermon state transition. - * If you are making new meshtastic features feel free to add new entries at the end of this definition. - * - * @generated from enum meshtastic.PowerMon.State - */ -export enum PowerMon_State { - /** - * @generated from enum value: None = 0; - */ - None = 0, - - /** - * @generated from enum value: CPU_DeepSleep = 1; - */ - CPU_DeepSleep = 1, - - /** - * @generated from enum value: CPU_LightSleep = 2; - */ - CPU_LightSleep = 2, - - /** - * - * The external Vext1 power is on. Many boards have auxillary power rails that the CPU turns on only - * occasionally. In cases where that rail has multiple devices on it we usually want to have logging on - * the state of that rail as an independent record. - * For instance on the Heltec Tracker 1.1 board, this rail is the power source for the GPS and screen. - * - * The log messages will be short and complete (see PowerMon.Event in the protobufs for details). - * something like "S:PM:C,0x00001234,REASON" where the hex number is the bitmask of all current states. - * (We use a bitmask for states so that if a log message gets lost it won't be fatal) - * - * @generated from enum value: Vext1_On = 4; - */ - Vext1_On = 4, - - /** - * @generated from enum value: Lora_RXOn = 8; - */ - Lora_RXOn = 8, - - /** - * @generated from enum value: Lora_TXOn = 16; - */ - Lora_TXOn = 16, - - /** - * @generated from enum value: Lora_RXActive = 32; - */ - Lora_RXActive = 32, - - /** - * @generated from enum value: BT_On = 64; - */ - BT_On = 64, - - /** - * @generated from enum value: LED_On = 128; - */ - LED_On = 128, - - /** - * @generated from enum value: Screen_On = 256; - */ - Screen_On = 256, - - /** - * @generated from enum value: Screen_Drawing = 512; - */ - Screen_Drawing = 512, - - /** - * @generated from enum value: Wifi_On = 1024; - */ - Wifi_On = 1024, - - /** - * - * GPS is actively trying to find our location - * See GPSPowerState for more details - * - * @generated from enum value: GPS_Active = 2048; - */ - GPS_Active = 2048, -} - -/** - * Describes the enum meshtastic.PowerMon.State. - */ -export const PowerMon_StateSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_powermon, 0, 0); - -/** - * - * PowerStress testing support via the C++ PowerStress module - * - * @generated from message meshtastic.PowerStressMessage - */ -export type PowerStressMessage = Message<"meshtastic.PowerStressMessage"> & { - /** - * - * What type of HardwareMessage is this? - * - * @generated from field: meshtastic.PowerStressMessage.Opcode cmd = 1; - */ - cmd: PowerStressMessage_Opcode; - - /** - * @generated from field: float num_seconds = 2; - */ - numSeconds: number; -}; - -/** - * Describes the message meshtastic.PowerStressMessage. - * Use `create(PowerStressMessageSchema)` to create a new message. - */ -export const PowerStressMessageSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_powermon, 1); - -/** - * - * What operation would we like the UUT to perform. - * note: senders should probably set want_response in their request packets, so that they can know when the state - * machine has started processing their request - * - * @generated from enum meshtastic.PowerStressMessage.Opcode - */ -export enum PowerStressMessage_Opcode { - /** - * - * Unset/unused - * - * @generated from enum value: UNSET = 0; - */ - UNSET = 0, - - /** - * Print board version slog and send an ack that we are alive and ready to process commands - * - * @generated from enum value: PRINT_INFO = 1; - */ - PRINT_INFO = 1, - - /** - * Try to turn off all automatic processing of packets, screen, sleeping, etc (to make it easier to measure in isolation) - * - * @generated from enum value: FORCE_QUIET = 2; - */ - FORCE_QUIET = 2, - - /** - * Stop powerstress processing - probably by just rebooting the board - * - * @generated from enum value: END_QUIET = 3; - */ - END_QUIET = 3, - - /** - * Turn the screen on - * - * @generated from enum value: SCREEN_ON = 16; - */ - SCREEN_ON = 16, - - /** - * Turn the screen off - * - * @generated from enum value: SCREEN_OFF = 17; - */ - SCREEN_OFF = 17, - - /** - * Let the CPU run but we assume mostly idling for num_seconds - * - * @generated from enum value: CPU_IDLE = 32; - */ - CPU_IDLE = 32, - - /** - * Force deep sleep for FIXME seconds - * - * @generated from enum value: CPU_DEEPSLEEP = 33; - */ - CPU_DEEPSLEEP = 33, - - /** - * Spin the CPU as fast as possible for num_seconds - * - * @generated from enum value: CPU_FULLON = 34; - */ - CPU_FULLON = 34, - - /** - * Turn the LED on for num_seconds (and leave it on - for baseline power measurement purposes) - * - * @generated from enum value: LED_ON = 48; - */ - LED_ON = 48, - - /** - * Force the LED off for num_seconds - * - * @generated from enum value: LED_OFF = 49; - */ - LED_OFF = 49, - - /** - * Completely turn off the LORA radio for num_seconds - * - * @generated from enum value: LORA_OFF = 64; - */ - LORA_OFF = 64, - - /** - * Send Lora packets for num_seconds - * - * @generated from enum value: LORA_TX = 65; - */ - LORA_TX = 65, - - /** - * Receive Lora packets for num_seconds (node will be mostly just listening, unless an external agent is helping stress this by sending packets on the current channel) - * - * @generated from enum value: LORA_RX = 66; - */ - LORA_RX = 66, - - /** - * Turn off the BT radio for num_seconds - * - * @generated from enum value: BT_OFF = 80; - */ - BT_OFF = 80, - - /** - * Turn on the BT radio for num_seconds - * - * @generated from enum value: BT_ON = 81; - */ - BT_ON = 81, - - /** - * Turn off the WIFI radio for num_seconds - * - * @generated from enum value: WIFI_OFF = 96; - */ - WIFI_OFF = 96, - - /** - * Turn on the WIFI radio for num_seconds - * - * @generated from enum value: WIFI_ON = 97; - */ - WIFI_ON = 97, - - /** - * Turn off the GPS radio for num_seconds - * - * @generated from enum value: GPS_OFF = 112; - */ - GPS_OFF = 112, - - /** - * Turn on the GPS radio for num_seconds - * - * @generated from enum value: GPS_ON = 113; - */ - GPS_ON = 113, -} - -/** - * Describes the enum meshtastic.PowerStressMessage.Opcode. - */ -export const PowerStressMessage_OpcodeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_powermon, 1, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/remote_hardware_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/remote_hardware_pb.ts deleted file mode 100644 index f7639e8d5..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/remote_hardware_pb.ts +++ /dev/null @@ -1,126 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/remote_hardware.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/remote_hardware.proto. - */ -export const file_meshtastic_remote_hardware: GenFile = /*@__PURE__*/ - fileDesc("CiBtZXNodGFzdGljL3JlbW90ZV9oYXJkd2FyZS5wcm90bxIKbWVzaHRhc3RpYyLWAQoPSGFyZHdhcmVNZXNzYWdlEi4KBHR5cGUYASABKA4yIC5tZXNodGFzdGljLkhhcmR3YXJlTWVzc2FnZS5UeXBlEhEKCWdwaW9fbWFzaxgCIAEoBBISCgpncGlvX3ZhbHVlGAMgASgEImwKBFR5cGUSCQoFVU5TRVQQABIPCgtXUklURV9HUElPUxABEg8KC1dBVENIX0dQSU9TEAISEQoNR1BJT1NfQ0hBTkdFRBADEg4KClJFQURfR1BJT1MQBBIUChBSRUFEX0dQSU9TX1JFUExZEAVCZAoUb3JnLm1lc2h0YXN0aWMucHJvdG9CDlJlbW90ZUhhcmR3YXJlWiJnaXRodWIuY29tL21lc2h0YXN0aWMvZ28vZ2VuZXJhdGVkqgIUTWVzaHRhc3RpYy5Qcm90b2J1ZnO6AgBiBnByb3RvMw"); - -/** - * - * An example app to show off the module system. This message is used for - * REMOTE_HARDWARE_APP PortNums. - * Also provides easy remote access to any GPIO. - * In the future other remote hardware operations can be added based on user interest - * (i.e. serial output, spi/i2c input/output). - * FIXME - currently this feature is turned on by default which is dangerous - * because no security yet (beyond the channel mechanism). - * It should be off by default and then protected based on some TBD mechanism - * (a special channel once multichannel support is included?) - * - * @generated from message meshtastic.HardwareMessage - */ -export type HardwareMessage = Message<"meshtastic.HardwareMessage"> & { - /** - * - * What type of HardwareMessage is this? - * - * @generated from field: meshtastic.HardwareMessage.Type type = 1; - */ - type: HardwareMessage_Type; - - /** - * - * What gpios are we changing. Not used for all MessageTypes, see MessageType for details - * - * @generated from field: uint64 gpio_mask = 2; - */ - gpioMask: bigint; - - /** - * - * For gpios that were listed in gpio_mask as valid, what are the signal levels for those gpios. - * Not used for all MessageTypes, see MessageType for details - * - * @generated from field: uint64 gpio_value = 3; - */ - gpioValue: bigint; -}; - -/** - * Describes the message meshtastic.HardwareMessage. - * Use `create(HardwareMessageSchema)` to create a new message. - */ -export const HardwareMessageSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_remote_hardware, 0); - -/** - * - * TODO: REPLACE - * - * @generated from enum meshtastic.HardwareMessage.Type - */ -export enum HardwareMessage_Type { - /** - * - * Unset/unused - * - * @generated from enum value: UNSET = 0; - */ - UNSET = 0, - - /** - * - * Set gpio gpios based on gpio_mask/gpio_value - * - * @generated from enum value: WRITE_GPIOS = 1; - */ - WRITE_GPIOS = 1, - - /** - * - * We are now interested in watching the gpio_mask gpios. - * If the selected gpios change, please broadcast GPIOS_CHANGED. - * Will implicitly change the gpios requested to be INPUT gpios. - * - * @generated from enum value: WATCH_GPIOS = 2; - */ - WATCH_GPIOS = 2, - - /** - * - * The gpios listed in gpio_mask have changed, the new values are listed in gpio_value - * - * @generated from enum value: GPIOS_CHANGED = 3; - */ - GPIOS_CHANGED = 3, - - /** - * - * Read the gpios specified in gpio_mask, send back a READ_GPIOS_REPLY reply with gpio_value populated - * - * @generated from enum value: READ_GPIOS = 4; - */ - READ_GPIOS = 4, - - /** - * - * A reply to READ_GPIOS. gpio_mask and gpio_value will be populated - * - * @generated from enum value: READ_GPIOS_REPLY = 5; - */ - READ_GPIOS_REPLY = 5, -} - -/** - * Describes the enum meshtastic.HardwareMessage.Type. - */ -export const HardwareMessage_TypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_remote_hardware, 0, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/rtttl_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/rtttl_pb.ts deleted file mode 100644 index b67a39e02..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/rtttl_pb.ts +++ /dev/null @@ -1,37 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/rtttl.proto (package meshtastic, syntax proto3) -/* eslint-disable */ - -import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; -import { fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file meshtastic/rtttl.proto. - */ -export const file_meshtastic_rtttl: GenFile = /*@__PURE__*/ - fileDesc("ChZtZXNodGFzdGljL3J0dHRsLnByb3RvEgptZXNodGFzdGljIh8KC1JUVFRMQ29uZmlnEhAKCHJpbmd0b25lGAEgASgJQmcKFG9yZy5tZXNodGFzdGljLnByb3RvQhFSVFRUTENvbmZpZ1Byb3Rvc1oiZ2l0aHViLmNvbS9tZXNodGFzdGljL2dvL2dlbmVyYXRlZKoCFE1lc2h0YXN0aWMuUHJvdG9idWZzugIAYgZwcm90bzM"); - -/** - * - * Canned message module configuration. - * - * @generated from message meshtastic.RTTTLConfig - */ -export type RTTTLConfig = Message<"meshtastic.RTTTLConfig"> & { - /** - * - * Ringtone for PWM Buzzer in RTTTL Format. - * - * @generated from field: string ringtone = 1; - */ - ringtone: string; -}; - -/** - * Describes the message meshtastic.RTTTLConfig. - * Use `create(RTTTLConfigSchema)` to create a new message. - */ -export const RTTTLConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_rtttl, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/serial_hal_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/serial_hal_pb.ts deleted file mode 100644 index ba489f190..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/serial_hal_pb.ts +++ /dev/null @@ -1,188 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/serial_hal.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/serial_hal.proto. - */ -export const file_meshtastic_serial_hal: GenFile = /*@__PURE__*/ - fileDesc("ChttZXNodGFzdGljL3NlcmlhbF9oYWwucHJvdG8SCm1lc2h0YXN0aWMiogIKEFNlcmlhbEhhbENvbW1hbmQSFgoOdHJhbnNhY3Rpb25faWQYASABKA0SLwoEdHlwZRgCIAEoDjIhLm1lc2h0YXN0aWMuU2VyaWFsSGFsQ29tbWFuZC5UeXBlEgsKA3BpbhgDIAEoDRINCgV2YWx1ZRgEIAEoDRIMCgRtb2RlGAUgASgNEgwKBGRhdGEYBiABKAwijAEKBFR5cGUSCQoFVU5TRVQQABIMCghQSU5fTU9ERRABEhEKDURJR0lUQUxfV1JJVEUQAhIQCgxESUdJVEFMX1JFQUQQAxIUChBBVFRBQ0hfSU5URVJSVVBUEAQSFAoQREVUQUNIX0lOVEVSUlVQVBAFEhAKDFNQSV9UUkFOU0ZFUhAGEggKBE5PT1AQByLMAQoRU2VyaWFsSGFsUmVzcG9uc2USFgoOdHJhbnNhY3Rpb25faWQYASABKA0SNAoGcmVzdWx0GAIgASgOMiQubWVzaHRhc3RpYy5TZXJpYWxIYWxSZXNwb25zZS5SZXN1bHQSDQoFdmFsdWUYAyABKA0SDAoEZGF0YRgEIAEoDBINCgVlcnJvchgFIAEoCSI9CgZSZXN1bHQSBgoCT0sQABIJCgVFUlJPUhABEg8KC0JBRF9SRVFVRVNUEAISDwoLVU5TVVBQT1JURUQQA0JfChRvcmcubWVzaHRhc3RpYy5wcm90b0IJU2VyaWFsSGFsWiJnaXRodWIuY29tL21lc2h0YXN0aWMvZ28vZ2VuZXJhdGVkqgIUTWVzaHRhc3RpYy5Qcm90b2J1ZnO6AgBiBnByb3RvMw"); - -/** - * @generated from message meshtastic.SerialHalCommand - */ -export type SerialHalCommand = Message<"meshtastic.SerialHalCommand"> & { - /** - * Host-assigned request id. Replies echo this id back in - * SerialHalResponse.transaction_id. - * - * @generated from field: uint32 transaction_id = 1; - */ - transactionId: number; - - /** - * @generated from field: meshtastic.SerialHalCommand.Type type = 2; - */ - type: SerialHalCommand_Type; - - /** - * @generated from field: uint32 pin = 3; - */ - pin: number; - - /** - * @generated from field: uint32 value = 4; - */ - value: number; - - /** - * @generated from field: uint32 mode = 5; - */ - mode: number; - - /** - * @generated from field: bytes data = 6; - */ - data: Uint8Array; -}; - -/** - * Describes the message meshtastic.SerialHalCommand. - * Use `create(SerialHalCommandSchema)` to create a new message. - */ -export const SerialHalCommandSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_serial_hal, 0); - -/** - * @generated from enum meshtastic.SerialHalCommand.Type - */ -export enum SerialHalCommand_Type { - /** - * @generated from enum value: UNSET = 0; - */ - UNSET = 0, - - /** - * @generated from enum value: PIN_MODE = 1; - */ - PIN_MODE = 1, - - /** - * @generated from enum value: DIGITAL_WRITE = 2; - */ - DIGITAL_WRITE = 2, - - /** - * @generated from enum value: DIGITAL_READ = 3; - */ - DIGITAL_READ = 3, - - /** - * @generated from enum value: ATTACH_INTERRUPT = 4; - */ - ATTACH_INTERRUPT = 4, - - /** - * @generated from enum value: DETACH_INTERRUPT = 5; - */ - DETACH_INTERRUPT = 5, - - /** - * @generated from enum value: SPI_TRANSFER = 6; - */ - SPI_TRANSFER = 6, - - /** - * @generated from enum value: NOOP = 7; - */ - NOOP = 7, -} - -/** - * Describes the enum meshtastic.SerialHalCommand.Type. - */ -export const SerialHalCommand_TypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_serial_hal, 0, 0); - -/** - * @generated from message meshtastic.SerialHalResponse - */ -export type SerialHalResponse = Message<"meshtastic.SerialHalResponse"> & { - /** - * Matches the originating SerialHalCommand.transaction_id for normal - * request/response traffic. - * - * A value of 0 indicates an unsolicited interrupt notification generated by - * the device. In that case, the host should interpret value as the GPIO pin - * that triggered. - * - * @generated from field: uint32 transaction_id = 1; - */ - transactionId: number; - - /** - * @generated from field: meshtastic.SerialHalResponse.Result result = 2; - */ - result: SerialHalResponse_Result; - - /** - * Used by DIGITAL_READ replies and interrupt notifications. For interrupt - * notifications (transaction_id == 0), this carries the pin number. - * - * @generated from field: uint32 value = 3; - */ - value: number; - - /** - * @generated from field: bytes data = 4; - */ - data: Uint8Array; - - /** - * @generated from field: string error = 5; - */ - error: string; -}; - -/** - * Describes the message meshtastic.SerialHalResponse. - * Use `create(SerialHalResponseSchema)` to create a new message. - */ -export const SerialHalResponseSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_serial_hal, 1); - -/** - * @generated from enum meshtastic.SerialHalResponse.Result - */ -export enum SerialHalResponse_Result { - /** - * @generated from enum value: OK = 0; - */ - OK = 0, - - /** - * @generated from enum value: ERROR = 1; - */ - ERROR = 1, - - /** - * @generated from enum value: BAD_REQUEST = 2; - */ - BAD_REQUEST = 2, - - /** - * @generated from enum value: UNSUPPORTED = 3; - */ - UNSUPPORTED = 3, -} - -/** - * Describes the enum meshtastic.SerialHalResponse.Result. - */ -export const SerialHalResponse_ResultSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_serial_hal, 1, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/storeforward_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/storeforward_pb.ts deleted file mode 100644 index 71040b285..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/storeforward_pb.ts +++ /dev/null @@ -1,384 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/storeforward.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/storeforward.proto. - */ -export const file_meshtastic_storeforward: GenFile = /*@__PURE__*/ - fileDesc("Ch1tZXNodGFzdGljL3N0b3JlZm9yd2FyZC5wcm90bxIKbWVzaHRhc3RpYyKcBwoPU3RvcmVBbmRGb3J3YXJkEjcKAnJyGAEgASgOMisubWVzaHRhc3RpYy5TdG9yZUFuZEZvcndhcmQuUmVxdWVzdFJlc3BvbnNlEjcKBXN0YXRzGAIgASgLMiYubWVzaHRhc3RpYy5TdG9yZUFuZEZvcndhcmQuU3RhdGlzdGljc0gAEjYKB2hpc3RvcnkYAyABKAsyIy5tZXNodGFzdGljLlN0b3JlQW5kRm9yd2FyZC5IaXN0b3J5SAASOgoJaGVhcnRiZWF0GAQgASgLMiUubWVzaHRhc3RpYy5TdG9yZUFuZEZvcndhcmQuSGVhcnRiZWF0SAASDgoEdGV4dBgFIAEoDEgAGs0BCgpTdGF0aXN0aWNzEhYKDm1lc3NhZ2VzX3RvdGFsGAEgASgNEhYKDm1lc3NhZ2VzX3NhdmVkGAIgASgNEhQKDG1lc3NhZ2VzX21heBgDIAEoDRIPCgd1cF90aW1lGAQgASgNEhAKCHJlcXVlc3RzGAUgASgNEhgKEHJlcXVlc3RzX2hpc3RvcnkYBiABKA0SEQoJaGVhcnRiZWF0GAcgASgIEhIKCnJldHVybl9tYXgYCCABKA0SFQoNcmV0dXJuX3dpbmRvdxgJIAEoDRpJCgdIaXN0b3J5EhgKEGhpc3RvcnlfbWVzc2FnZXMYASABKA0SDgoGd2luZG93GAIgASgNEhQKDGxhc3RfcmVxdWVzdBgDIAEoDRouCglIZWFydGJlYXQSDgoGcGVyaW9kGAEgASgNEhEKCXNlY29uZGFyeRgCIAEoDSK8AgoPUmVxdWVzdFJlc3BvbnNlEgkKBVVOU0VUEAASEAoMUk9VVEVSX0VSUk9SEAESFAoQUk9VVEVSX0hFQVJUQkVBVBACEg8KC1JPVVRFUl9QSU5HEAMSDwoLUk9VVEVSX1BPTkcQBBIPCgtST1VURVJfQlVTWRAFEhIKDlJPVVRFUl9ISVNUT1JZEAYSEAoMUk9VVEVSX1NUQVRTEAcSFgoSUk9VVEVSX1RFWFRfRElSRUNUEAgSGQoVUk9VVEVSX1RFWFRfQlJPQURDQVNUEAkSEAoMQ0xJRU5UX0VSUk9SEEASEgoOQ0xJRU5UX0hJU1RPUlkQQRIQCgxDTElFTlRfU1RBVFMQQhIPCgtDTElFTlRfUElORxBDEg8KC0NMSUVOVF9QT05HEEQSEAoMQ0xJRU5UX0FCT1JUEGpCCQoHdmFyaWFudEJrChRvcmcubWVzaHRhc3RpYy5wcm90b0IVU3RvcmVBbmRGb3J3YXJkUHJvdG9zWiJnaXRodWIuY29tL21lc2h0YXN0aWMvZ28vZ2VuZXJhdGVkqgIUTWVzaHRhc3RpYy5Qcm90b2J1ZnO6AgBiBnByb3RvMw"); - -/** - * - * TODO: REPLACE - * - * @generated from message meshtastic.StoreAndForward - */ -export type StoreAndForward = Message<"meshtastic.StoreAndForward"> & { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.StoreAndForward.RequestResponse rr = 1; - */ - rr: StoreAndForward_RequestResponse; - - /** - * - * TODO: REPLACE - * - * @generated from oneof meshtastic.StoreAndForward.variant - */ - variant: { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.StoreAndForward.Statistics stats = 2; - */ - value: StoreAndForward_Statistics; - case: "stats"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.StoreAndForward.History history = 3; - */ - value: StoreAndForward_History; - case: "history"; - } | { - /** - * - * TODO: REPLACE - * - * @generated from field: meshtastic.StoreAndForward.Heartbeat heartbeat = 4; - */ - value: StoreAndForward_Heartbeat; - case: "heartbeat"; - } | { - /** - * - * Text from history message. - * - * @generated from field: bytes text = 5; - */ - value: Uint8Array; - case: "text"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.StoreAndForward. - * Use `create(StoreAndForwardSchema)` to create a new message. - */ -export const StoreAndForwardSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_storeforward, 0); - -/** - * - * TODO: REPLACE - * - * @generated from message meshtastic.StoreAndForward.Statistics - */ -export type StoreAndForward_Statistics = Message<"meshtastic.StoreAndForward.Statistics"> & { - /** - * - * Number of messages we have ever seen - * - * @generated from field: uint32 messages_total = 1; - */ - messagesTotal: number; - - /** - * - * Number of messages we have currently saved our history. - * - * @generated from field: uint32 messages_saved = 2; - */ - messagesSaved: number; - - /** - * - * Maximum number of messages we will save - * - * @generated from field: uint32 messages_max = 3; - */ - messagesMax: number; - - /** - * - * Router uptime in seconds - * - * @generated from field: uint32 up_time = 4; - */ - upTime: number; - - /** - * - * Number of times any client sent a request to the S&F. - * - * @generated from field: uint32 requests = 5; - */ - requests: number; - - /** - * - * Number of times the history was requested. - * - * @generated from field: uint32 requests_history = 6; - */ - requestsHistory: number; - - /** - * - * Is the heartbeat enabled on the server? - * - * @generated from field: bool heartbeat = 7; - */ - heartbeat: boolean; - - /** - * - * Maximum number of messages the server will return. - * - * @generated from field: uint32 return_max = 8; - */ - returnMax: number; - - /** - * - * Maximum history window in minutes the server will return messages from. - * - * @generated from field: uint32 return_window = 9; - */ - returnWindow: number; -}; - -/** - * Describes the message meshtastic.StoreAndForward.Statistics. - * Use `create(StoreAndForward_StatisticsSchema)` to create a new message. - */ -export const StoreAndForward_StatisticsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_storeforward, 0, 0); - -/** - * - * TODO: REPLACE - * - * @generated from message meshtastic.StoreAndForward.History - */ -export type StoreAndForward_History = Message<"meshtastic.StoreAndForward.History"> & { - /** - * - * Number of that will be sent to the client - * - * @generated from field: uint32 history_messages = 1; - */ - historyMessages: number; - - /** - * - * The window of messages that was used to filter the history client requested - * - * @generated from field: uint32 window = 2; - */ - window: number; - - /** - * - * Index in the packet history of the last message sent in a previous request to the server. - * Will be sent to the client before sending the history and can be set in a subsequent request to avoid getting packets the server already sent to the client. - * - * @generated from field: uint32 last_request = 3; - */ - lastRequest: number; -}; - -/** - * Describes the message meshtastic.StoreAndForward.History. - * Use `create(StoreAndForward_HistorySchema)` to create a new message. - */ -export const StoreAndForward_HistorySchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_storeforward, 0, 1); - -/** - * - * TODO: REPLACE - * - * @generated from message meshtastic.StoreAndForward.Heartbeat - */ -export type StoreAndForward_Heartbeat = Message<"meshtastic.StoreAndForward.Heartbeat"> & { - /** - * - * Period in seconds that the heartbeat is sent out that will be sent to the client - * - * @generated from field: uint32 period = 1; - */ - period: number; - - /** - * - * If set, this is not the primary Store & Forward router on the mesh - * - * @generated from field: uint32 secondary = 2; - */ - secondary: number; -}; - -/** - * Describes the message meshtastic.StoreAndForward.Heartbeat. - * Use `create(StoreAndForward_HeartbeatSchema)` to create a new message. - */ -export const StoreAndForward_HeartbeatSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_storeforward, 0, 2); - -/** - * - * 001 - 063 = From Router - * 064 - 127 = From Client - * - * @generated from enum meshtastic.StoreAndForward.RequestResponse - */ -export enum StoreAndForward_RequestResponse { - /** - * - * Unset/unused - * - * @generated from enum value: UNSET = 0; - */ - UNSET = 0, - - /** - * - * Router is an in error state. - * - * @generated from enum value: ROUTER_ERROR = 1; - */ - ROUTER_ERROR = 1, - - /** - * - * Router heartbeat - * - * @generated from enum value: ROUTER_HEARTBEAT = 2; - */ - ROUTER_HEARTBEAT = 2, - - /** - * - * Router has requested the client respond. This can work as a - * "are you there" message. - * - * @generated from enum value: ROUTER_PING = 3; - */ - ROUTER_PING = 3, - - /** - * - * The response to a "Ping" - * - * @generated from enum value: ROUTER_PONG = 4; - */ - ROUTER_PONG = 4, - - /** - * - * Router is currently busy. Please try again later. - * - * @generated from enum value: ROUTER_BUSY = 5; - */ - ROUTER_BUSY = 5, - - /** - * - * Router is responding to a request for history. - * - * @generated from enum value: ROUTER_HISTORY = 6; - */ - ROUTER_HISTORY = 6, - - /** - * - * Router is responding to a request for stats. - * - * @generated from enum value: ROUTER_STATS = 7; - */ - ROUTER_STATS = 7, - - /** - * - * Router sends a text message from its history that was a direct message. - * - * @generated from enum value: ROUTER_TEXT_DIRECT = 8; - */ - ROUTER_TEXT_DIRECT = 8, - - /** - * - * Router sends a text message from its history that was a broadcast. - * - * @generated from enum value: ROUTER_TEXT_BROADCAST = 9; - */ - ROUTER_TEXT_BROADCAST = 9, - - /** - * - * Client is an in error state. - * - * @generated from enum value: CLIENT_ERROR = 64; - */ - CLIENT_ERROR = 64, - - /** - * - * Client has requested a replay from the router. - * - * @generated from enum value: CLIENT_HISTORY = 65; - */ - CLIENT_HISTORY = 65, - - /** - * - * Client has requested stats from the router. - * - * @generated from enum value: CLIENT_STATS = 66; - */ - CLIENT_STATS = 66, - - /** - * - * Client has requested the router respond. This can work as a - * "are you there" message. - * - * @generated from enum value: CLIENT_PING = 67; - */ - CLIENT_PING = 67, - - /** - * - * The response to a "Ping" - * - * @generated from enum value: CLIENT_PONG = 68; - */ - CLIENT_PONG = 68, - - /** - * - * Client has requested that the router abort processing the client's request - * - * @generated from enum value: CLIENT_ABORT = 106; - */ - CLIENT_ABORT = 106, -} - -/** - * Describes the enum meshtastic.StoreAndForward.RequestResponse. - */ -export const StoreAndForward_RequestResponseSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_storeforward, 0, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/telemetry_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/telemetry_pb.ts deleted file mode 100644 index 0a3048f3a..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/telemetry_pb.ts +++ /dev/null @@ -1,1603 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/telemetry.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/telemetry.proto. - */ -export const file_meshtastic_telemetry: GenFile = /*@__PURE__*/ - fileDesc("ChptZXNodGFzdGljL3RlbGVtZXRyeS5wcm90bxIKbWVzaHRhc3RpYyLzAQoNRGV2aWNlTWV0cmljcxIaCg1iYXR0ZXJ5X2xldmVsGAEgASgNSACIAQESFAoHdm9sdGFnZRgCIAEoAkgBiAEBEiAKE2NoYW5uZWxfdXRpbGl6YXRpb24YAyABKAJIAogBARIYCgthaXJfdXRpbF90eBgEIAEoAkgDiAEBEhsKDnVwdGltZV9zZWNvbmRzGAUgASgNSASIAQFCEAoOX2JhdHRlcnlfbGV2ZWxCCgoIX3ZvbHRhZ2VCFgoUX2NoYW5uZWxfdXRpbGl6YXRpb25CDgoMX2Fpcl91dGlsX3R4QhEKD191cHRpbWVfc2Vjb25kcyKgBwoSRW52aXJvbm1lbnRNZXRyaWNzEhgKC3RlbXBlcmF0dXJlGAEgASgCSACIAQESHgoRcmVsYXRpdmVfaHVtaWRpdHkYAiABKAJIAYgBARIgChNiYXJvbWV0cmljX3ByZXNzdXJlGAMgASgCSAKIAQESGwoOZ2FzX3Jlc2lzdGFuY2UYBCABKAJIA4gBARIUCgd2b2x0YWdlGAUgASgCSASIAQESFAoHY3VycmVudBgGIAEoAkgFiAEBEhAKA2lhcRgHIAEoDUgGiAEBEhUKCGRpc3RhbmNlGAggASgCSAeIAQESEAoDbHV4GAkgASgCSAiIAQESFgoJd2hpdGVfbHV4GAogASgCSAmIAQESEwoGaXJfbHV4GAsgASgCSAqIAQESEwoGdXZfbHV4GAwgASgCSAuIAQESGwoOd2luZF9kaXJlY3Rpb24YDSABKA1IDIgBARIXCgp3aW5kX3NwZWVkGA4gASgCSA2IAQESEwoGd2VpZ2h0GA8gASgCSA6IAQESFgoJd2luZF9ndXN0GBAgASgCSA+IAQESFgoJd2luZF9sdWxsGBEgASgCSBCIAQESFgoJcmFkaWF0aW9uGBIgASgCSBGIAQESGAoLcmFpbmZhbGxfMWgYEyABKAJIEogBARIZCgxyYWluZmFsbF8yNGgYFCABKAJIE4gBARIaCg1zb2lsX21vaXN0dXJlGBUgASgNSBSIAQESHQoQc29pbF90ZW1wZXJhdHVyZRgWIAEoAkgViAEBEhwKFG9uZV93aXJlX3RlbXBlcmF0dXJlGBcgAygCQg4KDF90ZW1wZXJhdHVyZUIUChJfcmVsYXRpdmVfaHVtaWRpdHlCFgoUX2Jhcm9tZXRyaWNfcHJlc3N1cmVCEQoPX2dhc19yZXNpc3RhbmNlQgoKCF92b2x0YWdlQgoKCF9jdXJyZW50QgYKBF9pYXFCCwoJX2Rpc3RhbmNlQgYKBF9sdXhCDAoKX3doaXRlX2x1eEIJCgdfaXJfbHV4QgkKB191dl9sdXhCEQoPX3dpbmRfZGlyZWN0aW9uQg0KC193aW5kX3NwZWVkQgkKB193ZWlnaHRCDAoKX3dpbmRfZ3VzdEIMCgpfd2luZF9sdWxsQgwKCl9yYWRpYXRpb25CDgoMX3JhaW5mYWxsXzFoQg8KDV9yYWluZmFsbF8yNGhCEAoOX3NvaWxfbW9pc3R1cmVCEwoRX3NvaWxfdGVtcGVyYXR1cmUirgUKDFBvd2VyTWV0cmljcxIYCgtjaDFfdm9sdGFnZRgBIAEoAkgAiAEBEhgKC2NoMV9jdXJyZW50GAIgASgCSAGIAQESGAoLY2gyX3ZvbHRhZ2UYAyABKAJIAogBARIYCgtjaDJfY3VycmVudBgEIAEoAkgDiAEBEhgKC2NoM192b2x0YWdlGAUgASgCSASIAQESGAoLY2gzX2N1cnJlbnQYBiABKAJIBYgBARIYCgtjaDRfdm9sdGFnZRgHIAEoAkgGiAEBEhgKC2NoNF9jdXJyZW50GAggASgCSAeIAQESGAoLY2g1X3ZvbHRhZ2UYCSABKAJICIgBARIYCgtjaDVfY3VycmVudBgKIAEoAkgJiAEBEhgKC2NoNl92b2x0YWdlGAsgASgCSAqIAQESGAoLY2g2X2N1cnJlbnQYDCABKAJIC4gBARIYCgtjaDdfdm9sdGFnZRgNIAEoAkgMiAEBEhgKC2NoN19jdXJyZW50GA4gASgCSA2IAQESGAoLY2g4X3ZvbHRhZ2UYDyABKAJIDogBARIYCgtjaDhfY3VycmVudBgQIAEoAkgPiAEBQg4KDF9jaDFfdm9sdGFnZUIOCgxfY2gxX2N1cnJlbnRCDgoMX2NoMl92b2x0YWdlQg4KDF9jaDJfY3VycmVudEIOCgxfY2gzX3ZvbHRhZ2VCDgoMX2NoM19jdXJyZW50Qg4KDF9jaDRfdm9sdGFnZUIOCgxfY2g0X2N1cnJlbnRCDgoMX2NoNV92b2x0YWdlQg4KDF9jaDVfY3VycmVudEIOCgxfY2g2X3ZvbHRhZ2VCDgoMX2NoNl9jdXJyZW50Qg4KDF9jaDdfdm9sdGFnZUIOCgxfY2g3X2N1cnJlbnRCDgoMX2NoOF92b2x0YWdlQg4KDF9jaDhfY3VycmVudCKxCQoRQWlyUXVhbGl0eU1ldHJpY3MSGgoNcG0xMF9zdGFuZGFyZBgBIAEoDUgAiAEBEhoKDXBtMjVfc3RhbmRhcmQYAiABKA1IAYgBARIbCg5wbTEwMF9zdGFuZGFyZBgDIAEoDUgCiAEBEh8KEnBtMTBfZW52aXJvbm1lbnRhbBgEIAEoDUgDiAEBEh8KEnBtMjVfZW52aXJvbm1lbnRhbBgFIAEoDUgEiAEBEiAKE3BtMTAwX2Vudmlyb25tZW50YWwYBiABKA1IBYgBARIbCg5wYXJ0aWNsZXNfMDN1bRgHIAEoDUgGiAEBEhsKDnBhcnRpY2xlc18wNXVtGAggASgNSAeIAQESGwoOcGFydGljbGVzXzEwdW0YCSABKA1ICIgBARIbCg5wYXJ0aWNsZXNfMjV1bRgKIAEoDUgJiAEBEhsKDnBhcnRpY2xlc181MHVtGAsgASgNSAqIAQESHAoPcGFydGljbGVzXzEwMHVtGAwgASgNSAuIAQESEAoDY28yGA0gASgNSAyIAQESHAoPY28yX3RlbXBlcmF0dXJlGA4gASgCSA2IAQESGQoMY28yX2h1bWlkaXR5GA8gASgCSA6IAQESHgoRZm9ybV9mb3JtYWxkZWh5ZGUYECABKAJID4gBARIaCg1mb3JtX2h1bWlkaXR5GBEgASgCSBCIAQESHQoQZm9ybV90ZW1wZXJhdHVyZRgSIAEoAkgRiAEBEhoKDXBtNDBfc3RhbmRhcmQYEyABKA1IEogBARIbCg5wYXJ0aWNsZXNfNDB1bRgUIAEoDUgTiAEBEhsKDnBtX3RlbXBlcmF0dXJlGBUgASgCSBSIAQESGAoLcG1faHVtaWRpdHkYFiABKAJIFYgBARIXCgpwbV92b2NfaWR4GBcgASgCSBaIAQESFwoKcG1fbm94X2lkeBgYIAEoAkgXiAEBEhoKDXBhcnRpY2xlc190cHMYGSABKAJIGIgBAUIQCg5fcG0xMF9zdGFuZGFyZEIQCg5fcG0yNV9zdGFuZGFyZEIRCg9fcG0xMDBfc3RhbmRhcmRCFQoTX3BtMTBfZW52aXJvbm1lbnRhbEIVChNfcG0yNV9lbnZpcm9ubWVudGFsQhYKFF9wbTEwMF9lbnZpcm9ubWVudGFsQhEKD19wYXJ0aWNsZXNfMDN1bUIRCg9fcGFydGljbGVzXzA1dW1CEQoPX3BhcnRpY2xlc18xMHVtQhEKD19wYXJ0aWNsZXNfMjV1bUIRCg9fcGFydGljbGVzXzUwdW1CEgoQX3BhcnRpY2xlc18xMDB1bUIGCgRfY28yQhIKEF9jbzJfdGVtcGVyYXR1cmVCDwoNX2NvMl9odW1pZGl0eUIUChJfZm9ybV9mb3JtYWxkZWh5ZGVCEAoOX2Zvcm1faHVtaWRpdHlCEwoRX2Zvcm1fdGVtcGVyYXR1cmVCEAoOX3BtNDBfc3RhbmRhcmRCEQoPX3BhcnRpY2xlc180MHVtQhEKD19wbV90ZW1wZXJhdHVyZUIOCgxfcG1faHVtaWRpdHlCDQoLX3BtX3ZvY19pZHhCDQoLX3BtX25veF9pZHhCEAoOX3BhcnRpY2xlc190cHMi/wIKCkxvY2FsU3RhdHMSFgoOdXB0aW1lX3NlY29uZHMYASABKA0SGwoTY2hhbm5lbF91dGlsaXphdGlvbhgCIAEoAhITCgthaXJfdXRpbF90eBgDIAEoAhIWCg5udW1fcGFja2V0c190eBgEIAEoDRIWCg5udW1fcGFja2V0c19yeBgFIAEoDRIaChJudW1fcGFja2V0c19yeF9iYWQYBiABKA0SGAoQbnVtX29ubGluZV9ub2RlcxgHIAEoDRIXCg9udW1fdG90YWxfbm9kZXMYCCABKA0SEwoLbnVtX3J4X2R1cGUYCSABKA0SFAoMbnVtX3R4X3JlbGF5GAogASgNEh0KFW51bV90eF9yZWxheV9jYW5jZWxlZBgLIAEoDRIYChBoZWFwX3RvdGFsX2J5dGVzGAwgASgNEhcKD2hlYXBfZnJlZV9ieXRlcxgNIAEoDRIWCg5udW1fdHhfZHJvcHBlZBgOIAEoDRITCgtub2lzZV9mbG9vchgPIAEoBSLkAQoWVHJhZmZpY01hbmFnZW1lbnRTdGF0cxIZChFwYWNrZXRzX2luc3BlY3RlZBgBIAEoDRIcChRwb3NpdGlvbl9kZWR1cF9kcm9wcxgCIAEoDRIbChNub2RlaW5mb19jYWNoZV9oaXRzGAMgASgNEhgKEHJhdGVfbGltaXRfZHJvcHMYBCABKA0SHAoUdW5rbm93bl9wYWNrZXRfZHJvcHMYBSABKA0SHQoVaG9wX2V4aGF1c3RlZF9wYWNrZXRzGAYgASgNEh0KFXJvdXRlcl9ob3BzX3ByZXNlcnZlZBgHIAEoDSJ7Cg1IZWFsdGhNZXRyaWNzEhYKCWhlYXJ0X2JwbRgBIAEoDUgAiAEBEhEKBHNwTzIYAiABKA1IAYgBARIYCgt0ZW1wZXJhdHVyZRgDIAEoAkgCiAEBQgwKCl9oZWFydF9icG1CBwoFX3NwTzJCDgoMX3RlbXBlcmF0dXJlIpECCgtIb3N0TWV0cmljcxIWCg51cHRpbWVfc2Vjb25kcxgBIAEoDRIVCg1mcmVlbWVtX2J5dGVzGAIgASgEEhcKD2Rpc2tmcmVlMV9ieXRlcxgDIAEoBBIcCg9kaXNrZnJlZTJfYnl0ZXMYBCABKARIAIgBARIcCg9kaXNrZnJlZTNfYnl0ZXMYBSABKARIAYgBARINCgVsb2FkMRgGIAEoDRINCgVsb2FkNRgHIAEoDRIOCgZsb2FkMTUYCCABKA0SGAoLdXNlcl9zdHJpbmcYCSABKAlIAogBAUISChBfZGlza2ZyZWUyX2J5dGVzQhIKEF9kaXNrZnJlZTNfYnl0ZXNCDgoMX3VzZXJfc3RyaW5nIuYDCglUZWxlbWV0cnkSDAoEdGltZRgBIAEoBxIzCg5kZXZpY2VfbWV0cmljcxgCIAEoCzIZLm1lc2h0YXN0aWMuRGV2aWNlTWV0cmljc0gAEj0KE2Vudmlyb25tZW50X21ldHJpY3MYAyABKAsyHi5tZXNodGFzdGljLkVudmlyb25tZW50TWV0cmljc0gAEjwKE2Fpcl9xdWFsaXR5X21ldHJpY3MYBCABKAsyHS5tZXNodGFzdGljLkFpclF1YWxpdHlNZXRyaWNzSAASMQoNcG93ZXJfbWV0cmljcxgFIAEoCzIYLm1lc2h0YXN0aWMuUG93ZXJNZXRyaWNzSAASLQoLbG9jYWxfc3RhdHMYBiABKAsyFi5tZXNodGFzdGljLkxvY2FsU3RhdHNIABIzCg5oZWFsdGhfbWV0cmljcxgHIAEoCzIZLm1lc2h0YXN0aWMuSGVhbHRoTWV0cmljc0gAEi8KDGhvc3RfbWV0cmljcxgIIAEoCzIXLm1lc2h0YXN0aWMuSG9zdE1ldHJpY3NIABJGChh0cmFmZmljX21hbmFnZW1lbnRfc3RhdHMYCSABKAsyIi5tZXNodGFzdGljLlRyYWZmaWNNYW5hZ2VtZW50U3RhdHNIAEIJCgd2YXJpYW50Ij4KDU5hdTc4MDJDb25maWcSEgoKemVyb09mZnNldBgBIAEoBRIZChFjYWxpYnJhdGlvbkZhY3RvchgCIAEoAiLwAQoKU0VONVhTdGF0ZRIaChJsYXN0X2NsZWFuaW5nX3RpbWUYASABKA0SGwoTbGFzdF9jbGVhbmluZ192YWxpZBgCIAEoCBIVCg1vbmVfc2hvdF9tb2RlGAMgASgIEhsKDnZvY19zdGF0ZV90aW1lGAQgASgNSACIAQESHAoPdm9jX3N0YXRlX3ZhbGlkGAUgASgISAGIAQESHAoPdm9jX3N0YXRlX2FycmF5GAYgASgGSAKIAQFCEQoPX3ZvY19zdGF0ZV90aW1lQhIKEF92b2Nfc3RhdGVfdmFsaWRCEgoQX3ZvY19zdGF0ZV9hcnJheSrcBQoTVGVsZW1ldHJ5U2Vuc29yVHlwZRIQCgxTRU5TT1JfVU5TRVQQABIKCgZCTUUyODAQARIKCgZCTUU2ODAQAhILCgdNQ1A5ODA4EAMSCgoGSU5BMjYwEAQSCgoGSU5BMjE5EAUSCgoGQk1QMjgwEAYSCQoFU0hUQzMQBxIJCgVMUFMyMhAIEgsKB1FNQzYzMTAQCRILCgdRTUk4NjU4EAoSDAoIUU1DNTg4M0wQCxIJCgVTSFQzMRAMEgwKCFBNU0EwMDNJEA0SCwoHSU5BMzIyMRAOEgoKBkJNUDA4NRAPEgwKCFJDV0w5NjIwEBASCQoFU0hUNFgQERIMCghWRU1MNzcwMBASEgwKCE1MWDkwNjMyEBMSCwoHT1BUMzAwMRAUEgwKCExUUjM5MFVWEBUSDgoKVFNMMjU5MTFGThAWEgkKBUFIVDEwEBcSEAoMREZST0JPVF9MQVJLEBgSCwoHTkFVNzgwMhAZEgoKBkJNUDNYWBAaEgwKCElDTTIwOTQ4EBsSDAoITUFYMTcwNDgQHBIRCg1DVVNUT01fU0VOU09SEB0SDAoITUFYMzAxMDIQHhIMCghNTFg5MDYxNBAfEgkKBVNDRDRYECASCwoHUkFEU0VOUxAhEgoKBklOQTIyNhAiEhAKDERGUk9CT1RfUkFJThAjEgoKBkRQUzMxMBAkEgwKCFJBSzEyMDM1ECUSDAoITUFYMTcyNjEQJhILCgdQQ1QyMDc1ECcSCwoHQURTMVgxNRAoEg8KC0FEUzFYMTVfQUxUECkSCQoFU0ZBMzAQKhIJCgVTRU41WBArEgsKB1RTTDI1NjEQLBIKCgZCSDE3NTAQLRILCgdIREMxMDgwEC4SCQoFU0hUMjEQLxIJCgVTVEMzMRAwEgkKBVNDRDMwEDESCQoFU0hUWFgQMhIKCgZEUzI0OFgQMxINCglNTUM1OTgzTUEQNBINCglJQ000MjYwN1AQNUJlChRvcmcubWVzaHRhc3RpYy5wcm90b0IPVGVsZW1ldHJ5UHJvdG9zWiJnaXRodWIuY29tL21lc2h0YXN0aWMvZ28vZ2VuZXJhdGVkqgIUTWVzaHRhc3RpYy5Qcm90b2J1ZnO6AgBiBnByb3RvMw"); - -/** - * - * Key native device metrics such as battery level - * - * @generated from message meshtastic.DeviceMetrics - */ -export type DeviceMetrics = Message<"meshtastic.DeviceMetrics"> & { - /** - * - * 0-100 (>100 means powered) - * - * @generated from field: optional uint32 battery_level = 1; - */ - batteryLevel?: number | undefined; - - /** - * - * Voltage measured - * - * @generated from field: optional float voltage = 2; - */ - voltage?: number | undefined; - - /** - * - * Utilization for the current channel, including well formed TX, RX and malformed RX (aka noise). - * - * @generated from field: optional float channel_utilization = 3; - */ - channelUtilization?: number | undefined; - - /** - * - * Percent of airtime for transmission used within the last hour. - * - * @generated from field: optional float air_util_tx = 4; - */ - airUtilTx?: number | undefined; - - /** - * - * How long the device has been running since the last reboot (in seconds) - * - * @generated from field: optional uint32 uptime_seconds = 5; - */ - uptimeSeconds?: number | undefined; -}; - -/** - * Describes the message meshtastic.DeviceMetrics. - * Use `create(DeviceMetricsSchema)` to create a new message. - */ -export const DeviceMetricsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 0); - -/** - * - * Weather station or other environmental metrics - * - * @generated from message meshtastic.EnvironmentMetrics - */ -export type EnvironmentMetrics = Message<"meshtastic.EnvironmentMetrics"> & { - /** - * - * Temperature measured - * - * @generated from field: optional float temperature = 1; - */ - temperature?: number | undefined; - - /** - * - * Relative humidity percent measured - * - * @generated from field: optional float relative_humidity = 2; - */ - relativeHumidity?: number | undefined; - - /** - * - * Barometric pressure in hPA measured - * - * @generated from field: optional float barometric_pressure = 3; - */ - barometricPressure?: number | undefined; - - /** - * - * Gas resistance in MOhm measured - * - * @generated from field: optional float gas_resistance = 4; - */ - gasResistance?: number | undefined; - - /** - * - * Voltage measured (To be depreciated in favor of PowerMetrics in Meshtastic 3.x) - * - * @generated from field: optional float voltage = 5; - */ - voltage?: number | undefined; - - /** - * - * Current measured (To be depreciated in favor of PowerMetrics in Meshtastic 3.x) - * - * @generated from field: optional float current = 6; - */ - current?: number | undefined; - - /** - * - * relative scale IAQ value as measured by Bosch BME680 . value 0-500. - * Belongs to Air Quality but is not particle but VOC measurement. Other VOC values can also be put in here. - * - * @generated from field: optional uint32 iaq = 7; - */ - iaq?: number | undefined; - - /** - * - * RCWL9620 Doppler Radar Distance Sensor, used for water level detection. Float value in mm. - * - * @generated from field: optional float distance = 8; - */ - distance?: number | undefined; - - /** - * - * VEML7700 high accuracy ambient light(Lux) digital 16-bit resolution sensor. - * - * @generated from field: optional float lux = 9; - */ - lux?: number | undefined; - - /** - * - * VEML7700 high accuracy white light(irradiance) not calibrated digital 16-bit resolution sensor. - * - * @generated from field: optional float white_lux = 10; - */ - whiteLux?: number | undefined; - - /** - * - * Infrared lux - * - * @generated from field: optional float ir_lux = 11; - */ - irLux?: number | undefined; - - /** - * - * Ultraviolet lux - * - * @generated from field: optional float uv_lux = 12; - */ - uvLux?: number | undefined; - - /** - * - * Wind direction in degrees - * 0 degrees = North, 90 = East, etc... - * - * @generated from field: optional uint32 wind_direction = 13; - */ - windDirection?: number | undefined; - - /** - * - * Wind speed in m/s - * - * @generated from field: optional float wind_speed = 14; - */ - windSpeed?: number | undefined; - - /** - * - * Weight in KG - * - * @generated from field: optional float weight = 15; - */ - weight?: number | undefined; - - /** - * - * Wind gust in m/s - * - * @generated from field: optional float wind_gust = 16; - */ - windGust?: number | undefined; - - /** - * - * Wind lull in m/s - * - * @generated from field: optional float wind_lull = 17; - */ - windLull?: number | undefined; - - /** - * - * Radiation in µR/h - * - * @generated from field: optional float radiation = 18; - */ - radiation?: number | undefined; - - /** - * - * Rainfall in the last hour in mm - * - * @generated from field: optional float rainfall_1h = 19; - */ - rainfall1h?: number | undefined; - - /** - * - * Rainfall in the last 24 hours in mm - * - * @generated from field: optional float rainfall_24h = 20; - */ - rainfall24h?: number | undefined; - - /** - * - * Soil moisture measured (% 1-100) - * - * @generated from field: optional uint32 soil_moisture = 21; - */ - soilMoisture?: number | undefined; - - /** - * - * Soil temperature measured (*C) - * - * @generated from field: optional float soil_temperature = 22; - */ - soilTemperature?: number | undefined; - - /** - * - * One-wire temperature (*C) - * - * @generated from field: repeated float one_wire_temperature = 23; - */ - oneWireTemperature: number[]; -}; - -/** - * Describes the message meshtastic.EnvironmentMetrics. - * Use `create(EnvironmentMetricsSchema)` to create a new message. - */ -export const EnvironmentMetricsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 1); - -/** - * - * Power Metrics (voltage / current / etc) - * - * @generated from message meshtastic.PowerMetrics - */ -export type PowerMetrics = Message<"meshtastic.PowerMetrics"> & { - /** - * - * Voltage (Ch1) - * - * @generated from field: optional float ch1_voltage = 1; - */ - ch1Voltage?: number | undefined; - - /** - * - * Current (Ch1) - * - * @generated from field: optional float ch1_current = 2; - */ - ch1Current?: number | undefined; - - /** - * - * Voltage (Ch2) - * - * @generated from field: optional float ch2_voltage = 3; - */ - ch2Voltage?: number | undefined; - - /** - * - * Current (Ch2) - * - * @generated from field: optional float ch2_current = 4; - */ - ch2Current?: number | undefined; - - /** - * - * Voltage (Ch3) - * - * @generated from field: optional float ch3_voltage = 5; - */ - ch3Voltage?: number | undefined; - - /** - * - * Current (Ch3) - * - * @generated from field: optional float ch3_current = 6; - */ - ch3Current?: number | undefined; - - /** - * - * Voltage (Ch4) - * - * @generated from field: optional float ch4_voltage = 7; - */ - ch4Voltage?: number | undefined; - - /** - * - * Current (Ch4) - * - * @generated from field: optional float ch4_current = 8; - */ - ch4Current?: number | undefined; - - /** - * - * Voltage (Ch5) - * - * @generated from field: optional float ch5_voltage = 9; - */ - ch5Voltage?: number | undefined; - - /** - * - * Current (Ch5) - * - * @generated from field: optional float ch5_current = 10; - */ - ch5Current?: number | undefined; - - /** - * - * Voltage (Ch6) - * - * @generated from field: optional float ch6_voltage = 11; - */ - ch6Voltage?: number | undefined; - - /** - * - * Current (Ch6) - * - * @generated from field: optional float ch6_current = 12; - */ - ch6Current?: number | undefined; - - /** - * - * Voltage (Ch7) - * - * @generated from field: optional float ch7_voltage = 13; - */ - ch7Voltage?: number | undefined; - - /** - * - * Current (Ch7) - * - * @generated from field: optional float ch7_current = 14; - */ - ch7Current?: number | undefined; - - /** - * - * Voltage (Ch8) - * - * @generated from field: optional float ch8_voltage = 15; - */ - ch8Voltage?: number | undefined; - - /** - * - * Current (Ch8) - * - * @generated from field: optional float ch8_current = 16; - */ - ch8Current?: number | undefined; -}; - -/** - * Describes the message meshtastic.PowerMetrics. - * Use `create(PowerMetricsSchema)` to create a new message. - */ -export const PowerMetricsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 2); - -/** - * - * Air quality metrics - * - * @generated from message meshtastic.AirQualityMetrics - */ -export type AirQualityMetrics = Message<"meshtastic.AirQualityMetrics"> & { - /** - * - * Concentration Units Standard PM1.0 in ug/m3 - * - * @generated from field: optional uint32 pm10_standard = 1; - */ - pm10Standard?: number | undefined; - - /** - * - * Concentration Units Standard PM2.5 in ug/m3 - * - * @generated from field: optional uint32 pm25_standard = 2; - */ - pm25Standard?: number | undefined; - - /** - * - * Concentration Units Standard PM10.0 in ug/m3 - * - * @generated from field: optional uint32 pm100_standard = 3; - */ - pm100Standard?: number | undefined; - - /** - * - * Concentration Units Environmental PM1.0 in ug/m3 - * - * @generated from field: optional uint32 pm10_environmental = 4; - */ - pm10Environmental?: number | undefined; - - /** - * - * Concentration Units Environmental PM2.5 in ug/m3 - * - * @generated from field: optional uint32 pm25_environmental = 5; - */ - pm25Environmental?: number | undefined; - - /** - * - * Concentration Units Environmental PM10.0 in ug/m3 - * - * @generated from field: optional uint32 pm100_environmental = 6; - */ - pm100Environmental?: number | undefined; - - /** - * - * 0.3um Particle Count in #/0.1l - * - * @generated from field: optional uint32 particles_03um = 7; - */ - particles03um?: number | undefined; - - /** - * - * 0.5um Particle Count in #/0.1l - * - * @generated from field: optional uint32 particles_05um = 8; - */ - particles05um?: number | undefined; - - /** - * - * 1.0um Particle Count in #/0.1l - * - * @generated from field: optional uint32 particles_10um = 9; - */ - particles10um?: number | undefined; - - /** - * - * 2.5um Particle Count in #/0.1l - * - * @generated from field: optional uint32 particles_25um = 10; - */ - particles25um?: number | undefined; - - /** - * - * 5.0um Particle Count in #/0.1l - * - * @generated from field: optional uint32 particles_50um = 11; - */ - particles50um?: number | undefined; - - /** - * - * 10.0um Particle Count in #/0.1l - * - * @generated from field: optional uint32 particles_100um = 12; - */ - particles100um?: number | undefined; - - /** - * - * CO2 concentration in ppm - * - * @generated from field: optional uint32 co2 = 13; - */ - co2?: number | undefined; - - /** - * - * CO2 sensor temperature in degC - * - * @generated from field: optional float co2_temperature = 14; - */ - co2Temperature?: number | undefined; - - /** - * - * CO2 sensor relative humidity in % - * - * @generated from field: optional float co2_humidity = 15; - */ - co2Humidity?: number | undefined; - - /** - * - * Formaldehyde sensor formaldehyde concentration in ppb - * - * @generated from field: optional float form_formaldehyde = 16; - */ - formFormaldehyde?: number | undefined; - - /** - * - * Formaldehyde sensor relative humidity in %RH - * - * @generated from field: optional float form_humidity = 17; - */ - formHumidity?: number | undefined; - - /** - * - * Formaldehyde sensor temperature in degrees Celsius - * - * @generated from field: optional float form_temperature = 18; - */ - formTemperature?: number | undefined; - - /** - * - * Concentration Units Standard PM4.0 in ug/m3 - * - * @generated from field: optional uint32 pm40_standard = 19; - */ - pm40Standard?: number | undefined; - - /** - * - * 4.0um Particle Count in #/0.1l - * - * @generated from field: optional uint32 particles_40um = 20; - */ - particles40um?: number | undefined; - - /** - * - * PM Sensor Temperature - * - * @generated from field: optional float pm_temperature = 21; - */ - pmTemperature?: number | undefined; - - /** - * - * PM Sensor humidity - * - * @generated from field: optional float pm_humidity = 22; - */ - pmHumidity?: number | undefined; - - /** - * - * PM Sensor VOC Index - * - * @generated from field: optional float pm_voc_idx = 23; - */ - pmVocIdx?: number | undefined; - - /** - * - * PM Sensor NOx Index - * - * @generated from field: optional float pm_nox_idx = 24; - */ - pmNoxIdx?: number | undefined; - - /** - * - * Typical Particle Size in um - * - * @generated from field: optional float particles_tps = 25; - */ - particlesTps?: number | undefined; -}; - -/** - * Describes the message meshtastic.AirQualityMetrics. - * Use `create(AirQualityMetricsSchema)` to create a new message. - */ -export const AirQualityMetricsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 3); - -/** - * - * Local device mesh statistics - * - * @generated from message meshtastic.LocalStats - */ -export type LocalStats = Message<"meshtastic.LocalStats"> & { - /** - * - * How long the device has been running since the last reboot (in seconds) - * - * @generated from field: uint32 uptime_seconds = 1; - */ - uptimeSeconds: number; - - /** - * - * Utilization for the current channel, including well formed TX, RX and malformed RX (aka noise). - * - * @generated from field: float channel_utilization = 2; - */ - channelUtilization: number; - - /** - * - * Percent of airtime for transmission used within the last hour. - * - * @generated from field: float air_util_tx = 3; - */ - airUtilTx: number; - - /** - * - * Number of packets sent - * - * @generated from field: uint32 num_packets_tx = 4; - */ - numPacketsTx: number; - - /** - * - * Number of packets received (both good and bad) - * - * @generated from field: uint32 num_packets_rx = 5; - */ - numPacketsRx: number; - - /** - * - * Number of packets received that are malformed or violate the protocol - * - * @generated from field: uint32 num_packets_rx_bad = 6; - */ - numPacketsRxBad: number; - - /** - * - * Number of nodes online (in the past 2 hours) - * - * @generated from field: uint32 num_online_nodes = 7; - */ - numOnlineNodes: number; - - /** - * - * Number of nodes total - * - * @generated from field: uint32 num_total_nodes = 8; - */ - numTotalNodes: number; - - /** - * - * Number of received packets that were duplicates (due to multiple nodes relaying). - * If this number is high, there are nodes in the mesh relaying packets when it's unnecessary, for example due to the ROUTER/REPEATER role. - * - * @generated from field: uint32 num_rx_dupe = 9; - */ - numRxDupe: number; - - /** - * - * Number of packets we transmitted that were a relay for others (not originating from ourselves). - * - * @generated from field: uint32 num_tx_relay = 10; - */ - numTxRelay: number; - - /** - * - * Number of times we canceled a packet to be relayed, because someone else did it before us. - * This will always be zero for ROUTERs/REPEATERs. If this number is high, some other node(s) is/are relaying faster than you. - * - * @generated from field: uint32 num_tx_relay_canceled = 11; - */ - numTxRelayCanceled: number; - - /** - * - * Number of bytes used in the heap - * - * @generated from field: uint32 heap_total_bytes = 12; - */ - heapTotalBytes: number; - - /** - * - * Number of bytes free in the heap - * - * @generated from field: uint32 heap_free_bytes = 13; - */ - heapFreeBytes: number; - - /** - * - * Number of packets that were dropped because the transmit queue was full. - * - * @generated from field: uint32 num_tx_dropped = 14; - */ - numTxDropped: number; - - /** - * - * Noise floor value measured in dBm - * - * @generated from field: int32 noise_floor = 15; - */ - noiseFloor: number; -}; - -/** - * Describes the message meshtastic.LocalStats. - * Use `create(LocalStatsSchema)` to create a new message. - */ -export const LocalStatsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 4); - -/** - * - * Traffic management statistics for mesh network optimization - * - * @generated from message meshtastic.TrafficManagementStats - */ -export type TrafficManagementStats = Message<"meshtastic.TrafficManagementStats"> & { - /** - * - * Total number of packets inspected by traffic management - * - * @generated from field: uint32 packets_inspected = 1; - */ - packetsInspected: number; - - /** - * - * Number of position packets dropped due to deduplication - * - * @generated from field: uint32 position_dedup_drops = 2; - */ - positionDedupDrops: number; - - /** - * - * Number of NodeInfo requests answered from cache - * - * @generated from field: uint32 nodeinfo_cache_hits = 3; - */ - nodeinfoCacheHits: number; - - /** - * - * Number of packets dropped due to rate limiting - * - * @generated from field: uint32 rate_limit_drops = 4; - */ - rateLimitDrops: number; - - /** - * - * Number of unknown/undecryptable packets dropped - * - * @generated from field: uint32 unknown_packet_drops = 5; - */ - unknownPacketDrops: number; - - /** - * - * Number of packets with hop_limit exhausted for local-only broadcast - * - * @generated from field: uint32 hop_exhausted_packets = 6; - */ - hopExhaustedPackets: number; - - /** - * - * Number of times router hop preservation was applied - * - * @generated from field: uint32 router_hops_preserved = 7; - */ - routerHopsPreserved: number; -}; - -/** - * Describes the message meshtastic.TrafficManagementStats. - * Use `create(TrafficManagementStatsSchema)` to create a new message. - */ -export const TrafficManagementStatsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 5); - -/** - * - * Health telemetry metrics - * - * @generated from message meshtastic.HealthMetrics - */ -export type HealthMetrics = Message<"meshtastic.HealthMetrics"> & { - /** - * - * Heart rate (beats per minute) - * - * @generated from field: optional uint32 heart_bpm = 1; - */ - heartBpm?: number | undefined; - - /** - * - * SpO2 (blood oxygen saturation) level - * - * @generated from field: optional uint32 spO2 = 2; - */ - spO2?: number | undefined; - - /** - * - * Body temperature in degrees Celsius - * - * @generated from field: optional float temperature = 3; - */ - temperature?: number | undefined; -}; - -/** - * Describes the message meshtastic.HealthMetrics. - * Use `create(HealthMetricsSchema)` to create a new message. - */ -export const HealthMetricsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 6); - -/** - * - * Linux host metrics - * - * @generated from message meshtastic.HostMetrics - */ -export type HostMetrics = Message<"meshtastic.HostMetrics"> & { - /** - * - * Host system uptime - * - * @generated from field: uint32 uptime_seconds = 1; - */ - uptimeSeconds: number; - - /** - * - * Host system free memory - * - * @generated from field: uint64 freemem_bytes = 2; - */ - freememBytes: bigint; - - /** - * - * Host system disk space free for / - * - * @generated from field: uint64 diskfree1_bytes = 3; - */ - diskfree1Bytes: bigint; - - /** - * - * Secondary system disk space free - * - * @generated from field: optional uint64 diskfree2_bytes = 4; - */ - diskfree2Bytes?: bigint | undefined; - - /** - * - * Tertiary disk space free - * - * @generated from field: optional uint64 diskfree3_bytes = 5; - */ - diskfree3Bytes?: bigint | undefined; - - /** - * - * Host system one minute load in 1/100ths - * - * @generated from field: uint32 load1 = 6; - */ - load1: number; - - /** - * - * Host system five minute load in 1/100ths - * - * @generated from field: uint32 load5 = 7; - */ - load5: number; - - /** - * - * Host system fifteen minute load in 1/100ths - * - * @generated from field: uint32 load15 = 8; - */ - load15: number; - - /** - * - * Optional User-provided string for arbitrary host system information - * that doesn't make sense as a dedicated entry. - * - * @generated from field: optional string user_string = 9; - */ - userString?: string | undefined; -}; - -/** - * Describes the message meshtastic.HostMetrics. - * Use `create(HostMetricsSchema)` to create a new message. - */ -export const HostMetricsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 7); - -/** - * - * Types of Measurements the telemetry module is equipped to handle - * - * @generated from message meshtastic.Telemetry - */ -export type Telemetry = Message<"meshtastic.Telemetry"> & { - /** - * - * Seconds since 1970 - or 0 for unknown/unset - * - * @generated from field: fixed32 time = 1; - */ - time: number; - - /** - * @generated from oneof meshtastic.Telemetry.variant - */ - variant: { - /** - * - * Key native device metrics such as battery level - * - * @generated from field: meshtastic.DeviceMetrics device_metrics = 2; - */ - value: DeviceMetrics; - case: "deviceMetrics"; - } | { - /** - * - * Weather station or other environmental metrics - * - * @generated from field: meshtastic.EnvironmentMetrics environment_metrics = 3; - */ - value: EnvironmentMetrics; - case: "environmentMetrics"; - } | { - /** - * - * Air quality metrics - * - * @generated from field: meshtastic.AirQualityMetrics air_quality_metrics = 4; - */ - value: AirQualityMetrics; - case: "airQualityMetrics"; - } | { - /** - * - * Power Metrics - * - * @generated from field: meshtastic.PowerMetrics power_metrics = 5; - */ - value: PowerMetrics; - case: "powerMetrics"; - } | { - /** - * - * Local device mesh statistics - * - * @generated from field: meshtastic.LocalStats local_stats = 6; - */ - value: LocalStats; - case: "localStats"; - } | { - /** - * - * Health telemetry metrics - * - * @generated from field: meshtastic.HealthMetrics health_metrics = 7; - */ - value: HealthMetrics; - case: "healthMetrics"; - } | { - /** - * - * Linux host metrics - * - * @generated from field: meshtastic.HostMetrics host_metrics = 8; - */ - value: HostMetrics; - case: "hostMetrics"; - } | { - /** - * - * Traffic management statistics - * - * @generated from field: meshtastic.TrafficManagementStats traffic_management_stats = 9; - */ - value: TrafficManagementStats; - case: "trafficManagementStats"; - } | { case: undefined; value?: undefined }; -}; - -/** - * Describes the message meshtastic.Telemetry. - * Use `create(TelemetrySchema)` to create a new message. - */ -export const TelemetrySchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 8); - -/** - * - * NAU7802 Telemetry configuration, for saving to flash - * - * @generated from message meshtastic.Nau7802Config - */ -export type Nau7802Config = Message<"meshtastic.Nau7802Config"> & { - /** - * - * The offset setting for the NAU7802 - * - * @generated from field: int32 zeroOffset = 1; - */ - zeroOffset: number; - - /** - * - * The calibration factor for the NAU7802 - * - * @generated from field: float calibrationFactor = 2; - */ - calibrationFactor: number; -}; - -/** - * Describes the message meshtastic.Nau7802Config. - * Use `create(Nau7802ConfigSchema)` to create a new message. - */ -export const Nau7802ConfigSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 9); - -/** - * - * SEN5X State, for saving to flash - * - * @generated from message meshtastic.SEN5XState - */ -export type SEN5XState = Message<"meshtastic.SEN5XState"> & { - /** - * - * Last cleaning time for SEN5X - * - * @generated from field: uint32 last_cleaning_time = 1; - */ - lastCleaningTime: number; - - /** - * - * Last cleaning time for SEN5X - valid flag - * - * @generated from field: bool last_cleaning_valid = 2; - */ - lastCleaningValid: boolean; - - /** - * - * Config flag for one-shot mode (see admin.proto) - * - * @generated from field: bool one_shot_mode = 3; - */ - oneShotMode: boolean; - - /** - * - * Last VOC state time for SEN55 - * - * @generated from field: optional uint32 voc_state_time = 4; - */ - vocStateTime?: number | undefined; - - /** - * - * Last VOC state validity flag for SEN55 - * - * @generated from field: optional bool voc_state_valid = 5; - */ - vocStateValid?: boolean | undefined; - - /** - * - * VOC state array (8x uint8t) for SEN55 - * - * @generated from field: optional fixed64 voc_state_array = 6; - */ - vocStateArray?: bigint | undefined; -}; - -/** - * Describes the message meshtastic.SEN5XState. - * Use `create(SEN5XStateSchema)` to create a new message. - */ -export const SEN5XStateSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_telemetry, 10); - -/** - * - * Supported I2C Sensors for telemetry in Meshtastic - * - * @generated from enum meshtastic.TelemetrySensorType - */ -export enum TelemetrySensorType { - /** - * - * No external telemetry sensor explicitly set - * - * @generated from enum value: SENSOR_UNSET = 0; - */ - SENSOR_UNSET = 0, - - /** - * - * High accuracy temperature, pressure, humidity - * - * @generated from enum value: BME280 = 1; - */ - BME280 = 1, - - /** - * - * High accuracy temperature, pressure, humidity, and air resistance - * - * @generated from enum value: BME680 = 2; - */ - BME680 = 2, - - /** - * - * Very high accuracy temperature - * - * @generated from enum value: MCP9808 = 3; - */ - MCP9808 = 3, - - /** - * - * Moderate accuracy current and voltage - * - * @generated from enum value: INA260 = 4; - */ - INA260 = 4, - - /** - * - * Moderate accuracy current and voltage - * - * @generated from enum value: INA219 = 5; - */ - INA219 = 5, - - /** - * - * High accuracy temperature and pressure - * - * @generated from enum value: BMP280 = 6; - */ - BMP280 = 6, - - /** - * - * TODO - REMOVE High accuracy temperature and humidity - * - * @generated from enum value: SHTC3 = 7; - */ - SHTC3 = 7, - - /** - * - * High accuracy pressure - * - * @generated from enum value: LPS22 = 8; - */ - LPS22 = 8, - - /** - * - * 3-Axis magnetic sensor - * - * @generated from enum value: QMC6310 = 9; - */ - QMC6310 = 9, - - /** - * - * 6-Axis inertial measurement sensor - * - * @generated from enum value: QMI8658 = 10; - */ - QMI8658 = 10, - - /** - * - * 3-Axis magnetic sensor - * - * @generated from enum value: QMC5883L = 11; - */ - QMC5883L = 11, - - /** - * - * TODO - REMOVE High accuracy temperature and humidity - * - * @generated from enum value: SHT31 = 12; - */ - SHT31 = 12, - - /** - * - * PM2.5 air quality sensor - * - * @generated from enum value: PMSA003I = 13; - */ - PMSA003I = 13, - - /** - * - * INA3221 3 Channel Voltage / Current Sensor - * - * @generated from enum value: INA3221 = 14; - */ - INA3221 = 14, - - /** - * - * BMP085/BMP180 High accuracy temperature and pressure (older Version of BMP280) - * - * @generated from enum value: BMP085 = 15; - */ - BMP085 = 15, - - /** - * - * RCWL-9620 Doppler Radar Distance Sensor, used for water level detection - * - * @generated from enum value: RCWL9620 = 16; - */ - RCWL9620 = 16, - - /** - * - * TODO - REMOVE Sensirion High accuracy temperature and humidity - * - * @generated from enum value: SHT4X = 17; - */ - SHT4X = 17, - - /** - * - * VEML7700 high accuracy ambient light(Lux) digital 16-bit resolution sensor. - * - * @generated from enum value: VEML7700 = 18; - */ - VEML7700 = 18, - - /** - * - * MLX90632 non-contact IR temperature sensor. - * - * @generated from enum value: MLX90632 = 19; - */ - MLX90632 = 19, - - /** - * - * TI OPT3001 Ambient Light Sensor - * - * @generated from enum value: OPT3001 = 20; - */ - OPT3001 = 20, - - /** - * - * Lite On LTR-390UV-01 UV Light Sensor - * - * @generated from enum value: LTR390UV = 21; - */ - LTR390UV = 21, - - /** - * - * AMS TSL25911FN RGB Light Sensor - * - * @generated from enum value: TSL25911FN = 22; - */ - TSL25911FN = 22, - - /** - * - * AHT10 Integrated temperature and humidity sensor - * - * @generated from enum value: AHT10 = 23; - */ - AHT10 = 23, - - /** - * - * DFRobot Lark Weather station (temperature, humidity, pressure, wind speed and direction) - * - * @generated from enum value: DFROBOT_LARK = 24; - */ - DFROBOT_LARK = 24, - - /** - * - * NAU7802 Scale Chip or compatible - * - * @generated from enum value: NAU7802 = 25; - */ - NAU7802 = 25, - - /** - * - * BMP3XX High accuracy temperature and pressure - * - * @generated from enum value: BMP3XX = 26; - */ - BMP3XX = 26, - - /** - * - * ICM-20948 9-Axis digital motion processor - * - * @generated from enum value: ICM20948 = 27; - */ - ICM20948 = 27, - - /** - * - * MAX17048 1S lipo battery sensor (voltage, state of charge, time to go) - * - * @generated from enum value: MAX17048 = 28; - */ - MAX17048 = 28, - - /** - * - * Custom I2C sensor implementation based on https://github.com/meshtastic/i2c-sensor - * - * @generated from enum value: CUSTOM_SENSOR = 29; - */ - CUSTOM_SENSOR = 29, - - /** - * - * MAX30102 Pulse Oximeter and Heart-Rate Sensor - * - * @generated from enum value: MAX30102 = 30; - */ - MAX30102 = 30, - - /** - * - * MLX90614 non-contact IR temperature sensor - * - * @generated from enum value: MLX90614 = 31; - */ - MLX90614 = 31, - - /** - * - * SCD40/SCD41 CO2, humidity, temperature sensor - * - * @generated from enum value: SCD4X = 32; - */ - SCD4X = 32, - - /** - * - * ClimateGuard RadSens, radiation, Geiger-Muller Tube - * - * @generated from enum value: RADSENS = 33; - */ - RADSENS = 33, - - /** - * - * High accuracy current and voltage - * - * @generated from enum value: INA226 = 34; - */ - INA226 = 34, - - /** - * - * DFRobot Gravity tipping bucket rain gauge - * - * @generated from enum value: DFROBOT_RAIN = 35; - */ - DFROBOT_RAIN = 35, - - /** - * - * Infineon DPS310 High accuracy pressure and temperature - * - * @generated from enum value: DPS310 = 36; - */ - DPS310 = 36, - - /** - * - * RAKWireless RAK12035 Soil Moisture Sensor Module - * - * @generated from enum value: RAK12035 = 37; - */ - RAK12035 = 37, - - /** - * - * MAX17261 lipo battery gauge - * - * @generated from enum value: MAX17261 = 38; - */ - MAX17261 = 38, - - /** - * - * PCT2075 Temperature Sensor - * - * @generated from enum value: PCT2075 = 39; - */ - PCT2075 = 39, - - /** - * - * ADS1X15 ADC - * - * @generated from enum value: ADS1X15 = 40; - */ - ADS1X15 = 40, - - /** - * - * ADS1X15 ADC_ALT - * - * @generated from enum value: ADS1X15_ALT = 41; - */ - ADS1X15_ALT = 41, - - /** - * - * Sensirion SFA30 Formaldehyde sensor - * - * @generated from enum value: SFA30 = 42; - */ - SFA30 = 42, - - /** - * - * SEN5X PM SENSORS - * - * @generated from enum value: SEN5X = 43; - */ - SEN5X = 43, - - /** - * - * TSL2561 light sensor - * - * @generated from enum value: TSL2561 = 44; - */ - TSL2561 = 44, - - /** - * - * BH1750 light sensor - * - * @generated from enum value: BH1750 = 45; - */ - BH1750 = 45, - - /** - * - * HDC1080 Temperature and Humidity Sensor - * - * @generated from enum value: HDC1080 = 46; - */ - HDC1080 = 46, - - /** - * - * TODO - REMOVE STH21 Temperature and R. Humidity sensor - * - * @generated from enum value: SHT21 = 47; - */ - SHT21 = 47, - - /** - * - * Sensirion STC31 CO2 sensor - * - * @generated from enum value: STC31 = 48; - */ - STC31 = 48, - - /** - * - * SCD30 CO2, humidity, temperature sensor - * - * @generated from enum value: SCD30 = 49; - */ - SCD30 = 49, - - /** - * - * SHT family of sensors for temperature and humidity - * - * @generated from enum value: SHTXX = 50; - */ - SHTXX = 50, - - /** - * - * DS248X Bridge for one-wire temperature sensors - * - * @generated from enum value: DS248X = 51; - */ - DS248X = 51, - - /** - * - * MMC5983MA 3-Axis Digital Magnetic Sensor - * - * @generated from enum value: MMC5983MA = 52; - */ - MMC5983MA = 52, - - /** - * - * ICM-42607-P 6‑Axis IMU - * - * @generated from enum value: ICM42607P = 53; - */ - ICM42607P = 53, -} - -/** - * Describes the enum meshtastic.TelemetrySensorType. - */ -export const TelemetrySensorTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_telemetry, 0); - diff --git a/packages/protobufs/packages/ts/dist/meshtastic/xmodem_pb.ts b/packages/protobufs/packages/ts/dist/meshtastic/xmodem_pb.ts deleted file mode 100644 index 05da5dde8..000000000 --- a/packages/protobufs/packages/ts/dist/meshtastic/xmodem_pb.ts +++ /dev/null @@ -1,97 +0,0 @@ -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file meshtastic/xmodem.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/xmodem.proto. - */ -export const file_meshtastic_xmodem: GenFile = /*@__PURE__*/ - fileDesc("ChdtZXNodGFzdGljL3htb2RlbS5wcm90bxIKbWVzaHRhc3RpYyK2AQoGWE1vZGVtEisKB2NvbnRyb2wYASABKA4yGi5tZXNodGFzdGljLlhNb2RlbS5Db250cm9sEgsKA3NlcRgCIAEoDRINCgVjcmMxNhgDIAEoDRIOCgZidWZmZXIYBCABKAwiUwoHQ29udHJvbBIHCgNOVUwQABIHCgNTT0gQARIHCgNTVFgQAhIHCgNFT1QQBBIHCgNBQ0sQBhIHCgNOQUsQFRIHCgNDQU4QGBIJCgVDVFJMWhAaQmIKFG9yZy5tZXNodGFzdGljLnByb3RvQgxYbW9kZW1Qcm90b3NaImdpdGh1Yi5jb20vbWVzaHRhc3RpYy9nby9nZW5lcmF0ZWSqAhRNZXNodGFzdGljLlByb3RvYnVmc7oCAGIGcHJvdG8z"); - -/** - * @generated from message meshtastic.XModem - */ -export type XModem = Message<"meshtastic.XModem"> & { - /** - * @generated from field: meshtastic.XModem.Control control = 1; - */ - control: XModem_Control; - - /** - * @generated from field: uint32 seq = 2; - */ - seq: number; - - /** - * @generated from field: uint32 crc16 = 3; - */ - crc16: number; - - /** - * @generated from field: bytes buffer = 4; - */ - buffer: Uint8Array; -}; - -/** - * Describes the message meshtastic.XModem. - * Use `create(XModemSchema)` to create a new message. - */ -export const XModemSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_meshtastic_xmodem, 0); - -/** - * @generated from enum meshtastic.XModem.Control - */ -export enum XModem_Control { - /** - * @generated from enum value: NUL = 0; - */ - NUL = 0, - - /** - * @generated from enum value: SOH = 1; - */ - SOH = 1, - - /** - * @generated from enum value: STX = 2; - */ - STX = 2, - - /** - * @generated from enum value: EOT = 4; - */ - EOT = 4, - - /** - * @generated from enum value: ACK = 6; - */ - ACK = 6, - - /** - * @generated from enum value: NAK = 21; - */ - NAK = 21, - - /** - * @generated from enum value: CAN = 24; - */ - CAN = 24, - - /** - * @generated from enum value: CTRLZ = 26; - */ - CTRLZ = 26, -} - -/** - * Describes the enum meshtastic.XModem.Control. - */ -export const XModem_ControlSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_meshtastic_xmodem, 0, 0); - diff --git a/packages/protobufs/packages/ts/dist/nanopb_pb.ts b/packages/protobufs/packages/ts/dist/nanopb_pb.ts deleted file mode 100644 index db50405e8..000000000 --- a/packages/protobufs/packages/ts/dist/nanopb_pb.ts +++ /dev/null @@ -1,463 +0,0 @@ -// Custom options for defining: -// - Maximum size of string/bytes -// - Maximum number of elements in array -// -// These are used by nanopb to generate statically allocable structures -// for memory-limited environments. - -// @generated by protoc-gen-es v2.12.0 with parameter "target=ts" -// @generated from file nanopb.proto (syntax proto2) -/* eslint-disable */ - -import type { GenEnum, GenExtension, GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2"; -import { enumDesc, extDesc, fileDesc, messageDesc } from "@bufbuild/protobuf/codegenv2"; -import type { EnumOptions, FieldDescriptorProto_Type, FieldOptions, FileOptions, MessageOptions } from "@bufbuild/protobuf/wkt"; -import { file_google_protobuf_descriptor } from "@bufbuild/protobuf/wkt"; -import type { Message } from "@bufbuild/protobuf"; - -/** - * Describes the file nanopb.proto. - */ -export const file_nanopb: GenFile = /*@__PURE__*/ - fileDesc("CgxuYW5vcGIucHJvdG8ipAcKDU5hbm9QQk9wdGlvbnMSEAoIbWF4X3NpemUYASABKAUSEgoKbWF4X2xlbmd0aBgOIAEoBRIRCgltYXhfY291bnQYAiABKAUSJgoIaW50X3NpemUYByABKA4yCC5JbnRTaXplOgpJU19ERUZBVUxUEiQKBHR5cGUYAyABKA4yCi5GaWVsZFR5cGU6CkZUX0RFRkFVTFQSGAoKbG9uZ19uYW1lcxgEIAEoCDoEdHJ1ZRIcCg1wYWNrZWRfc3RydWN0GAUgASgIOgVmYWxzZRIaCgtwYWNrZWRfZW51bRgKIAEoCDoFZmFsc2USGwoMc2tpcF9tZXNzYWdlGAYgASgIOgVmYWxzZRIYCglub191bmlvbnMYCCABKAg6BWZhbHNlEg0KBW1zZ2lkGAkgASgNEh4KD2Fub255bW91c19vbmVvZhgLIAEoCDoFZmFsc2USFQoGcHJvdG8zGAwgASgIOgVmYWxzZRIjChRwcm90bzNfc2luZ3VsYXJfbXNncxgVIAEoCDoFZmFsc2USHQoOZW51bV90b19zdHJpbmcYDSABKAg6BWZhbHNlEhsKDGZpeGVkX2xlbmd0aBgPIAEoCDoFZmFsc2USGgoLZml4ZWRfY291bnQYECABKAg6BWZhbHNlEh4KD3N1Ym1zZ19jYWxsYmFjaxgWIAEoCDoFZmFsc2USLwoMbWFuZ2xlX25hbWVzGBEgASgOMhEuVHlwZW5hbWVNYW5nbGluZzoGTV9OT05FEigKEWNhbGxiYWNrX2RhdGF0eXBlGBIgASgJOg1wYl9jYWxsYmFja190EjQKEWNhbGxiYWNrX2Z1bmN0aW9uGBMgASgJOhlwYl9kZWZhdWx0X2ZpZWxkX2NhbGxiYWNrEjAKDmRlc2NyaXB0b3JzaXplGBQgASgOMg8uRGVzY3JpcHRvclNpemU6B0RTX0FVVE8SGgoLZGVmYXVsdF9oYXMYFyABKAg6BWZhbHNlEg8KB2luY2x1ZGUYGCADKAkSDwoHZXhjbHVkZRgaIAMoCRIPCgdwYWNrYWdlGBkgASgJEkEKDXR5cGVfb3ZlcnJpZGUYGyABKA4yKi5nb29nbGUucHJvdG9idWYuRmllbGREZXNjcmlwdG9yUHJvdG8uVHlwZRIZCgtzb3J0X2J5X3RhZxgcIAEoCDoEdHJ1ZRIuCg1mYWxsYmFja190eXBlGB0gASgOMgouRmllbGRUeXBlOgtGVF9DQUxMQkFDSyppCglGaWVsZFR5cGUSDgoKRlRfREVGQVVMVBAAEg8KC0ZUX0NBTExCQUNLEAESDgoKRlRfUE9JTlRFUhAEEg0KCUZUX1NUQVRJQxACEg0KCUZUX0lHTk9SRRADEg0KCUZUX0lOTElORRAFKkQKB0ludFNpemUSDgoKSVNfREVGQVVMVBAAEggKBElTXzgQCBIJCgVJU18xNhAQEgkKBUlTXzMyECASCQoFSVNfNjQQQCpaChBUeXBlbmFtZU1hbmdsaW5nEgoKBk1fTk9ORRAAEhMKD01fU1RSSVBfUEFDS0FHRRABEg0KCU1fRkxBVFRFThACEhYKEk1fUEFDS0FHRV9JTklUSUFMUxADKkUKDkRlc2NyaXB0b3JTaXplEgsKB0RTX0FVVE8QABIICgREU18xEAESCAoERFNfMhACEggKBERTXzQQBBIICgREU184EAg6VAoObmFub3BiX2ZpbGVvcHQSHC5nb29nbGUucHJvdG9idWYuRmlsZU9wdGlvbnMY8gcgASgLMg4uTmFub1BCT3B0aW9uc1INbmFub3BiRmlsZW9wdDpVCg1uYW5vcGJfbXNnb3B0Eh8uZ29vZ2xlLnByb3RvYnVmLk1lc3NhZ2VPcHRpb25zGPIHIAEoCzIOLk5hbm9QQk9wdGlvbnNSDG5hbm9wYk1zZ29wdDpUCg5uYW5vcGJfZW51bW9wdBIcLmdvb2dsZS5wcm90b2J1Zi5FbnVtT3B0aW9ucxjyByABKAsyDi5OYW5vUEJPcHRpb25zUg1uYW5vcGJFbnVtb3B0OkYKBm5hbm9wYhIdLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMY8gcgASgLMg4uTmFub1BCT3B0aW9uc1IGbmFub3BiQj4KGGZpLmthcHNpLmtvdGkuanBhLm5hbm9wYloiZ2l0aHViLmNvbS9tZXNodGFzdGljL2dvL2dlbmVyYXRlZA", [file_google_protobuf_descriptor]); - -/** - * This is the inner options message, which basically defines options for - * a field. When it is used in message or file scope, it applies to all - * fields. - * - * @generated from message NanoPBOptions - */ -export type NanoPBOptions = Message<"NanoPBOptions"> & { - /** - * Allocated size for 'bytes' and 'string' fields. - * For string fields, this should include the space for null terminator. - * - * @generated from field: optional int32 max_size = 1; - */ - maxSize: number; - - /** - * Maximum length for 'string' fields. Setting this is equivalent - * to setting max_size to a value of length+1. - * - * @generated from field: optional int32 max_length = 14; - */ - maxLength: number; - - /** - * Allocated number of entries in arrays ('repeated' fields) - * - * @generated from field: optional int32 max_count = 2; - */ - maxCount: number; - - /** - * Size of integer fields. Can save some memory if you don't need - * full 32 bits for the value. - * - * @generated from field: optional IntSize int_size = 7 [default = IS_DEFAULT]; - */ - intSize: IntSize; - - /** - * Force type of field (callback or static allocation) - * - * @generated from field: optional FieldType type = 3 [default = FT_DEFAULT]; - */ - type: FieldType; - - /** - * Use long names for enums, i.e. EnumName_EnumValue. - * - * @generated from field: optional bool long_names = 4 [default = true]; - */ - longNames: boolean; - - /** - * Add 'packed' attribute to generated structs. - * Note: this cannot be used on CPUs that break on unaligned - * accesses to variables. - * - * @generated from field: optional bool packed_struct = 5 [default = false]; - */ - packedStruct: boolean; - - /** - * Add 'packed' attribute to generated enums. - * - * @generated from field: optional bool packed_enum = 10 [default = false]; - */ - packedEnum: boolean; - - /** - * Skip this message - * - * @generated from field: optional bool skip_message = 6 [default = false]; - */ - skipMessage: boolean; - - /** - * Generate oneof fields as normal optional fields instead of union. - * - * @generated from field: optional bool no_unions = 8 [default = false]; - */ - noUnions: boolean; - - /** - * integer type tag for a message - * - * @generated from field: optional uint32 msgid = 9; - */ - msgid: number; - - /** - * decode oneof as anonymous union - * - * @generated from field: optional bool anonymous_oneof = 11 [default = false]; - */ - anonymousOneof: boolean; - - /** - * Proto3 singular field does not generate a "has_" flag - * - * @generated from field: optional bool proto3 = 12 [default = false]; - */ - proto3: boolean; - - /** - * Force proto3 messages to have no "has_" flag. - * This was default behavior until nanopb-0.4.0. - * - * @generated from field: optional bool proto3_singular_msgs = 21 [default = false]; - */ - proto3SingularMsgs: boolean; - - /** - * Generate an enum->string mapping function (can take up lots of space). - * - * @generated from field: optional bool enum_to_string = 13 [default = false]; - */ - enumToString: boolean; - - /** - * Generate bytes arrays with fixed length - * - * @generated from field: optional bool fixed_length = 15 [default = false]; - */ - fixedLength: boolean; - - /** - * Generate repeated field with fixed count - * - * @generated from field: optional bool fixed_count = 16 [default = false]; - */ - fixedCount: boolean; - - /** - * Generate message-level callback that is called before decoding submessages. - * This can be used to set callback fields for submsgs inside oneofs. - * - * @generated from field: optional bool submsg_callback = 22 [default = false]; - */ - submsgCallback: boolean; - - /** - * Shorten or remove package names from type names. - * This option applies only on the file level. - * - * @generated from field: optional TypenameMangling mangle_names = 17 [default = M_NONE]; - */ - mangleNames: TypenameMangling; - - /** - * Data type for storage associated with callback fields. - * - * @generated from field: optional string callback_datatype = 18 [default = "pb_callback_t"]; - */ - callbackDatatype: string; - - /** - * Callback function used for encoding and decoding. - * Prior to nanopb-0.4.0, the callback was specified in per-field pb_callback_t - * structure. This is still supported, but does not work inside e.g. oneof or pointer - * fields. Instead, a new method allows specifying a per-message callback that - * will be called for all callback fields in a message type. - * - * @generated from field: optional string callback_function = 19 [default = "pb_default_field_callback"]; - */ - callbackFunction: string; - - /** - * Select the size of field descriptors. This option has to be defined - * for the whole message, not per-field. Usually automatic selection is - * ok, but if it results in compilation errors you can increase the field - * size here. - * - * @generated from field: optional DescriptorSize descriptorsize = 20 [default = DS_AUTO]; - */ - descriptorsize: DescriptorSize; - - /** - * Set default value for has_ fields. - * - * @generated from field: optional bool default_has = 23 [default = false]; - */ - defaultHas: boolean; - - /** - * Extra files to include in generated `.pb.h` - * - * @generated from field: repeated string include = 24; - */ - include: string[]; - - /** - * Automatic includes to exclude from generated `.pb.h` - * Same as nanopb_generator.py command line flag -x. - * - * @generated from field: repeated string exclude = 26; - */ - exclude: string[]; - - /** - * Package name that applies only for nanopb. - * - * @generated from field: optional string package = 25; - */ - package: string; - - /** - * Override type of the field in generated C code. Only to be used with related field types - * - * @generated from field: optional google.protobuf.FieldDescriptorProto.Type type_override = 27; - */ - typeOverride: FieldDescriptorProto_Type; - - /** - * Due to historical reasons, nanopb orders fields in structs by their tag number - * instead of the order in .proto. Set this to false to keep the .proto order. - * The default value will probably change to false in nanopb-0.5.0. - * - * @generated from field: optional bool sort_by_tag = 28 [default = true]; - */ - sortByTag: boolean; - - /** - * Set the FT_DEFAULT field conversion strategy. - * A field that can become a static member of a c struct (e.g. int, bool, etc) - * will be a a static field. - * Fields with dynamic length are converted to either a pointer or a callback. - * - * @generated from field: optional FieldType fallback_type = 29 [default = FT_CALLBACK]; - */ - fallbackType: FieldType; -}; - -/** - * Describes the message NanoPBOptions. - * Use `create(NanoPBOptionsSchema)` to create a new message. - */ -export const NanoPBOptionsSchema: GenMessage = /*@__PURE__*/ - messageDesc(file_nanopb, 0); - -/** - * @generated from enum FieldType - */ -export enum FieldType { - /** - * Automatically decide field type, generate static field if possible. - * - * @generated from enum value: FT_DEFAULT = 0; - */ - FT_DEFAULT = 0, - - /** - * Always generate a callback field. - * - * @generated from enum value: FT_CALLBACK = 1; - */ - FT_CALLBACK = 1, - - /** - * Always generate a dynamically allocated field. - * - * @generated from enum value: FT_POINTER = 4; - */ - FT_POINTER = 4, - - /** - * Generate a static field or raise an exception if not possible. - * - * @generated from enum value: FT_STATIC = 2; - */ - FT_STATIC = 2, - - /** - * Ignore the field completely. - * - * @generated from enum value: FT_IGNORE = 3; - */ - FT_IGNORE = 3, - - /** - * Legacy option, use the separate 'fixed_length' option instead - * - * @generated from enum value: FT_INLINE = 5; - */ - FT_INLINE = 5, -} - -/** - * Describes the enum FieldType. - */ -export const FieldTypeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_nanopb, 0); - -/** - * @generated from enum IntSize - */ -export enum IntSize { - /** - * Default, 32/64bit based on type in .proto - * - * @generated from enum value: IS_DEFAULT = 0; - */ - IS_DEFAULT = 0, - - /** - * @generated from enum value: IS_8 = 8; - */ - IS_8 = 8, - - /** - * @generated from enum value: IS_16 = 16; - */ - IS_16 = 16, - - /** - * @generated from enum value: IS_32 = 32; - */ - IS_32 = 32, - - /** - * @generated from enum value: IS_64 = 64; - */ - IS_64 = 64, -} - -/** - * Describes the enum IntSize. - */ -export const IntSizeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_nanopb, 1); - -/** - * @generated from enum TypenameMangling - */ -export enum TypenameMangling { - /** - * Default, no typename mangling - * - * @generated from enum value: M_NONE = 0; - */ - M_NONE = 0, - - /** - * Strip current package name - * - * @generated from enum value: M_STRIP_PACKAGE = 1; - */ - M_STRIP_PACKAGE = 1, - - /** - * Only use last path component - * - * @generated from enum value: M_FLATTEN = 2; - */ - M_FLATTEN = 2, - - /** - * Replace the package name by the initials - * - * @generated from enum value: M_PACKAGE_INITIALS = 3; - */ - M_PACKAGE_INITIALS = 3, -} - -/** - * Describes the enum TypenameMangling. - */ -export const TypenameManglingSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_nanopb, 2); - -/** - * @generated from enum DescriptorSize - */ -export enum DescriptorSize { - /** - * Select minimal size based on field type - * - * @generated from enum value: DS_AUTO = 0; - */ - DS_AUTO = 0, - - /** - * 1 word; up to 15 byte fields, no arrays - * - * @generated from enum value: DS_1 = 1; - */ - DS_1 = 1, - - /** - * 2 words; up to 4095 byte fields, 4095 entry arrays - * - * @generated from enum value: DS_2 = 2; - */ - DS_2 = 2, - - /** - * 4 words; up to 2^32-1 byte fields, 2^16-1 entry arrays - * - * @generated from enum value: DS_4 = 4; - */ - DS_4 = 4, - - /** - * 8 words; up to 2^32-1 entry arrays - * - * @generated from enum value: DS_8 = 8; - */ - DS_8 = 8, -} - -/** - * Describes the enum DescriptorSize. - */ -export const DescriptorSizeSchema: GenEnum = /*@__PURE__*/ - enumDesc(file_nanopb, 3); - -/** - * @generated from extension: optional NanoPBOptions nanopb_fileopt = 1010; - */ -export const nanopb_fileopt: GenExtension = /*@__PURE__*/ - extDesc(file_nanopb, 0); - -/** - * @generated from extension: optional NanoPBOptions nanopb_msgopt = 1010; - */ -export const nanopb_msgopt: GenExtension = /*@__PURE__*/ - extDesc(file_nanopb, 1); - -/** - * @generated from extension: optional NanoPBOptions nanopb_enumopt = 1010; - */ -export const nanopb_enumopt: GenExtension = /*@__PURE__*/ - extDesc(file_nanopb, 2); - -/** - * @generated from extension: optional NanoPBOptions nanopb = 1010; - */ -export const nanopb: GenExtension = /*@__PURE__*/ - extDesc(file_nanopb, 3); -