// Copyright 2026 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.

// Code generated by protoc-gen-go. DO NOT EDIT.
// versions:
// 	protoc-gen-go v1.36.11
// 	protoc        v6.33.2
// source: google/cloud/dialogflow/cx/v3/environment.proto

package cxpb

import (
	reflect "reflect"
	sync "sync"
	unsafe "unsafe"

	longrunningpb "cloud.google.com/go/longrunning/autogen/longrunningpb"
	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	emptypb "google.golang.org/protobuf/types/known/emptypb"
	fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
	_ "google.golang.org/protobuf/types/known/structpb"
	timestamppb "google.golang.org/protobuf/types/known/timestamppb"
)

const (
	// Verify that this generated code is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(20 - protoimpl.MinVersion)
	// Verify that runtime/protoimpl is sufficiently up-to-date.
	_ = protoimpl.EnforceVersion(protoimpl.MaxVersion - 20)
)

// The overall result for a continuous test run in an agent environment.
type ContinuousTestResult_AggregatedTestResult int32

const (
	// Not specified. Should never be used.
	ContinuousTestResult_AGGREGATED_TEST_RESULT_UNSPECIFIED ContinuousTestResult_AggregatedTestResult = 0
	// All the tests passed.
	ContinuousTestResult_PASSED ContinuousTestResult_AggregatedTestResult = 1
	// At least one test did not pass.
	ContinuousTestResult_FAILED ContinuousTestResult_AggregatedTestResult = 2
)

// Enum value maps for ContinuousTestResult_AggregatedTestResult.
var (
	ContinuousTestResult_AggregatedTestResult_name = map[int32]string{
		0: "AGGREGATED_TEST_RESULT_UNSPECIFIED",
		1: "PASSED",
		2: "FAILED",
	}
	ContinuousTestResult_AggregatedTestResult_value = map[string]int32{
		"AGGREGATED_TEST_RESULT_UNSPECIFIED": 0,
		"PASSED":                             1,
		"FAILED":                             2,
	}
)

func (x ContinuousTestResult_AggregatedTestResult) Enum() *ContinuousTestResult_AggregatedTestResult {
	p := new(ContinuousTestResult_AggregatedTestResult)
	*p = x
	return p
}

func (x ContinuousTestResult_AggregatedTestResult) String() string {
	return protoimpl.X.EnumStringOf(x.Descriptor(), protoreflect.EnumNumber(x))
}

func (ContinuousTestResult_AggregatedTestResult) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_enumTypes[0].Descriptor()
}

func (ContinuousTestResult_AggregatedTestResult) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3_environment_proto_enumTypes[0]
}

func (x ContinuousTestResult_AggregatedTestResult) Number() protoreflect.EnumNumber {
	return protoreflect.EnumNumber(x)
}

// Deprecated: Use ContinuousTestResult_AggregatedTestResult.Descriptor instead.
func (ContinuousTestResult_AggregatedTestResult) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{9, 0}
}

// Represents an environment for an agent. You can create multiple versions
// of your agent and publish them to separate environments. When you edit an
// agent, you are editing the draft agent. At any point, you can save the draft
// agent as an agent version, which is an immutable snapshot of your agent. When
// you save the draft agent, it is published to the default environment. When
// you create agent versions, you can publish them to custom environments. You
// can create a variety of custom environments for testing, development,
// production, etc.
type Environment struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The name of the environment.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The human-readable name of the environment (unique in an agent).
	// Limit of 64 characters.
	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// The human-readable description of the environment. The maximum length is
	// 500 characters. If exceeded, the request is rejected.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// A list of configurations for flow versions. You should include version
	// configs for all flows that are reachable from [`Start
	// Flow`][Agent.start_flow] in the agent. Otherwise, an error will be
	// returned.
	VersionConfigs []*Environment_VersionConfig `protobuf:"bytes,6,rep,name=version_configs,json=versionConfigs,proto3" json:"version_configs,omitempty"`
	// Output only. Update time of this environment.
	UpdateTime *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	// The test cases config for continuous tests of this environment.
	TestCasesConfig *Environment_TestCasesConfig `protobuf:"bytes,7,opt,name=test_cases_config,json=testCasesConfig,proto3" json:"test_cases_config,omitempty"`
	// The webhook configuration for this environment.
	WebhookConfig *Environment_WebhookConfig `protobuf:"bytes,10,opt,name=webhook_config,json=webhookConfig,proto3" json:"webhook_config,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Environment) Reset() {
	*x = Environment{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[0]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Environment) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Environment) ProtoMessage() {}

func (x *Environment) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[0]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Environment.ProtoReflect.Descriptor instead.
func (*Environment) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{0}
}

func (x *Environment) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *Environment) GetDisplayName() string {
	if x != nil {
		return x.DisplayName
	}
	return ""
}

func (x *Environment) GetDescription() string {
	if x != nil {
		return x.Description
	}
	return ""
}

func (x *Environment) GetVersionConfigs() []*Environment_VersionConfig {
	if x != nil {
		return x.VersionConfigs
	}
	return nil
}

func (x *Environment) GetUpdateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.UpdateTime
	}
	return nil
}

func (x *Environment) GetTestCasesConfig() *Environment_TestCasesConfig {
	if x != nil {
		return x.TestCasesConfig
	}
	return nil
}

func (x *Environment) GetWebhookConfig() *Environment_WebhookConfig {
	if x != nil {
		return x.WebhookConfig
	}
	return nil
}

// The request message for
// [Environments.ListEnvironments][google.cloud.dialogflow.cx.v3.Environments.ListEnvironments].
type ListEnvironmentsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The [Agent][google.cloud.dialogflow.cx.v3.Agent] to list all
	// environments for. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// The maximum number of items to return in a single page. By default 20 and
	// at most 100.
	PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// The next_page_token value returned from a previous list request.
	PageToken     string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListEnvironmentsRequest) Reset() {
	*x = ListEnvironmentsRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListEnvironmentsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListEnvironmentsRequest) ProtoMessage() {}

func (x *ListEnvironmentsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[1]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListEnvironmentsRequest.ProtoReflect.Descriptor instead.
func (*ListEnvironmentsRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{1}
}

func (x *ListEnvironmentsRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

func (x *ListEnvironmentsRequest) GetPageSize() int32 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListEnvironmentsRequest) GetPageToken() string {
	if x != nil {
		return x.PageToken
	}
	return ""
}

// The response message for
// [Environments.ListEnvironments][google.cloud.dialogflow.cx.v3.Environments.ListEnvironments].
type ListEnvironmentsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of environments. There will be a maximum number of items
	// returned based on the page_size field in the request. The list may in some
	// cases be empty or contain fewer entries than page_size even if this isn't
	// the last page.
	Environments []*Environment `protobuf:"bytes,1,rep,name=environments,proto3" json:"environments,omitempty"`
	// Token to retrieve the next page of results, or empty if there are no more
	// results in the list.
	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListEnvironmentsResponse) Reset() {
	*x = ListEnvironmentsResponse{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListEnvironmentsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListEnvironmentsResponse) ProtoMessage() {}

func (x *ListEnvironmentsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[2]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListEnvironmentsResponse.ProtoReflect.Descriptor instead.
func (*ListEnvironmentsResponse) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{2}
}

func (x *ListEnvironmentsResponse) GetEnvironments() []*Environment {
	if x != nil {
		return x.Environments
	}
	return nil
}

func (x *ListEnvironmentsResponse) GetNextPageToken() string {
	if x != nil {
		return x.NextPageToken
	}
	return ""
}

// The request message for
// [Environments.GetEnvironment][google.cloud.dialogflow.cx.v3.Environments.GetEnvironment].
type GetEnvironmentRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the
	// [Environment][google.cloud.dialogflow.cx.v3.Environment]. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>`.
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GetEnvironmentRequest) Reset() {
	*x = GetEnvironmentRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[3]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *GetEnvironmentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*GetEnvironmentRequest) ProtoMessage() {}

func (x *GetEnvironmentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[3]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use GetEnvironmentRequest.ProtoReflect.Descriptor instead.
func (*GetEnvironmentRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{3}
}

func (x *GetEnvironmentRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The request message for
// [Environments.CreateEnvironment][google.cloud.dialogflow.cx.v3.Environments.CreateEnvironment].
type CreateEnvironmentRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The [Agent][google.cloud.dialogflow.cx.v3.Agent] to create an
	// [Environment][google.cloud.dialogflow.cx.v3.Environment] for. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Required. The environment to create.
	Environment   *Environment `protobuf:"bytes,2,opt,name=environment,proto3" json:"environment,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *CreateEnvironmentRequest) Reset() {
	*x = CreateEnvironmentRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *CreateEnvironmentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*CreateEnvironmentRequest) ProtoMessage() {}

func (x *CreateEnvironmentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[4]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use CreateEnvironmentRequest.ProtoReflect.Descriptor instead.
func (*CreateEnvironmentRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{4}
}

func (x *CreateEnvironmentRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

func (x *CreateEnvironmentRequest) GetEnvironment() *Environment {
	if x != nil {
		return x.Environment
	}
	return nil
}

// The request message for
// [Environments.UpdateEnvironment][google.cloud.dialogflow.cx.v3.Environments.UpdateEnvironment].
type UpdateEnvironmentRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The environment to update.
	Environment *Environment `protobuf:"bytes,1,opt,name=environment,proto3" json:"environment,omitempty"`
	// Required. The mask to control which fields get updated.
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *UpdateEnvironmentRequest) Reset() {
	*x = UpdateEnvironmentRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *UpdateEnvironmentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*UpdateEnvironmentRequest) ProtoMessage() {}

func (x *UpdateEnvironmentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[5]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use UpdateEnvironmentRequest.ProtoReflect.Descriptor instead.
func (*UpdateEnvironmentRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{5}
}

func (x *UpdateEnvironmentRequest) GetEnvironment() *Environment {
	if x != nil {
		return x.Environment
	}
	return nil
}

func (x *UpdateEnvironmentRequest) GetUpdateMask() *fieldmaskpb.FieldMask {
	if x != nil {
		return x.UpdateMask
	}
	return nil
}

// The request message for
// [Environments.DeleteEnvironment][google.cloud.dialogflow.cx.v3.Environments.DeleteEnvironment].
type DeleteEnvironmentRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the
	// [Environment][google.cloud.dialogflow.cx.v3.Environment] to delete. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>`.
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeleteEnvironmentRequest) Reset() {
	*x = DeleteEnvironmentRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DeleteEnvironmentRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeleteEnvironmentRequest) ProtoMessage() {}

func (x *DeleteEnvironmentRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[6]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeleteEnvironmentRequest.ProtoReflect.Descriptor instead.
func (*DeleteEnvironmentRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{6}
}

func (x *DeleteEnvironmentRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

// The request message for
// [Environments.LookupEnvironmentHistory][google.cloud.dialogflow.cx.v3.Environments.LookupEnvironmentHistory].
type LookupEnvironmentHistoryRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Resource name of the environment to look up the history for.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The maximum number of items to return in a single page. By default 100 and
	// at most 1000.
	PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// The next_page_token value returned from a previous list request.
	PageToken     string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *LookupEnvironmentHistoryRequest) Reset() {
	*x = LookupEnvironmentHistoryRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[7]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *LookupEnvironmentHistoryRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*LookupEnvironmentHistoryRequest) ProtoMessage() {}

func (x *LookupEnvironmentHistoryRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[7]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use LookupEnvironmentHistoryRequest.ProtoReflect.Descriptor instead.
func (*LookupEnvironmentHistoryRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{7}
}

func (x *LookupEnvironmentHistoryRequest) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *LookupEnvironmentHistoryRequest) GetPageSize() int32 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *LookupEnvironmentHistoryRequest) GetPageToken() string {
	if x != nil {
		return x.PageToken
	}
	return ""
}

// The response message for
// [Environments.LookupEnvironmentHistory][google.cloud.dialogflow.cx.v3.Environments.LookupEnvironmentHistory].
type LookupEnvironmentHistoryResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Represents a list of snapshots for an environment. Time of the snapshots is
	// stored in
	// [`update_time`][google.cloud.dialogflow.cx.v3.Environment.update_time].
	Environments []*Environment `protobuf:"bytes,1,rep,name=environments,proto3" json:"environments,omitempty"`
	// Token to retrieve the next page of results, or empty if there are no more
	// results in the list.
	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *LookupEnvironmentHistoryResponse) Reset() {
	*x = LookupEnvironmentHistoryResponse{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[8]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *LookupEnvironmentHistoryResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*LookupEnvironmentHistoryResponse) ProtoMessage() {}

func (x *LookupEnvironmentHistoryResponse) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[8]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use LookupEnvironmentHistoryResponse.ProtoReflect.Descriptor instead.
func (*LookupEnvironmentHistoryResponse) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{8}
}

func (x *LookupEnvironmentHistoryResponse) GetEnvironments() []*Environment {
	if x != nil {
		return x.Environments
	}
	return nil
}

func (x *LookupEnvironmentHistoryResponse) GetNextPageToken() string {
	if x != nil {
		return x.NextPageToken
	}
	return ""
}

// Represents a result from running a test case in an agent environment.
type ContinuousTestResult struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The resource name for the continuous test result. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/continuousTestResults/<ContinuousTestResultID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// The result of this continuous test run, i.e. whether all the tests in this
	// continuous test run pass or not.
	Result ContinuousTestResult_AggregatedTestResult `protobuf:"varint,2,opt,name=result,proto3,enum=google.cloud.dialogflow.cx.v3.ContinuousTestResult_AggregatedTestResult" json:"result,omitempty"`
	// A list of individual test case results names in this continuous test run.
	TestCaseResults []string `protobuf:"bytes,3,rep,name=test_case_results,json=testCaseResults,proto3" json:"test_case_results,omitempty"`
	// Time when the continuous testing run starts.
	RunTime       *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=run_time,json=runTime,proto3" json:"run_time,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ContinuousTestResult) Reset() {
	*x = ContinuousTestResult{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[9]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ContinuousTestResult) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ContinuousTestResult) ProtoMessage() {}

func (x *ContinuousTestResult) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[9]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ContinuousTestResult.ProtoReflect.Descriptor instead.
func (*ContinuousTestResult) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{9}
}

func (x *ContinuousTestResult) GetName() string {
	if x != nil {
		return x.Name
	}
	return ""
}

func (x *ContinuousTestResult) GetResult() ContinuousTestResult_AggregatedTestResult {
	if x != nil {
		return x.Result
	}
	return ContinuousTestResult_AGGREGATED_TEST_RESULT_UNSPECIFIED
}

func (x *ContinuousTestResult) GetTestCaseResults() []string {
	if x != nil {
		return x.TestCaseResults
	}
	return nil
}

func (x *ContinuousTestResult) GetRunTime() *timestamppb.Timestamp {
	if x != nil {
		return x.RunTime
	}
	return nil
}

// The request message for
// [Environments.RunContinuousTest][google.cloud.dialogflow.cx.v3.Environments.RunContinuousTest].
type RunContinuousTestRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>`.
	Environment   string `protobuf:"bytes,1,opt,name=environment,proto3" json:"environment,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RunContinuousTestRequest) Reset() {
	*x = RunContinuousTestRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[10]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RunContinuousTestRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RunContinuousTestRequest) ProtoMessage() {}

func (x *RunContinuousTestRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[10]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RunContinuousTestRequest.ProtoReflect.Descriptor instead.
func (*RunContinuousTestRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{10}
}

func (x *RunContinuousTestRequest) GetEnvironment() string {
	if x != nil {
		return x.Environment
	}
	return ""
}

// The response message for
// [Environments.RunContinuousTest][google.cloud.dialogflow.cx.v3.Environments.RunContinuousTest].
type RunContinuousTestResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The result for a continuous test run.
	ContinuousTestResult *ContinuousTestResult `protobuf:"bytes,1,opt,name=continuous_test_result,json=continuousTestResult,proto3" json:"continuous_test_result,omitempty"`
	unknownFields        protoimpl.UnknownFields
	sizeCache            protoimpl.SizeCache
}

func (x *RunContinuousTestResponse) Reset() {
	*x = RunContinuousTestResponse{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[11]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RunContinuousTestResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RunContinuousTestResponse) ProtoMessage() {}

func (x *RunContinuousTestResponse) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[11]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RunContinuousTestResponse.ProtoReflect.Descriptor instead.
func (*RunContinuousTestResponse) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{11}
}

func (x *RunContinuousTestResponse) GetContinuousTestResult() *ContinuousTestResult {
	if x != nil {
		return x.ContinuousTestResult
	}
	return nil
}

// Metadata returned for the
// [Environments.RunContinuousTest][google.cloud.dialogflow.cx.v3.Environments.RunContinuousTest]
// long running operation.
type RunContinuousTestMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The test errors.
	Errors        []*TestError `protobuf:"bytes,1,rep,name=errors,proto3" json:"errors,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *RunContinuousTestMetadata) Reset() {
	*x = RunContinuousTestMetadata{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[12]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *RunContinuousTestMetadata) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*RunContinuousTestMetadata) ProtoMessage() {}

func (x *RunContinuousTestMetadata) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[12]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use RunContinuousTestMetadata.ProtoReflect.Descriptor instead.
func (*RunContinuousTestMetadata) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{12}
}

func (x *RunContinuousTestMetadata) GetErrors() []*TestError {
	if x != nil {
		return x.Errors
	}
	return nil
}

// The request message for
// [Environments.ListContinuousTestResults][google.cloud.dialogflow.cx.v3.Environments.ListContinuousTestResults].
type ListContinuousTestResultsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The environment to list results for.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// The maximum number of items to return in a single page. By default 100 and
	// at most 1000.
	PageSize int32 `protobuf:"varint,2,opt,name=page_size,json=pageSize,proto3" json:"page_size,omitempty"`
	// The next_page_token value returned from a previous list request.
	PageToken     string `protobuf:"bytes,3,opt,name=page_token,json=pageToken,proto3" json:"page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListContinuousTestResultsRequest) Reset() {
	*x = ListContinuousTestResultsRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[13]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListContinuousTestResultsRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListContinuousTestResultsRequest) ProtoMessage() {}

func (x *ListContinuousTestResultsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[13]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListContinuousTestResultsRequest.ProtoReflect.Descriptor instead.
func (*ListContinuousTestResultsRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{13}
}

func (x *ListContinuousTestResultsRequest) GetParent() string {
	if x != nil {
		return x.Parent
	}
	return ""
}

func (x *ListContinuousTestResultsRequest) GetPageSize() int32 {
	if x != nil {
		return x.PageSize
	}
	return 0
}

func (x *ListContinuousTestResultsRequest) GetPageToken() string {
	if x != nil {
		return x.PageToken
	}
	return ""
}

// The response message for [Environments.ListTestCaseResults][].
type ListContinuousTestResultsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of continuous test results.
	ContinuousTestResults []*ContinuousTestResult `protobuf:"bytes,1,rep,name=continuous_test_results,json=continuousTestResults,proto3" json:"continuous_test_results,omitempty"`
	// Token to retrieve the next page of results, or empty if there are no more
	// results in the list.
	NextPageToken string `protobuf:"bytes,2,opt,name=next_page_token,json=nextPageToken,proto3" json:"next_page_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ListContinuousTestResultsResponse) Reset() {
	*x = ListContinuousTestResultsResponse{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[14]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *ListContinuousTestResultsResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*ListContinuousTestResultsResponse) ProtoMessage() {}

func (x *ListContinuousTestResultsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[14]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use ListContinuousTestResultsResponse.ProtoReflect.Descriptor instead.
func (*ListContinuousTestResultsResponse) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{14}
}

func (x *ListContinuousTestResultsResponse) GetContinuousTestResults() []*ContinuousTestResult {
	if x != nil {
		return x.ContinuousTestResults
	}
	return nil
}

func (x *ListContinuousTestResultsResponse) GetNextPageToken() string {
	if x != nil {
		return x.NextPageToken
	}
	return ""
}

// The request message for
// [Environments.DeployFlow][google.cloud.dialogflow.cx.v3.Environments.DeployFlow].
type DeployFlowRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The environment to deploy the flow to.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>`.
	Environment string `protobuf:"bytes,1,opt,name=environment,proto3" json:"environment,omitempty"`
	// Required. The flow version to deploy.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>`.
	FlowVersion   string `protobuf:"bytes,2,opt,name=flow_version,json=flowVersion,proto3" json:"flow_version,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeployFlowRequest) Reset() {
	*x = DeployFlowRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[15]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DeployFlowRequest) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeployFlowRequest) ProtoMessage() {}

func (x *DeployFlowRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[15]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeployFlowRequest.ProtoReflect.Descriptor instead.
func (*DeployFlowRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{15}
}

func (x *DeployFlowRequest) GetEnvironment() string {
	if x != nil {
		return x.Environment
	}
	return ""
}

func (x *DeployFlowRequest) GetFlowVersion() string {
	if x != nil {
		return x.FlowVersion
	}
	return ""
}

// The response message for
// [Environments.DeployFlow][google.cloud.dialogflow.cx.v3.Environments.DeployFlow].
type DeployFlowResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The updated environment where the flow is deployed.
	Environment *Environment `protobuf:"bytes,1,opt,name=environment,proto3" json:"environment,omitempty"`
	// The name of the flow version
	// [Deployment][google.cloud.dialogflow.cx.v3.Deployment]. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/deployments/<DeploymentID>`.
	Deployment    string `protobuf:"bytes,2,opt,name=deployment,proto3" json:"deployment,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeployFlowResponse) Reset() {
	*x = DeployFlowResponse{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[16]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DeployFlowResponse) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeployFlowResponse) ProtoMessage() {}

func (x *DeployFlowResponse) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[16]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeployFlowResponse.ProtoReflect.Descriptor instead.
func (*DeployFlowResponse) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{16}
}

func (x *DeployFlowResponse) GetEnvironment() *Environment {
	if x != nil {
		return x.Environment
	}
	return nil
}

func (x *DeployFlowResponse) GetDeployment() string {
	if x != nil {
		return x.Deployment
	}
	return ""
}

// Metadata returned for the
// [Environments.DeployFlow][google.cloud.dialogflow.cx.v3.Environments.DeployFlow]
// long running operation.
type DeployFlowMetadata struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Errors of running deployment tests.
	TestErrors    []*TestError `protobuf:"bytes,1,rep,name=test_errors,json=testErrors,proto3" json:"test_errors,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *DeployFlowMetadata) Reset() {
	*x = DeployFlowMetadata{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[17]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *DeployFlowMetadata) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*DeployFlowMetadata) ProtoMessage() {}

func (x *DeployFlowMetadata) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[17]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use DeployFlowMetadata.ProtoReflect.Descriptor instead.
func (*DeployFlowMetadata) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{17}
}

func (x *DeployFlowMetadata) GetTestErrors() []*TestError {
	if x != nil {
		return x.TestErrors
	}
	return nil
}

// Configuration for the version.
type Environment_VersionConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Flow, playbook and tool versions are supported.
	// Format for flow version:
	// projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/versions/<VersionID>.
	// Format for playbook version:
	// projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/playbooks/<PlaybookID>/versions/<VersionID>.
	// Format for tool version:
	// projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>/versions/<VersionID>.
	Version       string `protobuf:"bytes,1,opt,name=version,proto3" json:"version,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Environment_VersionConfig) Reset() {
	*x = Environment_VersionConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[18]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Environment_VersionConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Environment_VersionConfig) ProtoMessage() {}

func (x *Environment_VersionConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[18]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Environment_VersionConfig.ProtoReflect.Descriptor instead.
func (*Environment_VersionConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{0, 0}
}

func (x *Environment_VersionConfig) GetVersion() string {
	if x != nil {
		return x.Version
	}
	return ""
}

// The configuration for continuous tests.
type Environment_TestCasesConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// A list of test case names to run. They should be under the same agent.
	// Format of each test case name:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/testCases/<TestCaseID>`
	TestCases []string `protobuf:"bytes,1,rep,name=test_cases,json=testCases,proto3" json:"test_cases,omitempty"`
	// Whether to run test cases in
	// [TestCasesConfig.test_cases][google.cloud.dialogflow.cx.v3.Environment.TestCasesConfig.test_cases]
	// periodically. Default false. If set to true, run once a day.
	EnableContinuousRun bool `protobuf:"varint,2,opt,name=enable_continuous_run,json=enableContinuousRun,proto3" json:"enable_continuous_run,omitempty"`
	// Whether to run test cases in
	// [TestCasesConfig.test_cases][google.cloud.dialogflow.cx.v3.Environment.TestCasesConfig.test_cases]
	// before deploying a flow version to the environment. Default false.
	EnablePredeploymentRun bool `protobuf:"varint,3,opt,name=enable_predeployment_run,json=enablePredeploymentRun,proto3" json:"enable_predeployment_run,omitempty"`
	unknownFields          protoimpl.UnknownFields
	sizeCache              protoimpl.SizeCache
}

func (x *Environment_TestCasesConfig) Reset() {
	*x = Environment_TestCasesConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[19]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Environment_TestCasesConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Environment_TestCasesConfig) ProtoMessage() {}

func (x *Environment_TestCasesConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[19]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Environment_TestCasesConfig.ProtoReflect.Descriptor instead.
func (*Environment_TestCasesConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{0, 1}
}

func (x *Environment_TestCasesConfig) GetTestCases() []string {
	if x != nil {
		return x.TestCases
	}
	return nil
}

func (x *Environment_TestCasesConfig) GetEnableContinuousRun() bool {
	if x != nil {
		return x.EnableContinuousRun
	}
	return false
}

func (x *Environment_TestCasesConfig) GetEnablePredeploymentRun() bool {
	if x != nil {
		return x.EnablePredeploymentRun
	}
	return false
}

// Configuration for webhooks.
type Environment_WebhookConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of webhooks to override for the agent environment. The webhook
	// must exist in the agent. You can override fields in
	// [`generic_web_service`][google.cloud.dialogflow.cx.v3.Webhook.generic_web_service]
	// and
	// [`service_directory`][google.cloud.dialogflow.cx.v3.Webhook.service_directory].
	WebhookOverrides []*Webhook `protobuf:"bytes,1,rep,name=webhook_overrides,json=webhookOverrides,proto3" json:"webhook_overrides,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

func (x *Environment_WebhookConfig) Reset() {
	*x = Environment_WebhookConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[20]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

func (x *Environment_WebhookConfig) String() string {
	return protoimpl.X.MessageStringOf(x)
}

func (*Environment_WebhookConfig) ProtoMessage() {}

func (x *Environment_WebhookConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes[20]
	if x != nil {
		ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
		if ms.LoadMessageInfo() == nil {
			ms.StoreMessageInfo(mi)
		}
		return ms
	}
	return mi.MessageOf(x)
}

// Deprecated: Use Environment_WebhookConfig.ProtoReflect.Descriptor instead.
func (*Environment_WebhookConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP(), []int{0, 2}
}

func (x *Environment_WebhookConfig) GetWebhookOverrides() []*Webhook {
	if x != nil {
		return x.WebhookOverrides
	}
	return nil
}

var File_google_cloud_dialogflow_cx_v3_environment_proto protoreflect.FileDescriptor

const file_google_cloud_dialogflow_cx_v3_environment_proto_rawDesc = "" +
	"\n" +
	"/google/cloud/dialogflow/cx/v3/environment.proto\x12\x1dgoogle.cloud.dialogflow.cx.v3\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a-google/cloud/dialogflow/cx/v3/test_case.proto\x1a+google/cloud/dialogflow/cx/v3/webhook.proto\x1a#google/longrunning/operations.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\"\xde\a\n" +
	"\vEnvironment\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12&\n" +
	"\fdisplay_name\x18\x02 \x01(\tB\x03\xe0A\x02R\vdisplayName\x12 \n" +
	"\vdescription\x18\x03 \x01(\tR\vdescription\x12a\n" +
	"\x0fversion_configs\x18\x06 \x03(\v28.google.cloud.dialogflow.cx.v3.Environment.VersionConfigR\x0eversionConfigs\x12@\n" +
	"\vupdate_time\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"updateTime\x12f\n" +
	"\x11test_cases_config\x18\a \x01(\v2:.google.cloud.dialogflow.cx.v3.Environment.TestCasesConfigR\x0ftestCasesConfig\x12_\n" +
	"\x0ewebhook_config\x18\n" +
	" \x01(\v28.google.cloud.dialogflow.cx.v3.Environment.WebhookConfigR\rwebhookConfig\x1aT\n" +
	"\rVersionConfig\x12C\n" +
	"\aversion\x18\x01 \x01(\tB)\xe0A\x02\xfaA#\n" +
	"!dialogflow.googleapis.com/VersionR\aversion\x1a\xc7\x01\n" +
	"\x0fTestCasesConfig\x12F\n" +
	"\n" +
	"test_cases\x18\x01 \x03(\tB'\xfaA$\n" +
	"\"dialogflow.googleapis.com/TestCaseR\ttestCases\x122\n" +
	"\x15enable_continuous_run\x18\x02 \x01(\bR\x13enableContinuousRun\x128\n" +
	"\x18enable_predeployment_run\x18\x03 \x01(\bR\x16enablePredeploymentRun\x1ad\n" +
	"\rWebhookConfig\x12S\n" +
	"\x11webhook_overrides\x18\x01 \x03(\v2&.google.cloud.dialogflow.cx.v3.WebhookR\x10webhookOverrides:}\xeaAz\n" +
	"%dialogflow.googleapis.com/Environment\x12Qprojects/{project}/locations/{location}/agents/{agent}/environments/{environment}\"\x9c\x01\n" +
	"\x17ListEnvironmentsRequest\x12E\n" +
	"\x06parent\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\x12%dialogflow.googleapis.com/EnvironmentR\x06parent\x12\x1b\n" +
	"\tpage_size\x18\x02 \x01(\x05R\bpageSize\x12\x1d\n" +
	"\n" +
	"page_token\x18\x03 \x01(\tR\tpageToken\"\x92\x01\n" +
	"\x18ListEnvironmentsResponse\x12N\n" +
	"\fenvironments\x18\x01 \x03(\v2*.google.cloud.dialogflow.cx.v3.EnvironmentR\fenvironments\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"Z\n" +
	"\x15GetEnvironmentRequest\x12A\n" +
	"\x04name\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/EnvironmentR\x04name\"\xb4\x01\n" +
	"\x18CreateEnvironmentRequest\x12E\n" +
	"\x06parent\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\x12%dialogflow.googleapis.com/EnvironmentR\x06parent\x12Q\n" +
	"\venvironment\x18\x02 \x01(\v2*.google.cloud.dialogflow.cx.v3.EnvironmentB\x03\xe0A\x02R\venvironment\"\xaf\x01\n" +
	"\x18UpdateEnvironmentRequest\x12Q\n" +
	"\venvironment\x18\x01 \x01(\v2*.google.cloud.dialogflow.cx.v3.EnvironmentB\x03\xe0A\x02R\venvironment\x12@\n" +
	"\vupdate_mask\x18\x02 \x01(\v2\x1a.google.protobuf.FieldMaskB\x03\xe0A\x02R\n" +
	"updateMask\"]\n" +
	"\x18DeleteEnvironmentRequest\x12A\n" +
	"\x04name\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/EnvironmentR\x04name\"\xa0\x01\n" +
	"\x1fLookupEnvironmentHistoryRequest\x12A\n" +
	"\x04name\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/EnvironmentR\x04name\x12\x1b\n" +
	"\tpage_size\x18\x02 \x01(\x05R\bpageSize\x12\x1d\n" +
	"\n" +
	"page_token\x18\x03 \x01(\tR\tpageToken\"\x9a\x01\n" +
	" LookupEnvironmentHistoryResponse\x12N\n" +
	"\fenvironments\x18\x01 \x03(\v2*.google.cloud.dialogflow.cx.v3.EnvironmentR\fenvironments\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xb0\x04\n" +
	"\x14ContinuousTestResult\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12`\n" +
	"\x06result\x18\x02 \x01(\x0e2H.google.cloud.dialogflow.cx.v3.ContinuousTestResult.AggregatedTestResultR\x06result\x12Y\n" +
	"\x11test_case_results\x18\x03 \x03(\tB-\xfaA*\n" +
	"(dialogflow.googleapis.com/TestCaseResultR\x0ftestCaseResults\x125\n" +
	"\brun_time\x18\x04 \x01(\v2\x1a.google.protobuf.TimestampR\arunTime\"V\n" +
	"\x14AggregatedTestResult\x12&\n" +
	"\"AGGREGATED_TEST_RESULT_UNSPECIFIED\x10\x00\x12\n" +
	"\n" +
	"\x06PASSED\x10\x01\x12\n" +
	"\n" +
	"\x06FAILED\x10\x02:\xb7\x01\xeaA\xb3\x01\n" +
	".dialogflow.googleapis.com/ContinuousTestResult\x12\x80\x01projects/{project}/locations/{location}/agents/{agent}/environments/{environment}/continuousTestResults/{continuous_test_result}\"k\n" +
	"\x18RunContinuousTestRequest\x12O\n" +
	"\venvironment\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/EnvironmentR\venvironment\"\x86\x01\n" +
	"\x19RunContinuousTestResponse\x12i\n" +
	"\x16continuous_test_result\x18\x01 \x01(\v23.google.cloud.dialogflow.cx.v3.ContinuousTestResultR\x14continuousTestResult\"]\n" +
	"\x19RunContinuousTestMetadata\x12@\n" +
	"\x06errors\x18\x01 \x03(\v2(.google.cloud.dialogflow.cx.v3.TestErrorR\x06errors\"\xae\x01\n" +
	" ListContinuousTestResultsRequest\x12N\n" +
	"\x06parent\x18\x01 \x01(\tB6\xe0A\x02\xfaA0\x12.dialogflow.googleapis.com/ContinuousTestResultR\x06parent\x12\x1b\n" +
	"\tpage_size\x18\x02 \x01(\x05R\bpageSize\x12\x1d\n" +
	"\n" +
	"page_token\x18\x03 \x01(\tR\tpageToken\"\xb8\x01\n" +
	"!ListContinuousTestResultsResponse\x12k\n" +
	"\x17continuous_test_results\x18\x01 \x03(\v23.google.cloud.dialogflow.cx.v3.ContinuousTestResultR\x15continuousTestResults\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xb2\x01\n" +
	"\x11DeployFlowRequest\x12O\n" +
	"\venvironment\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/EnvironmentR\venvironment\x12L\n" +
	"\fflow_version\x18\x02 \x01(\tB)\xe0A\x02\xfaA#\n" +
	"!dialogflow.googleapis.com/VersionR\vflowVersion\"\x82\x01\n" +
	"\x12DeployFlowResponse\x12L\n" +
	"\venvironment\x18\x01 \x01(\v2*.google.cloud.dialogflow.cx.v3.EnvironmentR\venvironment\x12\x1e\n" +
	"\n" +
	"deployment\x18\x02 \x01(\tR\n" +
	"deployment\"_\n" +
	"\x12DeployFlowMetadata\x12I\n" +
	"\vtest_errors\x18\x01 \x03(\v2(.google.cloud.dialogflow.cx.v3.TestErrorR\n" +
	"testErrors2\xc4\x11\n" +
	"\fEnvironments\x12\xcf\x01\n" +
	"\x10ListEnvironments\x126.google.cloud.dialogflow.cx.v3.ListEnvironmentsRequest\x1a7.google.cloud.dialogflow.cx.v3.ListEnvironmentsResponse\"J\xdaA\x06parent\x82\xd3\xe4\x93\x02;\x129/v3/{parent=projects/*/locations/*/agents/*}/environments\x12\xbc\x01\n" +
	"\x0eGetEnvironment\x124.google.cloud.dialogflow.cx.v3.GetEnvironmentRequest\x1a*.google.cloud.dialogflow.cx.v3.Environment\"H\xdaA\x04name\x82\xd3\xe4\x93\x02;\x129/v3/{name=projects/*/locations/*/agents/*/environments/*}\x12\xf9\x01\n" +
	"\x11CreateEnvironment\x127.google.cloud.dialogflow.cx.v3.CreateEnvironmentRequest\x1a\x1d.google.longrunning.Operation\"\x8b\x01\xcaA%\n" +
	"\vEnvironment\x12\x16google.protobuf.Struct\xdaA\x12parent,environment\x82\xd3\xe4\x93\x02H:\venvironment\"9/v3/{parent=projects/*/locations/*/agents/*}/environments\x12\x8a\x02\n" +
	"\x11UpdateEnvironment\x127.google.cloud.dialogflow.cx.v3.UpdateEnvironmentRequest\x1a\x1d.google.longrunning.Operation\"\x9c\x01\xcaA%\n" +
	"\vEnvironment\x12\x16google.protobuf.Struct\xdaA\x17environment,update_mask\x82\xd3\xe4\x93\x02T:\venvironment2E/v3/{environment.name=projects/*/locations/*/agents/*/environments/*}\x12\xae\x01\n" +
	"\x11DeleteEnvironment\x127.google.cloud.dialogflow.cx.v3.DeleteEnvironmentRequest\x1a\x16.google.protobuf.Empty\"H\xdaA\x04name\x82\xd3\xe4\x93\x02;*9/v3/{name=projects/*/locations/*/agents/*/environments/*}\x12\xfe\x01\n" +
	"\x18LookupEnvironmentHistory\x12>.google.cloud.dialogflow.cx.v3.LookupEnvironmentHistoryRequest\x1a?.google.cloud.dialogflow.cx.v3.LookupEnvironmentHistoryResponse\"a\xdaA\x04name\x82\xd3\xe4\x93\x02T\x12R/v3/{name=projects/*/locations/*/agents/*/environments/*}:lookupEnvironmentHistory\x12\x84\x02\n" +
	"\x11RunContinuousTest\x127.google.cloud.dialogflow.cx.v3.RunContinuousTestRequest\x1a\x1d.google.longrunning.Operation\"\x96\x01\xcaA6\n" +
	"\x19RunContinuousTestResponse\x12\x19RunContinuousTestMetadata\x82\xd3\xe4\x93\x02W:\x01*\"R/v3/{environment=projects/*/locations/*/agents/*/environments/*}:runContinuousTest\x12\x82\x02\n" +
	"\x19ListContinuousTestResults\x12?.google.cloud.dialogflow.cx.v3.ListContinuousTestResultsRequest\x1a@.google.cloud.dialogflow.cx.v3.ListContinuousTestResultsResponse\"b\xdaA\x06parent\x82\xd3\xe4\x93\x02S\x12Q/v3/{parent=projects/*/locations/*/agents/*/environments/*}/continuousTestResults\x12\xe1\x01\n" +
	"\n" +
	"DeployFlow\x120.google.cloud.dialogflow.cx.v3.DeployFlowRequest\x1a\x1d.google.longrunning.Operation\"\x81\x01\xcaA(\n" +
	"\x12DeployFlowResponse\x12\x12DeployFlowMetadata\x82\xd3\xe4\x93\x02P:\x01*\"K/v3/{environment=projects/*/locations/*/agents/*/environments/*}:deployFlow\x1ax\xcaA\x19dialogflow.googleapis.com\xd2AYhttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/dialogflowB\xb3\x01\n" +
	"!com.google.cloud.dialogflow.cx.v3B\x10EnvironmentProtoP\x01Z1cloud.google.com/go/dialogflow/cx/apiv3/cxpb;cxpb\xa2\x02\x02DF\xaa\x02\x1dGoogle.Cloud.Dialogflow.Cx.V3\xea\x02!Google::Cloud::Dialogflow::CX::V3b\x06proto3"

var (
	file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescOnce sync.Once
	file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescData []byte
)

func file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescGZIP() []byte {
	file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescOnce.Do(func() {
		file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_google_cloud_dialogflow_cx_v3_environment_proto_rawDesc), len(file_google_cloud_dialogflow_cx_v3_environment_proto_rawDesc)))
	})
	return file_google_cloud_dialogflow_cx_v3_environment_proto_rawDescData
}

var file_google_cloud_dialogflow_cx_v3_environment_proto_enumTypes = make([]protoimpl.EnumInfo, 1)
var file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes = make([]protoimpl.MessageInfo, 21)
var file_google_cloud_dialogflow_cx_v3_environment_proto_goTypes = []any{
	(ContinuousTestResult_AggregatedTestResult)(0), // 0: google.cloud.dialogflow.cx.v3.ContinuousTestResult.AggregatedTestResult
	(*Environment)(nil),                            // 1: google.cloud.dialogflow.cx.v3.Environment
	(*ListEnvironmentsRequest)(nil),                // 2: google.cloud.dialogflow.cx.v3.ListEnvironmentsRequest
	(*ListEnvironmentsResponse)(nil),               // 3: google.cloud.dialogflow.cx.v3.ListEnvironmentsResponse
	(*GetEnvironmentRequest)(nil),                  // 4: google.cloud.dialogflow.cx.v3.GetEnvironmentRequest
	(*CreateEnvironmentRequest)(nil),               // 5: google.cloud.dialogflow.cx.v3.CreateEnvironmentRequest
	(*UpdateEnvironmentRequest)(nil),               // 6: google.cloud.dialogflow.cx.v3.UpdateEnvironmentRequest
	(*DeleteEnvironmentRequest)(nil),               // 7: google.cloud.dialogflow.cx.v3.DeleteEnvironmentRequest
	(*LookupEnvironmentHistoryRequest)(nil),        // 8: google.cloud.dialogflow.cx.v3.LookupEnvironmentHistoryRequest
	(*LookupEnvironmentHistoryResponse)(nil),       // 9: google.cloud.dialogflow.cx.v3.LookupEnvironmentHistoryResponse
	(*ContinuousTestResult)(nil),                   // 10: google.cloud.dialogflow.cx.v3.ContinuousTestResult
	(*RunContinuousTestRequest)(nil),               // 11: google.cloud.dialogflow.cx.v3.RunContinuousTestRequest
	(*RunContinuousTestResponse)(nil),              // 12: google.cloud.dialogflow.cx.v3.RunContinuousTestResponse
	(*RunContinuousTestMetadata)(nil),              // 13: google.cloud.dialogflow.cx.v3.RunContinuousTestMetadata
	(*ListContinuousTestResultsRequest)(nil),       // 14: google.cloud.dialogflow.cx.v3.ListContinuousTestResultsRequest
	(*ListContinuousTestResultsResponse)(nil),      // 15: google.cloud.dialogflow.cx.v3.ListContinuousTestResultsResponse
	(*DeployFlowRequest)(nil),                      // 16: google.cloud.dialogflow.cx.v3.DeployFlowRequest
	(*DeployFlowResponse)(nil),                     // 17: google.cloud.dialogflow.cx.v3.DeployFlowResponse
	(*DeployFlowMetadata)(nil),                     // 18: google.cloud.dialogflow.cx.v3.DeployFlowMetadata
	(*Environment_VersionConfig)(nil),              // 19: google.cloud.dialogflow.cx.v3.Environment.VersionConfig
	(*Environment_TestCasesConfig)(nil),            // 20: google.cloud.dialogflow.cx.v3.Environment.TestCasesConfig
	(*Environment_WebhookConfig)(nil),              // 21: google.cloud.dialogflow.cx.v3.Environment.WebhookConfig
	(*timestamppb.Timestamp)(nil),                  // 22: google.protobuf.Timestamp
	(*fieldmaskpb.FieldMask)(nil),                  // 23: google.protobuf.FieldMask
	(*TestError)(nil),                              // 24: google.cloud.dialogflow.cx.v3.TestError
	(*Webhook)(nil),                                // 25: google.cloud.dialogflow.cx.v3.Webhook
	(*longrunningpb.Operation)(nil),                // 26: google.longrunning.Operation
	(*emptypb.Empty)(nil),                          // 27: google.protobuf.Empty
}
var file_google_cloud_dialogflow_cx_v3_environment_proto_depIdxs = []int32{
	19, // 0: google.cloud.dialogflow.cx.v3.Environment.version_configs:type_name -> google.cloud.dialogflow.cx.v3.Environment.VersionConfig
	22, // 1: google.cloud.dialogflow.cx.v3.Environment.update_time:type_name -> google.protobuf.Timestamp
	20, // 2: google.cloud.dialogflow.cx.v3.Environment.test_cases_config:type_name -> google.cloud.dialogflow.cx.v3.Environment.TestCasesConfig
	21, // 3: google.cloud.dialogflow.cx.v3.Environment.webhook_config:type_name -> google.cloud.dialogflow.cx.v3.Environment.WebhookConfig
	1,  // 4: google.cloud.dialogflow.cx.v3.ListEnvironmentsResponse.environments:type_name -> google.cloud.dialogflow.cx.v3.Environment
	1,  // 5: google.cloud.dialogflow.cx.v3.CreateEnvironmentRequest.environment:type_name -> google.cloud.dialogflow.cx.v3.Environment
	1,  // 6: google.cloud.dialogflow.cx.v3.UpdateEnvironmentRequest.environment:type_name -> google.cloud.dialogflow.cx.v3.Environment
	23, // 7: google.cloud.dialogflow.cx.v3.UpdateEnvironmentRequest.update_mask:type_name -> google.protobuf.FieldMask
	1,  // 8: google.cloud.dialogflow.cx.v3.LookupEnvironmentHistoryResponse.environments:type_name -> google.cloud.dialogflow.cx.v3.Environment
	0,  // 9: google.cloud.dialogflow.cx.v3.ContinuousTestResult.result:type_name -> google.cloud.dialogflow.cx.v3.ContinuousTestResult.AggregatedTestResult
	22, // 10: google.cloud.dialogflow.cx.v3.ContinuousTestResult.run_time:type_name -> google.protobuf.Timestamp
	10, // 11: google.cloud.dialogflow.cx.v3.RunContinuousTestResponse.continuous_test_result:type_name -> google.cloud.dialogflow.cx.v3.ContinuousTestResult
	24, // 12: google.cloud.dialogflow.cx.v3.RunContinuousTestMetadata.errors:type_name -> google.cloud.dialogflow.cx.v3.TestError
	10, // 13: google.cloud.dialogflow.cx.v3.ListContinuousTestResultsResponse.continuous_test_results:type_name -> google.cloud.dialogflow.cx.v3.ContinuousTestResult
	1,  // 14: google.cloud.dialogflow.cx.v3.DeployFlowResponse.environment:type_name -> google.cloud.dialogflow.cx.v3.Environment
	24, // 15: google.cloud.dialogflow.cx.v3.DeployFlowMetadata.test_errors:type_name -> google.cloud.dialogflow.cx.v3.TestError
	25, // 16: google.cloud.dialogflow.cx.v3.Environment.WebhookConfig.webhook_overrides:type_name -> google.cloud.dialogflow.cx.v3.Webhook
	2,  // 17: google.cloud.dialogflow.cx.v3.Environments.ListEnvironments:input_type -> google.cloud.dialogflow.cx.v3.ListEnvironmentsRequest
	4,  // 18: google.cloud.dialogflow.cx.v3.Environments.GetEnvironment:input_type -> google.cloud.dialogflow.cx.v3.GetEnvironmentRequest
	5,  // 19: google.cloud.dialogflow.cx.v3.Environments.CreateEnvironment:input_type -> google.cloud.dialogflow.cx.v3.CreateEnvironmentRequest
	6,  // 20: google.cloud.dialogflow.cx.v3.Environments.UpdateEnvironment:input_type -> google.cloud.dialogflow.cx.v3.UpdateEnvironmentRequest
	7,  // 21: google.cloud.dialogflow.cx.v3.Environments.DeleteEnvironment:input_type -> google.cloud.dialogflow.cx.v3.DeleteEnvironmentRequest
	8,  // 22: google.cloud.dialogflow.cx.v3.Environments.LookupEnvironmentHistory:input_type -> google.cloud.dialogflow.cx.v3.LookupEnvironmentHistoryRequest
	11, // 23: google.cloud.dialogflow.cx.v3.Environments.RunContinuousTest:input_type -> google.cloud.dialogflow.cx.v3.RunContinuousTestRequest
	14, // 24: google.cloud.dialogflow.cx.v3.Environments.ListContinuousTestResults:input_type -> google.cloud.dialogflow.cx.v3.ListContinuousTestResultsRequest
	16, // 25: google.cloud.dialogflow.cx.v3.Environments.DeployFlow:input_type -> google.cloud.dialogflow.cx.v3.DeployFlowRequest
	3,  // 26: google.cloud.dialogflow.cx.v3.Environments.ListEnvironments:output_type -> google.cloud.dialogflow.cx.v3.ListEnvironmentsResponse
	1,  // 27: google.cloud.dialogflow.cx.v3.Environments.GetEnvironment:output_type -> google.cloud.dialogflow.cx.v3.Environment
	26, // 28: google.cloud.dialogflow.cx.v3.Environments.CreateEnvironment:output_type -> google.longrunning.Operation
	26, // 29: google.cloud.dialogflow.cx.v3.Environments.UpdateEnvironment:output_type -> google.longrunning.Operation
	27, // 30: google.cloud.dialogflow.cx.v3.Environments.DeleteEnvironment:output_type -> google.protobuf.Empty
	9,  // 31: google.cloud.dialogflow.cx.v3.Environments.LookupEnvironmentHistory:output_type -> google.cloud.dialogflow.cx.v3.LookupEnvironmentHistoryResponse
	26, // 32: google.cloud.dialogflow.cx.v3.Environments.RunContinuousTest:output_type -> google.longrunning.Operation
	15, // 33: google.cloud.dialogflow.cx.v3.Environments.ListContinuousTestResults:output_type -> google.cloud.dialogflow.cx.v3.ListContinuousTestResultsResponse
	26, // 34: google.cloud.dialogflow.cx.v3.Environments.DeployFlow:output_type -> google.longrunning.Operation
	26, // [26:35] is the sub-list for method output_type
	17, // [17:26] is the sub-list for method input_type
	17, // [17:17] is the sub-list for extension type_name
	17, // [17:17] is the sub-list for extension extendee
	0,  // [0:17] is the sub-list for field type_name
}

func init() { file_google_cloud_dialogflow_cx_v3_environment_proto_init() }
func file_google_cloud_dialogflow_cx_v3_environment_proto_init() {
	if File_google_cloud_dialogflow_cx_v3_environment_proto != nil {
		return
	}
	file_google_cloud_dialogflow_cx_v3_test_case_proto_init()
	file_google_cloud_dialogflow_cx_v3_webhook_proto_init()
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_cloud_dialogflow_cx_v3_environment_proto_rawDesc), len(file_google_cloud_dialogflow_cx_v3_environment_proto_rawDesc)),
			NumEnums:      1,
			NumMessages:   21,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_google_cloud_dialogflow_cx_v3_environment_proto_goTypes,
		DependencyIndexes: file_google_cloud_dialogflow_cx_v3_environment_proto_depIdxs,
		EnumInfos:         file_google_cloud_dialogflow_cx_v3_environment_proto_enumTypes,
		MessageInfos:      file_google_cloud_dialogflow_cx_v3_environment_proto_msgTypes,
	}.Build()
	File_google_cloud_dialogflow_cx_v3_environment_proto = out.File
	file_google_cloud_dialogflow_cx_v3_environment_proto_goTypes = nil
	file_google_cloud_dialogflow_cx_v3_environment_proto_depIdxs = nil
}
