async def memberInfo(self, group: T.Union[Group, int], member: T.Union[Member, int] ): return MemberChangeableSetting.parse_obj(assertOperatorSuccess( await fetch.http_get(f"{self.baseurl}/memberInfo", { "sessionKey": self.session_key, "target": self.handleTargetAsGroup(group), "memberId": self.handleTargetAsMember(member) } ), raise_exception=True, return_as_is=True))
async def changeMemberInfo(self, group: T.Union[Group, int], member: T.Union[Member, int], setting: MemberChangeableSetting) -> bool: return assertOperatorSuccess(await fetch.http_post( f"{self.baseurl}/memberInfo", { "sessionKey": self.session_key, "target": self.handleTargetAsGroup(group), "memberId": self.handleTargetAsMember(member), "info": json.loads(setting.json()) }), raise_exception=True)