code: def declare(self, queue='', virtual_host='/', passive=False, durable=False,
                  auto_delete=False, arguments=None):
          
          if passive:
              return self.get(queue, virtual_host=virtual_host)
  
          queue_payload = json.dumps(
              {
                  'durable': durable,
                  'auto_delete': auto_delete,
                  'arguments': arguments or {},
                  'vhost': virtual_host
              }
          )
          return self.http_client.put(
              API_QUEUE % (
                  quote(virtual_host, ''),
                  queue
              ),
              payload=queue_payload)
docs: Declare a Queue.
  
          :param str queue: Queue name
          :param str virtual_host: Virtual host name
          :param bool passive: Do not create
          :param bool durable: Durable queue
          :param bool auto_delete: Automatically delete when not in use
          :param dict|None arguments: Queue key/value arguments
  
          :raises ApiError: Raises if the remote server encountered an error.
          :raises ApiConnectionError: Raises if there was a connectivity issue.
  
          :rtype: dict