Encapsulates Enums as a type