;;; meshtastic/admin.proto.lisp
;;;
;;; Generated by the protocol buffer compiler. DO NOT EDIT!

(cl:in-package #:common-lisp-user)

#+sbcl
(cl:progn
 (cl:eval-when (:compile-toplevel) (sb-ext:restrict-compiler-policy 'cl:debug 0 1))
 (cl:declaim (cl:optimize (sb-c:store-coverage-data 0))))

(cl:eval-when (:compile-toplevel :load-toplevel :execute)
  (cl:unless (cl:find-package "CL-PROTOBUFS.MESHTASTIC")
    (cl:defpackage "CL-PROTOBUFS.MESHTASTIC" (:use)
                   (:local-nicknames (#:pi #:cl-protobufs.implementation)))))

(cl:in-package "CL-PROTOBUFS.MESHTASTIC")

(cl:eval-when (:compile-toplevel :load-toplevel :execute)
(pi:define-schema 'admin
    :syntax :proto3

     :package "meshtastic"
))


;;; Top-Level messages

(pi:define-message admin-message
    ()
  ;; Nested enums

  (pi:define-enum admin-message.config-type
      ()
    (:device-config :index 0)
    (:position-config :index 1)
    (:power-config :index 2)
    (:network-config :index 3)
    (:display-config :index 4)
    (:lora-config :index 5)
    (:bluetooth-config :index 6))

  (pi:define-enum admin-message.module-config-type
      ()
    (:mqtt-config :index 0)
    (:serial-config :index 1)
    (:extnotif-config :index 2)
    (:storeforward-config :index 3)
    (:rangetest-config :index 4)
    (:telemetry-config :index 5)
    (:cannedmsg-config :index 6)
    (:audio-config :index 7)
    (:remotehardware-config :index 8)
    (:ambientlighting-config :index 10))
  ;; Fields
  (pi:define-oneof payload-variant ()
    (get-channel-request
     :index 1 :type cl-protobufs:uint32 :kind :scalar :label (:optional) :json-name "getChannelRequest")
    (get-channel-response
     :index 2 :type cl-protobufs.meshtastic::channel :kind :message :label (:optional) :json-name "getChannelResponse")
    (get-owner-request
     :index 3 :type cl:boolean :kind :scalar :label (:optional) :json-name "getOwnerRequest")
    (get-owner-response
     :index 4 :type cl-protobufs.meshtastic::user :kind :message :label (:optional) :json-name "getOwnerResponse")
    (get-config-request
     :index 5 :type admin-message.config-type :kind :enum :label (:optional) :json-name "getConfigRequest" :default :device-config)
    (get-config-response
     :index 6 :type cl-protobufs.meshtastic::config :kind :message :label (:optional) :json-name "getConfigResponse")
    (get-module-config-request
     :index 7 :type admin-message.module-config-type :kind :enum :label (:optional) :json-name "getModuleConfigRequest" :default :mqtt-config)
    (get-module-config-response
     :index 8 :type cl-protobufs.meshtastic::module-config :kind :message :label (:optional) :json-name "getModuleConfigResponse")
    (get-canned-message-module-messages-request
     :index 10 :type cl:boolean :kind :scalar :label (:optional) :json-name "getCannedMessageModuleMessagesRequest")
    (get-canned-message-module-messages-response
     :index 11 :type cl:string :kind :scalar :label (:optional) :json-name "getCannedMessageModuleMessagesResponse")
    (get-device-metadata-request
     :index 12 :type cl:boolean :kind :scalar :label (:optional) :json-name "getDeviceMetadataRequest")
    (get-device-metadata-response
     :index 13 :type cl-protobufs.meshtastic::device-metadata :kind :message :label (:optional) :json-name "getDeviceMetadataResponse")
    (get-ringtone-request
     :index 14 :type cl:boolean :kind :scalar :label (:optional) :json-name "getRingtoneRequest")
    (get-ringtone-response
     :index 15 :type cl:string :kind :scalar :label (:optional) :json-name "getRingtoneResponse")
    (get-device-connection-status-request
     :index 16 :type cl:boolean :kind :scalar :label (:optional) :json-name "getDeviceConnectionStatusRequest")
    (get-device-connection-status-response
     :index 17 :type cl-protobufs.meshtastic::device-connection-status :kind :message :label (:optional) :json-name "getDeviceConnectionStatusResponse")
    (set-ham-mode
     :index 18 :type ham-parameters :kind :message :label (:optional) :json-name "setHamMode")
    (get-node-remote-hardware-pins-request
     :index 19 :type cl:boolean :kind :scalar :label (:optional) :json-name "getNodeRemoteHardwarePinsRequest")
    (get-node-remote-hardware-pins-response
     :index 20 :type node-remote-hardware-pins-response :kind :message :label (:optional) :json-name "getNodeRemoteHardwarePinsResponse")
    (set-owner
     :index 32 :type cl-protobufs.meshtastic::user :kind :message :label (:optional) :json-name "setOwner")
    (set-channel
     :index 33 :type cl-protobufs.meshtastic::channel :kind :message :label (:optional) :json-name "setChannel")
    (set-config
     :index 34 :type cl-protobufs.meshtastic::config :kind :message :label (:optional) :json-name "setConfig")
    (set-module-config
     :index 35 :type cl-protobufs.meshtastic::module-config :kind :message :label (:optional) :json-name "setModuleConfig")
    (set-canned-message-module-messages
     :index 36 :type cl:string :kind :scalar :label (:optional) :json-name "setCannedMessageModuleMessages")
    (set-ringtone-message
     :index 37 :type cl:string :kind :scalar :label (:optional) :json-name "setRingtoneMessage")
    (begin-edit-settings
     :index 64 :type cl:boolean :kind :scalar :label (:optional) :json-name "beginEditSettings")
    (commit-edit-settings
     :index 65 :type cl:boolean :kind :scalar :label (:optional) :json-name "commitEditSettings")
    (reboot-ota-seconds
     :index 95 :type cl-protobufs:int32 :kind :scalar :label (:optional) :json-name "rebootOtaSeconds")
    (exit-simulator
     :index 96 :type cl:boolean :kind :scalar :label (:optional) :json-name "exitSimulator")
    (reboot-seconds
     :index 97 :type cl-protobufs:int32 :kind :scalar :label (:optional) :json-name "rebootSeconds")
    (shutdown-seconds
     :index 98 :type cl-protobufs:int32 :kind :scalar :label (:optional) :json-name "shutdownSeconds")
    (factory-reset
     :index 99 :type cl-protobufs:int32 :kind :scalar :label (:optional) :json-name "factoryReset")
    (nodedb-reset
     :index 100 :type cl-protobufs:int32 :kind :scalar :label (:optional) :json-name "nodedbReset")))

(pi:define-message ham-parameters
    ()
  ;; Fields
  (call-sign
   :index 1 :type cl:string :kind :scalar :label (:optional) :json-name "callSign")
  (tx-power
   :index 2 :type cl-protobufs:int32 :kind :scalar :label (:optional) :json-name "txPower")
  (frequency
   :index 3 :type cl:float :kind :scalar :label (:optional) :json-name "frequency")
  (short-name
   :index 4 :type cl:string :kind :scalar :label (:optional) :json-name "shortName"))

(pi:define-message node-remote-hardware-pins-response
    ()
  ;; Fields
  (node-remote-hardware-pins
   :index 1 :type cl-protobufs.meshtastic::node-remote-hardware-pin :kind :message :label (:repeated :list) :json-name "nodeRemoteHardwarePins"))

(cl:export '(admin
             admin-message
             admin-message.config-type
             admin-message.config-type-int-to-keyword
             admin-message.config-type-keyword-to-int
             admin-message.module-config-type
             admin-message.module-config-type-int-to-keyword
             admin-message.module-config-type-keyword-to-int
             begin-edit-settings
             call-sign
             commit-edit-settings
             exit-simulator
             factory-reset
             frequency
             get-canned-message-module-messages-request
             get-canned-message-module-messages-response
             get-channel-request
             get-channel-response
             get-config-request
             get-config-response
             get-device-connection-status-request
             get-device-connection-status-response
             get-device-metadata-request
             get-device-metadata-response
             get-module-config-request
             get-module-config-response
             get-node-remote-hardware-pins-request
             get-node-remote-hardware-pins-response
             get-owner-request
             get-owner-response
             get-ringtone-request
             get-ringtone-response
             ham-parameters
             node-remote-hardware-pins
             node-remote-hardware-pins-response
             nodedb-reset
             reboot-ota-seconds
             reboot-seconds
             set-canned-message-module-messages
             set-channel
             set-config
             set-ham-mode
             set-module-config
             set-owner
             set-ringtone-message
             short-name
             shutdown-seconds
             tx-power))
