// Copyright (C) 2025 The Qt Company Ltd.
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only

#ifndef QOHOSENUMS_H
#define QOHOSENUMS_H

#include <QtCore/qglobal.h>
#include <array>

QT_BEGIN_NAMESPACE

namespace QtOhos {

namespace enums {

namespace ohos {

namespace app {

namespace ability {

namespace ConfigurationConstant {

enum class ColorMode {
    COLOR_MODE_NOT_SET,
    COLOR_MODE_DARK,
    COLOR_MODE_LIGHT,
};

}

}

}

}

}

template<typename Enum>
struct OhosEnumMeta;

template<>
struct OhosEnumMeta<enums::ohos::app::ability::ConfigurationConstant::ColorMode>
{
    using Enum = enums::ohos::app::ability::ConfigurationConstant::ColorMode;
    static constexpr const char *fullTypeName = "@ohos.app.ability.ConfigurationConstant.ColorMode";
    static constexpr std::array<std::pair<Enum, const char *>, 3> enumeratorsNames = {{
        {Enum::COLOR_MODE_NOT_SET, "COLOR_MODE_NOT_SET"},
        {Enum::COLOR_MODE_DARK, "COLOR_MODE_DARK"},
        {Enum::COLOR_MODE_LIGHT, "COLOR_MODE_LIGHT"},
    }};
};

}

QT_END_NAMESPACE

#endif
