# typedef EnumType

#### package haxe.macro

#### import haxe.macro.Type

Available on all platforms

Represents an enum type.

### Properties

###

`constructs:Map<String, EnumField>`

The available enum constructors.

###

`doc:Null<String>`

The associated documentation of the class field.

###

`isExtern:Bool`

Whether or not the type is extern.

###

`isPrivate:Bool`

Whether or not the type is private.

###

`meta:MetaAccess`

The metadata of the type.

###

`module:String`

The module name of the type, which might be different.

###

`name:String`

The name of the type.

###

`names:Array<String>`

An ordered list of enum constructor names.

###

`pack:Array<String>`

The package of the type.

###

`params:Array<TypeParameter>`

The type parameters of the type.

###

`pos:Position`

The position of the type.

###

`exclude ():Void`

Allows excluding the type from compilation.