@type t() :: %Envoy.Config.Route.V3.RateLimit.Action{
__unknown_fields__: [
{field_number :: integer(), Protobuf.Wire.Types.wire_type(),
value :: term()}
],
action_specifier:
{:source_cluster,
Envoy.Config.Route.V3.RateLimit.Action.SourceCluster.t() | nil}
| {:destination_cluster,
Envoy.Config.Route.V3.RateLimit.Action.DestinationCluster.t() | nil}
| {:request_headers,
Envoy.Config.Route.V3.RateLimit.Action.RequestHeaders.t() | nil}
| {:remote_address,
Envoy.Config.Route.V3.RateLimit.Action.RemoteAddress.t() | nil}
| {:generic_key,
Envoy.Config.Route.V3.RateLimit.Action.GenericKey.t() | nil}
| {:header_value_match,
Envoy.Config.Route.V3.RateLimit.Action.HeaderValueMatch.t() | nil}
| {:dynamic_metadata,
Envoy.Config.Route.V3.RateLimit.Action.DynamicMetaData.t() | nil}
| {:metadata, Envoy.Config.Route.V3.RateLimit.Action.MetaData.t() | nil}
| {:extension, Envoy.Config.Core.V3.TypedExtensionConfig.t() | nil}
| {:masked_remote_address,
Envoy.Config.Route.V3.RateLimit.Action.MaskedRemoteAddress.t() | nil}
| {:query_parameter_value_match,
Envoy.Config.Route.V3.RateLimit.Action.QueryParameterValueMatch.t() | nil}
| nil
}