// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.6
// 	protoc        v5.29.3
// source: meshtastic/admin.proto

package meshtastic

import (
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

// TODO: REPLACE
type AdminMessage_ConfigType int32

const (
	// TODO: REPLACE
	AdminMessage_DEVICE_CONFIG AdminMessage_ConfigType = 0
	// TODO: REPLACE
	AdminMessage_POSITION_CONFIG AdminMessage_ConfigType = 1
	// TODO: REPLACE
	AdminMessage_POWER_CONFIG AdminMessage_ConfigType = 2
	// TODO: REPLACE
	AdminMessage_NETWORK_CONFIG AdminMessage_ConfigType = 3
	// TODO: REPLACE
	AdminMessage_DISPLAY_CONFIG AdminMessage_ConfigType = 4
	// TODO: REPLACE
	AdminMessage_LORA_CONFIG AdminMessage_ConfigType = 5
	// TODO: REPLACE
	AdminMessage_BLUETOOTH_CONFIG AdminMessage_ConfigType = 6
	// TODO: REPLACE
	AdminMessage_SECURITY_CONFIG AdminMessage_ConfigType = 7
	// Session key config
	AdminMessage_SESSIONKEY_CONFIG AdminMessage_ConfigType = 8
	// device-ui config
	AdminMessage_DEVICEUI_CONFIG AdminMessage_ConfigType = 9
)

// Enum value maps for AdminMessage_ConfigType.
var (
	AdminMessage_ConfigType_name = map[int32]string{
		0: "DEVICE_CONFIG",
		1: "POSITION_CONFIG",
		2: "POWER_CONFIG",
		3: "NETWORK_CONFIG",
		4: "DISPLAY_CONFIG",
		5: "LORA_CONFIG",
		6: "BLUETOOTH_CONFIG",
		7: "SECURITY_CONFIG",
		8: "SESSIONKEY_CONFIG",
		9: "DEVICEUI_CONFIG",
	}
	AdminMessage_ConfigType_value = map[string]int32{
		"DEVICE_CONFIG":     0,
		"POSITION_CONFIG":   1,
		"POWER_CONFIG":      2,
		"NETWORK_CONFIG":    3,
		"DISPLAY_CONFIG":    4,
		"LORA_CONFIG":       5,
		"BLUETOOTH_CONFIG":  6,
		"SECURITY_CONFIG":   7,
		"SESSIONKEY_CONFIG": 8,
		"DEVICEUI_CONFIG":   9,
	}
)

func (x AdminMessage_ConfigType) Enum() *AdminMessage_ConfigType {
	p := new(AdminMessage_ConfigType)
	*p = x
	return p
}

func (x AdminMessage_ConfigType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (AdminMessage_ConfigType) Descriptor() protoreflect.EnumDescriptor {
	return file_meshtastic_admin_proto_enumTypes[0].Descriptor()
}

func (AdminMessage_ConfigType) Type() protoreflect.EnumType {
	return &file_meshtastic_admin_proto_enumTypes[0]
}

func (x AdminMessage_ConfigType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use AdminMessage_ConfigType.Descriptor instead.
func (AdminMessage_ConfigType) EnumDescriptor() ([]byte, []int) {
	return file_meshtastic_admin_proto_rawDescGZIP(), []int{0, 0}
}

// TODO: REPLACE
type AdminMessage_ModuleConfigType int32

const (
	// TODO: REPLACE
	AdminMessage_MQTT_CONFIG AdminMessage_ModuleConfigType = 0
	// TODO: REPLACE
	AdminMessage_SERIAL_CONFIG AdminMessage_ModuleConfigType = 1
	// TODO: REPLACE
	AdminMessage_EXTNOTIF_CONFIG AdminMessage_ModuleConfigType = 2
	// TODO: REPLACE
	AdminMessage_STOREFORWARD_CONFIG AdminMessage_ModuleConfigType = 3
	// TODO: REPLACE
	AdminMessage_RANGETEST_CONFIG AdminMessage_ModuleConfigType = 4
	// TODO: REPLACE
	AdminMessage_TELEMETRY_CONFIG AdminMessage_ModuleConfigType = 5
	// TODO: REPLACE
	AdminMessage_CANNEDMSG_CONFIG AdminMessage_ModuleConfigType = 6
	// TODO: REPLACE
	AdminMessage_AUDIO_CONFIG AdminMessage_ModuleConfigType = 7
	// TODO: REPLACE
	AdminMessage_REMOTEHARDWARE_CONFIG AdminMessage_ModuleConfigType = 8
	// TODO: REPLACE
	AdminMessage_NEIGHBORINFO_CONFIG AdminMessage_ModuleConfigType = 9
	// TODO: REPLACE
	AdminMessage_AMBIENTLIGHTING_CONFIG AdminMessage_ModuleConfigType = 10
	// TODO: REPLACE
	AdminMessage_DETECTIONSENSOR_CONFIG AdminMessage_ModuleConfigType = 11
	// TODO: REPLACE
	AdminMessage_PAXCOUNTER_CONFIG AdminMessage_ModuleConfigType = 12
)

// Enum value maps for AdminMessage_ModuleConfigType.
var (
	AdminMessage_ModuleConfigType_name = map[int32]string{
		0:  "MQTT_CONFIG",
		1:  "SERIAL_CONFIG",
		2:  "EXTNOTIF_CONFIG",
		3:  "STOREFORWARD_CONFIG",
		4:  "RANGETEST_CONFIG",
		5:  "TELEMETRY_CONFIG",
		6:  "CANNEDMSG_CONFIG",
		7:  "AUDIO_CONFIG",
		8:  "REMOTEHARDWARE_CONFIG",
		9:  "NEIGHBORINFO_CONFIG",
		10: "AMBIENTLIGHTING_CONFIG",
		11: "DETECTIONSENSOR_CONFIG",
		12: "PAXCOUNTER_CONFIG",
	}
	AdminMessage_ModuleConfigType_value = map[string]int32{
		"MQTT_CONFIG":            0,
		"SERIAL_CONFIG":          1,
		"EXTNOTIF_CONFIG":        2,
		"STOREFORWARD_CONFIG":    3,
		"RANGETEST_CONFIG":       4,
		"TELEMETRY_CONFIG":       5,
		"CANNEDMSG_CONFIG":       6,
		"AUDIO_CONFIG":           7,
		"REMOTEHARDWARE_CONFIG":  8,
		"NEIGHBORINFO_CONFIG":    9,
		"AMBIENTLIGHTING_CONFIG": 10,
		"DETECTIONSENSOR_CONFIG": 11,
		"PAXCOUNTER_CONFIG":      12,
	}
)

func (x AdminMessage_ModuleConfigType) Enum() *AdminMessage_ModuleConfigType {
	p := new(AdminMessage_ModuleConfigType)
	*p = x
	return p
}

func (x AdminMessage_ModuleConfigType) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (AdminMessage_ModuleConfigType) Descriptor() protoreflect.EnumDescriptor {
	return file_meshtastic_admin_proto_enumTypes[1].Descriptor()
}

func (AdminMessage_ModuleConfigType) Type() protoreflect.EnumType {
	return &file_meshtastic_admin_proto_enumTypes[1]
}

func (x AdminMessage_ModuleConfigType) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use AdminMessage_ModuleConfigType.Descriptor instead.
func (AdminMessage_ModuleConfigType) EnumDescriptor() ([]byte, []int) {
	return file_meshtastic_admin_proto_rawDescGZIP(), []int{0, 1}
}

type AdminMessage_BackupLocation int32

const (
	// Backup to the internal flash
	AdminMessage_FLASH AdminMessage_BackupLocation = 0
	// Backup to the SD card
	AdminMessage_SD AdminMessage_BackupLocation = 1
)

// Enum value maps for AdminMessage_BackupLocation.
var (
	AdminMessage_BackupLocation_name = map[int32]string{
		0: "FLASH",
		1: "SD",
	}
	AdminMessage_BackupLocation_value = map[string]int32{
		"FLASH": 0,
		"SD":    1,
	}
)

func (x AdminMessage_BackupLocation) Enum() *AdminMessage_BackupLocation {
	p := new(AdminMessage_BackupLocation)
	*p = x
	return p
}

func (x AdminMessage_BackupLocation) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (AdminMessage_BackupLocation) Descriptor() protoreflect.EnumDescriptor {
	return file_meshtastic_admin_proto_enumTypes[2].Descriptor()
}

func (AdminMessage_BackupLocation) Type() protoreflect.EnumType {
	return &file_meshtastic_admin_proto_enumTypes[2]
}

func (x AdminMessage_BackupLocation) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use AdminMessage_BackupLocation.Descriptor instead.
func (AdminMessage_BackupLocation) EnumDescriptor() ([]byte, []int) {
	return file_meshtastic_admin_proto_rawDescGZIP(), []int{0, 2}
}

// 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)
type AdminMessage struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// 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.
	SessionPasskey []byte `protobuf:"bytes,101,opt,name=session_passkey,json=sessionPasskey,proto3" json:"session_passkey,omitempty"`
	// TODO: REPLACE
	//
	// Types that are valid to be assigned to PayloadVariant:
	//
	//	*AdminMessage_GetChannelRequest
	//	*AdminMessage_GetChannelResponse
	//	*AdminMessage_GetOwnerRequest
	//	*AdminMessage_GetOwnerResponse
	//	*AdminMessage_GetConfigRequest
	//	*AdminMessage_GetConfigResponse
	//	*AdminMessage_GetModuleConfigRequest
	//	*AdminMessage_GetModuleConfigResponse
	//	*AdminMessage_GetCannedMessageModuleMessagesRequest
	//	*AdminMessage_GetCannedMessageModuleMessagesResponse
	//	*AdminMessage_GetDeviceMetadataRequest
	//	*AdminMessage_GetDeviceMetadataResponse
	//	*AdminMessage_GetRingtoneRequest
	//	*AdminMessage_GetRingtoneResponse
	//	*AdminMessage_GetDeviceConnectionStatusRequest
	//	*AdminMessage_GetDeviceConnectionStatusResponse
	//	*AdminMessage_SetHamMode
	//	*AdminMessage_GetNodeRemoteHardwarePinsRequest
	//	*AdminMessage_GetNodeRemoteHardwarePinsResponse
	//	*AdminMessage_EnterDfuModeRequest
	//	*AdminMessage_DeleteFileRequest
	//	*AdminMessage_SetScale
	//	*AdminMessage_BackupPreferences
	//	*AdminMessage_RestorePreferences
	//	*AdminMessage_RemoveBackupPreferences
	//	*AdminMessage_SetOwner
	//	*AdminMessage_SetChannel
	//	*AdminMessage_SetConfig
	//	*AdminMessage_SetModuleConfig
	//	*AdminMessage_SetCannedMessageModuleMessages
	//	*AdminMessage_SetRingtoneMessage
	//	*AdminMessage_RemoveByNodenum
	//	*AdminMessage_SetFavoriteNode
	//	*AdminMessage_RemoveFavoriteNode
	//	*AdminMessage_SetFixedPosition
	//	*AdminMessage_RemoveFixedPosition
	//	*AdminMessage_SetTimeOnly
	//	*AdminMessage_GetUiConfigRequest
	//	*AdminMessage_GetUiConfigResponse
	//	*AdminMessage_StoreUiConfig
	//	*AdminMessage_SetIgnoredNode
	//	*AdminMessage_RemoveIgnoredNode
	//	*AdminMessage_BeginEditSettings
	//	*AdminMessage_CommitEditSettings
	//	*AdminMessage_FactoryResetDevice
	//	*AdminMessage_RebootOtaSeconds
	//	*AdminMessage_ExitSimulator
	//	*AdminMessage_RebootSeconds
	//	*AdminMessage_ShutdownSeconds
	//	*AdminMessage_FactoryResetConfig
	//	*AdminMessage_NodedbReset
	PayloadVariant isAdminMessage_PayloadVariant `protobuf_oneof:"payload_variant"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *AdminMessage) Reset() {
	*x = AdminMessage{}
	mi := &file_meshtastic_admin_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *AdminMessage) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*AdminMessage) ProtoMessage() {}

func (x *AdminMessage) ProtoReflect() protoreflect.Message {
	mi := &file_meshtastic_admin_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use AdminMessage.ProtoReflect.Descriptor instead.
func (*AdminMessage) Descriptor() ([]byte, []int) {
	return file_meshtastic_admin_proto_rawDescGZIP(), []int{0}
}

func (x *AdminMessage) GetSessionPasskey() []byte {
	if x != nil {
		return x.SessionPasskey
	}
	return nil
}

func (x *AdminMessage) GetPayloadVariant() isAdminMessage_PayloadVariant {
	if x != nil {
		return x.PayloadVariant
	}
	return nil
}

func (x *AdminMessage) GetGetChannelRequest() uint32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetChannelRequest); ok {
			return x.GetChannelRequest
		}
	}
	return 0
}

func (x *AdminMessage) GetGetChannelResponse() *Channel {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetChannelResponse); ok {
			return x.GetChannelResponse
		}
	}
	return nil
}

func (x *AdminMessage) GetGetOwnerRequest() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetOwnerRequest); ok {
			return x.GetOwnerRequest
		}
	}
	return false
}

func (x *AdminMessage) GetGetOwnerResponse() *User {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetOwnerResponse); ok {
			return x.GetOwnerResponse
		}
	}
	return nil
}

func (x *AdminMessage) GetGetConfigRequest() AdminMessage_ConfigType {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetConfigRequest); ok {
			return x.GetConfigRequest
		}
	}
	return AdminMessage_DEVICE_CONFIG
}

func (x *AdminMessage) GetGetConfigResponse() *Config {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetConfigResponse); ok {
			return x.GetConfigResponse
		}
	}
	return nil
}

func (x *AdminMessage) GetGetModuleConfigRequest() AdminMessage_ModuleConfigType {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetModuleConfigRequest); ok {
			return x.GetModuleConfigRequest
		}
	}
	return AdminMessage_MQTT_CONFIG
}

func (x *AdminMessage) GetGetModuleConfigResponse() *ModuleConfig {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetModuleConfigResponse); ok {
			return x.GetModuleConfigResponse
		}
	}
	return nil
}

func (x *AdminMessage) GetGetCannedMessageModuleMessagesRequest() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetCannedMessageModuleMessagesRequest); ok {
			return x.GetCannedMessageModuleMessagesRequest
		}
	}
	return false
}

func (x *AdminMessage) GetGetCannedMessageModuleMessagesResponse() string {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetCannedMessageModuleMessagesResponse); ok {
			return x.GetCannedMessageModuleMessagesResponse
		}
	}
	return ""
}

func (x *AdminMessage) GetGetDeviceMetadataRequest() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetDeviceMetadataRequest); ok {
			return x.GetDeviceMetadataRequest
		}
	}
	return false
}

func (x *AdminMessage) GetGetDeviceMetadataResponse() *DeviceMetadata {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetDeviceMetadataResponse); ok {
			return x.GetDeviceMetadataResponse
		}
	}
	return nil
}

func (x *AdminMessage) GetGetRingtoneRequest() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetRingtoneRequest); ok {
			return x.GetRingtoneRequest
		}
	}
	return false
}

func (x *AdminMessage) GetGetRingtoneResponse() string {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetRingtoneResponse); ok {
			return x.GetRingtoneResponse
		}
	}
	return ""
}

func (x *AdminMessage) GetGetDeviceConnectionStatusRequest() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetDeviceConnectionStatusRequest); ok {
			return x.GetDeviceConnectionStatusRequest
		}
	}
	return false
}

func (x *AdminMessage) GetGetDeviceConnectionStatusResponse() *DeviceConnectionStatus {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetDeviceConnectionStatusResponse); ok {
			return x.GetDeviceConnectionStatusResponse
		}
	}
	return nil
}

func (x *AdminMessage) GetSetHamMode() *HamParameters {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetHamMode); ok {
			return x.SetHamMode
		}
	}
	return nil
}

func (x *AdminMessage) GetGetNodeRemoteHardwarePinsRequest() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetNodeRemoteHardwarePinsRequest); ok {
			return x.GetNodeRemoteHardwarePinsRequest
		}
	}
	return false
}

func (x *AdminMessage) GetGetNodeRemoteHardwarePinsResponse() *NodeRemoteHardwarePinsResponse {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetNodeRemoteHardwarePinsResponse); ok {
			return x.GetNodeRemoteHardwarePinsResponse
		}
	}
	return nil
}

func (x *AdminMessage) GetEnterDfuModeRequest() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_EnterDfuModeRequest); ok {
			return x.EnterDfuModeRequest
		}
	}
	return false
}

func (x *AdminMessage) GetDeleteFileRequest() string {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_DeleteFileRequest); ok {
			return x.DeleteFileRequest
		}
	}
	return ""
}

func (x *AdminMessage) GetSetScale() uint32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetScale); ok {
			return x.SetScale
		}
	}
	return 0
}

func (x *AdminMessage) GetBackupPreferences() AdminMessage_BackupLocation {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_BackupPreferences); ok {
			return x.BackupPreferences
		}
	}
	return AdminMessage_FLASH
}

func (x *AdminMessage) GetRestorePreferences() AdminMessage_BackupLocation {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_RestorePreferences); ok {
			return x.RestorePreferences
		}
	}
	return AdminMessage_FLASH
}

func (x *AdminMessage) GetRemoveBackupPreferences() AdminMessage_BackupLocation {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_RemoveBackupPreferences); ok {
			return x.RemoveBackupPreferences
		}
	}
	return AdminMessage_FLASH
}

func (x *AdminMessage) GetSetOwner() *User {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetOwner); ok {
			return x.SetOwner
		}
	}
	return nil
}

func (x *AdminMessage) GetSetChannel() *Channel {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetChannel); ok {
			return x.SetChannel
		}
	}
	return nil
}

func (x *AdminMessage) GetSetConfig() *Config {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetConfig); ok {
			return x.SetConfig
		}
	}
	return nil
}

func (x *AdminMessage) GetSetModuleConfig() *ModuleConfig {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetModuleConfig); ok {
			return x.SetModuleConfig
		}
	}
	return nil
}

func (x *AdminMessage) GetSetCannedMessageModuleMessages() string {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetCannedMessageModuleMessages); ok {
			return x.SetCannedMessageModuleMessages
		}
	}
	return ""
}

func (x *AdminMessage) GetSetRingtoneMessage() string {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetRingtoneMessage); ok {
			return x.SetRingtoneMessage
		}
	}
	return ""
}

func (x *AdminMessage) GetRemoveByNodenum() uint32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_RemoveByNodenum); ok {
			return x.RemoveByNodenum
		}
	}
	return 0
}

func (x *AdminMessage) GetSetFavoriteNode() uint32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetFavoriteNode); ok {
			return x.SetFavoriteNode
		}
	}
	return 0
}

func (x *AdminMessage) GetRemoveFavoriteNode() uint32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_RemoveFavoriteNode); ok {
			return x.RemoveFavoriteNode
		}
	}
	return 0
}

func (x *AdminMessage) GetSetFixedPosition() *Position {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetFixedPosition); ok {
			return x.SetFixedPosition
		}
	}
	return nil
}

func (x *AdminMessage) GetRemoveFixedPosition() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_RemoveFixedPosition); ok {
			return x.RemoveFixedPosition
		}
	}
	return false
}

func (x *AdminMessage) GetSetTimeOnly() uint32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetTimeOnly); ok {
			return x.SetTimeOnly
		}
	}
	return 0
}

func (x *AdminMessage) GetGetUiConfigRequest() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetUiConfigRequest); ok {
			return x.GetUiConfigRequest
		}
	}
	return false
}

func (x *AdminMessage) GetGetUiConfigResponse() *DeviceUIConfig {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_GetUiConfigResponse); ok {
			return x.GetUiConfigResponse
		}
	}
	return nil
}

func (x *AdminMessage) GetStoreUiConfig() *DeviceUIConfig {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_StoreUiConfig); ok {
			return x.StoreUiConfig
		}
	}
	return nil
}

func (x *AdminMessage) GetSetIgnoredNode() uint32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_SetIgnoredNode); ok {
			return x.SetIgnoredNode
		}
	}
	return 0
}

func (x *AdminMessage) GetRemoveIgnoredNode() uint32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_RemoveIgnoredNode); ok {
			return x.RemoveIgnoredNode
		}
	}
	return 0
}

func (x *AdminMessage) GetBeginEditSettings() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_BeginEditSettings); ok {
			return x.BeginEditSettings
		}
	}
	return false
}

func (x *AdminMessage) GetCommitEditSettings() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_CommitEditSettings); ok {
			return x.CommitEditSettings
		}
	}
	return false
}

func (x *AdminMessage) GetFactoryResetDevice() int32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_FactoryResetDevice); ok {
			return x.FactoryResetDevice
		}
	}
	return 0
}

func (x *AdminMessage) GetRebootOtaSeconds() int32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_RebootOtaSeconds); ok {
			return x.RebootOtaSeconds
		}
	}
	return 0
}

func (x *AdminMessage) GetExitSimulator() bool {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_ExitSimulator); ok {
			return x.ExitSimulator
		}
	}
	return false
}

func (x *AdminMessage) GetRebootSeconds() int32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_RebootSeconds); ok {
			return x.RebootSeconds
		}
	}
	return 0
}

func (x *AdminMessage) GetShutdownSeconds() int32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_ShutdownSeconds); ok {
			return x.ShutdownSeconds
		}
	}
	return 0
}

func (x *AdminMessage) GetFactoryResetConfig() int32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_FactoryResetConfig); ok {
			return x.FactoryResetConfig
		}
	}
	return 0
}

func (x *AdminMessage) GetNodedbReset() int32 {
	if x != nil {
		if x, ok := x.PayloadVariant.(*AdminMessage_NodedbReset); ok {
			return x.NodedbReset
		}
	}
	return 0
}

type isAdminMessage_PayloadVariant interface {
	isAdminMessage_PayloadVariant()
}

type AdminMessage_GetChannelRequest struct {
	// 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)
	GetChannelRequest uint32 `protobuf:"varint,1,opt,name=get_channel_request,json=getChannelRequest,proto3,oneof"`
}

type AdminMessage_GetChannelResponse struct {
	// TODO: REPLACE
	GetChannelResponse *Channel `protobuf:"bytes,2,opt,name=get_channel_response,json=getChannelResponse,proto3,oneof"`
}

type AdminMessage_GetOwnerRequest struct {
	// Send the current owner data in the response to this message.
	GetOwnerRequest bool `protobuf:"varint,3,opt,name=get_owner_request,json=getOwnerRequest,proto3,oneof"`
}

type AdminMessage_GetOwnerResponse struct {
	// TODO: REPLACE
	GetOwnerResponse *User `protobuf:"bytes,4,opt,name=get_owner_response,json=getOwnerResponse,proto3,oneof"`
}

type AdminMessage_GetConfigRequest struct {
	// Ask for the following config data to be sent
	GetConfigRequest AdminMessage_ConfigType `protobuf:"varint,5,opt,name=get_config_request,json=getConfigRequest,proto3,enum=meshtastic.AdminMessage_ConfigType,oneof"`
}

type AdminMessage_GetConfigResponse struct {
	// Send the current Config in the response to this message.
	GetConfigResponse *Config `protobuf:"bytes,6,opt,name=get_config_response,json=getConfigResponse,proto3,oneof"`
}

type AdminMessage_GetModuleConfigRequest struct {
	// Ask for the following config data to be sent
	GetModuleConfigRequest AdminMessage_ModuleConfigType `protobuf:"varint,7,opt,name=get_module_config_request,json=getModuleConfigRequest,proto3,enum=meshtastic.AdminMessage_ModuleConfigType,oneof"`
}

type AdminMessage_GetModuleConfigResponse struct {
	// Send the current Config in the response to this message.
	GetModuleConfigResponse *ModuleConfig `protobuf:"bytes,8,opt,name=get_module_config_response,json=getModuleConfigResponse,proto3,oneof"`
}

type AdminMessage_GetCannedMessageModuleMessagesRequest struct {
	// Get the Canned Message Module messages in the response to this message.
	GetCannedMessageModuleMessagesRequest bool `protobuf:"varint,10,opt,name=get_canned_message_module_messages_request,json=getCannedMessageModuleMessagesRequest,proto3,oneof"`
}

type AdminMessage_GetCannedMessageModuleMessagesResponse struct {
	// Get the Canned Message Module messages in the response to this message.
	GetCannedMessageModuleMessagesResponse string `protobuf:"bytes,11,opt,name=get_canned_message_module_messages_response,json=getCannedMessageModuleMessagesResponse,proto3,oneof"`
}

type AdminMessage_GetDeviceMetadataRequest struct {
	// Request the node to send device metadata (firmware, protobuf version, etc)
	GetDeviceMetadataRequest bool `protobuf:"varint,12,opt,name=get_device_metadata_request,json=getDeviceMetadataRequest,proto3,oneof"`
}

type AdminMessage_GetDeviceMetadataResponse struct {
	// Device metadata response
	GetDeviceMetadataResponse *DeviceMetadata `protobuf:"bytes,13,opt,name=get_device_metadata_response,json=getDeviceMetadataResponse,proto3,oneof"`
}

type AdminMessage_GetRingtoneRequest struct {
	// Get the Ringtone in the response to this message.
	GetRingtoneRequest bool `protobuf:"varint,14,opt,name=get_ringtone_request,json=getRingtoneRequest,proto3,oneof"`
}

type AdminMessage_GetRingtoneResponse struct {
	// Get the Ringtone in the response to this message.
	GetRingtoneResponse string `protobuf:"bytes,15,opt,name=get_ringtone_response,json=getRingtoneResponse,proto3,oneof"`
}

type AdminMessage_GetDeviceConnectionStatusRequest struct {
	// Request the node to send it's connection status
	GetDeviceConnectionStatusRequest bool `protobuf:"varint,16,opt,name=get_device_connection_status_request,json=getDeviceConnectionStatusRequest,proto3,oneof"`
}

type AdminMessage_GetDeviceConnectionStatusResponse struct {
	// Device connection status response
	GetDeviceConnectionStatusResponse *DeviceConnectionStatus `protobuf:"bytes,17,opt,name=get_device_connection_status_response,json=getDeviceConnectionStatusResponse,proto3,oneof"`
}

type AdminMessage_SetHamMode struct {
	// Setup a node for licensed amateur (ham) radio operation
	SetHamMode *HamParameters `protobuf:"bytes,18,opt,name=set_ham_mode,json=setHamMode,proto3,oneof"`
}

type AdminMessage_GetNodeRemoteHardwarePinsRequest struct {
	// Get the mesh's nodes with their available gpio pins for RemoteHardware module use
	GetNodeRemoteHardwarePinsRequest bool `protobuf:"varint,19,opt,name=get_node_remote_hardware_pins_request,json=getNodeRemoteHardwarePinsRequest,proto3,oneof"`
}

type AdminMessage_GetNodeRemoteHardwarePinsResponse struct {
	// Respond with the mesh's nodes with their available gpio pins for RemoteHardware module use
	GetNodeRemoteHardwarePinsResponse *NodeRemoteHardwarePinsResponse `protobuf:"bytes,20,opt,name=get_node_remote_hardware_pins_response,json=getNodeRemoteHardwarePinsResponse,proto3,oneof"`
}

type AdminMessage_EnterDfuModeRequest struct {
	// Enter (UF2) DFU mode
	// Only implemented on NRF52 currently
	EnterDfuModeRequest bool `protobuf:"varint,21,opt,name=enter_dfu_mode_request,json=enterDfuModeRequest,proto3,oneof"`
}

type AdminMessage_DeleteFileRequest struct {
	// Delete the file by the specified path from the device
	DeleteFileRequest string `protobuf:"bytes,22,opt,name=delete_file_request,json=deleteFileRequest,proto3,oneof"`
}

type AdminMessage_SetScale struct {
	// Set zero and offset for scale chips
	SetScale uint32 `protobuf:"varint,23,opt,name=set_scale,json=setScale,proto3,oneof"`
}

type AdminMessage_BackupPreferences struct {
	// Backup the node's preferences
	BackupPreferences AdminMessage_BackupLocation `protobuf:"varint,24,opt,name=backup_preferences,json=backupPreferences,proto3,enum=meshtastic.AdminMessage_BackupLocation,oneof"`
}

type AdminMessage_RestorePreferences struct {
	// Restore the node's preferences
	RestorePreferences AdminMessage_BackupLocation `protobuf:"varint,25,opt,name=restore_preferences,json=restorePreferences,proto3,enum=meshtastic.AdminMessage_BackupLocation,oneof"`
}

type AdminMessage_RemoveBackupPreferences struct {
	// Remove backups of the node's preferences
	RemoveBackupPreferences AdminMessage_BackupLocation `protobuf:"varint,26,opt,name=remove_backup_preferences,json=removeBackupPreferences,proto3,enum=meshtastic.AdminMessage_BackupLocation,oneof"`
}

type AdminMessage_SetOwner struct {
	// Set the owner for this node
	SetOwner *User `protobuf:"bytes,32,opt,name=set_owner,json=setOwner,proto3,oneof"`
}

type AdminMessage_SetChannel struct {
	// 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.
	SetChannel *Channel `protobuf:"bytes,33,opt,name=set_channel,json=setChannel,proto3,oneof"`
}

type AdminMessage_SetConfig struct {
	// Set the current Config
	SetConfig *Config `protobuf:"bytes,34,opt,name=set_config,json=setConfig,proto3,oneof"`
}

type AdminMessage_SetModuleConfig struct {
	// Set the current Config
	SetModuleConfig *ModuleConfig `protobuf:"bytes,35,opt,name=set_module_config,json=setModuleConfig,proto3,oneof"`
}

type AdminMessage_SetCannedMessageModuleMessages struct {
	// Set the Canned Message Module messages text.
	SetCannedMessageModuleMessages string `protobuf:"bytes,36,opt,name=set_canned_message_module_messages,json=setCannedMessageModuleMessages,proto3,oneof"`
}

type AdminMessage_SetRingtoneMessage struct {
	// Set the ringtone for ExternalNotification.
	SetRingtoneMessage string `protobuf:"bytes,37,opt,name=set_ringtone_message,json=setRingtoneMessage,proto3,oneof"`
}

type AdminMessage_RemoveByNodenum struct {
	// Remove the node by the specified node-num from the NodeDB on the device
	RemoveByNodenum uint32 `protobuf:"varint,38,opt,name=remove_by_nodenum,json=removeByNodenum,proto3,oneof"`
}

type AdminMessage_SetFavoriteNode struct {
	// Set specified node-num to be favorited on the NodeDB on the device
	SetFavoriteNode uint32 `protobuf:"varint,39,opt,name=set_favorite_node,json=setFavoriteNode,proto3,oneof"`
}

type AdminMessage_RemoveFavoriteNode struct {
	// Set specified node-num to be un-favorited on the NodeDB on the device
	RemoveFavoriteNode uint32 `protobuf:"varint,40,opt,name=remove_favorite_node,json=removeFavoriteNode,proto3,oneof"`
}

type AdminMessage_SetFixedPosition struct {
	// Set fixed position data on the node and then set the position.fixed_position = true
	SetFixedPosition *Position `protobuf:"bytes,41,opt,name=set_fixed_position,json=setFixedPosition,proto3,oneof"`
}

type AdminMessage_RemoveFixedPosition struct {
	// Clear fixed position coordinates and then set position.fixed_position = false
	RemoveFixedPosition bool `protobuf:"varint,42,opt,name=remove_fixed_position,json=removeFixedPosition,proto3,oneof"`
}

type AdminMessage_SetTimeOnly struct {
	// Set time only on the node
	// Convenience method to set the time on the node (as Net quality) without any other position data
	SetTimeOnly uint32 `protobuf:"fixed32,43,opt,name=set_time_only,json=setTimeOnly,proto3,oneof"`
}

type AdminMessage_GetUiConfigRequest struct {
	// Tell the node to send the stored ui data.
	GetUiConfigRequest bool `protobuf:"varint,44,opt,name=get_ui_config_request,json=getUiConfigRequest,proto3,oneof"`
}

type AdminMessage_GetUiConfigResponse struct {
	// Reply stored device ui data.
	GetUiConfigResponse *DeviceUIConfig `protobuf:"bytes,45,opt,name=get_ui_config_response,json=getUiConfigResponse,proto3,oneof"`
}

type AdminMessage_StoreUiConfig struct {
	// Tell the node to store UI data persistently.
	StoreUiConfig *DeviceUIConfig `protobuf:"bytes,46,opt,name=store_ui_config,json=storeUiConfig,proto3,oneof"`
}

type AdminMessage_SetIgnoredNode struct {
	// Set specified node-num to be ignored on the NodeDB on the device
	SetIgnoredNode uint32 `protobuf:"varint,47,opt,name=set_ignored_node,json=setIgnoredNode,proto3,oneof"`
}

type AdminMessage_RemoveIgnoredNode struct {
	// Set specified node-num to be un-ignored on the NodeDB on the device
	RemoveIgnoredNode uint32 `protobuf:"varint,48,opt,name=remove_ignored_node,json=removeIgnoredNode,proto3,oneof"`
}

type AdminMessage_BeginEditSettings struct {
	// 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)
	BeginEditSettings bool `protobuf:"varint,64,opt,name=begin_edit_settings,json=beginEditSettings,proto3,oneof"`
}

type AdminMessage_CommitEditSettings struct {
	// Commits an open transaction for any edits made to config, module config, owner, and channel settings
	CommitEditSettings bool `protobuf:"varint,65,opt,name=commit_edit_settings,json=commitEditSettings,proto3,oneof"`
}

type AdminMessage_FactoryResetDevice struct {
	// 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.
	FactoryResetDevice int32 `protobuf:"varint,94,opt,name=factory_reset_device,json=factoryResetDevice,proto3,oneof"`
}

type AdminMessage_RebootOtaSeconds struct {
	// 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.
	RebootOtaSeconds int32 `protobuf:"varint,95,opt,name=reboot_ota_seconds,json=rebootOtaSeconds,proto3,oneof"`
}

type AdminMessage_ExitSimulator struct {
	// This message is only supported for the simulator Portduino build.
	// If received the simulator will exit successfully.
	ExitSimulator bool `protobuf:"varint,96,opt,name=exit_simulator,json=exitSimulator,proto3,oneof"`
}

type AdminMessage_RebootSeconds struct {
	// Tell the node to reboot in this many seconds (or <0 to cancel reboot)
	RebootSeconds int32 `protobuf:"varint,97,opt,name=reboot_seconds,json=rebootSeconds,proto3,oneof"`
}

type AdminMessage_ShutdownSeconds struct {
	// Tell the node to shutdown in this many seconds (or <0 to cancel shutdown)
	ShutdownSeconds int32 `protobuf:"varint,98,opt,name=shutdown_seconds,json=shutdownSeconds,proto3,oneof"`
}

type AdminMessage_FactoryResetConfig struct {
	// Tell the node to factory reset config; all device state and configuration will be returned to factory defaults; BLE bonds will be preserved.
	FactoryResetConfig int32 `protobuf:"varint,99,opt,name=factory_reset_config,json=factoryResetConfig,proto3,oneof"`
}

type AdminMessage_NodedbReset struct {
	// Tell the node to reset the nodedb.
	NodedbReset int32 `protobuf:"varint,100,opt,name=nodedb_reset,json=nodedbReset,proto3,oneof"`
}

func (*AdminMessage_GetChannelRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetChannelResponse) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetOwnerRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetOwnerResponse) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetConfigRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetConfigResponse) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetModuleConfigRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetModuleConfigResponse) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetCannedMessageModuleMessagesRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetCannedMessageModuleMessagesResponse) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetDeviceMetadataRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetDeviceMetadataResponse) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetRingtoneRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetRingtoneResponse) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetDeviceConnectionStatusRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetDeviceConnectionStatusResponse) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetHamMode) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetNodeRemoteHardwarePinsRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetNodeRemoteHardwarePinsResponse) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_EnterDfuModeRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_DeleteFileRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetScale) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_BackupPreferences) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_RestorePreferences) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_RemoveBackupPreferences) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetOwner) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetChannel) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetConfig) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetModuleConfig) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetCannedMessageModuleMessages) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetRingtoneMessage) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_RemoveByNodenum) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetFavoriteNode) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_RemoveFavoriteNode) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetFixedPosition) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_RemoveFixedPosition) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetTimeOnly) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetUiConfigRequest) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_GetUiConfigResponse) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_StoreUiConfig) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_SetIgnoredNode) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_RemoveIgnoredNode) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_BeginEditSettings) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_CommitEditSettings) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_FactoryResetDevice) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_RebootOtaSeconds) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_ExitSimulator) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_RebootSeconds) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_ShutdownSeconds) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_FactoryResetConfig) isAdminMessage_PayloadVariant() {}

func (*AdminMessage_NodedbReset) isAdminMessage_PayloadVariant() {}

// Parameters for setting up Meshtastic for ameteur radio usage
type HamParameters struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Amateur radio call sign, eg. KD2ABC
	CallSign string `protobuf:"bytes,1,opt,name=call_sign,json=callSign,proto3" json:"call_sign,omitempty"`
	// Transmit power in dBm at the LoRA transceiver, not including any amplification
	TxPower int32 `protobuf:"varint,2,opt,name=tx_power,json=txPower,proto3" json:"tx_power,omitempty"`
	// 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.
	Frequency float32 `protobuf:"fixed32,3,opt,name=frequency,proto3" json:"frequency,omitempty"`
	// Optional short name of user
	ShortName     string `protobuf:"bytes,4,opt,name=short_name,json=shortName,proto3" json:"short_name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *HamParameters) Reset() {
	*x = HamParameters{}
	mi := &file_meshtastic_admin_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *HamParameters) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*HamParameters) ProtoMessage() {}

func (x *HamParameters) ProtoReflect() protoreflect.Message {
	mi := &file_meshtastic_admin_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use HamParameters.ProtoReflect.Descriptor instead.
func (*HamParameters) Descriptor() ([]byte, []int) {
	return file_meshtastic_admin_proto_rawDescGZIP(), []int{1}
}

func (x *HamParameters) GetCallSign() string {
	if x != nil {
		return x.CallSign
	}
	return ""
}

func (x *HamParameters) GetTxPower() int32 {
	if x != nil {
		return x.TxPower
	}
	return 0
}

func (x *HamParameters) GetFrequency() float32 {
	if x != nil {
		return x.Frequency
	}
	return 0
}

func (x *HamParameters) GetShortName() string {
	if x != nil {
		return x.ShortName
	}
	return ""
}

// Response envelope for node_remote_hardware_pins
type NodeRemoteHardwarePinsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Nodes and their respective remote hardware GPIO pins
	NodeRemoteHardwarePins []*NodeRemoteHardwarePin `protobuf:"bytes,1,rep,name=node_remote_hardware_pins,json=nodeRemoteHardwarePins,proto3" json:"node_remote_hardware_pins,omitempty"`
	unknownFields          protoimpl.UnknownFields
	sizeCache              protoimpl.SizeCache
}

func (x *NodeRemoteHardwarePinsResponse) Reset() {
	*x = NodeRemoteHardwarePinsResponse{}
	mi := &file_meshtastic_admin_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *NodeRemoteHardwarePinsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*NodeRemoteHardwarePinsResponse) ProtoMessage() {}

func (x *NodeRemoteHardwarePinsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_meshtastic_admin_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use NodeRemoteHardwarePinsResponse.ProtoReflect.Descriptor instead.
func (*NodeRemoteHardwarePinsResponse) Descriptor() ([]byte, []int) {
	return file_meshtastic_admin_proto_rawDescGZIP(), []int{2}
}

func (x *NodeRemoteHardwarePinsResponse) GetNodeRemoteHardwarePins() []*NodeRemoteHardwarePin {
	if x != nil {
		return x.NodeRemoteHardwarePins
	}
	return nil
}

var File_meshtastic_admin_proto protoreflect.FileDescriptor

const file_meshtastic_admin_proto_rawDesc = "" +
	"\n" +
	"\x16meshtastic/admin.proto\x12\n" +
	"meshtastic\x1a\x18meshtastic/channel.proto\x1a\x17meshtastic/config.proto\x1a\"meshtastic/connection_status.proto\x1a\x15meshtastic/mesh.proto\x1a\x1emeshtastic/module_config.proto\x1a\x1ameshtastic/device_ui.proto\"\xfd\x1e\n" +
	"\fAdminMessage\x12'\n" +
	"\x0fsession_passkey\x18e \x01(\fR\x0esessionPasskey\x120\n" +
	"\x13get_channel_request\x18\x01 \x01(\rH\x00R\x11getChannelRequest\x12G\n" +
	"\x14get_channel_response\x18\x02 \x01(\v2\x13.meshtastic.ChannelH\x00R\x12getChannelResponse\x12,\n" +
	"\x11get_owner_request\x18\x03 \x01(\bH\x00R\x0fgetOwnerRequest\x12@\n" +
	"\x12get_owner_response\x18\x04 \x01(\v2\x10.meshtastic.UserH\x00R\x10getOwnerResponse\x12S\n" +
	"\x12get_config_request\x18\x05 \x01(\x0e2#.meshtastic.AdminMessage.ConfigTypeH\x00R\x10getConfigRequest\x12D\n" +
	"\x13get_config_response\x18\x06 \x01(\v2\x12.meshtastic.ConfigH\x00R\x11getConfigResponse\x12f\n" +
	"\x19get_module_config_request\x18\a \x01(\x0e2).meshtastic.AdminMessage.ModuleConfigTypeH\x00R\x16getModuleConfigRequest\x12W\n" +
	"\x1aget_module_config_response\x18\b \x01(\v2\x18.meshtastic.ModuleConfigH\x00R\x17getModuleConfigResponse\x12[\n" +
	"*get_canned_message_module_messages_request\x18\n" +
	" \x01(\bH\x00R%getCannedMessageModuleMessagesRequest\x12]\n" +
	"+get_canned_message_module_messages_response\x18\v \x01(\tH\x00R&getCannedMessageModuleMessagesResponse\x12?\n" +
	"\x1bget_device_metadata_request\x18\f \x01(\bH\x00R\x18getDeviceMetadataRequest\x12]\n" +
	"\x1cget_device_metadata_response\x18\r \x01(\v2\x1a.meshtastic.DeviceMetadataH\x00R\x19getDeviceMetadataResponse\x122\n" +
	"\x14get_ringtone_request\x18\x0e \x01(\bH\x00R\x12getRingtoneRequest\x124\n" +
	"\x15get_ringtone_response\x18\x0f \x01(\tH\x00R\x13getRingtoneResponse\x12P\n" +
	"$get_device_connection_status_request\x18\x10 \x01(\bH\x00R getDeviceConnectionStatusRequest\x12v\n" +
	"%get_device_connection_status_response\x18\x11 \x01(\v2\".meshtastic.DeviceConnectionStatusH\x00R!getDeviceConnectionStatusResponse\x12=\n" +
	"\fset_ham_mode\x18\x12 \x01(\v2\x19.meshtastic.HamParametersH\x00R\n" +
	"setHamMode\x12Q\n" +
	"%get_node_remote_hardware_pins_request\x18\x13 \x01(\bH\x00R getNodeRemoteHardwarePinsRequest\x12\x7f\n" +
	"&get_node_remote_hardware_pins_response\x18\x14 \x01(\v2*.meshtastic.NodeRemoteHardwarePinsResponseH\x00R!getNodeRemoteHardwarePinsResponse\x125\n" +
	"\x16enter_dfu_mode_request\x18\x15 \x01(\bH\x00R\x13enterDfuModeRequest\x120\n" +
	"\x13delete_file_request\x18\x16 \x01(\tH\x00R\x11deleteFileRequest\x12\x1d\n" +
	"\tset_scale\x18\x17 \x01(\rH\x00R\bsetScale\x12X\n" +
	"\x12backup_preferences\x18\x18 \x01(\x0e2'.meshtastic.AdminMessage.BackupLocationH\x00R\x11backupPreferences\x12Z\n" +
	"\x13restore_preferences\x18\x19 \x01(\x0e2'.meshtastic.AdminMessage.BackupLocationH\x00R\x12restorePreferences\x12e\n" +
	"\x19remove_backup_preferences\x18\x1a \x01(\x0e2'.meshtastic.AdminMessage.BackupLocationH\x00R\x17removeBackupPreferences\x12/\n" +
	"\tset_owner\x18  \x01(\v2\x10.meshtastic.UserH\x00R\bsetOwner\x126\n" +
	"\vset_channel\x18! \x01(\v2\x13.meshtastic.ChannelH\x00R\n" +
	"setChannel\x123\n" +
	"\n" +
	"set_config\x18\" \x01(\v2\x12.meshtastic.ConfigH\x00R\tsetConfig\x12F\n" +
	"\x11set_module_config\x18# \x01(\v2\x18.meshtastic.ModuleConfigH\x00R\x0fsetModuleConfig\x12L\n" +
	"\"set_canned_message_module_messages\x18$ \x01(\tH\x00R\x1esetCannedMessageModuleMessages\x122\n" +
	"\x14set_ringtone_message\x18% \x01(\tH\x00R\x12setRingtoneMessage\x12,\n" +
	"\x11remove_by_nodenum\x18& \x01(\rH\x00R\x0fremoveByNodenum\x12,\n" +
	"\x11set_favorite_node\x18' \x01(\rH\x00R\x0fsetFavoriteNode\x122\n" +
	"\x14remove_favorite_node\x18( \x01(\rH\x00R\x12removeFavoriteNode\x12D\n" +
	"\x12set_fixed_position\x18) \x01(\v2\x14.meshtastic.PositionH\x00R\x10setFixedPosition\x124\n" +
	"\x15remove_fixed_position\x18* \x01(\bH\x00R\x13removeFixedPosition\x12$\n" +
	"\rset_time_only\x18+ \x01(\aH\x00R\vsetTimeOnly\x123\n" +
	"\x15get_ui_config_request\x18, \x01(\bH\x00R\x12getUiConfigRequest\x12Q\n" +
	"\x16get_ui_config_response\x18- \x01(\v2\x1a.meshtastic.DeviceUIConfigH\x00R\x13getUiConfigResponse\x12D\n" +
	"\x0fstore_ui_config\x18. \x01(\v2\x1a.meshtastic.DeviceUIConfigH\x00R\rstoreUiConfig\x12*\n" +
	"\x10set_ignored_node\x18/ \x01(\rH\x00R\x0esetIgnoredNode\x120\n" +
	"\x13remove_ignored_node\x180 \x01(\rH\x00R\x11removeIgnoredNode\x120\n" +
	"\x13begin_edit_settings\x18@ \x01(\bH\x00R\x11beginEditSettings\x122\n" +
	"\x14commit_edit_settings\x18A \x01(\bH\x00R\x12commitEditSettings\x122\n" +
	"\x14factory_reset_device\x18^ \x01(\x05H\x00R\x12factoryResetDevice\x12.\n" +
	"\x12reboot_ota_seconds\x18_ \x01(\x05H\x00R\x10rebootOtaSeconds\x12'\n" +
	"\x0eexit_simulator\x18` \x01(\bH\x00R\rexitSimulator\x12'\n" +
	"\x0ereboot_seconds\x18a \x01(\x05H\x00R\rrebootSeconds\x12+\n" +
	"\x10shutdown_seconds\x18b \x01(\x05H\x00R\x0fshutdownSeconds\x122\n" +
	"\x14factory_reset_config\x18c \x01(\x05H\x00R\x12factoryResetConfig\x12#\n" +
	"\fnodedb_reset\x18d \x01(\x05H\x00R\vnodedbReset\"\xd6\x01\n" +
	"\n" +
	"ConfigType\x12\x11\n" +
	"\rDEVICE_CONFIG\x10\x00\x12\x13\n" +
	"\x0fPOSITION_CONFIG\x10\x01\x12\x10\n" +
	"\fPOWER_CONFIG\x10\x02\x12\x12\n" +
	"\x0eNETWORK_CONFIG\x10\x03\x12\x12\n" +
	"\x0eDISPLAY_CONFIG\x10\x04\x12\x0f\n" +
	"\vLORA_CONFIG\x10\x05\x12\x14\n" +
	"\x10BLUETOOTH_CONFIG\x10\x06\x12\x13\n" +
	"\x0fSECURITY_CONFIG\x10\a\x12\x15\n" +
	"\x11SESSIONKEY_CONFIG\x10\b\x12\x13\n" +
	"\x0fDEVICEUI_CONFIG\x10\t\"\xbb\x02\n" +
	"\x10ModuleConfigType\x12\x0f\n" +
	"\vMQTT_CONFIG\x10\x00\x12\x11\n" +
	"\rSERIAL_CONFIG\x10\x01\x12\x13\n" +
	"\x0fEXTNOTIF_CONFIG\x10\x02\x12\x17\n" +
	"\x13STOREFORWARD_CONFIG\x10\x03\x12\x14\n" +
	"\x10RANGETEST_CONFIG\x10\x04\x12\x14\n" +
	"\x10TELEMETRY_CONFIG\x10\x05\x12\x14\n" +
	"\x10CANNEDMSG_CONFIG\x10\x06\x12\x10\n" +
	"\fAUDIO_CONFIG\x10\a\x12\x19\n" +
	"\x15REMOTEHARDWARE_CONFIG\x10\b\x12\x17\n" +
	"\x13NEIGHBORINFO_CONFIG\x10\t\x12\x1a\n" +
	"\x16AMBIENTLIGHTING_CONFIG\x10\n" +
	"\x12\x1a\n" +
	"\x16DETECTIONSENSOR_CONFIG\x10\v\x12\x15\n" +
	"\x11PAXCOUNTER_CONFIG\x10\f\"#\n" +
	"\x0eBackupLocation\x12\t\n" +
	"\x05FLASH\x10\x00\x12\x06\n" +
	"\x02SD\x10\x01B\x11\n" +
	"\x0fpayload_variant\"\x84\x01\n" +
	"\rHamParameters\x12\x1b\n" +
	"\tcall_sign\x18\x01 \x01(\tR\bcallSign\x12\x19\n" +
	"\btx_power\x18\x02 \x01(\x05R\atxPower\x12\x1c\n" +
	"\tfrequency\x18\x03 \x01(\x02R\tfrequency\x12\x1d\n" +
	"\n" +
	"short_name\x18\x04 \x01(\tR\tshortName\"~\n" +
	"\x1eNodeRemoteHardwarePinsResponse\x12\\\n" +
	"\x19node_remote_hardware_pins\x18\x01 \x03(\v2!.meshtastic.NodeRemoteHardwarePinR\x16nodeRemoteHardwarePinsB]\n" +
	"\x13com.geeksville.meshB\vAdminProtosZ\x1fmeshstream/generated/meshtastic\xaa\x02\x14Meshtastic.Protobufs\xba\x02\x00b\x06proto3"

var (
	file_meshtastic_admin_proto_rawDescOnce sync.Once
	file_meshtastic_admin_proto_rawDescData []byte
)

func file_meshtastic_admin_proto_rawDescGZIP() []byte {
	file_meshtastic_admin_proto_rawDescOnce.Do(func() {
		file_meshtastic_admin_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_meshtastic_admin_proto_rawDesc), len(file_meshtastic_admin_proto_rawDesc)))
	})
	return file_meshtastic_admin_proto_rawDescData
}

var file_meshtastic_admin_proto_enumTypes = make([]protoimpl.EnumInfo, 3)
var file_meshtastic_admin_proto_msgTypes = make([]protoimpl.MessageInfo, 3)
var file_meshtastic_admin_proto_goTypes = []any{
	(AdminMessage_ConfigType)(0),           // 0: meshtastic.AdminMessage.ConfigType
	(AdminMessage_ModuleConfigType)(0),     // 1: meshtastic.AdminMessage.ModuleConfigType
	(AdminMessage_BackupLocation)(0),       // 2: meshtastic.AdminMessage.BackupLocation
	(*AdminMessage)(nil),                   // 3: meshtastic.AdminMessage
	(*HamParameters)(nil),                  // 4: meshtastic.HamParameters
	(*NodeRemoteHardwarePinsResponse)(nil), // 5: meshtastic.NodeRemoteHardwarePinsResponse
	(*Channel)(nil),                        // 6: meshtastic.Channel
	(*User)(nil),                           // 7: meshtastic.User
	(*Config)(nil),                         // 8: meshtastic.Config
	(*ModuleConfig)(nil),                   // 9: meshtastic.ModuleConfig
	(*DeviceMetadata)(nil),                 // 10: meshtastic.DeviceMetadata
	(*DeviceConnectionStatus)(nil),         // 11: meshtastic.DeviceConnectionStatus
	(*Position)(nil),                       // 12: meshtastic.Position
	(*DeviceUIConfig)(nil),                 // 13: meshtastic.DeviceUIConfig
	(*NodeRemoteHardwarePin)(nil),          // 14: meshtastic.NodeRemoteHardwarePin
}
var file_meshtastic_admin_proto_depIdxs = []int32{
	6,  // 0: meshtastic.AdminMessage.get_channel_response:type_name -> meshtastic.Channel
	7,  // 1: meshtastic.AdminMessage.get_owner_response:type_name -> meshtastic.User
	0,  // 2: meshtastic.AdminMessage.get_config_request:type_name -> meshtastic.AdminMessage.ConfigType
	8,  // 3: meshtastic.AdminMessage.get_config_response:type_name -> meshtastic.Config
	1,  // 4: meshtastic.AdminMessage.get_module_config_request:type_name -> meshtastic.AdminMessage.ModuleConfigType
	9,  // 5: meshtastic.AdminMessage.get_module_config_response:type_name -> meshtastic.ModuleConfig
	10, // 6: meshtastic.AdminMessage.get_device_metadata_response:type_name -> meshtastic.DeviceMetadata
	11, // 7: meshtastic.AdminMessage.get_device_connection_status_response:type_name -> meshtastic.DeviceConnectionStatus
	4,  // 8: meshtastic.AdminMessage.set_ham_mode:type_name -> meshtastic.HamParameters
	5,  // 9: meshtastic.AdminMessage.get_node_remote_hardware_pins_response:type_name -> meshtastic.NodeRemoteHardwarePinsResponse
	2,  // 10: meshtastic.AdminMessage.backup_preferences:type_name -> meshtastic.AdminMessage.BackupLocation
	2,  // 11: meshtastic.AdminMessage.restore_preferences:type_name -> meshtastic.AdminMessage.BackupLocation
	2,  // 12: meshtastic.AdminMessage.remove_backup_preferences:type_name -> meshtastic.AdminMessage.BackupLocation
	7,  // 13: meshtastic.AdminMessage.set_owner:type_name -> meshtastic.User
	6,  // 14: meshtastic.AdminMessage.set_channel:type_name -> meshtastic.Channel
	8,  // 15: meshtastic.AdminMessage.set_config:type_name -> meshtastic.Config
	9,  // 16: meshtastic.AdminMessage.set_module_config:type_name -> meshtastic.ModuleConfig
	12, // 17: meshtastic.AdminMessage.set_fixed_position:type_name -> meshtastic.Position
	13, // 18: meshtastic.AdminMessage.get_ui_config_response:type_name -> meshtastic.DeviceUIConfig
	13, // 19: meshtastic.AdminMessage.store_ui_config:type_name -> meshtastic.DeviceUIConfig
	14, // 20: meshtastic.NodeRemoteHardwarePinsResponse.node_remote_hardware_pins:type_name -> meshtastic.NodeRemoteHardwarePin
	21, // [21:21] is the sub-list for method output_type
	21, // [21:21] is the sub-list for method input_type
	21, // [21:21] is the sub-list for extension type_name
	21, // [21:21] is the sub-list for extension extendee
	0,  // [0:21] is the sub-list for field type_name
}

func init() { file_meshtastic_admin_proto_init() }
func file_meshtastic_admin_proto_init() {
	if File_meshtastic_admin_proto != nil {
		return
	}
	file_meshtastic_channel_proto_init()
	file_meshtastic_config_proto_init()
	file_meshtastic_connection_status_proto_init()
	file_meshtastic_mesh_proto_init()
	file_meshtastic_module_config_proto_init()
	file_meshtastic_device_ui_proto_init()
	file_meshtastic_admin_proto_msgTypes[0].OneofWrappers = []any{
		(*AdminMessage_GetChannelRequest)(nil),
		(*AdminMessage_GetChannelResponse)(nil),
		(*AdminMessage_GetOwnerRequest)(nil),
		(*AdminMessage_GetOwnerResponse)(nil),
		(*AdminMessage_GetConfigRequest)(nil),
		(*AdminMessage_GetConfigResponse)(nil),
		(*AdminMessage_GetModuleConfigRequest)(nil),
		(*AdminMessage_GetModuleConfigResponse)(nil),
		(*AdminMessage_GetCannedMessageModuleMessagesRequest)(nil),
		(*AdminMessage_GetCannedMessageModuleMessagesResponse)(nil),
		(*AdminMessage_GetDeviceMetadataRequest)(nil),
		(*AdminMessage_GetDeviceMetadataResponse)(nil),
		(*AdminMessage_GetRingtoneRequest)(nil),
		(*AdminMessage_GetRingtoneResponse)(nil),
		(*AdminMessage_GetDeviceConnectionStatusRequest)(nil),
		(*AdminMessage_GetDeviceConnectionStatusResponse)(nil),
		(*AdminMessage_SetHamMode)(nil),
		(*AdminMessage_GetNodeRemoteHardwarePinsRequest)(nil),
		(*AdminMessage_GetNodeRemoteHardwarePinsResponse)(nil),
		(*AdminMessage_EnterDfuModeRequest)(nil),
		(*AdminMessage_DeleteFileRequest)(nil),
		(*AdminMessage_SetScale)(nil),
		(*AdminMessage_BackupPreferences)(nil),
		(*AdminMessage_RestorePreferences)(nil),
		(*AdminMessage_RemoveBackupPreferences)(nil),
		(*AdminMessage_SetOwner)(nil),
		(*AdminMessage_SetChannel)(nil),
		(*AdminMessage_SetConfig)(nil),
		(*AdminMessage_SetModuleConfig)(nil),
		(*AdminMessage_SetCannedMessageModuleMessages)(nil),
		(*AdminMessage_SetRingtoneMessage)(nil),
		(*AdminMessage_RemoveByNodenum)(nil),
		(*AdminMessage_SetFavoriteNode)(nil),
		(*AdminMessage_RemoveFavoriteNode)(nil),
		(*AdminMessage_SetFixedPosition)(nil),
		(*AdminMessage_RemoveFixedPosition)(nil),
		(*AdminMessage_SetTimeOnly)(nil),
		(*AdminMessage_GetUiConfigRequest)(nil),
		(*AdminMessage_GetUiConfigResponse)(nil),
		(*AdminMessage_StoreUiConfig)(nil),
		(*AdminMessage_SetIgnoredNode)(nil),
		(*AdminMessage_RemoveIgnoredNode)(nil),
		(*AdminMessage_BeginEditSettings)(nil),
		(*AdminMessage_CommitEditSettings)(nil),
		(*AdminMessage_FactoryResetDevice)(nil),
		(*AdminMessage_RebootOtaSeconds)(nil),
		(*AdminMessage_ExitSimulator)(nil),
		(*AdminMessage_RebootSeconds)(nil),
		(*AdminMessage_ShutdownSeconds)(nil),
		(*AdminMessage_FactoryResetConfig)(nil),
		(*AdminMessage_NodedbReset)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_meshtastic_admin_proto_rawDesc), len(file_meshtastic_admin_proto_rawDesc)),
			NumEnums:      3,
			NumMessages:   3,
			NumExtensions: 0,
			NumServices:   0,
		},
		GoTypes:           file_meshtastic_admin_proto_goTypes,
		DependencyIndexes: file_meshtastic_admin_proto_depIdxs,
		EnumInfos:         file_meshtastic_admin_proto_enumTypes,
		MessageInfos:      file_meshtastic_admin_proto_msgTypes,
	}.Build()
	File_meshtastic_admin_proto = out.File
	file_meshtastic_admin_proto_goTypes = nil
	file_meshtastic_admin_proto_depIdxs = nil
}
