"""虎牙协议与业务客户端。""" from typing import TYPE_CHECKING from .http_client import HuyaHttpClient from .wss_client import HuyaWssClient if TYPE_CHECKING: from .activity_structs import GetUserScoreReq, GetUserScoreResp from .app_login import ( HuyaAppLoginError, HuyaAppPasswordLogin, HuyaAppQrAuthRequiredError, login_huya_app_password, ) from .login import ( HuyaCredentialError, HuyaLoginError, HuyaLoginResult, HuyaPasswordLogin, login_huya_password, ) from .sms_login import ( HuyaSmsCodeResult, HuyaSmsLogin, login_huya_sms, send_huya_sms_code, ) from .verification import ( HuyaVerificationError, HuyaVerificationSolver, solve_huya_verification, ) __all__ = [ "GetUserScoreReq", "GetUserScoreResp", "HuyaAppLoginError", "HuyaAppPasswordLogin", "HuyaAppQrAuthRequiredError", "HuyaCredentialError", "HuyaHttpClient", "HuyaLoginError", "HuyaLoginResult", "HuyaPasswordLogin", "HuyaSmsCodeResult", "HuyaSmsLogin", "HuyaVerificationError", "HuyaVerificationSolver", "HuyaWssClient", "login_huya_app_password", "login_huya_password", "login_huya_sms", "send_huya_sms_code", "solve_huya_verification", ] def __getattr__(name: str): if name in {"GetUserScoreReq", "GetUserScoreResp"}: from .activity_structs import GetUserScoreReq, GetUserScoreResp values = { "GetUserScoreReq": GetUserScoreReq, "GetUserScoreResp": GetUserScoreResp, } globals().update(values) return values[name] if name in { "HuyaCredentialError", "HuyaLoginError", "HuyaLoginResult", "HuyaPasswordLogin", "login_huya_password", }: from .login import ( HuyaCredentialError, HuyaLoginError, HuyaLoginResult, HuyaPasswordLogin, login_huya_password, ) values = { "HuyaCredentialError": HuyaCredentialError, "HuyaLoginError": HuyaLoginError, "HuyaLoginResult": HuyaLoginResult, "HuyaPasswordLogin": HuyaPasswordLogin, "login_huya_password": login_huya_password, } globals().update(values) return values[name] if name in { "HuyaAppLoginError", "HuyaAppQrAuthRequiredError", "HuyaAppPasswordLogin", "login_huya_app_password", }: from .app_login import ( HuyaAppLoginError, HuyaAppPasswordLogin, HuyaAppQrAuthRequiredError, login_huya_app_password, ) values = { "HuyaAppLoginError": HuyaAppLoginError, "HuyaAppQrAuthRequiredError": HuyaAppQrAuthRequiredError, "HuyaAppPasswordLogin": HuyaAppPasswordLogin, "login_huya_app_password": login_huya_app_password, } globals().update(values) return values[name] if name in { "HuyaSmsCodeResult", "HuyaSmsLogin", "login_huya_sms", "send_huya_sms_code", }: from .sms_login import ( HuyaSmsCodeResult, HuyaSmsLogin, login_huya_sms, send_huya_sms_code, ) values = { "HuyaSmsCodeResult": HuyaSmsCodeResult, "HuyaSmsLogin": HuyaSmsLogin, "login_huya_sms": login_huya_sms, "send_huya_sms_code": send_huya_sms_code, } globals().update(values) return values[name] if name in { "HuyaVerificationError", "HuyaVerificationSolver", "solve_huya_verification", }: from .verification import ( HuyaVerificationError, HuyaVerificationSolver, solve_huya_verification, ) values = { "HuyaVerificationError": HuyaVerificationError, "HuyaVerificationSolver": HuyaVerificationSolver, "solve_huya_verification": solve_huya_verification, } globals().update(values) return values[name] raise AttributeError(f"module {__name__!r} has no attribute {name!r}")