The operation result, which can be either an error or a valid response.
If done == false, neither error nor response is set.
If done == true, exactly one of error or response can be set.
Some services might not provide the result.
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
The normal, successful response of the operation. If the original
method returns no data on success, such as Delete, the response is
google.protobuf.Empty. If the original method is standard
Get/Create/Update, the response should be the resource. For other
methods, the response should have the type XxxResponse, where Xxx
is the original method name. For example, if the original method name
is TakeSnapshot(), the inferred response type is
TakeSnapshotResponse.