docs: def delete_tables(self, **kwargs):
          """
          removes all the tables from the db
  
          this is, obviously, very bad if you didn't mean to call this, because of that, you
          have to pass in disable_protection=True, if it doesn't get that passed in, it won't
          run this method
          """
          if not kwargs.get('disable_protection', False):
              raise ValueError('In order to delete all the tables, pass in disable_protection=True')
  
          with self.connection(**kwargs) as connection:
              kwargs['connection'] = connection
              self._delete_tables(**kwargs)