import inspect


def get_class_property_names(obj: object):
    """Returns the names of all properties of a class."""
    return [
        p[0] for p in inspect.getmembers(type(obj), inspect.isdatadescriptor)
        if not p[0].startswith("_")
    ]