I have a Python module that has a number of simple enums that are defined as follows:

```
class WordType(Enum):
    ADJ = "Adjective"
    ADV = "Adverb"

class Number(Enum):
    S = "Singular"
    P = "Plural"

```

Because there are a lot of these enums and I only decide at runtime which enums to query for any given input, I wanted a function that can retrieve the value given the enum-type and the enum-value as strings. I succeeded in doing that as follows:

```
names = inspect.getmembers(sys.modules[__name__], inspect.isclass)

def get_enum_type(name: str):
    enum_class = [x[1] for x in names if x[0] == name]
    return enum_class[0]

def get_enum_value(object_name: str, value_name: str):
    return get_enum_type(object_name)[value_name]

```

This works well, but now I'm adding type hinting and I'm struggling with how to define the return types for these methods: I've tried `slice` and `Literal[]`, both suggested by `mypy`, but neither checks out (maybe because I don't understand what type parameter I can give to `Literal[]`).

I am willing to modify the enum definitions, but I'd prefer to keep the dynamic querying as-is. Worst case scenario, I can do `# type: ignore` or just return `-> Any`, but I hope there's something better.