def protocols(self):
        # type: () -> List[Text]
        """`list`: the list of supported protocols.
        """

        _protocols = list(self._protocols)
        if self.load_extern:
            _protocols.extend(
                entry_point.name
                for entry_point in pkg_resources.iter_entry_points("fs.opener")
            )
            _protocols = list(collections.OrderedDict.fromkeys(_protocols))
        return _protocols
`list`: the list of supported protocols.