code: def remove(self, **kwargs):
          '''
          :raises: :exc:`~dxpy.exceptions.DXError` if no project is associated with the object
  
          Permanently removes the associated remote object from the
          associated project.
          '''
  
          if self._proj is None:
              raise DXError("Remove called when a project ID was not associated with this object handler")
  
          dxpy.api.project_remove_objects(self._proj, {"objects": [self._dxid]},
                                          **kwargs)
  
          # Reset internal state
          self._dxid = None
          self._proj = None
          self._desc = {f remove(self, **kwargs):
          '''
          :raises: :exc:`~dxpy.exceptions.DXError` if no project is associated with the object
  
          Permanently removes the associated remote object from the
          associated project.
          '''
  
          if self._proj is None:
              raise DXError("Remove called when a project ID was not associated with this object handler")
  
          dxpy.api.project_remove_objects(self._proj, {"objects": [self._dxid]},
                                          **kwargs)
  
          # Reset internal state
          self._dxid = None
          self._proj = None
          self._desc = {}
docs: :raises: :exc:`~dxpy.exceptions.DXError` if no project is associated with the object
  
          Permanently removes the associated remote object from the
          associated project.