#pragma once #include "AsyncTask.hpp" #include #include #include #include #include namespace QuickMedia { struct GoogleCaptchaChallengeInfo { std::string id; std::string payload_url; std::string description; }; using RequestChallengeResponse = std::function)>; AsyncTask google_captcha_request_challenge(const std::string &api_key, const std::string &referer, RequestChallengeResponse challenge_response_callback); using PostSolutionResponse = std::function, std::optional)>; AsyncTask google_captcha_post_solution(const std::string &api_key, const std::string &captcha_id, std::array selected_images, PostSolutionResponse solution_response_callback); }