1 // SPDX-License-Identifier: Apache-2.0 2 // SPDX-FileCopyrightText: Copyright OpenBMC Authors 3 #pragma once 4 #include <nlohmann/json.hpp> 5 6 namespace action_info 7 { 8 // clang-format off 9 10 enum class ParameterTypes{ 11 Invalid, 12 Boolean, 13 Number, 14 NumberArray, 15 String, 16 StringArray, 17 Object, 18 ObjectArray, 19 }; 20 21 NLOHMANN_JSON_SERIALIZE_ENUM(ParameterTypes, { 22 {ParameterTypes::Invalid, "Invalid"}, 23 {ParameterTypes::Boolean, "Boolean"}, 24 {ParameterTypes::Number, "Number"}, 25 {ParameterTypes::NumberArray, "NumberArray"}, 26 {ParameterTypes::String, "String"}, 27 {ParameterTypes::StringArray, "StringArray"}, 28 {ParameterTypes::Object, "Object"}, 29 {ParameterTypes::ObjectArray, "ObjectArray"}, 30 }); 31 32 } 33 // clang-format on 34