docs: def dumps(self, config, instance, prefer=None, **kwargs):
          """ An abstract dumps method which dumps an instance into the subclasses format.
  
          :param class config: The config class of the instance
          :param object instance: The instance to dump
          :param str prefer: The preferred serialization module name
          :raises ValueError: If dump handler does not provide handler method
          :return: The dumped content
          :rtype: str
          """
  
          dumper = self._prefer_package(prefer)
          dumps_hook_name = f"on_{dumper}_dumps"
          dumps_hook = getattr(self, dumps_hook_name, None)
          if not callable(dumps_hook):
              raise ValueError(
                  f"no dumps handler for {self.imported!r}, requires method "
                  f"{dumps_hook_name!r} in {self!r}"
              )
  
          extras = self.options.copy()
          for (key, value) in kwargs.items():
              if key not in extras.keys():
                  warnings.warn(
                      f"handler 'dumps_{self.name!s}' does not support {key!r} argument"
                  )
              else:
                  extras[key] = value
          return dumps_hook(self.handler, config, instance, **extras)