diff --git a/packages/grpc-js/package.json b/packages/grpc-js/package.json index e1b380ba..7080270e 100644 --- a/packages/grpc-js/package.json +++ b/packages/grpc-js/package.json @@ -47,7 +47,7 @@ "clean": "node -e 'require(\"rimraf\")(\"./build\", () => {})'", "compile": "tsc -p .", "format": "clang-format -i -style=\"{Language: JavaScript, BasedOnStyle: Google, ColumnLimit: 80}\" src/*.ts test/*.ts", - "generate-types": "proto-loader-gen-types --keepCase --longs String --enums String --defaults --oneofs --json --generateComments --includeDirs deps/envoy-api/ deps/udpa/ deps/googleapis/ deps/protoc-gen-validate/ -O src/generated/ --grpcLib ../index envoy/service/discovery/v2/ads.proto envoy/api/v2/listener.proto envoy/api/v2/route.proto envoy/api/v2/cluster.proto envoy/api/v2/endpoint.proto", + "generate-types": "proto-loader-gen-types --keepCase --longs String --enums String --defaults --oneofs --json --includeComments --includeDirs deps/envoy-api/ deps/udpa/ deps/googleapis/ deps/protoc-gen-validate/ -O src/generated/ --grpcLib ../index envoy/service/discovery/v2/ads.proto envoy/api/v2/listener.proto envoy/api/v2/route.proto envoy/api/v2/cluster.proto envoy/api/v2/endpoint.proto", "lint": "npm run check", "prepare": "npm run compile", "test": "gulp test", diff --git a/packages/grpc-js/src/generated/ads.ts b/packages/grpc-js/src/generated/ads.ts index 369b6b8c..a33270cc 100644 --- a/packages/grpc-js/src/generated/ads.ts +++ b/packages/grpc-js/src/generated/ads.ts @@ -1,1159 +1,7 @@ import * as grpc from '../index'; import { ServiceDefinition, EnumTypeDefinition, MessageTypeDefinition } from '@grpc/proto-loader'; -import { DeltaDiscoveryRequest as _envoy_api_v2_DeltaDiscoveryRequest, DeltaDiscoveryRequest__Output as _envoy_api_v2_DeltaDiscoveryRequest__Output } from './envoy/api/v2/DeltaDiscoveryRequest'; -import { DeltaDiscoveryResponse as _envoy_api_v2_DeltaDiscoveryResponse, DeltaDiscoveryResponse__Output as _envoy_api_v2_DeltaDiscoveryResponse__Output } from './envoy/api/v2/DeltaDiscoveryResponse'; -import { DiscoveryRequest as _envoy_api_v2_DiscoveryRequest, DiscoveryRequest__Output as _envoy_api_v2_DiscoveryRequest__Output } from './envoy/api/v2/DiscoveryRequest'; -import { DiscoveryResponse as _envoy_api_v2_DiscoveryResponse, DiscoveryResponse__Output as _envoy_api_v2_DiscoveryResponse__Output } from './envoy/api/v2/DiscoveryResponse'; -import { Resource as _envoy_api_v2_Resource, Resource__Output as _envoy_api_v2_Resource__Output } from './envoy/api/v2/Resource'; -import { Address as _envoy_api_v2_core_Address, Address__Output as _envoy_api_v2_core_Address__Output } from './envoy/api/v2/core/Address'; -import { AsyncDataSource as _envoy_api_v2_core_AsyncDataSource, AsyncDataSource__Output as _envoy_api_v2_core_AsyncDataSource__Output } from './envoy/api/v2/core/AsyncDataSource'; -import { BackoffStrategy as _envoy_api_v2_core_BackoffStrategy, BackoffStrategy__Output as _envoy_api_v2_core_BackoffStrategy__Output } from './envoy/api/v2/core/BackoffStrategy'; -import { BindConfig as _envoy_api_v2_core_BindConfig, BindConfig__Output as _envoy_api_v2_core_BindConfig__Output } from './envoy/api/v2/core/BindConfig'; -import { BuildVersion as _envoy_api_v2_core_BuildVersion, BuildVersion__Output as _envoy_api_v2_core_BuildVersion__Output } from './envoy/api/v2/core/BuildVersion'; -import { CidrRange as _envoy_api_v2_core_CidrRange, CidrRange__Output as _envoy_api_v2_core_CidrRange__Output } from './envoy/api/v2/core/CidrRange'; -import { ControlPlane as _envoy_api_v2_core_ControlPlane, ControlPlane__Output as _envoy_api_v2_core_ControlPlane__Output } from './envoy/api/v2/core/ControlPlane'; -import { DataSource as _envoy_api_v2_core_DataSource, DataSource__Output as _envoy_api_v2_core_DataSource__Output } from './envoy/api/v2/core/DataSource'; -import { Extension as _envoy_api_v2_core_Extension, Extension__Output as _envoy_api_v2_core_Extension__Output } from './envoy/api/v2/core/Extension'; -import { HeaderMap as _envoy_api_v2_core_HeaderMap, HeaderMap__Output as _envoy_api_v2_core_HeaderMap__Output } from './envoy/api/v2/core/HeaderMap'; -import { HeaderValue as _envoy_api_v2_core_HeaderValue, HeaderValue__Output as _envoy_api_v2_core_HeaderValue__Output } from './envoy/api/v2/core/HeaderValue'; -import { HeaderValueOption as _envoy_api_v2_core_HeaderValueOption, HeaderValueOption__Output as _envoy_api_v2_core_HeaderValueOption__Output } from './envoy/api/v2/core/HeaderValueOption'; -import { HttpUri as _envoy_api_v2_core_HttpUri, HttpUri__Output as _envoy_api_v2_core_HttpUri__Output } from './envoy/api/v2/core/HttpUri'; -import { Locality as _envoy_api_v2_core_Locality, Locality__Output as _envoy_api_v2_core_Locality__Output } from './envoy/api/v2/core/Locality'; -import { Metadata as _envoy_api_v2_core_Metadata, Metadata__Output as _envoy_api_v2_core_Metadata__Output } from './envoy/api/v2/core/Metadata'; -import { Node as _envoy_api_v2_core_Node, Node__Output as _envoy_api_v2_core_Node__Output } from './envoy/api/v2/core/Node'; -import { Pipe as _envoy_api_v2_core_Pipe, Pipe__Output as _envoy_api_v2_core_Pipe__Output } from './envoy/api/v2/core/Pipe'; -import { RemoteDataSource as _envoy_api_v2_core_RemoteDataSource, RemoteDataSource__Output as _envoy_api_v2_core_RemoteDataSource__Output } from './envoy/api/v2/core/RemoteDataSource'; -import { RequestMethod as _envoy_api_v2_core_RequestMethod } from './envoy/api/v2/core/RequestMethod'; -import { RetryPolicy as _envoy_api_v2_core_RetryPolicy, RetryPolicy__Output as _envoy_api_v2_core_RetryPolicy__Output } from './envoy/api/v2/core/RetryPolicy'; -import { RoutingPriority as _envoy_api_v2_core_RoutingPriority } from './envoy/api/v2/core/RoutingPriority'; -import { RuntimeDouble as _envoy_api_v2_core_RuntimeDouble, RuntimeDouble__Output as _envoy_api_v2_core_RuntimeDouble__Output } from './envoy/api/v2/core/RuntimeDouble'; -import { RuntimeFeatureFlag as _envoy_api_v2_core_RuntimeFeatureFlag, RuntimeFeatureFlag__Output as _envoy_api_v2_core_RuntimeFeatureFlag__Output } from './envoy/api/v2/core/RuntimeFeatureFlag'; -import { RuntimeFractionalPercent as _envoy_api_v2_core_RuntimeFractionalPercent, RuntimeFractionalPercent__Output as _envoy_api_v2_core_RuntimeFractionalPercent__Output } from './envoy/api/v2/core/RuntimeFractionalPercent'; -import { RuntimeUInt32 as _envoy_api_v2_core_RuntimeUInt32, RuntimeUInt32__Output as _envoy_api_v2_core_RuntimeUInt32__Output } from './envoy/api/v2/core/RuntimeUInt32'; -import { SocketAddress as _envoy_api_v2_core_SocketAddress, SocketAddress__Output as _envoy_api_v2_core_SocketAddress__Output } from './envoy/api/v2/core/SocketAddress'; -import { SocketOption as _envoy_api_v2_core_SocketOption, SocketOption__Output as _envoy_api_v2_core_SocketOption__Output } from './envoy/api/v2/core/SocketOption'; -import { TcpKeepalive as _envoy_api_v2_core_TcpKeepalive, TcpKeepalive__Output as _envoy_api_v2_core_TcpKeepalive__Output } from './envoy/api/v2/core/TcpKeepalive'; -import { TrafficDirection as _envoy_api_v2_core_TrafficDirection } from './envoy/api/v2/core/TrafficDirection'; -import { TransportSocket as _envoy_api_v2_core_TransportSocket, TransportSocket__Output as _envoy_api_v2_core_TransportSocket__Output } from './envoy/api/v2/core/TransportSocket'; -import { AdsDummy as _envoy_service_discovery_v2_AdsDummy, AdsDummy__Output as _envoy_service_discovery_v2_AdsDummy__Output } from './envoy/service/discovery/v2/AdsDummy'; -import { FractionalPercent as _envoy_type_FractionalPercent, FractionalPercent__Output as _envoy_type_FractionalPercent__Output } from './envoy/type/FractionalPercent'; -import { Percent as _envoy_type_Percent, Percent__Output as _envoy_type_Percent__Output } from './envoy/type/Percent'; -import { SemanticVersion as _envoy_type_SemanticVersion, SemanticVersion__Output as _envoy_type_SemanticVersion__Output } from './envoy/type/SemanticVersion'; -import { Any as _google_protobuf_Any, Any__Output as _google_protobuf_Any__Output } from './google/protobuf/Any'; -import { BoolValue as _google_protobuf_BoolValue, BoolValue__Output as _google_protobuf_BoolValue__Output } from './google/protobuf/BoolValue'; -import { BytesValue as _google_protobuf_BytesValue, BytesValue__Output as _google_protobuf_BytesValue__Output } from './google/protobuf/BytesValue'; -import { DescriptorProto as _google_protobuf_DescriptorProto, DescriptorProto__Output as _google_protobuf_DescriptorProto__Output } from './google/protobuf/DescriptorProto'; -import { DoubleValue as _google_protobuf_DoubleValue, DoubleValue__Output as _google_protobuf_DoubleValue__Output } from './google/protobuf/DoubleValue'; -import { Duration as _google_protobuf_Duration, Duration__Output as _google_protobuf_Duration__Output } from './google/protobuf/Duration'; -import { EnumDescriptorProto as _google_protobuf_EnumDescriptorProto, EnumDescriptorProto__Output as _google_protobuf_EnumDescriptorProto__Output } from './google/protobuf/EnumDescriptorProto'; -import { EnumOptions as _google_protobuf_EnumOptions, EnumOptions__Output as _google_protobuf_EnumOptions__Output } from './google/protobuf/EnumOptions'; -import { EnumValueDescriptorProto as _google_protobuf_EnumValueDescriptorProto, EnumValueDescriptorProto__Output as _google_protobuf_EnumValueDescriptorProto__Output } from './google/protobuf/EnumValueDescriptorProto'; -import { EnumValueOptions as _google_protobuf_EnumValueOptions, EnumValueOptions__Output as _google_protobuf_EnumValueOptions__Output } from './google/protobuf/EnumValueOptions'; -import { FieldDescriptorProto as _google_protobuf_FieldDescriptorProto, FieldDescriptorProto__Output as _google_protobuf_FieldDescriptorProto__Output } from './google/protobuf/FieldDescriptorProto'; -import { FieldOptions as _google_protobuf_FieldOptions, FieldOptions__Output as _google_protobuf_FieldOptions__Output } from './google/protobuf/FieldOptions'; -import { FileDescriptorProto as _google_protobuf_FileDescriptorProto, FileDescriptorProto__Output as _google_protobuf_FileDescriptorProto__Output } from './google/protobuf/FileDescriptorProto'; -import { FileDescriptorSet as _google_protobuf_FileDescriptorSet, FileDescriptorSet__Output as _google_protobuf_FileDescriptorSet__Output } from './google/protobuf/FileDescriptorSet'; -import { FileOptions as _google_protobuf_FileOptions, FileOptions__Output as _google_protobuf_FileOptions__Output } from './google/protobuf/FileOptions'; -import { FloatValue as _google_protobuf_FloatValue, FloatValue__Output as _google_protobuf_FloatValue__Output } from './google/protobuf/FloatValue'; -import { GeneratedCodeInfo as _google_protobuf_GeneratedCodeInfo, GeneratedCodeInfo__Output as _google_protobuf_GeneratedCodeInfo__Output } from './google/protobuf/GeneratedCodeInfo'; -import { Int32Value as _google_protobuf_Int32Value, Int32Value__Output as _google_protobuf_Int32Value__Output } from './google/protobuf/Int32Value'; -import { Int64Value as _google_protobuf_Int64Value, Int64Value__Output as _google_protobuf_Int64Value__Output } from './google/protobuf/Int64Value'; -import { ListValue as _google_protobuf_ListValue, ListValue__Output as _google_protobuf_ListValue__Output } from './google/protobuf/ListValue'; -import { MessageOptions as _google_protobuf_MessageOptions, MessageOptions__Output as _google_protobuf_MessageOptions__Output } from './google/protobuf/MessageOptions'; -import { MethodDescriptorProto as _google_protobuf_MethodDescriptorProto, MethodDescriptorProto__Output as _google_protobuf_MethodDescriptorProto__Output } from './google/protobuf/MethodDescriptorProto'; -import { MethodOptions as _google_protobuf_MethodOptions, MethodOptions__Output as _google_protobuf_MethodOptions__Output } from './google/protobuf/MethodOptions'; -import { NullValue as _google_protobuf_NullValue } from './google/protobuf/NullValue'; -import { OneofDescriptorProto as _google_protobuf_OneofDescriptorProto, OneofDescriptorProto__Output as _google_protobuf_OneofDescriptorProto__Output } from './google/protobuf/OneofDescriptorProto'; -import { OneofOptions as _google_protobuf_OneofOptions, OneofOptions__Output as _google_protobuf_OneofOptions__Output } from './google/protobuf/OneofOptions'; -import { ServiceDescriptorProto as _google_protobuf_ServiceDescriptorProto, ServiceDescriptorProto__Output as _google_protobuf_ServiceDescriptorProto__Output } from './google/protobuf/ServiceDescriptorProto'; -import { ServiceOptions as _google_protobuf_ServiceOptions, ServiceOptions__Output as _google_protobuf_ServiceOptions__Output } from './google/protobuf/ServiceOptions'; -import { SourceCodeInfo as _google_protobuf_SourceCodeInfo, SourceCodeInfo__Output as _google_protobuf_SourceCodeInfo__Output } from './google/protobuf/SourceCodeInfo'; -import { StringValue as _google_protobuf_StringValue, StringValue__Output as _google_protobuf_StringValue__Output } from './google/protobuf/StringValue'; -import { Struct as _google_protobuf_Struct, Struct__Output as _google_protobuf_Struct__Output } from './google/protobuf/Struct'; -import { Timestamp as _google_protobuf_Timestamp, Timestamp__Output as _google_protobuf_Timestamp__Output } from './google/protobuf/Timestamp'; -import { UInt32Value as _google_protobuf_UInt32Value, UInt32Value__Output as _google_protobuf_UInt32Value__Output } from './google/protobuf/UInt32Value'; -import { UInt64Value as _google_protobuf_UInt64Value, UInt64Value__Output as _google_protobuf_UInt64Value__Output } from './google/protobuf/UInt64Value'; -import { UninterpretedOption as _google_protobuf_UninterpretedOption, UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output } from './google/protobuf/UninterpretedOption'; -import { Value as _google_protobuf_Value, Value__Output as _google_protobuf_Value__Output } from './google/protobuf/Value'; -import { Status as _google_rpc_Status, Status__Output as _google_rpc_Status__Output } from './google/rpc/Status'; -import { FieldMigrateAnnotation as _udpa_annotations_FieldMigrateAnnotation, FieldMigrateAnnotation__Output as _udpa_annotations_FieldMigrateAnnotation__Output } from './udpa/annotations/FieldMigrateAnnotation'; -import { FileMigrateAnnotation as _udpa_annotations_FileMigrateAnnotation, FileMigrateAnnotation__Output as _udpa_annotations_FileMigrateAnnotation__Output } from './udpa/annotations/FileMigrateAnnotation'; -import { MigrateAnnotation as _udpa_annotations_MigrateAnnotation, MigrateAnnotation__Output as _udpa_annotations_MigrateAnnotation__Output } from './udpa/annotations/MigrateAnnotation'; -import { PackageVersionStatus as _udpa_annotations_PackageVersionStatus } from './udpa/annotations/PackageVersionStatus'; -import { StatusAnnotation as _udpa_annotations_StatusAnnotation, StatusAnnotation__Output as _udpa_annotations_StatusAnnotation__Output } from './udpa/annotations/StatusAnnotation'; -import { AnyRules as _validate_AnyRules, AnyRules__Output as _validate_AnyRules__Output } from './validate/AnyRules'; -import { BoolRules as _validate_BoolRules, BoolRules__Output as _validate_BoolRules__Output } from './validate/BoolRules'; -import { BytesRules as _validate_BytesRules, BytesRules__Output as _validate_BytesRules__Output } from './validate/BytesRules'; -import { DoubleRules as _validate_DoubleRules, DoubleRules__Output as _validate_DoubleRules__Output } from './validate/DoubleRules'; -import { DurationRules as _validate_DurationRules, DurationRules__Output as _validate_DurationRules__Output } from './validate/DurationRules'; -import { EnumRules as _validate_EnumRules, EnumRules__Output as _validate_EnumRules__Output } from './validate/EnumRules'; -import { FieldRules as _validate_FieldRules, FieldRules__Output as _validate_FieldRules__Output } from './validate/FieldRules'; -import { Fixed32Rules as _validate_Fixed32Rules, Fixed32Rules__Output as _validate_Fixed32Rules__Output } from './validate/Fixed32Rules'; -import { Fixed64Rules as _validate_Fixed64Rules, Fixed64Rules__Output as _validate_Fixed64Rules__Output } from './validate/Fixed64Rules'; -import { FloatRules as _validate_FloatRules, FloatRules__Output as _validate_FloatRules__Output } from './validate/FloatRules'; -import { Int32Rules as _validate_Int32Rules, Int32Rules__Output as _validate_Int32Rules__Output } from './validate/Int32Rules'; -import { Int64Rules as _validate_Int64Rules, Int64Rules__Output as _validate_Int64Rules__Output } from './validate/Int64Rules'; -import { KnownRegex as _validate_KnownRegex } from './validate/KnownRegex'; -import { MapRules as _validate_MapRules, MapRules__Output as _validate_MapRules__Output } from './validate/MapRules'; -import { MessageRules as _validate_MessageRules, MessageRules__Output as _validate_MessageRules__Output } from './validate/MessageRules'; -import { RepeatedRules as _validate_RepeatedRules, RepeatedRules__Output as _validate_RepeatedRules__Output } from './validate/RepeatedRules'; -import { SFixed32Rules as _validate_SFixed32Rules, SFixed32Rules__Output as _validate_SFixed32Rules__Output } from './validate/SFixed32Rules'; -import { SFixed64Rules as _validate_SFixed64Rules, SFixed64Rules__Output as _validate_SFixed64Rules__Output } from './validate/SFixed64Rules'; -import { SInt32Rules as _validate_SInt32Rules, SInt32Rules__Output as _validate_SInt32Rules__Output } from './validate/SInt32Rules'; -import { SInt64Rules as _validate_SInt64Rules, SInt64Rules__Output as _validate_SInt64Rules__Output } from './validate/SInt64Rules'; -import { StringRules as _validate_StringRules, StringRules__Output as _validate_StringRules__Output } from './validate/StringRules'; -import { TimestampRules as _validate_TimestampRules, TimestampRules__Output as _validate_TimestampRules__Output } from './validate/TimestampRules'; -import { UInt32Rules as _validate_UInt32Rules, UInt32Rules__Output as _validate_UInt32Rules__Output } from './validate/UInt32Rules'; -import { UInt64Rules as _validate_UInt64Rules, UInt64Rules__Output as _validate_UInt64Rules__Output } from './validate/UInt64Rules'; - -export namespace messages { - export namespace envoy { - export namespace api { - export namespace v2 { - /** - * DeltaDiscoveryRequest and DeltaDiscoveryResponse are used in a new gRPC - * endpoint for Delta xDS. - * - * With Delta xDS, the DeltaDiscoveryResponses do not need to include a full - * snapshot of the tracked resources. Instead, DeltaDiscoveryResponses are a - * diff to the state of a xDS client. - * In Delta XDS there are per-resource versions, which allow tracking state at - * the resource granularity. - * An xDS Delta session is always in the context of a gRPC bidirectional - * stream. This allows the xDS server to keep track of the state of xDS clients - * connected to it. - * - * In Delta xDS the nonce field is required and used to pair - * DeltaDiscoveryResponse to a DeltaDiscoveryRequest ACK or NACK. - * Optionally, a response message level system_version_info is present for - * debugging purposes only. - * - * DeltaDiscoveryRequest plays two independent roles. Any DeltaDiscoveryRequest - * can be either or both of: [1] informing the server of what resources the - * client has gained/lost interest in (using resource_names_subscribe and - * resource_names_unsubscribe), or [2] (N)ACKing an earlier resource update from - * the server (using response_nonce, with presence of error_detail making it a NACK). - * Additionally, the first message (for a given type_url) of a reconnected gRPC stream - * has a third role: informing the server of the resources (and their versions) - * that the client already possesses, using the initial_resource_versions field. - * - * As with state-of-the-world, when multiple resource types are multiplexed (ADS), - * all requests/acknowledgments/updates are logically walled off by type_url: - * a Cluster ACK exists in a completely separate world from a prior Route NACK. - * In particular, initial_resource_versions being sent at the "start" of every - * gRPC stream actually entails a message for each type_url, each with its own - * initial_resource_versions. - * [#next-free-field: 8] - */ - export type DeltaDiscoveryRequest = _envoy_api_v2_DeltaDiscoveryRequest; - /** - * DeltaDiscoveryRequest and DeltaDiscoveryResponse are used in a new gRPC - * endpoint for Delta xDS. - * - * With Delta xDS, the DeltaDiscoveryResponses do not need to include a full - * snapshot of the tracked resources. Instead, DeltaDiscoveryResponses are a - * diff to the state of a xDS client. - * In Delta XDS there are per-resource versions, which allow tracking state at - * the resource granularity. - * An xDS Delta session is always in the context of a gRPC bidirectional - * stream. This allows the xDS server to keep track of the state of xDS clients - * connected to it. - * - * In Delta xDS the nonce field is required and used to pair - * DeltaDiscoveryResponse to a DeltaDiscoveryRequest ACK or NACK. - * Optionally, a response message level system_version_info is present for - * debugging purposes only. - * - * DeltaDiscoveryRequest plays two independent roles. Any DeltaDiscoveryRequest - * can be either or both of: [1] informing the server of what resources the - * client has gained/lost interest in (using resource_names_subscribe and - * resource_names_unsubscribe), or [2] (N)ACKing an earlier resource update from - * the server (using response_nonce, with presence of error_detail making it a NACK). - * Additionally, the first message (for a given type_url) of a reconnected gRPC stream - * has a third role: informing the server of the resources (and their versions) - * that the client already possesses, using the initial_resource_versions field. - * - * As with state-of-the-world, when multiple resource types are multiplexed (ADS), - * all requests/acknowledgments/updates are logically walled off by type_url: - * a Cluster ACK exists in a completely separate world from a prior Route NACK. - * In particular, initial_resource_versions being sent at the "start" of every - * gRPC stream actually entails a message for each type_url, each with its own - * initial_resource_versions. - * [#next-free-field: 8] - */ - export type DeltaDiscoveryRequest__Output = _envoy_api_v2_DeltaDiscoveryRequest__Output; - /** - * [#next-free-field: 7] - */ - export type DeltaDiscoveryResponse = _envoy_api_v2_DeltaDiscoveryResponse; - /** - * [#next-free-field: 7] - */ - export type DeltaDiscoveryResponse__Output = _envoy_api_v2_DeltaDiscoveryResponse__Output; - /** - * A DiscoveryRequest requests a set of versioned resources of the same type for - * a given Envoy node on some API. - * [#next-free-field: 7] - */ - export type DiscoveryRequest = _envoy_api_v2_DiscoveryRequest; - /** - * A DiscoveryRequest requests a set of versioned resources of the same type for - * a given Envoy node on some API. - * [#next-free-field: 7] - */ - export type DiscoveryRequest__Output = _envoy_api_v2_DiscoveryRequest__Output; - /** - * [#next-free-field: 7] - */ - export type DiscoveryResponse = _envoy_api_v2_DiscoveryResponse; - /** - * [#next-free-field: 7] - */ - export type DiscoveryResponse__Output = _envoy_api_v2_DiscoveryResponse__Output; - export type Resource = _envoy_api_v2_Resource; - export type Resource__Output = _envoy_api_v2_Resource__Output; - export namespace core { - /** - * Addresses specify either a logical or physical address and port, which are - * used to tell Envoy where to bind/listen, connect to upstream and find - * management servers. - */ - export type Address = _envoy_api_v2_core_Address; - /** - * Addresses specify either a logical or physical address and port, which are - * used to tell Envoy where to bind/listen, connect to upstream and find - * management servers. - */ - export type Address__Output = _envoy_api_v2_core_Address__Output; - /** - * Async data source which support async data fetch. - */ - export type AsyncDataSource = _envoy_api_v2_core_AsyncDataSource; - /** - * Async data source which support async data fetch. - */ - export type AsyncDataSource__Output = _envoy_api_v2_core_AsyncDataSource__Output; - /** - * Configuration defining a jittered exponential back off strategy. - */ - export type BackoffStrategy = _envoy_api_v2_core_BackoffStrategy; - /** - * Configuration defining a jittered exponential back off strategy. - */ - export type BackoffStrategy__Output = _envoy_api_v2_core_BackoffStrategy__Output; - export type BindConfig = _envoy_api_v2_core_BindConfig; - export type BindConfig__Output = _envoy_api_v2_core_BindConfig__Output; - /** - * BuildVersion combines SemVer version of extension with free-form build information - * (i.e. 'alpha', 'private-build') as a set of strings. - */ - export type BuildVersion = _envoy_api_v2_core_BuildVersion; - /** - * BuildVersion combines SemVer version of extension with free-form build information - * (i.e. 'alpha', 'private-build') as a set of strings. - */ - export type BuildVersion__Output = _envoy_api_v2_core_BuildVersion__Output; - /** - * CidrRange specifies an IP Address and a prefix length to construct - * the subnet mask for a `CIDR `_ range. - */ - export type CidrRange = _envoy_api_v2_core_CidrRange; - /** - * CidrRange specifies an IP Address and a prefix length to construct - * the subnet mask for a `CIDR `_ range. - */ - export type CidrRange__Output = _envoy_api_v2_core_CidrRange__Output; - /** - * Identifies a specific ControlPlane instance that Envoy is connected to. - */ - export type ControlPlane = _envoy_api_v2_core_ControlPlane; - /** - * Identifies a specific ControlPlane instance that Envoy is connected to. - */ - export type ControlPlane__Output = _envoy_api_v2_core_ControlPlane__Output; - /** - * Data source consisting of either a file or an inline value. - */ - export type DataSource = _envoy_api_v2_core_DataSource; - /** - * Data source consisting of either a file or an inline value. - */ - export type DataSource__Output = _envoy_api_v2_core_DataSource__Output; - /** - * Version and identification for an Envoy extension. - * [#next-free-field: 6] - */ - export type Extension = _envoy_api_v2_core_Extension; - /** - * Version and identification for an Envoy extension. - * [#next-free-field: 6] - */ - export type Extension__Output = _envoy_api_v2_core_Extension__Output; - /** - * Wrapper for a set of headers. - */ - export type HeaderMap = _envoy_api_v2_core_HeaderMap; - /** - * Wrapper for a set of headers. - */ - export type HeaderMap__Output = _envoy_api_v2_core_HeaderMap__Output; - /** - * Header name/value pair. - */ - export type HeaderValue = _envoy_api_v2_core_HeaderValue; - /** - * Header name/value pair. - */ - export type HeaderValue__Output = _envoy_api_v2_core_HeaderValue__Output; - /** - * Header name/value pair plus option to control append behavior. - */ - export type HeaderValueOption = _envoy_api_v2_core_HeaderValueOption; - /** - * Header name/value pair plus option to control append behavior. - */ - export type HeaderValueOption__Output = _envoy_api_v2_core_HeaderValueOption__Output; - /** - * Envoy external URI descriptor - */ - export type HttpUri = _envoy_api_v2_core_HttpUri; - /** - * Envoy external URI descriptor - */ - export type HttpUri__Output = _envoy_api_v2_core_HttpUri__Output; - /** - * Identifies location of where either Envoy runs or where upstream hosts run. - */ - export type Locality = _envoy_api_v2_core_Locality; - /** - * Identifies location of where either Envoy runs or where upstream hosts run. - */ - export type Locality__Output = _envoy_api_v2_core_Locality__Output; - /** - * Metadata provides additional inputs to filters based on matched listeners, - * filter chains, routes and endpoints. It is structured as a map, usually from - * filter name (in reverse DNS format) to metadata specific to the filter. Metadata - * key-values for a filter are merged as connection and request handling occurs, - * with later values for the same key overriding earlier values. - * - * An example use of metadata is providing additional values to - * http_connection_manager in the envoy.http_connection_manager.access_log - * namespace. - * - * Another example use of metadata is to per service config info in cluster metadata, which may get - * consumed by multiple filters. - * - * For load balancing, Metadata provides a means to subset cluster endpoints. - * Endpoints have a Metadata object associated and routes contain a Metadata - * object to match against. There are some well defined metadata used today for - * this purpose: - * - * * ``{"envoy.lb": {"canary": }}`` This indicates the canary status of an - * endpoint and is also used during header processing - * (x-envoy-upstream-canary) and for stats purposes. - * [#next-major-version: move to type/metadata/v2] - */ - export type Metadata = _envoy_api_v2_core_Metadata; - /** - * Metadata provides additional inputs to filters based on matched listeners, - * filter chains, routes and endpoints. It is structured as a map, usually from - * filter name (in reverse DNS format) to metadata specific to the filter. Metadata - * key-values for a filter are merged as connection and request handling occurs, - * with later values for the same key overriding earlier values. - * - * An example use of metadata is providing additional values to - * http_connection_manager in the envoy.http_connection_manager.access_log - * namespace. - * - * Another example use of metadata is to per service config info in cluster metadata, which may get - * consumed by multiple filters. - * - * For load balancing, Metadata provides a means to subset cluster endpoints. - * Endpoints have a Metadata object associated and routes contain a Metadata - * object to match against. There are some well defined metadata used today for - * this purpose: - * - * * ``{"envoy.lb": {"canary": }}`` This indicates the canary status of an - * endpoint and is also used during header processing - * (x-envoy-upstream-canary) and for stats purposes. - * [#next-major-version: move to type/metadata/v2] - */ - export type Metadata__Output = _envoy_api_v2_core_Metadata__Output; - /** - * Identifies a specific Envoy instance. The node identifier is presented to the - * management server, which may use this identifier to distinguish per Envoy - * configuration for serving. - * [#next-free-field: 12] - */ - export type Node = _envoy_api_v2_core_Node; - /** - * Identifies a specific Envoy instance. The node identifier is presented to the - * management server, which may use this identifier to distinguish per Envoy - * configuration for serving. - * [#next-free-field: 12] - */ - export type Node__Output = _envoy_api_v2_core_Node__Output; - export type Pipe = _envoy_api_v2_core_Pipe; - export type Pipe__Output = _envoy_api_v2_core_Pipe__Output; - /** - * The message specifies how to fetch data from remote and how to verify it. - */ - export type RemoteDataSource = _envoy_api_v2_core_RemoteDataSource; - /** - * The message specifies how to fetch data from remote and how to verify it. - */ - export type RemoteDataSource__Output = _envoy_api_v2_core_RemoteDataSource__Output; - /** - * HTTP request method. - */ - export type RequestMethod = _envoy_api_v2_core_RequestMethod; - /** - * The message specifies the retry policy of remote data source when fetching fails. - */ - export type RetryPolicy = _envoy_api_v2_core_RetryPolicy; - /** - * The message specifies the retry policy of remote data source when fetching fails. - */ - export type RetryPolicy__Output = _envoy_api_v2_core_RetryPolicy__Output; - /** - * Envoy supports :ref:`upstream priority routing - * ` both at the route and the virtual - * cluster level. The current priority implementation uses different connection - * pool and circuit breaking settings for each priority level. This means that - * even for HTTP/2 requests, two physical connections will be used to an - * upstream host. In the future Envoy will likely support true HTTP/2 priority - * over a single upstream connection. - */ - export type RoutingPriority = _envoy_api_v2_core_RoutingPriority; - /** - * Runtime derived double with a default when not specified. - */ - export type RuntimeDouble = _envoy_api_v2_core_RuntimeDouble; - /** - * Runtime derived double with a default when not specified. - */ - export type RuntimeDouble__Output = _envoy_api_v2_core_RuntimeDouble__Output; - /** - * Runtime derived bool with a default when not specified. - */ - export type RuntimeFeatureFlag = _envoy_api_v2_core_RuntimeFeatureFlag; - /** - * Runtime derived bool with a default when not specified. - */ - export type RuntimeFeatureFlag__Output = _envoy_api_v2_core_RuntimeFeatureFlag__Output; - /** - * Runtime derived FractionalPercent with defaults for when the numerator or denominator is not - * specified via a runtime key. - * - * .. note:: - * - * Parsing of the runtime key's data is implemented such that it may be represented as a - * :ref:`FractionalPercent ` proto represented as JSON/YAML - * and may also be represented as an integer with the assumption that the value is an integral - * percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse - * as a `FractionalPercent` whose numerator is 42 and denominator is HUNDRED. - */ - export type RuntimeFractionalPercent = _envoy_api_v2_core_RuntimeFractionalPercent; - /** - * Runtime derived FractionalPercent with defaults for when the numerator or denominator is not - * specified via a runtime key. - * - * .. note:: - * - * Parsing of the runtime key's data is implemented such that it may be represented as a - * :ref:`FractionalPercent ` proto represented as JSON/YAML - * and may also be represented as an integer with the assumption that the value is an integral - * percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse - * as a `FractionalPercent` whose numerator is 42 and denominator is HUNDRED. - */ - export type RuntimeFractionalPercent__Output = _envoy_api_v2_core_RuntimeFractionalPercent__Output; - /** - * Runtime derived uint32 with a default when not specified. - */ - export type RuntimeUInt32 = _envoy_api_v2_core_RuntimeUInt32; - /** - * Runtime derived uint32 with a default when not specified. - */ - export type RuntimeUInt32__Output = _envoy_api_v2_core_RuntimeUInt32__Output; - /** - * [#next-free-field: 7] - */ - export type SocketAddress = _envoy_api_v2_core_SocketAddress; - /** - * [#next-free-field: 7] - */ - export type SocketAddress__Output = _envoy_api_v2_core_SocketAddress__Output; - /** - * Generic socket option message. This would be used to set socket options that - * might not exist in upstream kernels or precompiled Envoy binaries. - * [#next-free-field: 7] - */ - export type SocketOption = _envoy_api_v2_core_SocketOption; - /** - * Generic socket option message. This would be used to set socket options that - * might not exist in upstream kernels or precompiled Envoy binaries. - * [#next-free-field: 7] - */ - export type SocketOption__Output = _envoy_api_v2_core_SocketOption__Output; - export type TcpKeepalive = _envoy_api_v2_core_TcpKeepalive; - export type TcpKeepalive__Output = _envoy_api_v2_core_TcpKeepalive__Output; - /** - * Identifies the direction of the traffic relative to the local Envoy. - */ - export type TrafficDirection = _envoy_api_v2_core_TrafficDirection; - /** - * Configuration for transport socket in :ref:`listeners ` and - * :ref:`clusters `. If the configuration is - * empty, a default transport socket implementation and configuration will be - * chosen based on the platform and existence of tls_context. - */ - export type TransportSocket = _envoy_api_v2_core_TransportSocket; - /** - * Configuration for transport socket in :ref:`listeners ` and - * :ref:`clusters `. If the configuration is - * empty, a default transport socket implementation and configuration will be - * chosen based on the platform and existence of tls_context. - */ - export type TransportSocket__Output = _envoy_api_v2_core_TransportSocket__Output; - } - } - } - export namespace service { - export namespace discovery { - export namespace v2 { - /** - * [#not-implemented-hide:] Not configuration. Workaround c++ protobuf issue with importing - * services: https://github.com/google/protobuf/issues/4221 - */ - export type AdsDummy = _envoy_service_discovery_v2_AdsDummy; - /** - * [#not-implemented-hide:] Not configuration. Workaround c++ protobuf issue with importing - * services: https://github.com/google/protobuf/issues/4221 - */ - export type AdsDummy__Output = _envoy_service_discovery_v2_AdsDummy__Output; - export namespace AggregatedDiscoveryService { - } - } - } - } - export namespace type { - /** - * A fractional percentage is used in cases in which for performance reasons performing floating - * point to integer conversions during randomness calculations is undesirable. The message includes - * both a numerator and denominator that together determine the final fractional value. - * - * * **Example**: 1/100 = 1%. - * * **Example**: 3/10000 = 0.03%. - */ - export type FractionalPercent = _envoy_type_FractionalPercent; - /** - * A fractional percentage is used in cases in which for performance reasons performing floating - * point to integer conversions during randomness calculations is undesirable. The message includes - * both a numerator and denominator that together determine the final fractional value. - * - * * **Example**: 1/100 = 1%. - * * **Example**: 3/10000 = 0.03%. - */ - export type FractionalPercent__Output = _envoy_type_FractionalPercent__Output; - /** - * Identifies a percentage, in the range [0.0, 100.0]. - */ - export type Percent = _envoy_type_Percent; - /** - * Identifies a percentage, in the range [0.0, 100.0]. - */ - export type Percent__Output = _envoy_type_Percent__Output; - /** - * Envoy uses SemVer (https://semver.org/). Major/minor versions indicate - * expected behaviors and APIs, the patch version field is used only - * for security fixes and can be generally ignored. - */ - export type SemanticVersion = _envoy_type_SemanticVersion; - /** - * Envoy uses SemVer (https://semver.org/). Major/minor versions indicate - * expected behaviors and APIs, the patch version field is used only - * for security fixes and can be generally ignored. - */ - export type SemanticVersion__Output = _envoy_type_SemanticVersion__Output; - } - } - export namespace google { - export namespace protobuf { - export type Any = _google_protobuf_Any; - export type Any__Output = _google_protobuf_Any__Output; - export type BoolValue = _google_protobuf_BoolValue; - export type BoolValue__Output = _google_protobuf_BoolValue__Output; - export type BytesValue = _google_protobuf_BytesValue; - export type BytesValue__Output = _google_protobuf_BytesValue__Output; - export type DescriptorProto = _google_protobuf_DescriptorProto; - export type DescriptorProto__Output = _google_protobuf_DescriptorProto__Output; - export type DoubleValue = _google_protobuf_DoubleValue; - export type DoubleValue__Output = _google_protobuf_DoubleValue__Output; - export type Duration = _google_protobuf_Duration; - export type Duration__Output = _google_protobuf_Duration__Output; - export type EnumDescriptorProto = _google_protobuf_EnumDescriptorProto; - export type EnumDescriptorProto__Output = _google_protobuf_EnumDescriptorProto__Output; - export type EnumOptions = _google_protobuf_EnumOptions; - export type EnumOptions__Output = _google_protobuf_EnumOptions__Output; - export type EnumValueDescriptorProto = _google_protobuf_EnumValueDescriptorProto; - export type EnumValueDescriptorProto__Output = _google_protobuf_EnumValueDescriptorProto__Output; - export type EnumValueOptions = _google_protobuf_EnumValueOptions; - export type EnumValueOptions__Output = _google_protobuf_EnumValueOptions__Output; - export type FieldDescriptorProto = _google_protobuf_FieldDescriptorProto; - export type FieldDescriptorProto__Output = _google_protobuf_FieldDescriptorProto__Output; - export type FieldOptions = _google_protobuf_FieldOptions; - export type FieldOptions__Output = _google_protobuf_FieldOptions__Output; - export type FileDescriptorProto = _google_protobuf_FileDescriptorProto; - export type FileDescriptorProto__Output = _google_protobuf_FileDescriptorProto__Output; - export type FileDescriptorSet = _google_protobuf_FileDescriptorSet; - export type FileDescriptorSet__Output = _google_protobuf_FileDescriptorSet__Output; - export type FileOptions = _google_protobuf_FileOptions; - export type FileOptions__Output = _google_protobuf_FileOptions__Output; - export type FloatValue = _google_protobuf_FloatValue; - export type FloatValue__Output = _google_protobuf_FloatValue__Output; - export type GeneratedCodeInfo = _google_protobuf_GeneratedCodeInfo; - export type GeneratedCodeInfo__Output = _google_protobuf_GeneratedCodeInfo__Output; - export type Int32Value = _google_protobuf_Int32Value; - export type Int32Value__Output = _google_protobuf_Int32Value__Output; - export type Int64Value = _google_protobuf_Int64Value; - export type Int64Value__Output = _google_protobuf_Int64Value__Output; - export type ListValue = _google_protobuf_ListValue; - export type ListValue__Output = _google_protobuf_ListValue__Output; - export type MessageOptions = _google_protobuf_MessageOptions; - export type MessageOptions__Output = _google_protobuf_MessageOptions__Output; - export type MethodDescriptorProto = _google_protobuf_MethodDescriptorProto; - export type MethodDescriptorProto__Output = _google_protobuf_MethodDescriptorProto__Output; - export type MethodOptions = _google_protobuf_MethodOptions; - export type MethodOptions__Output = _google_protobuf_MethodOptions__Output; - export type NullValue = _google_protobuf_NullValue; - export type OneofDescriptorProto = _google_protobuf_OneofDescriptorProto; - export type OneofDescriptorProto__Output = _google_protobuf_OneofDescriptorProto__Output; - export type OneofOptions = _google_protobuf_OneofOptions; - export type OneofOptions__Output = _google_protobuf_OneofOptions__Output; - export type ServiceDescriptorProto = _google_protobuf_ServiceDescriptorProto; - export type ServiceDescriptorProto__Output = _google_protobuf_ServiceDescriptorProto__Output; - export type ServiceOptions = _google_protobuf_ServiceOptions; - export type ServiceOptions__Output = _google_protobuf_ServiceOptions__Output; - export type SourceCodeInfo = _google_protobuf_SourceCodeInfo; - export type SourceCodeInfo__Output = _google_protobuf_SourceCodeInfo__Output; - export type StringValue = _google_protobuf_StringValue; - export type StringValue__Output = _google_protobuf_StringValue__Output; - export type Struct = _google_protobuf_Struct; - export type Struct__Output = _google_protobuf_Struct__Output; - export type Timestamp = _google_protobuf_Timestamp; - export type Timestamp__Output = _google_protobuf_Timestamp__Output; - export type UInt32Value = _google_protobuf_UInt32Value; - export type UInt32Value__Output = _google_protobuf_UInt32Value__Output; - export type UInt64Value = _google_protobuf_UInt64Value; - export type UInt64Value__Output = _google_protobuf_UInt64Value__Output; - export type UninterpretedOption = _google_protobuf_UninterpretedOption; - export type UninterpretedOption__Output = _google_protobuf_UninterpretedOption__Output; - export type Value = _google_protobuf_Value; - export type Value__Output = _google_protobuf_Value__Output; - } - export namespace rpc { - /** - * The `Status` type defines a logical error model that is suitable for - * different programming environments, including REST APIs and RPC APIs. It is - * used by [gRPC](https://github.com/grpc). Each `Status` message contains - * three pieces of data: error code, error message, and error details. - * - * You can find out more about this error model and how to work with it in the - * [API Design Guide](https://cloud.google.com/apis/design/errors). - */ - export type Status = _google_rpc_Status; - /** - * The `Status` type defines a logical error model that is suitable for - * different programming environments, including REST APIs and RPC APIs. It is - * used by [gRPC](https://github.com/grpc). Each `Status` message contains - * three pieces of data: error code, error message, and error details. - * - * You can find out more about this error model and how to work with it in the - * [API Design Guide](https://cloud.google.com/apis/design/errors). - */ - export type Status__Output = _google_rpc_Status__Output; - } - } - export namespace udpa { - export namespace annotations { - export type FieldMigrateAnnotation = _udpa_annotations_FieldMigrateAnnotation; - export type FieldMigrateAnnotation__Output = _udpa_annotations_FieldMigrateAnnotation__Output; - export type FileMigrateAnnotation = _udpa_annotations_FileMigrateAnnotation; - export type FileMigrateAnnotation__Output = _udpa_annotations_FileMigrateAnnotation__Output; - export type MigrateAnnotation = _udpa_annotations_MigrateAnnotation; - export type MigrateAnnotation__Output = _udpa_annotations_MigrateAnnotation__Output; - export type PackageVersionStatus = _udpa_annotations_PackageVersionStatus; - export type StatusAnnotation = _udpa_annotations_StatusAnnotation; - export type StatusAnnotation__Output = _udpa_annotations_StatusAnnotation__Output; - } - } - export namespace validate { - /** - * AnyRules describe constraints applied exclusively to the - * `google.protobuf.Any` well-known type - */ - export type AnyRules = _validate_AnyRules; - /** - * AnyRules describe constraints applied exclusively to the - * `google.protobuf.Any` well-known type - */ - export type AnyRules__Output = _validate_AnyRules__Output; - /** - * BoolRules describes the constraints applied to `bool` values - */ - export type BoolRules = _validate_BoolRules; - /** - * BoolRules describes the constraints applied to `bool` values - */ - export type BoolRules__Output = _validate_BoolRules__Output; - /** - * BytesRules describe the constraints applied to `bytes` values - */ - export type BytesRules = _validate_BytesRules; - /** - * BytesRules describe the constraints applied to `bytes` values - */ - export type BytesRules__Output = _validate_BytesRules__Output; - /** - * DoubleRules describes the constraints applied to `double` values - */ - export type DoubleRules = _validate_DoubleRules; - /** - * DoubleRules describes the constraints applied to `double` values - */ - export type DoubleRules__Output = _validate_DoubleRules__Output; - /** - * DurationRules describe the constraints applied exclusively to the - * `google.protobuf.Duration` well-known type - */ - export type DurationRules = _validate_DurationRules; - /** - * DurationRules describe the constraints applied exclusively to the - * `google.protobuf.Duration` well-known type - */ - export type DurationRules__Output = _validate_DurationRules__Output; - /** - * EnumRules describe the constraints applied to enum values - */ - export type EnumRules = _validate_EnumRules; - /** - * EnumRules describe the constraints applied to enum values - */ - export type EnumRules__Output = _validate_EnumRules__Output; - /** - * FieldRules encapsulates the rules for each type of field. Depending on the - * field, the correct set should be used to ensure proper validations. - */ - export type FieldRules = _validate_FieldRules; - /** - * FieldRules encapsulates the rules for each type of field. Depending on the - * field, the correct set should be used to ensure proper validations. - */ - export type FieldRules__Output = _validate_FieldRules__Output; - /** - * Fixed32Rules describes the constraints applied to `fixed32` values - */ - export type Fixed32Rules = _validate_Fixed32Rules; - /** - * Fixed32Rules describes the constraints applied to `fixed32` values - */ - export type Fixed32Rules__Output = _validate_Fixed32Rules__Output; - /** - * Fixed64Rules describes the constraints applied to `fixed64` values - */ - export type Fixed64Rules = _validate_Fixed64Rules; - /** - * Fixed64Rules describes the constraints applied to `fixed64` values - */ - export type Fixed64Rules__Output = _validate_Fixed64Rules__Output; - /** - * FloatRules describes the constraints applied to `float` values - */ - export type FloatRules = _validate_FloatRules; - /** - * FloatRules describes the constraints applied to `float` values - */ - export type FloatRules__Output = _validate_FloatRules__Output; - /** - * Int32Rules describes the constraints applied to `int32` values - */ - export type Int32Rules = _validate_Int32Rules; - /** - * Int32Rules describes the constraints applied to `int32` values - */ - export type Int32Rules__Output = _validate_Int32Rules__Output; - /** - * Int64Rules describes the constraints applied to `int64` values - */ - export type Int64Rules = _validate_Int64Rules; - /** - * Int64Rules describes the constraints applied to `int64` values - */ - export type Int64Rules__Output = _validate_Int64Rules__Output; - /** - * WellKnownRegex contain some well-known patterns. - */ - export type KnownRegex = _validate_KnownRegex; - /** - * MapRules describe the constraints applied to `map` values - */ - export type MapRules = _validate_MapRules; - /** - * MapRules describe the constraints applied to `map` values - */ - export type MapRules__Output = _validate_MapRules__Output; - /** - * MessageRules describe the constraints applied to embedded message values. - * For message-type fields, validation is performed recursively. - */ - export type MessageRules = _validate_MessageRules; - /** - * MessageRules describe the constraints applied to embedded message values. - * For message-type fields, validation is performed recursively. - */ - export type MessageRules__Output = _validate_MessageRules__Output; - /** - * RepeatedRules describe the constraints applied to `repeated` values - */ - export type RepeatedRules = _validate_RepeatedRules; - /** - * RepeatedRules describe the constraints applied to `repeated` values - */ - export type RepeatedRules__Output = _validate_RepeatedRules__Output; - /** - * SFixed32Rules describes the constraints applied to `sfixed32` values - */ - export type SFixed32Rules = _validate_SFixed32Rules; - /** - * SFixed32Rules describes the constraints applied to `sfixed32` values - */ - export type SFixed32Rules__Output = _validate_SFixed32Rules__Output; - /** - * SFixed64Rules describes the constraints applied to `sfixed64` values - */ - export type SFixed64Rules = _validate_SFixed64Rules; - /** - * SFixed64Rules describes the constraints applied to `sfixed64` values - */ - export type SFixed64Rules__Output = _validate_SFixed64Rules__Output; - /** - * SInt32Rules describes the constraints applied to `sint32` values - */ - export type SInt32Rules = _validate_SInt32Rules; - /** - * SInt32Rules describes the constraints applied to `sint32` values - */ - export type SInt32Rules__Output = _validate_SInt32Rules__Output; - /** - * SInt64Rules describes the constraints applied to `sint64` values - */ - export type SInt64Rules = _validate_SInt64Rules; - /** - * SInt64Rules describes the constraints applied to `sint64` values - */ - export type SInt64Rules__Output = _validate_SInt64Rules__Output; - /** - * StringRules describe the constraints applied to `string` values - */ - export type StringRules = _validate_StringRules; - /** - * StringRules describe the constraints applied to `string` values - */ - export type StringRules__Output = _validate_StringRules__Output; - /** - * TimestampRules describe the constraints applied exclusively to the - * `google.protobuf.Timestamp` well-known type - */ - export type TimestampRules = _validate_TimestampRules; - /** - * TimestampRules describe the constraints applied exclusively to the - * `google.protobuf.Timestamp` well-known type - */ - export type TimestampRules__Output = _validate_TimestampRules__Output; - /** - * UInt32Rules describes the constraints applied to `uint32` values - */ - export type UInt32Rules = _validate_UInt32Rules; - /** - * UInt32Rules describes the constraints applied to `uint32` values - */ - export type UInt32Rules__Output = _validate_UInt32Rules__Output; - /** - * UInt64Rules describes the constraints applied to `uint64` values - */ - export type UInt64Rules = _validate_UInt64Rules; - /** - * UInt64Rules describes the constraints applied to `uint64` values - */ - export type UInt64Rules__Output = _validate_UInt64Rules__Output; - } -} - -export namespace ClientInterfaces { - export namespace envoy { - export namespace api { - export namespace v2 { - export namespace DeltaDiscoveryRequest { - } - export namespace DeltaDiscoveryResponse { - } - export namespace DiscoveryRequest { - } - export namespace DiscoveryResponse { - } - export namespace Resource { - } - export namespace core { - export namespace Address { - } - export namespace AsyncDataSource { - } - export namespace BackoffStrategy { - } - export namespace BindConfig { - } - export namespace BuildVersion { - } - export namespace CidrRange { - } - export namespace ControlPlane { - } - export namespace DataSource { - } - export namespace Extension { - } - export namespace HeaderMap { - } - export namespace HeaderValue { - } - export namespace HeaderValueOption { - } - export namespace HttpUri { - } - export namespace Locality { - } - export namespace Metadata { - } - export namespace Node { - } - export namespace Pipe { - } - export namespace RemoteDataSource { - } - export namespace RetryPolicy { - } - export namespace RuntimeDouble { - } - export namespace RuntimeFeatureFlag { - } - export namespace RuntimeFractionalPercent { - } - export namespace RuntimeUInt32 { - } - export namespace SocketAddress { - } - export namespace SocketOption { - } - export namespace TcpKeepalive { - } - export namespace TransportSocket { - } - } - } - } - export namespace service { - export namespace discovery { - export namespace v2 { - export namespace AdsDummy { - } - /** - * See https://github.com/lyft/envoy-api#apis for a description of the role of - * ADS and how it is intended to be used by a management server. ADS requests - * have the same structure as their singleton xDS counterparts, but can - * multiplex many resource types on a single stream. The type_url in the - * DiscoveryRequest/DiscoveryResponse provides sufficient information to recover - * the multiplexed singleton APIs at the Envoy instance and management server. - */ - export interface AggregatedDiscoveryServiceClient extends grpc.Client { - DeltaAggregatedResources(metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientDuplexStream; - DeltaAggregatedResources(options?: grpc.CallOptions): grpc.ClientDuplexStream; - deltaAggregatedResources(metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientDuplexStream; - deltaAggregatedResources(options?: grpc.CallOptions): grpc.ClientDuplexStream; - - /** - * This is a gRPC-only API. - */ - StreamAggregatedResources(metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientDuplexStream; - StreamAggregatedResources(options?: grpc.CallOptions): grpc.ClientDuplexStream; - /** - * This is a gRPC-only API. - */ - streamAggregatedResources(metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientDuplexStream; - streamAggregatedResources(options?: grpc.CallOptions): grpc.ClientDuplexStream; - - } - } - } - } - export namespace type { - export namespace FractionalPercent { - } - export namespace Percent { - } - export namespace SemanticVersion { - } - } - } - export namespace google { - export namespace protobuf { - export namespace Any { - } - export namespace BoolValue { - } - export namespace BytesValue { - } - export namespace DescriptorProto { - export namespace ExtensionRange { - } - export namespace ReservedRange { - } - } - export namespace DoubleValue { - } - export namespace Duration { - } - export namespace EnumDescriptorProto { - } - export namespace EnumOptions { - } - export namespace EnumValueDescriptorProto { - } - export namespace EnumValueOptions { - } - export namespace FieldDescriptorProto { - } - export namespace FieldOptions { - } - export namespace FileDescriptorProto { - } - export namespace FileDescriptorSet { - } - export namespace FileOptions { - } - export namespace FloatValue { - } - export namespace GeneratedCodeInfo { - export namespace Annotation { - } - } - export namespace Int32Value { - } - export namespace Int64Value { - } - export namespace ListValue { - } - export namespace MessageOptions { - } - export namespace MethodDescriptorProto { - } - export namespace MethodOptions { - } - export namespace OneofDescriptorProto { - } - export namespace OneofOptions { - } - export namespace ServiceDescriptorProto { - } - export namespace ServiceOptions { - } - export namespace SourceCodeInfo { - export namespace Location { - } - } - export namespace StringValue { - } - export namespace Struct { - } - export namespace Timestamp { - } - export namespace UInt32Value { - } - export namespace UInt64Value { - } - export namespace UninterpretedOption { - export namespace NamePart { - } - } - export namespace Value { - } - } - export namespace rpc { - export namespace Status { - } - } - } - export namespace udpa { - export namespace annotations { - export namespace FieldMigrateAnnotation { - } - export namespace FileMigrateAnnotation { - } - export namespace MigrateAnnotation { - } - export namespace StatusAnnotation { - } - } - } - export namespace validate { - export namespace AnyRules { - } - export namespace BoolRules { - } - export namespace BytesRules { - } - export namespace DoubleRules { - } - export namespace DurationRules { - } - export namespace EnumRules { - } - export namespace FieldRules { - } - export namespace Fixed32Rules { - } - export namespace Fixed64Rules { - } - export namespace FloatRules { - } - export namespace Int32Rules { - } - export namespace Int64Rules { - } - export namespace MapRules { - } - export namespace MessageRules { - } - export namespace RepeatedRules { - } - export namespace SFixed32Rules { - } - export namespace SFixed64Rules { - } - export namespace SInt32Rules { - } - export namespace SInt64Rules { - } - export namespace StringRules { - } - export namespace TimestampRules { - } - export namespace UInt32Rules { - } - export namespace UInt64Rules { - } - } -} +import { AggregatedDiscoveryServiceClient as _envoy_service_discovery_v2_AggregatedDiscoveryServiceClient } from './envoy/service/discovery/v2/AggregatedDiscoveryService'; type ConstructorArguments = Constructor extends new (...args: infer Args) => any ? Args: never; type SubtypeConstructor = { @@ -1215,7 +63,7 @@ export interface ProtoGrpcType { * DiscoveryRequest/DiscoveryResponse provides sufficient information to recover * the multiplexed singleton APIs at the Envoy instance and management server. */ - AggregatedDiscoveryService: SubtypeConstructor & { service: ServiceDefinition } + AggregatedDiscoveryService: SubtypeConstructor & { service: ServiceDefinition } } } } @@ -1305,258 +153,3 @@ export interface ProtoGrpcType { } } -export namespace ServiceHandlers { - export namespace envoy { - export namespace api { - export namespace v2 { - export namespace DeltaDiscoveryRequest { - } - export namespace DeltaDiscoveryResponse { - } - export namespace DiscoveryRequest { - } - export namespace DiscoveryResponse { - } - export namespace Resource { - } - export namespace core { - export namespace Address { - } - export namespace AsyncDataSource { - } - export namespace BackoffStrategy { - } - export namespace BindConfig { - } - export namespace BuildVersion { - } - export namespace CidrRange { - } - export namespace ControlPlane { - } - export namespace DataSource { - } - export namespace Extension { - } - export namespace HeaderMap { - } - export namespace HeaderValue { - } - export namespace HeaderValueOption { - } - export namespace HttpUri { - } - export namespace Locality { - } - export namespace Metadata { - } - export namespace Node { - } - export namespace Pipe { - } - export namespace RemoteDataSource { - } - export namespace RetryPolicy { - } - export namespace RuntimeDouble { - } - export namespace RuntimeFeatureFlag { - } - export namespace RuntimeFractionalPercent { - } - export namespace RuntimeUInt32 { - } - export namespace SocketAddress { - } - export namespace SocketOption { - } - export namespace TcpKeepalive { - } - export namespace TransportSocket { - } - } - } - } - export namespace service { - export namespace discovery { - export namespace v2 { - export namespace AdsDummy { - } - /** - * See https://github.com/lyft/envoy-api#apis for a description of the role of - * ADS and how it is intended to be used by a management server. ADS requests - * have the same structure as their singleton xDS counterparts, but can - * multiplex many resource types on a single stream. The type_url in the - * DiscoveryRequest/DiscoveryResponse provides sufficient information to recover - * the multiplexed singleton APIs at the Envoy instance and management server. - */ - export interface AggregatedDiscoveryService { - DeltaAggregatedResources(call: grpc.ServerDuplexStream): void; - - /** - * This is a gRPC-only API. - */ - StreamAggregatedResources(call: grpc.ServerDuplexStream): void; - - } - } - } - } - export namespace type { - export namespace FractionalPercent { - } - export namespace Percent { - } - export namespace SemanticVersion { - } - } - } - export namespace google { - export namespace protobuf { - export namespace Any { - } - export namespace BoolValue { - } - export namespace BytesValue { - } - export namespace DescriptorProto { - export namespace ExtensionRange { - } - export namespace ReservedRange { - } - } - export namespace DoubleValue { - } - export namespace Duration { - } - export namespace EnumDescriptorProto { - } - export namespace EnumOptions { - } - export namespace EnumValueDescriptorProto { - } - export namespace EnumValueOptions { - } - export namespace FieldDescriptorProto { - } - export namespace FieldOptions { - } - export namespace FileDescriptorProto { - } - export namespace FileDescriptorSet { - } - export namespace FileOptions { - } - export namespace FloatValue { - } - export namespace GeneratedCodeInfo { - export namespace Annotation { - } - } - export namespace Int32Value { - } - export namespace Int64Value { - } - export namespace ListValue { - } - export namespace MessageOptions { - } - export namespace MethodDescriptorProto { - } - export namespace MethodOptions { - } - export namespace OneofDescriptorProto { - } - export namespace OneofOptions { - } - export namespace ServiceDescriptorProto { - } - export namespace ServiceOptions { - } - export namespace SourceCodeInfo { - export namespace Location { - } - } - export namespace StringValue { - } - export namespace Struct { - } - export namespace Timestamp { - } - export namespace UInt32Value { - } - export namespace UInt64Value { - } - export namespace UninterpretedOption { - export namespace NamePart { - } - } - export namespace Value { - } - } - export namespace rpc { - export namespace Status { - } - } - } - export namespace udpa { - export namespace annotations { - export namespace FieldMigrateAnnotation { - } - export namespace FileMigrateAnnotation { - } - export namespace MigrateAnnotation { - } - export namespace StatusAnnotation { - } - } - } - export namespace validate { - export namespace AnyRules { - } - export namespace BoolRules { - } - export namespace BytesRules { - } - export namespace DoubleRules { - } - export namespace DurationRules { - } - export namespace EnumRules { - } - export namespace FieldRules { - } - export namespace Fixed32Rules { - } - export namespace Fixed64Rules { - } - export namespace FloatRules { - } - export namespace Int32Rules { - } - export namespace Int64Rules { - } - export namespace MapRules { - } - export namespace MessageRules { - } - export namespace RepeatedRules { - } - export namespace SFixed32Rules { - } - export namespace SFixed64Rules { - } - export namespace SInt32Rules { - } - export namespace SInt64Rules { - } - export namespace StringRules { - } - export namespace TimestampRules { - } - export namespace UInt32Rules { - } - export namespace UInt64Rules { - } - } -} diff --git a/packages/grpc-js/src/generated/cluster.ts b/packages/grpc-js/src/generated/cluster.ts index bf6f37bf..7d2b34a4 100644 --- a/packages/grpc-js/src/generated/cluster.ts +++ b/packages/grpc-js/src/generated/cluster.ts @@ -1,2206 +1,6 @@ import * as grpc from '../index'; import { ServiceDefinition, EnumTypeDefinition, MessageTypeDefinition } from '@grpc/proto-loader'; -import { Cluster as _envoy_api_v2_Cluster, Cluster__Output as _envoy_api_v2_Cluster__Output } from './envoy/api/v2/Cluster'; -import { ClusterLoadAssignment as _envoy_api_v2_ClusterLoadAssignment, ClusterLoadAssignment__Output as _envoy_api_v2_ClusterLoadAssignment__Output } from './envoy/api/v2/ClusterLoadAssignment'; -import { LoadBalancingPolicy as _envoy_api_v2_LoadBalancingPolicy, LoadBalancingPolicy__Output as _envoy_api_v2_LoadBalancingPolicy__Output } from './envoy/api/v2/LoadBalancingPolicy'; -import { UpstreamBindConfig as _envoy_api_v2_UpstreamBindConfig, UpstreamBindConfig__Output as _envoy_api_v2_UpstreamBindConfig__Output } from './envoy/api/v2/UpstreamBindConfig'; -import { UpstreamConnectionOptions as _envoy_api_v2_UpstreamConnectionOptions, UpstreamConnectionOptions__Output as _envoy_api_v2_UpstreamConnectionOptions__Output } from './envoy/api/v2/UpstreamConnectionOptions'; -import { CertificateValidationContext as _envoy_api_v2_auth_CertificateValidationContext, CertificateValidationContext__Output as _envoy_api_v2_auth_CertificateValidationContext__Output } from './envoy/api/v2/auth/CertificateValidationContext'; -import { CommonTlsContext as _envoy_api_v2_auth_CommonTlsContext, CommonTlsContext__Output as _envoy_api_v2_auth_CommonTlsContext__Output } from './envoy/api/v2/auth/CommonTlsContext'; -import { DownstreamTlsContext as _envoy_api_v2_auth_DownstreamTlsContext, DownstreamTlsContext__Output as _envoy_api_v2_auth_DownstreamTlsContext__Output } from './envoy/api/v2/auth/DownstreamTlsContext'; -import { GenericSecret as _envoy_api_v2_auth_GenericSecret, GenericSecret__Output as _envoy_api_v2_auth_GenericSecret__Output } from './envoy/api/v2/auth/GenericSecret'; -import { PrivateKeyProvider as _envoy_api_v2_auth_PrivateKeyProvider, PrivateKeyProvider__Output as _envoy_api_v2_auth_PrivateKeyProvider__Output } from './envoy/api/v2/auth/PrivateKeyProvider'; -import { SdsSecretConfig as _envoy_api_v2_auth_SdsSecretConfig, SdsSecretConfig__Output as _envoy_api_v2_auth_SdsSecretConfig__Output } from './envoy/api/v2/auth/SdsSecretConfig'; -import { Secret as _envoy_api_v2_auth_Secret, Secret__Output as _envoy_api_v2_auth_Secret__Output } from './envoy/api/v2/auth/Secret'; -import { TlsCertificate as _envoy_api_v2_auth_TlsCertificate, TlsCertificate__Output as _envoy_api_v2_auth_TlsCertificate__Output } from './envoy/api/v2/auth/TlsCertificate'; -import { TlsParameters as _envoy_api_v2_auth_TlsParameters, TlsParameters__Output as _envoy_api_v2_auth_TlsParameters__Output } from './envoy/api/v2/auth/TlsParameters'; -import { TlsSessionTicketKeys as _envoy_api_v2_auth_TlsSessionTicketKeys, TlsSessionTicketKeys__Output as _envoy_api_v2_auth_TlsSessionTicketKeys__Output } from './envoy/api/v2/auth/TlsSessionTicketKeys'; -import { UpstreamTlsContext as _envoy_api_v2_auth_UpstreamTlsContext, UpstreamTlsContext__Output as _envoy_api_v2_auth_UpstreamTlsContext__Output } from './envoy/api/v2/auth/UpstreamTlsContext'; -import { CircuitBreakers as _envoy_api_v2_cluster_CircuitBreakers, CircuitBreakers__Output as _envoy_api_v2_cluster_CircuitBreakers__Output } from './envoy/api/v2/cluster/CircuitBreakers'; -import { Filter as _envoy_api_v2_cluster_Filter, Filter__Output as _envoy_api_v2_cluster_Filter__Output } from './envoy/api/v2/cluster/Filter'; -import { OutlierDetection as _envoy_api_v2_cluster_OutlierDetection, OutlierDetection__Output as _envoy_api_v2_cluster_OutlierDetection__Output } from './envoy/api/v2/cluster/OutlierDetection'; -import { Address as _envoy_api_v2_core_Address, Address__Output as _envoy_api_v2_core_Address__Output } from './envoy/api/v2/core/Address'; -import { AggregatedConfigSource as _envoy_api_v2_core_AggregatedConfigSource, AggregatedConfigSource__Output as _envoy_api_v2_core_AggregatedConfigSource__Output } from './envoy/api/v2/core/AggregatedConfigSource'; -import { ApiConfigSource as _envoy_api_v2_core_ApiConfigSource, ApiConfigSource__Output as _envoy_api_v2_core_ApiConfigSource__Output } from './envoy/api/v2/core/ApiConfigSource'; -import { ApiVersion as _envoy_api_v2_core_ApiVersion } from './envoy/api/v2/core/ApiVersion'; -import { AsyncDataSource as _envoy_api_v2_core_AsyncDataSource, AsyncDataSource__Output as _envoy_api_v2_core_AsyncDataSource__Output } from './envoy/api/v2/core/AsyncDataSource'; -import { BackoffStrategy as _envoy_api_v2_core_BackoffStrategy, BackoffStrategy__Output as _envoy_api_v2_core_BackoffStrategy__Output } from './envoy/api/v2/core/BackoffStrategy'; -import { BindConfig as _envoy_api_v2_core_BindConfig, BindConfig__Output as _envoy_api_v2_core_BindConfig__Output } from './envoy/api/v2/core/BindConfig'; -import { BuildVersion as _envoy_api_v2_core_BuildVersion, BuildVersion__Output as _envoy_api_v2_core_BuildVersion__Output } from './envoy/api/v2/core/BuildVersion'; -import { CidrRange as _envoy_api_v2_core_CidrRange, CidrRange__Output as _envoy_api_v2_core_CidrRange__Output } from './envoy/api/v2/core/CidrRange'; -import { ConfigSource as _envoy_api_v2_core_ConfigSource, ConfigSource__Output as _envoy_api_v2_core_ConfigSource__Output } from './envoy/api/v2/core/ConfigSource'; -import { ControlPlane as _envoy_api_v2_core_ControlPlane, ControlPlane__Output as _envoy_api_v2_core_ControlPlane__Output } from './envoy/api/v2/core/ControlPlane'; -import { DataSource as _envoy_api_v2_core_DataSource, DataSource__Output as _envoy_api_v2_core_DataSource__Output } from './envoy/api/v2/core/DataSource'; -import { EventServiceConfig as _envoy_api_v2_core_EventServiceConfig, EventServiceConfig__Output as _envoy_api_v2_core_EventServiceConfig__Output } from './envoy/api/v2/core/EventServiceConfig'; -import { Extension as _envoy_api_v2_core_Extension, Extension__Output as _envoy_api_v2_core_Extension__Output } from './envoy/api/v2/core/Extension'; -import { GrpcProtocolOptions as _envoy_api_v2_core_GrpcProtocolOptions, GrpcProtocolOptions__Output as _envoy_api_v2_core_GrpcProtocolOptions__Output } from './envoy/api/v2/core/GrpcProtocolOptions'; -import { GrpcService as _envoy_api_v2_core_GrpcService, GrpcService__Output as _envoy_api_v2_core_GrpcService__Output } from './envoy/api/v2/core/GrpcService'; -import { HeaderMap as _envoy_api_v2_core_HeaderMap, HeaderMap__Output as _envoy_api_v2_core_HeaderMap__Output } from './envoy/api/v2/core/HeaderMap'; -import { HeaderValue as _envoy_api_v2_core_HeaderValue, HeaderValue__Output as _envoy_api_v2_core_HeaderValue__Output } from './envoy/api/v2/core/HeaderValue'; -import { HeaderValueOption as _envoy_api_v2_core_HeaderValueOption, HeaderValueOption__Output as _envoy_api_v2_core_HeaderValueOption__Output } from './envoy/api/v2/core/HeaderValueOption'; -import { HealthCheck as _envoy_api_v2_core_HealthCheck, HealthCheck__Output as _envoy_api_v2_core_HealthCheck__Output } from './envoy/api/v2/core/HealthCheck'; -import { HealthStatus as _envoy_api_v2_core_HealthStatus } from './envoy/api/v2/core/HealthStatus'; -import { Http1ProtocolOptions as _envoy_api_v2_core_Http1ProtocolOptions, Http1ProtocolOptions__Output as _envoy_api_v2_core_Http1ProtocolOptions__Output } from './envoy/api/v2/core/Http1ProtocolOptions'; -import { Http2ProtocolOptions as _envoy_api_v2_core_Http2ProtocolOptions, Http2ProtocolOptions__Output as _envoy_api_v2_core_Http2ProtocolOptions__Output } from './envoy/api/v2/core/Http2ProtocolOptions'; -import { HttpProtocolOptions as _envoy_api_v2_core_HttpProtocolOptions, HttpProtocolOptions__Output as _envoy_api_v2_core_HttpProtocolOptions__Output } from './envoy/api/v2/core/HttpProtocolOptions'; -import { HttpUri as _envoy_api_v2_core_HttpUri, HttpUri__Output as _envoy_api_v2_core_HttpUri__Output } from './envoy/api/v2/core/HttpUri'; -import { Locality as _envoy_api_v2_core_Locality, Locality__Output as _envoy_api_v2_core_Locality__Output } from './envoy/api/v2/core/Locality'; -import { Metadata as _envoy_api_v2_core_Metadata, Metadata__Output as _envoy_api_v2_core_Metadata__Output } from './envoy/api/v2/core/Metadata'; -import { Node as _envoy_api_v2_core_Node, Node__Output as _envoy_api_v2_core_Node__Output } from './envoy/api/v2/core/Node'; -import { Pipe as _envoy_api_v2_core_Pipe, Pipe__Output as _envoy_api_v2_core_Pipe__Output } from './envoy/api/v2/core/Pipe'; -import { RateLimitSettings as _envoy_api_v2_core_RateLimitSettings, RateLimitSettings__Output as _envoy_api_v2_core_RateLimitSettings__Output } from './envoy/api/v2/core/RateLimitSettings'; -import { RemoteDataSource as _envoy_api_v2_core_RemoteDataSource, RemoteDataSource__Output as _envoy_api_v2_core_RemoteDataSource__Output } from './envoy/api/v2/core/RemoteDataSource'; -import { RequestMethod as _envoy_api_v2_core_RequestMethod } from './envoy/api/v2/core/RequestMethod'; -import { RetryPolicy as _envoy_api_v2_core_RetryPolicy, RetryPolicy__Output as _envoy_api_v2_core_RetryPolicy__Output } from './envoy/api/v2/core/RetryPolicy'; -import { RoutingPriority as _envoy_api_v2_core_RoutingPriority } from './envoy/api/v2/core/RoutingPriority'; -import { RuntimeDouble as _envoy_api_v2_core_RuntimeDouble, RuntimeDouble__Output as _envoy_api_v2_core_RuntimeDouble__Output } from './envoy/api/v2/core/RuntimeDouble'; -import { RuntimeFeatureFlag as _envoy_api_v2_core_RuntimeFeatureFlag, RuntimeFeatureFlag__Output as _envoy_api_v2_core_RuntimeFeatureFlag__Output } from './envoy/api/v2/core/RuntimeFeatureFlag'; -import { RuntimeFractionalPercent as _envoy_api_v2_core_RuntimeFractionalPercent, RuntimeFractionalPercent__Output as _envoy_api_v2_core_RuntimeFractionalPercent__Output } from './envoy/api/v2/core/RuntimeFractionalPercent'; -import { RuntimeUInt32 as _envoy_api_v2_core_RuntimeUInt32, RuntimeUInt32__Output as _envoy_api_v2_core_RuntimeUInt32__Output } from './envoy/api/v2/core/RuntimeUInt32'; -import { SelfConfigSource as _envoy_api_v2_core_SelfConfigSource, SelfConfigSource__Output as _envoy_api_v2_core_SelfConfigSource__Output } from './envoy/api/v2/core/SelfConfigSource'; -import { SocketAddress as _envoy_api_v2_core_SocketAddress, SocketAddress__Output as _envoy_api_v2_core_SocketAddress__Output } from './envoy/api/v2/core/SocketAddress'; -import { SocketOption as _envoy_api_v2_core_SocketOption, SocketOption__Output as _envoy_api_v2_core_SocketOption__Output } from './envoy/api/v2/core/SocketOption'; -import { TcpKeepalive as _envoy_api_v2_core_TcpKeepalive, TcpKeepalive__Output as _envoy_api_v2_core_TcpKeepalive__Output } from './envoy/api/v2/core/TcpKeepalive'; -import { TcpProtocolOptions as _envoy_api_v2_core_TcpProtocolOptions, TcpProtocolOptions__Output as _envoy_api_v2_core_TcpProtocolOptions__Output } from './envoy/api/v2/core/TcpProtocolOptions'; -import { TrafficDirection as _envoy_api_v2_core_TrafficDirection } from './envoy/api/v2/core/TrafficDirection'; -import { TransportSocket as _envoy_api_v2_core_TransportSocket, TransportSocket__Output as _envoy_api_v2_core_TransportSocket__Output } from './envoy/api/v2/core/TransportSocket'; -import { UpstreamHttpProtocolOptions as _envoy_api_v2_core_UpstreamHttpProtocolOptions, UpstreamHttpProtocolOptions__Output as _envoy_api_v2_core_UpstreamHttpProtocolOptions__Output } from './envoy/api/v2/core/UpstreamHttpProtocolOptions'; -import { Endpoint as _envoy_api_v2_endpoint_Endpoint, Endpoint__Output as _envoy_api_v2_endpoint_Endpoint__Output } from './envoy/api/v2/endpoint/Endpoint'; -import { LbEndpoint as _envoy_api_v2_endpoint_LbEndpoint, LbEndpoint__Output as _envoy_api_v2_endpoint_LbEndpoint__Output } from './envoy/api/v2/endpoint/LbEndpoint'; -import { LocalityLbEndpoints as _envoy_api_v2_endpoint_LocalityLbEndpoints, LocalityLbEndpoints__Output as _envoy_api_v2_endpoint_LocalityLbEndpoints__Output } from './envoy/api/v2/endpoint/LocalityLbEndpoints'; -import { CodecClientType as _envoy_type_CodecClientType } from './envoy/type/CodecClientType'; -import { DoubleRange as _envoy_type_DoubleRange, DoubleRange__Output as _envoy_type_DoubleRange__Output } from './envoy/type/DoubleRange'; -import { FractionalPercent as _envoy_type_FractionalPercent, FractionalPercent__Output as _envoy_type_FractionalPercent__Output } from './envoy/type/FractionalPercent'; -import { Int32Range as _envoy_type_Int32Range, Int32Range__Output as _envoy_type_Int32Range__Output } from './envoy/type/Int32Range'; -import { Int64Range as _envoy_type_Int64Range, Int64Range__Output as _envoy_type_Int64Range__Output } from './envoy/type/Int64Range'; -import { Percent as _envoy_type_Percent, Percent__Output as _envoy_type_Percent__Output } from './envoy/type/Percent'; -import { SemanticVersion as _envoy_type_SemanticVersion, SemanticVersion__Output as _envoy_type_SemanticVersion__Output } from './envoy/type/SemanticVersion'; -import { ListStringMatcher as _envoy_type_matcher_ListStringMatcher, ListStringMatcher__Output as _envoy_type_matcher_ListStringMatcher__Output } from './envoy/type/matcher/ListStringMatcher'; -import { RegexMatchAndSubstitute as _envoy_type_matcher_RegexMatchAndSubstitute, RegexMatchAndSubstitute__Output as _envoy_type_matcher_RegexMatchAndSubstitute__Output } from './envoy/type/matcher/RegexMatchAndSubstitute'; -import { RegexMatcher as _envoy_type_matcher_RegexMatcher, RegexMatcher__Output as _envoy_type_matcher_RegexMatcher__Output } from './envoy/type/matcher/RegexMatcher'; -import { StringMatcher as _envoy_type_matcher_StringMatcher, StringMatcher__Output as _envoy_type_matcher_StringMatcher__Output } from './envoy/type/matcher/StringMatcher'; -import { CustomHttpPattern as _google_api_CustomHttpPattern, CustomHttpPattern__Output as _google_api_CustomHttpPattern__Output } from './google/api/CustomHttpPattern'; -import { Http as _google_api_Http, Http__Output as _google_api_Http__Output } from './google/api/Http'; -import { HttpRule as _google_api_HttpRule, HttpRule__Output as _google_api_HttpRule__Output } from './google/api/HttpRule'; -import { Any as _google_protobuf_Any, Any__Output as _google_protobuf_Any__Output } from './google/protobuf/Any'; -import { BoolValue as _google_protobuf_BoolValue, BoolValue__Output as _google_protobuf_BoolValue__Output } from './google/protobuf/BoolValue'; -import { BytesValue as _google_protobuf_BytesValue, BytesValue__Output as _google_protobuf_BytesValue__Output } from './google/protobuf/BytesValue'; -import { DescriptorProto as _google_protobuf_DescriptorProto, DescriptorProto__Output as _google_protobuf_DescriptorProto__Output } from './google/protobuf/DescriptorProto'; -import { DoubleValue as _google_protobuf_DoubleValue, DoubleValue__Output as _google_protobuf_DoubleValue__Output } from './google/protobuf/DoubleValue'; -import { Duration as _google_protobuf_Duration, Duration__Output as _google_protobuf_Duration__Output } from './google/protobuf/Duration'; -import { Empty as _google_protobuf_Empty, Empty__Output as _google_protobuf_Empty__Output } from './google/protobuf/Empty'; -import { EnumDescriptorProto as _google_protobuf_EnumDescriptorProto, EnumDescriptorProto__Output as _google_protobuf_EnumDescriptorProto__Output } from './google/protobuf/EnumDescriptorProto'; -import { EnumOptions as _google_protobuf_EnumOptions, EnumOptions__Output as _google_protobuf_EnumOptions__Output } from './google/protobuf/EnumOptions'; -import { EnumValueDescriptorProto as _google_protobuf_EnumValueDescriptorProto, EnumValueDescriptorProto__Output as _google_protobuf_EnumValueDescriptorProto__Output } from './google/protobuf/EnumValueDescriptorProto'; -import { EnumValueOptions as _google_protobuf_EnumValueOptions, EnumValueOptions__Output as _google_protobuf_EnumValueOptions__Output } from './google/protobuf/EnumValueOptions'; -import { FieldDescriptorProto as _google_protobuf_FieldDescriptorProto, FieldDescriptorProto__Output as _google_protobuf_FieldDescriptorProto__Output } from './google/protobuf/FieldDescriptorProto'; -import { FieldOptions as _google_protobuf_FieldOptions, FieldOptions__Output as _google_protobuf_FieldOptions__Output } from './google/protobuf/FieldOptions'; -import { FileDescriptorProto as _google_protobuf_FileDescriptorProto, FileDescriptorProto__Output as _google_protobuf_FileDescriptorProto__Output } from './google/protobuf/FileDescriptorProto'; -import { FileDescriptorSet as _google_protobuf_FileDescriptorSet, FileDescriptorSet__Output as _google_protobuf_FileDescriptorSet__Output } from './google/protobuf/FileDescriptorSet'; -import { FileOptions as _google_protobuf_FileOptions, FileOptions__Output as _google_protobuf_FileOptions__Output } from './google/protobuf/FileOptions'; -import { FloatValue as _google_protobuf_FloatValue, FloatValue__Output as _google_protobuf_FloatValue__Output } from './google/protobuf/FloatValue'; -import { GeneratedCodeInfo as _google_protobuf_GeneratedCodeInfo, GeneratedCodeInfo__Output as _google_protobuf_GeneratedCodeInfo__Output } from './google/protobuf/GeneratedCodeInfo'; -import { Int32Value as _google_protobuf_Int32Value, Int32Value__Output as _google_protobuf_Int32Value__Output } from './google/protobuf/Int32Value'; -import { Int64Value as _google_protobuf_Int64Value, Int64Value__Output as _google_protobuf_Int64Value__Output } from './google/protobuf/Int64Value'; -import { ListValue as _google_protobuf_ListValue, ListValue__Output as _google_protobuf_ListValue__Output } from './google/protobuf/ListValue'; -import { MessageOptions as _google_protobuf_MessageOptions, MessageOptions__Output as _google_protobuf_MessageOptions__Output } from './google/protobuf/MessageOptions'; -import { MethodDescriptorProto as _google_protobuf_MethodDescriptorProto, MethodDescriptorProto__Output as _google_protobuf_MethodDescriptorProto__Output } from './google/protobuf/MethodDescriptorProto'; -import { MethodOptions as _google_protobuf_MethodOptions, MethodOptions__Output as _google_protobuf_MethodOptions__Output } from './google/protobuf/MethodOptions'; -import { NullValue as _google_protobuf_NullValue } from './google/protobuf/NullValue'; -import { OneofDescriptorProto as _google_protobuf_OneofDescriptorProto, OneofDescriptorProto__Output as _google_protobuf_OneofDescriptorProto__Output } from './google/protobuf/OneofDescriptorProto'; -import { OneofOptions as _google_protobuf_OneofOptions, OneofOptions__Output as _google_protobuf_OneofOptions__Output } from './google/protobuf/OneofOptions'; -import { ServiceDescriptorProto as _google_protobuf_ServiceDescriptorProto, ServiceDescriptorProto__Output as _google_protobuf_ServiceDescriptorProto__Output } from './google/protobuf/ServiceDescriptorProto'; -import { ServiceOptions as _google_protobuf_ServiceOptions, ServiceOptions__Output as _google_protobuf_ServiceOptions__Output } from './google/protobuf/ServiceOptions'; -import { SourceCodeInfo as _google_protobuf_SourceCodeInfo, SourceCodeInfo__Output as _google_protobuf_SourceCodeInfo__Output } from './google/protobuf/SourceCodeInfo'; -import { StringValue as _google_protobuf_StringValue, StringValue__Output as _google_protobuf_StringValue__Output } from './google/protobuf/StringValue'; -import { Struct as _google_protobuf_Struct, Struct__Output as _google_protobuf_Struct__Output } from './google/protobuf/Struct'; -import { Timestamp as _google_protobuf_Timestamp, Timestamp__Output as _google_protobuf_Timestamp__Output } from './google/protobuf/Timestamp'; -import { UInt32Value as _google_protobuf_UInt32Value, UInt32Value__Output as _google_protobuf_UInt32Value__Output } from './google/protobuf/UInt32Value'; -import { UInt64Value as _google_protobuf_UInt64Value, UInt64Value__Output as _google_protobuf_UInt64Value__Output } from './google/protobuf/UInt64Value'; -import { UninterpretedOption as _google_protobuf_UninterpretedOption, UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output } from './google/protobuf/UninterpretedOption'; -import { Value as _google_protobuf_Value, Value__Output as _google_protobuf_Value__Output } from './google/protobuf/Value'; -import { FieldMigrateAnnotation as _udpa_annotations_FieldMigrateAnnotation, FieldMigrateAnnotation__Output as _udpa_annotations_FieldMigrateAnnotation__Output } from './udpa/annotations/FieldMigrateAnnotation'; -import { FileMigrateAnnotation as _udpa_annotations_FileMigrateAnnotation, FileMigrateAnnotation__Output as _udpa_annotations_FileMigrateAnnotation__Output } from './udpa/annotations/FileMigrateAnnotation'; -import { MigrateAnnotation as _udpa_annotations_MigrateAnnotation, MigrateAnnotation__Output as _udpa_annotations_MigrateAnnotation__Output } from './udpa/annotations/MigrateAnnotation'; -import { PackageVersionStatus as _udpa_annotations_PackageVersionStatus } from './udpa/annotations/PackageVersionStatus'; -import { StatusAnnotation as _udpa_annotations_StatusAnnotation, StatusAnnotation__Output as _udpa_annotations_StatusAnnotation__Output } from './udpa/annotations/StatusAnnotation'; -import { AnyRules as _validate_AnyRules, AnyRules__Output as _validate_AnyRules__Output } from './validate/AnyRules'; -import { BoolRules as _validate_BoolRules, BoolRules__Output as _validate_BoolRules__Output } from './validate/BoolRules'; -import { BytesRules as _validate_BytesRules, BytesRules__Output as _validate_BytesRules__Output } from './validate/BytesRules'; -import { DoubleRules as _validate_DoubleRules, DoubleRules__Output as _validate_DoubleRules__Output } from './validate/DoubleRules'; -import { DurationRules as _validate_DurationRules, DurationRules__Output as _validate_DurationRules__Output } from './validate/DurationRules'; -import { EnumRules as _validate_EnumRules, EnumRules__Output as _validate_EnumRules__Output } from './validate/EnumRules'; -import { FieldRules as _validate_FieldRules, FieldRules__Output as _validate_FieldRules__Output } from './validate/FieldRules'; -import { Fixed32Rules as _validate_Fixed32Rules, Fixed32Rules__Output as _validate_Fixed32Rules__Output } from './validate/Fixed32Rules'; -import { Fixed64Rules as _validate_Fixed64Rules, Fixed64Rules__Output as _validate_Fixed64Rules__Output } from './validate/Fixed64Rules'; -import { FloatRules as _validate_FloatRules, FloatRules__Output as _validate_FloatRules__Output } from './validate/FloatRules'; -import { Int32Rules as _validate_Int32Rules, Int32Rules__Output as _validate_Int32Rules__Output } from './validate/Int32Rules'; -import { Int64Rules as _validate_Int64Rules, Int64Rules__Output as _validate_Int64Rules__Output } from './validate/Int64Rules'; -import { KnownRegex as _validate_KnownRegex } from './validate/KnownRegex'; -import { MapRules as _validate_MapRules, MapRules__Output as _validate_MapRules__Output } from './validate/MapRules'; -import { MessageRules as _validate_MessageRules, MessageRules__Output as _validate_MessageRules__Output } from './validate/MessageRules'; -import { RepeatedRules as _validate_RepeatedRules, RepeatedRules__Output as _validate_RepeatedRules__Output } from './validate/RepeatedRules'; -import { SFixed32Rules as _validate_SFixed32Rules, SFixed32Rules__Output as _validate_SFixed32Rules__Output } from './validate/SFixed32Rules'; -import { SFixed64Rules as _validate_SFixed64Rules, SFixed64Rules__Output as _validate_SFixed64Rules__Output } from './validate/SFixed64Rules'; -import { SInt32Rules as _validate_SInt32Rules, SInt32Rules__Output as _validate_SInt32Rules__Output } from './validate/SInt32Rules'; -import { SInt64Rules as _validate_SInt64Rules, SInt64Rules__Output as _validate_SInt64Rules__Output } from './validate/SInt64Rules'; -import { StringRules as _validate_StringRules, StringRules__Output as _validate_StringRules__Output } from './validate/StringRules'; -import { TimestampRules as _validate_TimestampRules, TimestampRules__Output as _validate_TimestampRules__Output } from './validate/TimestampRules'; -import { UInt32Rules as _validate_UInt32Rules, UInt32Rules__Output as _validate_UInt32Rules__Output } from './validate/UInt32Rules'; -import { UInt64Rules as _validate_UInt64Rules, UInt64Rules__Output as _validate_UInt64Rules__Output } from './validate/UInt64Rules'; - -export namespace messages { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - /** - * Configuration for a single upstream cluster. - * [#next-free-field: 48] - */ - export type Cluster = _envoy_api_v2_Cluster; - /** - * Configuration for a single upstream cluster. - * [#next-free-field: 48] - */ - export type Cluster__Output = _envoy_api_v2_Cluster__Output; - /** - * Each route from RDS will map to a single cluster or traffic split across - * clusters using weights expressed in the RDS WeightedCluster. - * - * With EDS, each cluster is treated independently from a LB perspective, with - * LB taking place between the Localities within a cluster and at a finer - * granularity between the hosts within a locality. The percentage of traffic - * for each endpoint is determined by both its load_balancing_weight, and the - * load_balancing_weight of its locality. First, a locality will be selected, - * then an endpoint within that locality will be chose based on its weight. - * [#next-free-field: 6] - */ - export type ClusterLoadAssignment = _envoy_api_v2_ClusterLoadAssignment; - /** - * Each route from RDS will map to a single cluster or traffic split across - * clusters using weights expressed in the RDS WeightedCluster. - * - * With EDS, each cluster is treated independently from a LB perspective, with - * LB taking place between the Localities within a cluster and at a finer - * granularity between the hosts within a locality. The percentage of traffic - * for each endpoint is determined by both its load_balancing_weight, and the - * load_balancing_weight of its locality. First, a locality will be selected, - * then an endpoint within that locality will be chose based on its weight. - * [#next-free-field: 6] - */ - export type ClusterLoadAssignment__Output = _envoy_api_v2_ClusterLoadAssignment__Output; - /** - * [#not-implemented-hide:] Extensible load balancing policy configuration. - * - * Every LB policy defined via this mechanism will be identified via a unique name using reverse - * DNS notation. If the policy needs configuration parameters, it must define a message for its - * own configuration, which will be stored in the config field. The name of the policy will tell - * clients which type of message they should expect to see in the config field. - * - * Note that there are cases where it is useful to be able to independently select LB policies - * for choosing a locality and for choosing an endpoint within that locality. For example, a - * given deployment may always use the same policy to choose the locality, but for choosing the - * endpoint within the locality, some clusters may use weighted-round-robin, while others may - * use some sort of session-based balancing. - * - * This can be accomplished via hierarchical LB policies, where the parent LB policy creates a - * child LB policy for each locality. For each request, the parent chooses the locality and then - * delegates to the child policy for that locality to choose the endpoint within the locality. - * - * To facilitate this, the config message for the top-level LB policy may include a field of - * type LoadBalancingPolicy that specifies the child policy. - */ - export type LoadBalancingPolicy = _envoy_api_v2_LoadBalancingPolicy; - /** - * [#not-implemented-hide:] Extensible load balancing policy configuration. - * - * Every LB policy defined via this mechanism will be identified via a unique name using reverse - * DNS notation. If the policy needs configuration parameters, it must define a message for its - * own configuration, which will be stored in the config field. The name of the policy will tell - * clients which type of message they should expect to see in the config field. - * - * Note that there are cases where it is useful to be able to independently select LB policies - * for choosing a locality and for choosing an endpoint within that locality. For example, a - * given deployment may always use the same policy to choose the locality, but for choosing the - * endpoint within the locality, some clusters may use weighted-round-robin, while others may - * use some sort of session-based balancing. - * - * This can be accomplished via hierarchical LB policies, where the parent LB policy creates a - * child LB policy for each locality. For each request, the parent chooses the locality and then - * delegates to the child policy for that locality to choose the endpoint within the locality. - * - * To facilitate this, the config message for the top-level LB policy may include a field of - * type LoadBalancingPolicy that specifies the child policy. - */ - export type LoadBalancingPolicy__Output = _envoy_api_v2_LoadBalancingPolicy__Output; - /** - * An extensible structure containing the address Envoy should bind to when - * establishing upstream connections. - */ - export type UpstreamBindConfig = _envoy_api_v2_UpstreamBindConfig; - /** - * An extensible structure containing the address Envoy should bind to when - * establishing upstream connections. - */ - export type UpstreamBindConfig__Output = _envoy_api_v2_UpstreamBindConfig__Output; - export type UpstreamConnectionOptions = _envoy_api_v2_UpstreamConnectionOptions; - export type UpstreamConnectionOptions__Output = _envoy_api_v2_UpstreamConnectionOptions__Output; - export namespace auth { - /** - * [#next-free-field: 11] - */ - export type CertificateValidationContext = _envoy_api_v2_auth_CertificateValidationContext; - /** - * [#next-free-field: 11] - */ - export type CertificateValidationContext__Output = _envoy_api_v2_auth_CertificateValidationContext__Output; - /** - * TLS context shared by both client and server TLS contexts. - * [#next-free-field: 9] - */ - export type CommonTlsContext = _envoy_api_v2_auth_CommonTlsContext; - /** - * TLS context shared by both client and server TLS contexts. - * [#next-free-field: 9] - */ - export type CommonTlsContext__Output = _envoy_api_v2_auth_CommonTlsContext__Output; - /** - * [#next-free-field: 8] - */ - export type DownstreamTlsContext = _envoy_api_v2_auth_DownstreamTlsContext; - /** - * [#next-free-field: 8] - */ - export type DownstreamTlsContext__Output = _envoy_api_v2_auth_DownstreamTlsContext__Output; - export type GenericSecret = _envoy_api_v2_auth_GenericSecret; - export type GenericSecret__Output = _envoy_api_v2_auth_GenericSecret__Output; - /** - * BoringSSL private key method configuration. The private key methods are used for external - * (potentially asynchronous) signing and decryption operations. Some use cases for private key - * methods would be TPM support and TLS acceleration. - */ - export type PrivateKeyProvider = _envoy_api_v2_auth_PrivateKeyProvider; - /** - * BoringSSL private key method configuration. The private key methods are used for external - * (potentially asynchronous) signing and decryption operations. Some use cases for private key - * methods would be TPM support and TLS acceleration. - */ - export type PrivateKeyProvider__Output = _envoy_api_v2_auth_PrivateKeyProvider__Output; - export type SdsSecretConfig = _envoy_api_v2_auth_SdsSecretConfig; - export type SdsSecretConfig__Output = _envoy_api_v2_auth_SdsSecretConfig__Output; - /** - * [#next-free-field: 6] - */ - export type Secret = _envoy_api_v2_auth_Secret; - /** - * [#next-free-field: 6] - */ - export type Secret__Output = _envoy_api_v2_auth_Secret__Output; - /** - * [#next-free-field: 7] - */ - export type TlsCertificate = _envoy_api_v2_auth_TlsCertificate; - /** - * [#next-free-field: 7] - */ - export type TlsCertificate__Output = _envoy_api_v2_auth_TlsCertificate__Output; - export type TlsParameters = _envoy_api_v2_auth_TlsParameters; - export type TlsParameters__Output = _envoy_api_v2_auth_TlsParameters__Output; - export type TlsSessionTicketKeys = _envoy_api_v2_auth_TlsSessionTicketKeys; - export type TlsSessionTicketKeys__Output = _envoy_api_v2_auth_TlsSessionTicketKeys__Output; - export type UpstreamTlsContext = _envoy_api_v2_auth_UpstreamTlsContext; - export type UpstreamTlsContext__Output = _envoy_api_v2_auth_UpstreamTlsContext__Output; - } - export namespace cluster { - /** - * :ref:`Circuit breaking` settings can be - * specified individually for each defined priority. - */ - export type CircuitBreakers = _envoy_api_v2_cluster_CircuitBreakers; - /** - * :ref:`Circuit breaking` settings can be - * specified individually for each defined priority. - */ - export type CircuitBreakers__Output = _envoy_api_v2_cluster_CircuitBreakers__Output; - export type Filter = _envoy_api_v2_cluster_Filter; - export type Filter__Output = _envoy_api_v2_cluster_Filter__Output; - /** - * See the :ref:`architecture overview ` for - * more information on outlier detection. - * [#next-free-field: 21] - */ - export type OutlierDetection = _envoy_api_v2_cluster_OutlierDetection; - /** - * See the :ref:`architecture overview ` for - * more information on outlier detection. - * [#next-free-field: 21] - */ - export type OutlierDetection__Output = _envoy_api_v2_cluster_OutlierDetection__Output; - } - export namespace core { - /** - * Addresses specify either a logical or physical address and port, which are - * used to tell Envoy where to bind/listen, connect to upstream and find - * management servers. - */ - export type Address = _envoy_api_v2_core_Address; - /** - * Addresses specify either a logical or physical address and port, which are - * used to tell Envoy where to bind/listen, connect to upstream and find - * management servers. - */ - export type Address__Output = _envoy_api_v2_core_Address__Output; - /** - * Aggregated Discovery Service (ADS) options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that ADS is to be used. - */ - export type AggregatedConfigSource = _envoy_api_v2_core_AggregatedConfigSource; - /** - * Aggregated Discovery Service (ADS) options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that ADS is to be used. - */ - export type AggregatedConfigSource__Output = _envoy_api_v2_core_AggregatedConfigSource__Output; - /** - * API configuration source. This identifies the API type and cluster that Envoy - * will use to fetch an xDS API. - * [#next-free-field: 9] - */ - export type ApiConfigSource = _envoy_api_v2_core_ApiConfigSource; - /** - * API configuration source. This identifies the API type and cluster that Envoy - * will use to fetch an xDS API. - * [#next-free-field: 9] - */ - export type ApiConfigSource__Output = _envoy_api_v2_core_ApiConfigSource__Output; - /** - * xDS API version. This is used to describe both resource and transport - * protocol versions (in distinct configuration fields). - */ - export type ApiVersion = _envoy_api_v2_core_ApiVersion; - /** - * Async data source which support async data fetch. - */ - export type AsyncDataSource = _envoy_api_v2_core_AsyncDataSource; - /** - * Async data source which support async data fetch. - */ - export type AsyncDataSource__Output = _envoy_api_v2_core_AsyncDataSource__Output; - /** - * Configuration defining a jittered exponential back off strategy. - */ - export type BackoffStrategy = _envoy_api_v2_core_BackoffStrategy; - /** - * Configuration defining a jittered exponential back off strategy. - */ - export type BackoffStrategy__Output = _envoy_api_v2_core_BackoffStrategy__Output; - export type BindConfig = _envoy_api_v2_core_BindConfig; - export type BindConfig__Output = _envoy_api_v2_core_BindConfig__Output; - /** - * BuildVersion combines SemVer version of extension with free-form build information - * (i.e. 'alpha', 'private-build') as a set of strings. - */ - export type BuildVersion = _envoy_api_v2_core_BuildVersion; - /** - * BuildVersion combines SemVer version of extension with free-form build information - * (i.e. 'alpha', 'private-build') as a set of strings. - */ - export type BuildVersion__Output = _envoy_api_v2_core_BuildVersion__Output; - /** - * CidrRange specifies an IP Address and a prefix length to construct - * the subnet mask for a `CIDR `_ range. - */ - export type CidrRange = _envoy_api_v2_core_CidrRange; - /** - * CidrRange specifies an IP Address and a prefix length to construct - * the subnet mask for a `CIDR `_ range. - */ - export type CidrRange__Output = _envoy_api_v2_core_CidrRange__Output; - /** - * Configuration for :ref:`listeners `, :ref:`clusters - * `, :ref:`routes - * `, :ref:`endpoints - * ` etc. may either be sourced from the - * filesystem or from an xDS API source. Filesystem configs are watched with - * inotify for updates. - * [#next-free-field: 7] - */ - export type ConfigSource = _envoy_api_v2_core_ConfigSource; - /** - * Configuration for :ref:`listeners `, :ref:`clusters - * `, :ref:`routes - * `, :ref:`endpoints - * ` etc. may either be sourced from the - * filesystem or from an xDS API source. Filesystem configs are watched with - * inotify for updates. - * [#next-free-field: 7] - */ - export type ConfigSource__Output = _envoy_api_v2_core_ConfigSource__Output; - /** - * Identifies a specific ControlPlane instance that Envoy is connected to. - */ - export type ControlPlane = _envoy_api_v2_core_ControlPlane; - /** - * Identifies a specific ControlPlane instance that Envoy is connected to. - */ - export type ControlPlane__Output = _envoy_api_v2_core_ControlPlane__Output; - /** - * Data source consisting of either a file or an inline value. - */ - export type DataSource = _envoy_api_v2_core_DataSource; - /** - * Data source consisting of either a file or an inline value. - */ - export type DataSource__Output = _envoy_api_v2_core_DataSource__Output; - /** - * [#not-implemented-hide:] - * Configuration of the event reporting service endpoint. - */ - export type EventServiceConfig = _envoy_api_v2_core_EventServiceConfig; - /** - * [#not-implemented-hide:] - * Configuration of the event reporting service endpoint. - */ - export type EventServiceConfig__Output = _envoy_api_v2_core_EventServiceConfig__Output; - /** - * Version and identification for an Envoy extension. - * [#next-free-field: 6] - */ - export type Extension = _envoy_api_v2_core_Extension; - /** - * Version and identification for an Envoy extension. - * [#next-free-field: 6] - */ - export type Extension__Output = _envoy_api_v2_core_Extension__Output; - /** - * [#not-implemented-hide:] - */ - export type GrpcProtocolOptions = _envoy_api_v2_core_GrpcProtocolOptions; - /** - * [#not-implemented-hide:] - */ - export type GrpcProtocolOptions__Output = _envoy_api_v2_core_GrpcProtocolOptions__Output; - /** - * gRPC service configuration. This is used by :ref:`ApiConfigSource - * ` and filter configurations. - * [#next-free-field: 6] - */ - export type GrpcService = _envoy_api_v2_core_GrpcService; - /** - * gRPC service configuration. This is used by :ref:`ApiConfigSource - * ` and filter configurations. - * [#next-free-field: 6] - */ - export type GrpcService__Output = _envoy_api_v2_core_GrpcService__Output; - /** - * Wrapper for a set of headers. - */ - export type HeaderMap = _envoy_api_v2_core_HeaderMap; - /** - * Wrapper for a set of headers. - */ - export type HeaderMap__Output = _envoy_api_v2_core_HeaderMap__Output; - /** - * Header name/value pair. - */ - export type HeaderValue = _envoy_api_v2_core_HeaderValue; - /** - * Header name/value pair. - */ - export type HeaderValue__Output = _envoy_api_v2_core_HeaderValue__Output; - /** - * Header name/value pair plus option to control append behavior. - */ - export type HeaderValueOption = _envoy_api_v2_core_HeaderValueOption; - /** - * Header name/value pair plus option to control append behavior. - */ - export type HeaderValueOption__Output = _envoy_api_v2_core_HeaderValueOption__Output; - /** - * [#next-free-field: 23] - */ - export type HealthCheck = _envoy_api_v2_core_HealthCheck; - /** - * [#next-free-field: 23] - */ - export type HealthCheck__Output = _envoy_api_v2_core_HealthCheck__Output; - /** - * Endpoint health status. - */ - export type HealthStatus = _envoy_api_v2_core_HealthStatus; - /** - * [#next-free-field: 6] - */ - export type Http1ProtocolOptions = _envoy_api_v2_core_Http1ProtocolOptions; - /** - * [#next-free-field: 6] - */ - export type Http1ProtocolOptions__Output = _envoy_api_v2_core_Http1ProtocolOptions__Output; - /** - * [#next-free-field: 14] - */ - export type Http2ProtocolOptions = _envoy_api_v2_core_Http2ProtocolOptions; - /** - * [#next-free-field: 14] - */ - export type Http2ProtocolOptions__Output = _envoy_api_v2_core_Http2ProtocolOptions__Output; - /** - * [#next-free-field: 6] - */ - export type HttpProtocolOptions = _envoy_api_v2_core_HttpProtocolOptions; - /** - * [#next-free-field: 6] - */ - export type HttpProtocolOptions__Output = _envoy_api_v2_core_HttpProtocolOptions__Output; - /** - * Envoy external URI descriptor - */ - export type HttpUri = _envoy_api_v2_core_HttpUri; - /** - * Envoy external URI descriptor - */ - export type HttpUri__Output = _envoy_api_v2_core_HttpUri__Output; - /** - * Identifies location of where either Envoy runs or where upstream hosts run. - */ - export type Locality = _envoy_api_v2_core_Locality; - /** - * Identifies location of where either Envoy runs or where upstream hosts run. - */ - export type Locality__Output = _envoy_api_v2_core_Locality__Output; - /** - * Metadata provides additional inputs to filters based on matched listeners, - * filter chains, routes and endpoints. It is structured as a map, usually from - * filter name (in reverse DNS format) to metadata specific to the filter. Metadata - * key-values for a filter are merged as connection and request handling occurs, - * with later values for the same key overriding earlier values. - * - * An example use of metadata is providing additional values to - * http_connection_manager in the envoy.http_connection_manager.access_log - * namespace. - * - * Another example use of metadata is to per service config info in cluster metadata, which may get - * consumed by multiple filters. - * - * For load balancing, Metadata provides a means to subset cluster endpoints. - * Endpoints have a Metadata object associated and routes contain a Metadata - * object to match against. There are some well defined metadata used today for - * this purpose: - * - * * ``{"envoy.lb": {"canary": }}`` This indicates the canary status of an - * endpoint and is also used during header processing - * (x-envoy-upstream-canary) and for stats purposes. - * [#next-major-version: move to type/metadata/v2] - */ - export type Metadata = _envoy_api_v2_core_Metadata; - /** - * Metadata provides additional inputs to filters based on matched listeners, - * filter chains, routes and endpoints. It is structured as a map, usually from - * filter name (in reverse DNS format) to metadata specific to the filter. Metadata - * key-values for a filter are merged as connection and request handling occurs, - * with later values for the same key overriding earlier values. - * - * An example use of metadata is providing additional values to - * http_connection_manager in the envoy.http_connection_manager.access_log - * namespace. - * - * Another example use of metadata is to per service config info in cluster metadata, which may get - * consumed by multiple filters. - * - * For load balancing, Metadata provides a means to subset cluster endpoints. - * Endpoints have a Metadata object associated and routes contain a Metadata - * object to match against. There are some well defined metadata used today for - * this purpose: - * - * * ``{"envoy.lb": {"canary": }}`` This indicates the canary status of an - * endpoint and is also used during header processing - * (x-envoy-upstream-canary) and for stats purposes. - * [#next-major-version: move to type/metadata/v2] - */ - export type Metadata__Output = _envoy_api_v2_core_Metadata__Output; - /** - * Identifies a specific Envoy instance. The node identifier is presented to the - * management server, which may use this identifier to distinguish per Envoy - * configuration for serving. - * [#next-free-field: 12] - */ - export type Node = _envoy_api_v2_core_Node; - /** - * Identifies a specific Envoy instance. The node identifier is presented to the - * management server, which may use this identifier to distinguish per Envoy - * configuration for serving. - * [#next-free-field: 12] - */ - export type Node__Output = _envoy_api_v2_core_Node__Output; - export type Pipe = _envoy_api_v2_core_Pipe; - export type Pipe__Output = _envoy_api_v2_core_Pipe__Output; - /** - * Rate Limit settings to be applied for discovery requests made by Envoy. - */ - export type RateLimitSettings = _envoy_api_v2_core_RateLimitSettings; - /** - * Rate Limit settings to be applied for discovery requests made by Envoy. - */ - export type RateLimitSettings__Output = _envoy_api_v2_core_RateLimitSettings__Output; - /** - * The message specifies how to fetch data from remote and how to verify it. - */ - export type RemoteDataSource = _envoy_api_v2_core_RemoteDataSource; - /** - * The message specifies how to fetch data from remote and how to verify it. - */ - export type RemoteDataSource__Output = _envoy_api_v2_core_RemoteDataSource__Output; - /** - * HTTP request method. - */ - export type RequestMethod = _envoy_api_v2_core_RequestMethod; - /** - * The message specifies the retry policy of remote data source when fetching fails. - */ - export type RetryPolicy = _envoy_api_v2_core_RetryPolicy; - /** - * The message specifies the retry policy of remote data source when fetching fails. - */ - export type RetryPolicy__Output = _envoy_api_v2_core_RetryPolicy__Output; - /** - * Envoy supports :ref:`upstream priority routing - * ` both at the route and the virtual - * cluster level. The current priority implementation uses different connection - * pool and circuit breaking settings for each priority level. This means that - * even for HTTP/2 requests, two physical connections will be used to an - * upstream host. In the future Envoy will likely support true HTTP/2 priority - * over a single upstream connection. - */ - export type RoutingPriority = _envoy_api_v2_core_RoutingPriority; - /** - * Runtime derived double with a default when not specified. - */ - export type RuntimeDouble = _envoy_api_v2_core_RuntimeDouble; - /** - * Runtime derived double with a default when not specified. - */ - export type RuntimeDouble__Output = _envoy_api_v2_core_RuntimeDouble__Output; - /** - * Runtime derived bool with a default when not specified. - */ - export type RuntimeFeatureFlag = _envoy_api_v2_core_RuntimeFeatureFlag; - /** - * Runtime derived bool with a default when not specified. - */ - export type RuntimeFeatureFlag__Output = _envoy_api_v2_core_RuntimeFeatureFlag__Output; - /** - * Runtime derived FractionalPercent with defaults for when the numerator or denominator is not - * specified via a runtime key. - * - * .. note:: - * - * Parsing of the runtime key's data is implemented such that it may be represented as a - * :ref:`FractionalPercent ` proto represented as JSON/YAML - * and may also be represented as an integer with the assumption that the value is an integral - * percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse - * as a `FractionalPercent` whose numerator is 42 and denominator is HUNDRED. - */ - export type RuntimeFractionalPercent = _envoy_api_v2_core_RuntimeFractionalPercent; - /** - * Runtime derived FractionalPercent with defaults for when the numerator or denominator is not - * specified via a runtime key. - * - * .. note:: - * - * Parsing of the runtime key's data is implemented such that it may be represented as a - * :ref:`FractionalPercent ` proto represented as JSON/YAML - * and may also be represented as an integer with the assumption that the value is an integral - * percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse - * as a `FractionalPercent` whose numerator is 42 and denominator is HUNDRED. - */ - export type RuntimeFractionalPercent__Output = _envoy_api_v2_core_RuntimeFractionalPercent__Output; - /** - * Runtime derived uint32 with a default when not specified. - */ - export type RuntimeUInt32 = _envoy_api_v2_core_RuntimeUInt32; - /** - * Runtime derived uint32 with a default when not specified. - */ - export type RuntimeUInt32__Output = _envoy_api_v2_core_RuntimeUInt32__Output; - /** - * [#not-implemented-hide:] - * Self-referencing config source options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that other data can be obtained from the same server. - */ - export type SelfConfigSource = _envoy_api_v2_core_SelfConfigSource; - /** - * [#not-implemented-hide:] - * Self-referencing config source options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that other data can be obtained from the same server. - */ - export type SelfConfigSource__Output = _envoy_api_v2_core_SelfConfigSource__Output; - /** - * [#next-free-field: 7] - */ - export type SocketAddress = _envoy_api_v2_core_SocketAddress; - /** - * [#next-free-field: 7] - */ - export type SocketAddress__Output = _envoy_api_v2_core_SocketAddress__Output; - /** - * Generic socket option message. This would be used to set socket options that - * might not exist in upstream kernels or precompiled Envoy binaries. - * [#next-free-field: 7] - */ - export type SocketOption = _envoy_api_v2_core_SocketOption; - /** - * Generic socket option message. This would be used to set socket options that - * might not exist in upstream kernels or precompiled Envoy binaries. - * [#next-free-field: 7] - */ - export type SocketOption__Output = _envoy_api_v2_core_SocketOption__Output; - export type TcpKeepalive = _envoy_api_v2_core_TcpKeepalive; - export type TcpKeepalive__Output = _envoy_api_v2_core_TcpKeepalive__Output; - /** - * [#not-implemented-hide:] - */ - export type TcpProtocolOptions = _envoy_api_v2_core_TcpProtocolOptions; - /** - * [#not-implemented-hide:] - */ - export type TcpProtocolOptions__Output = _envoy_api_v2_core_TcpProtocolOptions__Output; - /** - * Identifies the direction of the traffic relative to the local Envoy. - */ - export type TrafficDirection = _envoy_api_v2_core_TrafficDirection; - /** - * Configuration for transport socket in :ref:`listeners ` and - * :ref:`clusters `. If the configuration is - * empty, a default transport socket implementation and configuration will be - * chosen based on the platform and existence of tls_context. - */ - export type TransportSocket = _envoy_api_v2_core_TransportSocket; - /** - * Configuration for transport socket in :ref:`listeners ` and - * :ref:`clusters `. If the configuration is - * empty, a default transport socket implementation and configuration will be - * chosen based on the platform and existence of tls_context. - */ - export type TransportSocket__Output = _envoy_api_v2_core_TransportSocket__Output; - export type UpstreamHttpProtocolOptions = _envoy_api_v2_core_UpstreamHttpProtocolOptions; - export type UpstreamHttpProtocolOptions__Output = _envoy_api_v2_core_UpstreamHttpProtocolOptions__Output; - } - export namespace endpoint { - /** - * Upstream host identifier. - */ - export type Endpoint = _envoy_api_v2_endpoint_Endpoint; - /** - * Upstream host identifier. - */ - export type Endpoint__Output = _envoy_api_v2_endpoint_Endpoint__Output; - /** - * An Endpoint that Envoy can route traffic to. - * [#next-free-field: 6] - */ - export type LbEndpoint = _envoy_api_v2_endpoint_LbEndpoint; - /** - * An Endpoint that Envoy can route traffic to. - * [#next-free-field: 6] - */ - export type LbEndpoint__Output = _envoy_api_v2_endpoint_LbEndpoint__Output; - /** - * A group of endpoints belonging to a Locality. - * One can have multiple LocalityLbEndpoints for a locality, but this is - * generally only done if the different groups need to have different load - * balancing weights or different priorities. - * [#next-free-field: 7] - */ - export type LocalityLbEndpoints = _envoy_api_v2_endpoint_LocalityLbEndpoints; - /** - * A group of endpoints belonging to a Locality. - * One can have multiple LocalityLbEndpoints for a locality, but this is - * generally only done if the different groups need to have different load - * balancing weights or different priorities. - * [#next-free-field: 7] - */ - export type LocalityLbEndpoints__Output = _envoy_api_v2_endpoint_LocalityLbEndpoints__Output; - } - } - } - export namespace type { - export type CodecClientType = _envoy_type_CodecClientType; - /** - * Specifies the double start and end of the range using half-open interval semantics [start, - * end). - */ - export type DoubleRange = _envoy_type_DoubleRange; - /** - * Specifies the double start and end of the range using half-open interval semantics [start, - * end). - */ - export type DoubleRange__Output = _envoy_type_DoubleRange__Output; - /** - * A fractional percentage is used in cases in which for performance reasons performing floating - * point to integer conversions during randomness calculations is undesirable. The message includes - * both a numerator and denominator that together determine the final fractional value. - * - * * **Example**: 1/100 = 1%. - * * **Example**: 3/10000 = 0.03%. - */ - export type FractionalPercent = _envoy_type_FractionalPercent; - /** - * A fractional percentage is used in cases in which for performance reasons performing floating - * point to integer conversions during randomness calculations is undesirable. The message includes - * both a numerator and denominator that together determine the final fractional value. - * - * * **Example**: 1/100 = 1%. - * * **Example**: 3/10000 = 0.03%. - */ - export type FractionalPercent__Output = _envoy_type_FractionalPercent__Output; - /** - * Specifies the int32 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int32Range = _envoy_type_Int32Range; - /** - * Specifies the int32 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int32Range__Output = _envoy_type_Int32Range__Output; - /** - * Specifies the int64 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int64Range = _envoy_type_Int64Range; - /** - * Specifies the int64 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int64Range__Output = _envoy_type_Int64Range__Output; - /** - * Identifies a percentage, in the range [0.0, 100.0]. - */ - export type Percent = _envoy_type_Percent; - /** - * Identifies a percentage, in the range [0.0, 100.0]. - */ - export type Percent__Output = _envoy_type_Percent__Output; - /** - * Envoy uses SemVer (https://semver.org/). Major/minor versions indicate - * expected behaviors and APIs, the patch version field is used only - * for security fixes and can be generally ignored. - */ - export type SemanticVersion = _envoy_type_SemanticVersion; - /** - * Envoy uses SemVer (https://semver.org/). Major/minor versions indicate - * expected behaviors and APIs, the patch version field is used only - * for security fixes and can be generally ignored. - */ - export type SemanticVersion__Output = _envoy_type_SemanticVersion__Output; - export namespace matcher { - /** - * Specifies a list of ways to match a string. - */ - export type ListStringMatcher = _envoy_type_matcher_ListStringMatcher; - /** - * Specifies a list of ways to match a string. - */ - export type ListStringMatcher__Output = _envoy_type_matcher_ListStringMatcher__Output; - /** - * Describes how to match a string and then produce a new string using a regular - * expression and a substitution string. - */ - export type RegexMatchAndSubstitute = _envoy_type_matcher_RegexMatchAndSubstitute; - /** - * Describes how to match a string and then produce a new string using a regular - * expression and a substitution string. - */ - export type RegexMatchAndSubstitute__Output = _envoy_type_matcher_RegexMatchAndSubstitute__Output; - /** - * A regex matcher designed for safety when used with untrusted input. - */ - export type RegexMatcher = _envoy_type_matcher_RegexMatcher; - /** - * A regex matcher designed for safety when used with untrusted input. - */ - export type RegexMatcher__Output = _envoy_type_matcher_RegexMatcher__Output; - /** - * Specifies the way to match a string. - * [#next-free-field: 7] - */ - export type StringMatcher = _envoy_type_matcher_StringMatcher; - /** - * Specifies the way to match a string. - * [#next-free-field: 7] - */ - export type StringMatcher__Output = _envoy_type_matcher_StringMatcher__Output; - } - } - } - export namespace google { - export namespace api { - /** - * A custom pattern is used for defining custom HTTP verb. - */ - export type CustomHttpPattern = _google_api_CustomHttpPattern; - /** - * A custom pattern is used for defining custom HTTP verb. - */ - export type CustomHttpPattern__Output = _google_api_CustomHttpPattern__Output; - /** - * Defines the HTTP configuration for an API service. It contains a list of - * [HttpRule][google.api.HttpRule], each specifying the mapping of an RPC method - * to one or more HTTP REST API methods. - */ - export type Http = _google_api_Http; - /** - * Defines the HTTP configuration for an API service. It contains a list of - * [HttpRule][google.api.HttpRule], each specifying the mapping of an RPC method - * to one or more HTTP REST API methods. - */ - export type Http__Output = _google_api_Http__Output; - /** - * # gRPC Transcoding - * - * gRPC Transcoding is a feature for mapping between a gRPC method and one or - * more HTTP REST endpoints. It allows developers to build a single API service - * that supports both gRPC APIs and REST APIs. Many systems, including [Google - * APIs](https://github.com/googleapis/googleapis), - * [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC - * Gateway](https://github.com/grpc-ecosystem/grpc-gateway), - * and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature - * and use it for large scale production services. - * - * `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies - * how different portions of the gRPC request message are mapped to the URL - * path, URL query parameters, and HTTP request body. It also controls how the - * gRPC response message is mapped to the HTTP response body. `HttpRule` is - * typically specified as an `google.api.http` annotation on the gRPC method. - * - * Each mapping specifies a URL path template and an HTTP method. The path - * template may refer to one or more fields in the gRPC request message, as long - * as each field is a non-repeated field with a primitive (non-message) type. - * The path template controls how fields of the request message are mapped to - * the URL path. - * - * Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/{name=messages/*}" - * }; - * } - * } - * message GetMessageRequest { - * string name = 1; // Mapped to URL path. - * } - * message Message { - * string text = 1; // The resource content. - * } - * - * This enables an HTTP REST to gRPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")` - * - * Any fields in the request message which are not bound by the path template - * automatically become HTTP query parameters if there is no HTTP request body. - * For example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get:"/v1/messages/{message_id}" - * }; - * } - * } - * message GetMessageRequest { - * message SubMessage { - * string subfield = 1; - * } - * string message_id = 1; // Mapped to URL path. - * int64 revision = 2; // Mapped to URL query parameter `revision`. - * SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`. - * } - * - * This enables a HTTP JSON to RPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456?revision=2&sub.subfield=foo` | - * `GetMessage(message_id: "123456" revision: 2 sub: SubMessage(subfield: - * "foo"))` - * - * Note that fields which are mapped to URL query parameters must have a - * primitive type or a repeated primitive type or a non-repeated message type. - * In the case of a repeated type, the parameter can be repeated in the URL - * as `...?param=A¶m=B`. In the case of a message type, each field of the - * message is mapped to a separate parameter, such as - * `...?foo.a=A&foo.b=B&foo.c=C`. - * - * For HTTP methods that allow a request body, the `body` field - * specifies the mapping. Consider a REST update method on the - * message resource collection: - * - * service Messaging { - * rpc UpdateMessage(UpdateMessageRequest) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "message" - * }; - * } - * } - * message UpdateMessageRequest { - * string message_id = 1; // mapped to the URL - * Message message = 2; // mapped to the body - * } - * - * The following HTTP JSON to RPC mapping is enabled, where the - * representation of the JSON in the request body is determined by - * protos JSON encoding: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" message { text: "Hi!" })` - * - * The special name `*` can be used in the body mapping to define that - * every field not bound by the path template should be mapped to the - * request body. This enables the following alternative definition of - * the update method: - * - * service Messaging { - * rpc UpdateMessage(Message) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "*" - * }; - * } - * } - * message Message { - * string message_id = 1; - * string text = 2; - * } - * - * - * The following HTTP JSON to RPC mapping is enabled: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" text: "Hi!")` - * - * Note that when using `*` in the body mapping, it is not possible to - * have HTTP parameters, as all fields not bound by the path end in - * the body. This makes this option more rarely used in practice when - * defining REST APIs. The common usage of `*` is in custom methods - * which don't use the URL at all for transferring data. - * - * It is possible to define multiple HTTP methods for one RPC by using - * the `additional_bindings` option. Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/messages/{message_id}" - * additional_bindings { - * get: "/v1/users/{user_id}/messages/{message_id}" - * } - * }; - * } - * } - * message GetMessageRequest { - * string message_id = 1; - * string user_id = 2; - * } - * - * This enables the following two alternative HTTP JSON to RPC mappings: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` - * `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: - * "123456")` - * - * ## Rules for HTTP mapping - * - * 1. Leaf request fields (recursive expansion nested messages in the request - * message) are classified into three categories: - * - Fields referred by the path template. They are passed via the URL path. - * - Fields referred by the [HttpRule.body][google.api.HttpRule.body]. They are passed via the HTTP - * request body. - * - All other fields are passed via the URL query parameters, and the - * parameter name is the field path in the request message. A repeated - * field can be represented as multiple query parameters under the same - * name. - * 2. If [HttpRule.body][google.api.HttpRule.body] is "*", there is no URL query parameter, all fields - * are passed via URL path and HTTP request body. - * 3. If [HttpRule.body][google.api.HttpRule.body] is omitted, there is no HTTP request body, all - * fields are passed via URL path and URL query parameters. - * - * ### Path template syntax - * - * Template = "/" Segments [ Verb ] ; - * Segments = Segment { "/" Segment } ; - * Segment = "*" | "**" | LITERAL | Variable ; - * Variable = "{" FieldPath [ "=" Segments ] "}" ; - * FieldPath = IDENT { "." IDENT } ; - * Verb = ":" LITERAL ; - * - * The syntax `*` matches a single URL path segment. The syntax `**` matches - * zero or more URL path segments, which must be the last part of the URL path - * except the `Verb`. - * - * The syntax `Variable` matches part of the URL path as specified by its - * template. A variable template must not contain other variables. If a variable - * matches a single path segment, its template may be omitted, e.g. `{var}` - * is equivalent to `{var=*}`. - * - * The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL` - * contains any reserved character, such characters should be percent-encoded - * before the matching. - * - * If a variable contains exactly one path segment, such as `"{var}"` or - * `"{var=*}"`, when such a variable is expanded into a URL path on the client - * side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The - * server side does the reverse decoding. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{var}`. - * - * If a variable contains multiple path segments, such as `"{var=foo/*}"` - * or `"{var=**}"`, when such a variable is expanded into a URL path on the - * client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. - * The server side does the reverse decoding, except "%2F" and "%2f" are left - * unchanged. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{+var}`. - * - * ## Using gRPC API Service Configuration - * - * gRPC API Service Configuration (service config) is a configuration language - * for configuring a gRPC service to become a user-facing product. The - * service config is simply the YAML representation of the `google.api.Service` - * proto message. - * - * As an alternative to annotating your proto file, you can configure gRPC - * transcoding in your service config YAML files. You do this by specifying a - * `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same - * effect as the proto annotation. This can be particularly useful if you - * have a proto that is reused in multiple services. Note that any transcoding - * specified in the service config will override any matching transcoding - * configuration in the proto. - * - * Example: - * - * http: - * rules: - * # Selects a gRPC method and applies HttpRule to it. - * - selector: example.v1.Messaging.GetMessage - * get: /v1/messages/{message_id}/{sub.subfield} - * - * ## Special notes - * - * When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the - * proto to JSON conversion must follow the [proto3 - * specification](https://developers.google.com/protocol-buffers/docs/proto3#json). - * - * While the single segment variable follows the semantics of - * [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String - * Expansion, the multi segment variable **does not** follow RFC 6570 Section - * 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion - * does not expand special characters like `?` and `#`, which would lead - * to invalid URLs. As the result, gRPC Transcoding uses a custom encoding - * for multi segment variables. - * - * The path variables **must not** refer to any repeated or mapped field, - * because client libraries are not capable of handling such variable expansion. - * - * The path variables **must not** capture the leading "/" character. The reason - * is that the most common use case "{var}" does not capture the leading "/" - * character. For consistency, all path variables must share the same behavior. - * - * Repeated message fields must not be mapped to URL query parameters, because - * no client library can support such complicated mapping. - * - * If an API needs to use a JSON array for request or response body, it can map - * the request or response body to a repeated field. However, some gRPC - * Transcoding implementations may not support this feature. - */ - export type HttpRule = _google_api_HttpRule; - /** - * # gRPC Transcoding - * - * gRPC Transcoding is a feature for mapping between a gRPC method and one or - * more HTTP REST endpoints. It allows developers to build a single API service - * that supports both gRPC APIs and REST APIs. Many systems, including [Google - * APIs](https://github.com/googleapis/googleapis), - * [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC - * Gateway](https://github.com/grpc-ecosystem/grpc-gateway), - * and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature - * and use it for large scale production services. - * - * `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies - * how different portions of the gRPC request message are mapped to the URL - * path, URL query parameters, and HTTP request body. It also controls how the - * gRPC response message is mapped to the HTTP response body. `HttpRule` is - * typically specified as an `google.api.http` annotation on the gRPC method. - * - * Each mapping specifies a URL path template and an HTTP method. The path - * template may refer to one or more fields in the gRPC request message, as long - * as each field is a non-repeated field with a primitive (non-message) type. - * The path template controls how fields of the request message are mapped to - * the URL path. - * - * Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/{name=messages/*}" - * }; - * } - * } - * message GetMessageRequest { - * string name = 1; // Mapped to URL path. - * } - * message Message { - * string text = 1; // The resource content. - * } - * - * This enables an HTTP REST to gRPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")` - * - * Any fields in the request message which are not bound by the path template - * automatically become HTTP query parameters if there is no HTTP request body. - * For example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get:"/v1/messages/{message_id}" - * }; - * } - * } - * message GetMessageRequest { - * message SubMessage { - * string subfield = 1; - * } - * string message_id = 1; // Mapped to URL path. - * int64 revision = 2; // Mapped to URL query parameter `revision`. - * SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`. - * } - * - * This enables a HTTP JSON to RPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456?revision=2&sub.subfield=foo` | - * `GetMessage(message_id: "123456" revision: 2 sub: SubMessage(subfield: - * "foo"))` - * - * Note that fields which are mapped to URL query parameters must have a - * primitive type or a repeated primitive type or a non-repeated message type. - * In the case of a repeated type, the parameter can be repeated in the URL - * as `...?param=A¶m=B`. In the case of a message type, each field of the - * message is mapped to a separate parameter, such as - * `...?foo.a=A&foo.b=B&foo.c=C`. - * - * For HTTP methods that allow a request body, the `body` field - * specifies the mapping. Consider a REST update method on the - * message resource collection: - * - * service Messaging { - * rpc UpdateMessage(UpdateMessageRequest) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "message" - * }; - * } - * } - * message UpdateMessageRequest { - * string message_id = 1; // mapped to the URL - * Message message = 2; // mapped to the body - * } - * - * The following HTTP JSON to RPC mapping is enabled, where the - * representation of the JSON in the request body is determined by - * protos JSON encoding: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" message { text: "Hi!" })` - * - * The special name `*` can be used in the body mapping to define that - * every field not bound by the path template should be mapped to the - * request body. This enables the following alternative definition of - * the update method: - * - * service Messaging { - * rpc UpdateMessage(Message) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "*" - * }; - * } - * } - * message Message { - * string message_id = 1; - * string text = 2; - * } - * - * - * The following HTTP JSON to RPC mapping is enabled: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" text: "Hi!")` - * - * Note that when using `*` in the body mapping, it is not possible to - * have HTTP parameters, as all fields not bound by the path end in - * the body. This makes this option more rarely used in practice when - * defining REST APIs. The common usage of `*` is in custom methods - * which don't use the URL at all for transferring data. - * - * It is possible to define multiple HTTP methods for one RPC by using - * the `additional_bindings` option. Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/messages/{message_id}" - * additional_bindings { - * get: "/v1/users/{user_id}/messages/{message_id}" - * } - * }; - * } - * } - * message GetMessageRequest { - * string message_id = 1; - * string user_id = 2; - * } - * - * This enables the following two alternative HTTP JSON to RPC mappings: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` - * `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: - * "123456")` - * - * ## Rules for HTTP mapping - * - * 1. Leaf request fields (recursive expansion nested messages in the request - * message) are classified into three categories: - * - Fields referred by the path template. They are passed via the URL path. - * - Fields referred by the [HttpRule.body][google.api.HttpRule.body]. They are passed via the HTTP - * request body. - * - All other fields are passed via the URL query parameters, and the - * parameter name is the field path in the request message. A repeated - * field can be represented as multiple query parameters under the same - * name. - * 2. If [HttpRule.body][google.api.HttpRule.body] is "*", there is no URL query parameter, all fields - * are passed via URL path and HTTP request body. - * 3. If [HttpRule.body][google.api.HttpRule.body] is omitted, there is no HTTP request body, all - * fields are passed via URL path and URL query parameters. - * - * ### Path template syntax - * - * Template = "/" Segments [ Verb ] ; - * Segments = Segment { "/" Segment } ; - * Segment = "*" | "**" | LITERAL | Variable ; - * Variable = "{" FieldPath [ "=" Segments ] "}" ; - * FieldPath = IDENT { "." IDENT } ; - * Verb = ":" LITERAL ; - * - * The syntax `*` matches a single URL path segment. The syntax `**` matches - * zero or more URL path segments, which must be the last part of the URL path - * except the `Verb`. - * - * The syntax `Variable` matches part of the URL path as specified by its - * template. A variable template must not contain other variables. If a variable - * matches a single path segment, its template may be omitted, e.g. `{var}` - * is equivalent to `{var=*}`. - * - * The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL` - * contains any reserved character, such characters should be percent-encoded - * before the matching. - * - * If a variable contains exactly one path segment, such as `"{var}"` or - * `"{var=*}"`, when such a variable is expanded into a URL path on the client - * side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The - * server side does the reverse decoding. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{var}`. - * - * If a variable contains multiple path segments, such as `"{var=foo/*}"` - * or `"{var=**}"`, when such a variable is expanded into a URL path on the - * client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. - * The server side does the reverse decoding, except "%2F" and "%2f" are left - * unchanged. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{+var}`. - * - * ## Using gRPC API Service Configuration - * - * gRPC API Service Configuration (service config) is a configuration language - * for configuring a gRPC service to become a user-facing product. The - * service config is simply the YAML representation of the `google.api.Service` - * proto message. - * - * As an alternative to annotating your proto file, you can configure gRPC - * transcoding in your service config YAML files. You do this by specifying a - * `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same - * effect as the proto annotation. This can be particularly useful if you - * have a proto that is reused in multiple services. Note that any transcoding - * specified in the service config will override any matching transcoding - * configuration in the proto. - * - * Example: - * - * http: - * rules: - * # Selects a gRPC method and applies HttpRule to it. - * - selector: example.v1.Messaging.GetMessage - * get: /v1/messages/{message_id}/{sub.subfield} - * - * ## Special notes - * - * When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the - * proto to JSON conversion must follow the [proto3 - * specification](https://developers.google.com/protocol-buffers/docs/proto3#json). - * - * While the single segment variable follows the semantics of - * [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String - * Expansion, the multi segment variable **does not** follow RFC 6570 Section - * 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion - * does not expand special characters like `?` and `#`, which would lead - * to invalid URLs. As the result, gRPC Transcoding uses a custom encoding - * for multi segment variables. - * - * The path variables **must not** refer to any repeated or mapped field, - * because client libraries are not capable of handling such variable expansion. - * - * The path variables **must not** capture the leading "/" character. The reason - * is that the most common use case "{var}" does not capture the leading "/" - * character. For consistency, all path variables must share the same behavior. - * - * Repeated message fields must not be mapped to URL query parameters, because - * no client library can support such complicated mapping. - * - * If an API needs to use a JSON array for request or response body, it can map - * the request or response body to a repeated field. However, some gRPC - * Transcoding implementations may not support this feature. - */ - export type HttpRule__Output = _google_api_HttpRule__Output; - } - export namespace protobuf { - export type Any = _google_protobuf_Any; - export type Any__Output = _google_protobuf_Any__Output; - export type BoolValue = _google_protobuf_BoolValue; - export type BoolValue__Output = _google_protobuf_BoolValue__Output; - export type BytesValue = _google_protobuf_BytesValue; - export type BytesValue__Output = _google_protobuf_BytesValue__Output; - export type DescriptorProto = _google_protobuf_DescriptorProto; - export type DescriptorProto__Output = _google_protobuf_DescriptorProto__Output; - export type DoubleValue = _google_protobuf_DoubleValue; - export type DoubleValue__Output = _google_protobuf_DoubleValue__Output; - export type Duration = _google_protobuf_Duration; - export type Duration__Output = _google_protobuf_Duration__Output; - export type Empty = _google_protobuf_Empty; - export type Empty__Output = _google_protobuf_Empty__Output; - export type EnumDescriptorProto = _google_protobuf_EnumDescriptorProto; - export type EnumDescriptorProto__Output = _google_protobuf_EnumDescriptorProto__Output; - export type EnumOptions = _google_protobuf_EnumOptions; - export type EnumOptions__Output = _google_protobuf_EnumOptions__Output; - export type EnumValueDescriptorProto = _google_protobuf_EnumValueDescriptorProto; - export type EnumValueDescriptorProto__Output = _google_protobuf_EnumValueDescriptorProto__Output; - export type EnumValueOptions = _google_protobuf_EnumValueOptions; - export type EnumValueOptions__Output = _google_protobuf_EnumValueOptions__Output; - export type FieldDescriptorProto = _google_protobuf_FieldDescriptorProto; - export type FieldDescriptorProto__Output = _google_protobuf_FieldDescriptorProto__Output; - export type FieldOptions = _google_protobuf_FieldOptions; - export type FieldOptions__Output = _google_protobuf_FieldOptions__Output; - export type FileDescriptorProto = _google_protobuf_FileDescriptorProto; - export type FileDescriptorProto__Output = _google_protobuf_FileDescriptorProto__Output; - export type FileDescriptorSet = _google_protobuf_FileDescriptorSet; - export type FileDescriptorSet__Output = _google_protobuf_FileDescriptorSet__Output; - export type FileOptions = _google_protobuf_FileOptions; - export type FileOptions__Output = _google_protobuf_FileOptions__Output; - export type FloatValue = _google_protobuf_FloatValue; - export type FloatValue__Output = _google_protobuf_FloatValue__Output; - export type GeneratedCodeInfo = _google_protobuf_GeneratedCodeInfo; - export type GeneratedCodeInfo__Output = _google_protobuf_GeneratedCodeInfo__Output; - export type Int32Value = _google_protobuf_Int32Value; - export type Int32Value__Output = _google_protobuf_Int32Value__Output; - export type Int64Value = _google_protobuf_Int64Value; - export type Int64Value__Output = _google_protobuf_Int64Value__Output; - export type ListValue = _google_protobuf_ListValue; - export type ListValue__Output = _google_protobuf_ListValue__Output; - export type MessageOptions = _google_protobuf_MessageOptions; - export type MessageOptions__Output = _google_protobuf_MessageOptions__Output; - export type MethodDescriptorProto = _google_protobuf_MethodDescriptorProto; - export type MethodDescriptorProto__Output = _google_protobuf_MethodDescriptorProto__Output; - export type MethodOptions = _google_protobuf_MethodOptions; - export type MethodOptions__Output = _google_protobuf_MethodOptions__Output; - export type NullValue = _google_protobuf_NullValue; - export type OneofDescriptorProto = _google_protobuf_OneofDescriptorProto; - export type OneofDescriptorProto__Output = _google_protobuf_OneofDescriptorProto__Output; - export type OneofOptions = _google_protobuf_OneofOptions; - export type OneofOptions__Output = _google_protobuf_OneofOptions__Output; - export type ServiceDescriptorProto = _google_protobuf_ServiceDescriptorProto; - export type ServiceDescriptorProto__Output = _google_protobuf_ServiceDescriptorProto__Output; - export type ServiceOptions = _google_protobuf_ServiceOptions; - export type ServiceOptions__Output = _google_protobuf_ServiceOptions__Output; - export type SourceCodeInfo = _google_protobuf_SourceCodeInfo; - export type SourceCodeInfo__Output = _google_protobuf_SourceCodeInfo__Output; - export type StringValue = _google_protobuf_StringValue; - export type StringValue__Output = _google_protobuf_StringValue__Output; - export type Struct = _google_protobuf_Struct; - export type Struct__Output = _google_protobuf_Struct__Output; - export type Timestamp = _google_protobuf_Timestamp; - export type Timestamp__Output = _google_protobuf_Timestamp__Output; - export type UInt32Value = _google_protobuf_UInt32Value; - export type UInt32Value__Output = _google_protobuf_UInt32Value__Output; - export type UInt64Value = _google_protobuf_UInt64Value; - export type UInt64Value__Output = _google_protobuf_UInt64Value__Output; - export type UninterpretedOption = _google_protobuf_UninterpretedOption; - export type UninterpretedOption__Output = _google_protobuf_UninterpretedOption__Output; - export type Value = _google_protobuf_Value; - export type Value__Output = _google_protobuf_Value__Output; - } - } - export namespace udpa { - export namespace annotations { - export type FieldMigrateAnnotation = _udpa_annotations_FieldMigrateAnnotation; - export type FieldMigrateAnnotation__Output = _udpa_annotations_FieldMigrateAnnotation__Output; - export type FileMigrateAnnotation = _udpa_annotations_FileMigrateAnnotation; - export type FileMigrateAnnotation__Output = _udpa_annotations_FileMigrateAnnotation__Output; - export type MigrateAnnotation = _udpa_annotations_MigrateAnnotation; - export type MigrateAnnotation__Output = _udpa_annotations_MigrateAnnotation__Output; - export type PackageVersionStatus = _udpa_annotations_PackageVersionStatus; - export type StatusAnnotation = _udpa_annotations_StatusAnnotation; - export type StatusAnnotation__Output = _udpa_annotations_StatusAnnotation__Output; - } - } - export namespace validate { - /** - * AnyRules describe constraints applied exclusively to the - * `google.protobuf.Any` well-known type - */ - export type AnyRules = _validate_AnyRules; - /** - * AnyRules describe constraints applied exclusively to the - * `google.protobuf.Any` well-known type - */ - export type AnyRules__Output = _validate_AnyRules__Output; - /** - * BoolRules describes the constraints applied to `bool` values - */ - export type BoolRules = _validate_BoolRules; - /** - * BoolRules describes the constraints applied to `bool` values - */ - export type BoolRules__Output = _validate_BoolRules__Output; - /** - * BytesRules describe the constraints applied to `bytes` values - */ - export type BytesRules = _validate_BytesRules; - /** - * BytesRules describe the constraints applied to `bytes` values - */ - export type BytesRules__Output = _validate_BytesRules__Output; - /** - * DoubleRules describes the constraints applied to `double` values - */ - export type DoubleRules = _validate_DoubleRules; - /** - * DoubleRules describes the constraints applied to `double` values - */ - export type DoubleRules__Output = _validate_DoubleRules__Output; - /** - * DurationRules describe the constraints applied exclusively to the - * `google.protobuf.Duration` well-known type - */ - export type DurationRules = _validate_DurationRules; - /** - * DurationRules describe the constraints applied exclusively to the - * `google.protobuf.Duration` well-known type - */ - export type DurationRules__Output = _validate_DurationRules__Output; - /** - * EnumRules describe the constraints applied to enum values - */ - export type EnumRules = _validate_EnumRules; - /** - * EnumRules describe the constraints applied to enum values - */ - export type EnumRules__Output = _validate_EnumRules__Output; - /** - * FieldRules encapsulates the rules for each type of field. Depending on the - * field, the correct set should be used to ensure proper validations. - */ - export type FieldRules = _validate_FieldRules; - /** - * FieldRules encapsulates the rules for each type of field. Depending on the - * field, the correct set should be used to ensure proper validations. - */ - export type FieldRules__Output = _validate_FieldRules__Output; - /** - * Fixed32Rules describes the constraints applied to `fixed32` values - */ - export type Fixed32Rules = _validate_Fixed32Rules; - /** - * Fixed32Rules describes the constraints applied to `fixed32` values - */ - export type Fixed32Rules__Output = _validate_Fixed32Rules__Output; - /** - * Fixed64Rules describes the constraints applied to `fixed64` values - */ - export type Fixed64Rules = _validate_Fixed64Rules; - /** - * Fixed64Rules describes the constraints applied to `fixed64` values - */ - export type Fixed64Rules__Output = _validate_Fixed64Rules__Output; - /** - * FloatRules describes the constraints applied to `float` values - */ - export type FloatRules = _validate_FloatRules; - /** - * FloatRules describes the constraints applied to `float` values - */ - export type FloatRules__Output = _validate_FloatRules__Output; - /** - * Int32Rules describes the constraints applied to `int32` values - */ - export type Int32Rules = _validate_Int32Rules; - /** - * Int32Rules describes the constraints applied to `int32` values - */ - export type Int32Rules__Output = _validate_Int32Rules__Output; - /** - * Int64Rules describes the constraints applied to `int64` values - */ - export type Int64Rules = _validate_Int64Rules; - /** - * Int64Rules describes the constraints applied to `int64` values - */ - export type Int64Rules__Output = _validate_Int64Rules__Output; - /** - * WellKnownRegex contain some well-known patterns. - */ - export type KnownRegex = _validate_KnownRegex; - /** - * MapRules describe the constraints applied to `map` values - */ - export type MapRules = _validate_MapRules; - /** - * MapRules describe the constraints applied to `map` values - */ - export type MapRules__Output = _validate_MapRules__Output; - /** - * MessageRules describe the constraints applied to embedded message values. - * For message-type fields, validation is performed recursively. - */ - export type MessageRules = _validate_MessageRules; - /** - * MessageRules describe the constraints applied to embedded message values. - * For message-type fields, validation is performed recursively. - */ - export type MessageRules__Output = _validate_MessageRules__Output; - /** - * RepeatedRules describe the constraints applied to `repeated` values - */ - export type RepeatedRules = _validate_RepeatedRules; - /** - * RepeatedRules describe the constraints applied to `repeated` values - */ - export type RepeatedRules__Output = _validate_RepeatedRules__Output; - /** - * SFixed32Rules describes the constraints applied to `sfixed32` values - */ - export type SFixed32Rules = _validate_SFixed32Rules; - /** - * SFixed32Rules describes the constraints applied to `sfixed32` values - */ - export type SFixed32Rules__Output = _validate_SFixed32Rules__Output; - /** - * SFixed64Rules describes the constraints applied to `sfixed64` values - */ - export type SFixed64Rules = _validate_SFixed64Rules; - /** - * SFixed64Rules describes the constraints applied to `sfixed64` values - */ - export type SFixed64Rules__Output = _validate_SFixed64Rules__Output; - /** - * SInt32Rules describes the constraints applied to `sint32` values - */ - export type SInt32Rules = _validate_SInt32Rules; - /** - * SInt32Rules describes the constraints applied to `sint32` values - */ - export type SInt32Rules__Output = _validate_SInt32Rules__Output; - /** - * SInt64Rules describes the constraints applied to `sint64` values - */ - export type SInt64Rules = _validate_SInt64Rules; - /** - * SInt64Rules describes the constraints applied to `sint64` values - */ - export type SInt64Rules__Output = _validate_SInt64Rules__Output; - /** - * StringRules describe the constraints applied to `string` values - */ - export type StringRules = _validate_StringRules; - /** - * StringRules describe the constraints applied to `string` values - */ - export type StringRules__Output = _validate_StringRules__Output; - /** - * TimestampRules describe the constraints applied exclusively to the - * `google.protobuf.Timestamp` well-known type - */ - export type TimestampRules = _validate_TimestampRules; - /** - * TimestampRules describe the constraints applied exclusively to the - * `google.protobuf.Timestamp` well-known type - */ - export type TimestampRules__Output = _validate_TimestampRules__Output; - /** - * UInt32Rules describes the constraints applied to `uint32` values - */ - export type UInt32Rules = _validate_UInt32Rules; - /** - * UInt32Rules describes the constraints applied to `uint32` values - */ - export type UInt32Rules__Output = _validate_UInt32Rules__Output; - /** - * UInt64Rules describes the constraints applied to `uint64` values - */ - export type UInt64Rules = _validate_UInt64Rules; - /** - * UInt64Rules describes the constraints applied to `uint64` values - */ - export type UInt64Rules__Output = _validate_UInt64Rules__Output; - } -} - -export namespace ClientInterfaces { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - export namespace Cluster { - export namespace CommonLbConfig { - export namespace ConsistentHashingLbConfig { - } - export namespace LocalityWeightedLbConfig { - } - export namespace ZoneAwareLbConfig { - } - } - export namespace CustomClusterType { - } - export namespace EdsClusterConfig { - } - export namespace LbSubsetConfig { - export namespace LbSubsetSelector { - } - } - export namespace LeastRequestLbConfig { - } - export namespace OriginalDstLbConfig { - } - export namespace RefreshRate { - } - export namespace RingHashLbConfig { - } - export namespace TransportSocketMatch { - } - } - export namespace ClusterLoadAssignment { - export namespace Policy { - export namespace DropOverload { - } - } - } - export namespace LoadBalancingPolicy { - export namespace Policy { - } - } - export namespace UpstreamBindConfig { - } - export namespace UpstreamConnectionOptions { - } - export namespace auth { - export namespace CertificateValidationContext { - } - export namespace CommonTlsContext { - export namespace CombinedCertificateValidationContext { - } - } - export namespace DownstreamTlsContext { - } - export namespace GenericSecret { - } - export namespace PrivateKeyProvider { - } - export namespace SdsSecretConfig { - } - export namespace Secret { - } - export namespace TlsCertificate { - } - export namespace TlsParameters { - } - export namespace TlsSessionTicketKeys { - } - export namespace UpstreamTlsContext { - } - } - export namespace cluster { - export namespace CircuitBreakers { - export namespace Thresholds { - export namespace RetryBudget { - } - } - } - export namespace Filter { - } - export namespace OutlierDetection { - } - } - export namespace core { - export namespace Address { - } - export namespace AggregatedConfigSource { - } - export namespace ApiConfigSource { - } - export namespace AsyncDataSource { - } - export namespace BackoffStrategy { - } - export namespace BindConfig { - } - export namespace BuildVersion { - } - export namespace CidrRange { - } - export namespace ConfigSource { - } - export namespace ControlPlane { - } - export namespace DataSource { - } - export namespace EventServiceConfig { - } - export namespace Extension { - } - export namespace GrpcProtocolOptions { - } - export namespace GrpcService { - export namespace EnvoyGrpc { - } - export namespace GoogleGrpc { - export namespace CallCredentials { - export namespace GoogleIAMCredentials { - } - export namespace MetadataCredentialsFromPlugin { - } - export namespace ServiceAccountJWTAccessCredentials { - } - export namespace StsService { - } - } - export namespace ChannelCredentials { - } - export namespace GoogleLocalCredentials { - } - export namespace SslCredentials { - } - } - } - export namespace HeaderMap { - } - export namespace HeaderValue { - } - export namespace HeaderValueOption { - } - export namespace HealthCheck { - export namespace CustomHealthCheck { - } - export namespace GrpcHealthCheck { - } - export namespace HttpHealthCheck { - } - export namespace Payload { - } - export namespace RedisHealthCheck { - } - export namespace TcpHealthCheck { - } - export namespace TlsOptions { - } - } - export namespace Http1ProtocolOptions { - export namespace HeaderKeyFormat { - export namespace ProperCaseWords { - } - } - } - export namespace Http2ProtocolOptions { - export namespace SettingsParameter { - } - } - export namespace HttpProtocolOptions { - } - export namespace HttpUri { - } - export namespace Locality { - } - export namespace Metadata { - } - export namespace Node { - } - export namespace Pipe { - } - export namespace RateLimitSettings { - } - export namespace RemoteDataSource { - } - export namespace RetryPolicy { - } - export namespace RuntimeDouble { - } - export namespace RuntimeFeatureFlag { - } - export namespace RuntimeFractionalPercent { - } - export namespace RuntimeUInt32 { - } - export namespace SelfConfigSource { - } - export namespace SocketAddress { - } - export namespace SocketOption { - } - export namespace TcpKeepalive { - } - export namespace TcpProtocolOptions { - } - export namespace TransportSocket { - } - export namespace UpstreamHttpProtocolOptions { - } - } - export namespace endpoint { - export namespace Endpoint { - export namespace HealthCheckConfig { - } - } - export namespace LbEndpoint { - } - export namespace LocalityLbEndpoints { - } - } - } - } - export namespace type { - export namespace DoubleRange { - } - export namespace FractionalPercent { - } - export namespace Int32Range { - } - export namespace Int64Range { - } - export namespace Percent { - } - export namespace SemanticVersion { - } - export namespace matcher { - export namespace ListStringMatcher { - } - export namespace RegexMatchAndSubstitute { - } - export namespace RegexMatcher { - export namespace GoogleRE2 { - } - } - export namespace StringMatcher { - } - } - } - } - export namespace google { - export namespace api { - export namespace CustomHttpPattern { - } - export namespace Http { - } - export namespace HttpRule { - } - } - export namespace protobuf { - export namespace Any { - } - export namespace BoolValue { - } - export namespace BytesValue { - } - export namespace DescriptorProto { - export namespace ExtensionRange { - } - export namespace ReservedRange { - } - } - export namespace DoubleValue { - } - export namespace Duration { - } - export namespace Empty { - } - export namespace EnumDescriptorProto { - } - export namespace EnumOptions { - } - export namespace EnumValueDescriptorProto { - } - export namespace EnumValueOptions { - } - export namespace FieldDescriptorProto { - } - export namespace FieldOptions { - } - export namespace FileDescriptorProto { - } - export namespace FileDescriptorSet { - } - export namespace FileOptions { - } - export namespace FloatValue { - } - export namespace GeneratedCodeInfo { - export namespace Annotation { - } - } - export namespace Int32Value { - } - export namespace Int64Value { - } - export namespace ListValue { - } - export namespace MessageOptions { - } - export namespace MethodDescriptorProto { - } - export namespace MethodOptions { - } - export namespace OneofDescriptorProto { - } - export namespace OneofOptions { - } - export namespace ServiceDescriptorProto { - } - export namespace ServiceOptions { - } - export namespace SourceCodeInfo { - export namespace Location { - } - } - export namespace StringValue { - } - export namespace Struct { - } - export namespace Timestamp { - } - export namespace UInt32Value { - } - export namespace UInt64Value { - } - export namespace UninterpretedOption { - export namespace NamePart { - } - } - export namespace Value { - } - } - } - export namespace udpa { - export namespace annotations { - export namespace FieldMigrateAnnotation { - } - export namespace FileMigrateAnnotation { - } - export namespace MigrateAnnotation { - } - export namespace StatusAnnotation { - } - } - } - export namespace validate { - export namespace AnyRules { - } - export namespace BoolRules { - } - export namespace BytesRules { - } - export namespace DoubleRules { - } - export namespace DurationRules { - } - export namespace EnumRules { - } - export namespace FieldRules { - } - export namespace Fixed32Rules { - } - export namespace Fixed64Rules { - } - export namespace FloatRules { - } - export namespace Int32Rules { - } - export namespace Int64Rules { - } - export namespace MapRules { - } - export namespace MessageRules { - } - export namespace RepeatedRules { - } - export namespace SFixed32Rules { - } - export namespace SFixed64Rules { - } - export namespace SInt32Rules { - } - export namespace SInt64Rules { - } - export namespace StringRules { - } - export namespace TimestampRules { - } - export namespace UInt32Rules { - } - export namespace UInt64Rules { - } - } -} type ConstructorArguments = Constructor extends new (...args: infer Args) => any ? Args: never; type SubtypeConstructor = { @@ -2390,407 +190,3 @@ export interface ProtoGrpcType { } } -export namespace ServiceHandlers { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - export namespace Cluster { - export namespace CommonLbConfig { - export namespace ConsistentHashingLbConfig { - } - export namespace LocalityWeightedLbConfig { - } - export namespace ZoneAwareLbConfig { - } - } - export namespace CustomClusterType { - } - export namespace EdsClusterConfig { - } - export namespace LbSubsetConfig { - export namespace LbSubsetSelector { - } - } - export namespace LeastRequestLbConfig { - } - export namespace OriginalDstLbConfig { - } - export namespace RefreshRate { - } - export namespace RingHashLbConfig { - } - export namespace TransportSocketMatch { - } - } - export namespace ClusterLoadAssignment { - export namespace Policy { - export namespace DropOverload { - } - } - } - export namespace LoadBalancingPolicy { - export namespace Policy { - } - } - export namespace UpstreamBindConfig { - } - export namespace UpstreamConnectionOptions { - } - export namespace auth { - export namespace CertificateValidationContext { - } - export namespace CommonTlsContext { - export namespace CombinedCertificateValidationContext { - } - } - export namespace DownstreamTlsContext { - } - export namespace GenericSecret { - } - export namespace PrivateKeyProvider { - } - export namespace SdsSecretConfig { - } - export namespace Secret { - } - export namespace TlsCertificate { - } - export namespace TlsParameters { - } - export namespace TlsSessionTicketKeys { - } - export namespace UpstreamTlsContext { - } - } - export namespace cluster { - export namespace CircuitBreakers { - export namespace Thresholds { - export namespace RetryBudget { - } - } - } - export namespace Filter { - } - export namespace OutlierDetection { - } - } - export namespace core { - export namespace Address { - } - export namespace AggregatedConfigSource { - } - export namespace ApiConfigSource { - } - export namespace AsyncDataSource { - } - export namespace BackoffStrategy { - } - export namespace BindConfig { - } - export namespace BuildVersion { - } - export namespace CidrRange { - } - export namespace ConfigSource { - } - export namespace ControlPlane { - } - export namespace DataSource { - } - export namespace EventServiceConfig { - } - export namespace Extension { - } - export namespace GrpcProtocolOptions { - } - export namespace GrpcService { - export namespace EnvoyGrpc { - } - export namespace GoogleGrpc { - export namespace CallCredentials { - export namespace GoogleIAMCredentials { - } - export namespace MetadataCredentialsFromPlugin { - } - export namespace ServiceAccountJWTAccessCredentials { - } - export namespace StsService { - } - } - export namespace ChannelCredentials { - } - export namespace GoogleLocalCredentials { - } - export namespace SslCredentials { - } - } - } - export namespace HeaderMap { - } - export namespace HeaderValue { - } - export namespace HeaderValueOption { - } - export namespace HealthCheck { - export namespace CustomHealthCheck { - } - export namespace GrpcHealthCheck { - } - export namespace HttpHealthCheck { - } - export namespace Payload { - } - export namespace RedisHealthCheck { - } - export namespace TcpHealthCheck { - } - export namespace TlsOptions { - } - } - export namespace Http1ProtocolOptions { - export namespace HeaderKeyFormat { - export namespace ProperCaseWords { - } - } - } - export namespace Http2ProtocolOptions { - export namespace SettingsParameter { - } - } - export namespace HttpProtocolOptions { - } - export namespace HttpUri { - } - export namespace Locality { - } - export namespace Metadata { - } - export namespace Node { - } - export namespace Pipe { - } - export namespace RateLimitSettings { - } - export namespace RemoteDataSource { - } - export namespace RetryPolicy { - } - export namespace RuntimeDouble { - } - export namespace RuntimeFeatureFlag { - } - export namespace RuntimeFractionalPercent { - } - export namespace RuntimeUInt32 { - } - export namespace SelfConfigSource { - } - export namespace SocketAddress { - } - export namespace SocketOption { - } - export namespace TcpKeepalive { - } - export namespace TcpProtocolOptions { - } - export namespace TransportSocket { - } - export namespace UpstreamHttpProtocolOptions { - } - } - export namespace endpoint { - export namespace Endpoint { - export namespace HealthCheckConfig { - } - } - export namespace LbEndpoint { - } - export namespace LocalityLbEndpoints { - } - } - } - } - export namespace type { - export namespace DoubleRange { - } - export namespace FractionalPercent { - } - export namespace Int32Range { - } - export namespace Int64Range { - } - export namespace Percent { - } - export namespace SemanticVersion { - } - export namespace matcher { - export namespace ListStringMatcher { - } - export namespace RegexMatchAndSubstitute { - } - export namespace RegexMatcher { - export namespace GoogleRE2 { - } - } - export namespace StringMatcher { - } - } - } - } - export namespace google { - export namespace api { - export namespace CustomHttpPattern { - } - export namespace Http { - } - export namespace HttpRule { - } - } - export namespace protobuf { - export namespace Any { - } - export namespace BoolValue { - } - export namespace BytesValue { - } - export namespace DescriptorProto { - export namespace ExtensionRange { - } - export namespace ReservedRange { - } - } - export namespace DoubleValue { - } - export namespace Duration { - } - export namespace Empty { - } - export namespace EnumDescriptorProto { - } - export namespace EnumOptions { - } - export namespace EnumValueDescriptorProto { - } - export namespace EnumValueOptions { - } - export namespace FieldDescriptorProto { - } - export namespace FieldOptions { - } - export namespace FileDescriptorProto { - } - export namespace FileDescriptorSet { - } - export namespace FileOptions { - } - export namespace FloatValue { - } - export namespace GeneratedCodeInfo { - export namespace Annotation { - } - } - export namespace Int32Value { - } - export namespace Int64Value { - } - export namespace ListValue { - } - export namespace MessageOptions { - } - export namespace MethodDescriptorProto { - } - export namespace MethodOptions { - } - export namespace OneofDescriptorProto { - } - export namespace OneofOptions { - } - export namespace ServiceDescriptorProto { - } - export namespace ServiceOptions { - } - export namespace SourceCodeInfo { - export namespace Location { - } - } - export namespace StringValue { - } - export namespace Struct { - } - export namespace Timestamp { - } - export namespace UInt32Value { - } - export namespace UInt64Value { - } - export namespace UninterpretedOption { - export namespace NamePart { - } - } - export namespace Value { - } - } - } - export namespace udpa { - export namespace annotations { - export namespace FieldMigrateAnnotation { - } - export namespace FileMigrateAnnotation { - } - export namespace MigrateAnnotation { - } - export namespace StatusAnnotation { - } - } - } - export namespace validate { - export namespace AnyRules { - } - export namespace BoolRules { - } - export namespace BytesRules { - } - export namespace DoubleRules { - } - export namespace DurationRules { - } - export namespace EnumRules { - } - export namespace FieldRules { - } - export namespace Fixed32Rules { - } - export namespace Fixed64Rules { - } - export namespace FloatRules { - } - export namespace Int32Rules { - } - export namespace Int64Rules { - } - export namespace MapRules { - } - export namespace MessageRules { - } - export namespace RepeatedRules { - } - export namespace SFixed32Rules { - } - export namespace SFixed64Rules { - } - export namespace SInt32Rules { - } - export namespace SInt64Rules { - } - export namespace StringRules { - } - export namespace TimestampRules { - } - export namespace UInt32Rules { - } - export namespace UInt64Rules { - } - } -} diff --git a/packages/grpc-js/src/generated/endpoint.ts b/packages/grpc-js/src/generated/endpoint.ts index bbd9ef7d..ade62c99 100644 --- a/packages/grpc-js/src/generated/endpoint.ts +++ b/packages/grpc-js/src/generated/endpoint.ts @@ -1,1803 +1,6 @@ import * as grpc from '../index'; import { ServiceDefinition, EnumTypeDefinition, MessageTypeDefinition } from '@grpc/proto-loader'; -import { ClusterLoadAssignment as _envoy_api_v2_ClusterLoadAssignment, ClusterLoadAssignment__Output as _envoy_api_v2_ClusterLoadAssignment__Output } from './envoy/api/v2/ClusterLoadAssignment'; -import { Address as _envoy_api_v2_core_Address, Address__Output as _envoy_api_v2_core_Address__Output } from './envoy/api/v2/core/Address'; -import { AsyncDataSource as _envoy_api_v2_core_AsyncDataSource, AsyncDataSource__Output as _envoy_api_v2_core_AsyncDataSource__Output } from './envoy/api/v2/core/AsyncDataSource'; -import { BackoffStrategy as _envoy_api_v2_core_BackoffStrategy, BackoffStrategy__Output as _envoy_api_v2_core_BackoffStrategy__Output } from './envoy/api/v2/core/BackoffStrategy'; -import { BindConfig as _envoy_api_v2_core_BindConfig, BindConfig__Output as _envoy_api_v2_core_BindConfig__Output } from './envoy/api/v2/core/BindConfig'; -import { BuildVersion as _envoy_api_v2_core_BuildVersion, BuildVersion__Output as _envoy_api_v2_core_BuildVersion__Output } from './envoy/api/v2/core/BuildVersion'; -import { CidrRange as _envoy_api_v2_core_CidrRange, CidrRange__Output as _envoy_api_v2_core_CidrRange__Output } from './envoy/api/v2/core/CidrRange'; -import { ControlPlane as _envoy_api_v2_core_ControlPlane, ControlPlane__Output as _envoy_api_v2_core_ControlPlane__Output } from './envoy/api/v2/core/ControlPlane'; -import { DataSource as _envoy_api_v2_core_DataSource, DataSource__Output as _envoy_api_v2_core_DataSource__Output } from './envoy/api/v2/core/DataSource'; -import { EventServiceConfig as _envoy_api_v2_core_EventServiceConfig, EventServiceConfig__Output as _envoy_api_v2_core_EventServiceConfig__Output } from './envoy/api/v2/core/EventServiceConfig'; -import { Extension as _envoy_api_v2_core_Extension, Extension__Output as _envoy_api_v2_core_Extension__Output } from './envoy/api/v2/core/Extension'; -import { GrpcService as _envoy_api_v2_core_GrpcService, GrpcService__Output as _envoy_api_v2_core_GrpcService__Output } from './envoy/api/v2/core/GrpcService'; -import { HeaderMap as _envoy_api_v2_core_HeaderMap, HeaderMap__Output as _envoy_api_v2_core_HeaderMap__Output } from './envoy/api/v2/core/HeaderMap'; -import { HeaderValue as _envoy_api_v2_core_HeaderValue, HeaderValue__Output as _envoy_api_v2_core_HeaderValue__Output } from './envoy/api/v2/core/HeaderValue'; -import { HeaderValueOption as _envoy_api_v2_core_HeaderValueOption, HeaderValueOption__Output as _envoy_api_v2_core_HeaderValueOption__Output } from './envoy/api/v2/core/HeaderValueOption'; -import { HealthCheck as _envoy_api_v2_core_HealthCheck, HealthCheck__Output as _envoy_api_v2_core_HealthCheck__Output } from './envoy/api/v2/core/HealthCheck'; -import { HealthStatus as _envoy_api_v2_core_HealthStatus } from './envoy/api/v2/core/HealthStatus'; -import { HttpUri as _envoy_api_v2_core_HttpUri, HttpUri__Output as _envoy_api_v2_core_HttpUri__Output } from './envoy/api/v2/core/HttpUri'; -import { Locality as _envoy_api_v2_core_Locality, Locality__Output as _envoy_api_v2_core_Locality__Output } from './envoy/api/v2/core/Locality'; -import { Metadata as _envoy_api_v2_core_Metadata, Metadata__Output as _envoy_api_v2_core_Metadata__Output } from './envoy/api/v2/core/Metadata'; -import { Node as _envoy_api_v2_core_Node, Node__Output as _envoy_api_v2_core_Node__Output } from './envoy/api/v2/core/Node'; -import { Pipe as _envoy_api_v2_core_Pipe, Pipe__Output as _envoy_api_v2_core_Pipe__Output } from './envoy/api/v2/core/Pipe'; -import { RemoteDataSource as _envoy_api_v2_core_RemoteDataSource, RemoteDataSource__Output as _envoy_api_v2_core_RemoteDataSource__Output } from './envoy/api/v2/core/RemoteDataSource'; -import { RequestMethod as _envoy_api_v2_core_RequestMethod } from './envoy/api/v2/core/RequestMethod'; -import { RetryPolicy as _envoy_api_v2_core_RetryPolicy, RetryPolicy__Output as _envoy_api_v2_core_RetryPolicy__Output } from './envoy/api/v2/core/RetryPolicy'; -import { RoutingPriority as _envoy_api_v2_core_RoutingPriority } from './envoy/api/v2/core/RoutingPriority'; -import { RuntimeDouble as _envoy_api_v2_core_RuntimeDouble, RuntimeDouble__Output as _envoy_api_v2_core_RuntimeDouble__Output } from './envoy/api/v2/core/RuntimeDouble'; -import { RuntimeFeatureFlag as _envoy_api_v2_core_RuntimeFeatureFlag, RuntimeFeatureFlag__Output as _envoy_api_v2_core_RuntimeFeatureFlag__Output } from './envoy/api/v2/core/RuntimeFeatureFlag'; -import { RuntimeFractionalPercent as _envoy_api_v2_core_RuntimeFractionalPercent, RuntimeFractionalPercent__Output as _envoy_api_v2_core_RuntimeFractionalPercent__Output } from './envoy/api/v2/core/RuntimeFractionalPercent'; -import { RuntimeUInt32 as _envoy_api_v2_core_RuntimeUInt32, RuntimeUInt32__Output as _envoy_api_v2_core_RuntimeUInt32__Output } from './envoy/api/v2/core/RuntimeUInt32'; -import { SocketAddress as _envoy_api_v2_core_SocketAddress, SocketAddress__Output as _envoy_api_v2_core_SocketAddress__Output } from './envoy/api/v2/core/SocketAddress'; -import { SocketOption as _envoy_api_v2_core_SocketOption, SocketOption__Output as _envoy_api_v2_core_SocketOption__Output } from './envoy/api/v2/core/SocketOption'; -import { TcpKeepalive as _envoy_api_v2_core_TcpKeepalive, TcpKeepalive__Output as _envoy_api_v2_core_TcpKeepalive__Output } from './envoy/api/v2/core/TcpKeepalive'; -import { TrafficDirection as _envoy_api_v2_core_TrafficDirection } from './envoy/api/v2/core/TrafficDirection'; -import { TransportSocket as _envoy_api_v2_core_TransportSocket, TransportSocket__Output as _envoy_api_v2_core_TransportSocket__Output } from './envoy/api/v2/core/TransportSocket'; -import { Endpoint as _envoy_api_v2_endpoint_Endpoint, Endpoint__Output as _envoy_api_v2_endpoint_Endpoint__Output } from './envoy/api/v2/endpoint/Endpoint'; -import { LbEndpoint as _envoy_api_v2_endpoint_LbEndpoint, LbEndpoint__Output as _envoy_api_v2_endpoint_LbEndpoint__Output } from './envoy/api/v2/endpoint/LbEndpoint'; -import { LocalityLbEndpoints as _envoy_api_v2_endpoint_LocalityLbEndpoints, LocalityLbEndpoints__Output as _envoy_api_v2_endpoint_LocalityLbEndpoints__Output } from './envoy/api/v2/endpoint/LocalityLbEndpoints'; -import { CodecClientType as _envoy_type_CodecClientType } from './envoy/type/CodecClientType'; -import { DoubleRange as _envoy_type_DoubleRange, DoubleRange__Output as _envoy_type_DoubleRange__Output } from './envoy/type/DoubleRange'; -import { FractionalPercent as _envoy_type_FractionalPercent, FractionalPercent__Output as _envoy_type_FractionalPercent__Output } from './envoy/type/FractionalPercent'; -import { Int32Range as _envoy_type_Int32Range, Int32Range__Output as _envoy_type_Int32Range__Output } from './envoy/type/Int32Range'; -import { Int64Range as _envoy_type_Int64Range, Int64Range__Output as _envoy_type_Int64Range__Output } from './envoy/type/Int64Range'; -import { Percent as _envoy_type_Percent, Percent__Output as _envoy_type_Percent__Output } from './envoy/type/Percent'; -import { SemanticVersion as _envoy_type_SemanticVersion, SemanticVersion__Output as _envoy_type_SemanticVersion__Output } from './envoy/type/SemanticVersion'; -import { ListStringMatcher as _envoy_type_matcher_ListStringMatcher, ListStringMatcher__Output as _envoy_type_matcher_ListStringMatcher__Output } from './envoy/type/matcher/ListStringMatcher'; -import { RegexMatchAndSubstitute as _envoy_type_matcher_RegexMatchAndSubstitute, RegexMatchAndSubstitute__Output as _envoy_type_matcher_RegexMatchAndSubstitute__Output } from './envoy/type/matcher/RegexMatchAndSubstitute'; -import { RegexMatcher as _envoy_type_matcher_RegexMatcher, RegexMatcher__Output as _envoy_type_matcher_RegexMatcher__Output } from './envoy/type/matcher/RegexMatcher'; -import { StringMatcher as _envoy_type_matcher_StringMatcher, StringMatcher__Output as _envoy_type_matcher_StringMatcher__Output } from './envoy/type/matcher/StringMatcher'; -import { CustomHttpPattern as _google_api_CustomHttpPattern, CustomHttpPattern__Output as _google_api_CustomHttpPattern__Output } from './google/api/CustomHttpPattern'; -import { Http as _google_api_Http, Http__Output as _google_api_Http__Output } from './google/api/Http'; -import { HttpRule as _google_api_HttpRule, HttpRule__Output as _google_api_HttpRule__Output } from './google/api/HttpRule'; -import { Any as _google_protobuf_Any, Any__Output as _google_protobuf_Any__Output } from './google/protobuf/Any'; -import { BoolValue as _google_protobuf_BoolValue, BoolValue__Output as _google_protobuf_BoolValue__Output } from './google/protobuf/BoolValue'; -import { BytesValue as _google_protobuf_BytesValue, BytesValue__Output as _google_protobuf_BytesValue__Output } from './google/protobuf/BytesValue'; -import { DescriptorProto as _google_protobuf_DescriptorProto, DescriptorProto__Output as _google_protobuf_DescriptorProto__Output } from './google/protobuf/DescriptorProto'; -import { DoubleValue as _google_protobuf_DoubleValue, DoubleValue__Output as _google_protobuf_DoubleValue__Output } from './google/protobuf/DoubleValue'; -import { Duration as _google_protobuf_Duration, Duration__Output as _google_protobuf_Duration__Output } from './google/protobuf/Duration'; -import { Empty as _google_protobuf_Empty, Empty__Output as _google_protobuf_Empty__Output } from './google/protobuf/Empty'; -import { EnumDescriptorProto as _google_protobuf_EnumDescriptorProto, EnumDescriptorProto__Output as _google_protobuf_EnumDescriptorProto__Output } from './google/protobuf/EnumDescriptorProto'; -import { EnumOptions as _google_protobuf_EnumOptions, EnumOptions__Output as _google_protobuf_EnumOptions__Output } from './google/protobuf/EnumOptions'; -import { EnumValueDescriptorProto as _google_protobuf_EnumValueDescriptorProto, EnumValueDescriptorProto__Output as _google_protobuf_EnumValueDescriptorProto__Output } from './google/protobuf/EnumValueDescriptorProto'; -import { EnumValueOptions as _google_protobuf_EnumValueOptions, EnumValueOptions__Output as _google_protobuf_EnumValueOptions__Output } from './google/protobuf/EnumValueOptions'; -import { FieldDescriptorProto as _google_protobuf_FieldDescriptorProto, FieldDescriptorProto__Output as _google_protobuf_FieldDescriptorProto__Output } from './google/protobuf/FieldDescriptorProto'; -import { FieldOptions as _google_protobuf_FieldOptions, FieldOptions__Output as _google_protobuf_FieldOptions__Output } from './google/protobuf/FieldOptions'; -import { FileDescriptorProto as _google_protobuf_FileDescriptorProto, FileDescriptorProto__Output as _google_protobuf_FileDescriptorProto__Output } from './google/protobuf/FileDescriptorProto'; -import { FileDescriptorSet as _google_protobuf_FileDescriptorSet, FileDescriptorSet__Output as _google_protobuf_FileDescriptorSet__Output } from './google/protobuf/FileDescriptorSet'; -import { FileOptions as _google_protobuf_FileOptions, FileOptions__Output as _google_protobuf_FileOptions__Output } from './google/protobuf/FileOptions'; -import { FloatValue as _google_protobuf_FloatValue, FloatValue__Output as _google_protobuf_FloatValue__Output } from './google/protobuf/FloatValue'; -import { GeneratedCodeInfo as _google_protobuf_GeneratedCodeInfo, GeneratedCodeInfo__Output as _google_protobuf_GeneratedCodeInfo__Output } from './google/protobuf/GeneratedCodeInfo'; -import { Int32Value as _google_protobuf_Int32Value, Int32Value__Output as _google_protobuf_Int32Value__Output } from './google/protobuf/Int32Value'; -import { Int64Value as _google_protobuf_Int64Value, Int64Value__Output as _google_protobuf_Int64Value__Output } from './google/protobuf/Int64Value'; -import { ListValue as _google_protobuf_ListValue, ListValue__Output as _google_protobuf_ListValue__Output } from './google/protobuf/ListValue'; -import { MessageOptions as _google_protobuf_MessageOptions, MessageOptions__Output as _google_protobuf_MessageOptions__Output } from './google/protobuf/MessageOptions'; -import { MethodDescriptorProto as _google_protobuf_MethodDescriptorProto, MethodDescriptorProto__Output as _google_protobuf_MethodDescriptorProto__Output } from './google/protobuf/MethodDescriptorProto'; -import { MethodOptions as _google_protobuf_MethodOptions, MethodOptions__Output as _google_protobuf_MethodOptions__Output } from './google/protobuf/MethodOptions'; -import { NullValue as _google_protobuf_NullValue } from './google/protobuf/NullValue'; -import { OneofDescriptorProto as _google_protobuf_OneofDescriptorProto, OneofDescriptorProto__Output as _google_protobuf_OneofDescriptorProto__Output } from './google/protobuf/OneofDescriptorProto'; -import { OneofOptions as _google_protobuf_OneofOptions, OneofOptions__Output as _google_protobuf_OneofOptions__Output } from './google/protobuf/OneofOptions'; -import { ServiceDescriptorProto as _google_protobuf_ServiceDescriptorProto, ServiceDescriptorProto__Output as _google_protobuf_ServiceDescriptorProto__Output } from './google/protobuf/ServiceDescriptorProto'; -import { ServiceOptions as _google_protobuf_ServiceOptions, ServiceOptions__Output as _google_protobuf_ServiceOptions__Output } from './google/protobuf/ServiceOptions'; -import { SourceCodeInfo as _google_protobuf_SourceCodeInfo, SourceCodeInfo__Output as _google_protobuf_SourceCodeInfo__Output } from './google/protobuf/SourceCodeInfo'; -import { StringValue as _google_protobuf_StringValue, StringValue__Output as _google_protobuf_StringValue__Output } from './google/protobuf/StringValue'; -import { Struct as _google_protobuf_Struct, Struct__Output as _google_protobuf_Struct__Output } from './google/protobuf/Struct'; -import { Timestamp as _google_protobuf_Timestamp, Timestamp__Output as _google_protobuf_Timestamp__Output } from './google/protobuf/Timestamp'; -import { UInt32Value as _google_protobuf_UInt32Value, UInt32Value__Output as _google_protobuf_UInt32Value__Output } from './google/protobuf/UInt32Value'; -import { UInt64Value as _google_protobuf_UInt64Value, UInt64Value__Output as _google_protobuf_UInt64Value__Output } from './google/protobuf/UInt64Value'; -import { UninterpretedOption as _google_protobuf_UninterpretedOption, UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output } from './google/protobuf/UninterpretedOption'; -import { Value as _google_protobuf_Value, Value__Output as _google_protobuf_Value__Output } from './google/protobuf/Value'; -import { FieldMigrateAnnotation as _udpa_annotations_FieldMigrateAnnotation, FieldMigrateAnnotation__Output as _udpa_annotations_FieldMigrateAnnotation__Output } from './udpa/annotations/FieldMigrateAnnotation'; -import { FileMigrateAnnotation as _udpa_annotations_FileMigrateAnnotation, FileMigrateAnnotation__Output as _udpa_annotations_FileMigrateAnnotation__Output } from './udpa/annotations/FileMigrateAnnotation'; -import { MigrateAnnotation as _udpa_annotations_MigrateAnnotation, MigrateAnnotation__Output as _udpa_annotations_MigrateAnnotation__Output } from './udpa/annotations/MigrateAnnotation'; -import { PackageVersionStatus as _udpa_annotations_PackageVersionStatus } from './udpa/annotations/PackageVersionStatus'; -import { StatusAnnotation as _udpa_annotations_StatusAnnotation, StatusAnnotation__Output as _udpa_annotations_StatusAnnotation__Output } from './udpa/annotations/StatusAnnotation'; -import { AnyRules as _validate_AnyRules, AnyRules__Output as _validate_AnyRules__Output } from './validate/AnyRules'; -import { BoolRules as _validate_BoolRules, BoolRules__Output as _validate_BoolRules__Output } from './validate/BoolRules'; -import { BytesRules as _validate_BytesRules, BytesRules__Output as _validate_BytesRules__Output } from './validate/BytesRules'; -import { DoubleRules as _validate_DoubleRules, DoubleRules__Output as _validate_DoubleRules__Output } from './validate/DoubleRules'; -import { DurationRules as _validate_DurationRules, DurationRules__Output as _validate_DurationRules__Output } from './validate/DurationRules'; -import { EnumRules as _validate_EnumRules, EnumRules__Output as _validate_EnumRules__Output } from './validate/EnumRules'; -import { FieldRules as _validate_FieldRules, FieldRules__Output as _validate_FieldRules__Output } from './validate/FieldRules'; -import { Fixed32Rules as _validate_Fixed32Rules, Fixed32Rules__Output as _validate_Fixed32Rules__Output } from './validate/Fixed32Rules'; -import { Fixed64Rules as _validate_Fixed64Rules, Fixed64Rules__Output as _validate_Fixed64Rules__Output } from './validate/Fixed64Rules'; -import { FloatRules as _validate_FloatRules, FloatRules__Output as _validate_FloatRules__Output } from './validate/FloatRules'; -import { Int32Rules as _validate_Int32Rules, Int32Rules__Output as _validate_Int32Rules__Output } from './validate/Int32Rules'; -import { Int64Rules as _validate_Int64Rules, Int64Rules__Output as _validate_Int64Rules__Output } from './validate/Int64Rules'; -import { KnownRegex as _validate_KnownRegex } from './validate/KnownRegex'; -import { MapRules as _validate_MapRules, MapRules__Output as _validate_MapRules__Output } from './validate/MapRules'; -import { MessageRules as _validate_MessageRules, MessageRules__Output as _validate_MessageRules__Output } from './validate/MessageRules'; -import { RepeatedRules as _validate_RepeatedRules, RepeatedRules__Output as _validate_RepeatedRules__Output } from './validate/RepeatedRules'; -import { SFixed32Rules as _validate_SFixed32Rules, SFixed32Rules__Output as _validate_SFixed32Rules__Output } from './validate/SFixed32Rules'; -import { SFixed64Rules as _validate_SFixed64Rules, SFixed64Rules__Output as _validate_SFixed64Rules__Output } from './validate/SFixed64Rules'; -import { SInt32Rules as _validate_SInt32Rules, SInt32Rules__Output as _validate_SInt32Rules__Output } from './validate/SInt32Rules'; -import { SInt64Rules as _validate_SInt64Rules, SInt64Rules__Output as _validate_SInt64Rules__Output } from './validate/SInt64Rules'; -import { StringRules as _validate_StringRules, StringRules__Output as _validate_StringRules__Output } from './validate/StringRules'; -import { TimestampRules as _validate_TimestampRules, TimestampRules__Output as _validate_TimestampRules__Output } from './validate/TimestampRules'; -import { UInt32Rules as _validate_UInt32Rules, UInt32Rules__Output as _validate_UInt32Rules__Output } from './validate/UInt32Rules'; -import { UInt64Rules as _validate_UInt64Rules, UInt64Rules__Output as _validate_UInt64Rules__Output } from './validate/UInt64Rules'; - -export namespace messages { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - /** - * Each route from RDS will map to a single cluster or traffic split across - * clusters using weights expressed in the RDS WeightedCluster. - * - * With EDS, each cluster is treated independently from a LB perspective, with - * LB taking place between the Localities within a cluster and at a finer - * granularity between the hosts within a locality. The percentage of traffic - * for each endpoint is determined by both its load_balancing_weight, and the - * load_balancing_weight of its locality. First, a locality will be selected, - * then an endpoint within that locality will be chose based on its weight. - * [#next-free-field: 6] - */ - export type ClusterLoadAssignment = _envoy_api_v2_ClusterLoadAssignment; - /** - * Each route from RDS will map to a single cluster or traffic split across - * clusters using weights expressed in the RDS WeightedCluster. - * - * With EDS, each cluster is treated independently from a LB perspective, with - * LB taking place between the Localities within a cluster and at a finer - * granularity between the hosts within a locality. The percentage of traffic - * for each endpoint is determined by both its load_balancing_weight, and the - * load_balancing_weight of its locality. First, a locality will be selected, - * then an endpoint within that locality will be chose based on its weight. - * [#next-free-field: 6] - */ - export type ClusterLoadAssignment__Output = _envoy_api_v2_ClusterLoadAssignment__Output; - export namespace core { - /** - * Addresses specify either a logical or physical address and port, which are - * used to tell Envoy where to bind/listen, connect to upstream and find - * management servers. - */ - export type Address = _envoy_api_v2_core_Address; - /** - * Addresses specify either a logical or physical address and port, which are - * used to tell Envoy where to bind/listen, connect to upstream and find - * management servers. - */ - export type Address__Output = _envoy_api_v2_core_Address__Output; - /** - * Async data source which support async data fetch. - */ - export type AsyncDataSource = _envoy_api_v2_core_AsyncDataSource; - /** - * Async data source which support async data fetch. - */ - export type AsyncDataSource__Output = _envoy_api_v2_core_AsyncDataSource__Output; - /** - * Configuration defining a jittered exponential back off strategy. - */ - export type BackoffStrategy = _envoy_api_v2_core_BackoffStrategy; - /** - * Configuration defining a jittered exponential back off strategy. - */ - export type BackoffStrategy__Output = _envoy_api_v2_core_BackoffStrategy__Output; - export type BindConfig = _envoy_api_v2_core_BindConfig; - export type BindConfig__Output = _envoy_api_v2_core_BindConfig__Output; - /** - * BuildVersion combines SemVer version of extension with free-form build information - * (i.e. 'alpha', 'private-build') as a set of strings. - */ - export type BuildVersion = _envoy_api_v2_core_BuildVersion; - /** - * BuildVersion combines SemVer version of extension with free-form build information - * (i.e. 'alpha', 'private-build') as a set of strings. - */ - export type BuildVersion__Output = _envoy_api_v2_core_BuildVersion__Output; - /** - * CidrRange specifies an IP Address and a prefix length to construct - * the subnet mask for a `CIDR `_ range. - */ - export type CidrRange = _envoy_api_v2_core_CidrRange; - /** - * CidrRange specifies an IP Address and a prefix length to construct - * the subnet mask for a `CIDR `_ range. - */ - export type CidrRange__Output = _envoy_api_v2_core_CidrRange__Output; - /** - * Identifies a specific ControlPlane instance that Envoy is connected to. - */ - export type ControlPlane = _envoy_api_v2_core_ControlPlane; - /** - * Identifies a specific ControlPlane instance that Envoy is connected to. - */ - export type ControlPlane__Output = _envoy_api_v2_core_ControlPlane__Output; - /** - * Data source consisting of either a file or an inline value. - */ - export type DataSource = _envoy_api_v2_core_DataSource; - /** - * Data source consisting of either a file or an inline value. - */ - export type DataSource__Output = _envoy_api_v2_core_DataSource__Output; - /** - * [#not-implemented-hide:] - * Configuration of the event reporting service endpoint. - */ - export type EventServiceConfig = _envoy_api_v2_core_EventServiceConfig; - /** - * [#not-implemented-hide:] - * Configuration of the event reporting service endpoint. - */ - export type EventServiceConfig__Output = _envoy_api_v2_core_EventServiceConfig__Output; - /** - * Version and identification for an Envoy extension. - * [#next-free-field: 6] - */ - export type Extension = _envoy_api_v2_core_Extension; - /** - * Version and identification for an Envoy extension. - * [#next-free-field: 6] - */ - export type Extension__Output = _envoy_api_v2_core_Extension__Output; - /** - * gRPC service configuration. This is used by :ref:`ApiConfigSource - * ` and filter configurations. - * [#next-free-field: 6] - */ - export type GrpcService = _envoy_api_v2_core_GrpcService; - /** - * gRPC service configuration. This is used by :ref:`ApiConfigSource - * ` and filter configurations. - * [#next-free-field: 6] - */ - export type GrpcService__Output = _envoy_api_v2_core_GrpcService__Output; - /** - * Wrapper for a set of headers. - */ - export type HeaderMap = _envoy_api_v2_core_HeaderMap; - /** - * Wrapper for a set of headers. - */ - export type HeaderMap__Output = _envoy_api_v2_core_HeaderMap__Output; - /** - * Header name/value pair. - */ - export type HeaderValue = _envoy_api_v2_core_HeaderValue; - /** - * Header name/value pair. - */ - export type HeaderValue__Output = _envoy_api_v2_core_HeaderValue__Output; - /** - * Header name/value pair plus option to control append behavior. - */ - export type HeaderValueOption = _envoy_api_v2_core_HeaderValueOption; - /** - * Header name/value pair plus option to control append behavior. - */ - export type HeaderValueOption__Output = _envoy_api_v2_core_HeaderValueOption__Output; - /** - * [#next-free-field: 23] - */ - export type HealthCheck = _envoy_api_v2_core_HealthCheck; - /** - * [#next-free-field: 23] - */ - export type HealthCheck__Output = _envoy_api_v2_core_HealthCheck__Output; - /** - * Endpoint health status. - */ - export type HealthStatus = _envoy_api_v2_core_HealthStatus; - /** - * Envoy external URI descriptor - */ - export type HttpUri = _envoy_api_v2_core_HttpUri; - /** - * Envoy external URI descriptor - */ - export type HttpUri__Output = _envoy_api_v2_core_HttpUri__Output; - /** - * Identifies location of where either Envoy runs or where upstream hosts run. - */ - export type Locality = _envoy_api_v2_core_Locality; - /** - * Identifies location of where either Envoy runs or where upstream hosts run. - */ - export type Locality__Output = _envoy_api_v2_core_Locality__Output; - /** - * Metadata provides additional inputs to filters based on matched listeners, - * filter chains, routes and endpoints. It is structured as a map, usually from - * filter name (in reverse DNS format) to metadata specific to the filter. Metadata - * key-values for a filter are merged as connection and request handling occurs, - * with later values for the same key overriding earlier values. - * - * An example use of metadata is providing additional values to - * http_connection_manager in the envoy.http_connection_manager.access_log - * namespace. - * - * Another example use of metadata is to per service config info in cluster metadata, which may get - * consumed by multiple filters. - * - * For load balancing, Metadata provides a means to subset cluster endpoints. - * Endpoints have a Metadata object associated and routes contain a Metadata - * object to match against. There are some well defined metadata used today for - * this purpose: - * - * * ``{"envoy.lb": {"canary": }}`` This indicates the canary status of an - * endpoint and is also used during header processing - * (x-envoy-upstream-canary) and for stats purposes. - * [#next-major-version: move to type/metadata/v2] - */ - export type Metadata = _envoy_api_v2_core_Metadata; - /** - * Metadata provides additional inputs to filters based on matched listeners, - * filter chains, routes and endpoints. It is structured as a map, usually from - * filter name (in reverse DNS format) to metadata specific to the filter. Metadata - * key-values for a filter are merged as connection and request handling occurs, - * with later values for the same key overriding earlier values. - * - * An example use of metadata is providing additional values to - * http_connection_manager in the envoy.http_connection_manager.access_log - * namespace. - * - * Another example use of metadata is to per service config info in cluster metadata, which may get - * consumed by multiple filters. - * - * For load balancing, Metadata provides a means to subset cluster endpoints. - * Endpoints have a Metadata object associated and routes contain a Metadata - * object to match against. There are some well defined metadata used today for - * this purpose: - * - * * ``{"envoy.lb": {"canary": }}`` This indicates the canary status of an - * endpoint and is also used during header processing - * (x-envoy-upstream-canary) and for stats purposes. - * [#next-major-version: move to type/metadata/v2] - */ - export type Metadata__Output = _envoy_api_v2_core_Metadata__Output; - /** - * Identifies a specific Envoy instance. The node identifier is presented to the - * management server, which may use this identifier to distinguish per Envoy - * configuration for serving. - * [#next-free-field: 12] - */ - export type Node = _envoy_api_v2_core_Node; - /** - * Identifies a specific Envoy instance. The node identifier is presented to the - * management server, which may use this identifier to distinguish per Envoy - * configuration for serving. - * [#next-free-field: 12] - */ - export type Node__Output = _envoy_api_v2_core_Node__Output; - export type Pipe = _envoy_api_v2_core_Pipe; - export type Pipe__Output = _envoy_api_v2_core_Pipe__Output; - /** - * The message specifies how to fetch data from remote and how to verify it. - */ - export type RemoteDataSource = _envoy_api_v2_core_RemoteDataSource; - /** - * The message specifies how to fetch data from remote and how to verify it. - */ - export type RemoteDataSource__Output = _envoy_api_v2_core_RemoteDataSource__Output; - /** - * HTTP request method. - */ - export type RequestMethod = _envoy_api_v2_core_RequestMethod; - /** - * The message specifies the retry policy of remote data source when fetching fails. - */ - export type RetryPolicy = _envoy_api_v2_core_RetryPolicy; - /** - * The message specifies the retry policy of remote data source when fetching fails. - */ - export type RetryPolicy__Output = _envoy_api_v2_core_RetryPolicy__Output; - /** - * Envoy supports :ref:`upstream priority routing - * ` both at the route and the virtual - * cluster level. The current priority implementation uses different connection - * pool and circuit breaking settings for each priority level. This means that - * even for HTTP/2 requests, two physical connections will be used to an - * upstream host. In the future Envoy will likely support true HTTP/2 priority - * over a single upstream connection. - */ - export type RoutingPriority = _envoy_api_v2_core_RoutingPriority; - /** - * Runtime derived double with a default when not specified. - */ - export type RuntimeDouble = _envoy_api_v2_core_RuntimeDouble; - /** - * Runtime derived double with a default when not specified. - */ - export type RuntimeDouble__Output = _envoy_api_v2_core_RuntimeDouble__Output; - /** - * Runtime derived bool with a default when not specified. - */ - export type RuntimeFeatureFlag = _envoy_api_v2_core_RuntimeFeatureFlag; - /** - * Runtime derived bool with a default when not specified. - */ - export type RuntimeFeatureFlag__Output = _envoy_api_v2_core_RuntimeFeatureFlag__Output; - /** - * Runtime derived FractionalPercent with defaults for when the numerator or denominator is not - * specified via a runtime key. - * - * .. note:: - * - * Parsing of the runtime key's data is implemented such that it may be represented as a - * :ref:`FractionalPercent ` proto represented as JSON/YAML - * and may also be represented as an integer with the assumption that the value is an integral - * percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse - * as a `FractionalPercent` whose numerator is 42 and denominator is HUNDRED. - */ - export type RuntimeFractionalPercent = _envoy_api_v2_core_RuntimeFractionalPercent; - /** - * Runtime derived FractionalPercent with defaults for when the numerator or denominator is not - * specified via a runtime key. - * - * .. note:: - * - * Parsing of the runtime key's data is implemented such that it may be represented as a - * :ref:`FractionalPercent ` proto represented as JSON/YAML - * and may also be represented as an integer with the assumption that the value is an integral - * percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse - * as a `FractionalPercent` whose numerator is 42 and denominator is HUNDRED. - */ - export type RuntimeFractionalPercent__Output = _envoy_api_v2_core_RuntimeFractionalPercent__Output; - /** - * Runtime derived uint32 with a default when not specified. - */ - export type RuntimeUInt32 = _envoy_api_v2_core_RuntimeUInt32; - /** - * Runtime derived uint32 with a default when not specified. - */ - export type RuntimeUInt32__Output = _envoy_api_v2_core_RuntimeUInt32__Output; - /** - * [#next-free-field: 7] - */ - export type SocketAddress = _envoy_api_v2_core_SocketAddress; - /** - * [#next-free-field: 7] - */ - export type SocketAddress__Output = _envoy_api_v2_core_SocketAddress__Output; - /** - * Generic socket option message. This would be used to set socket options that - * might not exist in upstream kernels or precompiled Envoy binaries. - * [#next-free-field: 7] - */ - export type SocketOption = _envoy_api_v2_core_SocketOption; - /** - * Generic socket option message. This would be used to set socket options that - * might not exist in upstream kernels or precompiled Envoy binaries. - * [#next-free-field: 7] - */ - export type SocketOption__Output = _envoy_api_v2_core_SocketOption__Output; - export type TcpKeepalive = _envoy_api_v2_core_TcpKeepalive; - export type TcpKeepalive__Output = _envoy_api_v2_core_TcpKeepalive__Output; - /** - * Identifies the direction of the traffic relative to the local Envoy. - */ - export type TrafficDirection = _envoy_api_v2_core_TrafficDirection; - /** - * Configuration for transport socket in :ref:`listeners ` and - * :ref:`clusters `. If the configuration is - * empty, a default transport socket implementation and configuration will be - * chosen based on the platform and existence of tls_context. - */ - export type TransportSocket = _envoy_api_v2_core_TransportSocket; - /** - * Configuration for transport socket in :ref:`listeners ` and - * :ref:`clusters `. If the configuration is - * empty, a default transport socket implementation and configuration will be - * chosen based on the platform and existence of tls_context. - */ - export type TransportSocket__Output = _envoy_api_v2_core_TransportSocket__Output; - } - export namespace endpoint { - /** - * Upstream host identifier. - */ - export type Endpoint = _envoy_api_v2_endpoint_Endpoint; - /** - * Upstream host identifier. - */ - export type Endpoint__Output = _envoy_api_v2_endpoint_Endpoint__Output; - /** - * An Endpoint that Envoy can route traffic to. - * [#next-free-field: 6] - */ - export type LbEndpoint = _envoy_api_v2_endpoint_LbEndpoint; - /** - * An Endpoint that Envoy can route traffic to. - * [#next-free-field: 6] - */ - export type LbEndpoint__Output = _envoy_api_v2_endpoint_LbEndpoint__Output; - /** - * A group of endpoints belonging to a Locality. - * One can have multiple LocalityLbEndpoints for a locality, but this is - * generally only done if the different groups need to have different load - * balancing weights or different priorities. - * [#next-free-field: 7] - */ - export type LocalityLbEndpoints = _envoy_api_v2_endpoint_LocalityLbEndpoints; - /** - * A group of endpoints belonging to a Locality. - * One can have multiple LocalityLbEndpoints for a locality, but this is - * generally only done if the different groups need to have different load - * balancing weights or different priorities. - * [#next-free-field: 7] - */ - export type LocalityLbEndpoints__Output = _envoy_api_v2_endpoint_LocalityLbEndpoints__Output; - } - } - } - export namespace type { - export type CodecClientType = _envoy_type_CodecClientType; - /** - * Specifies the double start and end of the range using half-open interval semantics [start, - * end). - */ - export type DoubleRange = _envoy_type_DoubleRange; - /** - * Specifies the double start and end of the range using half-open interval semantics [start, - * end). - */ - export type DoubleRange__Output = _envoy_type_DoubleRange__Output; - /** - * A fractional percentage is used in cases in which for performance reasons performing floating - * point to integer conversions during randomness calculations is undesirable. The message includes - * both a numerator and denominator that together determine the final fractional value. - * - * * **Example**: 1/100 = 1%. - * * **Example**: 3/10000 = 0.03%. - */ - export type FractionalPercent = _envoy_type_FractionalPercent; - /** - * A fractional percentage is used in cases in which for performance reasons performing floating - * point to integer conversions during randomness calculations is undesirable. The message includes - * both a numerator and denominator that together determine the final fractional value. - * - * * **Example**: 1/100 = 1%. - * * **Example**: 3/10000 = 0.03%. - */ - export type FractionalPercent__Output = _envoy_type_FractionalPercent__Output; - /** - * Specifies the int32 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int32Range = _envoy_type_Int32Range; - /** - * Specifies the int32 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int32Range__Output = _envoy_type_Int32Range__Output; - /** - * Specifies the int64 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int64Range = _envoy_type_Int64Range; - /** - * Specifies the int64 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int64Range__Output = _envoy_type_Int64Range__Output; - /** - * Identifies a percentage, in the range [0.0, 100.0]. - */ - export type Percent = _envoy_type_Percent; - /** - * Identifies a percentage, in the range [0.0, 100.0]. - */ - export type Percent__Output = _envoy_type_Percent__Output; - /** - * Envoy uses SemVer (https://semver.org/). Major/minor versions indicate - * expected behaviors and APIs, the patch version field is used only - * for security fixes and can be generally ignored. - */ - export type SemanticVersion = _envoy_type_SemanticVersion; - /** - * Envoy uses SemVer (https://semver.org/). Major/minor versions indicate - * expected behaviors and APIs, the patch version field is used only - * for security fixes and can be generally ignored. - */ - export type SemanticVersion__Output = _envoy_type_SemanticVersion__Output; - export namespace matcher { - /** - * Specifies a list of ways to match a string. - */ - export type ListStringMatcher = _envoy_type_matcher_ListStringMatcher; - /** - * Specifies a list of ways to match a string. - */ - export type ListStringMatcher__Output = _envoy_type_matcher_ListStringMatcher__Output; - /** - * Describes how to match a string and then produce a new string using a regular - * expression and a substitution string. - */ - export type RegexMatchAndSubstitute = _envoy_type_matcher_RegexMatchAndSubstitute; - /** - * Describes how to match a string and then produce a new string using a regular - * expression and a substitution string. - */ - export type RegexMatchAndSubstitute__Output = _envoy_type_matcher_RegexMatchAndSubstitute__Output; - /** - * A regex matcher designed for safety when used with untrusted input. - */ - export type RegexMatcher = _envoy_type_matcher_RegexMatcher; - /** - * A regex matcher designed for safety when used with untrusted input. - */ - export type RegexMatcher__Output = _envoy_type_matcher_RegexMatcher__Output; - /** - * Specifies the way to match a string. - * [#next-free-field: 7] - */ - export type StringMatcher = _envoy_type_matcher_StringMatcher; - /** - * Specifies the way to match a string. - * [#next-free-field: 7] - */ - export type StringMatcher__Output = _envoy_type_matcher_StringMatcher__Output; - } - } - } - export namespace google { - export namespace api { - /** - * A custom pattern is used for defining custom HTTP verb. - */ - export type CustomHttpPattern = _google_api_CustomHttpPattern; - /** - * A custom pattern is used for defining custom HTTP verb. - */ - export type CustomHttpPattern__Output = _google_api_CustomHttpPattern__Output; - /** - * Defines the HTTP configuration for an API service. It contains a list of - * [HttpRule][google.api.HttpRule], each specifying the mapping of an RPC method - * to one or more HTTP REST API methods. - */ - export type Http = _google_api_Http; - /** - * Defines the HTTP configuration for an API service. It contains a list of - * [HttpRule][google.api.HttpRule], each specifying the mapping of an RPC method - * to one or more HTTP REST API methods. - */ - export type Http__Output = _google_api_Http__Output; - /** - * # gRPC Transcoding - * - * gRPC Transcoding is a feature for mapping between a gRPC method and one or - * more HTTP REST endpoints. It allows developers to build a single API service - * that supports both gRPC APIs and REST APIs. Many systems, including [Google - * APIs](https://github.com/googleapis/googleapis), - * [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC - * Gateway](https://github.com/grpc-ecosystem/grpc-gateway), - * and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature - * and use it for large scale production services. - * - * `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies - * how different portions of the gRPC request message are mapped to the URL - * path, URL query parameters, and HTTP request body. It also controls how the - * gRPC response message is mapped to the HTTP response body. `HttpRule` is - * typically specified as an `google.api.http` annotation on the gRPC method. - * - * Each mapping specifies a URL path template and an HTTP method. The path - * template may refer to one or more fields in the gRPC request message, as long - * as each field is a non-repeated field with a primitive (non-message) type. - * The path template controls how fields of the request message are mapped to - * the URL path. - * - * Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/{name=messages/*}" - * }; - * } - * } - * message GetMessageRequest { - * string name = 1; // Mapped to URL path. - * } - * message Message { - * string text = 1; // The resource content. - * } - * - * This enables an HTTP REST to gRPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")` - * - * Any fields in the request message which are not bound by the path template - * automatically become HTTP query parameters if there is no HTTP request body. - * For example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get:"/v1/messages/{message_id}" - * }; - * } - * } - * message GetMessageRequest { - * message SubMessage { - * string subfield = 1; - * } - * string message_id = 1; // Mapped to URL path. - * int64 revision = 2; // Mapped to URL query parameter `revision`. - * SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`. - * } - * - * This enables a HTTP JSON to RPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456?revision=2&sub.subfield=foo` | - * `GetMessage(message_id: "123456" revision: 2 sub: SubMessage(subfield: - * "foo"))` - * - * Note that fields which are mapped to URL query parameters must have a - * primitive type or a repeated primitive type or a non-repeated message type. - * In the case of a repeated type, the parameter can be repeated in the URL - * as `...?param=A¶m=B`. In the case of a message type, each field of the - * message is mapped to a separate parameter, such as - * `...?foo.a=A&foo.b=B&foo.c=C`. - * - * For HTTP methods that allow a request body, the `body` field - * specifies the mapping. Consider a REST update method on the - * message resource collection: - * - * service Messaging { - * rpc UpdateMessage(UpdateMessageRequest) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "message" - * }; - * } - * } - * message UpdateMessageRequest { - * string message_id = 1; // mapped to the URL - * Message message = 2; // mapped to the body - * } - * - * The following HTTP JSON to RPC mapping is enabled, where the - * representation of the JSON in the request body is determined by - * protos JSON encoding: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" message { text: "Hi!" })` - * - * The special name `*` can be used in the body mapping to define that - * every field not bound by the path template should be mapped to the - * request body. This enables the following alternative definition of - * the update method: - * - * service Messaging { - * rpc UpdateMessage(Message) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "*" - * }; - * } - * } - * message Message { - * string message_id = 1; - * string text = 2; - * } - * - * - * The following HTTP JSON to RPC mapping is enabled: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" text: "Hi!")` - * - * Note that when using `*` in the body mapping, it is not possible to - * have HTTP parameters, as all fields not bound by the path end in - * the body. This makes this option more rarely used in practice when - * defining REST APIs. The common usage of `*` is in custom methods - * which don't use the URL at all for transferring data. - * - * It is possible to define multiple HTTP methods for one RPC by using - * the `additional_bindings` option. Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/messages/{message_id}" - * additional_bindings { - * get: "/v1/users/{user_id}/messages/{message_id}" - * } - * }; - * } - * } - * message GetMessageRequest { - * string message_id = 1; - * string user_id = 2; - * } - * - * This enables the following two alternative HTTP JSON to RPC mappings: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` - * `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: - * "123456")` - * - * ## Rules for HTTP mapping - * - * 1. Leaf request fields (recursive expansion nested messages in the request - * message) are classified into three categories: - * - Fields referred by the path template. They are passed via the URL path. - * - Fields referred by the [HttpRule.body][google.api.HttpRule.body]. They are passed via the HTTP - * request body. - * - All other fields are passed via the URL query parameters, and the - * parameter name is the field path in the request message. A repeated - * field can be represented as multiple query parameters under the same - * name. - * 2. If [HttpRule.body][google.api.HttpRule.body] is "*", there is no URL query parameter, all fields - * are passed via URL path and HTTP request body. - * 3. If [HttpRule.body][google.api.HttpRule.body] is omitted, there is no HTTP request body, all - * fields are passed via URL path and URL query parameters. - * - * ### Path template syntax - * - * Template = "/" Segments [ Verb ] ; - * Segments = Segment { "/" Segment } ; - * Segment = "*" | "**" | LITERAL | Variable ; - * Variable = "{" FieldPath [ "=" Segments ] "}" ; - * FieldPath = IDENT { "." IDENT } ; - * Verb = ":" LITERAL ; - * - * The syntax `*` matches a single URL path segment. The syntax `**` matches - * zero or more URL path segments, which must be the last part of the URL path - * except the `Verb`. - * - * The syntax `Variable` matches part of the URL path as specified by its - * template. A variable template must not contain other variables. If a variable - * matches a single path segment, its template may be omitted, e.g. `{var}` - * is equivalent to `{var=*}`. - * - * The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL` - * contains any reserved character, such characters should be percent-encoded - * before the matching. - * - * If a variable contains exactly one path segment, such as `"{var}"` or - * `"{var=*}"`, when such a variable is expanded into a URL path on the client - * side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The - * server side does the reverse decoding. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{var}`. - * - * If a variable contains multiple path segments, such as `"{var=foo/*}"` - * or `"{var=**}"`, when such a variable is expanded into a URL path on the - * client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. - * The server side does the reverse decoding, except "%2F" and "%2f" are left - * unchanged. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{+var}`. - * - * ## Using gRPC API Service Configuration - * - * gRPC API Service Configuration (service config) is a configuration language - * for configuring a gRPC service to become a user-facing product. The - * service config is simply the YAML representation of the `google.api.Service` - * proto message. - * - * As an alternative to annotating your proto file, you can configure gRPC - * transcoding in your service config YAML files. You do this by specifying a - * `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same - * effect as the proto annotation. This can be particularly useful if you - * have a proto that is reused in multiple services. Note that any transcoding - * specified in the service config will override any matching transcoding - * configuration in the proto. - * - * Example: - * - * http: - * rules: - * # Selects a gRPC method and applies HttpRule to it. - * - selector: example.v1.Messaging.GetMessage - * get: /v1/messages/{message_id}/{sub.subfield} - * - * ## Special notes - * - * When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the - * proto to JSON conversion must follow the [proto3 - * specification](https://developers.google.com/protocol-buffers/docs/proto3#json). - * - * While the single segment variable follows the semantics of - * [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String - * Expansion, the multi segment variable **does not** follow RFC 6570 Section - * 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion - * does not expand special characters like `?` and `#`, which would lead - * to invalid URLs. As the result, gRPC Transcoding uses a custom encoding - * for multi segment variables. - * - * The path variables **must not** refer to any repeated or mapped field, - * because client libraries are not capable of handling such variable expansion. - * - * The path variables **must not** capture the leading "/" character. The reason - * is that the most common use case "{var}" does not capture the leading "/" - * character. For consistency, all path variables must share the same behavior. - * - * Repeated message fields must not be mapped to URL query parameters, because - * no client library can support such complicated mapping. - * - * If an API needs to use a JSON array for request or response body, it can map - * the request or response body to a repeated field. However, some gRPC - * Transcoding implementations may not support this feature. - */ - export type HttpRule = _google_api_HttpRule; - /** - * # gRPC Transcoding - * - * gRPC Transcoding is a feature for mapping between a gRPC method and one or - * more HTTP REST endpoints. It allows developers to build a single API service - * that supports both gRPC APIs and REST APIs. Many systems, including [Google - * APIs](https://github.com/googleapis/googleapis), - * [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC - * Gateway](https://github.com/grpc-ecosystem/grpc-gateway), - * and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature - * and use it for large scale production services. - * - * `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies - * how different portions of the gRPC request message are mapped to the URL - * path, URL query parameters, and HTTP request body. It also controls how the - * gRPC response message is mapped to the HTTP response body. `HttpRule` is - * typically specified as an `google.api.http` annotation on the gRPC method. - * - * Each mapping specifies a URL path template and an HTTP method. The path - * template may refer to one or more fields in the gRPC request message, as long - * as each field is a non-repeated field with a primitive (non-message) type. - * The path template controls how fields of the request message are mapped to - * the URL path. - * - * Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/{name=messages/*}" - * }; - * } - * } - * message GetMessageRequest { - * string name = 1; // Mapped to URL path. - * } - * message Message { - * string text = 1; // The resource content. - * } - * - * This enables an HTTP REST to gRPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")` - * - * Any fields in the request message which are not bound by the path template - * automatically become HTTP query parameters if there is no HTTP request body. - * For example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get:"/v1/messages/{message_id}" - * }; - * } - * } - * message GetMessageRequest { - * message SubMessage { - * string subfield = 1; - * } - * string message_id = 1; // Mapped to URL path. - * int64 revision = 2; // Mapped to URL query parameter `revision`. - * SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`. - * } - * - * This enables a HTTP JSON to RPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456?revision=2&sub.subfield=foo` | - * `GetMessage(message_id: "123456" revision: 2 sub: SubMessage(subfield: - * "foo"))` - * - * Note that fields which are mapped to URL query parameters must have a - * primitive type or a repeated primitive type or a non-repeated message type. - * In the case of a repeated type, the parameter can be repeated in the URL - * as `...?param=A¶m=B`. In the case of a message type, each field of the - * message is mapped to a separate parameter, such as - * `...?foo.a=A&foo.b=B&foo.c=C`. - * - * For HTTP methods that allow a request body, the `body` field - * specifies the mapping. Consider a REST update method on the - * message resource collection: - * - * service Messaging { - * rpc UpdateMessage(UpdateMessageRequest) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "message" - * }; - * } - * } - * message UpdateMessageRequest { - * string message_id = 1; // mapped to the URL - * Message message = 2; // mapped to the body - * } - * - * The following HTTP JSON to RPC mapping is enabled, where the - * representation of the JSON in the request body is determined by - * protos JSON encoding: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" message { text: "Hi!" })` - * - * The special name `*` can be used in the body mapping to define that - * every field not bound by the path template should be mapped to the - * request body. This enables the following alternative definition of - * the update method: - * - * service Messaging { - * rpc UpdateMessage(Message) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "*" - * }; - * } - * } - * message Message { - * string message_id = 1; - * string text = 2; - * } - * - * - * The following HTTP JSON to RPC mapping is enabled: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" text: "Hi!")` - * - * Note that when using `*` in the body mapping, it is not possible to - * have HTTP parameters, as all fields not bound by the path end in - * the body. This makes this option more rarely used in practice when - * defining REST APIs. The common usage of `*` is in custom methods - * which don't use the URL at all for transferring data. - * - * It is possible to define multiple HTTP methods for one RPC by using - * the `additional_bindings` option. Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/messages/{message_id}" - * additional_bindings { - * get: "/v1/users/{user_id}/messages/{message_id}" - * } - * }; - * } - * } - * message GetMessageRequest { - * string message_id = 1; - * string user_id = 2; - * } - * - * This enables the following two alternative HTTP JSON to RPC mappings: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` - * `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: - * "123456")` - * - * ## Rules for HTTP mapping - * - * 1. Leaf request fields (recursive expansion nested messages in the request - * message) are classified into three categories: - * - Fields referred by the path template. They are passed via the URL path. - * - Fields referred by the [HttpRule.body][google.api.HttpRule.body]. They are passed via the HTTP - * request body. - * - All other fields are passed via the URL query parameters, and the - * parameter name is the field path in the request message. A repeated - * field can be represented as multiple query parameters under the same - * name. - * 2. If [HttpRule.body][google.api.HttpRule.body] is "*", there is no URL query parameter, all fields - * are passed via URL path and HTTP request body. - * 3. If [HttpRule.body][google.api.HttpRule.body] is omitted, there is no HTTP request body, all - * fields are passed via URL path and URL query parameters. - * - * ### Path template syntax - * - * Template = "/" Segments [ Verb ] ; - * Segments = Segment { "/" Segment } ; - * Segment = "*" | "**" | LITERAL | Variable ; - * Variable = "{" FieldPath [ "=" Segments ] "}" ; - * FieldPath = IDENT { "." IDENT } ; - * Verb = ":" LITERAL ; - * - * The syntax `*` matches a single URL path segment. The syntax `**` matches - * zero or more URL path segments, which must be the last part of the URL path - * except the `Verb`. - * - * The syntax `Variable` matches part of the URL path as specified by its - * template. A variable template must not contain other variables. If a variable - * matches a single path segment, its template may be omitted, e.g. `{var}` - * is equivalent to `{var=*}`. - * - * The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL` - * contains any reserved character, such characters should be percent-encoded - * before the matching. - * - * If a variable contains exactly one path segment, such as `"{var}"` or - * `"{var=*}"`, when such a variable is expanded into a URL path on the client - * side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The - * server side does the reverse decoding. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{var}`. - * - * If a variable contains multiple path segments, such as `"{var=foo/*}"` - * or `"{var=**}"`, when such a variable is expanded into a URL path on the - * client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. - * The server side does the reverse decoding, except "%2F" and "%2f" are left - * unchanged. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{+var}`. - * - * ## Using gRPC API Service Configuration - * - * gRPC API Service Configuration (service config) is a configuration language - * for configuring a gRPC service to become a user-facing product. The - * service config is simply the YAML representation of the `google.api.Service` - * proto message. - * - * As an alternative to annotating your proto file, you can configure gRPC - * transcoding in your service config YAML files. You do this by specifying a - * `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same - * effect as the proto annotation. This can be particularly useful if you - * have a proto that is reused in multiple services. Note that any transcoding - * specified in the service config will override any matching transcoding - * configuration in the proto. - * - * Example: - * - * http: - * rules: - * # Selects a gRPC method and applies HttpRule to it. - * - selector: example.v1.Messaging.GetMessage - * get: /v1/messages/{message_id}/{sub.subfield} - * - * ## Special notes - * - * When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the - * proto to JSON conversion must follow the [proto3 - * specification](https://developers.google.com/protocol-buffers/docs/proto3#json). - * - * While the single segment variable follows the semantics of - * [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String - * Expansion, the multi segment variable **does not** follow RFC 6570 Section - * 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion - * does not expand special characters like `?` and `#`, which would lead - * to invalid URLs. As the result, gRPC Transcoding uses a custom encoding - * for multi segment variables. - * - * The path variables **must not** refer to any repeated or mapped field, - * because client libraries are not capable of handling such variable expansion. - * - * The path variables **must not** capture the leading "/" character. The reason - * is that the most common use case "{var}" does not capture the leading "/" - * character. For consistency, all path variables must share the same behavior. - * - * Repeated message fields must not be mapped to URL query parameters, because - * no client library can support such complicated mapping. - * - * If an API needs to use a JSON array for request or response body, it can map - * the request or response body to a repeated field. However, some gRPC - * Transcoding implementations may not support this feature. - */ - export type HttpRule__Output = _google_api_HttpRule__Output; - } - export namespace protobuf { - export type Any = _google_protobuf_Any; - export type Any__Output = _google_protobuf_Any__Output; - export type BoolValue = _google_protobuf_BoolValue; - export type BoolValue__Output = _google_protobuf_BoolValue__Output; - export type BytesValue = _google_protobuf_BytesValue; - export type BytesValue__Output = _google_protobuf_BytesValue__Output; - export type DescriptorProto = _google_protobuf_DescriptorProto; - export type DescriptorProto__Output = _google_protobuf_DescriptorProto__Output; - export type DoubleValue = _google_protobuf_DoubleValue; - export type DoubleValue__Output = _google_protobuf_DoubleValue__Output; - export type Duration = _google_protobuf_Duration; - export type Duration__Output = _google_protobuf_Duration__Output; - export type Empty = _google_protobuf_Empty; - export type Empty__Output = _google_protobuf_Empty__Output; - export type EnumDescriptorProto = _google_protobuf_EnumDescriptorProto; - export type EnumDescriptorProto__Output = _google_protobuf_EnumDescriptorProto__Output; - export type EnumOptions = _google_protobuf_EnumOptions; - export type EnumOptions__Output = _google_protobuf_EnumOptions__Output; - export type EnumValueDescriptorProto = _google_protobuf_EnumValueDescriptorProto; - export type EnumValueDescriptorProto__Output = _google_protobuf_EnumValueDescriptorProto__Output; - export type EnumValueOptions = _google_protobuf_EnumValueOptions; - export type EnumValueOptions__Output = _google_protobuf_EnumValueOptions__Output; - export type FieldDescriptorProto = _google_protobuf_FieldDescriptorProto; - export type FieldDescriptorProto__Output = _google_protobuf_FieldDescriptorProto__Output; - export type FieldOptions = _google_protobuf_FieldOptions; - export type FieldOptions__Output = _google_protobuf_FieldOptions__Output; - export type FileDescriptorProto = _google_protobuf_FileDescriptorProto; - export type FileDescriptorProto__Output = _google_protobuf_FileDescriptorProto__Output; - export type FileDescriptorSet = _google_protobuf_FileDescriptorSet; - export type FileDescriptorSet__Output = _google_protobuf_FileDescriptorSet__Output; - export type FileOptions = _google_protobuf_FileOptions; - export type FileOptions__Output = _google_protobuf_FileOptions__Output; - export type FloatValue = _google_protobuf_FloatValue; - export type FloatValue__Output = _google_protobuf_FloatValue__Output; - export type GeneratedCodeInfo = _google_protobuf_GeneratedCodeInfo; - export type GeneratedCodeInfo__Output = _google_protobuf_GeneratedCodeInfo__Output; - export type Int32Value = _google_protobuf_Int32Value; - export type Int32Value__Output = _google_protobuf_Int32Value__Output; - export type Int64Value = _google_protobuf_Int64Value; - export type Int64Value__Output = _google_protobuf_Int64Value__Output; - export type ListValue = _google_protobuf_ListValue; - export type ListValue__Output = _google_protobuf_ListValue__Output; - export type MessageOptions = _google_protobuf_MessageOptions; - export type MessageOptions__Output = _google_protobuf_MessageOptions__Output; - export type MethodDescriptorProto = _google_protobuf_MethodDescriptorProto; - export type MethodDescriptorProto__Output = _google_protobuf_MethodDescriptorProto__Output; - export type MethodOptions = _google_protobuf_MethodOptions; - export type MethodOptions__Output = _google_protobuf_MethodOptions__Output; - export type NullValue = _google_protobuf_NullValue; - export type OneofDescriptorProto = _google_protobuf_OneofDescriptorProto; - export type OneofDescriptorProto__Output = _google_protobuf_OneofDescriptorProto__Output; - export type OneofOptions = _google_protobuf_OneofOptions; - export type OneofOptions__Output = _google_protobuf_OneofOptions__Output; - export type ServiceDescriptorProto = _google_protobuf_ServiceDescriptorProto; - export type ServiceDescriptorProto__Output = _google_protobuf_ServiceDescriptorProto__Output; - export type ServiceOptions = _google_protobuf_ServiceOptions; - export type ServiceOptions__Output = _google_protobuf_ServiceOptions__Output; - export type SourceCodeInfo = _google_protobuf_SourceCodeInfo; - export type SourceCodeInfo__Output = _google_protobuf_SourceCodeInfo__Output; - export type StringValue = _google_protobuf_StringValue; - export type StringValue__Output = _google_protobuf_StringValue__Output; - export type Struct = _google_protobuf_Struct; - export type Struct__Output = _google_protobuf_Struct__Output; - export type Timestamp = _google_protobuf_Timestamp; - export type Timestamp__Output = _google_protobuf_Timestamp__Output; - export type UInt32Value = _google_protobuf_UInt32Value; - export type UInt32Value__Output = _google_protobuf_UInt32Value__Output; - export type UInt64Value = _google_protobuf_UInt64Value; - export type UInt64Value__Output = _google_protobuf_UInt64Value__Output; - export type UninterpretedOption = _google_protobuf_UninterpretedOption; - export type UninterpretedOption__Output = _google_protobuf_UninterpretedOption__Output; - export type Value = _google_protobuf_Value; - export type Value__Output = _google_protobuf_Value__Output; - } - } - export namespace udpa { - export namespace annotations { - export type FieldMigrateAnnotation = _udpa_annotations_FieldMigrateAnnotation; - export type FieldMigrateAnnotation__Output = _udpa_annotations_FieldMigrateAnnotation__Output; - export type FileMigrateAnnotation = _udpa_annotations_FileMigrateAnnotation; - export type FileMigrateAnnotation__Output = _udpa_annotations_FileMigrateAnnotation__Output; - export type MigrateAnnotation = _udpa_annotations_MigrateAnnotation; - export type MigrateAnnotation__Output = _udpa_annotations_MigrateAnnotation__Output; - export type PackageVersionStatus = _udpa_annotations_PackageVersionStatus; - export type StatusAnnotation = _udpa_annotations_StatusAnnotation; - export type StatusAnnotation__Output = _udpa_annotations_StatusAnnotation__Output; - } - } - export namespace validate { - /** - * AnyRules describe constraints applied exclusively to the - * `google.protobuf.Any` well-known type - */ - export type AnyRules = _validate_AnyRules; - /** - * AnyRules describe constraints applied exclusively to the - * `google.protobuf.Any` well-known type - */ - export type AnyRules__Output = _validate_AnyRules__Output; - /** - * BoolRules describes the constraints applied to `bool` values - */ - export type BoolRules = _validate_BoolRules; - /** - * BoolRules describes the constraints applied to `bool` values - */ - export type BoolRules__Output = _validate_BoolRules__Output; - /** - * BytesRules describe the constraints applied to `bytes` values - */ - export type BytesRules = _validate_BytesRules; - /** - * BytesRules describe the constraints applied to `bytes` values - */ - export type BytesRules__Output = _validate_BytesRules__Output; - /** - * DoubleRules describes the constraints applied to `double` values - */ - export type DoubleRules = _validate_DoubleRules; - /** - * DoubleRules describes the constraints applied to `double` values - */ - export type DoubleRules__Output = _validate_DoubleRules__Output; - /** - * DurationRules describe the constraints applied exclusively to the - * `google.protobuf.Duration` well-known type - */ - export type DurationRules = _validate_DurationRules; - /** - * DurationRules describe the constraints applied exclusively to the - * `google.protobuf.Duration` well-known type - */ - export type DurationRules__Output = _validate_DurationRules__Output; - /** - * EnumRules describe the constraints applied to enum values - */ - export type EnumRules = _validate_EnumRules; - /** - * EnumRules describe the constraints applied to enum values - */ - export type EnumRules__Output = _validate_EnumRules__Output; - /** - * FieldRules encapsulates the rules for each type of field. Depending on the - * field, the correct set should be used to ensure proper validations. - */ - export type FieldRules = _validate_FieldRules; - /** - * FieldRules encapsulates the rules for each type of field. Depending on the - * field, the correct set should be used to ensure proper validations. - */ - export type FieldRules__Output = _validate_FieldRules__Output; - /** - * Fixed32Rules describes the constraints applied to `fixed32` values - */ - export type Fixed32Rules = _validate_Fixed32Rules; - /** - * Fixed32Rules describes the constraints applied to `fixed32` values - */ - export type Fixed32Rules__Output = _validate_Fixed32Rules__Output; - /** - * Fixed64Rules describes the constraints applied to `fixed64` values - */ - export type Fixed64Rules = _validate_Fixed64Rules; - /** - * Fixed64Rules describes the constraints applied to `fixed64` values - */ - export type Fixed64Rules__Output = _validate_Fixed64Rules__Output; - /** - * FloatRules describes the constraints applied to `float` values - */ - export type FloatRules = _validate_FloatRules; - /** - * FloatRules describes the constraints applied to `float` values - */ - export type FloatRules__Output = _validate_FloatRules__Output; - /** - * Int32Rules describes the constraints applied to `int32` values - */ - export type Int32Rules = _validate_Int32Rules; - /** - * Int32Rules describes the constraints applied to `int32` values - */ - export type Int32Rules__Output = _validate_Int32Rules__Output; - /** - * Int64Rules describes the constraints applied to `int64` values - */ - export type Int64Rules = _validate_Int64Rules; - /** - * Int64Rules describes the constraints applied to `int64` values - */ - export type Int64Rules__Output = _validate_Int64Rules__Output; - /** - * WellKnownRegex contain some well-known patterns. - */ - export type KnownRegex = _validate_KnownRegex; - /** - * MapRules describe the constraints applied to `map` values - */ - export type MapRules = _validate_MapRules; - /** - * MapRules describe the constraints applied to `map` values - */ - export type MapRules__Output = _validate_MapRules__Output; - /** - * MessageRules describe the constraints applied to embedded message values. - * For message-type fields, validation is performed recursively. - */ - export type MessageRules = _validate_MessageRules; - /** - * MessageRules describe the constraints applied to embedded message values. - * For message-type fields, validation is performed recursively. - */ - export type MessageRules__Output = _validate_MessageRules__Output; - /** - * RepeatedRules describe the constraints applied to `repeated` values - */ - export type RepeatedRules = _validate_RepeatedRules; - /** - * RepeatedRules describe the constraints applied to `repeated` values - */ - export type RepeatedRules__Output = _validate_RepeatedRules__Output; - /** - * SFixed32Rules describes the constraints applied to `sfixed32` values - */ - export type SFixed32Rules = _validate_SFixed32Rules; - /** - * SFixed32Rules describes the constraints applied to `sfixed32` values - */ - export type SFixed32Rules__Output = _validate_SFixed32Rules__Output; - /** - * SFixed64Rules describes the constraints applied to `sfixed64` values - */ - export type SFixed64Rules = _validate_SFixed64Rules; - /** - * SFixed64Rules describes the constraints applied to `sfixed64` values - */ - export type SFixed64Rules__Output = _validate_SFixed64Rules__Output; - /** - * SInt32Rules describes the constraints applied to `sint32` values - */ - export type SInt32Rules = _validate_SInt32Rules; - /** - * SInt32Rules describes the constraints applied to `sint32` values - */ - export type SInt32Rules__Output = _validate_SInt32Rules__Output; - /** - * SInt64Rules describes the constraints applied to `sint64` values - */ - export type SInt64Rules = _validate_SInt64Rules; - /** - * SInt64Rules describes the constraints applied to `sint64` values - */ - export type SInt64Rules__Output = _validate_SInt64Rules__Output; - /** - * StringRules describe the constraints applied to `string` values - */ - export type StringRules = _validate_StringRules; - /** - * StringRules describe the constraints applied to `string` values - */ - export type StringRules__Output = _validate_StringRules__Output; - /** - * TimestampRules describe the constraints applied exclusively to the - * `google.protobuf.Timestamp` well-known type - */ - export type TimestampRules = _validate_TimestampRules; - /** - * TimestampRules describe the constraints applied exclusively to the - * `google.protobuf.Timestamp` well-known type - */ - export type TimestampRules__Output = _validate_TimestampRules__Output; - /** - * UInt32Rules describes the constraints applied to `uint32` values - */ - export type UInt32Rules = _validate_UInt32Rules; - /** - * UInt32Rules describes the constraints applied to `uint32` values - */ - export type UInt32Rules__Output = _validate_UInt32Rules__Output; - /** - * UInt64Rules describes the constraints applied to `uint64` values - */ - export type UInt64Rules = _validate_UInt64Rules; - /** - * UInt64Rules describes the constraints applied to `uint64` values - */ - export type UInt64Rules__Output = _validate_UInt64Rules__Output; - } -} - -export namespace ClientInterfaces { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - export namespace ClusterLoadAssignment { - export namespace Policy { - export namespace DropOverload { - } - } - } - export namespace core { - export namespace Address { - } - export namespace AsyncDataSource { - } - export namespace BackoffStrategy { - } - export namespace BindConfig { - } - export namespace BuildVersion { - } - export namespace CidrRange { - } - export namespace ControlPlane { - } - export namespace DataSource { - } - export namespace EventServiceConfig { - } - export namespace Extension { - } - export namespace GrpcService { - export namespace EnvoyGrpc { - } - export namespace GoogleGrpc { - export namespace CallCredentials { - export namespace GoogleIAMCredentials { - } - export namespace MetadataCredentialsFromPlugin { - } - export namespace ServiceAccountJWTAccessCredentials { - } - export namespace StsService { - } - } - export namespace ChannelCredentials { - } - export namespace GoogleLocalCredentials { - } - export namespace SslCredentials { - } - } - } - export namespace HeaderMap { - } - export namespace HeaderValue { - } - export namespace HeaderValueOption { - } - export namespace HealthCheck { - export namespace CustomHealthCheck { - } - export namespace GrpcHealthCheck { - } - export namespace HttpHealthCheck { - } - export namespace Payload { - } - export namespace RedisHealthCheck { - } - export namespace TcpHealthCheck { - } - export namespace TlsOptions { - } - } - export namespace HttpUri { - } - export namespace Locality { - } - export namespace Metadata { - } - export namespace Node { - } - export namespace Pipe { - } - export namespace RemoteDataSource { - } - export namespace RetryPolicy { - } - export namespace RuntimeDouble { - } - export namespace RuntimeFeatureFlag { - } - export namespace RuntimeFractionalPercent { - } - export namespace RuntimeUInt32 { - } - export namespace SocketAddress { - } - export namespace SocketOption { - } - export namespace TcpKeepalive { - } - export namespace TransportSocket { - } - } - export namespace endpoint { - export namespace Endpoint { - export namespace HealthCheckConfig { - } - } - export namespace LbEndpoint { - } - export namespace LocalityLbEndpoints { - } - } - } - } - export namespace type { - export namespace DoubleRange { - } - export namespace FractionalPercent { - } - export namespace Int32Range { - } - export namespace Int64Range { - } - export namespace Percent { - } - export namespace SemanticVersion { - } - export namespace matcher { - export namespace ListStringMatcher { - } - export namespace RegexMatchAndSubstitute { - } - export namespace RegexMatcher { - export namespace GoogleRE2 { - } - } - export namespace StringMatcher { - } - } - } - } - export namespace google { - export namespace api { - export namespace CustomHttpPattern { - } - export namespace Http { - } - export namespace HttpRule { - } - } - export namespace protobuf { - export namespace Any { - } - export namespace BoolValue { - } - export namespace BytesValue { - } - export namespace DescriptorProto { - export namespace ExtensionRange { - } - export namespace ReservedRange { - } - } - export namespace DoubleValue { - } - export namespace Duration { - } - export namespace Empty { - } - export namespace EnumDescriptorProto { - } - export namespace EnumOptions { - } - export namespace EnumValueDescriptorProto { - } - export namespace EnumValueOptions { - } - export namespace FieldDescriptorProto { - } - export namespace FieldOptions { - } - export namespace FileDescriptorProto { - } - export namespace FileDescriptorSet { - } - export namespace FileOptions { - } - export namespace FloatValue { - } - export namespace GeneratedCodeInfo { - export namespace Annotation { - } - } - export namespace Int32Value { - } - export namespace Int64Value { - } - export namespace ListValue { - } - export namespace MessageOptions { - } - export namespace MethodDescriptorProto { - } - export namespace MethodOptions { - } - export namespace OneofDescriptorProto { - } - export namespace OneofOptions { - } - export namespace ServiceDescriptorProto { - } - export namespace ServiceOptions { - } - export namespace SourceCodeInfo { - export namespace Location { - } - } - export namespace StringValue { - } - export namespace Struct { - } - export namespace Timestamp { - } - export namespace UInt32Value { - } - export namespace UInt64Value { - } - export namespace UninterpretedOption { - export namespace NamePart { - } - } - export namespace Value { - } - } - } - export namespace udpa { - export namespace annotations { - export namespace FieldMigrateAnnotation { - } - export namespace FileMigrateAnnotation { - } - export namespace MigrateAnnotation { - } - export namespace StatusAnnotation { - } - } - } - export namespace validate { - export namespace AnyRules { - } - export namespace BoolRules { - } - export namespace BytesRules { - } - export namespace DoubleRules { - } - export namespace DurationRules { - } - export namespace EnumRules { - } - export namespace FieldRules { - } - export namespace Fixed32Rules { - } - export namespace Fixed64Rules { - } - export namespace FloatRules { - } - export namespace Int32Rules { - } - export namespace Int64Rules { - } - export namespace MapRules { - } - export namespace MessageRules { - } - export namespace RepeatedRules { - } - export namespace SFixed32Rules { - } - export namespace SFixed64Rules { - } - export namespace SInt32Rules { - } - export namespace SInt64Rules { - } - export namespace StringRules { - } - export namespace TimestampRules { - } - export namespace UInt32Rules { - } - export namespace UInt64Rules { - } - } -} type ConstructorArguments = Constructor extends new (...args: infer Args) => any ? Args: never; type SubtypeConstructor = { @@ -1953,305 +156,3 @@ export interface ProtoGrpcType { } } -export namespace ServiceHandlers { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - export namespace ClusterLoadAssignment { - export namespace Policy { - export namespace DropOverload { - } - } - } - export namespace core { - export namespace Address { - } - export namespace AsyncDataSource { - } - export namespace BackoffStrategy { - } - export namespace BindConfig { - } - export namespace BuildVersion { - } - export namespace CidrRange { - } - export namespace ControlPlane { - } - export namespace DataSource { - } - export namespace EventServiceConfig { - } - export namespace Extension { - } - export namespace GrpcService { - export namespace EnvoyGrpc { - } - export namespace GoogleGrpc { - export namespace CallCredentials { - export namespace GoogleIAMCredentials { - } - export namespace MetadataCredentialsFromPlugin { - } - export namespace ServiceAccountJWTAccessCredentials { - } - export namespace StsService { - } - } - export namespace ChannelCredentials { - } - export namespace GoogleLocalCredentials { - } - export namespace SslCredentials { - } - } - } - export namespace HeaderMap { - } - export namespace HeaderValue { - } - export namespace HeaderValueOption { - } - export namespace HealthCheck { - export namespace CustomHealthCheck { - } - export namespace GrpcHealthCheck { - } - export namespace HttpHealthCheck { - } - export namespace Payload { - } - export namespace RedisHealthCheck { - } - export namespace TcpHealthCheck { - } - export namespace TlsOptions { - } - } - export namespace HttpUri { - } - export namespace Locality { - } - export namespace Metadata { - } - export namespace Node { - } - export namespace Pipe { - } - export namespace RemoteDataSource { - } - export namespace RetryPolicy { - } - export namespace RuntimeDouble { - } - export namespace RuntimeFeatureFlag { - } - export namespace RuntimeFractionalPercent { - } - export namespace RuntimeUInt32 { - } - export namespace SocketAddress { - } - export namespace SocketOption { - } - export namespace TcpKeepalive { - } - export namespace TransportSocket { - } - } - export namespace endpoint { - export namespace Endpoint { - export namespace HealthCheckConfig { - } - } - export namespace LbEndpoint { - } - export namespace LocalityLbEndpoints { - } - } - } - } - export namespace type { - export namespace DoubleRange { - } - export namespace FractionalPercent { - } - export namespace Int32Range { - } - export namespace Int64Range { - } - export namespace Percent { - } - export namespace SemanticVersion { - } - export namespace matcher { - export namespace ListStringMatcher { - } - export namespace RegexMatchAndSubstitute { - } - export namespace RegexMatcher { - export namespace GoogleRE2 { - } - } - export namespace StringMatcher { - } - } - } - } - export namespace google { - export namespace api { - export namespace CustomHttpPattern { - } - export namespace Http { - } - export namespace HttpRule { - } - } - export namespace protobuf { - export namespace Any { - } - export namespace BoolValue { - } - export namespace BytesValue { - } - export namespace DescriptorProto { - export namespace ExtensionRange { - } - export namespace ReservedRange { - } - } - export namespace DoubleValue { - } - export namespace Duration { - } - export namespace Empty { - } - export namespace EnumDescriptorProto { - } - export namespace EnumOptions { - } - export namespace EnumValueDescriptorProto { - } - export namespace EnumValueOptions { - } - export namespace FieldDescriptorProto { - } - export namespace FieldOptions { - } - export namespace FileDescriptorProto { - } - export namespace FileDescriptorSet { - } - export namespace FileOptions { - } - export namespace FloatValue { - } - export namespace GeneratedCodeInfo { - export namespace Annotation { - } - } - export namespace Int32Value { - } - export namespace Int64Value { - } - export namespace ListValue { - } - export namespace MessageOptions { - } - export namespace MethodDescriptorProto { - } - export namespace MethodOptions { - } - export namespace OneofDescriptorProto { - } - export namespace OneofOptions { - } - export namespace ServiceDescriptorProto { - } - export namespace ServiceOptions { - } - export namespace SourceCodeInfo { - export namespace Location { - } - } - export namespace StringValue { - } - export namespace Struct { - } - export namespace Timestamp { - } - export namespace UInt32Value { - } - export namespace UInt64Value { - } - export namespace UninterpretedOption { - export namespace NamePart { - } - } - export namespace Value { - } - } - } - export namespace udpa { - export namespace annotations { - export namespace FieldMigrateAnnotation { - } - export namespace FileMigrateAnnotation { - } - export namespace MigrateAnnotation { - } - export namespace StatusAnnotation { - } - } - } - export namespace validate { - export namespace AnyRules { - } - export namespace BoolRules { - } - export namespace BytesRules { - } - export namespace DoubleRules { - } - export namespace DurationRules { - } - export namespace EnumRules { - } - export namespace FieldRules { - } - export namespace Fixed32Rules { - } - export namespace Fixed64Rules { - } - export namespace FloatRules { - } - export namespace Int32Rules { - } - export namespace Int64Rules { - } - export namespace MapRules { - } - export namespace MessageRules { - } - export namespace RepeatedRules { - } - export namespace SFixed32Rules { - } - export namespace SFixed64Rules { - } - export namespace SInt32Rules { - } - export namespace SInt64Rules { - } - export namespace StringRules { - } - export namespace TimestampRules { - } - export namespace UInt32Rules { - } - export namespace UInt64Rules { - } - } -} diff --git a/packages/grpc-js/src/generated/envoy/api/v2/Cluster.ts b/packages/grpc-js/src/generated/envoy/api/v2/Cluster.ts index 9d7cad53..4f6d10c6 100644 --- a/packages/grpc-js/src/generated/envoy/api/v2/Cluster.ts +++ b/packages/grpc-js/src/generated/envoy/api/v2/Cluster.ts @@ -21,8 +21,8 @@ import { Filter as _envoy_api_v2_cluster_Filter, Filter__Output as _envoy_api_v2 import { LoadBalancingPolicy as _envoy_api_v2_LoadBalancingPolicy, LoadBalancingPolicy__Output as _envoy_api_v2_LoadBalancingPolicy__Output } from '../../../envoy/api/v2/LoadBalancingPolicy'; import { ConfigSource as _envoy_api_v2_core_ConfigSource, ConfigSource__Output as _envoy_api_v2_core_ConfigSource__Output } from '../../../envoy/api/v2/core/ConfigSource'; import { UpstreamHttpProtocolOptions as _envoy_api_v2_core_UpstreamHttpProtocolOptions, UpstreamHttpProtocolOptions__Output as _envoy_api_v2_core_UpstreamHttpProtocolOptions__Output } from '../../../envoy/api/v2/core/UpstreamHttpProtocolOptions'; -import { Percent as _envoy_type_Percent, Percent__Output as _envoy_type_Percent__Output } from '../../../envoy/type/Percent'; import { UInt64Value as _google_protobuf_UInt64Value, UInt64Value__Output as _google_protobuf_UInt64Value__Output } from '../../../google/protobuf/UInt64Value'; +import { Percent as _envoy_type_Percent, Percent__Output as _envoy_type_Percent__Output } from '../../../envoy/type/Percent'; import { Long } from '@grpc/proto-loader'; // Original file: deps/envoy-api/envoy/api/v2/cluster.proto @@ -196,78 +196,6 @@ export interface _envoy_api_v2_Cluster_CommonLbConfig_ConsistentHashingLbConfig_ 'use_hostname_for_hashing': (boolean); } -/** - * Configuration for :ref:`locality weighted load balancing - * ` - */ -export interface _envoy_api_v2_Cluster_CommonLbConfig_LocalityWeightedLbConfig { -} - -/** - * Configuration for :ref:`locality weighted load balancing - * ` - */ -export interface _envoy_api_v2_Cluster_CommonLbConfig_LocalityWeightedLbConfig__Output { -} - -/** - * Configuration for :ref:`zone aware routing - * `. - */ -export interface _envoy_api_v2_Cluster_CommonLbConfig_ZoneAwareLbConfig { - /** - * Configures percentage of requests that will be considered for zone aware routing - * if zone aware routing is configured. If not specified, the default is 100%. - * * :ref:`runtime values `. - * * :ref:`Zone aware routing support `. - */ - 'routing_enabled'?: (_envoy_type_Percent); - /** - * Configures minimum upstream cluster size required for zone aware routing - * If upstream cluster size is less than specified, zone aware routing is not performed - * even if zone aware routing is configured. If not specified, the default is 6. - * * :ref:`runtime values `. - * * :ref:`Zone aware routing support `. - */ - 'min_cluster_size'?: (_google_protobuf_UInt64Value); - /** - * If set to true, Envoy will not consider any hosts when the cluster is in :ref:`panic - * mode`. Instead, the cluster will fail all - * requests as if all hosts are unhealthy. This can help avoid potentially overwhelming a - * failing service. - */ - 'fail_traffic_on_panic'?: (boolean); -} - -/** - * Configuration for :ref:`zone aware routing - * `. - */ -export interface _envoy_api_v2_Cluster_CommonLbConfig_ZoneAwareLbConfig__Output { - /** - * Configures percentage of requests that will be considered for zone aware routing - * if zone aware routing is configured. If not specified, the default is 100%. - * * :ref:`runtime values `. - * * :ref:`Zone aware routing support `. - */ - 'routing_enabled': (_envoy_type_Percent__Output); - /** - * Configures minimum upstream cluster size required for zone aware routing - * If upstream cluster size is less than specified, zone aware routing is not performed - * even if zone aware routing is configured. If not specified, the default is 6. - * * :ref:`runtime values `. - * * :ref:`Zone aware routing support `. - */ - 'min_cluster_size': (_google_protobuf_UInt64Value__Output); - /** - * If set to true, Envoy will not consider any hosts when the cluster is in :ref:`panic - * mode`. Instead, the cluster will fail all - * requests as if all hosts are unhealthy. This can help avoid potentially overwhelming a - * failing service. - */ - 'fail_traffic_on_panic': (boolean); -} - /** * Extended cluster type. */ @@ -389,6 +317,24 @@ export interface _envoy_api_v2_Cluster_EdsClusterConfig__Output { // Original file: deps/envoy-api/envoy/api/v2/cluster.proto +/** + * The hash function used to hash hosts onto the ketama ring. + */ +export enum _envoy_api_v2_Cluster_RingHashLbConfig_HashFunction { + /** + * Use `xxHash `_, this is the default hash function. + */ + XX_HASH = 0, + /** + * Use `MurmurHash2 `_, this is compatible with + * std:hash in GNU libstdc++ 3.4.20 or above. This is typically the case when compiled + * on Linux and not macOS. + */ + MURMUR_HASH_2 = 1, +} + +// Original file: deps/envoy-api/envoy/api/v2/cluster.proto + /** * Refer to :ref:`load balancer type ` architecture * overview section for information on each type. @@ -728,6 +674,20 @@ export interface _envoy_api_v2_Cluster_LeastRequestLbConfig__Output { 'choice_count': (_google_protobuf_UInt32Value__Output); } +/** + * Configuration for :ref:`locality weighted load balancing + * ` + */ +export interface _envoy_api_v2_Cluster_CommonLbConfig_LocalityWeightedLbConfig { +} + +/** + * Configuration for :ref:`locality weighted load balancing + * ` + */ +export interface _envoy_api_v2_Cluster_CommonLbConfig_LocalityWeightedLbConfig__Output { +} + /** * Specific configuration for the * :ref:`Original Destination ` @@ -850,24 +810,6 @@ export interface _envoy_api_v2_Cluster_RingHashLbConfig__Output { 'maximum_ring_size': (_google_protobuf_UInt64Value__Output); } -// Original file: deps/envoy-api/envoy/api/v2/cluster.proto - -/** - * The hash function used to hash hosts onto the ketama ring. - */ -export enum _envoy_api_v2_Cluster_RingHashLbConfig_HashFunction { - /** - * Use `xxHash `_, this is the default hash function. - */ - XX_HASH = 0, - /** - * Use `MurmurHash2 `_, this is compatible with - * std:hash in GNU libstdc++ 3.4.20 or above. This is typically the case when compiled - * on Linux and not macOS. - */ - MURMUR_HASH_2 = 1, -} - /** * TransportSocketMatch specifies what transport socket config will be used * when the match conditions are satisfied. @@ -914,6 +856,64 @@ export interface _envoy_api_v2_Cluster_TransportSocketMatch__Output { 'transport_socket': (_envoy_api_v2_core_TransportSocket__Output); } +/** + * Configuration for :ref:`zone aware routing + * `. + */ +export interface _envoy_api_v2_Cluster_CommonLbConfig_ZoneAwareLbConfig { + /** + * Configures percentage of requests that will be considered for zone aware routing + * if zone aware routing is configured. If not specified, the default is 100%. + * * :ref:`runtime values `. + * * :ref:`Zone aware routing support `. + */ + 'routing_enabled'?: (_envoy_type_Percent); + /** + * Configures minimum upstream cluster size required for zone aware routing + * If upstream cluster size is less than specified, zone aware routing is not performed + * even if zone aware routing is configured. If not specified, the default is 6. + * * :ref:`runtime values `. + * * :ref:`Zone aware routing support `. + */ + 'min_cluster_size'?: (_google_protobuf_UInt64Value); + /** + * If set to true, Envoy will not consider any hosts when the cluster is in :ref:`panic + * mode`. Instead, the cluster will fail all + * requests as if all hosts are unhealthy. This can help avoid potentially overwhelming a + * failing service. + */ + 'fail_traffic_on_panic'?: (boolean); +} + +/** + * Configuration for :ref:`zone aware routing + * `. + */ +export interface _envoy_api_v2_Cluster_CommonLbConfig_ZoneAwareLbConfig__Output { + /** + * Configures percentage of requests that will be considered for zone aware routing + * if zone aware routing is configured. If not specified, the default is 100%. + * * :ref:`runtime values `. + * * :ref:`Zone aware routing support `. + */ + 'routing_enabled': (_envoy_type_Percent__Output); + /** + * Configures minimum upstream cluster size required for zone aware routing + * If upstream cluster size is less than specified, zone aware routing is not performed + * even if zone aware routing is configured. If not specified, the default is 6. + * * :ref:`runtime values `. + * * :ref:`Zone aware routing support `. + */ + 'min_cluster_size': (_google_protobuf_UInt64Value__Output); + /** + * If set to true, Envoy will not consider any hosts when the cluster is in :ref:`panic + * mode`. Instead, the cluster will fail all + * requests as if all hosts are unhealthy. This can help avoid potentially overwhelming a + * failing service. + */ + 'fail_traffic_on_panic': (boolean); +} + /** * Configuration for a single upstream cluster. * [#next-free-field: 48] diff --git a/packages/grpc-js/src/generated/envoy/api/v2/ClusterLoadAssignment.ts b/packages/grpc-js/src/generated/envoy/api/v2/ClusterLoadAssignment.ts index 0f6baa54..ecb8034e 100644 --- a/packages/grpc-js/src/generated/envoy/api/v2/ClusterLoadAssignment.ts +++ b/packages/grpc-js/src/generated/envoy/api/v2/ClusterLoadAssignment.ts @@ -6,6 +6,34 @@ import { UInt32Value as _google_protobuf_UInt32Value, UInt32Value__Output as _go import { Duration as _google_protobuf_Duration, Duration__Output as _google_protobuf_Duration__Output } from '../../../google/protobuf/Duration'; import { FractionalPercent as _envoy_type_FractionalPercent, FractionalPercent__Output as _envoy_type_FractionalPercent__Output } from '../../../envoy/type/FractionalPercent'; +/** + * [#not-implemented-hide:] + */ +export interface _envoy_api_v2_ClusterLoadAssignment_Policy_DropOverload { + /** + * Identifier for the policy specifying the drop. + */ + 'category'?: (string); + /** + * Percentage of traffic that should be dropped for the category. + */ + 'drop_percentage'?: (_envoy_type_FractionalPercent); +} + +/** + * [#not-implemented-hide:] + */ +export interface _envoy_api_v2_ClusterLoadAssignment_Policy_DropOverload__Output { + /** + * Identifier for the policy specifying the drop. + */ + 'category': (string); + /** + * Percentage of traffic that should be dropped for the category. + */ + 'drop_percentage': (_envoy_type_FractionalPercent__Output); +} + /** * Load balancing policy settings. * [#next-free-field: 6] @@ -136,34 +164,6 @@ export interface _envoy_api_v2_ClusterLoadAssignment_Policy__Output { 'disable_overprovisioning': (boolean); } -/** - * [#not-implemented-hide:] - */ -export interface _envoy_api_v2_ClusterLoadAssignment_Policy_DropOverload { - /** - * Identifier for the policy specifying the drop. - */ - 'category'?: (string); - /** - * Percentage of traffic that should be dropped for the category. - */ - 'drop_percentage'?: (_envoy_type_FractionalPercent); -} - -/** - * [#not-implemented-hide:] - */ -export interface _envoy_api_v2_ClusterLoadAssignment_Policy_DropOverload__Output { - /** - * Identifier for the policy specifying the drop. - */ - 'category': (string); - /** - * Percentage of traffic that should be dropped for the category. - */ - 'drop_percentage': (_envoy_type_FractionalPercent__Output); -} - /** * Each route from RDS will map to a single cluster or traffic split across * clusters using weights expressed in the RDS WeightedCluster. diff --git a/packages/grpc-js/src/generated/envoy/api/v2/Listener.ts b/packages/grpc-js/src/generated/envoy/api/v2/Listener.ts index befc353b..9c0368ce 100644 --- a/packages/grpc-js/src/generated/envoy/api/v2/Listener.ts +++ b/packages/grpc-js/src/generated/envoy/api/v2/Listener.ts @@ -35,28 +35,6 @@ export interface _envoy_api_v2_Listener_ConnectionBalanceConfig__Output { 'balance_type': "exact_balance"; } -/** - * A connection balancer implementation that does exact balancing. This means that a lock is - * held during balancing so that connection counts are nearly exactly balanced between worker - * threads. This is "nearly" exact in the sense that a connection might close in parallel thus - * making the counts incorrect, but this should be rectified on the next accept. This balancer - * sacrifices accept throughput for accuracy and should be used when there are a small number of - * connections that rarely cycle (e.g., service mesh gRPC egress). - */ -export interface _envoy_api_v2_Listener_ConnectionBalanceConfig_ExactBalance { -} - -/** - * A connection balancer implementation that does exact balancing. This means that a lock is - * held during balancing so that connection counts are nearly exactly balanced between worker - * threads. This is "nearly" exact in the sense that a connection might close in parallel thus - * making the counts incorrect, but this should be rectified on the next accept. This balancer - * sacrifices accept throughput for accuracy and should be used when there are a small number of - * connections that rarely cycle (e.g., service mesh gRPC egress). - */ -export interface _envoy_api_v2_Listener_ConnectionBalanceConfig_ExactBalance__Output { -} - /** * [#not-implemented-hide:] */ @@ -111,6 +89,28 @@ export enum _envoy_api_v2_Listener_DrainType { MODIFY_ONLY = 1, } +/** + * A connection balancer implementation that does exact balancing. This means that a lock is + * held during balancing so that connection counts are nearly exactly balanced between worker + * threads. This is "nearly" exact in the sense that a connection might close in parallel thus + * making the counts incorrect, but this should be rectified on the next accept. This balancer + * sacrifices accept throughput for accuracy and should be used when there are a small number of + * connections that rarely cycle (e.g., service mesh gRPC egress). + */ +export interface _envoy_api_v2_Listener_ConnectionBalanceConfig_ExactBalance { +} + +/** + * A connection balancer implementation that does exact balancing. This means that a lock is + * held during balancing so that connection counts are nearly exactly balanced between worker + * threads. This is "nearly" exact in the sense that a connection might close in parallel thus + * making the counts incorrect, but this should be rectified on the next accept. This balancer + * sacrifices accept throughput for accuracy and should be used when there are a small number of + * connections that rarely cycle (e.g., service mesh gRPC egress). + */ +export interface _envoy_api_v2_Listener_ConnectionBalanceConfig_ExactBalance__Output { +} + /** * [#next-free-field: 23] */ diff --git a/packages/grpc-js/src/generated/envoy/api/v2/cluster/CircuitBreakers.ts b/packages/grpc-js/src/generated/envoy/api/v2/cluster/CircuitBreakers.ts index f5addf5f..0b2f01db 100644 --- a/packages/grpc-js/src/generated/envoy/api/v2/cluster/CircuitBreakers.ts +++ b/packages/grpc-js/src/generated/envoy/api/v2/cluster/CircuitBreakers.ts @@ -4,6 +4,42 @@ import { RoutingPriority as _envoy_api_v2_core_RoutingPriority } from '../../../ import { UInt32Value as _google_protobuf_UInt32Value, UInt32Value__Output as _google_protobuf_UInt32Value__Output } from '../../../../google/protobuf/UInt32Value'; import { Percent as _envoy_type_Percent, Percent__Output as _envoy_type_Percent__Output } from '../../../../envoy/type/Percent'; +export interface _envoy_api_v2_cluster_CircuitBreakers_Thresholds_RetryBudget { + /** + * Specifies the limit on concurrent retries as a percentage of the sum of active requests and + * active pending requests. For example, if there are 100 active requests and the + * budget_percent is set to 25, there may be 25 active retries. + * + * This parameter is optional. Defaults to 20%. + */ + 'budget_percent'?: (_envoy_type_Percent); + /** + * Specifies the minimum retry concurrency allowed for the retry budget. The limit on the + * number of active retries may never go below this number. + * + * This parameter is optional. Defaults to 3. + */ + 'min_retry_concurrency'?: (_google_protobuf_UInt32Value); +} + +export interface _envoy_api_v2_cluster_CircuitBreakers_Thresholds_RetryBudget__Output { + /** + * Specifies the limit on concurrent retries as a percentage of the sum of active requests and + * active pending requests. For example, if there are 100 active requests and the + * budget_percent is set to 25, there may be 25 active retries. + * + * This parameter is optional. Defaults to 20%. + */ + 'budget_percent': (_envoy_type_Percent__Output); + /** + * Specifies the minimum retry concurrency allowed for the retry budget. The limit on the + * number of active retries may never go below this number. + * + * This parameter is optional. Defaults to 3. + */ + 'min_retry_concurrency': (_google_protobuf_UInt32Value__Output); +} + /** * A Thresholds defines CircuitBreaker settings for a * :ref:`RoutingPriority`. @@ -128,42 +164,6 @@ export interface _envoy_api_v2_cluster_CircuitBreakers_Thresholds__Output { 'max_connection_pools': (_google_protobuf_UInt32Value__Output); } -export interface _envoy_api_v2_cluster_CircuitBreakers_Thresholds_RetryBudget { - /** - * Specifies the limit on concurrent retries as a percentage of the sum of active requests and - * active pending requests. For example, if there are 100 active requests and the - * budget_percent is set to 25, there may be 25 active retries. - * - * This parameter is optional. Defaults to 20%. - */ - 'budget_percent'?: (_envoy_type_Percent); - /** - * Specifies the minimum retry concurrency allowed for the retry budget. The limit on the - * number of active retries may never go below this number. - * - * This parameter is optional. Defaults to 3. - */ - 'min_retry_concurrency'?: (_google_protobuf_UInt32Value); -} - -export interface _envoy_api_v2_cluster_CircuitBreakers_Thresholds_RetryBudget__Output { - /** - * Specifies the limit on concurrent retries as a percentage of the sum of active requests and - * active pending requests. For example, if there are 100 active requests and the - * budget_percent is set to 25, there may be 25 active retries. - * - * This parameter is optional. Defaults to 20%. - */ - 'budget_percent': (_envoy_type_Percent__Output); - /** - * Specifies the minimum retry concurrency allowed for the retry budget. The limit on the - * number of active retries may never go below this number. - * - * This parameter is optional. Defaults to 3. - */ - 'min_retry_concurrency': (_google_protobuf_UInt32Value__Output); -} - /** * :ref:`Circuit breaking` settings can be * specified individually for each defined priority. diff --git a/packages/grpc-js/src/generated/envoy/api/v2/core/GrpcService.ts b/packages/grpc-js/src/generated/envoy/api/v2/core/GrpcService.ts index e536cb31..b67f63e4 100644 --- a/packages/grpc-js/src/generated/envoy/api/v2/core/GrpcService.ts +++ b/packages/grpc-js/src/generated/envoy/api/v2/core/GrpcService.ts @@ -3,11 +3,127 @@ import { Duration as _google_protobuf_Duration, Duration__Output as _google_protobuf_Duration__Output } from '../../../../google/protobuf/Duration'; import { HeaderValue as _envoy_api_v2_core_HeaderValue, HeaderValue__Output as _envoy_api_v2_core_HeaderValue__Output } from '../../../../envoy/api/v2/core/HeaderValue'; import { Struct as _google_protobuf_Struct, Struct__Output as _google_protobuf_Struct__Output } from '../../../../google/protobuf/Struct'; +import { DataSource as _envoy_api_v2_core_DataSource, DataSource__Output as _envoy_api_v2_core_DataSource__Output } from '../../../../envoy/api/v2/core/DataSource'; import { Empty as _google_protobuf_Empty, Empty__Output as _google_protobuf_Empty__Output } from '../../../../google/protobuf/Empty'; import { Any as _google_protobuf_Any, Any__Output as _google_protobuf_Any__Output } from '../../../../google/protobuf/Any'; -import { DataSource as _envoy_api_v2_core_DataSource, DataSource__Output as _envoy_api_v2_core_DataSource__Output } from '../../../../envoy/api/v2/core/DataSource'; import { Long } from '@grpc/proto-loader'; +/** + * [#next-free-field: 8] + */ +export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials { + /** + * Access token credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#ad3a80da696ffdaea943f0f858d7a360d. + */ + 'access_token'?: (string); + /** + * Google Compute Engine credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#a6beb3ac70ff94bd2ebbd89b8f21d1f61 + */ + 'google_compute_engine'?: (_google_protobuf_Empty); + /** + * Google refresh token credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#a96901c997b91bc6513b08491e0dca37c. + */ + 'google_refresh_token'?: (string); + /** + * Service Account JWT Access credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#a92a9f959d6102461f66ee973d8e9d3aa. + */ + 'service_account_jwt_access'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials); + /** + * Google IAM credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#a9fc1fc101b41e680d47028166e76f9d0. + */ + 'google_iam'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials); + /** + * Custom authenticator credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#a823c6a4b19ffc71fb33e90154ee2ad07. + * https://grpc.io/docs/guides/auth.html#extending-grpc-to-support-other-authentication-mechanisms. + */ + 'from_plugin'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin); + /** + * Custom security token service which implements OAuth 2.0 token exchange. + * https://tools.ietf.org/html/draft-ietf-oauth-token-exchange-16 + * See https://github.com/grpc/grpc/pull/19587. + */ + 'sts_service'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_StsService); + 'credential_specifier'?: "access_token"|"google_compute_engine"|"google_refresh_token"|"service_account_jwt_access"|"google_iam"|"from_plugin"|"sts_service"; +} + +/** + * [#next-free-field: 8] + */ +export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials__Output { + /** + * Access token credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#ad3a80da696ffdaea943f0f858d7a360d. + */ + 'access_token'?: (string); + /** + * Google Compute Engine credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#a6beb3ac70ff94bd2ebbd89b8f21d1f61 + */ + 'google_compute_engine'?: (_google_protobuf_Empty__Output); + /** + * Google refresh token credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#a96901c997b91bc6513b08491e0dca37c. + */ + 'google_refresh_token'?: (string); + /** + * Service Account JWT Access credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#a92a9f959d6102461f66ee973d8e9d3aa. + */ + 'service_account_jwt_access'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials__Output); + /** + * Google IAM credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#a9fc1fc101b41e680d47028166e76f9d0. + */ + 'google_iam'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials__Output); + /** + * Custom authenticator credentials. + * https://grpc.io/grpc/cpp/namespacegrpc.html#a823c6a4b19ffc71fb33e90154ee2ad07. + * https://grpc.io/docs/guides/auth.html#extending-grpc-to-support-other-authentication-mechanisms. + */ + 'from_plugin'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin__Output); + /** + * Custom security token service which implements OAuth 2.0 token exchange. + * https://tools.ietf.org/html/draft-ietf-oauth-token-exchange-16 + * See https://github.com/grpc/grpc/pull/19587. + */ + 'sts_service'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_StsService__Output); + 'credential_specifier': "access_token"|"google_compute_engine"|"google_refresh_token"|"service_account_jwt_access"|"google_iam"|"from_plugin"|"sts_service"; +} + +/** + * See https://grpc.io/docs/guides/auth.html#credential-types to understand Channel and Call + * credential types. + */ +export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_ChannelCredentials { + 'ssl_credentials'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_SslCredentials); + /** + * https://grpc.io/grpc/cpp/namespacegrpc.html#a6beb3ac70ff94bd2ebbd89b8f21d1f61 + */ + 'google_default'?: (_google_protobuf_Empty); + 'local_credentials'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_GoogleLocalCredentials); + 'credential_specifier'?: "ssl_credentials"|"google_default"|"local_credentials"; +} + +/** + * See https://grpc.io/docs/guides/auth.html#credential-types to understand Channel and Call + * credential types. + */ +export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_ChannelCredentials__Output { + 'ssl_credentials'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_SslCredentials__Output); + /** + * https://grpc.io/grpc/cpp/namespacegrpc.html#a6beb3ac70ff94bd2ebbd89b8f21d1f61 + */ + 'google_default'?: (_google_protobuf_Empty__Output); + 'local_credentials'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_GoogleLocalCredentials__Output); + 'credential_specifier': "ssl_credentials"|"google_default"|"local_credentials"; +} + export interface _envoy_api_v2_core_GrpcService_EnvoyGrpc { /** * The name of the upstream gRPC cluster. SSL credentials will be supplied @@ -108,94 +224,6 @@ export interface _envoy_api_v2_core_GrpcService_GoogleGrpc__Output { 'config': (_google_protobuf_Struct__Output); } -/** - * [#next-free-field: 8] - */ -export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials { - /** - * Access token credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#ad3a80da696ffdaea943f0f858d7a360d. - */ - 'access_token'?: (string); - /** - * Google Compute Engine credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#a6beb3ac70ff94bd2ebbd89b8f21d1f61 - */ - 'google_compute_engine'?: (_google_protobuf_Empty); - /** - * Google refresh token credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#a96901c997b91bc6513b08491e0dca37c. - */ - 'google_refresh_token'?: (string); - /** - * Service Account JWT Access credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#a92a9f959d6102461f66ee973d8e9d3aa. - */ - 'service_account_jwt_access'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials); - /** - * Google IAM credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#a9fc1fc101b41e680d47028166e76f9d0. - */ - 'google_iam'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials); - /** - * Custom authenticator credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#a823c6a4b19ffc71fb33e90154ee2ad07. - * https://grpc.io/docs/guides/auth.html#extending-grpc-to-support-other-authentication-mechanisms. - */ - 'from_plugin'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin); - /** - * Custom security token service which implements OAuth 2.0 token exchange. - * https://tools.ietf.org/html/draft-ietf-oauth-token-exchange-16 - * See https://github.com/grpc/grpc/pull/19587. - */ - 'sts_service'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_StsService); - 'credential_specifier'?: "access_token"|"google_compute_engine"|"google_refresh_token"|"service_account_jwt_access"|"google_iam"|"from_plugin"|"sts_service"; -} - -/** - * [#next-free-field: 8] - */ -export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials__Output { - /** - * Access token credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#ad3a80da696ffdaea943f0f858d7a360d. - */ - 'access_token'?: (string); - /** - * Google Compute Engine credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#a6beb3ac70ff94bd2ebbd89b8f21d1f61 - */ - 'google_compute_engine'?: (_google_protobuf_Empty__Output); - /** - * Google refresh token credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#a96901c997b91bc6513b08491e0dca37c. - */ - 'google_refresh_token'?: (string); - /** - * Service Account JWT Access credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#a92a9f959d6102461f66ee973d8e9d3aa. - */ - 'service_account_jwt_access'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_ServiceAccountJWTAccessCredentials__Output); - /** - * Google IAM credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#a9fc1fc101b41e680d47028166e76f9d0. - */ - 'google_iam'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials__Output); - /** - * Custom authenticator credentials. - * https://grpc.io/grpc/cpp/namespacegrpc.html#a823c6a4b19ffc71fb33e90154ee2ad07. - * https://grpc.io/docs/guides/auth.html#extending-grpc-to-support-other-authentication-mechanisms. - */ - 'from_plugin'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin__Output); - /** - * Custom security token service which implements OAuth 2.0 token exchange. - * https://tools.ietf.org/html/draft-ietf-oauth-token-exchange-16 - * See https://github.com/grpc/grpc/pull/19587. - */ - 'sts_service'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_StsService__Output); - 'credential_specifier': "access_token"|"google_compute_engine"|"google_refresh_token"|"service_account_jwt_access"|"google_iam"|"from_plugin"|"sts_service"; -} - export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_GoogleIAMCredentials { 'authorization_token'?: (string); 'authority_selector'?: (string); @@ -206,6 +234,20 @@ export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_Googl 'authority_selector': (string); } +/** + * Local channel credentials. Only UDS is supported for now. + * See https://github.com/grpc/grpc/pull/15909. + */ +export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_GoogleLocalCredentials { +} + +/** + * Local channel credentials. Only UDS is supported for now. + * See https://github.com/grpc/grpc/pull/15909. + */ +export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_GoogleLocalCredentials__Output { +} + export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_MetadataCredentialsFromPlugin { 'name'?: (string); 'config'?: (_google_protobuf_Struct); @@ -230,6 +272,42 @@ export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_Servi 'token_lifetime_seconds': (string); } +/** + * See https://grpc.io/grpc/cpp/structgrpc_1_1_ssl_credentials_options.html. + */ +export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_SslCredentials { + /** + * PEM encoded server root certificates. + */ + 'root_certs'?: (_envoy_api_v2_core_DataSource); + /** + * PEM encoded client private key. + */ + 'private_key'?: (_envoy_api_v2_core_DataSource); + /** + * PEM encoded client certificate chain. + */ + 'cert_chain'?: (_envoy_api_v2_core_DataSource); +} + +/** + * See https://grpc.io/grpc/cpp/structgrpc_1_1_ssl_credentials_options.html. + */ +export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_SslCredentials__Output { + /** + * PEM encoded server root certificates. + */ + 'root_certs': (_envoy_api_v2_core_DataSource__Output); + /** + * PEM encoded client private key. + */ + 'private_key': (_envoy_api_v2_core_DataSource__Output); + /** + * PEM encoded client certificate chain. + */ + 'cert_chain': (_envoy_api_v2_core_DataSource__Output); +} + /** * Security token service configuration that allows Google gRPC to * fetch security token from an OAuth 2.0 authorization server. @@ -338,84 +416,6 @@ export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_CallCredentials_StsSe 'actor_token_type': (string); } -/** - * See https://grpc.io/docs/guides/auth.html#credential-types to understand Channel and Call - * credential types. - */ -export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_ChannelCredentials { - 'ssl_credentials'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_SslCredentials); - /** - * https://grpc.io/grpc/cpp/namespacegrpc.html#a6beb3ac70ff94bd2ebbd89b8f21d1f61 - */ - 'google_default'?: (_google_protobuf_Empty); - 'local_credentials'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_GoogleLocalCredentials); - 'credential_specifier'?: "ssl_credentials"|"google_default"|"local_credentials"; -} - -/** - * See https://grpc.io/docs/guides/auth.html#credential-types to understand Channel and Call - * credential types. - */ -export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_ChannelCredentials__Output { - 'ssl_credentials'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_SslCredentials__Output); - /** - * https://grpc.io/grpc/cpp/namespacegrpc.html#a6beb3ac70ff94bd2ebbd89b8f21d1f61 - */ - 'google_default'?: (_google_protobuf_Empty__Output); - 'local_credentials'?: (_envoy_api_v2_core_GrpcService_GoogleGrpc_GoogleLocalCredentials__Output); - 'credential_specifier': "ssl_credentials"|"google_default"|"local_credentials"; -} - -/** - * Local channel credentials. Only UDS is supported for now. - * See https://github.com/grpc/grpc/pull/15909. - */ -export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_GoogleLocalCredentials { -} - -/** - * Local channel credentials. Only UDS is supported for now. - * See https://github.com/grpc/grpc/pull/15909. - */ -export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_GoogleLocalCredentials__Output { -} - -/** - * See https://grpc.io/grpc/cpp/structgrpc_1_1_ssl_credentials_options.html. - */ -export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_SslCredentials { - /** - * PEM encoded server root certificates. - */ - 'root_certs'?: (_envoy_api_v2_core_DataSource); - /** - * PEM encoded client private key. - */ - 'private_key'?: (_envoy_api_v2_core_DataSource); - /** - * PEM encoded client certificate chain. - */ - 'cert_chain'?: (_envoy_api_v2_core_DataSource); -} - -/** - * See https://grpc.io/grpc/cpp/structgrpc_1_1_ssl_credentials_options.html. - */ -export interface _envoy_api_v2_core_GrpcService_GoogleGrpc_SslCredentials__Output { - /** - * PEM encoded server root certificates. - */ - 'root_certs': (_envoy_api_v2_core_DataSource__Output); - /** - * PEM encoded client private key. - */ - 'private_key': (_envoy_api_v2_core_DataSource__Output); - /** - * PEM encoded client certificate chain. - */ - 'cert_chain': (_envoy_api_v2_core_DataSource__Output); -} - /** * gRPC service configuration. This is used by :ref:`ApiConfigSource * ` and filter configurations. diff --git a/packages/grpc-js/src/generated/envoy/api/v2/core/HealthCheck.ts b/packages/grpc-js/src/generated/envoy/api/v2/core/HealthCheck.ts index 662e7375..972560cd 100644 --- a/packages/grpc-js/src/generated/envoy/api/v2/core/HealthCheck.ts +++ b/packages/grpc-js/src/generated/envoy/api/v2/core/HealthCheck.ts @@ -4,12 +4,12 @@ import { Duration as _google_protobuf_Duration, Duration__Output as _google_prot import { UInt32Value as _google_protobuf_UInt32Value, UInt32Value__Output as _google_protobuf_UInt32Value__Output } from '../../../../google/protobuf/UInt32Value'; import { BoolValue as _google_protobuf_BoolValue, BoolValue__Output as _google_protobuf_BoolValue__Output } from '../../../../google/protobuf/BoolValue'; import { EventServiceConfig as _envoy_api_v2_core_EventServiceConfig, EventServiceConfig__Output as _envoy_api_v2_core_EventServiceConfig__Output } from '../../../../envoy/api/v2/core/EventServiceConfig'; -import { Struct as _google_protobuf_Struct, Struct__Output as _google_protobuf_Struct__Output } from '../../../../google/protobuf/Struct'; -import { Any as _google_protobuf_Any, Any__Output as _google_protobuf_Any__Output } from '../../../../google/protobuf/Any'; import { HeaderValueOption as _envoy_api_v2_core_HeaderValueOption, HeaderValueOption__Output as _envoy_api_v2_core_HeaderValueOption__Output } from '../../../../envoy/api/v2/core/HeaderValueOption'; import { Int64Range as _envoy_type_Int64Range, Int64Range__Output as _envoy_type_Int64Range__Output } from '../../../../envoy/type/Int64Range'; import { CodecClientType as _envoy_type_CodecClientType } from '../../../../envoy/type/CodecClientType'; import { StringMatcher as _envoy_type_matcher_StringMatcher, StringMatcher__Output as _envoy_type_matcher_StringMatcher__Output } from '../../../../envoy/type/matcher/StringMatcher'; +import { Struct as _google_protobuf_Struct, Struct__Output as _google_protobuf_Struct__Output } from '../../../../google/protobuf/Struct'; +import { Any as _google_protobuf_Any, Any__Output as _google_protobuf_Any__Output } from '../../../../google/protobuf/Any'; import { Long } from '@grpc/proto-loader'; /** diff --git a/packages/grpc-js/src/generated/envoy/api/v2/route/RouteAction.ts b/packages/grpc-js/src/generated/envoy/api/v2/route/RouteAction.ts index 02a8665a..490718e8 100644 --- a/packages/grpc-js/src/generated/envoy/api/v2/route/RouteAction.ts +++ b/packages/grpc-js/src/generated/envoy/api/v2/route/RouteAction.ts @@ -27,108 +27,6 @@ export enum _envoy_api_v2_route_RouteAction_ClusterNotFoundResponseCode { NOT_FOUND = 1, } -/** - * Specifies the route's hashing policy if the upstream cluster uses a hashing :ref:`load balancer - * `. - * [#next-free-field: 7] - */ -export interface _envoy_api_v2_route_RouteAction_HashPolicy { - /** - * Header hash policy. - */ - 'header'?: (_envoy_api_v2_route_RouteAction_HashPolicy_Header); - /** - * Cookie hash policy. - */ - 'cookie'?: (_envoy_api_v2_route_RouteAction_HashPolicy_Cookie); - /** - * Connection properties hash policy. - */ - 'connection_properties'?: (_envoy_api_v2_route_RouteAction_HashPolicy_ConnectionProperties); - /** - * Query parameter hash policy. - */ - 'query_parameter'?: (_envoy_api_v2_route_RouteAction_HashPolicy_QueryParameter); - /** - * Filter state hash policy. - */ - 'filter_state'?: (_envoy_api_v2_route_RouteAction_HashPolicy_FilterState); - /** - * The flag that short-circuits the hash computing. This field provides a - * 'fallback' style of configuration: "if a terminal policy doesn't work, - * fallback to rest of the policy list", it saves time when the terminal - * policy works. - * - * If true, and there is already a hash computed, ignore rest of the - * list of hash polices. - * For example, if the following hash methods are configured: - * - * ========= ======== - * specifier terminal - * ========= ======== - * Header A true - * Header B false - * Header C false - * ========= ======== - * - * The generateHash process ends if policy "header A" generates a hash, as - * it's a terminal policy. - */ - 'terminal'?: (boolean); - 'policy_specifier'?: "header"|"cookie"|"connection_properties"|"query_parameter"|"filter_state"; -} - -/** - * Specifies the route's hashing policy if the upstream cluster uses a hashing :ref:`load balancer - * `. - * [#next-free-field: 7] - */ -export interface _envoy_api_v2_route_RouteAction_HashPolicy__Output { - /** - * Header hash policy. - */ - 'header'?: (_envoy_api_v2_route_RouteAction_HashPolicy_Header__Output); - /** - * Cookie hash policy. - */ - 'cookie'?: (_envoy_api_v2_route_RouteAction_HashPolicy_Cookie__Output); - /** - * Connection properties hash policy. - */ - 'connection_properties'?: (_envoy_api_v2_route_RouteAction_HashPolicy_ConnectionProperties__Output); - /** - * Query parameter hash policy. - */ - 'query_parameter'?: (_envoy_api_v2_route_RouteAction_HashPolicy_QueryParameter__Output); - /** - * Filter state hash policy. - */ - 'filter_state'?: (_envoy_api_v2_route_RouteAction_HashPolicy_FilterState__Output); - /** - * The flag that short-circuits the hash computing. This field provides a - * 'fallback' style of configuration: "if a terminal policy doesn't work, - * fallback to rest of the policy list", it saves time when the terminal - * policy works. - * - * If true, and there is already a hash computed, ignore rest of the - * list of hash polices. - * For example, if the following hash methods are configured: - * - * ========= ======== - * specifier terminal - * ========= ======== - * Header A true - * Header B false - * Header C false - * ========= ======== - * - * The generateHash process ends if policy "header A" generates a hash, as - * it's a terminal policy. - */ - 'terminal': (boolean); - 'policy_specifier': "header"|"cookie"|"connection_properties"|"query_parameter"|"filter_state"; -} - export interface _envoy_api_v2_route_RouteAction_HashPolicy_ConnectionProperties { /** * Hash on source IP address. @@ -233,6 +131,108 @@ export interface _envoy_api_v2_route_RouteAction_HashPolicy_FilterState__Output 'key': (string); } +/** + * Specifies the route's hashing policy if the upstream cluster uses a hashing :ref:`load balancer + * `. + * [#next-free-field: 7] + */ +export interface _envoy_api_v2_route_RouteAction_HashPolicy { + /** + * Header hash policy. + */ + 'header'?: (_envoy_api_v2_route_RouteAction_HashPolicy_Header); + /** + * Cookie hash policy. + */ + 'cookie'?: (_envoy_api_v2_route_RouteAction_HashPolicy_Cookie); + /** + * Connection properties hash policy. + */ + 'connection_properties'?: (_envoy_api_v2_route_RouteAction_HashPolicy_ConnectionProperties); + /** + * Query parameter hash policy. + */ + 'query_parameter'?: (_envoy_api_v2_route_RouteAction_HashPolicy_QueryParameter); + /** + * Filter state hash policy. + */ + 'filter_state'?: (_envoy_api_v2_route_RouteAction_HashPolicy_FilterState); + /** + * The flag that short-circuits the hash computing. This field provides a + * 'fallback' style of configuration: "if a terminal policy doesn't work, + * fallback to rest of the policy list", it saves time when the terminal + * policy works. + * + * If true, and there is already a hash computed, ignore rest of the + * list of hash polices. + * For example, if the following hash methods are configured: + * + * ========= ======== + * specifier terminal + * ========= ======== + * Header A true + * Header B false + * Header C false + * ========= ======== + * + * The generateHash process ends if policy "header A" generates a hash, as + * it's a terminal policy. + */ + 'terminal'?: (boolean); + 'policy_specifier'?: "header"|"cookie"|"connection_properties"|"query_parameter"|"filter_state"; +} + +/** + * Specifies the route's hashing policy if the upstream cluster uses a hashing :ref:`load balancer + * `. + * [#next-free-field: 7] + */ +export interface _envoy_api_v2_route_RouteAction_HashPolicy__Output { + /** + * Header hash policy. + */ + 'header'?: (_envoy_api_v2_route_RouteAction_HashPolicy_Header__Output); + /** + * Cookie hash policy. + */ + 'cookie'?: (_envoy_api_v2_route_RouteAction_HashPolicy_Cookie__Output); + /** + * Connection properties hash policy. + */ + 'connection_properties'?: (_envoy_api_v2_route_RouteAction_HashPolicy_ConnectionProperties__Output); + /** + * Query parameter hash policy. + */ + 'query_parameter'?: (_envoy_api_v2_route_RouteAction_HashPolicy_QueryParameter__Output); + /** + * Filter state hash policy. + */ + 'filter_state'?: (_envoy_api_v2_route_RouteAction_HashPolicy_FilterState__Output); + /** + * The flag that short-circuits the hash computing. This field provides a + * 'fallback' style of configuration: "if a terminal policy doesn't work, + * fallback to rest of the policy list", it saves time when the terminal + * policy works. + * + * If true, and there is already a hash computed, ignore rest of the + * list of hash polices. + * For example, if the following hash methods are configured: + * + * ========= ======== + * specifier terminal + * ========= ======== + * Header A true + * Header B false + * Header C false + * ========= ======== + * + * The generateHash process ends if policy "header A" generates a hash, as + * it's a terminal policy. + */ + 'terminal': (boolean); + 'policy_specifier': "header"|"cookie"|"connection_properties"|"query_parameter"|"filter_state"; +} + export interface _envoy_api_v2_route_RouteAction_HashPolicy_Header { /** * The name of the request header that will be used to obtain the hash @@ -249,6 +249,16 @@ export interface _envoy_api_v2_route_RouteAction_HashPolicy_Header__Output { 'header_name': (string); } +// Original file: deps/envoy-api/envoy/api/v2/route/route_components.proto + +/** + * Configures :ref:`internal redirect ` behavior. + */ +export enum _envoy_api_v2_route_RouteAction_InternalRedirectAction { + PASS_THROUGH_INTERNAL_REDIRECT = 0, + HANDLE_INTERNAL_REDIRECT = 1, +} + export interface _envoy_api_v2_route_RouteAction_HashPolicy_QueryParameter { /** * The name of the URL query parameter that will be used to obtain the hash @@ -267,16 +277,6 @@ export interface _envoy_api_v2_route_RouteAction_HashPolicy_QueryParameter__Outp 'name': (string); } -// Original file: deps/envoy-api/envoy/api/v2/route/route_components.proto - -/** - * Configures :ref:`internal redirect ` behavior. - */ -export enum _envoy_api_v2_route_RouteAction_InternalRedirectAction { - PASS_THROUGH_INTERNAL_REDIRECT = 0, - HANDLE_INTERNAL_REDIRECT = 1, -} - /** * The router is capable of shadowing traffic from one cluster to another. The current * implementation is "fire and forget," meaning Envoy will not wait for the shadow cluster to diff --git a/packages/grpc-js/src/generated/envoy/service/discovery/v2/AggregatedDiscoveryService.ts b/packages/grpc-js/src/generated/envoy/service/discovery/v2/AggregatedDiscoveryService.ts new file mode 100644 index 00000000..32cc9ba5 --- /dev/null +++ b/packages/grpc-js/src/generated/envoy/service/discovery/v2/AggregatedDiscoveryService.ts @@ -0,0 +1,52 @@ +// Original file: deps/envoy-api/envoy/service/discovery/v2/ads.proto + +import * as grpc from '../../../../../index' +import { DeltaDiscoveryRequest as _envoy_api_v2_DeltaDiscoveryRequest, DeltaDiscoveryRequest__Output as _envoy_api_v2_DeltaDiscoveryRequest__Output } from '../../../../envoy/api/v2/DeltaDiscoveryRequest'; +import { DeltaDiscoveryResponse as _envoy_api_v2_DeltaDiscoveryResponse, DeltaDiscoveryResponse__Output as _envoy_api_v2_DeltaDiscoveryResponse__Output } from '../../../../envoy/api/v2/DeltaDiscoveryResponse'; +import { DiscoveryRequest as _envoy_api_v2_DiscoveryRequest, DiscoveryRequest__Output as _envoy_api_v2_DiscoveryRequest__Output } from '../../../../envoy/api/v2/DiscoveryRequest'; +import { DiscoveryResponse as _envoy_api_v2_DiscoveryResponse, DiscoveryResponse__Output as _envoy_api_v2_DiscoveryResponse__Output } from '../../../../envoy/api/v2/DiscoveryResponse'; + +/** + * See https://github.com/lyft/envoy-api#apis for a description of the role of + * ADS and how it is intended to be used by a management server. ADS requests + * have the same structure as their singleton xDS counterparts, but can + * multiplex many resource types on a single stream. The type_url in the + * DiscoveryRequest/DiscoveryResponse provides sufficient information to recover + * the multiplexed singleton APIs at the Envoy instance and management server. + */ +export interface AggregatedDiscoveryServiceClient extends grpc.Client { + DeltaAggregatedResources(metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientDuplexStream<_envoy_api_v2_DeltaDiscoveryRequest, _envoy_api_v2_DeltaDiscoveryResponse__Output>; + DeltaAggregatedResources(options?: grpc.CallOptions): grpc.ClientDuplexStream<_envoy_api_v2_DeltaDiscoveryRequest, _envoy_api_v2_DeltaDiscoveryResponse__Output>; + deltaAggregatedResources(metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientDuplexStream<_envoy_api_v2_DeltaDiscoveryRequest, _envoy_api_v2_DeltaDiscoveryResponse__Output>; + deltaAggregatedResources(options?: grpc.CallOptions): grpc.ClientDuplexStream<_envoy_api_v2_DeltaDiscoveryRequest, _envoy_api_v2_DeltaDiscoveryResponse__Output>; + + /** + * This is a gRPC-only API. + */ + StreamAggregatedResources(metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientDuplexStream<_envoy_api_v2_DiscoveryRequest, _envoy_api_v2_DiscoveryResponse__Output>; + StreamAggregatedResources(options?: grpc.CallOptions): grpc.ClientDuplexStream<_envoy_api_v2_DiscoveryRequest, _envoy_api_v2_DiscoveryResponse__Output>; + /** + * This is a gRPC-only API. + */ + streamAggregatedResources(metadata: grpc.Metadata, options?: grpc.CallOptions): grpc.ClientDuplexStream<_envoy_api_v2_DiscoveryRequest, _envoy_api_v2_DiscoveryResponse__Output>; + streamAggregatedResources(options?: grpc.CallOptions): grpc.ClientDuplexStream<_envoy_api_v2_DiscoveryRequest, _envoy_api_v2_DiscoveryResponse__Output>; + +} + +/** + * See https://github.com/lyft/envoy-api#apis for a description of the role of + * ADS and how it is intended to be used by a management server. ADS requests + * have the same structure as their singleton xDS counterparts, but can + * multiplex many resource types on a single stream. The type_url in the + * DiscoveryRequest/DiscoveryResponse provides sufficient information to recover + * the multiplexed singleton APIs at the Envoy instance and management server. + */ +export interface AggregatedDiscoveryServiceHandlers { + DeltaAggregatedResources(call: grpc.ServerDuplexStream<_envoy_api_v2_DeltaDiscoveryRequest, _envoy_api_v2_DeltaDiscoveryResponse__Output>): void; + + /** + * This is a gRPC-only API. + */ + StreamAggregatedResources(call: grpc.ServerDuplexStream<_envoy_api_v2_DiscoveryRequest, _envoy_api_v2_DiscoveryResponse__Output>): void; + +} diff --git a/packages/grpc-js/src/generated/listener.ts b/packages/grpc-js/src/generated/listener.ts index 4bc0d85c..040c1d52 100644 --- a/packages/grpc-js/src/generated/listener.ts +++ b/packages/grpc-js/src/generated/listener.ts @@ -1,2703 +1,6 @@ import * as grpc from '../index'; import { ServiceDefinition, EnumTypeDefinition, MessageTypeDefinition } from '@grpc/proto-loader'; -import { Listener as _envoy_api_v2_Listener, Listener__Output as _envoy_api_v2_Listener__Output } from './envoy/api/v2/Listener'; -import { CertificateValidationContext as _envoy_api_v2_auth_CertificateValidationContext, CertificateValidationContext__Output as _envoy_api_v2_auth_CertificateValidationContext__Output } from './envoy/api/v2/auth/CertificateValidationContext'; -import { CommonTlsContext as _envoy_api_v2_auth_CommonTlsContext, CommonTlsContext__Output as _envoy_api_v2_auth_CommonTlsContext__Output } from './envoy/api/v2/auth/CommonTlsContext'; -import { DownstreamTlsContext as _envoy_api_v2_auth_DownstreamTlsContext, DownstreamTlsContext__Output as _envoy_api_v2_auth_DownstreamTlsContext__Output } from './envoy/api/v2/auth/DownstreamTlsContext'; -import { GenericSecret as _envoy_api_v2_auth_GenericSecret, GenericSecret__Output as _envoy_api_v2_auth_GenericSecret__Output } from './envoy/api/v2/auth/GenericSecret'; -import { PrivateKeyProvider as _envoy_api_v2_auth_PrivateKeyProvider, PrivateKeyProvider__Output as _envoy_api_v2_auth_PrivateKeyProvider__Output } from './envoy/api/v2/auth/PrivateKeyProvider'; -import { SdsSecretConfig as _envoy_api_v2_auth_SdsSecretConfig, SdsSecretConfig__Output as _envoy_api_v2_auth_SdsSecretConfig__Output } from './envoy/api/v2/auth/SdsSecretConfig'; -import { Secret as _envoy_api_v2_auth_Secret, Secret__Output as _envoy_api_v2_auth_Secret__Output } from './envoy/api/v2/auth/Secret'; -import { TlsCertificate as _envoy_api_v2_auth_TlsCertificate, TlsCertificate__Output as _envoy_api_v2_auth_TlsCertificate__Output } from './envoy/api/v2/auth/TlsCertificate'; -import { TlsParameters as _envoy_api_v2_auth_TlsParameters, TlsParameters__Output as _envoy_api_v2_auth_TlsParameters__Output } from './envoy/api/v2/auth/TlsParameters'; -import { TlsSessionTicketKeys as _envoy_api_v2_auth_TlsSessionTicketKeys, TlsSessionTicketKeys__Output as _envoy_api_v2_auth_TlsSessionTicketKeys__Output } from './envoy/api/v2/auth/TlsSessionTicketKeys'; -import { UpstreamTlsContext as _envoy_api_v2_auth_UpstreamTlsContext, UpstreamTlsContext__Output as _envoy_api_v2_auth_UpstreamTlsContext__Output } from './envoy/api/v2/auth/UpstreamTlsContext'; -import { Address as _envoy_api_v2_core_Address, Address__Output as _envoy_api_v2_core_Address__Output } from './envoy/api/v2/core/Address'; -import { AggregatedConfigSource as _envoy_api_v2_core_AggregatedConfigSource, AggregatedConfigSource__Output as _envoy_api_v2_core_AggregatedConfigSource__Output } from './envoy/api/v2/core/AggregatedConfigSource'; -import { ApiConfigSource as _envoy_api_v2_core_ApiConfigSource, ApiConfigSource__Output as _envoy_api_v2_core_ApiConfigSource__Output } from './envoy/api/v2/core/ApiConfigSource'; -import { ApiVersion as _envoy_api_v2_core_ApiVersion } from './envoy/api/v2/core/ApiVersion'; -import { AsyncDataSource as _envoy_api_v2_core_AsyncDataSource, AsyncDataSource__Output as _envoy_api_v2_core_AsyncDataSource__Output } from './envoy/api/v2/core/AsyncDataSource'; -import { BackoffStrategy as _envoy_api_v2_core_BackoffStrategy, BackoffStrategy__Output as _envoy_api_v2_core_BackoffStrategy__Output } from './envoy/api/v2/core/BackoffStrategy'; -import { BindConfig as _envoy_api_v2_core_BindConfig, BindConfig__Output as _envoy_api_v2_core_BindConfig__Output } from './envoy/api/v2/core/BindConfig'; -import { BuildVersion as _envoy_api_v2_core_BuildVersion, BuildVersion__Output as _envoy_api_v2_core_BuildVersion__Output } from './envoy/api/v2/core/BuildVersion'; -import { CidrRange as _envoy_api_v2_core_CidrRange, CidrRange__Output as _envoy_api_v2_core_CidrRange__Output } from './envoy/api/v2/core/CidrRange'; -import { ConfigSource as _envoy_api_v2_core_ConfigSource, ConfigSource__Output as _envoy_api_v2_core_ConfigSource__Output } from './envoy/api/v2/core/ConfigSource'; -import { ControlPlane as _envoy_api_v2_core_ControlPlane, ControlPlane__Output as _envoy_api_v2_core_ControlPlane__Output } from './envoy/api/v2/core/ControlPlane'; -import { DataSource as _envoy_api_v2_core_DataSource, DataSource__Output as _envoy_api_v2_core_DataSource__Output } from './envoy/api/v2/core/DataSource'; -import { Extension as _envoy_api_v2_core_Extension, Extension__Output as _envoy_api_v2_core_Extension__Output } from './envoy/api/v2/core/Extension'; -import { GrpcService as _envoy_api_v2_core_GrpcService, GrpcService__Output as _envoy_api_v2_core_GrpcService__Output } from './envoy/api/v2/core/GrpcService'; -import { HeaderMap as _envoy_api_v2_core_HeaderMap, HeaderMap__Output as _envoy_api_v2_core_HeaderMap__Output } from './envoy/api/v2/core/HeaderMap'; -import { HeaderValue as _envoy_api_v2_core_HeaderValue, HeaderValue__Output as _envoy_api_v2_core_HeaderValue__Output } from './envoy/api/v2/core/HeaderValue'; -import { HeaderValueOption as _envoy_api_v2_core_HeaderValueOption, HeaderValueOption__Output as _envoy_api_v2_core_HeaderValueOption__Output } from './envoy/api/v2/core/HeaderValueOption'; -import { HttpUri as _envoy_api_v2_core_HttpUri, HttpUri__Output as _envoy_api_v2_core_HttpUri__Output } from './envoy/api/v2/core/HttpUri'; -import { Locality as _envoy_api_v2_core_Locality, Locality__Output as _envoy_api_v2_core_Locality__Output } from './envoy/api/v2/core/Locality'; -import { Metadata as _envoy_api_v2_core_Metadata, Metadata__Output as _envoy_api_v2_core_Metadata__Output } from './envoy/api/v2/core/Metadata'; -import { Node as _envoy_api_v2_core_Node, Node__Output as _envoy_api_v2_core_Node__Output } from './envoy/api/v2/core/Node'; -import { Pipe as _envoy_api_v2_core_Pipe, Pipe__Output as _envoy_api_v2_core_Pipe__Output } from './envoy/api/v2/core/Pipe'; -import { RateLimitSettings as _envoy_api_v2_core_RateLimitSettings, RateLimitSettings__Output as _envoy_api_v2_core_RateLimitSettings__Output } from './envoy/api/v2/core/RateLimitSettings'; -import { RemoteDataSource as _envoy_api_v2_core_RemoteDataSource, RemoteDataSource__Output as _envoy_api_v2_core_RemoteDataSource__Output } from './envoy/api/v2/core/RemoteDataSource'; -import { RequestMethod as _envoy_api_v2_core_RequestMethod } from './envoy/api/v2/core/RequestMethod'; -import { RetryPolicy as _envoy_api_v2_core_RetryPolicy, RetryPolicy__Output as _envoy_api_v2_core_RetryPolicy__Output } from './envoy/api/v2/core/RetryPolicy'; -import { RoutingPriority as _envoy_api_v2_core_RoutingPriority } from './envoy/api/v2/core/RoutingPriority'; -import { RuntimeDouble as _envoy_api_v2_core_RuntimeDouble, RuntimeDouble__Output as _envoy_api_v2_core_RuntimeDouble__Output } from './envoy/api/v2/core/RuntimeDouble'; -import { RuntimeFeatureFlag as _envoy_api_v2_core_RuntimeFeatureFlag, RuntimeFeatureFlag__Output as _envoy_api_v2_core_RuntimeFeatureFlag__Output } from './envoy/api/v2/core/RuntimeFeatureFlag'; -import { RuntimeFractionalPercent as _envoy_api_v2_core_RuntimeFractionalPercent, RuntimeFractionalPercent__Output as _envoy_api_v2_core_RuntimeFractionalPercent__Output } from './envoy/api/v2/core/RuntimeFractionalPercent'; -import { RuntimeUInt32 as _envoy_api_v2_core_RuntimeUInt32, RuntimeUInt32__Output as _envoy_api_v2_core_RuntimeUInt32__Output } from './envoy/api/v2/core/RuntimeUInt32'; -import { SelfConfigSource as _envoy_api_v2_core_SelfConfigSource, SelfConfigSource__Output as _envoy_api_v2_core_SelfConfigSource__Output } from './envoy/api/v2/core/SelfConfigSource'; -import { SocketAddress as _envoy_api_v2_core_SocketAddress, SocketAddress__Output as _envoy_api_v2_core_SocketAddress__Output } from './envoy/api/v2/core/SocketAddress'; -import { SocketOption as _envoy_api_v2_core_SocketOption, SocketOption__Output as _envoy_api_v2_core_SocketOption__Output } from './envoy/api/v2/core/SocketOption'; -import { TcpKeepalive as _envoy_api_v2_core_TcpKeepalive, TcpKeepalive__Output as _envoy_api_v2_core_TcpKeepalive__Output } from './envoy/api/v2/core/TcpKeepalive'; -import { TrafficDirection as _envoy_api_v2_core_TrafficDirection } from './envoy/api/v2/core/TrafficDirection'; -import { TransportSocket as _envoy_api_v2_core_TransportSocket, TransportSocket__Output as _envoy_api_v2_core_TransportSocket__Output } from './envoy/api/v2/core/TransportSocket'; -import { ActiveRawUdpListenerConfig as _envoy_api_v2_listener_ActiveRawUdpListenerConfig, ActiveRawUdpListenerConfig__Output as _envoy_api_v2_listener_ActiveRawUdpListenerConfig__Output } from './envoy/api/v2/listener/ActiveRawUdpListenerConfig'; -import { Filter as _envoy_api_v2_listener_Filter, Filter__Output as _envoy_api_v2_listener_Filter__Output } from './envoy/api/v2/listener/Filter'; -import { FilterChain as _envoy_api_v2_listener_FilterChain, FilterChain__Output as _envoy_api_v2_listener_FilterChain__Output } from './envoy/api/v2/listener/FilterChain'; -import { FilterChainMatch as _envoy_api_v2_listener_FilterChainMatch, FilterChainMatch__Output as _envoy_api_v2_listener_FilterChainMatch__Output } from './envoy/api/v2/listener/FilterChainMatch'; -import { ListenerFilter as _envoy_api_v2_listener_ListenerFilter, ListenerFilter__Output as _envoy_api_v2_listener_ListenerFilter__Output } from './envoy/api/v2/listener/ListenerFilter'; -import { ListenerFilterChainMatchPredicate as _envoy_api_v2_listener_ListenerFilterChainMatchPredicate, ListenerFilterChainMatchPredicate__Output as _envoy_api_v2_listener_ListenerFilterChainMatchPredicate__Output } from './envoy/api/v2/listener/ListenerFilterChainMatchPredicate'; -import { UdpListenerConfig as _envoy_api_v2_listener_UdpListenerConfig, UdpListenerConfig__Output as _envoy_api_v2_listener_UdpListenerConfig__Output } from './envoy/api/v2/listener/UdpListenerConfig'; -import { CorsPolicy as _envoy_api_v2_route_CorsPolicy, CorsPolicy__Output as _envoy_api_v2_route_CorsPolicy__Output } from './envoy/api/v2/route/CorsPolicy'; -import { Decorator as _envoy_api_v2_route_Decorator, Decorator__Output as _envoy_api_v2_route_Decorator__Output } from './envoy/api/v2/route/Decorator'; -import { DirectResponseAction as _envoy_api_v2_route_DirectResponseAction, DirectResponseAction__Output as _envoy_api_v2_route_DirectResponseAction__Output } from './envoy/api/v2/route/DirectResponseAction'; -import { FilterAction as _envoy_api_v2_route_FilterAction, FilterAction__Output as _envoy_api_v2_route_FilterAction__Output } from './envoy/api/v2/route/FilterAction'; -import { HeaderMatcher as _envoy_api_v2_route_HeaderMatcher, HeaderMatcher__Output as _envoy_api_v2_route_HeaderMatcher__Output } from './envoy/api/v2/route/HeaderMatcher'; -import { HedgePolicy as _envoy_api_v2_route_HedgePolicy, HedgePolicy__Output as _envoy_api_v2_route_HedgePolicy__Output } from './envoy/api/v2/route/HedgePolicy'; -import { QueryParameterMatcher as _envoy_api_v2_route_QueryParameterMatcher, QueryParameterMatcher__Output as _envoy_api_v2_route_QueryParameterMatcher__Output } from './envoy/api/v2/route/QueryParameterMatcher'; -import { RateLimit as _envoy_api_v2_route_RateLimit, RateLimit__Output as _envoy_api_v2_route_RateLimit__Output } from './envoy/api/v2/route/RateLimit'; -import { RedirectAction as _envoy_api_v2_route_RedirectAction, RedirectAction__Output as _envoy_api_v2_route_RedirectAction__Output } from './envoy/api/v2/route/RedirectAction'; -import { RetryPolicy as _envoy_api_v2_route_RetryPolicy, RetryPolicy__Output as _envoy_api_v2_route_RetryPolicy__Output } from './envoy/api/v2/route/RetryPolicy'; -import { Route as _envoy_api_v2_route_Route, Route__Output as _envoy_api_v2_route_Route__Output } from './envoy/api/v2/route/Route'; -import { RouteAction as _envoy_api_v2_route_RouteAction, RouteAction__Output as _envoy_api_v2_route_RouteAction__Output } from './envoy/api/v2/route/RouteAction'; -import { RouteMatch as _envoy_api_v2_route_RouteMatch, RouteMatch__Output as _envoy_api_v2_route_RouteMatch__Output } from './envoy/api/v2/route/RouteMatch'; -import { Tracing as _envoy_api_v2_route_Tracing, Tracing__Output as _envoy_api_v2_route_Tracing__Output } from './envoy/api/v2/route/Tracing'; -import { VirtualCluster as _envoy_api_v2_route_VirtualCluster, VirtualCluster__Output as _envoy_api_v2_route_VirtualCluster__Output } from './envoy/api/v2/route/VirtualCluster'; -import { VirtualHost as _envoy_api_v2_route_VirtualHost, VirtualHost__Output as _envoy_api_v2_route_VirtualHost__Output } from './envoy/api/v2/route/VirtualHost'; -import { WeightedCluster as _envoy_api_v2_route_WeightedCluster, WeightedCluster__Output as _envoy_api_v2_route_WeightedCluster__Output } from './envoy/api/v2/route/WeightedCluster'; -import { AccessLog as _envoy_config_filter_accesslog_v2_AccessLog, AccessLog__Output as _envoy_config_filter_accesslog_v2_AccessLog__Output } from './envoy/config/filter/accesslog/v2/AccessLog'; -import { AccessLogFilter as _envoy_config_filter_accesslog_v2_AccessLogFilter, AccessLogFilter__Output as _envoy_config_filter_accesslog_v2_AccessLogFilter__Output } from './envoy/config/filter/accesslog/v2/AccessLogFilter'; -import { AndFilter as _envoy_config_filter_accesslog_v2_AndFilter, AndFilter__Output as _envoy_config_filter_accesslog_v2_AndFilter__Output } from './envoy/config/filter/accesslog/v2/AndFilter'; -import { ComparisonFilter as _envoy_config_filter_accesslog_v2_ComparisonFilter, ComparisonFilter__Output as _envoy_config_filter_accesslog_v2_ComparisonFilter__Output } from './envoy/config/filter/accesslog/v2/ComparisonFilter'; -import { DurationFilter as _envoy_config_filter_accesslog_v2_DurationFilter, DurationFilter__Output as _envoy_config_filter_accesslog_v2_DurationFilter__Output } from './envoy/config/filter/accesslog/v2/DurationFilter'; -import { ExtensionFilter as _envoy_config_filter_accesslog_v2_ExtensionFilter, ExtensionFilter__Output as _envoy_config_filter_accesslog_v2_ExtensionFilter__Output } from './envoy/config/filter/accesslog/v2/ExtensionFilter'; -import { GrpcStatusFilter as _envoy_config_filter_accesslog_v2_GrpcStatusFilter, GrpcStatusFilter__Output as _envoy_config_filter_accesslog_v2_GrpcStatusFilter__Output } from './envoy/config/filter/accesslog/v2/GrpcStatusFilter'; -import { HeaderFilter as _envoy_config_filter_accesslog_v2_HeaderFilter, HeaderFilter__Output as _envoy_config_filter_accesslog_v2_HeaderFilter__Output } from './envoy/config/filter/accesslog/v2/HeaderFilter'; -import { NotHealthCheckFilter as _envoy_config_filter_accesslog_v2_NotHealthCheckFilter, NotHealthCheckFilter__Output as _envoy_config_filter_accesslog_v2_NotHealthCheckFilter__Output } from './envoy/config/filter/accesslog/v2/NotHealthCheckFilter'; -import { OrFilter as _envoy_config_filter_accesslog_v2_OrFilter, OrFilter__Output as _envoy_config_filter_accesslog_v2_OrFilter__Output } from './envoy/config/filter/accesslog/v2/OrFilter'; -import { ResponseFlagFilter as _envoy_config_filter_accesslog_v2_ResponseFlagFilter, ResponseFlagFilter__Output as _envoy_config_filter_accesslog_v2_ResponseFlagFilter__Output } from './envoy/config/filter/accesslog/v2/ResponseFlagFilter'; -import { RuntimeFilter as _envoy_config_filter_accesslog_v2_RuntimeFilter, RuntimeFilter__Output as _envoy_config_filter_accesslog_v2_RuntimeFilter__Output } from './envoy/config/filter/accesslog/v2/RuntimeFilter'; -import { StatusCodeFilter as _envoy_config_filter_accesslog_v2_StatusCodeFilter, StatusCodeFilter__Output as _envoy_config_filter_accesslog_v2_StatusCodeFilter__Output } from './envoy/config/filter/accesslog/v2/StatusCodeFilter'; -import { TraceableFilter as _envoy_config_filter_accesslog_v2_TraceableFilter, TraceableFilter__Output as _envoy_config_filter_accesslog_v2_TraceableFilter__Output } from './envoy/config/filter/accesslog/v2/TraceableFilter'; -import { ApiListener as _envoy_config_listener_v2_ApiListener, ApiListener__Output as _envoy_config_listener_v2_ApiListener__Output } from './envoy/config/listener/v2/ApiListener'; -import { DoubleRange as _envoy_type_DoubleRange, DoubleRange__Output as _envoy_type_DoubleRange__Output } from './envoy/type/DoubleRange'; -import { FractionalPercent as _envoy_type_FractionalPercent, FractionalPercent__Output as _envoy_type_FractionalPercent__Output } from './envoy/type/FractionalPercent'; -import { Int32Range as _envoy_type_Int32Range, Int32Range__Output as _envoy_type_Int32Range__Output } from './envoy/type/Int32Range'; -import { Int64Range as _envoy_type_Int64Range, Int64Range__Output as _envoy_type_Int64Range__Output } from './envoy/type/Int64Range'; -import { Percent as _envoy_type_Percent, Percent__Output as _envoy_type_Percent__Output } from './envoy/type/Percent'; -import { SemanticVersion as _envoy_type_SemanticVersion, SemanticVersion__Output as _envoy_type_SemanticVersion__Output } from './envoy/type/SemanticVersion'; -import { ListStringMatcher as _envoy_type_matcher_ListStringMatcher, ListStringMatcher__Output as _envoy_type_matcher_ListStringMatcher__Output } from './envoy/type/matcher/ListStringMatcher'; -import { RegexMatchAndSubstitute as _envoy_type_matcher_RegexMatchAndSubstitute, RegexMatchAndSubstitute__Output as _envoy_type_matcher_RegexMatchAndSubstitute__Output } from './envoy/type/matcher/RegexMatchAndSubstitute'; -import { RegexMatcher as _envoy_type_matcher_RegexMatcher, RegexMatcher__Output as _envoy_type_matcher_RegexMatcher__Output } from './envoy/type/matcher/RegexMatcher'; -import { StringMatcher as _envoy_type_matcher_StringMatcher, StringMatcher__Output as _envoy_type_matcher_StringMatcher__Output } from './envoy/type/matcher/StringMatcher'; -import { MetadataKey as _envoy_type_metadata_v2_MetadataKey, MetadataKey__Output as _envoy_type_metadata_v2_MetadataKey__Output } from './envoy/type/metadata/v2/MetadataKey'; -import { MetadataKind as _envoy_type_metadata_v2_MetadataKind, MetadataKind__Output as _envoy_type_metadata_v2_MetadataKind__Output } from './envoy/type/metadata/v2/MetadataKind'; -import { CustomTag as _envoy_type_tracing_v2_CustomTag, CustomTag__Output as _envoy_type_tracing_v2_CustomTag__Output } from './envoy/type/tracing/v2/CustomTag'; -import { CustomHttpPattern as _google_api_CustomHttpPattern, CustomHttpPattern__Output as _google_api_CustomHttpPattern__Output } from './google/api/CustomHttpPattern'; -import { Http as _google_api_Http, Http__Output as _google_api_Http__Output } from './google/api/Http'; -import { HttpRule as _google_api_HttpRule, HttpRule__Output as _google_api_HttpRule__Output } from './google/api/HttpRule'; -import { Any as _google_protobuf_Any, Any__Output as _google_protobuf_Any__Output } from './google/protobuf/Any'; -import { BoolValue as _google_protobuf_BoolValue, BoolValue__Output as _google_protobuf_BoolValue__Output } from './google/protobuf/BoolValue'; -import { BytesValue as _google_protobuf_BytesValue, BytesValue__Output as _google_protobuf_BytesValue__Output } from './google/protobuf/BytesValue'; -import { DescriptorProto as _google_protobuf_DescriptorProto, DescriptorProto__Output as _google_protobuf_DescriptorProto__Output } from './google/protobuf/DescriptorProto'; -import { DoubleValue as _google_protobuf_DoubleValue, DoubleValue__Output as _google_protobuf_DoubleValue__Output } from './google/protobuf/DoubleValue'; -import { Duration as _google_protobuf_Duration, Duration__Output as _google_protobuf_Duration__Output } from './google/protobuf/Duration'; -import { Empty as _google_protobuf_Empty, Empty__Output as _google_protobuf_Empty__Output } from './google/protobuf/Empty'; -import { EnumDescriptorProto as _google_protobuf_EnumDescriptorProto, EnumDescriptorProto__Output as _google_protobuf_EnumDescriptorProto__Output } from './google/protobuf/EnumDescriptorProto'; -import { EnumOptions as _google_protobuf_EnumOptions, EnumOptions__Output as _google_protobuf_EnumOptions__Output } from './google/protobuf/EnumOptions'; -import { EnumValueDescriptorProto as _google_protobuf_EnumValueDescriptorProto, EnumValueDescriptorProto__Output as _google_protobuf_EnumValueDescriptorProto__Output } from './google/protobuf/EnumValueDescriptorProto'; -import { EnumValueOptions as _google_protobuf_EnumValueOptions, EnumValueOptions__Output as _google_protobuf_EnumValueOptions__Output } from './google/protobuf/EnumValueOptions'; -import { FieldDescriptorProto as _google_protobuf_FieldDescriptorProto, FieldDescriptorProto__Output as _google_protobuf_FieldDescriptorProto__Output } from './google/protobuf/FieldDescriptorProto'; -import { FieldOptions as _google_protobuf_FieldOptions, FieldOptions__Output as _google_protobuf_FieldOptions__Output } from './google/protobuf/FieldOptions'; -import { FileDescriptorProto as _google_protobuf_FileDescriptorProto, FileDescriptorProto__Output as _google_protobuf_FileDescriptorProto__Output } from './google/protobuf/FileDescriptorProto'; -import { FileDescriptorSet as _google_protobuf_FileDescriptorSet, FileDescriptorSet__Output as _google_protobuf_FileDescriptorSet__Output } from './google/protobuf/FileDescriptorSet'; -import { FileOptions as _google_protobuf_FileOptions, FileOptions__Output as _google_protobuf_FileOptions__Output } from './google/protobuf/FileOptions'; -import { FloatValue as _google_protobuf_FloatValue, FloatValue__Output as _google_protobuf_FloatValue__Output } from './google/protobuf/FloatValue'; -import { GeneratedCodeInfo as _google_protobuf_GeneratedCodeInfo, GeneratedCodeInfo__Output as _google_protobuf_GeneratedCodeInfo__Output } from './google/protobuf/GeneratedCodeInfo'; -import { Int32Value as _google_protobuf_Int32Value, Int32Value__Output as _google_protobuf_Int32Value__Output } from './google/protobuf/Int32Value'; -import { Int64Value as _google_protobuf_Int64Value, Int64Value__Output as _google_protobuf_Int64Value__Output } from './google/protobuf/Int64Value'; -import { ListValue as _google_protobuf_ListValue, ListValue__Output as _google_protobuf_ListValue__Output } from './google/protobuf/ListValue'; -import { MessageOptions as _google_protobuf_MessageOptions, MessageOptions__Output as _google_protobuf_MessageOptions__Output } from './google/protobuf/MessageOptions'; -import { MethodDescriptorProto as _google_protobuf_MethodDescriptorProto, MethodDescriptorProto__Output as _google_protobuf_MethodDescriptorProto__Output } from './google/protobuf/MethodDescriptorProto'; -import { MethodOptions as _google_protobuf_MethodOptions, MethodOptions__Output as _google_protobuf_MethodOptions__Output } from './google/protobuf/MethodOptions'; -import { NullValue as _google_protobuf_NullValue } from './google/protobuf/NullValue'; -import { OneofDescriptorProto as _google_protobuf_OneofDescriptorProto, OneofDescriptorProto__Output as _google_protobuf_OneofDescriptorProto__Output } from './google/protobuf/OneofDescriptorProto'; -import { OneofOptions as _google_protobuf_OneofOptions, OneofOptions__Output as _google_protobuf_OneofOptions__Output } from './google/protobuf/OneofOptions'; -import { ServiceDescriptorProto as _google_protobuf_ServiceDescriptorProto, ServiceDescriptorProto__Output as _google_protobuf_ServiceDescriptorProto__Output } from './google/protobuf/ServiceDescriptorProto'; -import { ServiceOptions as _google_protobuf_ServiceOptions, ServiceOptions__Output as _google_protobuf_ServiceOptions__Output } from './google/protobuf/ServiceOptions'; -import { SourceCodeInfo as _google_protobuf_SourceCodeInfo, SourceCodeInfo__Output as _google_protobuf_SourceCodeInfo__Output } from './google/protobuf/SourceCodeInfo'; -import { StringValue as _google_protobuf_StringValue, StringValue__Output as _google_protobuf_StringValue__Output } from './google/protobuf/StringValue'; -import { Struct as _google_protobuf_Struct, Struct__Output as _google_protobuf_Struct__Output } from './google/protobuf/Struct'; -import { Timestamp as _google_protobuf_Timestamp, Timestamp__Output as _google_protobuf_Timestamp__Output } from './google/protobuf/Timestamp'; -import { UInt32Value as _google_protobuf_UInt32Value, UInt32Value__Output as _google_protobuf_UInt32Value__Output } from './google/protobuf/UInt32Value'; -import { UInt64Value as _google_protobuf_UInt64Value, UInt64Value__Output as _google_protobuf_UInt64Value__Output } from './google/protobuf/UInt64Value'; -import { UninterpretedOption as _google_protobuf_UninterpretedOption, UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output } from './google/protobuf/UninterpretedOption'; -import { Value as _google_protobuf_Value, Value__Output as _google_protobuf_Value__Output } from './google/protobuf/Value'; -import { FieldMigrateAnnotation as _udpa_annotations_FieldMigrateAnnotation, FieldMigrateAnnotation__Output as _udpa_annotations_FieldMigrateAnnotation__Output } from './udpa/annotations/FieldMigrateAnnotation'; -import { FileMigrateAnnotation as _udpa_annotations_FileMigrateAnnotation, FileMigrateAnnotation__Output as _udpa_annotations_FileMigrateAnnotation__Output } from './udpa/annotations/FileMigrateAnnotation'; -import { MigrateAnnotation as _udpa_annotations_MigrateAnnotation, MigrateAnnotation__Output as _udpa_annotations_MigrateAnnotation__Output } from './udpa/annotations/MigrateAnnotation'; -import { PackageVersionStatus as _udpa_annotations_PackageVersionStatus } from './udpa/annotations/PackageVersionStatus'; -import { StatusAnnotation as _udpa_annotations_StatusAnnotation, StatusAnnotation__Output as _udpa_annotations_StatusAnnotation__Output } from './udpa/annotations/StatusAnnotation'; -import { AnyRules as _validate_AnyRules, AnyRules__Output as _validate_AnyRules__Output } from './validate/AnyRules'; -import { BoolRules as _validate_BoolRules, BoolRules__Output as _validate_BoolRules__Output } from './validate/BoolRules'; -import { BytesRules as _validate_BytesRules, BytesRules__Output as _validate_BytesRules__Output } from './validate/BytesRules'; -import { DoubleRules as _validate_DoubleRules, DoubleRules__Output as _validate_DoubleRules__Output } from './validate/DoubleRules'; -import { DurationRules as _validate_DurationRules, DurationRules__Output as _validate_DurationRules__Output } from './validate/DurationRules'; -import { EnumRules as _validate_EnumRules, EnumRules__Output as _validate_EnumRules__Output } from './validate/EnumRules'; -import { FieldRules as _validate_FieldRules, FieldRules__Output as _validate_FieldRules__Output } from './validate/FieldRules'; -import { Fixed32Rules as _validate_Fixed32Rules, Fixed32Rules__Output as _validate_Fixed32Rules__Output } from './validate/Fixed32Rules'; -import { Fixed64Rules as _validate_Fixed64Rules, Fixed64Rules__Output as _validate_Fixed64Rules__Output } from './validate/Fixed64Rules'; -import { FloatRules as _validate_FloatRules, FloatRules__Output as _validate_FloatRules__Output } from './validate/FloatRules'; -import { Int32Rules as _validate_Int32Rules, Int32Rules__Output as _validate_Int32Rules__Output } from './validate/Int32Rules'; -import { Int64Rules as _validate_Int64Rules, Int64Rules__Output as _validate_Int64Rules__Output } from './validate/Int64Rules'; -import { KnownRegex as _validate_KnownRegex } from './validate/KnownRegex'; -import { MapRules as _validate_MapRules, MapRules__Output as _validate_MapRules__Output } from './validate/MapRules'; -import { MessageRules as _validate_MessageRules, MessageRules__Output as _validate_MessageRules__Output } from './validate/MessageRules'; -import { RepeatedRules as _validate_RepeatedRules, RepeatedRules__Output as _validate_RepeatedRules__Output } from './validate/RepeatedRules'; -import { SFixed32Rules as _validate_SFixed32Rules, SFixed32Rules__Output as _validate_SFixed32Rules__Output } from './validate/SFixed32Rules'; -import { SFixed64Rules as _validate_SFixed64Rules, SFixed64Rules__Output as _validate_SFixed64Rules__Output } from './validate/SFixed64Rules'; -import { SInt32Rules as _validate_SInt32Rules, SInt32Rules__Output as _validate_SInt32Rules__Output } from './validate/SInt32Rules'; -import { SInt64Rules as _validate_SInt64Rules, SInt64Rules__Output as _validate_SInt64Rules__Output } from './validate/SInt64Rules'; -import { StringRules as _validate_StringRules, StringRules__Output as _validate_StringRules__Output } from './validate/StringRules'; -import { TimestampRules as _validate_TimestampRules, TimestampRules__Output as _validate_TimestampRules__Output } from './validate/TimestampRules'; -import { UInt32Rules as _validate_UInt32Rules, UInt32Rules__Output as _validate_UInt32Rules__Output } from './validate/UInt32Rules'; -import { UInt64Rules as _validate_UInt64Rules, UInt64Rules__Output as _validate_UInt64Rules__Output } from './validate/UInt64Rules'; - -export namespace messages { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - /** - * [#next-free-field: 23] - */ - export type Listener = _envoy_api_v2_Listener; - /** - * [#next-free-field: 23] - */ - export type Listener__Output = _envoy_api_v2_Listener__Output; - export namespace auth { - /** - * [#next-free-field: 11] - */ - export type CertificateValidationContext = _envoy_api_v2_auth_CertificateValidationContext; - /** - * [#next-free-field: 11] - */ - export type CertificateValidationContext__Output = _envoy_api_v2_auth_CertificateValidationContext__Output; - /** - * TLS context shared by both client and server TLS contexts. - * [#next-free-field: 9] - */ - export type CommonTlsContext = _envoy_api_v2_auth_CommonTlsContext; - /** - * TLS context shared by both client and server TLS contexts. - * [#next-free-field: 9] - */ - export type CommonTlsContext__Output = _envoy_api_v2_auth_CommonTlsContext__Output; - /** - * [#next-free-field: 8] - */ - export type DownstreamTlsContext = _envoy_api_v2_auth_DownstreamTlsContext; - /** - * [#next-free-field: 8] - */ - export type DownstreamTlsContext__Output = _envoy_api_v2_auth_DownstreamTlsContext__Output; - export type GenericSecret = _envoy_api_v2_auth_GenericSecret; - export type GenericSecret__Output = _envoy_api_v2_auth_GenericSecret__Output; - /** - * BoringSSL private key method configuration. The private key methods are used for external - * (potentially asynchronous) signing and decryption operations. Some use cases for private key - * methods would be TPM support and TLS acceleration. - */ - export type PrivateKeyProvider = _envoy_api_v2_auth_PrivateKeyProvider; - /** - * BoringSSL private key method configuration. The private key methods are used for external - * (potentially asynchronous) signing and decryption operations. Some use cases for private key - * methods would be TPM support and TLS acceleration. - */ - export type PrivateKeyProvider__Output = _envoy_api_v2_auth_PrivateKeyProvider__Output; - export type SdsSecretConfig = _envoy_api_v2_auth_SdsSecretConfig; - export type SdsSecretConfig__Output = _envoy_api_v2_auth_SdsSecretConfig__Output; - /** - * [#next-free-field: 6] - */ - export type Secret = _envoy_api_v2_auth_Secret; - /** - * [#next-free-field: 6] - */ - export type Secret__Output = _envoy_api_v2_auth_Secret__Output; - /** - * [#next-free-field: 7] - */ - export type TlsCertificate = _envoy_api_v2_auth_TlsCertificate; - /** - * [#next-free-field: 7] - */ - export type TlsCertificate__Output = _envoy_api_v2_auth_TlsCertificate__Output; - export type TlsParameters = _envoy_api_v2_auth_TlsParameters; - export type TlsParameters__Output = _envoy_api_v2_auth_TlsParameters__Output; - export type TlsSessionTicketKeys = _envoy_api_v2_auth_TlsSessionTicketKeys; - export type TlsSessionTicketKeys__Output = _envoy_api_v2_auth_TlsSessionTicketKeys__Output; - export type UpstreamTlsContext = _envoy_api_v2_auth_UpstreamTlsContext; - export type UpstreamTlsContext__Output = _envoy_api_v2_auth_UpstreamTlsContext__Output; - } - export namespace core { - /** - * Addresses specify either a logical or physical address and port, which are - * used to tell Envoy where to bind/listen, connect to upstream and find - * management servers. - */ - export type Address = _envoy_api_v2_core_Address; - /** - * Addresses specify either a logical or physical address and port, which are - * used to tell Envoy where to bind/listen, connect to upstream and find - * management servers. - */ - export type Address__Output = _envoy_api_v2_core_Address__Output; - /** - * Aggregated Discovery Service (ADS) options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that ADS is to be used. - */ - export type AggregatedConfigSource = _envoy_api_v2_core_AggregatedConfigSource; - /** - * Aggregated Discovery Service (ADS) options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that ADS is to be used. - */ - export type AggregatedConfigSource__Output = _envoy_api_v2_core_AggregatedConfigSource__Output; - /** - * API configuration source. This identifies the API type and cluster that Envoy - * will use to fetch an xDS API. - * [#next-free-field: 9] - */ - export type ApiConfigSource = _envoy_api_v2_core_ApiConfigSource; - /** - * API configuration source. This identifies the API type and cluster that Envoy - * will use to fetch an xDS API. - * [#next-free-field: 9] - */ - export type ApiConfigSource__Output = _envoy_api_v2_core_ApiConfigSource__Output; - /** - * xDS API version. This is used to describe both resource and transport - * protocol versions (in distinct configuration fields). - */ - export type ApiVersion = _envoy_api_v2_core_ApiVersion; - /** - * Async data source which support async data fetch. - */ - export type AsyncDataSource = _envoy_api_v2_core_AsyncDataSource; - /** - * Async data source which support async data fetch. - */ - export type AsyncDataSource__Output = _envoy_api_v2_core_AsyncDataSource__Output; - /** - * Configuration defining a jittered exponential back off strategy. - */ - export type BackoffStrategy = _envoy_api_v2_core_BackoffStrategy; - /** - * Configuration defining a jittered exponential back off strategy. - */ - export type BackoffStrategy__Output = _envoy_api_v2_core_BackoffStrategy__Output; - export type BindConfig = _envoy_api_v2_core_BindConfig; - export type BindConfig__Output = _envoy_api_v2_core_BindConfig__Output; - /** - * BuildVersion combines SemVer version of extension with free-form build information - * (i.e. 'alpha', 'private-build') as a set of strings. - */ - export type BuildVersion = _envoy_api_v2_core_BuildVersion; - /** - * BuildVersion combines SemVer version of extension with free-form build information - * (i.e. 'alpha', 'private-build') as a set of strings. - */ - export type BuildVersion__Output = _envoy_api_v2_core_BuildVersion__Output; - /** - * CidrRange specifies an IP Address and a prefix length to construct - * the subnet mask for a `CIDR `_ range. - */ - export type CidrRange = _envoy_api_v2_core_CidrRange; - /** - * CidrRange specifies an IP Address and a prefix length to construct - * the subnet mask for a `CIDR `_ range. - */ - export type CidrRange__Output = _envoy_api_v2_core_CidrRange__Output; - /** - * Configuration for :ref:`listeners `, :ref:`clusters - * `, :ref:`routes - * `, :ref:`endpoints - * ` etc. may either be sourced from the - * filesystem or from an xDS API source. Filesystem configs are watched with - * inotify for updates. - * [#next-free-field: 7] - */ - export type ConfigSource = _envoy_api_v2_core_ConfigSource; - /** - * Configuration for :ref:`listeners `, :ref:`clusters - * `, :ref:`routes - * `, :ref:`endpoints - * ` etc. may either be sourced from the - * filesystem or from an xDS API source. Filesystem configs are watched with - * inotify for updates. - * [#next-free-field: 7] - */ - export type ConfigSource__Output = _envoy_api_v2_core_ConfigSource__Output; - /** - * Identifies a specific ControlPlane instance that Envoy is connected to. - */ - export type ControlPlane = _envoy_api_v2_core_ControlPlane; - /** - * Identifies a specific ControlPlane instance that Envoy is connected to. - */ - export type ControlPlane__Output = _envoy_api_v2_core_ControlPlane__Output; - /** - * Data source consisting of either a file or an inline value. - */ - export type DataSource = _envoy_api_v2_core_DataSource; - /** - * Data source consisting of either a file or an inline value. - */ - export type DataSource__Output = _envoy_api_v2_core_DataSource__Output; - /** - * Version and identification for an Envoy extension. - * [#next-free-field: 6] - */ - export type Extension = _envoy_api_v2_core_Extension; - /** - * Version and identification for an Envoy extension. - * [#next-free-field: 6] - */ - export type Extension__Output = _envoy_api_v2_core_Extension__Output; - /** - * gRPC service configuration. This is used by :ref:`ApiConfigSource - * ` and filter configurations. - * [#next-free-field: 6] - */ - export type GrpcService = _envoy_api_v2_core_GrpcService; - /** - * gRPC service configuration. This is used by :ref:`ApiConfigSource - * ` and filter configurations. - * [#next-free-field: 6] - */ - export type GrpcService__Output = _envoy_api_v2_core_GrpcService__Output; - /** - * Wrapper for a set of headers. - */ - export type HeaderMap = _envoy_api_v2_core_HeaderMap; - /** - * Wrapper for a set of headers. - */ - export type HeaderMap__Output = _envoy_api_v2_core_HeaderMap__Output; - /** - * Header name/value pair. - */ - export type HeaderValue = _envoy_api_v2_core_HeaderValue; - /** - * Header name/value pair. - */ - export type HeaderValue__Output = _envoy_api_v2_core_HeaderValue__Output; - /** - * Header name/value pair plus option to control append behavior. - */ - export type HeaderValueOption = _envoy_api_v2_core_HeaderValueOption; - /** - * Header name/value pair plus option to control append behavior. - */ - export type HeaderValueOption__Output = _envoy_api_v2_core_HeaderValueOption__Output; - /** - * Envoy external URI descriptor - */ - export type HttpUri = _envoy_api_v2_core_HttpUri; - /** - * Envoy external URI descriptor - */ - export type HttpUri__Output = _envoy_api_v2_core_HttpUri__Output; - /** - * Identifies location of where either Envoy runs or where upstream hosts run. - */ - export type Locality = _envoy_api_v2_core_Locality; - /** - * Identifies location of where either Envoy runs or where upstream hosts run. - */ - export type Locality__Output = _envoy_api_v2_core_Locality__Output; - /** - * Metadata provides additional inputs to filters based on matched listeners, - * filter chains, routes and endpoints. It is structured as a map, usually from - * filter name (in reverse DNS format) to metadata specific to the filter. Metadata - * key-values for a filter are merged as connection and request handling occurs, - * with later values for the same key overriding earlier values. - * - * An example use of metadata is providing additional values to - * http_connection_manager in the envoy.http_connection_manager.access_log - * namespace. - * - * Another example use of metadata is to per service config info in cluster metadata, which may get - * consumed by multiple filters. - * - * For load balancing, Metadata provides a means to subset cluster endpoints. - * Endpoints have a Metadata object associated and routes contain a Metadata - * object to match against. There are some well defined metadata used today for - * this purpose: - * - * * ``{"envoy.lb": {"canary": }}`` This indicates the canary status of an - * endpoint and is also used during header processing - * (x-envoy-upstream-canary) and for stats purposes. - * [#next-major-version: move to type/metadata/v2] - */ - export type Metadata = _envoy_api_v2_core_Metadata; - /** - * Metadata provides additional inputs to filters based on matched listeners, - * filter chains, routes and endpoints. It is structured as a map, usually from - * filter name (in reverse DNS format) to metadata specific to the filter. Metadata - * key-values for a filter are merged as connection and request handling occurs, - * with later values for the same key overriding earlier values. - * - * An example use of metadata is providing additional values to - * http_connection_manager in the envoy.http_connection_manager.access_log - * namespace. - * - * Another example use of metadata is to per service config info in cluster metadata, which may get - * consumed by multiple filters. - * - * For load balancing, Metadata provides a means to subset cluster endpoints. - * Endpoints have a Metadata object associated and routes contain a Metadata - * object to match against. There are some well defined metadata used today for - * this purpose: - * - * * ``{"envoy.lb": {"canary": }}`` This indicates the canary status of an - * endpoint and is also used during header processing - * (x-envoy-upstream-canary) and for stats purposes. - * [#next-major-version: move to type/metadata/v2] - */ - export type Metadata__Output = _envoy_api_v2_core_Metadata__Output; - /** - * Identifies a specific Envoy instance. The node identifier is presented to the - * management server, which may use this identifier to distinguish per Envoy - * configuration for serving. - * [#next-free-field: 12] - */ - export type Node = _envoy_api_v2_core_Node; - /** - * Identifies a specific Envoy instance. The node identifier is presented to the - * management server, which may use this identifier to distinguish per Envoy - * configuration for serving. - * [#next-free-field: 12] - */ - export type Node__Output = _envoy_api_v2_core_Node__Output; - export type Pipe = _envoy_api_v2_core_Pipe; - export type Pipe__Output = _envoy_api_v2_core_Pipe__Output; - /** - * Rate Limit settings to be applied for discovery requests made by Envoy. - */ - export type RateLimitSettings = _envoy_api_v2_core_RateLimitSettings; - /** - * Rate Limit settings to be applied for discovery requests made by Envoy. - */ - export type RateLimitSettings__Output = _envoy_api_v2_core_RateLimitSettings__Output; - /** - * The message specifies how to fetch data from remote and how to verify it. - */ - export type RemoteDataSource = _envoy_api_v2_core_RemoteDataSource; - /** - * The message specifies how to fetch data from remote and how to verify it. - */ - export type RemoteDataSource__Output = _envoy_api_v2_core_RemoteDataSource__Output; - /** - * HTTP request method. - */ - export type RequestMethod = _envoy_api_v2_core_RequestMethod; - /** - * The message specifies the retry policy of remote data source when fetching fails. - */ - export type RetryPolicy = _envoy_api_v2_core_RetryPolicy; - /** - * The message specifies the retry policy of remote data source when fetching fails. - */ - export type RetryPolicy__Output = _envoy_api_v2_core_RetryPolicy__Output; - /** - * Envoy supports :ref:`upstream priority routing - * ` both at the route and the virtual - * cluster level. The current priority implementation uses different connection - * pool and circuit breaking settings for each priority level. This means that - * even for HTTP/2 requests, two physical connections will be used to an - * upstream host. In the future Envoy will likely support true HTTP/2 priority - * over a single upstream connection. - */ - export type RoutingPriority = _envoy_api_v2_core_RoutingPriority; - /** - * Runtime derived double with a default when not specified. - */ - export type RuntimeDouble = _envoy_api_v2_core_RuntimeDouble; - /** - * Runtime derived double with a default when not specified. - */ - export type RuntimeDouble__Output = _envoy_api_v2_core_RuntimeDouble__Output; - /** - * Runtime derived bool with a default when not specified. - */ - export type RuntimeFeatureFlag = _envoy_api_v2_core_RuntimeFeatureFlag; - /** - * Runtime derived bool with a default when not specified. - */ - export type RuntimeFeatureFlag__Output = _envoy_api_v2_core_RuntimeFeatureFlag__Output; - /** - * Runtime derived FractionalPercent with defaults for when the numerator or denominator is not - * specified via a runtime key. - * - * .. note:: - * - * Parsing of the runtime key's data is implemented such that it may be represented as a - * :ref:`FractionalPercent ` proto represented as JSON/YAML - * and may also be represented as an integer with the assumption that the value is an integral - * percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse - * as a `FractionalPercent` whose numerator is 42 and denominator is HUNDRED. - */ - export type RuntimeFractionalPercent = _envoy_api_v2_core_RuntimeFractionalPercent; - /** - * Runtime derived FractionalPercent with defaults for when the numerator or denominator is not - * specified via a runtime key. - * - * .. note:: - * - * Parsing of the runtime key's data is implemented such that it may be represented as a - * :ref:`FractionalPercent ` proto represented as JSON/YAML - * and may also be represented as an integer with the assumption that the value is an integral - * percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse - * as a `FractionalPercent` whose numerator is 42 and denominator is HUNDRED. - */ - export type RuntimeFractionalPercent__Output = _envoy_api_v2_core_RuntimeFractionalPercent__Output; - /** - * Runtime derived uint32 with a default when not specified. - */ - export type RuntimeUInt32 = _envoy_api_v2_core_RuntimeUInt32; - /** - * Runtime derived uint32 with a default when not specified. - */ - export type RuntimeUInt32__Output = _envoy_api_v2_core_RuntimeUInt32__Output; - /** - * [#not-implemented-hide:] - * Self-referencing config source options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that other data can be obtained from the same server. - */ - export type SelfConfigSource = _envoy_api_v2_core_SelfConfigSource; - /** - * [#not-implemented-hide:] - * Self-referencing config source options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that other data can be obtained from the same server. - */ - export type SelfConfigSource__Output = _envoy_api_v2_core_SelfConfigSource__Output; - /** - * [#next-free-field: 7] - */ - export type SocketAddress = _envoy_api_v2_core_SocketAddress; - /** - * [#next-free-field: 7] - */ - export type SocketAddress__Output = _envoy_api_v2_core_SocketAddress__Output; - /** - * Generic socket option message. This would be used to set socket options that - * might not exist in upstream kernels or precompiled Envoy binaries. - * [#next-free-field: 7] - */ - export type SocketOption = _envoy_api_v2_core_SocketOption; - /** - * Generic socket option message. This would be used to set socket options that - * might not exist in upstream kernels or precompiled Envoy binaries. - * [#next-free-field: 7] - */ - export type SocketOption__Output = _envoy_api_v2_core_SocketOption__Output; - export type TcpKeepalive = _envoy_api_v2_core_TcpKeepalive; - export type TcpKeepalive__Output = _envoy_api_v2_core_TcpKeepalive__Output; - /** - * Identifies the direction of the traffic relative to the local Envoy. - */ - export type TrafficDirection = _envoy_api_v2_core_TrafficDirection; - /** - * Configuration for transport socket in :ref:`listeners ` and - * :ref:`clusters `. If the configuration is - * empty, a default transport socket implementation and configuration will be - * chosen based on the platform and existence of tls_context. - */ - export type TransportSocket = _envoy_api_v2_core_TransportSocket; - /** - * Configuration for transport socket in :ref:`listeners ` and - * :ref:`clusters `. If the configuration is - * empty, a default transport socket implementation and configuration will be - * chosen based on the platform and existence of tls_context. - */ - export type TransportSocket__Output = _envoy_api_v2_core_TransportSocket__Output; - } - export namespace listener { - export type ActiveRawUdpListenerConfig = _envoy_api_v2_listener_ActiveRawUdpListenerConfig; - export type ActiveRawUdpListenerConfig__Output = _envoy_api_v2_listener_ActiveRawUdpListenerConfig__Output; - export type Filter = _envoy_api_v2_listener_Filter; - export type Filter__Output = _envoy_api_v2_listener_Filter__Output; - /** - * A filter chain wraps a set of match criteria, an option TLS context, a set of filters, and - * various other parameters. - * [#next-free-field: 8] - */ - export type FilterChain = _envoy_api_v2_listener_FilterChain; - /** - * A filter chain wraps a set of match criteria, an option TLS context, a set of filters, and - * various other parameters. - * [#next-free-field: 8] - */ - export type FilterChain__Output = _envoy_api_v2_listener_FilterChain__Output; - /** - * Specifies the match criteria for selecting a specific filter chain for a - * listener. - * - * In order for a filter chain to be selected, *ALL* of its criteria must be - * fulfilled by the incoming connection, properties of which are set by the - * networking stack and/or listener filters. - * - * The following order applies: - * - * 1. Destination port. - * 2. Destination IP address. - * 3. Server name (e.g. SNI for TLS protocol), - * 4. Transport protocol. - * 5. Application protocols (e.g. ALPN for TLS protocol). - * 6. Source type (e.g. any, local or external network). - * 7. Source IP address. - * 8. Source port. - * - * For criteria that allow ranges or wildcards, the most specific value in any - * of the configured filter chains that matches the incoming connection is going - * to be used (e.g. for SNI ``www.example.com`` the most specific match would be - * ``www.example.com``, then ``*.example.com``, then ``*.com``, then any filter - * chain without ``server_names`` requirements). - * - * [#comment: Implemented rules are kept in the preference order, with deprecated fields - * listed at the end, because that's how we want to list them in the docs. - * - * [#comment:TODO(PiotrSikora): Add support for configurable precedence of the rules] - * [#next-free-field: 13] - */ - export type FilterChainMatch = _envoy_api_v2_listener_FilterChainMatch; - /** - * Specifies the match criteria for selecting a specific filter chain for a - * listener. - * - * In order for a filter chain to be selected, *ALL* of its criteria must be - * fulfilled by the incoming connection, properties of which are set by the - * networking stack and/or listener filters. - * - * The following order applies: - * - * 1. Destination port. - * 2. Destination IP address. - * 3. Server name (e.g. SNI for TLS protocol), - * 4. Transport protocol. - * 5. Application protocols (e.g. ALPN for TLS protocol). - * 6. Source type (e.g. any, local or external network). - * 7. Source IP address. - * 8. Source port. - * - * For criteria that allow ranges or wildcards, the most specific value in any - * of the configured filter chains that matches the incoming connection is going - * to be used (e.g. for SNI ``www.example.com`` the most specific match would be - * ``www.example.com``, then ``*.example.com``, then ``*.com``, then any filter - * chain without ``server_names`` requirements). - * - * [#comment: Implemented rules are kept in the preference order, with deprecated fields - * listed at the end, because that's how we want to list them in the docs. - * - * [#comment:TODO(PiotrSikora): Add support for configurable precedence of the rules] - * [#next-free-field: 13] - */ - export type FilterChainMatch__Output = _envoy_api_v2_listener_FilterChainMatch__Output; - export type ListenerFilter = _envoy_api_v2_listener_ListenerFilter; - export type ListenerFilter__Output = _envoy_api_v2_listener_ListenerFilter__Output; - /** - * Listener filter chain match configuration. This is a recursive structure which allows complex - * nested match configurations to be built using various logical operators. - * - * Examples: - * - * * Matches if the destination port is 3306. - * - * .. code-block:: yaml - * - * destination_port_range: - * start: 3306 - * end: 3307 - * - * * Matches if the destination port is 3306 or 15000. - * - * .. code-block:: yaml - * - * or_match: - * rules: - * - destination_port_range: - * start: 3306 - * end: 3306 - * - destination_port_range: - * start: 15000 - * end: 15001 - * - * [#next-free-field: 6] - */ - export type ListenerFilterChainMatchPredicate = _envoy_api_v2_listener_ListenerFilterChainMatchPredicate; - /** - * Listener filter chain match configuration. This is a recursive structure which allows complex - * nested match configurations to be built using various logical operators. - * - * Examples: - * - * * Matches if the destination port is 3306. - * - * .. code-block:: yaml - * - * destination_port_range: - * start: 3306 - * end: 3307 - * - * * Matches if the destination port is 3306 or 15000. - * - * .. code-block:: yaml - * - * or_match: - * rules: - * - destination_port_range: - * start: 3306 - * end: 3306 - * - destination_port_range: - * start: 15000 - * end: 15001 - * - * [#next-free-field: 6] - */ - export type ListenerFilterChainMatchPredicate__Output = _envoy_api_v2_listener_ListenerFilterChainMatchPredicate__Output; - export type UdpListenerConfig = _envoy_api_v2_listener_UdpListenerConfig; - export type UdpListenerConfig__Output = _envoy_api_v2_listener_UdpListenerConfig__Output; - } - export namespace route { - /** - * [#next-free-field: 12] - */ - export type CorsPolicy = _envoy_api_v2_route_CorsPolicy; - /** - * [#next-free-field: 12] - */ - export type CorsPolicy__Output = _envoy_api_v2_route_CorsPolicy__Output; - export type Decorator = _envoy_api_v2_route_Decorator; - export type Decorator__Output = _envoy_api_v2_route_Decorator__Output; - export type DirectResponseAction = _envoy_api_v2_route_DirectResponseAction; - export type DirectResponseAction__Output = _envoy_api_v2_route_DirectResponseAction__Output; - /** - * A filter-defined action type. - */ - export type FilterAction = _envoy_api_v2_route_FilterAction; - /** - * A filter-defined action type. - */ - export type FilterAction__Output = _envoy_api_v2_route_FilterAction__Output; - /** - * .. attention:: - * - * Internally, Envoy always uses the HTTP/2 *:authority* header to represent the HTTP/1 *Host* - * header. Thus, if attempting to match on *Host*, match on *:authority* instead. - * - * .. attention:: - * - * To route on HTTP method, use the special HTTP/2 *:method* header. This works for both - * HTTP/1 and HTTP/2 as Envoy normalizes headers. E.g., - * - * .. code-block:: json - * - * { - * "name": ":method", - * "exact_match": "POST" - * } - * - * .. attention:: - * In the absence of any header match specifier, match will default to :ref:`present_match - * `. i.e, a request that has the :ref:`name - * ` header will match, regardless of the header's - * value. - * - * [#next-major-version: HeaderMatcher should be refactored to use StringMatcher.] - * [#next-free-field: 12] - */ - export type HeaderMatcher = _envoy_api_v2_route_HeaderMatcher; - /** - * .. attention:: - * - * Internally, Envoy always uses the HTTP/2 *:authority* header to represent the HTTP/1 *Host* - * header. Thus, if attempting to match on *Host*, match on *:authority* instead. - * - * .. attention:: - * - * To route on HTTP method, use the special HTTP/2 *:method* header. This works for both - * HTTP/1 and HTTP/2 as Envoy normalizes headers. E.g., - * - * .. code-block:: json - * - * { - * "name": ":method", - * "exact_match": "POST" - * } - * - * .. attention:: - * In the absence of any header match specifier, match will default to :ref:`present_match - * `. i.e, a request that has the :ref:`name - * ` header will match, regardless of the header's - * value. - * - * [#next-major-version: HeaderMatcher should be refactored to use StringMatcher.] - * [#next-free-field: 12] - */ - export type HeaderMatcher__Output = _envoy_api_v2_route_HeaderMatcher__Output; - /** - * HTTP request hedging :ref:`architecture overview `. - */ - export type HedgePolicy = _envoy_api_v2_route_HedgePolicy; - /** - * HTTP request hedging :ref:`architecture overview `. - */ - export type HedgePolicy__Output = _envoy_api_v2_route_HedgePolicy__Output; - /** - * Query parameter matching treats the query string of a request's :path header - * as an ampersand-separated list of keys and/or key=value elements. - * [#next-free-field: 7] - */ - export type QueryParameterMatcher = _envoy_api_v2_route_QueryParameterMatcher; - /** - * Query parameter matching treats the query string of a request's :path header - * as an ampersand-separated list of keys and/or key=value elements. - * [#next-free-field: 7] - */ - export type QueryParameterMatcher__Output = _envoy_api_v2_route_QueryParameterMatcher__Output; - /** - * Global rate limiting :ref:`architecture overview `. - */ - export type RateLimit = _envoy_api_v2_route_RateLimit; - /** - * Global rate limiting :ref:`architecture overview `. - */ - export type RateLimit__Output = _envoy_api_v2_route_RateLimit__Output; - /** - * [#next-free-field: 9] - */ - export type RedirectAction = _envoy_api_v2_route_RedirectAction; - /** - * [#next-free-field: 9] - */ - export type RedirectAction__Output = _envoy_api_v2_route_RedirectAction__Output; - /** - * HTTP retry :ref:`architecture overview `. - * [#next-free-field: 11] - */ - export type RetryPolicy = _envoy_api_v2_route_RetryPolicy; - /** - * HTTP retry :ref:`architecture overview `. - * [#next-free-field: 11] - */ - export type RetryPolicy__Output = _envoy_api_v2_route_RetryPolicy__Output; - /** - * A route is both a specification of how to match a request as well as an indication of what to do - * next (e.g., redirect, forward, rewrite, etc.). - * - * .. attention:: - * - * Envoy supports routing on HTTP method via :ref:`header matching - * `. - * [#next-free-field: 18] - */ - export type Route = _envoy_api_v2_route_Route; - /** - * A route is both a specification of how to match a request as well as an indication of what to do - * next (e.g., redirect, forward, rewrite, etc.). - * - * .. attention:: - * - * Envoy supports routing on HTTP method via :ref:`header matching - * `. - * [#next-free-field: 18] - */ - export type Route__Output = _envoy_api_v2_route_Route__Output; - /** - * [#next-free-field: 34] - */ - export type RouteAction = _envoy_api_v2_route_RouteAction; - /** - * [#next-free-field: 34] - */ - export type RouteAction__Output = _envoy_api_v2_route_RouteAction__Output; - /** - * [#next-free-field: 12] - */ - export type RouteMatch = _envoy_api_v2_route_RouteMatch; - /** - * [#next-free-field: 12] - */ - export type RouteMatch__Output = _envoy_api_v2_route_RouteMatch__Output; - export type Tracing = _envoy_api_v2_route_Tracing; - export type Tracing__Output = _envoy_api_v2_route_Tracing__Output; - /** - * A virtual cluster is a way of specifying a regex matching rule against - * certain important endpoints such that statistics are generated explicitly for - * the matched requests. The reason this is useful is that when doing - * prefix/path matching Envoy does not always know what the application - * considers to be an endpoint. Thus, it’s impossible for Envoy to generically - * emit per endpoint statistics. However, often systems have highly critical - * endpoints that they wish to get “perfect” statistics on. Virtual cluster - * statistics are perfect in the sense that they are emitted on the downstream - * side such that they include network level failures. - * - * Documentation for :ref:`virtual cluster statistics `. - * - * .. note:: - * - * Virtual clusters are a useful tool, but we do not recommend setting up a virtual cluster for - * every application endpoint. This is both not easily maintainable and as well the matching and - * statistics output are not free. - */ - export type VirtualCluster = _envoy_api_v2_route_VirtualCluster; - /** - * A virtual cluster is a way of specifying a regex matching rule against - * certain important endpoints such that statistics are generated explicitly for - * the matched requests. The reason this is useful is that when doing - * prefix/path matching Envoy does not always know what the application - * considers to be an endpoint. Thus, it’s impossible for Envoy to generically - * emit per endpoint statistics. However, often systems have highly critical - * endpoints that they wish to get “perfect” statistics on. Virtual cluster - * statistics are perfect in the sense that they are emitted on the downstream - * side such that they include network level failures. - * - * Documentation for :ref:`virtual cluster statistics `. - * - * .. note:: - * - * Virtual clusters are a useful tool, but we do not recommend setting up a virtual cluster for - * every application endpoint. This is both not easily maintainable and as well the matching and - * statistics output are not free. - */ - export type VirtualCluster__Output = _envoy_api_v2_route_VirtualCluster__Output; - /** - * The top level element in the routing configuration is a virtual host. Each virtual host has - * a logical name as well as a set of domains that get routed to it based on the incoming request's - * host header. This allows a single listener to service multiple top level domain path trees. Once - * a virtual host is selected based on the domain, the routes are processed in order to see which - * upstream cluster to route to or whether to perform a redirect. - * [#next-free-field: 21] - */ - export type VirtualHost = _envoy_api_v2_route_VirtualHost; - /** - * The top level element in the routing configuration is a virtual host. Each virtual host has - * a logical name as well as a set of domains that get routed to it based on the incoming request's - * host header. This allows a single listener to service multiple top level domain path trees. Once - * a virtual host is selected based on the domain, the routes are processed in order to see which - * upstream cluster to route to or whether to perform a redirect. - * [#next-free-field: 21] - */ - export type VirtualHost__Output = _envoy_api_v2_route_VirtualHost__Output; - /** - * Compared to the :ref:`cluster ` field that specifies a - * single upstream cluster as the target of a request, the :ref:`weighted_clusters - * ` option allows for specification of - * multiple upstream clusters along with weights that indicate the percentage of - * traffic to be forwarded to each cluster. The router selects an upstream cluster based on the - * weights. - */ - export type WeightedCluster = _envoy_api_v2_route_WeightedCluster; - /** - * Compared to the :ref:`cluster ` field that specifies a - * single upstream cluster as the target of a request, the :ref:`weighted_clusters - * ` option allows for specification of - * multiple upstream clusters along with weights that indicate the percentage of - * traffic to be forwarded to each cluster. The router selects an upstream cluster based on the - * weights. - */ - export type WeightedCluster__Output = _envoy_api_v2_route_WeightedCluster__Output; - } - } - } - export namespace config { - export namespace filter { - export namespace accesslog { - export namespace v2 { - export type AccessLog = _envoy_config_filter_accesslog_v2_AccessLog; - export type AccessLog__Output = _envoy_config_filter_accesslog_v2_AccessLog__Output; - /** - * [#next-free-field: 12] - */ - export type AccessLogFilter = _envoy_config_filter_accesslog_v2_AccessLogFilter; - /** - * [#next-free-field: 12] - */ - export type AccessLogFilter__Output = _envoy_config_filter_accesslog_v2_AccessLogFilter__Output; - /** - * Performs a logical “and” operation on the result of each filter in filters. - * Filters are evaluated sequentially and if one of them returns false, the - * filter returns false immediately. - */ - export type AndFilter = _envoy_config_filter_accesslog_v2_AndFilter; - /** - * Performs a logical “and” operation on the result of each filter in filters. - * Filters are evaluated sequentially and if one of them returns false, the - * filter returns false immediately. - */ - export type AndFilter__Output = _envoy_config_filter_accesslog_v2_AndFilter__Output; - /** - * Filter on an integer comparison. - */ - export type ComparisonFilter = _envoy_config_filter_accesslog_v2_ComparisonFilter; - /** - * Filter on an integer comparison. - */ - export type ComparisonFilter__Output = _envoy_config_filter_accesslog_v2_ComparisonFilter__Output; - /** - * Filters on total request duration in milliseconds. - */ - export type DurationFilter = _envoy_config_filter_accesslog_v2_DurationFilter; - /** - * Filters on total request duration in milliseconds. - */ - export type DurationFilter__Output = _envoy_config_filter_accesslog_v2_DurationFilter__Output; - /** - * Extension filter is statically registered at runtime. - */ - export type ExtensionFilter = _envoy_config_filter_accesslog_v2_ExtensionFilter; - /** - * Extension filter is statically registered at runtime. - */ - export type ExtensionFilter__Output = _envoy_config_filter_accesslog_v2_ExtensionFilter__Output; - /** - * Filters gRPC requests based on their response status. If a gRPC status is not provided, the - * filter will infer the status from the HTTP status code. - */ - export type GrpcStatusFilter = _envoy_config_filter_accesslog_v2_GrpcStatusFilter; - /** - * Filters gRPC requests based on their response status. If a gRPC status is not provided, the - * filter will infer the status from the HTTP status code. - */ - export type GrpcStatusFilter__Output = _envoy_config_filter_accesslog_v2_GrpcStatusFilter__Output; - /** - * Filters requests based on the presence or value of a request header. - */ - export type HeaderFilter = _envoy_config_filter_accesslog_v2_HeaderFilter; - /** - * Filters requests based on the presence or value of a request header. - */ - export type HeaderFilter__Output = _envoy_config_filter_accesslog_v2_HeaderFilter__Output; - /** - * Filters for requests that are not health check requests. A health check - * request is marked by the health check filter. - */ - export type NotHealthCheckFilter = _envoy_config_filter_accesslog_v2_NotHealthCheckFilter; - /** - * Filters for requests that are not health check requests. A health check - * request is marked by the health check filter. - */ - export type NotHealthCheckFilter__Output = _envoy_config_filter_accesslog_v2_NotHealthCheckFilter__Output; - /** - * Performs a logical “or” operation on the result of each individual filter. - * Filters are evaluated sequentially and if one of them returns true, the - * filter returns true immediately. - */ - export type OrFilter = _envoy_config_filter_accesslog_v2_OrFilter; - /** - * Performs a logical “or” operation on the result of each individual filter. - * Filters are evaluated sequentially and if one of them returns true, the - * filter returns true immediately. - */ - export type OrFilter__Output = _envoy_config_filter_accesslog_v2_OrFilter__Output; - /** - * Filters requests that received responses with an Envoy response flag set. - * A list of the response flags can be found - * in the access log formatter :ref:`documentation`. - */ - export type ResponseFlagFilter = _envoy_config_filter_accesslog_v2_ResponseFlagFilter; - /** - * Filters requests that received responses with an Envoy response flag set. - * A list of the response flags can be found - * in the access log formatter :ref:`documentation`. - */ - export type ResponseFlagFilter__Output = _envoy_config_filter_accesslog_v2_ResponseFlagFilter__Output; - /** - * Filters for random sampling of requests. - */ - export type RuntimeFilter = _envoy_config_filter_accesslog_v2_RuntimeFilter; - /** - * Filters for random sampling of requests. - */ - export type RuntimeFilter__Output = _envoy_config_filter_accesslog_v2_RuntimeFilter__Output; - /** - * Filters on HTTP response/status code. - */ - export type StatusCodeFilter = _envoy_config_filter_accesslog_v2_StatusCodeFilter; - /** - * Filters on HTTP response/status code. - */ - export type StatusCodeFilter__Output = _envoy_config_filter_accesslog_v2_StatusCodeFilter__Output; - /** - * Filters for requests that are traceable. See the tracing overview for more - * information on how a request becomes traceable. - */ - export type TraceableFilter = _envoy_config_filter_accesslog_v2_TraceableFilter; - /** - * Filters for requests that are traceable. See the tracing overview for more - * information on how a request becomes traceable. - */ - export type TraceableFilter__Output = _envoy_config_filter_accesslog_v2_TraceableFilter__Output; - } - } - } - export namespace listener { - export namespace v2 { - /** - * Describes a type of API listener, which is used in non-proxy clients. The type of API - * exposed to the non-proxy application depends on the type of API listener. - */ - export type ApiListener = _envoy_config_listener_v2_ApiListener; - /** - * Describes a type of API listener, which is used in non-proxy clients. The type of API - * exposed to the non-proxy application depends on the type of API listener. - */ - export type ApiListener__Output = _envoy_config_listener_v2_ApiListener__Output; - } - } - } - export namespace type { - /** - * Specifies the double start and end of the range using half-open interval semantics [start, - * end). - */ - export type DoubleRange = _envoy_type_DoubleRange; - /** - * Specifies the double start and end of the range using half-open interval semantics [start, - * end). - */ - export type DoubleRange__Output = _envoy_type_DoubleRange__Output; - /** - * A fractional percentage is used in cases in which for performance reasons performing floating - * point to integer conversions during randomness calculations is undesirable. The message includes - * both a numerator and denominator that together determine the final fractional value. - * - * * **Example**: 1/100 = 1%. - * * **Example**: 3/10000 = 0.03%. - */ - export type FractionalPercent = _envoy_type_FractionalPercent; - /** - * A fractional percentage is used in cases in which for performance reasons performing floating - * point to integer conversions during randomness calculations is undesirable. The message includes - * both a numerator and denominator that together determine the final fractional value. - * - * * **Example**: 1/100 = 1%. - * * **Example**: 3/10000 = 0.03%. - */ - export type FractionalPercent__Output = _envoy_type_FractionalPercent__Output; - /** - * Specifies the int32 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int32Range = _envoy_type_Int32Range; - /** - * Specifies the int32 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int32Range__Output = _envoy_type_Int32Range__Output; - /** - * Specifies the int64 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int64Range = _envoy_type_Int64Range; - /** - * Specifies the int64 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int64Range__Output = _envoy_type_Int64Range__Output; - /** - * Identifies a percentage, in the range [0.0, 100.0]. - */ - export type Percent = _envoy_type_Percent; - /** - * Identifies a percentage, in the range [0.0, 100.0]. - */ - export type Percent__Output = _envoy_type_Percent__Output; - /** - * Envoy uses SemVer (https://semver.org/). Major/minor versions indicate - * expected behaviors and APIs, the patch version field is used only - * for security fixes and can be generally ignored. - */ - export type SemanticVersion = _envoy_type_SemanticVersion; - /** - * Envoy uses SemVer (https://semver.org/). Major/minor versions indicate - * expected behaviors and APIs, the patch version field is used only - * for security fixes and can be generally ignored. - */ - export type SemanticVersion__Output = _envoy_type_SemanticVersion__Output; - export namespace matcher { - /** - * Specifies a list of ways to match a string. - */ - export type ListStringMatcher = _envoy_type_matcher_ListStringMatcher; - /** - * Specifies a list of ways to match a string. - */ - export type ListStringMatcher__Output = _envoy_type_matcher_ListStringMatcher__Output; - /** - * Describes how to match a string and then produce a new string using a regular - * expression and a substitution string. - */ - export type RegexMatchAndSubstitute = _envoy_type_matcher_RegexMatchAndSubstitute; - /** - * Describes how to match a string and then produce a new string using a regular - * expression and a substitution string. - */ - export type RegexMatchAndSubstitute__Output = _envoy_type_matcher_RegexMatchAndSubstitute__Output; - /** - * A regex matcher designed for safety when used with untrusted input. - */ - export type RegexMatcher = _envoy_type_matcher_RegexMatcher; - /** - * A regex matcher designed for safety when used with untrusted input. - */ - export type RegexMatcher__Output = _envoy_type_matcher_RegexMatcher__Output; - /** - * Specifies the way to match a string. - * [#next-free-field: 7] - */ - export type StringMatcher = _envoy_type_matcher_StringMatcher; - /** - * Specifies the way to match a string. - * [#next-free-field: 7] - */ - export type StringMatcher__Output = _envoy_type_matcher_StringMatcher__Output; - } - export namespace metadata { - export namespace v2 { - /** - * MetadataKey provides a general interface using `key` and `path` to retrieve value from - * :ref:`Metadata `. - * - * For example, for the following Metadata: - * - * .. code-block:: yaml - * - * filter_metadata: - * envoy.xxx: - * prop: - * foo: bar - * xyz: - * hello: envoy - * - * The following MetadataKey will retrieve a string value "bar" from the Metadata. - * - * .. code-block:: yaml - * - * key: envoy.xxx - * path: - * - key: prop - * - key: foo - */ - export type MetadataKey = _envoy_type_metadata_v2_MetadataKey; - /** - * MetadataKey provides a general interface using `key` and `path` to retrieve value from - * :ref:`Metadata `. - * - * For example, for the following Metadata: - * - * .. code-block:: yaml - * - * filter_metadata: - * envoy.xxx: - * prop: - * foo: bar - * xyz: - * hello: envoy - * - * The following MetadataKey will retrieve a string value "bar" from the Metadata. - * - * .. code-block:: yaml - * - * key: envoy.xxx - * path: - * - key: prop - * - key: foo - */ - export type MetadataKey__Output = _envoy_type_metadata_v2_MetadataKey__Output; - /** - * Describes what kind of metadata. - */ - export type MetadataKind = _envoy_type_metadata_v2_MetadataKind; - /** - * Describes what kind of metadata. - */ - export type MetadataKind__Output = _envoy_type_metadata_v2_MetadataKind__Output; - } - } - export namespace tracing { - export namespace v2 { - /** - * Describes custom tags for the active span. - * [#next-free-field: 6] - */ - export type CustomTag = _envoy_type_tracing_v2_CustomTag; - /** - * Describes custom tags for the active span. - * [#next-free-field: 6] - */ - export type CustomTag__Output = _envoy_type_tracing_v2_CustomTag__Output; - } - } - } - } - export namespace google { - export namespace api { - /** - * A custom pattern is used for defining custom HTTP verb. - */ - export type CustomHttpPattern = _google_api_CustomHttpPattern; - /** - * A custom pattern is used for defining custom HTTP verb. - */ - export type CustomHttpPattern__Output = _google_api_CustomHttpPattern__Output; - /** - * Defines the HTTP configuration for an API service. It contains a list of - * [HttpRule][google.api.HttpRule], each specifying the mapping of an RPC method - * to one or more HTTP REST API methods. - */ - export type Http = _google_api_Http; - /** - * Defines the HTTP configuration for an API service. It contains a list of - * [HttpRule][google.api.HttpRule], each specifying the mapping of an RPC method - * to one or more HTTP REST API methods. - */ - export type Http__Output = _google_api_Http__Output; - /** - * # gRPC Transcoding - * - * gRPC Transcoding is a feature for mapping between a gRPC method and one or - * more HTTP REST endpoints. It allows developers to build a single API service - * that supports both gRPC APIs and REST APIs. Many systems, including [Google - * APIs](https://github.com/googleapis/googleapis), - * [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC - * Gateway](https://github.com/grpc-ecosystem/grpc-gateway), - * and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature - * and use it for large scale production services. - * - * `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies - * how different portions of the gRPC request message are mapped to the URL - * path, URL query parameters, and HTTP request body. It also controls how the - * gRPC response message is mapped to the HTTP response body. `HttpRule` is - * typically specified as an `google.api.http` annotation on the gRPC method. - * - * Each mapping specifies a URL path template and an HTTP method. The path - * template may refer to one or more fields in the gRPC request message, as long - * as each field is a non-repeated field with a primitive (non-message) type. - * The path template controls how fields of the request message are mapped to - * the URL path. - * - * Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/{name=messages/*}" - * }; - * } - * } - * message GetMessageRequest { - * string name = 1; // Mapped to URL path. - * } - * message Message { - * string text = 1; // The resource content. - * } - * - * This enables an HTTP REST to gRPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")` - * - * Any fields in the request message which are not bound by the path template - * automatically become HTTP query parameters if there is no HTTP request body. - * For example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get:"/v1/messages/{message_id}" - * }; - * } - * } - * message GetMessageRequest { - * message SubMessage { - * string subfield = 1; - * } - * string message_id = 1; // Mapped to URL path. - * int64 revision = 2; // Mapped to URL query parameter `revision`. - * SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`. - * } - * - * This enables a HTTP JSON to RPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456?revision=2&sub.subfield=foo` | - * `GetMessage(message_id: "123456" revision: 2 sub: SubMessage(subfield: - * "foo"))` - * - * Note that fields which are mapped to URL query parameters must have a - * primitive type or a repeated primitive type or a non-repeated message type. - * In the case of a repeated type, the parameter can be repeated in the URL - * as `...?param=A¶m=B`. In the case of a message type, each field of the - * message is mapped to a separate parameter, such as - * `...?foo.a=A&foo.b=B&foo.c=C`. - * - * For HTTP methods that allow a request body, the `body` field - * specifies the mapping. Consider a REST update method on the - * message resource collection: - * - * service Messaging { - * rpc UpdateMessage(UpdateMessageRequest) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "message" - * }; - * } - * } - * message UpdateMessageRequest { - * string message_id = 1; // mapped to the URL - * Message message = 2; // mapped to the body - * } - * - * The following HTTP JSON to RPC mapping is enabled, where the - * representation of the JSON in the request body is determined by - * protos JSON encoding: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" message { text: "Hi!" })` - * - * The special name `*` can be used in the body mapping to define that - * every field not bound by the path template should be mapped to the - * request body. This enables the following alternative definition of - * the update method: - * - * service Messaging { - * rpc UpdateMessage(Message) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "*" - * }; - * } - * } - * message Message { - * string message_id = 1; - * string text = 2; - * } - * - * - * The following HTTP JSON to RPC mapping is enabled: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" text: "Hi!")` - * - * Note that when using `*` in the body mapping, it is not possible to - * have HTTP parameters, as all fields not bound by the path end in - * the body. This makes this option more rarely used in practice when - * defining REST APIs. The common usage of `*` is in custom methods - * which don't use the URL at all for transferring data. - * - * It is possible to define multiple HTTP methods for one RPC by using - * the `additional_bindings` option. Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/messages/{message_id}" - * additional_bindings { - * get: "/v1/users/{user_id}/messages/{message_id}" - * } - * }; - * } - * } - * message GetMessageRequest { - * string message_id = 1; - * string user_id = 2; - * } - * - * This enables the following two alternative HTTP JSON to RPC mappings: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` - * `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: - * "123456")` - * - * ## Rules for HTTP mapping - * - * 1. Leaf request fields (recursive expansion nested messages in the request - * message) are classified into three categories: - * - Fields referred by the path template. They are passed via the URL path. - * - Fields referred by the [HttpRule.body][google.api.HttpRule.body]. They are passed via the HTTP - * request body. - * - All other fields are passed via the URL query parameters, and the - * parameter name is the field path in the request message. A repeated - * field can be represented as multiple query parameters under the same - * name. - * 2. If [HttpRule.body][google.api.HttpRule.body] is "*", there is no URL query parameter, all fields - * are passed via URL path and HTTP request body. - * 3. If [HttpRule.body][google.api.HttpRule.body] is omitted, there is no HTTP request body, all - * fields are passed via URL path and URL query parameters. - * - * ### Path template syntax - * - * Template = "/" Segments [ Verb ] ; - * Segments = Segment { "/" Segment } ; - * Segment = "*" | "**" | LITERAL | Variable ; - * Variable = "{" FieldPath [ "=" Segments ] "}" ; - * FieldPath = IDENT { "." IDENT } ; - * Verb = ":" LITERAL ; - * - * The syntax `*` matches a single URL path segment. The syntax `**` matches - * zero or more URL path segments, which must be the last part of the URL path - * except the `Verb`. - * - * The syntax `Variable` matches part of the URL path as specified by its - * template. A variable template must not contain other variables. If a variable - * matches a single path segment, its template may be omitted, e.g. `{var}` - * is equivalent to `{var=*}`. - * - * The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL` - * contains any reserved character, such characters should be percent-encoded - * before the matching. - * - * If a variable contains exactly one path segment, such as `"{var}"` or - * `"{var=*}"`, when such a variable is expanded into a URL path on the client - * side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The - * server side does the reverse decoding. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{var}`. - * - * If a variable contains multiple path segments, such as `"{var=foo/*}"` - * or `"{var=**}"`, when such a variable is expanded into a URL path on the - * client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. - * The server side does the reverse decoding, except "%2F" and "%2f" are left - * unchanged. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{+var}`. - * - * ## Using gRPC API Service Configuration - * - * gRPC API Service Configuration (service config) is a configuration language - * for configuring a gRPC service to become a user-facing product. The - * service config is simply the YAML representation of the `google.api.Service` - * proto message. - * - * As an alternative to annotating your proto file, you can configure gRPC - * transcoding in your service config YAML files. You do this by specifying a - * `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same - * effect as the proto annotation. This can be particularly useful if you - * have a proto that is reused in multiple services. Note that any transcoding - * specified in the service config will override any matching transcoding - * configuration in the proto. - * - * Example: - * - * http: - * rules: - * # Selects a gRPC method and applies HttpRule to it. - * - selector: example.v1.Messaging.GetMessage - * get: /v1/messages/{message_id}/{sub.subfield} - * - * ## Special notes - * - * When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the - * proto to JSON conversion must follow the [proto3 - * specification](https://developers.google.com/protocol-buffers/docs/proto3#json). - * - * While the single segment variable follows the semantics of - * [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String - * Expansion, the multi segment variable **does not** follow RFC 6570 Section - * 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion - * does not expand special characters like `?` and `#`, which would lead - * to invalid URLs. As the result, gRPC Transcoding uses a custom encoding - * for multi segment variables. - * - * The path variables **must not** refer to any repeated or mapped field, - * because client libraries are not capable of handling such variable expansion. - * - * The path variables **must not** capture the leading "/" character. The reason - * is that the most common use case "{var}" does not capture the leading "/" - * character. For consistency, all path variables must share the same behavior. - * - * Repeated message fields must not be mapped to URL query parameters, because - * no client library can support such complicated mapping. - * - * If an API needs to use a JSON array for request or response body, it can map - * the request or response body to a repeated field. However, some gRPC - * Transcoding implementations may not support this feature. - */ - export type HttpRule = _google_api_HttpRule; - /** - * # gRPC Transcoding - * - * gRPC Transcoding is a feature for mapping between a gRPC method and one or - * more HTTP REST endpoints. It allows developers to build a single API service - * that supports both gRPC APIs and REST APIs. Many systems, including [Google - * APIs](https://github.com/googleapis/googleapis), - * [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC - * Gateway](https://github.com/grpc-ecosystem/grpc-gateway), - * and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature - * and use it for large scale production services. - * - * `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies - * how different portions of the gRPC request message are mapped to the URL - * path, URL query parameters, and HTTP request body. It also controls how the - * gRPC response message is mapped to the HTTP response body. `HttpRule` is - * typically specified as an `google.api.http` annotation on the gRPC method. - * - * Each mapping specifies a URL path template and an HTTP method. The path - * template may refer to one or more fields in the gRPC request message, as long - * as each field is a non-repeated field with a primitive (non-message) type. - * The path template controls how fields of the request message are mapped to - * the URL path. - * - * Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/{name=messages/*}" - * }; - * } - * } - * message GetMessageRequest { - * string name = 1; // Mapped to URL path. - * } - * message Message { - * string text = 1; // The resource content. - * } - * - * This enables an HTTP REST to gRPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")` - * - * Any fields in the request message which are not bound by the path template - * automatically become HTTP query parameters if there is no HTTP request body. - * For example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get:"/v1/messages/{message_id}" - * }; - * } - * } - * message GetMessageRequest { - * message SubMessage { - * string subfield = 1; - * } - * string message_id = 1; // Mapped to URL path. - * int64 revision = 2; // Mapped to URL query parameter `revision`. - * SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`. - * } - * - * This enables a HTTP JSON to RPC mapping as below: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456?revision=2&sub.subfield=foo` | - * `GetMessage(message_id: "123456" revision: 2 sub: SubMessage(subfield: - * "foo"))` - * - * Note that fields which are mapped to URL query parameters must have a - * primitive type or a repeated primitive type or a non-repeated message type. - * In the case of a repeated type, the parameter can be repeated in the URL - * as `...?param=A¶m=B`. In the case of a message type, each field of the - * message is mapped to a separate parameter, such as - * `...?foo.a=A&foo.b=B&foo.c=C`. - * - * For HTTP methods that allow a request body, the `body` field - * specifies the mapping. Consider a REST update method on the - * message resource collection: - * - * service Messaging { - * rpc UpdateMessage(UpdateMessageRequest) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "message" - * }; - * } - * } - * message UpdateMessageRequest { - * string message_id = 1; // mapped to the URL - * Message message = 2; // mapped to the body - * } - * - * The following HTTP JSON to RPC mapping is enabled, where the - * representation of the JSON in the request body is determined by - * protos JSON encoding: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" message { text: "Hi!" })` - * - * The special name `*` can be used in the body mapping to define that - * every field not bound by the path template should be mapped to the - * request body. This enables the following alternative definition of - * the update method: - * - * service Messaging { - * rpc UpdateMessage(Message) returns (Message) { - * option (google.api.http) = { - * patch: "/v1/messages/{message_id}" - * body: "*" - * }; - * } - * } - * message Message { - * string message_id = 1; - * string text = 2; - * } - * - * - * The following HTTP JSON to RPC mapping is enabled: - * - * HTTP | gRPC - * -----|----- - * `PATCH /v1/messages/123456 { "text": "Hi!" }` | `UpdateMessage(message_id: - * "123456" text: "Hi!")` - * - * Note that when using `*` in the body mapping, it is not possible to - * have HTTP parameters, as all fields not bound by the path end in - * the body. This makes this option more rarely used in practice when - * defining REST APIs. The common usage of `*` is in custom methods - * which don't use the URL at all for transferring data. - * - * It is possible to define multiple HTTP methods for one RPC by using - * the `additional_bindings` option. Example: - * - * service Messaging { - * rpc GetMessage(GetMessageRequest) returns (Message) { - * option (google.api.http) = { - * get: "/v1/messages/{message_id}" - * additional_bindings { - * get: "/v1/users/{user_id}/messages/{message_id}" - * } - * }; - * } - * } - * message GetMessageRequest { - * string message_id = 1; - * string user_id = 2; - * } - * - * This enables the following two alternative HTTP JSON to RPC mappings: - * - * HTTP | gRPC - * -----|----- - * `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` - * `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: - * "123456")` - * - * ## Rules for HTTP mapping - * - * 1. Leaf request fields (recursive expansion nested messages in the request - * message) are classified into three categories: - * - Fields referred by the path template. They are passed via the URL path. - * - Fields referred by the [HttpRule.body][google.api.HttpRule.body]. They are passed via the HTTP - * request body. - * - All other fields are passed via the URL query parameters, and the - * parameter name is the field path in the request message. A repeated - * field can be represented as multiple query parameters under the same - * name. - * 2. If [HttpRule.body][google.api.HttpRule.body] is "*", there is no URL query parameter, all fields - * are passed via URL path and HTTP request body. - * 3. If [HttpRule.body][google.api.HttpRule.body] is omitted, there is no HTTP request body, all - * fields are passed via URL path and URL query parameters. - * - * ### Path template syntax - * - * Template = "/" Segments [ Verb ] ; - * Segments = Segment { "/" Segment } ; - * Segment = "*" | "**" | LITERAL | Variable ; - * Variable = "{" FieldPath [ "=" Segments ] "}" ; - * FieldPath = IDENT { "." IDENT } ; - * Verb = ":" LITERAL ; - * - * The syntax `*` matches a single URL path segment. The syntax `**` matches - * zero or more URL path segments, which must be the last part of the URL path - * except the `Verb`. - * - * The syntax `Variable` matches part of the URL path as specified by its - * template. A variable template must not contain other variables. If a variable - * matches a single path segment, its template may be omitted, e.g. `{var}` - * is equivalent to `{var=*}`. - * - * The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL` - * contains any reserved character, such characters should be percent-encoded - * before the matching. - * - * If a variable contains exactly one path segment, such as `"{var}"` or - * `"{var=*}"`, when such a variable is expanded into a URL path on the client - * side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The - * server side does the reverse decoding. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{var}`. - * - * If a variable contains multiple path segments, such as `"{var=foo/*}"` - * or `"{var=**}"`, when such a variable is expanded into a URL path on the - * client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. - * The server side does the reverse decoding, except "%2F" and "%2f" are left - * unchanged. Such variables show up in the - * [Discovery - * Document](https://developers.google.com/discovery/v1/reference/apis) as - * `{+var}`. - * - * ## Using gRPC API Service Configuration - * - * gRPC API Service Configuration (service config) is a configuration language - * for configuring a gRPC service to become a user-facing product. The - * service config is simply the YAML representation of the `google.api.Service` - * proto message. - * - * As an alternative to annotating your proto file, you can configure gRPC - * transcoding in your service config YAML files. You do this by specifying a - * `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same - * effect as the proto annotation. This can be particularly useful if you - * have a proto that is reused in multiple services. Note that any transcoding - * specified in the service config will override any matching transcoding - * configuration in the proto. - * - * Example: - * - * http: - * rules: - * # Selects a gRPC method and applies HttpRule to it. - * - selector: example.v1.Messaging.GetMessage - * get: /v1/messages/{message_id}/{sub.subfield} - * - * ## Special notes - * - * When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the - * proto to JSON conversion must follow the [proto3 - * specification](https://developers.google.com/protocol-buffers/docs/proto3#json). - * - * While the single segment variable follows the semantics of - * [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String - * Expansion, the multi segment variable **does not** follow RFC 6570 Section - * 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion - * does not expand special characters like `?` and `#`, which would lead - * to invalid URLs. As the result, gRPC Transcoding uses a custom encoding - * for multi segment variables. - * - * The path variables **must not** refer to any repeated or mapped field, - * because client libraries are not capable of handling such variable expansion. - * - * The path variables **must not** capture the leading "/" character. The reason - * is that the most common use case "{var}" does not capture the leading "/" - * character. For consistency, all path variables must share the same behavior. - * - * Repeated message fields must not be mapped to URL query parameters, because - * no client library can support such complicated mapping. - * - * If an API needs to use a JSON array for request or response body, it can map - * the request or response body to a repeated field. However, some gRPC - * Transcoding implementations may not support this feature. - */ - export type HttpRule__Output = _google_api_HttpRule__Output; - } - export namespace protobuf { - export type Any = _google_protobuf_Any; - export type Any__Output = _google_protobuf_Any__Output; - export type BoolValue = _google_protobuf_BoolValue; - export type BoolValue__Output = _google_protobuf_BoolValue__Output; - export type BytesValue = _google_protobuf_BytesValue; - export type BytesValue__Output = _google_protobuf_BytesValue__Output; - export type DescriptorProto = _google_protobuf_DescriptorProto; - export type DescriptorProto__Output = _google_protobuf_DescriptorProto__Output; - export type DoubleValue = _google_protobuf_DoubleValue; - export type DoubleValue__Output = _google_protobuf_DoubleValue__Output; - export type Duration = _google_protobuf_Duration; - export type Duration__Output = _google_protobuf_Duration__Output; - export type Empty = _google_protobuf_Empty; - export type Empty__Output = _google_protobuf_Empty__Output; - export type EnumDescriptorProto = _google_protobuf_EnumDescriptorProto; - export type EnumDescriptorProto__Output = _google_protobuf_EnumDescriptorProto__Output; - export type EnumOptions = _google_protobuf_EnumOptions; - export type EnumOptions__Output = _google_protobuf_EnumOptions__Output; - export type EnumValueDescriptorProto = _google_protobuf_EnumValueDescriptorProto; - export type EnumValueDescriptorProto__Output = _google_protobuf_EnumValueDescriptorProto__Output; - export type EnumValueOptions = _google_protobuf_EnumValueOptions; - export type EnumValueOptions__Output = _google_protobuf_EnumValueOptions__Output; - export type FieldDescriptorProto = _google_protobuf_FieldDescriptorProto; - export type FieldDescriptorProto__Output = _google_protobuf_FieldDescriptorProto__Output; - export type FieldOptions = _google_protobuf_FieldOptions; - export type FieldOptions__Output = _google_protobuf_FieldOptions__Output; - export type FileDescriptorProto = _google_protobuf_FileDescriptorProto; - export type FileDescriptorProto__Output = _google_protobuf_FileDescriptorProto__Output; - export type FileDescriptorSet = _google_protobuf_FileDescriptorSet; - export type FileDescriptorSet__Output = _google_protobuf_FileDescriptorSet__Output; - export type FileOptions = _google_protobuf_FileOptions; - export type FileOptions__Output = _google_protobuf_FileOptions__Output; - export type FloatValue = _google_protobuf_FloatValue; - export type FloatValue__Output = _google_protobuf_FloatValue__Output; - export type GeneratedCodeInfo = _google_protobuf_GeneratedCodeInfo; - export type GeneratedCodeInfo__Output = _google_protobuf_GeneratedCodeInfo__Output; - export type Int32Value = _google_protobuf_Int32Value; - export type Int32Value__Output = _google_protobuf_Int32Value__Output; - export type Int64Value = _google_protobuf_Int64Value; - export type Int64Value__Output = _google_protobuf_Int64Value__Output; - export type ListValue = _google_protobuf_ListValue; - export type ListValue__Output = _google_protobuf_ListValue__Output; - export type MessageOptions = _google_protobuf_MessageOptions; - export type MessageOptions__Output = _google_protobuf_MessageOptions__Output; - export type MethodDescriptorProto = _google_protobuf_MethodDescriptorProto; - export type MethodDescriptorProto__Output = _google_protobuf_MethodDescriptorProto__Output; - export type MethodOptions = _google_protobuf_MethodOptions; - export type MethodOptions__Output = _google_protobuf_MethodOptions__Output; - export type NullValue = _google_protobuf_NullValue; - export type OneofDescriptorProto = _google_protobuf_OneofDescriptorProto; - export type OneofDescriptorProto__Output = _google_protobuf_OneofDescriptorProto__Output; - export type OneofOptions = _google_protobuf_OneofOptions; - export type OneofOptions__Output = _google_protobuf_OneofOptions__Output; - export type ServiceDescriptorProto = _google_protobuf_ServiceDescriptorProto; - export type ServiceDescriptorProto__Output = _google_protobuf_ServiceDescriptorProto__Output; - export type ServiceOptions = _google_protobuf_ServiceOptions; - export type ServiceOptions__Output = _google_protobuf_ServiceOptions__Output; - export type SourceCodeInfo = _google_protobuf_SourceCodeInfo; - export type SourceCodeInfo__Output = _google_protobuf_SourceCodeInfo__Output; - export type StringValue = _google_protobuf_StringValue; - export type StringValue__Output = _google_protobuf_StringValue__Output; - export type Struct = _google_protobuf_Struct; - export type Struct__Output = _google_protobuf_Struct__Output; - export type Timestamp = _google_protobuf_Timestamp; - export type Timestamp__Output = _google_protobuf_Timestamp__Output; - export type UInt32Value = _google_protobuf_UInt32Value; - export type UInt32Value__Output = _google_protobuf_UInt32Value__Output; - export type UInt64Value = _google_protobuf_UInt64Value; - export type UInt64Value__Output = _google_protobuf_UInt64Value__Output; - export type UninterpretedOption = _google_protobuf_UninterpretedOption; - export type UninterpretedOption__Output = _google_protobuf_UninterpretedOption__Output; - export type Value = _google_protobuf_Value; - export type Value__Output = _google_protobuf_Value__Output; - } - } - export namespace udpa { - export namespace annotations { - export type FieldMigrateAnnotation = _udpa_annotations_FieldMigrateAnnotation; - export type FieldMigrateAnnotation__Output = _udpa_annotations_FieldMigrateAnnotation__Output; - export type FileMigrateAnnotation = _udpa_annotations_FileMigrateAnnotation; - export type FileMigrateAnnotation__Output = _udpa_annotations_FileMigrateAnnotation__Output; - export type MigrateAnnotation = _udpa_annotations_MigrateAnnotation; - export type MigrateAnnotation__Output = _udpa_annotations_MigrateAnnotation__Output; - export type PackageVersionStatus = _udpa_annotations_PackageVersionStatus; - export type StatusAnnotation = _udpa_annotations_StatusAnnotation; - export type StatusAnnotation__Output = _udpa_annotations_StatusAnnotation__Output; - } - } - export namespace validate { - /** - * AnyRules describe constraints applied exclusively to the - * `google.protobuf.Any` well-known type - */ - export type AnyRules = _validate_AnyRules; - /** - * AnyRules describe constraints applied exclusively to the - * `google.protobuf.Any` well-known type - */ - export type AnyRules__Output = _validate_AnyRules__Output; - /** - * BoolRules describes the constraints applied to `bool` values - */ - export type BoolRules = _validate_BoolRules; - /** - * BoolRules describes the constraints applied to `bool` values - */ - export type BoolRules__Output = _validate_BoolRules__Output; - /** - * BytesRules describe the constraints applied to `bytes` values - */ - export type BytesRules = _validate_BytesRules; - /** - * BytesRules describe the constraints applied to `bytes` values - */ - export type BytesRules__Output = _validate_BytesRules__Output; - /** - * DoubleRules describes the constraints applied to `double` values - */ - export type DoubleRules = _validate_DoubleRules; - /** - * DoubleRules describes the constraints applied to `double` values - */ - export type DoubleRules__Output = _validate_DoubleRules__Output; - /** - * DurationRules describe the constraints applied exclusively to the - * `google.protobuf.Duration` well-known type - */ - export type DurationRules = _validate_DurationRules; - /** - * DurationRules describe the constraints applied exclusively to the - * `google.protobuf.Duration` well-known type - */ - export type DurationRules__Output = _validate_DurationRules__Output; - /** - * EnumRules describe the constraints applied to enum values - */ - export type EnumRules = _validate_EnumRules; - /** - * EnumRules describe the constraints applied to enum values - */ - export type EnumRules__Output = _validate_EnumRules__Output; - /** - * FieldRules encapsulates the rules for each type of field. Depending on the - * field, the correct set should be used to ensure proper validations. - */ - export type FieldRules = _validate_FieldRules; - /** - * FieldRules encapsulates the rules for each type of field. Depending on the - * field, the correct set should be used to ensure proper validations. - */ - export type FieldRules__Output = _validate_FieldRules__Output; - /** - * Fixed32Rules describes the constraints applied to `fixed32` values - */ - export type Fixed32Rules = _validate_Fixed32Rules; - /** - * Fixed32Rules describes the constraints applied to `fixed32` values - */ - export type Fixed32Rules__Output = _validate_Fixed32Rules__Output; - /** - * Fixed64Rules describes the constraints applied to `fixed64` values - */ - export type Fixed64Rules = _validate_Fixed64Rules; - /** - * Fixed64Rules describes the constraints applied to `fixed64` values - */ - export type Fixed64Rules__Output = _validate_Fixed64Rules__Output; - /** - * FloatRules describes the constraints applied to `float` values - */ - export type FloatRules = _validate_FloatRules; - /** - * FloatRules describes the constraints applied to `float` values - */ - export type FloatRules__Output = _validate_FloatRules__Output; - /** - * Int32Rules describes the constraints applied to `int32` values - */ - export type Int32Rules = _validate_Int32Rules; - /** - * Int32Rules describes the constraints applied to `int32` values - */ - export type Int32Rules__Output = _validate_Int32Rules__Output; - /** - * Int64Rules describes the constraints applied to `int64` values - */ - export type Int64Rules = _validate_Int64Rules; - /** - * Int64Rules describes the constraints applied to `int64` values - */ - export type Int64Rules__Output = _validate_Int64Rules__Output; - /** - * WellKnownRegex contain some well-known patterns. - */ - export type KnownRegex = _validate_KnownRegex; - /** - * MapRules describe the constraints applied to `map` values - */ - export type MapRules = _validate_MapRules; - /** - * MapRules describe the constraints applied to `map` values - */ - export type MapRules__Output = _validate_MapRules__Output; - /** - * MessageRules describe the constraints applied to embedded message values. - * For message-type fields, validation is performed recursively. - */ - export type MessageRules = _validate_MessageRules; - /** - * MessageRules describe the constraints applied to embedded message values. - * For message-type fields, validation is performed recursively. - */ - export type MessageRules__Output = _validate_MessageRules__Output; - /** - * RepeatedRules describe the constraints applied to `repeated` values - */ - export type RepeatedRules = _validate_RepeatedRules; - /** - * RepeatedRules describe the constraints applied to `repeated` values - */ - export type RepeatedRules__Output = _validate_RepeatedRules__Output; - /** - * SFixed32Rules describes the constraints applied to `sfixed32` values - */ - export type SFixed32Rules = _validate_SFixed32Rules; - /** - * SFixed32Rules describes the constraints applied to `sfixed32` values - */ - export type SFixed32Rules__Output = _validate_SFixed32Rules__Output; - /** - * SFixed64Rules describes the constraints applied to `sfixed64` values - */ - export type SFixed64Rules = _validate_SFixed64Rules; - /** - * SFixed64Rules describes the constraints applied to `sfixed64` values - */ - export type SFixed64Rules__Output = _validate_SFixed64Rules__Output; - /** - * SInt32Rules describes the constraints applied to `sint32` values - */ - export type SInt32Rules = _validate_SInt32Rules; - /** - * SInt32Rules describes the constraints applied to `sint32` values - */ - export type SInt32Rules__Output = _validate_SInt32Rules__Output; - /** - * SInt64Rules describes the constraints applied to `sint64` values - */ - export type SInt64Rules = _validate_SInt64Rules; - /** - * SInt64Rules describes the constraints applied to `sint64` values - */ - export type SInt64Rules__Output = _validate_SInt64Rules__Output; - /** - * StringRules describe the constraints applied to `string` values - */ - export type StringRules = _validate_StringRules; - /** - * StringRules describe the constraints applied to `string` values - */ - export type StringRules__Output = _validate_StringRules__Output; - /** - * TimestampRules describe the constraints applied exclusively to the - * `google.protobuf.Timestamp` well-known type - */ - export type TimestampRules = _validate_TimestampRules; - /** - * TimestampRules describe the constraints applied exclusively to the - * `google.protobuf.Timestamp` well-known type - */ - export type TimestampRules__Output = _validate_TimestampRules__Output; - /** - * UInt32Rules describes the constraints applied to `uint32` values - */ - export type UInt32Rules = _validate_UInt32Rules; - /** - * UInt32Rules describes the constraints applied to `uint32` values - */ - export type UInt32Rules__Output = _validate_UInt32Rules__Output; - /** - * UInt64Rules describes the constraints applied to `uint64` values - */ - export type UInt64Rules = _validate_UInt64Rules; - /** - * UInt64Rules describes the constraints applied to `uint64` values - */ - export type UInt64Rules__Output = _validate_UInt64Rules__Output; - } -} - -export namespace ClientInterfaces { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - export namespace Listener { - export namespace ConnectionBalanceConfig { - export namespace ExactBalance { - } - } - export namespace DeprecatedV1 { - } - } - export namespace auth { - export namespace CertificateValidationContext { - } - export namespace CommonTlsContext { - export namespace CombinedCertificateValidationContext { - } - } - export namespace DownstreamTlsContext { - } - export namespace GenericSecret { - } - export namespace PrivateKeyProvider { - } - export namespace SdsSecretConfig { - } - export namespace Secret { - } - export namespace TlsCertificate { - } - export namespace TlsParameters { - } - export namespace TlsSessionTicketKeys { - } - export namespace UpstreamTlsContext { - } - } - export namespace core { - export namespace Address { - } - export namespace AggregatedConfigSource { - } - export namespace ApiConfigSource { - } - export namespace AsyncDataSource { - } - export namespace BackoffStrategy { - } - export namespace BindConfig { - } - export namespace BuildVersion { - } - export namespace CidrRange { - } - export namespace ConfigSource { - } - export namespace ControlPlane { - } - export namespace DataSource { - } - export namespace Extension { - } - export namespace GrpcService { - export namespace EnvoyGrpc { - } - export namespace GoogleGrpc { - export namespace CallCredentials { - export namespace GoogleIAMCredentials { - } - export namespace MetadataCredentialsFromPlugin { - } - export namespace ServiceAccountJWTAccessCredentials { - } - export namespace StsService { - } - } - export namespace ChannelCredentials { - } - export namespace GoogleLocalCredentials { - } - export namespace SslCredentials { - } - } - } - export namespace HeaderMap { - } - export namespace HeaderValue { - } - export namespace HeaderValueOption { - } - export namespace HttpUri { - } - export namespace Locality { - } - export namespace Metadata { - } - export namespace Node { - } - export namespace Pipe { - } - export namespace RateLimitSettings { - } - export namespace RemoteDataSource { - } - export namespace RetryPolicy { - } - export namespace RuntimeDouble { - } - export namespace RuntimeFeatureFlag { - } - export namespace RuntimeFractionalPercent { - } - export namespace RuntimeUInt32 { - } - export namespace SelfConfigSource { - } - export namespace SocketAddress { - } - export namespace SocketOption { - } - export namespace TcpKeepalive { - } - export namespace TransportSocket { - } - } - export namespace listener { - export namespace ActiveRawUdpListenerConfig { - } - export namespace Filter { - } - export namespace FilterChain { - } - export namespace FilterChainMatch { - } - export namespace ListenerFilter { - } - export namespace ListenerFilterChainMatchPredicate { - export namespace MatchSet { - } - } - export namespace UdpListenerConfig { - } - } - export namespace route { - export namespace CorsPolicy { - } - export namespace Decorator { - } - export namespace DirectResponseAction { - } - export namespace FilterAction { - } - export namespace HeaderMatcher { - } - export namespace HedgePolicy { - } - export namespace QueryParameterMatcher { - } - export namespace RateLimit { - export namespace Action { - export namespace DestinationCluster { - } - export namespace GenericKey { - } - export namespace HeaderValueMatch { - } - export namespace RemoteAddress { - } - export namespace RequestHeaders { - } - export namespace SourceCluster { - } - } - } - export namespace RedirectAction { - } - export namespace RetryPolicy { - export namespace RetryBackOff { - } - export namespace RetryHostPredicate { - } - export namespace RetryPriority { - } - } - export namespace Route { - } - export namespace RouteAction { - export namespace HashPolicy { - export namespace ConnectionProperties { - } - export namespace Cookie { - } - export namespace FilterState { - } - export namespace Header { - } - export namespace QueryParameter { - } - } - export namespace RequestMirrorPolicy { - } - export namespace UpgradeConfig { - } - } - export namespace RouteMatch { - export namespace GrpcRouteMatchOptions { - } - export namespace TlsContextMatchOptions { - } - } - export namespace Tracing { - } - export namespace VirtualCluster { - } - export namespace VirtualHost { - } - export namespace WeightedCluster { - export namespace ClusterWeight { - } - } - } - } - } - export namespace config { - export namespace filter { - export namespace accesslog { - export namespace v2 { - export namespace AccessLog { - } - export namespace AccessLogFilter { - } - export namespace AndFilter { - } - export namespace ComparisonFilter { - } - export namespace DurationFilter { - } - export namespace ExtensionFilter { - } - export namespace GrpcStatusFilter { - } - export namespace HeaderFilter { - } - export namespace NotHealthCheckFilter { - } - export namespace OrFilter { - } - export namespace ResponseFlagFilter { - } - export namespace RuntimeFilter { - } - export namespace StatusCodeFilter { - } - export namespace TraceableFilter { - } - } - } - } - export namespace listener { - export namespace v2 { - export namespace ApiListener { - } - } - } - } - export namespace type { - export namespace DoubleRange { - } - export namespace FractionalPercent { - } - export namespace Int32Range { - } - export namespace Int64Range { - } - export namespace Percent { - } - export namespace SemanticVersion { - } - export namespace matcher { - export namespace ListStringMatcher { - } - export namespace RegexMatchAndSubstitute { - } - export namespace RegexMatcher { - export namespace GoogleRE2 { - } - } - export namespace StringMatcher { - } - } - export namespace metadata { - export namespace v2 { - export namespace MetadataKey { - export namespace PathSegment { - } - } - export namespace MetadataKind { - export namespace Cluster { - } - export namespace Host { - } - export namespace Request { - } - export namespace Route { - } - } - } - } - export namespace tracing { - export namespace v2 { - export namespace CustomTag { - export namespace Environment { - } - export namespace Header { - } - export namespace Literal { - } - export namespace Metadata { - } - } - } - } - } - } - export namespace google { - export namespace api { - export namespace CustomHttpPattern { - } - export namespace Http { - } - export namespace HttpRule { - } - } - export namespace protobuf { - export namespace Any { - } - export namespace BoolValue { - } - export namespace BytesValue { - } - export namespace DescriptorProto { - export namespace ExtensionRange { - } - export namespace ReservedRange { - } - } - export namespace DoubleValue { - } - export namespace Duration { - } - export namespace Empty { - } - export namespace EnumDescriptorProto { - } - export namespace EnumOptions { - } - export namespace EnumValueDescriptorProto { - } - export namespace EnumValueOptions { - } - export namespace FieldDescriptorProto { - } - export namespace FieldOptions { - } - export namespace FileDescriptorProto { - } - export namespace FileDescriptorSet { - } - export namespace FileOptions { - } - export namespace FloatValue { - } - export namespace GeneratedCodeInfo { - export namespace Annotation { - } - } - export namespace Int32Value { - } - export namespace Int64Value { - } - export namespace ListValue { - } - export namespace MessageOptions { - } - export namespace MethodDescriptorProto { - } - export namespace MethodOptions { - } - export namespace OneofDescriptorProto { - } - export namespace OneofOptions { - } - export namespace ServiceDescriptorProto { - } - export namespace ServiceOptions { - } - export namespace SourceCodeInfo { - export namespace Location { - } - } - export namespace StringValue { - } - export namespace Struct { - } - export namespace Timestamp { - } - export namespace UInt32Value { - } - export namespace UInt64Value { - } - export namespace UninterpretedOption { - export namespace NamePart { - } - } - export namespace Value { - } - } - } - export namespace udpa { - export namespace annotations { - export namespace FieldMigrateAnnotation { - } - export namespace FileMigrateAnnotation { - } - export namespace MigrateAnnotation { - } - export namespace StatusAnnotation { - } - } - } - export namespace validate { - export namespace AnyRules { - } - export namespace BoolRules { - } - export namespace BytesRules { - } - export namespace DoubleRules { - } - export namespace DurationRules { - } - export namespace EnumRules { - } - export namespace FieldRules { - } - export namespace Fixed32Rules { - } - export namespace Fixed64Rules { - } - export namespace FloatRules { - } - export namespace Int32Rules { - } - export namespace Int64Rules { - } - export namespace MapRules { - } - export namespace MessageRules { - } - export namespace RepeatedRules { - } - export namespace SFixed32Rules { - } - export namespace SFixed64Rules { - } - export namespace SInt32Rules { - } - export namespace SInt64Rules { - } - export namespace StringRules { - } - export namespace TimestampRules { - } - export namespace UInt32Rules { - } - export namespace UInt64Rules { - } - } -} type ConstructorArguments = Constructor extends new (...args: infer Args) => any ? Args: never; type SubtypeConstructor = { @@ -2929,485 +232,3 @@ export interface ProtoGrpcType { } } -export namespace ServiceHandlers { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - export namespace Listener { - export namespace ConnectionBalanceConfig { - export namespace ExactBalance { - } - } - export namespace DeprecatedV1 { - } - } - export namespace auth { - export namespace CertificateValidationContext { - } - export namespace CommonTlsContext { - export namespace CombinedCertificateValidationContext { - } - } - export namespace DownstreamTlsContext { - } - export namespace GenericSecret { - } - export namespace PrivateKeyProvider { - } - export namespace SdsSecretConfig { - } - export namespace Secret { - } - export namespace TlsCertificate { - } - export namespace TlsParameters { - } - export namespace TlsSessionTicketKeys { - } - export namespace UpstreamTlsContext { - } - } - export namespace core { - export namespace Address { - } - export namespace AggregatedConfigSource { - } - export namespace ApiConfigSource { - } - export namespace AsyncDataSource { - } - export namespace BackoffStrategy { - } - export namespace BindConfig { - } - export namespace BuildVersion { - } - export namespace CidrRange { - } - export namespace ConfigSource { - } - export namespace ControlPlane { - } - export namespace DataSource { - } - export namespace Extension { - } - export namespace GrpcService { - export namespace EnvoyGrpc { - } - export namespace GoogleGrpc { - export namespace CallCredentials { - export namespace GoogleIAMCredentials { - } - export namespace MetadataCredentialsFromPlugin { - } - export namespace ServiceAccountJWTAccessCredentials { - } - export namespace StsService { - } - } - export namespace ChannelCredentials { - } - export namespace GoogleLocalCredentials { - } - export namespace SslCredentials { - } - } - } - export namespace HeaderMap { - } - export namespace HeaderValue { - } - export namespace HeaderValueOption { - } - export namespace HttpUri { - } - export namespace Locality { - } - export namespace Metadata { - } - export namespace Node { - } - export namespace Pipe { - } - export namespace RateLimitSettings { - } - export namespace RemoteDataSource { - } - export namespace RetryPolicy { - } - export namespace RuntimeDouble { - } - export namespace RuntimeFeatureFlag { - } - export namespace RuntimeFractionalPercent { - } - export namespace RuntimeUInt32 { - } - export namespace SelfConfigSource { - } - export namespace SocketAddress { - } - export namespace SocketOption { - } - export namespace TcpKeepalive { - } - export namespace TransportSocket { - } - } - export namespace listener { - export namespace ActiveRawUdpListenerConfig { - } - export namespace Filter { - } - export namespace FilterChain { - } - export namespace FilterChainMatch { - } - export namespace ListenerFilter { - } - export namespace ListenerFilterChainMatchPredicate { - export namespace MatchSet { - } - } - export namespace UdpListenerConfig { - } - } - export namespace route { - export namespace CorsPolicy { - } - export namespace Decorator { - } - export namespace DirectResponseAction { - } - export namespace FilterAction { - } - export namespace HeaderMatcher { - } - export namespace HedgePolicy { - } - export namespace QueryParameterMatcher { - } - export namespace RateLimit { - export namespace Action { - export namespace DestinationCluster { - } - export namespace GenericKey { - } - export namespace HeaderValueMatch { - } - export namespace RemoteAddress { - } - export namespace RequestHeaders { - } - export namespace SourceCluster { - } - } - } - export namespace RedirectAction { - } - export namespace RetryPolicy { - export namespace RetryBackOff { - } - export namespace RetryHostPredicate { - } - export namespace RetryPriority { - } - } - export namespace Route { - } - export namespace RouteAction { - export namespace HashPolicy { - export namespace ConnectionProperties { - } - export namespace Cookie { - } - export namespace FilterState { - } - export namespace Header { - } - export namespace QueryParameter { - } - } - export namespace RequestMirrorPolicy { - } - export namespace UpgradeConfig { - } - } - export namespace RouteMatch { - export namespace GrpcRouteMatchOptions { - } - export namespace TlsContextMatchOptions { - } - } - export namespace Tracing { - } - export namespace VirtualCluster { - } - export namespace VirtualHost { - } - export namespace WeightedCluster { - export namespace ClusterWeight { - } - } - } - } - } - export namespace config { - export namespace filter { - export namespace accesslog { - export namespace v2 { - export namespace AccessLog { - } - export namespace AccessLogFilter { - } - export namespace AndFilter { - } - export namespace ComparisonFilter { - } - export namespace DurationFilter { - } - export namespace ExtensionFilter { - } - export namespace GrpcStatusFilter { - } - export namespace HeaderFilter { - } - export namespace NotHealthCheckFilter { - } - export namespace OrFilter { - } - export namespace ResponseFlagFilter { - } - export namespace RuntimeFilter { - } - export namespace StatusCodeFilter { - } - export namespace TraceableFilter { - } - } - } - } - export namespace listener { - export namespace v2 { - export namespace ApiListener { - } - } - } - } - export namespace type { - export namespace DoubleRange { - } - export namespace FractionalPercent { - } - export namespace Int32Range { - } - export namespace Int64Range { - } - export namespace Percent { - } - export namespace SemanticVersion { - } - export namespace matcher { - export namespace ListStringMatcher { - } - export namespace RegexMatchAndSubstitute { - } - export namespace RegexMatcher { - export namespace GoogleRE2 { - } - } - export namespace StringMatcher { - } - } - export namespace metadata { - export namespace v2 { - export namespace MetadataKey { - export namespace PathSegment { - } - } - export namespace MetadataKind { - export namespace Cluster { - } - export namespace Host { - } - export namespace Request { - } - export namespace Route { - } - } - } - } - export namespace tracing { - export namespace v2 { - export namespace CustomTag { - export namespace Environment { - } - export namespace Header { - } - export namespace Literal { - } - export namespace Metadata { - } - } - } - } - } - } - export namespace google { - export namespace api { - export namespace CustomHttpPattern { - } - export namespace Http { - } - export namespace HttpRule { - } - } - export namespace protobuf { - export namespace Any { - } - export namespace BoolValue { - } - export namespace BytesValue { - } - export namespace DescriptorProto { - export namespace ExtensionRange { - } - export namespace ReservedRange { - } - } - export namespace DoubleValue { - } - export namespace Duration { - } - export namespace Empty { - } - export namespace EnumDescriptorProto { - } - export namespace EnumOptions { - } - export namespace EnumValueDescriptorProto { - } - export namespace EnumValueOptions { - } - export namespace FieldDescriptorProto { - } - export namespace FieldOptions { - } - export namespace FileDescriptorProto { - } - export namespace FileDescriptorSet { - } - export namespace FileOptions { - } - export namespace FloatValue { - } - export namespace GeneratedCodeInfo { - export namespace Annotation { - } - } - export namespace Int32Value { - } - export namespace Int64Value { - } - export namespace ListValue { - } - export namespace MessageOptions { - } - export namespace MethodDescriptorProto { - } - export namespace MethodOptions { - } - export namespace OneofDescriptorProto { - } - export namespace OneofOptions { - } - export namespace ServiceDescriptorProto { - } - export namespace ServiceOptions { - } - export namespace SourceCodeInfo { - export namespace Location { - } - } - export namespace StringValue { - } - export namespace Struct { - } - export namespace Timestamp { - } - export namespace UInt32Value { - } - export namespace UInt64Value { - } - export namespace UninterpretedOption { - export namespace NamePart { - } - } - export namespace Value { - } - } - } - export namespace udpa { - export namespace annotations { - export namespace FieldMigrateAnnotation { - } - export namespace FileMigrateAnnotation { - } - export namespace MigrateAnnotation { - } - export namespace StatusAnnotation { - } - } - } - export namespace validate { - export namespace AnyRules { - } - export namespace BoolRules { - } - export namespace BytesRules { - } - export namespace DoubleRules { - } - export namespace DurationRules { - } - export namespace EnumRules { - } - export namespace FieldRules { - } - export namespace Fixed32Rules { - } - export namespace Fixed64Rules { - } - export namespace FloatRules { - } - export namespace Int32Rules { - } - export namespace Int64Rules { - } - export namespace MapRules { - } - export namespace MessageRules { - } - export namespace RepeatedRules { - } - export namespace SFixed32Rules { - } - export namespace SFixed64Rules { - } - export namespace SInt32Rules { - } - export namespace SInt64Rules { - } - export namespace StringRules { - } - export namespace TimestampRules { - } - export namespace UInt32Rules { - } - export namespace UInt64Rules { - } - } -} diff --git a/packages/grpc-js/src/generated/route.ts b/packages/grpc-js/src/generated/route.ts index 2a676be8..5b251477 100644 --- a/packages/grpc-js/src/generated/route.ts +++ b/packages/grpc-js/src/generated/route.ts @@ -1,1648 +1,6 @@ import * as grpc from '../index'; import { ServiceDefinition, EnumTypeDefinition, MessageTypeDefinition } from '@grpc/proto-loader'; -import { RouteConfiguration as _envoy_api_v2_RouteConfiguration, RouteConfiguration__Output as _envoy_api_v2_RouteConfiguration__Output } from './envoy/api/v2/RouteConfiguration'; -import { Vhds as _envoy_api_v2_Vhds, Vhds__Output as _envoy_api_v2_Vhds__Output } from './envoy/api/v2/Vhds'; -import { Address as _envoy_api_v2_core_Address, Address__Output as _envoy_api_v2_core_Address__Output } from './envoy/api/v2/core/Address'; -import { AggregatedConfigSource as _envoy_api_v2_core_AggregatedConfigSource, AggregatedConfigSource__Output as _envoy_api_v2_core_AggregatedConfigSource__Output } from './envoy/api/v2/core/AggregatedConfigSource'; -import { ApiConfigSource as _envoy_api_v2_core_ApiConfigSource, ApiConfigSource__Output as _envoy_api_v2_core_ApiConfigSource__Output } from './envoy/api/v2/core/ApiConfigSource'; -import { ApiVersion as _envoy_api_v2_core_ApiVersion } from './envoy/api/v2/core/ApiVersion'; -import { AsyncDataSource as _envoy_api_v2_core_AsyncDataSource, AsyncDataSource__Output as _envoy_api_v2_core_AsyncDataSource__Output } from './envoy/api/v2/core/AsyncDataSource'; -import { BackoffStrategy as _envoy_api_v2_core_BackoffStrategy, BackoffStrategy__Output as _envoy_api_v2_core_BackoffStrategy__Output } from './envoy/api/v2/core/BackoffStrategy'; -import { BindConfig as _envoy_api_v2_core_BindConfig, BindConfig__Output as _envoy_api_v2_core_BindConfig__Output } from './envoy/api/v2/core/BindConfig'; -import { BuildVersion as _envoy_api_v2_core_BuildVersion, BuildVersion__Output as _envoy_api_v2_core_BuildVersion__Output } from './envoy/api/v2/core/BuildVersion'; -import { CidrRange as _envoy_api_v2_core_CidrRange, CidrRange__Output as _envoy_api_v2_core_CidrRange__Output } from './envoy/api/v2/core/CidrRange'; -import { ConfigSource as _envoy_api_v2_core_ConfigSource, ConfigSource__Output as _envoy_api_v2_core_ConfigSource__Output } from './envoy/api/v2/core/ConfigSource'; -import { ControlPlane as _envoy_api_v2_core_ControlPlane, ControlPlane__Output as _envoy_api_v2_core_ControlPlane__Output } from './envoy/api/v2/core/ControlPlane'; -import { DataSource as _envoy_api_v2_core_DataSource, DataSource__Output as _envoy_api_v2_core_DataSource__Output } from './envoy/api/v2/core/DataSource'; -import { Extension as _envoy_api_v2_core_Extension, Extension__Output as _envoy_api_v2_core_Extension__Output } from './envoy/api/v2/core/Extension'; -import { GrpcService as _envoy_api_v2_core_GrpcService, GrpcService__Output as _envoy_api_v2_core_GrpcService__Output } from './envoy/api/v2/core/GrpcService'; -import { HeaderMap as _envoy_api_v2_core_HeaderMap, HeaderMap__Output as _envoy_api_v2_core_HeaderMap__Output } from './envoy/api/v2/core/HeaderMap'; -import { HeaderValue as _envoy_api_v2_core_HeaderValue, HeaderValue__Output as _envoy_api_v2_core_HeaderValue__Output } from './envoy/api/v2/core/HeaderValue'; -import { HeaderValueOption as _envoy_api_v2_core_HeaderValueOption, HeaderValueOption__Output as _envoy_api_v2_core_HeaderValueOption__Output } from './envoy/api/v2/core/HeaderValueOption'; -import { HttpUri as _envoy_api_v2_core_HttpUri, HttpUri__Output as _envoy_api_v2_core_HttpUri__Output } from './envoy/api/v2/core/HttpUri'; -import { Locality as _envoy_api_v2_core_Locality, Locality__Output as _envoy_api_v2_core_Locality__Output } from './envoy/api/v2/core/Locality'; -import { Metadata as _envoy_api_v2_core_Metadata, Metadata__Output as _envoy_api_v2_core_Metadata__Output } from './envoy/api/v2/core/Metadata'; -import { Node as _envoy_api_v2_core_Node, Node__Output as _envoy_api_v2_core_Node__Output } from './envoy/api/v2/core/Node'; -import { Pipe as _envoy_api_v2_core_Pipe, Pipe__Output as _envoy_api_v2_core_Pipe__Output } from './envoy/api/v2/core/Pipe'; -import { RateLimitSettings as _envoy_api_v2_core_RateLimitSettings, RateLimitSettings__Output as _envoy_api_v2_core_RateLimitSettings__Output } from './envoy/api/v2/core/RateLimitSettings'; -import { RemoteDataSource as _envoy_api_v2_core_RemoteDataSource, RemoteDataSource__Output as _envoy_api_v2_core_RemoteDataSource__Output } from './envoy/api/v2/core/RemoteDataSource'; -import { RequestMethod as _envoy_api_v2_core_RequestMethod } from './envoy/api/v2/core/RequestMethod'; -import { RetryPolicy as _envoy_api_v2_core_RetryPolicy, RetryPolicy__Output as _envoy_api_v2_core_RetryPolicy__Output } from './envoy/api/v2/core/RetryPolicy'; -import { RoutingPriority as _envoy_api_v2_core_RoutingPriority } from './envoy/api/v2/core/RoutingPriority'; -import { RuntimeDouble as _envoy_api_v2_core_RuntimeDouble, RuntimeDouble__Output as _envoy_api_v2_core_RuntimeDouble__Output } from './envoy/api/v2/core/RuntimeDouble'; -import { RuntimeFeatureFlag as _envoy_api_v2_core_RuntimeFeatureFlag, RuntimeFeatureFlag__Output as _envoy_api_v2_core_RuntimeFeatureFlag__Output } from './envoy/api/v2/core/RuntimeFeatureFlag'; -import { RuntimeFractionalPercent as _envoy_api_v2_core_RuntimeFractionalPercent, RuntimeFractionalPercent__Output as _envoy_api_v2_core_RuntimeFractionalPercent__Output } from './envoy/api/v2/core/RuntimeFractionalPercent'; -import { RuntimeUInt32 as _envoy_api_v2_core_RuntimeUInt32, RuntimeUInt32__Output as _envoy_api_v2_core_RuntimeUInt32__Output } from './envoy/api/v2/core/RuntimeUInt32'; -import { SelfConfigSource as _envoy_api_v2_core_SelfConfigSource, SelfConfigSource__Output as _envoy_api_v2_core_SelfConfigSource__Output } from './envoy/api/v2/core/SelfConfigSource'; -import { SocketAddress as _envoy_api_v2_core_SocketAddress, SocketAddress__Output as _envoy_api_v2_core_SocketAddress__Output } from './envoy/api/v2/core/SocketAddress'; -import { SocketOption as _envoy_api_v2_core_SocketOption, SocketOption__Output as _envoy_api_v2_core_SocketOption__Output } from './envoy/api/v2/core/SocketOption'; -import { TcpKeepalive as _envoy_api_v2_core_TcpKeepalive, TcpKeepalive__Output as _envoy_api_v2_core_TcpKeepalive__Output } from './envoy/api/v2/core/TcpKeepalive'; -import { TrafficDirection as _envoy_api_v2_core_TrafficDirection } from './envoy/api/v2/core/TrafficDirection'; -import { TransportSocket as _envoy_api_v2_core_TransportSocket, TransportSocket__Output as _envoy_api_v2_core_TransportSocket__Output } from './envoy/api/v2/core/TransportSocket'; -import { CorsPolicy as _envoy_api_v2_route_CorsPolicy, CorsPolicy__Output as _envoy_api_v2_route_CorsPolicy__Output } from './envoy/api/v2/route/CorsPolicy'; -import { Decorator as _envoy_api_v2_route_Decorator, Decorator__Output as _envoy_api_v2_route_Decorator__Output } from './envoy/api/v2/route/Decorator'; -import { DirectResponseAction as _envoy_api_v2_route_DirectResponseAction, DirectResponseAction__Output as _envoy_api_v2_route_DirectResponseAction__Output } from './envoy/api/v2/route/DirectResponseAction'; -import { FilterAction as _envoy_api_v2_route_FilterAction, FilterAction__Output as _envoy_api_v2_route_FilterAction__Output } from './envoy/api/v2/route/FilterAction'; -import { HeaderMatcher as _envoy_api_v2_route_HeaderMatcher, HeaderMatcher__Output as _envoy_api_v2_route_HeaderMatcher__Output } from './envoy/api/v2/route/HeaderMatcher'; -import { HedgePolicy as _envoy_api_v2_route_HedgePolicy, HedgePolicy__Output as _envoy_api_v2_route_HedgePolicy__Output } from './envoy/api/v2/route/HedgePolicy'; -import { QueryParameterMatcher as _envoy_api_v2_route_QueryParameterMatcher, QueryParameterMatcher__Output as _envoy_api_v2_route_QueryParameterMatcher__Output } from './envoy/api/v2/route/QueryParameterMatcher'; -import { RateLimit as _envoy_api_v2_route_RateLimit, RateLimit__Output as _envoy_api_v2_route_RateLimit__Output } from './envoy/api/v2/route/RateLimit'; -import { RedirectAction as _envoy_api_v2_route_RedirectAction, RedirectAction__Output as _envoy_api_v2_route_RedirectAction__Output } from './envoy/api/v2/route/RedirectAction'; -import { RetryPolicy as _envoy_api_v2_route_RetryPolicy, RetryPolicy__Output as _envoy_api_v2_route_RetryPolicy__Output } from './envoy/api/v2/route/RetryPolicy'; -import { Route as _envoy_api_v2_route_Route, Route__Output as _envoy_api_v2_route_Route__Output } from './envoy/api/v2/route/Route'; -import { RouteAction as _envoy_api_v2_route_RouteAction, RouteAction__Output as _envoy_api_v2_route_RouteAction__Output } from './envoy/api/v2/route/RouteAction'; -import { RouteMatch as _envoy_api_v2_route_RouteMatch, RouteMatch__Output as _envoy_api_v2_route_RouteMatch__Output } from './envoy/api/v2/route/RouteMatch'; -import { Tracing as _envoy_api_v2_route_Tracing, Tracing__Output as _envoy_api_v2_route_Tracing__Output } from './envoy/api/v2/route/Tracing'; -import { VirtualCluster as _envoy_api_v2_route_VirtualCluster, VirtualCluster__Output as _envoy_api_v2_route_VirtualCluster__Output } from './envoy/api/v2/route/VirtualCluster'; -import { VirtualHost as _envoy_api_v2_route_VirtualHost, VirtualHost__Output as _envoy_api_v2_route_VirtualHost__Output } from './envoy/api/v2/route/VirtualHost'; -import { WeightedCluster as _envoy_api_v2_route_WeightedCluster, WeightedCluster__Output as _envoy_api_v2_route_WeightedCluster__Output } from './envoy/api/v2/route/WeightedCluster'; -import { DoubleRange as _envoy_type_DoubleRange, DoubleRange__Output as _envoy_type_DoubleRange__Output } from './envoy/type/DoubleRange'; -import { FractionalPercent as _envoy_type_FractionalPercent, FractionalPercent__Output as _envoy_type_FractionalPercent__Output } from './envoy/type/FractionalPercent'; -import { Int32Range as _envoy_type_Int32Range, Int32Range__Output as _envoy_type_Int32Range__Output } from './envoy/type/Int32Range'; -import { Int64Range as _envoy_type_Int64Range, Int64Range__Output as _envoy_type_Int64Range__Output } from './envoy/type/Int64Range'; -import { Percent as _envoy_type_Percent, Percent__Output as _envoy_type_Percent__Output } from './envoy/type/Percent'; -import { SemanticVersion as _envoy_type_SemanticVersion, SemanticVersion__Output as _envoy_type_SemanticVersion__Output } from './envoy/type/SemanticVersion'; -import { ListStringMatcher as _envoy_type_matcher_ListStringMatcher, ListStringMatcher__Output as _envoy_type_matcher_ListStringMatcher__Output } from './envoy/type/matcher/ListStringMatcher'; -import { RegexMatchAndSubstitute as _envoy_type_matcher_RegexMatchAndSubstitute, RegexMatchAndSubstitute__Output as _envoy_type_matcher_RegexMatchAndSubstitute__Output } from './envoy/type/matcher/RegexMatchAndSubstitute'; -import { RegexMatcher as _envoy_type_matcher_RegexMatcher, RegexMatcher__Output as _envoy_type_matcher_RegexMatcher__Output } from './envoy/type/matcher/RegexMatcher'; -import { StringMatcher as _envoy_type_matcher_StringMatcher, StringMatcher__Output as _envoy_type_matcher_StringMatcher__Output } from './envoy/type/matcher/StringMatcher'; -import { MetadataKey as _envoy_type_metadata_v2_MetadataKey, MetadataKey__Output as _envoy_type_metadata_v2_MetadataKey__Output } from './envoy/type/metadata/v2/MetadataKey'; -import { MetadataKind as _envoy_type_metadata_v2_MetadataKind, MetadataKind__Output as _envoy_type_metadata_v2_MetadataKind__Output } from './envoy/type/metadata/v2/MetadataKind'; -import { CustomTag as _envoy_type_tracing_v2_CustomTag, CustomTag__Output as _envoy_type_tracing_v2_CustomTag__Output } from './envoy/type/tracing/v2/CustomTag'; -import { Any as _google_protobuf_Any, Any__Output as _google_protobuf_Any__Output } from './google/protobuf/Any'; -import { BoolValue as _google_protobuf_BoolValue, BoolValue__Output as _google_protobuf_BoolValue__Output } from './google/protobuf/BoolValue'; -import { BytesValue as _google_protobuf_BytesValue, BytesValue__Output as _google_protobuf_BytesValue__Output } from './google/protobuf/BytesValue'; -import { DescriptorProto as _google_protobuf_DescriptorProto, DescriptorProto__Output as _google_protobuf_DescriptorProto__Output } from './google/protobuf/DescriptorProto'; -import { DoubleValue as _google_protobuf_DoubleValue, DoubleValue__Output as _google_protobuf_DoubleValue__Output } from './google/protobuf/DoubleValue'; -import { Duration as _google_protobuf_Duration, Duration__Output as _google_protobuf_Duration__Output } from './google/protobuf/Duration'; -import { Empty as _google_protobuf_Empty, Empty__Output as _google_protobuf_Empty__Output } from './google/protobuf/Empty'; -import { EnumDescriptorProto as _google_protobuf_EnumDescriptorProto, EnumDescriptorProto__Output as _google_protobuf_EnumDescriptorProto__Output } from './google/protobuf/EnumDescriptorProto'; -import { EnumOptions as _google_protobuf_EnumOptions, EnumOptions__Output as _google_protobuf_EnumOptions__Output } from './google/protobuf/EnumOptions'; -import { EnumValueDescriptorProto as _google_protobuf_EnumValueDescriptorProto, EnumValueDescriptorProto__Output as _google_protobuf_EnumValueDescriptorProto__Output } from './google/protobuf/EnumValueDescriptorProto'; -import { EnumValueOptions as _google_protobuf_EnumValueOptions, EnumValueOptions__Output as _google_protobuf_EnumValueOptions__Output } from './google/protobuf/EnumValueOptions'; -import { FieldDescriptorProto as _google_protobuf_FieldDescriptorProto, FieldDescriptorProto__Output as _google_protobuf_FieldDescriptorProto__Output } from './google/protobuf/FieldDescriptorProto'; -import { FieldOptions as _google_protobuf_FieldOptions, FieldOptions__Output as _google_protobuf_FieldOptions__Output } from './google/protobuf/FieldOptions'; -import { FileDescriptorProto as _google_protobuf_FileDescriptorProto, FileDescriptorProto__Output as _google_protobuf_FileDescriptorProto__Output } from './google/protobuf/FileDescriptorProto'; -import { FileDescriptorSet as _google_protobuf_FileDescriptorSet, FileDescriptorSet__Output as _google_protobuf_FileDescriptorSet__Output } from './google/protobuf/FileDescriptorSet'; -import { FileOptions as _google_protobuf_FileOptions, FileOptions__Output as _google_protobuf_FileOptions__Output } from './google/protobuf/FileOptions'; -import { FloatValue as _google_protobuf_FloatValue, FloatValue__Output as _google_protobuf_FloatValue__Output } from './google/protobuf/FloatValue'; -import { GeneratedCodeInfo as _google_protobuf_GeneratedCodeInfo, GeneratedCodeInfo__Output as _google_protobuf_GeneratedCodeInfo__Output } from './google/protobuf/GeneratedCodeInfo'; -import { Int32Value as _google_protobuf_Int32Value, Int32Value__Output as _google_protobuf_Int32Value__Output } from './google/protobuf/Int32Value'; -import { Int64Value as _google_protobuf_Int64Value, Int64Value__Output as _google_protobuf_Int64Value__Output } from './google/protobuf/Int64Value'; -import { ListValue as _google_protobuf_ListValue, ListValue__Output as _google_protobuf_ListValue__Output } from './google/protobuf/ListValue'; -import { MessageOptions as _google_protobuf_MessageOptions, MessageOptions__Output as _google_protobuf_MessageOptions__Output } from './google/protobuf/MessageOptions'; -import { MethodDescriptorProto as _google_protobuf_MethodDescriptorProto, MethodDescriptorProto__Output as _google_protobuf_MethodDescriptorProto__Output } from './google/protobuf/MethodDescriptorProto'; -import { MethodOptions as _google_protobuf_MethodOptions, MethodOptions__Output as _google_protobuf_MethodOptions__Output } from './google/protobuf/MethodOptions'; -import { NullValue as _google_protobuf_NullValue } from './google/protobuf/NullValue'; -import { OneofDescriptorProto as _google_protobuf_OneofDescriptorProto, OneofDescriptorProto__Output as _google_protobuf_OneofDescriptorProto__Output } from './google/protobuf/OneofDescriptorProto'; -import { OneofOptions as _google_protobuf_OneofOptions, OneofOptions__Output as _google_protobuf_OneofOptions__Output } from './google/protobuf/OneofOptions'; -import { ServiceDescriptorProto as _google_protobuf_ServiceDescriptorProto, ServiceDescriptorProto__Output as _google_protobuf_ServiceDescriptorProto__Output } from './google/protobuf/ServiceDescriptorProto'; -import { ServiceOptions as _google_protobuf_ServiceOptions, ServiceOptions__Output as _google_protobuf_ServiceOptions__Output } from './google/protobuf/ServiceOptions'; -import { SourceCodeInfo as _google_protobuf_SourceCodeInfo, SourceCodeInfo__Output as _google_protobuf_SourceCodeInfo__Output } from './google/protobuf/SourceCodeInfo'; -import { StringValue as _google_protobuf_StringValue, StringValue__Output as _google_protobuf_StringValue__Output } from './google/protobuf/StringValue'; -import { Struct as _google_protobuf_Struct, Struct__Output as _google_protobuf_Struct__Output } from './google/protobuf/Struct'; -import { Timestamp as _google_protobuf_Timestamp, Timestamp__Output as _google_protobuf_Timestamp__Output } from './google/protobuf/Timestamp'; -import { UInt32Value as _google_protobuf_UInt32Value, UInt32Value__Output as _google_protobuf_UInt32Value__Output } from './google/protobuf/UInt32Value'; -import { UInt64Value as _google_protobuf_UInt64Value, UInt64Value__Output as _google_protobuf_UInt64Value__Output } from './google/protobuf/UInt64Value'; -import { UninterpretedOption as _google_protobuf_UninterpretedOption, UninterpretedOption__Output as _google_protobuf_UninterpretedOption__Output } from './google/protobuf/UninterpretedOption'; -import { Value as _google_protobuf_Value, Value__Output as _google_protobuf_Value__Output } from './google/protobuf/Value'; -import { FieldMigrateAnnotation as _udpa_annotations_FieldMigrateAnnotation, FieldMigrateAnnotation__Output as _udpa_annotations_FieldMigrateAnnotation__Output } from './udpa/annotations/FieldMigrateAnnotation'; -import { FileMigrateAnnotation as _udpa_annotations_FileMigrateAnnotation, FileMigrateAnnotation__Output as _udpa_annotations_FileMigrateAnnotation__Output } from './udpa/annotations/FileMigrateAnnotation'; -import { MigrateAnnotation as _udpa_annotations_MigrateAnnotation, MigrateAnnotation__Output as _udpa_annotations_MigrateAnnotation__Output } from './udpa/annotations/MigrateAnnotation'; -import { PackageVersionStatus as _udpa_annotations_PackageVersionStatus } from './udpa/annotations/PackageVersionStatus'; -import { StatusAnnotation as _udpa_annotations_StatusAnnotation, StatusAnnotation__Output as _udpa_annotations_StatusAnnotation__Output } from './udpa/annotations/StatusAnnotation'; -import { AnyRules as _validate_AnyRules, AnyRules__Output as _validate_AnyRules__Output } from './validate/AnyRules'; -import { BoolRules as _validate_BoolRules, BoolRules__Output as _validate_BoolRules__Output } from './validate/BoolRules'; -import { BytesRules as _validate_BytesRules, BytesRules__Output as _validate_BytesRules__Output } from './validate/BytesRules'; -import { DoubleRules as _validate_DoubleRules, DoubleRules__Output as _validate_DoubleRules__Output } from './validate/DoubleRules'; -import { DurationRules as _validate_DurationRules, DurationRules__Output as _validate_DurationRules__Output } from './validate/DurationRules'; -import { EnumRules as _validate_EnumRules, EnumRules__Output as _validate_EnumRules__Output } from './validate/EnumRules'; -import { FieldRules as _validate_FieldRules, FieldRules__Output as _validate_FieldRules__Output } from './validate/FieldRules'; -import { Fixed32Rules as _validate_Fixed32Rules, Fixed32Rules__Output as _validate_Fixed32Rules__Output } from './validate/Fixed32Rules'; -import { Fixed64Rules as _validate_Fixed64Rules, Fixed64Rules__Output as _validate_Fixed64Rules__Output } from './validate/Fixed64Rules'; -import { FloatRules as _validate_FloatRules, FloatRules__Output as _validate_FloatRules__Output } from './validate/FloatRules'; -import { Int32Rules as _validate_Int32Rules, Int32Rules__Output as _validate_Int32Rules__Output } from './validate/Int32Rules'; -import { Int64Rules as _validate_Int64Rules, Int64Rules__Output as _validate_Int64Rules__Output } from './validate/Int64Rules'; -import { KnownRegex as _validate_KnownRegex } from './validate/KnownRegex'; -import { MapRules as _validate_MapRules, MapRules__Output as _validate_MapRules__Output } from './validate/MapRules'; -import { MessageRules as _validate_MessageRules, MessageRules__Output as _validate_MessageRules__Output } from './validate/MessageRules'; -import { RepeatedRules as _validate_RepeatedRules, RepeatedRules__Output as _validate_RepeatedRules__Output } from './validate/RepeatedRules'; -import { SFixed32Rules as _validate_SFixed32Rules, SFixed32Rules__Output as _validate_SFixed32Rules__Output } from './validate/SFixed32Rules'; -import { SFixed64Rules as _validate_SFixed64Rules, SFixed64Rules__Output as _validate_SFixed64Rules__Output } from './validate/SFixed64Rules'; -import { SInt32Rules as _validate_SInt32Rules, SInt32Rules__Output as _validate_SInt32Rules__Output } from './validate/SInt32Rules'; -import { SInt64Rules as _validate_SInt64Rules, SInt64Rules__Output as _validate_SInt64Rules__Output } from './validate/SInt64Rules'; -import { StringRules as _validate_StringRules, StringRules__Output as _validate_StringRules__Output } from './validate/StringRules'; -import { TimestampRules as _validate_TimestampRules, TimestampRules__Output as _validate_TimestampRules__Output } from './validate/TimestampRules'; -import { UInt32Rules as _validate_UInt32Rules, UInt32Rules__Output as _validate_UInt32Rules__Output } from './validate/UInt32Rules'; -import { UInt64Rules as _validate_UInt64Rules, UInt64Rules__Output as _validate_UInt64Rules__Output } from './validate/UInt64Rules'; - -export namespace messages { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - /** - * [#next-free-field: 11] - */ - export type RouteConfiguration = _envoy_api_v2_RouteConfiguration; - /** - * [#next-free-field: 11] - */ - export type RouteConfiguration__Output = _envoy_api_v2_RouteConfiguration__Output; - export type Vhds = _envoy_api_v2_Vhds; - export type Vhds__Output = _envoy_api_v2_Vhds__Output; - export namespace core { - /** - * Addresses specify either a logical or physical address and port, which are - * used to tell Envoy where to bind/listen, connect to upstream and find - * management servers. - */ - export type Address = _envoy_api_v2_core_Address; - /** - * Addresses specify either a logical or physical address and port, which are - * used to tell Envoy where to bind/listen, connect to upstream and find - * management servers. - */ - export type Address__Output = _envoy_api_v2_core_Address__Output; - /** - * Aggregated Discovery Service (ADS) options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that ADS is to be used. - */ - export type AggregatedConfigSource = _envoy_api_v2_core_AggregatedConfigSource; - /** - * Aggregated Discovery Service (ADS) options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that ADS is to be used. - */ - export type AggregatedConfigSource__Output = _envoy_api_v2_core_AggregatedConfigSource__Output; - /** - * API configuration source. This identifies the API type and cluster that Envoy - * will use to fetch an xDS API. - * [#next-free-field: 9] - */ - export type ApiConfigSource = _envoy_api_v2_core_ApiConfigSource; - /** - * API configuration source. This identifies the API type and cluster that Envoy - * will use to fetch an xDS API. - * [#next-free-field: 9] - */ - export type ApiConfigSource__Output = _envoy_api_v2_core_ApiConfigSource__Output; - /** - * xDS API version. This is used to describe both resource and transport - * protocol versions (in distinct configuration fields). - */ - export type ApiVersion = _envoy_api_v2_core_ApiVersion; - /** - * Async data source which support async data fetch. - */ - export type AsyncDataSource = _envoy_api_v2_core_AsyncDataSource; - /** - * Async data source which support async data fetch. - */ - export type AsyncDataSource__Output = _envoy_api_v2_core_AsyncDataSource__Output; - /** - * Configuration defining a jittered exponential back off strategy. - */ - export type BackoffStrategy = _envoy_api_v2_core_BackoffStrategy; - /** - * Configuration defining a jittered exponential back off strategy. - */ - export type BackoffStrategy__Output = _envoy_api_v2_core_BackoffStrategy__Output; - export type BindConfig = _envoy_api_v2_core_BindConfig; - export type BindConfig__Output = _envoy_api_v2_core_BindConfig__Output; - /** - * BuildVersion combines SemVer version of extension with free-form build information - * (i.e. 'alpha', 'private-build') as a set of strings. - */ - export type BuildVersion = _envoy_api_v2_core_BuildVersion; - /** - * BuildVersion combines SemVer version of extension with free-form build information - * (i.e. 'alpha', 'private-build') as a set of strings. - */ - export type BuildVersion__Output = _envoy_api_v2_core_BuildVersion__Output; - /** - * CidrRange specifies an IP Address and a prefix length to construct - * the subnet mask for a `CIDR `_ range. - */ - export type CidrRange = _envoy_api_v2_core_CidrRange; - /** - * CidrRange specifies an IP Address and a prefix length to construct - * the subnet mask for a `CIDR `_ range. - */ - export type CidrRange__Output = _envoy_api_v2_core_CidrRange__Output; - /** - * Configuration for :ref:`listeners `, :ref:`clusters - * `, :ref:`routes - * `, :ref:`endpoints - * ` etc. may either be sourced from the - * filesystem or from an xDS API source. Filesystem configs are watched with - * inotify for updates. - * [#next-free-field: 7] - */ - export type ConfigSource = _envoy_api_v2_core_ConfigSource; - /** - * Configuration for :ref:`listeners `, :ref:`clusters - * `, :ref:`routes - * `, :ref:`endpoints - * ` etc. may either be sourced from the - * filesystem or from an xDS API source. Filesystem configs are watched with - * inotify for updates. - * [#next-free-field: 7] - */ - export type ConfigSource__Output = _envoy_api_v2_core_ConfigSource__Output; - /** - * Identifies a specific ControlPlane instance that Envoy is connected to. - */ - export type ControlPlane = _envoy_api_v2_core_ControlPlane; - /** - * Identifies a specific ControlPlane instance that Envoy is connected to. - */ - export type ControlPlane__Output = _envoy_api_v2_core_ControlPlane__Output; - /** - * Data source consisting of either a file or an inline value. - */ - export type DataSource = _envoy_api_v2_core_DataSource; - /** - * Data source consisting of either a file or an inline value. - */ - export type DataSource__Output = _envoy_api_v2_core_DataSource__Output; - /** - * Version and identification for an Envoy extension. - * [#next-free-field: 6] - */ - export type Extension = _envoy_api_v2_core_Extension; - /** - * Version and identification for an Envoy extension. - * [#next-free-field: 6] - */ - export type Extension__Output = _envoy_api_v2_core_Extension__Output; - /** - * gRPC service configuration. This is used by :ref:`ApiConfigSource - * ` and filter configurations. - * [#next-free-field: 6] - */ - export type GrpcService = _envoy_api_v2_core_GrpcService; - /** - * gRPC service configuration. This is used by :ref:`ApiConfigSource - * ` and filter configurations. - * [#next-free-field: 6] - */ - export type GrpcService__Output = _envoy_api_v2_core_GrpcService__Output; - /** - * Wrapper for a set of headers. - */ - export type HeaderMap = _envoy_api_v2_core_HeaderMap; - /** - * Wrapper for a set of headers. - */ - export type HeaderMap__Output = _envoy_api_v2_core_HeaderMap__Output; - /** - * Header name/value pair. - */ - export type HeaderValue = _envoy_api_v2_core_HeaderValue; - /** - * Header name/value pair. - */ - export type HeaderValue__Output = _envoy_api_v2_core_HeaderValue__Output; - /** - * Header name/value pair plus option to control append behavior. - */ - export type HeaderValueOption = _envoy_api_v2_core_HeaderValueOption; - /** - * Header name/value pair plus option to control append behavior. - */ - export type HeaderValueOption__Output = _envoy_api_v2_core_HeaderValueOption__Output; - /** - * Envoy external URI descriptor - */ - export type HttpUri = _envoy_api_v2_core_HttpUri; - /** - * Envoy external URI descriptor - */ - export type HttpUri__Output = _envoy_api_v2_core_HttpUri__Output; - /** - * Identifies location of where either Envoy runs or where upstream hosts run. - */ - export type Locality = _envoy_api_v2_core_Locality; - /** - * Identifies location of where either Envoy runs or where upstream hosts run. - */ - export type Locality__Output = _envoy_api_v2_core_Locality__Output; - /** - * Metadata provides additional inputs to filters based on matched listeners, - * filter chains, routes and endpoints. It is structured as a map, usually from - * filter name (in reverse DNS format) to metadata specific to the filter. Metadata - * key-values for a filter are merged as connection and request handling occurs, - * with later values for the same key overriding earlier values. - * - * An example use of metadata is providing additional values to - * http_connection_manager in the envoy.http_connection_manager.access_log - * namespace. - * - * Another example use of metadata is to per service config info in cluster metadata, which may get - * consumed by multiple filters. - * - * For load balancing, Metadata provides a means to subset cluster endpoints. - * Endpoints have a Metadata object associated and routes contain a Metadata - * object to match against. There are some well defined metadata used today for - * this purpose: - * - * * ``{"envoy.lb": {"canary": }}`` This indicates the canary status of an - * endpoint and is also used during header processing - * (x-envoy-upstream-canary) and for stats purposes. - * [#next-major-version: move to type/metadata/v2] - */ - export type Metadata = _envoy_api_v2_core_Metadata; - /** - * Metadata provides additional inputs to filters based on matched listeners, - * filter chains, routes and endpoints. It is structured as a map, usually from - * filter name (in reverse DNS format) to metadata specific to the filter. Metadata - * key-values for a filter are merged as connection and request handling occurs, - * with later values for the same key overriding earlier values. - * - * An example use of metadata is providing additional values to - * http_connection_manager in the envoy.http_connection_manager.access_log - * namespace. - * - * Another example use of metadata is to per service config info in cluster metadata, which may get - * consumed by multiple filters. - * - * For load balancing, Metadata provides a means to subset cluster endpoints. - * Endpoints have a Metadata object associated and routes contain a Metadata - * object to match against. There are some well defined metadata used today for - * this purpose: - * - * * ``{"envoy.lb": {"canary": }}`` This indicates the canary status of an - * endpoint and is also used during header processing - * (x-envoy-upstream-canary) and for stats purposes. - * [#next-major-version: move to type/metadata/v2] - */ - export type Metadata__Output = _envoy_api_v2_core_Metadata__Output; - /** - * Identifies a specific Envoy instance. The node identifier is presented to the - * management server, which may use this identifier to distinguish per Envoy - * configuration for serving. - * [#next-free-field: 12] - */ - export type Node = _envoy_api_v2_core_Node; - /** - * Identifies a specific Envoy instance. The node identifier is presented to the - * management server, which may use this identifier to distinguish per Envoy - * configuration for serving. - * [#next-free-field: 12] - */ - export type Node__Output = _envoy_api_v2_core_Node__Output; - export type Pipe = _envoy_api_v2_core_Pipe; - export type Pipe__Output = _envoy_api_v2_core_Pipe__Output; - /** - * Rate Limit settings to be applied for discovery requests made by Envoy. - */ - export type RateLimitSettings = _envoy_api_v2_core_RateLimitSettings; - /** - * Rate Limit settings to be applied for discovery requests made by Envoy. - */ - export type RateLimitSettings__Output = _envoy_api_v2_core_RateLimitSettings__Output; - /** - * The message specifies how to fetch data from remote and how to verify it. - */ - export type RemoteDataSource = _envoy_api_v2_core_RemoteDataSource; - /** - * The message specifies how to fetch data from remote and how to verify it. - */ - export type RemoteDataSource__Output = _envoy_api_v2_core_RemoteDataSource__Output; - /** - * HTTP request method. - */ - export type RequestMethod = _envoy_api_v2_core_RequestMethod; - /** - * The message specifies the retry policy of remote data source when fetching fails. - */ - export type RetryPolicy = _envoy_api_v2_core_RetryPolicy; - /** - * The message specifies the retry policy of remote data source when fetching fails. - */ - export type RetryPolicy__Output = _envoy_api_v2_core_RetryPolicy__Output; - /** - * Envoy supports :ref:`upstream priority routing - * ` both at the route and the virtual - * cluster level. The current priority implementation uses different connection - * pool and circuit breaking settings for each priority level. This means that - * even for HTTP/2 requests, two physical connections will be used to an - * upstream host. In the future Envoy will likely support true HTTP/2 priority - * over a single upstream connection. - */ - export type RoutingPriority = _envoy_api_v2_core_RoutingPriority; - /** - * Runtime derived double with a default when not specified. - */ - export type RuntimeDouble = _envoy_api_v2_core_RuntimeDouble; - /** - * Runtime derived double with a default when not specified. - */ - export type RuntimeDouble__Output = _envoy_api_v2_core_RuntimeDouble__Output; - /** - * Runtime derived bool with a default when not specified. - */ - export type RuntimeFeatureFlag = _envoy_api_v2_core_RuntimeFeatureFlag; - /** - * Runtime derived bool with a default when not specified. - */ - export type RuntimeFeatureFlag__Output = _envoy_api_v2_core_RuntimeFeatureFlag__Output; - /** - * Runtime derived FractionalPercent with defaults for when the numerator or denominator is not - * specified via a runtime key. - * - * .. note:: - * - * Parsing of the runtime key's data is implemented such that it may be represented as a - * :ref:`FractionalPercent ` proto represented as JSON/YAML - * and may also be represented as an integer with the assumption that the value is an integral - * percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse - * as a `FractionalPercent` whose numerator is 42 and denominator is HUNDRED. - */ - export type RuntimeFractionalPercent = _envoy_api_v2_core_RuntimeFractionalPercent; - /** - * Runtime derived FractionalPercent with defaults for when the numerator or denominator is not - * specified via a runtime key. - * - * .. note:: - * - * Parsing of the runtime key's data is implemented such that it may be represented as a - * :ref:`FractionalPercent ` proto represented as JSON/YAML - * and may also be represented as an integer with the assumption that the value is an integral - * percentage out of 100. For instance, a runtime key lookup returning the value "42" would parse - * as a `FractionalPercent` whose numerator is 42 and denominator is HUNDRED. - */ - export type RuntimeFractionalPercent__Output = _envoy_api_v2_core_RuntimeFractionalPercent__Output; - /** - * Runtime derived uint32 with a default when not specified. - */ - export type RuntimeUInt32 = _envoy_api_v2_core_RuntimeUInt32; - /** - * Runtime derived uint32 with a default when not specified. - */ - export type RuntimeUInt32__Output = _envoy_api_v2_core_RuntimeUInt32__Output; - /** - * [#not-implemented-hide:] - * Self-referencing config source options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that other data can be obtained from the same server. - */ - export type SelfConfigSource = _envoy_api_v2_core_SelfConfigSource; - /** - * [#not-implemented-hide:] - * Self-referencing config source options. This is currently empty, but when - * set in :ref:`ConfigSource ` can be used to - * specify that other data can be obtained from the same server. - */ - export type SelfConfigSource__Output = _envoy_api_v2_core_SelfConfigSource__Output; - /** - * [#next-free-field: 7] - */ - export type SocketAddress = _envoy_api_v2_core_SocketAddress; - /** - * [#next-free-field: 7] - */ - export type SocketAddress__Output = _envoy_api_v2_core_SocketAddress__Output; - /** - * Generic socket option message. This would be used to set socket options that - * might not exist in upstream kernels or precompiled Envoy binaries. - * [#next-free-field: 7] - */ - export type SocketOption = _envoy_api_v2_core_SocketOption; - /** - * Generic socket option message. This would be used to set socket options that - * might not exist in upstream kernels or precompiled Envoy binaries. - * [#next-free-field: 7] - */ - export type SocketOption__Output = _envoy_api_v2_core_SocketOption__Output; - export type TcpKeepalive = _envoy_api_v2_core_TcpKeepalive; - export type TcpKeepalive__Output = _envoy_api_v2_core_TcpKeepalive__Output; - /** - * Identifies the direction of the traffic relative to the local Envoy. - */ - export type TrafficDirection = _envoy_api_v2_core_TrafficDirection; - /** - * Configuration for transport socket in :ref:`listeners ` and - * :ref:`clusters `. If the configuration is - * empty, a default transport socket implementation and configuration will be - * chosen based on the platform and existence of tls_context. - */ - export type TransportSocket = _envoy_api_v2_core_TransportSocket; - /** - * Configuration for transport socket in :ref:`listeners ` and - * :ref:`clusters `. If the configuration is - * empty, a default transport socket implementation and configuration will be - * chosen based on the platform and existence of tls_context. - */ - export type TransportSocket__Output = _envoy_api_v2_core_TransportSocket__Output; - } - export namespace route { - /** - * [#next-free-field: 12] - */ - export type CorsPolicy = _envoy_api_v2_route_CorsPolicy; - /** - * [#next-free-field: 12] - */ - export type CorsPolicy__Output = _envoy_api_v2_route_CorsPolicy__Output; - export type Decorator = _envoy_api_v2_route_Decorator; - export type Decorator__Output = _envoy_api_v2_route_Decorator__Output; - export type DirectResponseAction = _envoy_api_v2_route_DirectResponseAction; - export type DirectResponseAction__Output = _envoy_api_v2_route_DirectResponseAction__Output; - /** - * A filter-defined action type. - */ - export type FilterAction = _envoy_api_v2_route_FilterAction; - /** - * A filter-defined action type. - */ - export type FilterAction__Output = _envoy_api_v2_route_FilterAction__Output; - /** - * .. attention:: - * - * Internally, Envoy always uses the HTTP/2 *:authority* header to represent the HTTP/1 *Host* - * header. Thus, if attempting to match on *Host*, match on *:authority* instead. - * - * .. attention:: - * - * To route on HTTP method, use the special HTTP/2 *:method* header. This works for both - * HTTP/1 and HTTP/2 as Envoy normalizes headers. E.g., - * - * .. code-block:: json - * - * { - * "name": ":method", - * "exact_match": "POST" - * } - * - * .. attention:: - * In the absence of any header match specifier, match will default to :ref:`present_match - * `. i.e, a request that has the :ref:`name - * ` header will match, regardless of the header's - * value. - * - * [#next-major-version: HeaderMatcher should be refactored to use StringMatcher.] - * [#next-free-field: 12] - */ - export type HeaderMatcher = _envoy_api_v2_route_HeaderMatcher; - /** - * .. attention:: - * - * Internally, Envoy always uses the HTTP/2 *:authority* header to represent the HTTP/1 *Host* - * header. Thus, if attempting to match on *Host*, match on *:authority* instead. - * - * .. attention:: - * - * To route on HTTP method, use the special HTTP/2 *:method* header. This works for both - * HTTP/1 and HTTP/2 as Envoy normalizes headers. E.g., - * - * .. code-block:: json - * - * { - * "name": ":method", - * "exact_match": "POST" - * } - * - * .. attention:: - * In the absence of any header match specifier, match will default to :ref:`present_match - * `. i.e, a request that has the :ref:`name - * ` header will match, regardless of the header's - * value. - * - * [#next-major-version: HeaderMatcher should be refactored to use StringMatcher.] - * [#next-free-field: 12] - */ - export type HeaderMatcher__Output = _envoy_api_v2_route_HeaderMatcher__Output; - /** - * HTTP request hedging :ref:`architecture overview `. - */ - export type HedgePolicy = _envoy_api_v2_route_HedgePolicy; - /** - * HTTP request hedging :ref:`architecture overview `. - */ - export type HedgePolicy__Output = _envoy_api_v2_route_HedgePolicy__Output; - /** - * Query parameter matching treats the query string of a request's :path header - * as an ampersand-separated list of keys and/or key=value elements. - * [#next-free-field: 7] - */ - export type QueryParameterMatcher = _envoy_api_v2_route_QueryParameterMatcher; - /** - * Query parameter matching treats the query string of a request's :path header - * as an ampersand-separated list of keys and/or key=value elements. - * [#next-free-field: 7] - */ - export type QueryParameterMatcher__Output = _envoy_api_v2_route_QueryParameterMatcher__Output; - /** - * Global rate limiting :ref:`architecture overview `. - */ - export type RateLimit = _envoy_api_v2_route_RateLimit; - /** - * Global rate limiting :ref:`architecture overview `. - */ - export type RateLimit__Output = _envoy_api_v2_route_RateLimit__Output; - /** - * [#next-free-field: 9] - */ - export type RedirectAction = _envoy_api_v2_route_RedirectAction; - /** - * [#next-free-field: 9] - */ - export type RedirectAction__Output = _envoy_api_v2_route_RedirectAction__Output; - /** - * HTTP retry :ref:`architecture overview `. - * [#next-free-field: 11] - */ - export type RetryPolicy = _envoy_api_v2_route_RetryPolicy; - /** - * HTTP retry :ref:`architecture overview `. - * [#next-free-field: 11] - */ - export type RetryPolicy__Output = _envoy_api_v2_route_RetryPolicy__Output; - /** - * A route is both a specification of how to match a request as well as an indication of what to do - * next (e.g., redirect, forward, rewrite, etc.). - * - * .. attention:: - * - * Envoy supports routing on HTTP method via :ref:`header matching - * `. - * [#next-free-field: 18] - */ - export type Route = _envoy_api_v2_route_Route; - /** - * A route is both a specification of how to match a request as well as an indication of what to do - * next (e.g., redirect, forward, rewrite, etc.). - * - * .. attention:: - * - * Envoy supports routing on HTTP method via :ref:`header matching - * `. - * [#next-free-field: 18] - */ - export type Route__Output = _envoy_api_v2_route_Route__Output; - /** - * [#next-free-field: 34] - */ - export type RouteAction = _envoy_api_v2_route_RouteAction; - /** - * [#next-free-field: 34] - */ - export type RouteAction__Output = _envoy_api_v2_route_RouteAction__Output; - /** - * [#next-free-field: 12] - */ - export type RouteMatch = _envoy_api_v2_route_RouteMatch; - /** - * [#next-free-field: 12] - */ - export type RouteMatch__Output = _envoy_api_v2_route_RouteMatch__Output; - export type Tracing = _envoy_api_v2_route_Tracing; - export type Tracing__Output = _envoy_api_v2_route_Tracing__Output; - /** - * A virtual cluster is a way of specifying a regex matching rule against - * certain important endpoints such that statistics are generated explicitly for - * the matched requests. The reason this is useful is that when doing - * prefix/path matching Envoy does not always know what the application - * considers to be an endpoint. Thus, it’s impossible for Envoy to generically - * emit per endpoint statistics. However, often systems have highly critical - * endpoints that they wish to get “perfect” statistics on. Virtual cluster - * statistics are perfect in the sense that they are emitted on the downstream - * side such that they include network level failures. - * - * Documentation for :ref:`virtual cluster statistics `. - * - * .. note:: - * - * Virtual clusters are a useful tool, but we do not recommend setting up a virtual cluster for - * every application endpoint. This is both not easily maintainable and as well the matching and - * statistics output are not free. - */ - export type VirtualCluster = _envoy_api_v2_route_VirtualCluster; - /** - * A virtual cluster is a way of specifying a regex matching rule against - * certain important endpoints such that statistics are generated explicitly for - * the matched requests. The reason this is useful is that when doing - * prefix/path matching Envoy does not always know what the application - * considers to be an endpoint. Thus, it’s impossible for Envoy to generically - * emit per endpoint statistics. However, often systems have highly critical - * endpoints that they wish to get “perfect” statistics on. Virtual cluster - * statistics are perfect in the sense that they are emitted on the downstream - * side such that they include network level failures. - * - * Documentation for :ref:`virtual cluster statistics `. - * - * .. note:: - * - * Virtual clusters are a useful tool, but we do not recommend setting up a virtual cluster for - * every application endpoint. This is both not easily maintainable and as well the matching and - * statistics output are not free. - */ - export type VirtualCluster__Output = _envoy_api_v2_route_VirtualCluster__Output; - /** - * The top level element in the routing configuration is a virtual host. Each virtual host has - * a logical name as well as a set of domains that get routed to it based on the incoming request's - * host header. This allows a single listener to service multiple top level domain path trees. Once - * a virtual host is selected based on the domain, the routes are processed in order to see which - * upstream cluster to route to or whether to perform a redirect. - * [#next-free-field: 21] - */ - export type VirtualHost = _envoy_api_v2_route_VirtualHost; - /** - * The top level element in the routing configuration is a virtual host. Each virtual host has - * a logical name as well as a set of domains that get routed to it based on the incoming request's - * host header. This allows a single listener to service multiple top level domain path trees. Once - * a virtual host is selected based on the domain, the routes are processed in order to see which - * upstream cluster to route to or whether to perform a redirect. - * [#next-free-field: 21] - */ - export type VirtualHost__Output = _envoy_api_v2_route_VirtualHost__Output; - /** - * Compared to the :ref:`cluster ` field that specifies a - * single upstream cluster as the target of a request, the :ref:`weighted_clusters - * ` option allows for specification of - * multiple upstream clusters along with weights that indicate the percentage of - * traffic to be forwarded to each cluster. The router selects an upstream cluster based on the - * weights. - */ - export type WeightedCluster = _envoy_api_v2_route_WeightedCluster; - /** - * Compared to the :ref:`cluster ` field that specifies a - * single upstream cluster as the target of a request, the :ref:`weighted_clusters - * ` option allows for specification of - * multiple upstream clusters along with weights that indicate the percentage of - * traffic to be forwarded to each cluster. The router selects an upstream cluster based on the - * weights. - */ - export type WeightedCluster__Output = _envoy_api_v2_route_WeightedCluster__Output; - } - } - } - export namespace type { - /** - * Specifies the double start and end of the range using half-open interval semantics [start, - * end). - */ - export type DoubleRange = _envoy_type_DoubleRange; - /** - * Specifies the double start and end of the range using half-open interval semantics [start, - * end). - */ - export type DoubleRange__Output = _envoy_type_DoubleRange__Output; - /** - * A fractional percentage is used in cases in which for performance reasons performing floating - * point to integer conversions during randomness calculations is undesirable. The message includes - * both a numerator and denominator that together determine the final fractional value. - * - * * **Example**: 1/100 = 1%. - * * **Example**: 3/10000 = 0.03%. - */ - export type FractionalPercent = _envoy_type_FractionalPercent; - /** - * A fractional percentage is used in cases in which for performance reasons performing floating - * point to integer conversions during randomness calculations is undesirable. The message includes - * both a numerator and denominator that together determine the final fractional value. - * - * * **Example**: 1/100 = 1%. - * * **Example**: 3/10000 = 0.03%. - */ - export type FractionalPercent__Output = _envoy_type_FractionalPercent__Output; - /** - * Specifies the int32 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int32Range = _envoy_type_Int32Range; - /** - * Specifies the int32 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int32Range__Output = _envoy_type_Int32Range__Output; - /** - * Specifies the int64 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int64Range = _envoy_type_Int64Range; - /** - * Specifies the int64 start and end of the range using half-open interval semantics [start, - * end). - */ - export type Int64Range__Output = _envoy_type_Int64Range__Output; - /** - * Identifies a percentage, in the range [0.0, 100.0]. - */ - export type Percent = _envoy_type_Percent; - /** - * Identifies a percentage, in the range [0.0, 100.0]. - */ - export type Percent__Output = _envoy_type_Percent__Output; - /** - * Envoy uses SemVer (https://semver.org/). Major/minor versions indicate - * expected behaviors and APIs, the patch version field is used only - * for security fixes and can be generally ignored. - */ - export type SemanticVersion = _envoy_type_SemanticVersion; - /** - * Envoy uses SemVer (https://semver.org/). Major/minor versions indicate - * expected behaviors and APIs, the patch version field is used only - * for security fixes and can be generally ignored. - */ - export type SemanticVersion__Output = _envoy_type_SemanticVersion__Output; - export namespace matcher { - /** - * Specifies a list of ways to match a string. - */ - export type ListStringMatcher = _envoy_type_matcher_ListStringMatcher; - /** - * Specifies a list of ways to match a string. - */ - export type ListStringMatcher__Output = _envoy_type_matcher_ListStringMatcher__Output; - /** - * Describes how to match a string and then produce a new string using a regular - * expression and a substitution string. - */ - export type RegexMatchAndSubstitute = _envoy_type_matcher_RegexMatchAndSubstitute; - /** - * Describes how to match a string and then produce a new string using a regular - * expression and a substitution string. - */ - export type RegexMatchAndSubstitute__Output = _envoy_type_matcher_RegexMatchAndSubstitute__Output; - /** - * A regex matcher designed for safety when used with untrusted input. - */ - export type RegexMatcher = _envoy_type_matcher_RegexMatcher; - /** - * A regex matcher designed for safety when used with untrusted input. - */ - export type RegexMatcher__Output = _envoy_type_matcher_RegexMatcher__Output; - /** - * Specifies the way to match a string. - * [#next-free-field: 7] - */ - export type StringMatcher = _envoy_type_matcher_StringMatcher; - /** - * Specifies the way to match a string. - * [#next-free-field: 7] - */ - export type StringMatcher__Output = _envoy_type_matcher_StringMatcher__Output; - } - export namespace metadata { - export namespace v2 { - /** - * MetadataKey provides a general interface using `key` and `path` to retrieve value from - * :ref:`Metadata `. - * - * For example, for the following Metadata: - * - * .. code-block:: yaml - * - * filter_metadata: - * envoy.xxx: - * prop: - * foo: bar - * xyz: - * hello: envoy - * - * The following MetadataKey will retrieve a string value "bar" from the Metadata. - * - * .. code-block:: yaml - * - * key: envoy.xxx - * path: - * - key: prop - * - key: foo - */ - export type MetadataKey = _envoy_type_metadata_v2_MetadataKey; - /** - * MetadataKey provides a general interface using `key` and `path` to retrieve value from - * :ref:`Metadata `. - * - * For example, for the following Metadata: - * - * .. code-block:: yaml - * - * filter_metadata: - * envoy.xxx: - * prop: - * foo: bar - * xyz: - * hello: envoy - * - * The following MetadataKey will retrieve a string value "bar" from the Metadata. - * - * .. code-block:: yaml - * - * key: envoy.xxx - * path: - * - key: prop - * - key: foo - */ - export type MetadataKey__Output = _envoy_type_metadata_v2_MetadataKey__Output; - /** - * Describes what kind of metadata. - */ - export type MetadataKind = _envoy_type_metadata_v2_MetadataKind; - /** - * Describes what kind of metadata. - */ - export type MetadataKind__Output = _envoy_type_metadata_v2_MetadataKind__Output; - } - } - export namespace tracing { - export namespace v2 { - /** - * Describes custom tags for the active span. - * [#next-free-field: 6] - */ - export type CustomTag = _envoy_type_tracing_v2_CustomTag; - /** - * Describes custom tags for the active span. - * [#next-free-field: 6] - */ - export type CustomTag__Output = _envoy_type_tracing_v2_CustomTag__Output; - } - } - } - } - export namespace google { - export namespace protobuf { - export type Any = _google_protobuf_Any; - export type Any__Output = _google_protobuf_Any__Output; - export type BoolValue = _google_protobuf_BoolValue; - export type BoolValue__Output = _google_protobuf_BoolValue__Output; - export type BytesValue = _google_protobuf_BytesValue; - export type BytesValue__Output = _google_protobuf_BytesValue__Output; - export type DescriptorProto = _google_protobuf_DescriptorProto; - export type DescriptorProto__Output = _google_protobuf_DescriptorProto__Output; - export type DoubleValue = _google_protobuf_DoubleValue; - export type DoubleValue__Output = _google_protobuf_DoubleValue__Output; - export type Duration = _google_protobuf_Duration; - export type Duration__Output = _google_protobuf_Duration__Output; - export type Empty = _google_protobuf_Empty; - export type Empty__Output = _google_protobuf_Empty__Output; - export type EnumDescriptorProto = _google_protobuf_EnumDescriptorProto; - export type EnumDescriptorProto__Output = _google_protobuf_EnumDescriptorProto__Output; - export type EnumOptions = _google_protobuf_EnumOptions; - export type EnumOptions__Output = _google_protobuf_EnumOptions__Output; - export type EnumValueDescriptorProto = _google_protobuf_EnumValueDescriptorProto; - export type EnumValueDescriptorProto__Output = _google_protobuf_EnumValueDescriptorProto__Output; - export type EnumValueOptions = _google_protobuf_EnumValueOptions; - export type EnumValueOptions__Output = _google_protobuf_EnumValueOptions__Output; - export type FieldDescriptorProto = _google_protobuf_FieldDescriptorProto; - export type FieldDescriptorProto__Output = _google_protobuf_FieldDescriptorProto__Output; - export type FieldOptions = _google_protobuf_FieldOptions; - export type FieldOptions__Output = _google_protobuf_FieldOptions__Output; - export type FileDescriptorProto = _google_protobuf_FileDescriptorProto; - export type FileDescriptorProto__Output = _google_protobuf_FileDescriptorProto__Output; - export type FileDescriptorSet = _google_protobuf_FileDescriptorSet; - export type FileDescriptorSet__Output = _google_protobuf_FileDescriptorSet__Output; - export type FileOptions = _google_protobuf_FileOptions; - export type FileOptions__Output = _google_protobuf_FileOptions__Output; - export type FloatValue = _google_protobuf_FloatValue; - export type FloatValue__Output = _google_protobuf_FloatValue__Output; - export type GeneratedCodeInfo = _google_protobuf_GeneratedCodeInfo; - export type GeneratedCodeInfo__Output = _google_protobuf_GeneratedCodeInfo__Output; - export type Int32Value = _google_protobuf_Int32Value; - export type Int32Value__Output = _google_protobuf_Int32Value__Output; - export type Int64Value = _google_protobuf_Int64Value; - export type Int64Value__Output = _google_protobuf_Int64Value__Output; - export type ListValue = _google_protobuf_ListValue; - export type ListValue__Output = _google_protobuf_ListValue__Output; - export type MessageOptions = _google_protobuf_MessageOptions; - export type MessageOptions__Output = _google_protobuf_MessageOptions__Output; - export type MethodDescriptorProto = _google_protobuf_MethodDescriptorProto; - export type MethodDescriptorProto__Output = _google_protobuf_MethodDescriptorProto__Output; - export type MethodOptions = _google_protobuf_MethodOptions; - export type MethodOptions__Output = _google_protobuf_MethodOptions__Output; - export type NullValue = _google_protobuf_NullValue; - export type OneofDescriptorProto = _google_protobuf_OneofDescriptorProto; - export type OneofDescriptorProto__Output = _google_protobuf_OneofDescriptorProto__Output; - export type OneofOptions = _google_protobuf_OneofOptions; - export type OneofOptions__Output = _google_protobuf_OneofOptions__Output; - export type ServiceDescriptorProto = _google_protobuf_ServiceDescriptorProto; - export type ServiceDescriptorProto__Output = _google_protobuf_ServiceDescriptorProto__Output; - export type ServiceOptions = _google_protobuf_ServiceOptions; - export type ServiceOptions__Output = _google_protobuf_ServiceOptions__Output; - export type SourceCodeInfo = _google_protobuf_SourceCodeInfo; - export type SourceCodeInfo__Output = _google_protobuf_SourceCodeInfo__Output; - export type StringValue = _google_protobuf_StringValue; - export type StringValue__Output = _google_protobuf_StringValue__Output; - export type Struct = _google_protobuf_Struct; - export type Struct__Output = _google_protobuf_Struct__Output; - export type Timestamp = _google_protobuf_Timestamp; - export type Timestamp__Output = _google_protobuf_Timestamp__Output; - export type UInt32Value = _google_protobuf_UInt32Value; - export type UInt32Value__Output = _google_protobuf_UInt32Value__Output; - export type UInt64Value = _google_protobuf_UInt64Value; - export type UInt64Value__Output = _google_protobuf_UInt64Value__Output; - export type UninterpretedOption = _google_protobuf_UninterpretedOption; - export type UninterpretedOption__Output = _google_protobuf_UninterpretedOption__Output; - export type Value = _google_protobuf_Value; - export type Value__Output = _google_protobuf_Value__Output; - } - } - export namespace udpa { - export namespace annotations { - export type FieldMigrateAnnotation = _udpa_annotations_FieldMigrateAnnotation; - export type FieldMigrateAnnotation__Output = _udpa_annotations_FieldMigrateAnnotation__Output; - export type FileMigrateAnnotation = _udpa_annotations_FileMigrateAnnotation; - export type FileMigrateAnnotation__Output = _udpa_annotations_FileMigrateAnnotation__Output; - export type MigrateAnnotation = _udpa_annotations_MigrateAnnotation; - export type MigrateAnnotation__Output = _udpa_annotations_MigrateAnnotation__Output; - export type PackageVersionStatus = _udpa_annotations_PackageVersionStatus; - export type StatusAnnotation = _udpa_annotations_StatusAnnotation; - export type StatusAnnotation__Output = _udpa_annotations_StatusAnnotation__Output; - } - } - export namespace validate { - /** - * AnyRules describe constraints applied exclusively to the - * `google.protobuf.Any` well-known type - */ - export type AnyRules = _validate_AnyRules; - /** - * AnyRules describe constraints applied exclusively to the - * `google.protobuf.Any` well-known type - */ - export type AnyRules__Output = _validate_AnyRules__Output; - /** - * BoolRules describes the constraints applied to `bool` values - */ - export type BoolRules = _validate_BoolRules; - /** - * BoolRules describes the constraints applied to `bool` values - */ - export type BoolRules__Output = _validate_BoolRules__Output; - /** - * BytesRules describe the constraints applied to `bytes` values - */ - export type BytesRules = _validate_BytesRules; - /** - * BytesRules describe the constraints applied to `bytes` values - */ - export type BytesRules__Output = _validate_BytesRules__Output; - /** - * DoubleRules describes the constraints applied to `double` values - */ - export type DoubleRules = _validate_DoubleRules; - /** - * DoubleRules describes the constraints applied to `double` values - */ - export type DoubleRules__Output = _validate_DoubleRules__Output; - /** - * DurationRules describe the constraints applied exclusively to the - * `google.protobuf.Duration` well-known type - */ - export type DurationRules = _validate_DurationRules; - /** - * DurationRules describe the constraints applied exclusively to the - * `google.protobuf.Duration` well-known type - */ - export type DurationRules__Output = _validate_DurationRules__Output; - /** - * EnumRules describe the constraints applied to enum values - */ - export type EnumRules = _validate_EnumRules; - /** - * EnumRules describe the constraints applied to enum values - */ - export type EnumRules__Output = _validate_EnumRules__Output; - /** - * FieldRules encapsulates the rules for each type of field. Depending on the - * field, the correct set should be used to ensure proper validations. - */ - export type FieldRules = _validate_FieldRules; - /** - * FieldRules encapsulates the rules for each type of field. Depending on the - * field, the correct set should be used to ensure proper validations. - */ - export type FieldRules__Output = _validate_FieldRules__Output; - /** - * Fixed32Rules describes the constraints applied to `fixed32` values - */ - export type Fixed32Rules = _validate_Fixed32Rules; - /** - * Fixed32Rules describes the constraints applied to `fixed32` values - */ - export type Fixed32Rules__Output = _validate_Fixed32Rules__Output; - /** - * Fixed64Rules describes the constraints applied to `fixed64` values - */ - export type Fixed64Rules = _validate_Fixed64Rules; - /** - * Fixed64Rules describes the constraints applied to `fixed64` values - */ - export type Fixed64Rules__Output = _validate_Fixed64Rules__Output; - /** - * FloatRules describes the constraints applied to `float` values - */ - export type FloatRules = _validate_FloatRules; - /** - * FloatRules describes the constraints applied to `float` values - */ - export type FloatRules__Output = _validate_FloatRules__Output; - /** - * Int32Rules describes the constraints applied to `int32` values - */ - export type Int32Rules = _validate_Int32Rules; - /** - * Int32Rules describes the constraints applied to `int32` values - */ - export type Int32Rules__Output = _validate_Int32Rules__Output; - /** - * Int64Rules describes the constraints applied to `int64` values - */ - export type Int64Rules = _validate_Int64Rules; - /** - * Int64Rules describes the constraints applied to `int64` values - */ - export type Int64Rules__Output = _validate_Int64Rules__Output; - /** - * WellKnownRegex contain some well-known patterns. - */ - export type KnownRegex = _validate_KnownRegex; - /** - * MapRules describe the constraints applied to `map` values - */ - export type MapRules = _validate_MapRules; - /** - * MapRules describe the constraints applied to `map` values - */ - export type MapRules__Output = _validate_MapRules__Output; - /** - * MessageRules describe the constraints applied to embedded message values. - * For message-type fields, validation is performed recursively. - */ - export type MessageRules = _validate_MessageRules; - /** - * MessageRules describe the constraints applied to embedded message values. - * For message-type fields, validation is performed recursively. - */ - export type MessageRules__Output = _validate_MessageRules__Output; - /** - * RepeatedRules describe the constraints applied to `repeated` values - */ - export type RepeatedRules = _validate_RepeatedRules; - /** - * RepeatedRules describe the constraints applied to `repeated` values - */ - export type RepeatedRules__Output = _validate_RepeatedRules__Output; - /** - * SFixed32Rules describes the constraints applied to `sfixed32` values - */ - export type SFixed32Rules = _validate_SFixed32Rules; - /** - * SFixed32Rules describes the constraints applied to `sfixed32` values - */ - export type SFixed32Rules__Output = _validate_SFixed32Rules__Output; - /** - * SFixed64Rules describes the constraints applied to `sfixed64` values - */ - export type SFixed64Rules = _validate_SFixed64Rules; - /** - * SFixed64Rules describes the constraints applied to `sfixed64` values - */ - export type SFixed64Rules__Output = _validate_SFixed64Rules__Output; - /** - * SInt32Rules describes the constraints applied to `sint32` values - */ - export type SInt32Rules = _validate_SInt32Rules; - /** - * SInt32Rules describes the constraints applied to `sint32` values - */ - export type SInt32Rules__Output = _validate_SInt32Rules__Output; - /** - * SInt64Rules describes the constraints applied to `sint64` values - */ - export type SInt64Rules = _validate_SInt64Rules; - /** - * SInt64Rules describes the constraints applied to `sint64` values - */ - export type SInt64Rules__Output = _validate_SInt64Rules__Output; - /** - * StringRules describe the constraints applied to `string` values - */ - export type StringRules = _validate_StringRules; - /** - * StringRules describe the constraints applied to `string` values - */ - export type StringRules__Output = _validate_StringRules__Output; - /** - * TimestampRules describe the constraints applied exclusively to the - * `google.protobuf.Timestamp` well-known type - */ - export type TimestampRules = _validate_TimestampRules; - /** - * TimestampRules describe the constraints applied exclusively to the - * `google.protobuf.Timestamp` well-known type - */ - export type TimestampRules__Output = _validate_TimestampRules__Output; - /** - * UInt32Rules describes the constraints applied to `uint32` values - */ - export type UInt32Rules = _validate_UInt32Rules; - /** - * UInt32Rules describes the constraints applied to `uint32` values - */ - export type UInt32Rules__Output = _validate_UInt32Rules__Output; - /** - * UInt64Rules describes the constraints applied to `uint64` values - */ - export type UInt64Rules = _validate_UInt64Rules; - /** - * UInt64Rules describes the constraints applied to `uint64` values - */ - export type UInt64Rules__Output = _validate_UInt64Rules__Output; - } -} - -export namespace ClientInterfaces { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - export namespace RouteConfiguration { - } - export namespace Vhds { - } - export namespace core { - export namespace Address { - } - export namespace AggregatedConfigSource { - } - export namespace ApiConfigSource { - } - export namespace AsyncDataSource { - } - export namespace BackoffStrategy { - } - export namespace BindConfig { - } - export namespace BuildVersion { - } - export namespace CidrRange { - } - export namespace ConfigSource { - } - export namespace ControlPlane { - } - export namespace DataSource { - } - export namespace Extension { - } - export namespace GrpcService { - export namespace EnvoyGrpc { - } - export namespace GoogleGrpc { - export namespace CallCredentials { - export namespace GoogleIAMCredentials { - } - export namespace MetadataCredentialsFromPlugin { - } - export namespace ServiceAccountJWTAccessCredentials { - } - export namespace StsService { - } - } - export namespace ChannelCredentials { - } - export namespace GoogleLocalCredentials { - } - export namespace SslCredentials { - } - } - } - export namespace HeaderMap { - } - export namespace HeaderValue { - } - export namespace HeaderValueOption { - } - export namespace HttpUri { - } - export namespace Locality { - } - export namespace Metadata { - } - export namespace Node { - } - export namespace Pipe { - } - export namespace RateLimitSettings { - } - export namespace RemoteDataSource { - } - export namespace RetryPolicy { - } - export namespace RuntimeDouble { - } - export namespace RuntimeFeatureFlag { - } - export namespace RuntimeFractionalPercent { - } - export namespace RuntimeUInt32 { - } - export namespace SelfConfigSource { - } - export namespace SocketAddress { - } - export namespace SocketOption { - } - export namespace TcpKeepalive { - } - export namespace TransportSocket { - } - } - export namespace route { - export namespace CorsPolicy { - } - export namespace Decorator { - } - export namespace DirectResponseAction { - } - export namespace FilterAction { - } - export namespace HeaderMatcher { - } - export namespace HedgePolicy { - } - export namespace QueryParameterMatcher { - } - export namespace RateLimit { - export namespace Action { - export namespace DestinationCluster { - } - export namespace GenericKey { - } - export namespace HeaderValueMatch { - } - export namespace RemoteAddress { - } - export namespace RequestHeaders { - } - export namespace SourceCluster { - } - } - } - export namespace RedirectAction { - } - export namespace RetryPolicy { - export namespace RetryBackOff { - } - export namespace RetryHostPredicate { - } - export namespace RetryPriority { - } - } - export namespace Route { - } - export namespace RouteAction { - export namespace HashPolicy { - export namespace ConnectionProperties { - } - export namespace Cookie { - } - export namespace FilterState { - } - export namespace Header { - } - export namespace QueryParameter { - } - } - export namespace RequestMirrorPolicy { - } - export namespace UpgradeConfig { - } - } - export namespace RouteMatch { - export namespace GrpcRouteMatchOptions { - } - export namespace TlsContextMatchOptions { - } - } - export namespace Tracing { - } - export namespace VirtualCluster { - } - export namespace VirtualHost { - } - export namespace WeightedCluster { - export namespace ClusterWeight { - } - } - } - } - } - export namespace type { - export namespace DoubleRange { - } - export namespace FractionalPercent { - } - export namespace Int32Range { - } - export namespace Int64Range { - } - export namespace Percent { - } - export namespace SemanticVersion { - } - export namespace matcher { - export namespace ListStringMatcher { - } - export namespace RegexMatchAndSubstitute { - } - export namespace RegexMatcher { - export namespace GoogleRE2 { - } - } - export namespace StringMatcher { - } - } - export namespace metadata { - export namespace v2 { - export namespace MetadataKey { - export namespace PathSegment { - } - } - export namespace MetadataKind { - export namespace Cluster { - } - export namespace Host { - } - export namespace Request { - } - export namespace Route { - } - } - } - } - export namespace tracing { - export namespace v2 { - export namespace CustomTag { - export namespace Environment { - } - export namespace Header { - } - export namespace Literal { - } - export namespace Metadata { - } - } - } - } - } - } - export namespace google { - export namespace protobuf { - export namespace Any { - } - export namespace BoolValue { - } - export namespace BytesValue { - } - export namespace DescriptorProto { - export namespace ExtensionRange { - } - export namespace ReservedRange { - } - } - export namespace DoubleValue { - } - export namespace Duration { - } - export namespace Empty { - } - export namespace EnumDescriptorProto { - } - export namespace EnumOptions { - } - export namespace EnumValueDescriptorProto { - } - export namespace EnumValueOptions { - } - export namespace FieldDescriptorProto { - } - export namespace FieldOptions { - } - export namespace FileDescriptorProto { - } - export namespace FileDescriptorSet { - } - export namespace FileOptions { - } - export namespace FloatValue { - } - export namespace GeneratedCodeInfo { - export namespace Annotation { - } - } - export namespace Int32Value { - } - export namespace Int64Value { - } - export namespace ListValue { - } - export namespace MessageOptions { - } - export namespace MethodDescriptorProto { - } - export namespace MethodOptions { - } - export namespace OneofDescriptorProto { - } - export namespace OneofOptions { - } - export namespace ServiceDescriptorProto { - } - export namespace ServiceOptions { - } - export namespace SourceCodeInfo { - export namespace Location { - } - } - export namespace StringValue { - } - export namespace Struct { - } - export namespace Timestamp { - } - export namespace UInt32Value { - } - export namespace UInt64Value { - } - export namespace UninterpretedOption { - export namespace NamePart { - } - } - export namespace Value { - } - } - } - export namespace udpa { - export namespace annotations { - export namespace FieldMigrateAnnotation { - } - export namespace FileMigrateAnnotation { - } - export namespace MigrateAnnotation { - } - export namespace StatusAnnotation { - } - } - } - export namespace validate { - export namespace AnyRules { - } - export namespace BoolRules { - } - export namespace BytesRules { - } - export namespace DoubleRules { - } - export namespace DurationRules { - } - export namespace EnumRules { - } - export namespace FieldRules { - } - export namespace Fixed32Rules { - } - export namespace Fixed64Rules { - } - export namespace FloatRules { - } - export namespace Int32Rules { - } - export namespace Int64Rules { - } - export namespace MapRules { - } - export namespace MessageRules { - } - export namespace RepeatedRules { - } - export namespace SFixed32Rules { - } - export namespace SFixed64Rules { - } - export namespace SInt32Rules { - } - export namespace SInt64Rules { - } - export namespace StringRules { - } - export namespace TimestampRules { - } - export namespace UInt32Rules { - } - export namespace UInt64Rules { - } - } -} type ConstructorArguments = Constructor extends new (...args: infer Args) => any ? Args: never; type SubtypeConstructor = { @@ -1821,387 +179,3 @@ export interface ProtoGrpcType { } } -export namespace ServiceHandlers { - export namespace envoy { - export namespace annotations { - } - export namespace api { - export namespace v2 { - export namespace RouteConfiguration { - } - export namespace Vhds { - } - export namespace core { - export namespace Address { - } - export namespace AggregatedConfigSource { - } - export namespace ApiConfigSource { - } - export namespace AsyncDataSource { - } - export namespace BackoffStrategy { - } - export namespace BindConfig { - } - export namespace BuildVersion { - } - export namespace CidrRange { - } - export namespace ConfigSource { - } - export namespace ControlPlane { - } - export namespace DataSource { - } - export namespace Extension { - } - export namespace GrpcService { - export namespace EnvoyGrpc { - } - export namespace GoogleGrpc { - export namespace CallCredentials { - export namespace GoogleIAMCredentials { - } - export namespace MetadataCredentialsFromPlugin { - } - export namespace ServiceAccountJWTAccessCredentials { - } - export namespace StsService { - } - } - export namespace ChannelCredentials { - } - export namespace GoogleLocalCredentials { - } - export namespace SslCredentials { - } - } - } - export namespace HeaderMap { - } - export namespace HeaderValue { - } - export namespace HeaderValueOption { - } - export namespace HttpUri { - } - export namespace Locality { - } - export namespace Metadata { - } - export namespace Node { - } - export namespace Pipe { - } - export namespace RateLimitSettings { - } - export namespace RemoteDataSource { - } - export namespace RetryPolicy { - } - export namespace RuntimeDouble { - } - export namespace RuntimeFeatureFlag { - } - export namespace RuntimeFractionalPercent { - } - export namespace RuntimeUInt32 { - } - export namespace SelfConfigSource { - } - export namespace SocketAddress { - } - export namespace SocketOption { - } - export namespace TcpKeepalive { - } - export namespace TransportSocket { - } - } - export namespace route { - export namespace CorsPolicy { - } - export namespace Decorator { - } - export namespace DirectResponseAction { - } - export namespace FilterAction { - } - export namespace HeaderMatcher { - } - export namespace HedgePolicy { - } - export namespace QueryParameterMatcher { - } - export namespace RateLimit { - export namespace Action { - export namespace DestinationCluster { - } - export namespace GenericKey { - } - export namespace HeaderValueMatch { - } - export namespace RemoteAddress { - } - export namespace RequestHeaders { - } - export namespace SourceCluster { - } - } - } - export namespace RedirectAction { - } - export namespace RetryPolicy { - export namespace RetryBackOff { - } - export namespace RetryHostPredicate { - } - export namespace RetryPriority { - } - } - export namespace Route { - } - export namespace RouteAction { - export namespace HashPolicy { - export namespace ConnectionProperties { - } - export namespace Cookie { - } - export namespace FilterState { - } - export namespace Header { - } - export namespace QueryParameter { - } - } - export namespace RequestMirrorPolicy { - } - export namespace UpgradeConfig { - } - } - export namespace RouteMatch { - export namespace GrpcRouteMatchOptions { - } - export namespace TlsContextMatchOptions { - } - } - export namespace Tracing { - } - export namespace VirtualCluster { - } - export namespace VirtualHost { - } - export namespace WeightedCluster { - export namespace ClusterWeight { - } - } - } - } - } - export namespace type { - export namespace DoubleRange { - } - export namespace FractionalPercent { - } - export namespace Int32Range { - } - export namespace Int64Range { - } - export namespace Percent { - } - export namespace SemanticVersion { - } - export namespace matcher { - export namespace ListStringMatcher { - } - export namespace RegexMatchAndSubstitute { - } - export namespace RegexMatcher { - export namespace GoogleRE2 { - } - } - export namespace StringMatcher { - } - } - export namespace metadata { - export namespace v2 { - export namespace MetadataKey { - export namespace PathSegment { - } - } - export namespace MetadataKind { - export namespace Cluster { - } - export namespace Host { - } - export namespace Request { - } - export namespace Route { - } - } - } - } - export namespace tracing { - export namespace v2 { - export namespace CustomTag { - export namespace Environment { - } - export namespace Header { - } - export namespace Literal { - } - export namespace Metadata { - } - } - } - } - } - } - export namespace google { - export namespace protobuf { - export namespace Any { - } - export namespace BoolValue { - } - export namespace BytesValue { - } - export namespace DescriptorProto { - export namespace ExtensionRange { - } - export namespace ReservedRange { - } - } - export namespace DoubleValue { - } - export namespace Duration { - } - export namespace Empty { - } - export namespace EnumDescriptorProto { - } - export namespace EnumOptions { - } - export namespace EnumValueDescriptorProto { - } - export namespace EnumValueOptions { - } - export namespace FieldDescriptorProto { - } - export namespace FieldOptions { - } - export namespace FileDescriptorProto { - } - export namespace FileDescriptorSet { - } - export namespace FileOptions { - } - export namespace FloatValue { - } - export namespace GeneratedCodeInfo { - export namespace Annotation { - } - } - export namespace Int32Value { - } - export namespace Int64Value { - } - export namespace ListValue { - } - export namespace MessageOptions { - } - export namespace MethodDescriptorProto { - } - export namespace MethodOptions { - } - export namespace OneofDescriptorProto { - } - export namespace OneofOptions { - } - export namespace ServiceDescriptorProto { - } - export namespace ServiceOptions { - } - export namespace SourceCodeInfo { - export namespace Location { - } - } - export namespace StringValue { - } - export namespace Struct { - } - export namespace Timestamp { - } - export namespace UInt32Value { - } - export namespace UInt64Value { - } - export namespace UninterpretedOption { - export namespace NamePart { - } - } - export namespace Value { - } - } - } - export namespace udpa { - export namespace annotations { - export namespace FieldMigrateAnnotation { - } - export namespace FileMigrateAnnotation { - } - export namespace MigrateAnnotation { - } - export namespace StatusAnnotation { - } - } - } - export namespace validate { - export namespace AnyRules { - } - export namespace BoolRules { - } - export namespace BytesRules { - } - export namespace DoubleRules { - } - export namespace DurationRules { - } - export namespace EnumRules { - } - export namespace FieldRules { - } - export namespace Fixed32Rules { - } - export namespace Fixed64Rules { - } - export namespace FloatRules { - } - export namespace Int32Rules { - } - export namespace Int64Rules { - } - export namespace MapRules { - } - export namespace MessageRules { - } - export namespace RepeatedRules { - } - export namespace SFixed32Rules { - } - export namespace SFixed64Rules { - } - export namespace SInt32Rules { - } - export namespace SInt64Rules { - } - export namespace StringRules { - } - export namespace TimestampRules { - } - export namespace UInt32Rules { - } - export namespace UInt64Rules { - } - } -} diff --git a/packages/grpc-js/src/xds-bootstrap.ts b/packages/grpc-js/src/xds-bootstrap.ts index 90cded00..ca360f48 100644 --- a/packages/grpc-js/src/xds-bootstrap.ts +++ b/packages/grpc-js/src/xds-bootstrap.ts @@ -16,7 +16,9 @@ */ import * as fs from 'fs'; -import * as adsTypes from './generated/ads'; +import { Struct } from './generated/google/protobuf/Struct'; +import { Node } from './generated/envoy/api/v2/core/Node'; +import { Value } from './generated/google/protobuf/Value'; /* eslint-disable @typescript-eslint/no-explicit-any */ @@ -32,7 +34,7 @@ export interface XdsServerConfig { export interface BootstrapInfo { xdsServers: XdsServerConfig[]; - node: adsTypes.messages.envoy.api.v2.core.Node; + node: Node; } function validateChannelCredsConfig(obj: any): ChannelCredsConfig { @@ -85,7 +87,7 @@ function validateXdsServerConfig(obj: any): XdsServerConfig { }; } -function validateValue(obj: any): adsTypes.messages.google.protobuf.Value { +function validateValue(obj: any): Value { if (Array.isArray(obj)) { return { kind: 'listValue', @@ -128,7 +130,7 @@ function validateValue(obj: any): adsTypes.messages.google.protobuf.Value { } } -function getStructFromJson(obj: any): adsTypes.messages.google.protobuf.Struct { +function getStructFromJson(obj: any): Struct { if (typeof obj !== 'object' || obj === null) { throw new Error('Invalid JSON object for Struct field'); } @@ -154,8 +156,8 @@ function getStructFromJson(obj: any): adsTypes.messages.google.protobuf.Struct { * fields we expect to see: id, cluster, locality, and metadata. * @param obj */ -function validateNode(obj: any): adsTypes.messages.envoy.api.v2.core.Node { - const result: adsTypes.messages.envoy.api.v2.core.Node = {}; +function validateNode(obj: any): Node { + const result: Node = {}; if (!('id' in obj)) { throw new Error('id field missing in node element'); } diff --git a/packages/grpc-js/src/xds-client.ts b/packages/grpc-js/src/xds-client.ts index 9fb5279e..b9275963 100644 --- a/packages/grpc-js/src/xds-client.ts +++ b/packages/grpc-js/src/xds-client.ts @@ -18,7 +18,6 @@ import * as protoLoader from '@grpc/proto-loader'; import { loadPackageDefinition } from './make-client'; import * as adsTypes from './generated/ads'; -import * as edsTypes from './generated/endpoint'; import { createGoogleDefaultCredentials } from './channel-credentials'; import { loadBootstrapInfo } from './xds-bootstrap'; import { ClientDuplexStream, ServiceError } from './call'; @@ -29,6 +28,11 @@ import { Metadata } from './metadata'; import * as logging from './logging'; import { ServiceConfig } from './service-config'; import { ChannelOptions } from './channel-options'; +import { Node } from './generated/envoy/api/v2/core/Node'; +import { AggregatedDiscoveryServiceClient } from './generated/envoy/service/discovery/v2/AggregatedDiscoveryService'; +import { DiscoveryRequest } from './generated/envoy/api/v2/DiscoveryRequest'; +import { DiscoveryResponse__Output } from './generated/envoy/api/v2/DiscoveryResponse'; +import { ClusterLoadAssignment__Output } from './generated/envoy/api/v2/ClusterLoadAssignment'; const TRACER_NAME = 'xds_client'; @@ -86,21 +90,21 @@ export interface Watcher { } export class XdsClient { - private node: adsTypes.messages.envoy.api.v2.core.Node | null = null; - private client: adsTypes.ClientInterfaces.envoy.service.discovery.v2.AggregatedDiscoveryServiceClient | null = null; + private node: Node | null = null; + private client: AggregatedDiscoveryServiceClient | null = null; private adsCall: ClientDuplexStream< - adsTypes.messages.envoy.api.v2.DiscoveryRequest, - adsTypes.messages.envoy.api.v2.DiscoveryResponse__Output + DiscoveryRequest, + DiscoveryResponse__Output > | null = null; private hasShutdown = false; private endpointWatchers: Map< string, - Watcher[] + Watcher[] > = new Map< string, - Watcher[] + Watcher[] >(); private lastEdsVersionInfo = ''; private lastEdsNonce = ''; @@ -175,17 +179,17 @@ export class XdsClient { this.adsCall = this.client.StreamAggregatedResources(); this.adsCall.on( 'data', - (message: adsTypes.messages.envoy.api.v2.DiscoveryResponse__Output) => { + (message: DiscoveryResponse__Output) => { switch (message.type_url) { case EDS_TYPE_URL: { - const edsResponses: edsTypes.messages.envoy.api.v2.ClusterLoadAssignment__Output[] = []; + const edsResponses: ClusterLoadAssignment__Output[] = []; for (const resource of message.resources) { if ( protoLoader.isAnyExtension(resource) && resource['@type'] === EDS_TYPE_URL ) { const resp = resource as protoLoader.AnyExtension & - edsTypes.messages.envoy.api.v2.ClusterLoadAssignment__Output; + ClusterLoadAssignment__Output; if (!this.validateEdsResponse(resp)) { this.nackEds('ClusterLoadAssignment validation failed'); return; @@ -298,7 +302,7 @@ export class XdsClient { * @param message */ private validateEdsResponse( - message: edsTypes.messages.envoy.api.v2.ClusterLoadAssignment__Output + message: ClusterLoadAssignment__Output ): boolean { for (const endpoint of message.endpoints) { for (const lb of endpoint.lb_endpoints) { @@ -318,7 +322,7 @@ export class XdsClient { } private handleEdsResponse( - message: edsTypes.messages.envoy.api.v2.ClusterLoadAssignment__Output + message: ClusterLoadAssignment__Output ) { const watchers = this.endpointWatchers.get(message.cluster_name) ?? []; for (const watcher of watchers) { @@ -350,7 +354,7 @@ export class XdsClient { addEndpointWatcher( edsServiceName: string, watcher: Watcher< - edsTypes.messages.envoy.api.v2.ClusterLoadAssignment__Output + ClusterLoadAssignment__Output > ) { trace('Watcher added for endpoint ' + edsServiceName); @@ -370,7 +374,7 @@ export class XdsClient { removeEndpointWatcher( edsServiceName: string, watcher: Watcher< - edsTypes.messages.envoy.api.v2.ClusterLoadAssignment__Output + ClusterLoadAssignment__Output > ) { trace('Watcher removed for endpoint ' + edsServiceName);