#ifndef COMMAND_SCHEMA_HPP #define COMMAND_SCHEMA_HPP struct BasePayload {}; struct WifiPayload : BasePayload { std::string networkName; std::string ssid; std::string password; uint8_t channel; uint8_t power; }; struct UpdateWifiPayload : BasePayload { std::string networkName; std::optional ssid; std::optional password; std::optional channel; std::optional power; }; struct deleteNetworkPayload : BasePayload { std::string networkName; }; struct UpdateAPWiFiPayload : BasePayload { std::optional ssid; std::optional password; std::optional channel; }; struct MDNSPayload : BasePayload { std::string hostname; }; struct UpdateCameraConfigPayload : BasePayload { std::optional vflip; std::optional href; std::optional framesize; std::optional quality; std::optional brightness; // TODO add more options here }; struct ResetConfigPayload : BasePayload { std::string section; }; struct RestartCameraPayload : BasePayload { bool mode; }; struct PausePayload : BasePayload { bool pause; }; #endif