#ifndef HOMEKIT_LIB_MAIN_H #define HOMEKIT_LIB_MAIN_H #include #include #include #include #include #include #include #ifndef CONFIG_TARGET_ESP01 #ifndef CONFIG_NO_RECOVERY #include #endif #endif #include #include #include namespace homekit::main { #ifndef CONFIG_TARGET_ESP01 #ifndef CONFIG_NO_RECOVERY enum class WorkingMode { RECOVERY, // AP mode, http server with configuration NORMAL, // MQTT client }; extern enum WorkingMode working_mode; #endif #endif enum class WiFiConnectionState { WAITING = 0, JUST_CONNECTED = 1, CONNECTED = 2 }; struct LoopConfig { std::function onMqttCreated; }; void setup(); void loop(LoopConfig* config); } #endif //HOMEKIT_LIB_MAIN_H