#pragma once #include #include namespace scwx::provider { /** * @brief Warnings Provider */ class IemWarningsProvider { public: explicit IemWarningsProvider(); ~IemWarningsProvider(); IemWarningsProvider(const IemWarningsProvider&) = delete; IemWarningsProvider& operator=(const IemWarningsProvider&) = delete; IemWarningsProvider(IemWarningsProvider&&) noexcept; IemWarningsProvider& operator=(IemWarningsProvider&&) noexcept; std::vector ListTextProducts(std::chrono::sys_time date, std::optional cccc = {}, std::optional pil = {}); private: class Impl; std::unique_ptr p; }; } // namespace scwx::provider