@type t() :: %Google.Api.Expr.V1alpha1.Type{
__unknown_fields__: [
{field_number :: integer(), Protobuf.Wire.Types.wire_type(),
value :: term()}
],
type_kind:
{:dyn, Google.Protobuf.Empty.t() | nil}
| {:null, Google.Protobuf.NullValue.t()}
| {:primitive, Google.Api.Expr.V1alpha1.Type.PrimitiveType.t()}
| {:wrapper, Google.Api.Expr.V1alpha1.Type.PrimitiveType.t()}
| {:well_known, Google.Api.Expr.V1alpha1.Type.WellKnownType.t()}
| {:list_type, Google.Api.Expr.V1alpha1.Type.ListType.t() | nil}
| {:map_type, Google.Api.Expr.V1alpha1.Type.MapType.t() | nil}
| {:function, Google.Api.Expr.V1alpha1.Type.FunctionType.t() | nil}
| {:message_type, String.t()}
| {:type_param, String.t()}
| {:type, t() | nil}
| {:error, Google.Protobuf.Empty.t() | nil}
| {:abstract_type, Google.Api.Expr.V1alpha1.Type.AbstractType.t() | nil}
| nil
}