// SPDX-License-Identifier: GPL-3.0-or-later

// This file is auto-generated by scripts/generate_nymea_api.py
// Any changes made here will be lost when the files are regenerated.
// Do not edit manually.

#pragma once

#include "apiutils.h"
#include "paramdescriptor.h"

namespace nymea::api {

class EventDescriptor {
public:
    // wire: 'eventTypeId' (optional)
    std::optional<QUuid> eventTypeId;
    // wire: 'interface' (optional)
    std::optional<QString> interface;
    // wire: 'interfaceEvent' (optional)
    std::optional<QString> interfaceEvent;
    // wire: 'paramDescriptors' (optional)
    std::optional<ParamDescriptors> paramDescriptors;
    // wire: 'thingId' (optional)
    std::optional<QUuid> thingId;

    static EventDescriptor fromJson(const QJsonObject &object);
    QJsonObject toJson() const;
};

} // namespace nymea::api
