#pragma once #include "interfaces/publisher.hpp" #include "interfaces/subscriber.hpp" #include #include // NOLINTNEXTLINE(cppcoreguidelines-special-member-functions) class IUserInputObserver { public: using Key = char; virtual ~IUserInputObserver() noexcept = default; virtual void listen() noexcept = 0; virtual bool is_key_pressed(Key key) noexcept = 0; virtual void clear_currently_pressed() noexcept = 0; };