docs: def accepts(self):  # type: Union[Iterable[Type[T]], Type[Any]]
          """The types of objects the data sink can store."""
          types = set()
          any_dispatch = False
          try:
              types.update(getattr(self.__class__, "put")._accepts)
              any_dispatch = True
          except AttributeError:
              pass
          try:
              types.update(getattr(self.__class__, "put_many")._accepts)
              any_dispatch = True
          except AttributeError:
              pass
          return types if any_dispatch else TYPE_WILDCARD