// Thish file is generated by /tools/codegen
// DO NOT EDIT IT.

// clang-format off

//  To parse this JSON data, first install
//
//      json.hpp  https://github.com/nlohmann/json
//
//  Then include this file, and then do
//
//     Vm.hpp data = nlohmann::json::parse(jsonString);

#pragma once

#include <optional>
#include <nlohmann/json.hpp>
#include "ocppi/runtime/config/types/helper.hpp"

#include "ocppi/runtime/config/types/Hypervisor.hpp"
#include "ocppi/runtime/config/types/Image.hpp"
#include "ocppi/runtime/config/types/Kernel.hpp"

namespace ocppi {
namespace runtime {
namespace config {
namespace types {
/**
* configuration for virtual-machine-based containers
*/

using nlohmann::json;

/**
* configuration for virtual-machine-based containers
*/
struct Vm {
/**
* hypervisor config used by VM-based containers
*/
std::optional<Hypervisor> hypervisor;
/**
* root image config used by VM-based containers
*/
std::optional<Image> image;
/**
* kernel config used by VM-based containers
*/
Kernel kernel;
};
}
}
}
}

// clang-format on
