'Delete the exchange.
:param exchange: The exchange name
:type exchange: str or unicode
:param bool if_unused: only delete if the exchange is unused
:returns: Method frame from the Exchange.Delete-ok response
:rtype: `pika.frame.Method` having `method` attribute of type
`spec.Exchange.DeleteOk`'

def exchange_delete(self, exchange=None, if_unused=False):

    with _CallbackResult(self._MethodFrameCallbackResultArgs) as delete_ok_result:
        self._impl.exchange_delete(callback=delete_ok_result.set_value_once, exchange=exchange, if_unused=if_unused, nowait=False)
        self._flush_output(delete_ok_result.is_ready)
        return delete_ok_result.value.method_frame
