From b25ae1a097a8eee18675f462a37920c6e7c0cefc Mon Sep 17 00:00:00 2001 From: owocado <24418520+owocado@users.noreply.github.com> Date: Sat, 15 Mar 2025 12:36:48 +0000 Subject: [PATCH] fix return type of `Invite.delete` & `Client.delete_invite` --- discord/client.py | 5 +++-- discord/http.py | 2 +- discord/invite.py | 5 +++-- 3 files changed, 7 insertions(+), 5 deletions(-) diff --git a/discord/client.py b/discord/client.py index b997bd96f..ae4646bca 100644 --- a/discord/client.py +++ b/discord/client.py @@ -2546,7 +2546,7 @@ class Client: ) return Invite.from_incomplete(state=self._connection, data=data) - async def delete_invite(self, invite: Union[Invite, str], /) -> None: + async def delete_invite(self, invite: Union[Invite, str], /) -> Invite: """|coro| Revokes an :class:`.Invite`, URL, or ID to an invite. @@ -2574,7 +2574,8 @@ class Client: """ resolved = utils.resolve_invite(invite) - await self.http.delete_invite(resolved.code) + data = await self.http.delete_invite(resolved.code) + return Invite.from_incomplete(state=self._connection, data=data) # Miscellaneous stuff diff --git a/discord/http.py b/discord/http.py index 6617efa27..3161f9e88 100644 --- a/discord/http.py +++ b/discord/http.py @@ -1874,7 +1874,7 @@ class HTTPClient: def invites_from_channel(self, channel_id: Snowflake) -> Response[List[invite.Invite]]: return self.request(Route('GET', '/channels/{channel_id}/invites', channel_id=channel_id)) - def delete_invite(self, invite_id: str, *, reason: Optional[str] = None) -> Response[None]: + def delete_invite(self, invite_id: str, *, reason: Optional[str] = None) -> Response[invite.Invite]: return self.request(Route('DELETE', '/invites/{invite_id}', invite_id=invite_id), reason=reason) # Role management diff --git a/discord/invite.py b/discord/invite.py index dd8cc954a..8c37bd232 100644 --- a/discord/invite.py +++ b/discord/invite.py @@ -546,7 +546,7 @@ class Invite(Hashable): return self - async def delete(self, *, reason: Optional[str] = None) -> None: + async def delete(self, *, reason: Optional[str] = None) -> Self: """|coro| Revokes the instant invite. @@ -568,4 +568,5 @@ class Invite(Hashable): Revoking the invite failed. """ - await self._state.http.delete_invite(self.code, reason=reason) + data = await self._state.http.delete_invite(self.code, reason=reason) + return self.from_incomplete(state=self._state, data=data)