opaque Types
All qualified named Protobuf types in opaqueTypes will be evaluated as being of type bytes. On code generation, the fields of such types will be using the platform equivalent of bytes, like okio.ByteString for the JVM. Note that scalar types cannot be opaqued. The opaque step will happen before the tree shaking one.