code: def properties(self):  # type: () -> list
          
  
          _type = type(self)
          return [_property for _property in dir(_type) if self._is_property(_property)]
docs: Returns:
                  (list[str]) List of public properties