@type t() :: %Envoy.Config.Route.V3.Route{
__unknown_fields__: [
{field_number :: integer(), Protobuf.Wire.Types.wire_type(),
value :: term()}
],
action:
{:route, Envoy.Config.Route.V3.RouteAction.t() | nil}
| {:redirect, Envoy.Config.Route.V3.RedirectAction.t() | nil}
| {:direct_response, Envoy.Config.Route.V3.DirectResponseAction.t() | nil}
| {:filter_action, Envoy.Config.Route.V3.FilterAction.t() | nil}
| {:non_forwarding_action,
Envoy.Config.Route.V3.NonForwardingAction.t() | nil}
| nil,
decorator: Envoy.Config.Route.V3.Decorator.t() | nil,
match: Envoy.Config.Route.V3.RouteMatch.t() | nil,
metadata: Envoy.Config.Core.V3.Metadata.t() | nil,
name: String.t(),
per_request_buffer_limit_bytes: Google.Protobuf.UInt32Value.t() | nil,
request_headers_to_add: [Envoy.Config.Core.V3.HeaderValueOption.t()],
request_headers_to_remove: [String.t()],
response_headers_to_add: [Envoy.Config.Core.V3.HeaderValueOption.t()],
response_headers_to_remove: [String.t()],
stat_prefix: String.t(),
tracing: Envoy.Config.Route.V3.Tracing.t() | nil,
typed_per_filter_config: %{
optional(String.t()) => Google.Protobuf.Any.t() | nil
}
}