// 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 "repeatingoption.h"

namespace nymea::api {

class CalendarItem {
public:
    // wire: 'duration' (field)
    quint64 duration{};
    // wire: 'datetime' (optional)
    std::optional<quint64> datetime;
    // wire: 'repeating' (optional)
    std::optional<RepeatingOption> repeating;
    // wire: 'startTime' (optional)
    std::optional<qint64> startTime;

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

} // namespace nymea::api
