The Operator does use Opaque secrets but uses data instead of stringData, the only difference being that data requires the values to be base64 encoded.
That however is an implementation detail that only the Operator should care about, as it will be creating the Secrets for you.
The other difference between our Operator and your example is that the keys in the secret match the names in Doppler, meaning they will be UPPER_SNAKE_CASE, and not lowercase.