Note that you can't actually forward declare (regular) enums in Standard C++. This is because the compiler is allowed to decide based on the values of the enum members what integral type is required to represent a particular enum, which it can't decide on without knowing the members.
Some compilers do let you get away with a forward declaration. But it's not valid Standard C++.
You are allowed to forward declare the new enum class, though.