TypeCode is used as part of [Type][google.spanner.v1.Type] to
indicate the type of a Cloud Spanner value.
Each legal value of a type can be encoded to or decoded from a JSON
value, using the encodings described below. All Cloud Spanner values can
be null, regardless of type; nulls are always encoded as a JSON
Encoded as list, where the list elements are represented
Encoded as JSON true or false.
Encoded as a base64-encoded string, as described in RFC 4648,
Encoded as string in RFC 3339 date format.
Encoded as number, or the strings "NaN", "Infinity", or
Encoded as string, in decimal format.
Encoded as a JSON-formatted string as described in RFC 7159. The
following rules are applied when parsing JSON input:
Whitespace characters are not preserved.
If a JSON object has duplicate keys, only the first key is preserved.
Members of a JSON object are not guaranteed to have their order
JSON array elements will have their order preserved.
Encoded as string, in decimal format or scientific notation format.
<br>(ExponentIndicator is "e" or "E")
Encoded as string.
Encoded as list, where list element i is represented according
Encoded as string in RFC 3339 timestamp format. The time zone
must be present, and must be "Z".
If the schema has the column option
allow_commit_timestamp=true, the placeholder string
"spanner.commit_timestamp()" can be used to instruct the system
to insert the commit timestamp associated with the transaction