code: def edit(self, **kwargs):
          
          payload = {}
  
          try:
              name = kwargs['name']
          except KeyError:
              pass
          else:
              if name is not None:
                  payload['name'] = str(name)
              else:
                  payload['name'] = None
  
          try:
              avatar = kwargs['avatar']
          except KeyError:
              pass
          else:
              if avatar is not None:
                  payload['avatar'] = utils._bytes_to_base64_data(avatar)
              else:
                  payload['avatar'] = None
  
          return self._adapter.edit_webhook(**payload)
docs: |maybecoro|
  
          Edits this Webhook.
  
          If the webhook is constructed with a :class:`RequestsWebhookAdapter` then this is
          not a coroutine.
  
          Parameters
          -------------
          name: Optional[:class:`str`]
              The webhook's new default name.
          avatar: Optional[:class:`bytes`]
              A :term:`py:bytes-like object` representing the webhook's new default avatar.
  
          Raises
          -------
          HTTPException
              Editing the webhook failed.
          NotFound
              This webhook does not exist.
          Forbidden
              You do not have permissions to edit this webhook.