/* * Mirai. Copyright (C) 2024 Vyn * This file is licensed under version 3 of the GNU General Public License (GPL-3.0-only) * The license can be found in the LICENSE file or at https://www.gnu.org/licenses/gpl-3.0.txt */ #ifndef MIRAI_MIRAI_H #define MIRAI_MIRAI_H #include "TaskItem.h" #include "TodoMd.h" #include "core/BaseFileResource.h" #include #include #include #include #include namespace mirai { class Mirai { public: void loadResource(std::unique_ptr &&resource); void unloadAllResources(); void save(); void removeTask(const TaskItem *taskItem); std::optional> getResourceByName(const std::string &name); std::vector> &getResources(); const std::vector &getTags(); void reloadTags(); private: std::vector> resources; std::vector tags; }; } // namespace mirai #endif