#pragma once

#include <stdint.h>

typedef enum
{
    FOTA_OK = 0,
    FOTA_ERR_OPEN,
    FOTA_ERR_OTA_BEGIN,
    FOTA_ERR_OTA_WRITE,
    FOTA_ERR_OTA_END,
    FOTA_ERR_SET_BOOT,
    FOTA_ERR_NO_UPDATE_PART
} fota_err_t;

/**
 * @brief Apply FOTA from a firmware file stored on filesystem.
 *
 * @param firmware_path Path to .bin file (e.g. "/spiffs/espFota.bin")
 * @return fota_err_t
 */
fota_err_t fota_manager_apply(const char *firmware_path);
