replaced `typedef enum` as `typedef NSENUM(type, name)`