case classCaseClass(name: String, fields: ListSet[TypeMember], values: ListSet[TypeMember], typeArgs: ListSet[String]) extends TypeDef with Product with Serializable
case classCaseClassRef(name: String, typeArgs: ListSet[TypeRef]) extends TypeRef with Product with Serializable
case classCaseObject(name: String, values: ListSet[TypeMember]) extends TypeDef with Product with Serializable
case classEnumerationEnum(name: String, values: ListSet[String]) extends TypeDef with Product with Serializable