|coro|

        Retrieves all the users that are banned from the guild.

        This coroutine returns a :class:`list` of BanEntry objects, which is a
        namedtuple with a ``user`` field to denote the :class:`User`
        that got banned along with a ``reason`` field specifying
        why the user was banned that could be set to ``None``.

        You must have the :attr:`~Permissions.ban_members` permission
        to get this information.

        Raises
        -------
        Forbidden
            You do not have proper permissions to get the information.
        HTTPException
            An error occurred while fetching the information.

        Returns
        --------
        List[BanEntry]
            A list of BanEntry objects.

async def bans(self):
        """|coro|

        Retrieves all the users that are banned from the guild.

        This coroutine returns a :class:`list` of BanEntry objects, which is a
        namedtuple with a ``user`` field to denote the :class:`User`
        that got banned along with a ``reason`` field specifying
        why the user was banned that could be set to ``None``.

        You must have the :attr:`~Permissions.ban_members` permission
        to get this information.

        Raises
        -------
        Forbidden
            You do not have proper permissions to get the information.
        HTTPException
            An error occurred while fetching the information.

        Returns
        --------
        List[BanEntry]
            A list of BanEntry objects.
        """

        data = await self._state.http.get_bans(self.id)
        return [BanEntry(user=User(state=self._state, data=e['user']),
                         reason=e['reason'])
                for e in data]