#ifndef CHANGETYPE_H
#define CHANGETYPE_H

#include <QString>

enum class ChangeType {
    MailItemAdded,
    MailItemUpdated,
    MailItemDeleted,
    MailItemFlagsChanged,
    FolderAdded,
    FolderUpdated,
    FolderDeleted,
    AccountAdded,
    AccountUpdated,
    AccountDeleted,
    Unknown
};

inline QString changeTypeToString(ChangeType type) {
    switch (type) {
        case ChangeType::MailItemAdded: return "MailItemAdded";
        case ChangeType::MailItemUpdated: return "MailItemUpdated";
        case ChangeType::MailItemDeleted: return "MailItemDeleted";
        case ChangeType::MailItemFlagsChanged: return "MailItemFlagsChanged";
        case ChangeType::FolderAdded: return "FolderAdded";
        case ChangeType::FolderUpdated: return "FolderUpdated";
        case ChangeType::FolderDeleted: return "FolderDeleted";
        case ChangeType::AccountAdded: return "AccountAdded";
        case ChangeType::AccountUpdated: return "AccountUpdated";
        case ChangeType::AccountDeleted: return "AccountDeleted";
        default: return "Unknown";
    }
}

#endif // CHANGETYPE_H
