#pragma once #include #include #include "schemas/stream.hpp" #include "schemas/user.hpp" namespace bot::api::twitch { class HelixClient { public: HelixClient(const std::string &token, const std::string &client_id); ~HelixClient() = default; std::vector get_users( const std::vector &logins) const; std::vector get_users(const std::vector &ids) const; std::vector get_users( const std::vector &ids, const std::vector logins) const; std::vector get_chatters(const int &broadcaster_id, const int &moderator_id) const; std::vector get_streams( const std::vector &ids) const; std::vector get_channel_information( const std::vector &ids) const; private: std::vector get_users_by_query( const std::string &query) const; std::string token, client_id; const std::string base_url = "https://api.twitch.tv/helix"; }; }