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