// AuthImpersonationClient.hpp #pragma once #include #include #include #include #include #include #include "AuthClient/ApiClient.h" #include "AuthClient/ApiConfiguration.h" #include "AuthClient/api/AuthApi.h" #include "AuthClient/model/GetImpersonationToken_request.h" #include "AuthClient/model/GetImpersonationToken_200_response.h" namespace nyanimed { class AuthImpersonationClient { public: AuthImpersonationClient(); // Потокобезопасный вызов — не модифицирует состояние pplx::task> getImpersonationToken(int64_t userId) const; private: std::string m_baseUrl; std::string m_authToken; std::shared_ptr m_apiClient; std::shared_ptr m_authApi; }; } // namespace nyanimed