#pragma once #include "twitch/twitchuser.hpp" #include #include namespace chatterino { class AccountManager { public: static AccountManager &getInstance() { static AccountManager instance; return instance; } twitch::TwitchUser &getTwitchAnon(); // Returns first user from _twitchUsers, or _twitchAnon if _twitchUsers is empty twitch::TwitchUser &getTwitchUser(); std::vector getTwitchUsers(); bool removeTwitchUser(const QString &userName); void addTwitchUser(const twitch::TwitchUser &user); private: AccountManager(); twitch::TwitchUser _twitchAnon; std::vector _twitchUsers; std::mutex _twitchUsersMutex; }; } // namespace chatterino