// Copyright (c) 2017-2020, Mudita Sp. z.o.o. All rights reserved. // For licensing, see https://github.com/mudita/MuditaOS/LICENSE.md #pragma once #include "module-db/Interface/EventsRecord.hpp" #include #include #include namespace db::query::events { /// Query for getting calendar event whose reminder is first in filtered time range class SelectFirstUpcoming : public Query { public: SelectFirstUpcoming(TimePoint filter_from, TimePoint filter_till); [[nodiscard]] auto debugInfo() const -> std::string override; TimePoint filter_from; TimePoint filter_till; }; /// Result of SelectFirstUpcoming query class SelectFirstUpcomingResult : public QueryResult { std::vector records; public: SelectFirstUpcomingResult(std::vector records); [[nodiscard]] auto getResult() -> std::vector; [[nodiscard]] auto debugInfo() const -> std::string override; }; } // namespace db::query::events