from enum import Enum


class GBTUiSelectionType(str, Enum):
    ANNOTATION = "ANNOTATION"
    BODY = "BODY"
    DIMENSION = "DIMENSION"
    EDGE_POINT = "EDGE_POINT"
    ELEMENT = "ELEMENT"
    ENTITY = "ENTITY"
    FEATURE = "FEATURE"
    FOLDER = "FOLDER"
    GENERATIVE_DESIGN_ITEM = "GENERATIVE_DESIGN_ITEM"
    MATE = "MATE"
    MATE_CONNECTOR = "MATE_CONNECTOR"
    MESH_POINT = "MESH_POINT"
    NON_GEOMETRIC_ITEM = "NON_GEOMETRIC_ITEM"
    OCCURRENCE = "OCCURRENCE"
    PERSISTENT_QUERY_STRING = "PERSISTENT_QUERY_STRING"
    PROPERTY = "PROPERTY"
    QUERY_VARIABLE = "QUERY_VARIABLE"
    ROLLBACKBAR = "ROLLBACKBAR"
    SIMULATION_LOAD = "SIMULATION_LOAD"
    SKETCH_GROUP = "SKETCH_GROUP"
    TABLE_ITEM = "TABLE_ITEM"
    TEMPORARY_GEOMETRY = "TEMPORARY_GEOMETRY"
    UNKNOWN = "UNKNOWN"
    USERCODE = "USERCODE"

    def __str__(self) -> str:
        return str(self.value)
