enumerations for all types