Separate public and private enums

This avoids leaking private enums in the public API, e.g.
StackableBoxTransitionType here.
12 jobs for private-leak-fix in 17 minutes and 33 seconds (queued for 2 minutes and 2 seconds)