def METHOD_NAME(store_type):
    # type: (Union[StoreSelector, Type[StoreInterface], StoreInterface]) -> StoreTypeName
    if isinstance(store_type, StoreInterface):
        return store_type.type
    if isinstance(store_type, type) and issubclass(store_type, StoreInterface):
        return store_type.type
    if isinstance(store_type, str):
        return store_type
    raise TypeError(f"Unsupported store type selector: [{store_type}] ({type(store_type)})")