re-introduce enum typedefs without forward declarations

This should make the headers compatible with ISO C++
while still allowing to build documentation.