def _try_replace_label(typ: ProperType, has_lazy_label: bool) -> MypyType:
    """
    Attempt to replace a label with a modified version.

    If there are no lazy strings for labels, remove the lazy string type.
    """
    if has_lazy_label:
        return typ

    if not isinstance(typ, UnionType):
        # If it's not a union, then it already is likely just `str` and not lazy.
        return typ

    items = [
        t
        for t in map(get_proper_type, typ.items)
        if isinstance(t, Instance) and not t.type.has_base(fullnames.STR_PROMISE_FULLNAME)
    ]

    # If we only have one item use that, otherwise make a new union.
    return UnionType.make_union(items) if len(items) > 1 else items[0]

    Attempt to replace a label with a modified version.

    If there are no lazy strings for labels, remove the lazy string type.
    
mypy_django_plugin/transformers/choices.py