// 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/v3beta1/tool.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"
	structpb "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)
)

// Data format of the exported tools.
type ExportToolsRequest_DataFormat int32

const (
	// Unspecified format. Treated as `BLOB`.
	ExportToolsRequest_DATA_FORMAT_UNSPECIFIED ExportToolsRequest_DataFormat = 0
	// Tools will be exported as raw bytes.
	ExportToolsRequest_BLOB ExportToolsRequest_DataFormat = 1
)

// Enum value maps for ExportToolsRequest_DataFormat.
var (
	ExportToolsRequest_DataFormat_name = map[int32]string{
		0: "DATA_FORMAT_UNSPECIFIED",
		1: "BLOB",
	}
	ExportToolsRequest_DataFormat_value = map[string]int32{
		"DATA_FORMAT_UNSPECIFIED": 0,
		"BLOB":                    1,
	}
)

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

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

func (ExportToolsRequest_DataFormat) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[0].Descriptor()
}

func (ExportToolsRequest_DataFormat) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[0]
}

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

// Deprecated: Use ExportToolsRequest_DataFormat.Descriptor instead.
func (ExportToolsRequest_DataFormat) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{4, 0}
}

// Represents the type of the tool.
type Tool_ToolType int32

const (
	// Default value. This value is unused.
	Tool_TOOL_TYPE_UNSPECIFIED Tool_ToolType = 0
	// Customer provided tool.
	Tool_CUSTOMIZED_TOOL Tool_ToolType = 1
	// First party built-in tool created by Dialogflow which cannot be modified.
	Tool_BUILTIN_TOOL Tool_ToolType = 2
)

// Enum value maps for Tool_ToolType.
var (
	Tool_ToolType_name = map[int32]string{
		0: "TOOL_TYPE_UNSPECIFIED",
		1: "CUSTOMIZED_TOOL",
		2: "BUILTIN_TOOL",
	}
	Tool_ToolType_value = map[string]int32{
		"TOOL_TYPE_UNSPECIFIED": 0,
		"CUSTOMIZED_TOOL":       1,
		"BUILTIN_TOOL":          2,
	}
)

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

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

func (Tool_ToolType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[1].Descriptor()
}

func (Tool_ToolType) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[1]
}

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

// Deprecated: Use Tool_ToolType.Descriptor instead.
func (Tool_ToolType) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 0}
}

// The operation to perform on the entity.
type Tool_ConnectorTool_Action_EntityOperation_OperationType int32

const (
	// Operation type unspecified. Invalid, ConnectorTool create/update
	// will fail.
	Tool_ConnectorTool_Action_EntityOperation_OPERATION_TYPE_UNSPECIFIED Tool_ConnectorTool_Action_EntityOperation_OperationType = 0
	// List operation.
	Tool_ConnectorTool_Action_EntityOperation_LIST Tool_ConnectorTool_Action_EntityOperation_OperationType = 1
	// Get operation.
	Tool_ConnectorTool_Action_EntityOperation_GET Tool_ConnectorTool_Action_EntityOperation_OperationType = 2
	// Create operation.
	Tool_ConnectorTool_Action_EntityOperation_CREATE Tool_ConnectorTool_Action_EntityOperation_OperationType = 3
	// Update operation.
	Tool_ConnectorTool_Action_EntityOperation_UPDATE Tool_ConnectorTool_Action_EntityOperation_OperationType = 4
	// Delete operation.
	Tool_ConnectorTool_Action_EntityOperation_DELETE Tool_ConnectorTool_Action_EntityOperation_OperationType = 5
)

// Enum value maps for Tool_ConnectorTool_Action_EntityOperation_OperationType.
var (
	Tool_ConnectorTool_Action_EntityOperation_OperationType_name = map[int32]string{
		0: "OPERATION_TYPE_UNSPECIFIED",
		1: "LIST",
		2: "GET",
		3: "CREATE",
		4: "UPDATE",
		5: "DELETE",
	}
	Tool_ConnectorTool_Action_EntityOperation_OperationType_value = map[string]int32{
		"OPERATION_TYPE_UNSPECIFIED": 0,
		"LIST":                       1,
		"GET":                        2,
		"CREATE":                     3,
		"UPDATE":                     4,
		"DELETE":                     5,
	}
)

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

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

func (Tool_ConnectorTool_Action_EntityOperation_OperationType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[2].Descriptor()
}

func (Tool_ConnectorTool_Action_EntityOperation_OperationType) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[2]
}

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

// Deprecated: Use Tool_ConnectorTool_Action_EntityOperation_OperationType.Descriptor instead.
func (Tool_ConnectorTool_Action_EntityOperation_OperationType) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 4, 0, 0, 0}
}

// The location of the API key in the request.
type Tool_Authentication_RequestLocation int32

const (
	// Default value. This value is unused.
	Tool_Authentication_REQUEST_LOCATION_UNSPECIFIED Tool_Authentication_RequestLocation = 0
	// Represents the key in http header.
	Tool_Authentication_HEADER Tool_Authentication_RequestLocation = 1
	// Represents the key in query string.
	Tool_Authentication_QUERY_STRING Tool_Authentication_RequestLocation = 2
)

// Enum value maps for Tool_Authentication_RequestLocation.
var (
	Tool_Authentication_RequestLocation_name = map[int32]string{
		0: "REQUEST_LOCATION_UNSPECIFIED",
		1: "HEADER",
		2: "QUERY_STRING",
	}
	Tool_Authentication_RequestLocation_value = map[string]int32{
		"REQUEST_LOCATION_UNSPECIFIED": 0,
		"HEADER":                       1,
		"QUERY_STRING":                 2,
	}
)

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

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

func (Tool_Authentication_RequestLocation) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[3].Descriptor()
}

func (Tool_Authentication_RequestLocation) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[3]
}

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

// Deprecated: Use Tool_Authentication_RequestLocation.Descriptor instead.
func (Tool_Authentication_RequestLocation) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 5, 0}
}

// OAuth grant types. Only [client credential
// grant](https://oauth.net/2/grant-types/client-credentials) is
// supported.
type Tool_Authentication_OAuthConfig_OauthGrantType int32

const (
	// Default value. This value is unused.
	Tool_Authentication_OAuthConfig_OAUTH_GRANT_TYPE_UNSPECIFIED Tool_Authentication_OAuthConfig_OauthGrantType = 0
	// Represents the [client credential
	// flow](https://oauth.net/2/grant-types/client-credentials).
	Tool_Authentication_OAuthConfig_CLIENT_CREDENTIAL Tool_Authentication_OAuthConfig_OauthGrantType = 1
)

// Enum value maps for Tool_Authentication_OAuthConfig_OauthGrantType.
var (
	Tool_Authentication_OAuthConfig_OauthGrantType_name = map[int32]string{
		0: "OAUTH_GRANT_TYPE_UNSPECIFIED",
		1: "CLIENT_CREDENTIAL",
	}
	Tool_Authentication_OAuthConfig_OauthGrantType_value = map[string]int32{
		"OAUTH_GRANT_TYPE_UNSPECIFIED": 0,
		"CLIENT_CREDENTIAL":            1,
	}
)

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

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

func (Tool_Authentication_OAuthConfig_OauthGrantType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[4].Descriptor()
}

func (Tool_Authentication_OAuthConfig_OauthGrantType) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[4]
}

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

// Deprecated: Use Tool_Authentication_OAuthConfig_OauthGrantType.Descriptor instead.
func (Tool_Authentication_OAuthConfig_OauthGrantType) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 5, 1, 0}
}

// Indicate the auth token type generated from the [Diglogflow service
// agent](https://cloud.google.com/iam/docs/service-agents#dialogflow-service-agent).
type Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth int32

const (
	// Service agent auth type unspecified. Default to ID_TOKEN.
	Tool_Authentication_ServiceAgentAuthConfig_SERVICE_AGENT_AUTH_UNSPECIFIED Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth = 0
	// Use [ID
	// token](https://cloud.google.com/docs/authentication/token-types#id)
	// generated from service agent. This can be used to access Cloud
	// Function and Cloud Run after you grant Invoker role to
	// `service-<PROJECT-NUMBER>@gcp-sa-dialogflow.iam.gserviceaccount.com`.
	Tool_Authentication_ServiceAgentAuthConfig_ID_TOKEN Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth = 1
	// Use [access
	// token](https://cloud.google.com/docs/authentication/token-types#access)
	// generated from service agent. This can be used to access other Google
	// Cloud APIs after you grant required roles to
	// `service-<PROJECT-NUMBER>@gcp-sa-dialogflow.iam.gserviceaccount.com`.
	Tool_Authentication_ServiceAgentAuthConfig_ACCESS_TOKEN Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth = 2
)

// Enum value maps for Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth.
var (
	Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth_name = map[int32]string{
		0: "SERVICE_AGENT_AUTH_UNSPECIFIED",
		1: "ID_TOKEN",
		2: "ACCESS_TOKEN",
	}
	Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth_value = map[string]int32{
		"SERVICE_AGENT_AUTH_UNSPECIFIED": 0,
		"ID_TOKEN":                       1,
		"ACCESS_TOKEN":                   2,
	}
)

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

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

func (Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[5].Descriptor()
}

func (Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes[5]
}

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

// Deprecated: Use Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth.Descriptor instead.
func (Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 5, 2, 0}
}

// The request message for
// [Tools.CreateTool][google.cloud.dialogflow.cx.v3beta1.Tools.CreateTool].
type CreateToolRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The agent to create a Tool for.
	// Format: `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Required. The Tool to be created.
	Tool          *Tool `protobuf:"bytes,2,opt,name=tool,proto3" json:"tool,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateToolRequest) ProtoMessage() {}

func (x *CreateToolRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 CreateToolRequest.ProtoReflect.Descriptor instead.
func (*CreateToolRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{0}
}

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

func (x *CreateToolRequest) GetTool() *Tool {
	if x != nil {
		return x.Tool
	}
	return nil
}

// The request message for
// [Tools.ListTools][google.cloud.dialogflow.cx.v3beta1.Tools.ListTools].
type ListToolsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The agent to list the Tools from.
	// 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 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 *ListToolsRequest) Reset() {
	*x = ListToolsRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[1]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListToolsRequest) ProtoMessage() {}

func (x *ListToolsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 ListToolsRequest.ProtoReflect.Descriptor instead.
func (*ListToolsRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{1}
}

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

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

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

// The response message for
// [Tools.ListTools][google.cloud.dialogflow.cx.v3beta1.Tools.ListTools].
type ListToolsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of Tools. There will be a maximum number of items returned
	// based on the page_size field in the request.
	Tools []*Tool `protobuf:"bytes,1,rep,name=tools,proto3" json:"tools,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 *ListToolsResponse) Reset() {
	*x = ListToolsResponse{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[2]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListToolsResponse) ProtoMessage() {}

func (x *ListToolsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 ListToolsResponse.ProtoReflect.Descriptor instead.
func (*ListToolsResponse) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{2}
}

func (x *ListToolsResponse) GetTools() []*Tool {
	if x != nil {
		return x.Tools
	}
	return nil
}

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

// The request message for
// [Tools.GetTool][google.cloud.dialogflow.cx.v3beta1.Tools.GetTool].
type GetToolRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the Tool.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>`.
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetToolRequest) ProtoMessage() {}

func (x *GetToolRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 GetToolRequest.ProtoReflect.Descriptor instead.
func (*GetToolRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{3}
}

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

// The request message for
// [Tools.ExportTools][google.cloud.dialogflow.cx.v3beta1.Tools.ExportTools].
type ExportToolsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The agent to export tools from.
	// Format: `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Required. The name of the tools to export.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>`.
	Tools []string `protobuf:"bytes,2,rep,name=tools,proto3" json:"tools,omitempty"`
	// The destination to export.
	//
	// Types that are valid to be assigned to Destination:
	//
	//	*ExportToolsRequest_ToolsUri
	//	*ExportToolsRequest_ToolsContentInline
	Destination isExportToolsRequest_Destination `protobuf_oneof:"destination"`
	// Optional. The data format of the exported tools. If not specified, `BLOB`
	// is assumed.
	DataFormat    ExportToolsRequest_DataFormat `protobuf:"varint,5,opt,name=data_format,json=dataFormat,proto3,enum=google.cloud.dialogflow.cx.v3beta1.ExportToolsRequest_DataFormat" json:"data_format,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ExportToolsRequest) ProtoMessage() {}

func (x *ExportToolsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 ExportToolsRequest.ProtoReflect.Descriptor instead.
func (*ExportToolsRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{4}
}

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

func (x *ExportToolsRequest) GetTools() []string {
	if x != nil {
		return x.Tools
	}
	return nil
}

func (x *ExportToolsRequest) GetDestination() isExportToolsRequest_Destination {
	if x != nil {
		return x.Destination
	}
	return nil
}

func (x *ExportToolsRequest) GetToolsUri() string {
	if x != nil {
		if x, ok := x.Destination.(*ExportToolsRequest_ToolsUri); ok {
			return x.ToolsUri
		}
	}
	return ""
}

func (x *ExportToolsRequest) GetToolsContentInline() bool {
	if x != nil {
		if x, ok := x.Destination.(*ExportToolsRequest_ToolsContentInline); ok {
			return x.ToolsContentInline
		}
	}
	return false
}

func (x *ExportToolsRequest) GetDataFormat() ExportToolsRequest_DataFormat {
	if x != nil {
		return x.DataFormat
	}
	return ExportToolsRequest_DATA_FORMAT_UNSPECIFIED
}

type isExportToolsRequest_Destination interface {
	isExportToolsRequest_Destination()
}

type ExportToolsRequest_ToolsUri struct {
	// Optional. The [Google Cloud
	// Storage](https://cloud.google.com/storage/docs/) URI to export the tools
	// to. The format of this URI must be `gs://<bucket-name>/<object-name>`.
	//
	// Dialogflow performs a write operation for the Cloud Storage object
	// on the caller's behalf, so your request authentication must
	// have write permissions for the object. For more information, see
	// [Dialogflow access
	// control](https://cloud.google.com/dialogflow/cx/docs/concept/access-control#storage).
	ToolsUri string `protobuf:"bytes,3,opt,name=tools_uri,json=toolsUri,proto3,oneof"`
}

type ExportToolsRequest_ToolsContentInline struct {
	// Optional. The option to return the serialized tools inline.
	ToolsContentInline bool `protobuf:"varint,4,opt,name=tools_content_inline,json=toolsContentInline,proto3,oneof"`
}

func (*ExportToolsRequest_ToolsUri) isExportToolsRequest_Destination() {}

func (*ExportToolsRequest_ToolsContentInline) isExportToolsRequest_Destination() {}

// The response message for
// [Tools.ExportTools][google.cloud.dialogflow.cx.v3beta1.Tools.ExportTools].
type ExportToolsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The exported tools.
	//
	// Types that are valid to be assigned to Tools:
	//
	//	*ExportToolsResponse_ToolsUri
	//	*ExportToolsResponse_ToolsContent
	Tools         isExportToolsResponse_Tools `protobuf_oneof:"tools"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ExportToolsResponse) ProtoMessage() {}

func (x *ExportToolsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 ExportToolsResponse.ProtoReflect.Descriptor instead.
func (*ExportToolsResponse) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{5}
}

func (x *ExportToolsResponse) GetTools() isExportToolsResponse_Tools {
	if x != nil {
		return x.Tools
	}
	return nil
}

func (x *ExportToolsResponse) GetToolsUri() string {
	if x != nil {
		if x, ok := x.Tools.(*ExportToolsResponse_ToolsUri); ok {
			return x.ToolsUri
		}
	}
	return ""
}

func (x *ExportToolsResponse) GetToolsContent() *InlineDestination {
	if x != nil {
		if x, ok := x.Tools.(*ExportToolsResponse_ToolsContent); ok {
			return x.ToolsContent
		}
	}
	return nil
}

type isExportToolsResponse_Tools interface {
	isExportToolsResponse_Tools()
}

type ExportToolsResponse_ToolsUri struct {
	// The URI to a file containing the exported tools. This field is
	// populated only if `tools_uri` is specified in
	// [ExportToolsRequest][google.cloud.dialogflow.cx.v3beta1.ExportToolsRequest].
	ToolsUri string `protobuf:"bytes,1,opt,name=tools_uri,json=toolsUri,proto3,oneof"`
}

type ExportToolsResponse_ToolsContent struct {
	// Uncompressed byte content for tools. This field is populated only if
	// `tools_content_inline` is set to true in
	// [ExportToolsRequest][google.cloud.dialogflow.cx.v3beta1.ExportToolsRequest].
	ToolsContent *InlineDestination `protobuf:"bytes,2,opt,name=tools_content,json=toolsContent,proto3,oneof"`
}

func (*ExportToolsResponse_ToolsUri) isExportToolsResponse_Tools() {}

func (*ExportToolsResponse_ToolsContent) isExportToolsResponse_Tools() {}

// The request message for
// [Tools.UpdateTool][google.cloud.dialogflow.cx.v3beta1.Tools.UpdateTool].
type UpdateToolRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The Tool to be updated.
	Tool *Tool `protobuf:"bytes,1,opt,name=tool,proto3" json:"tool,omitempty"`
	// The mask to control which fields get updated. If the mask is not present,
	// all fields will be 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 *UpdateToolRequest) Reset() {
	*x = UpdateToolRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateToolRequest) ProtoMessage() {}

func (x *UpdateToolRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 UpdateToolRequest.ProtoReflect.Descriptor instead.
func (*UpdateToolRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{6}
}

func (x *UpdateToolRequest) GetTool() *Tool {
	if x != nil {
		return x.Tool
	}
	return nil
}

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

// The request message for
// [Tools.DeleteTool][google.cloud.dialogflow.cx.v3beta1.Tools.DeleteTool].
type DeleteToolRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the Tool to be deleted.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// This field has no effect for Tools not being used.
	// For Tools that are used:
	//
	//   - If `force` is set to false, an error will be returned with message
	//     indicating the referenced resources.
	//   - If `force` is set to true, Dialogflow will remove the tool, as well
	//     as any references to the tool.
	Force         bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteToolRequest) ProtoMessage() {}

func (x *DeleteToolRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 DeleteToolRequest.ProtoReflect.Descriptor instead.
func (*DeleteToolRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{7}
}

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

func (x *DeleteToolRequest) GetForce() bool {
	if x != nil {
		return x.Force
	}
	return false
}

// A tool provides a list of actions which are available to the
// [Playbook][google.cloud.dialogflow.cx.v3beta1.Playbook] to attain its goal. A
// Tool consists of a description of the tool's usage and a specification of the
// tool which contains the schema and authentication information.
type Tool struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The unique identifier of the Tool.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The human-readable name of the Tool, unique within an agent.
	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// Required. High level description of the Tool and its usage.
	Description string `protobuf:"bytes,3,opt,name=description,proto3" json:"description,omitempty"`
	// Specification of the Tool.
	//
	// Types that are valid to be assigned to Specification:
	//
	//	*Tool_OpenApiSpec
	//	*Tool_DataStoreSpec
	//	*Tool_ExtensionSpec
	//	*Tool_FunctionSpec
	//	*Tool_ConnectorSpec
	Specification isTool_Specification `protobuf_oneof:"specification"`
	// Output only. The tool type.
	ToolType      Tool_ToolType `protobuf:"varint,12,opt,name=tool_type,json=toolType,proto3,enum=google.cloud.dialogflow.cx.v3beta1.Tool_ToolType" json:"tool_type,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Tool) ProtoMessage() {}

func (x *Tool) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 Tool.ProtoReflect.Descriptor instead.
func (*Tool) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8}
}

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

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

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

func (x *Tool) GetSpecification() isTool_Specification {
	if x != nil {
		return x.Specification
	}
	return nil
}

func (x *Tool) GetOpenApiSpec() *Tool_OpenApiTool {
	if x != nil {
		if x, ok := x.Specification.(*Tool_OpenApiSpec); ok {
			return x.OpenApiSpec
		}
	}
	return nil
}

func (x *Tool) GetDataStoreSpec() *Tool_DataStoreTool {
	if x != nil {
		if x, ok := x.Specification.(*Tool_DataStoreSpec); ok {
			return x.DataStoreSpec
		}
	}
	return nil
}

func (x *Tool) GetExtensionSpec() *Tool_ExtensionTool {
	if x != nil {
		if x, ok := x.Specification.(*Tool_ExtensionSpec); ok {
			return x.ExtensionSpec
		}
	}
	return nil
}

func (x *Tool) GetFunctionSpec() *Tool_FunctionTool {
	if x != nil {
		if x, ok := x.Specification.(*Tool_FunctionSpec); ok {
			return x.FunctionSpec
		}
	}
	return nil
}

func (x *Tool) GetConnectorSpec() *Tool_ConnectorTool {
	if x != nil {
		if x, ok := x.Specification.(*Tool_ConnectorSpec); ok {
			return x.ConnectorSpec
		}
	}
	return nil
}

func (x *Tool) GetToolType() Tool_ToolType {
	if x != nil {
		return x.ToolType
	}
	return Tool_TOOL_TYPE_UNSPECIFIED
}

type isTool_Specification interface {
	isTool_Specification()
}

type Tool_OpenApiSpec struct {
	// OpenAPI specification of the Tool.
	OpenApiSpec *Tool_OpenApiTool `protobuf:"bytes,4,opt,name=open_api_spec,json=openApiSpec,proto3,oneof"`
}

type Tool_DataStoreSpec struct {
	// Data store search tool specification.
	DataStoreSpec *Tool_DataStoreTool `protobuf:"bytes,8,opt,name=data_store_spec,json=dataStoreSpec,proto3,oneof"`
}

type Tool_ExtensionSpec struct {
	// Vertex extension tool specification.
	ExtensionSpec *Tool_ExtensionTool `protobuf:"bytes,11,opt,name=extension_spec,json=extensionSpec,proto3,oneof"`
}

type Tool_FunctionSpec struct {
	// Client side executed function specification.
	FunctionSpec *Tool_FunctionTool `protobuf:"bytes,13,opt,name=function_spec,json=functionSpec,proto3,oneof"`
}

type Tool_ConnectorSpec struct {
	// Integration connectors tool specification.
	ConnectorSpec *Tool_ConnectorTool `protobuf:"bytes,15,opt,name=connector_spec,json=connectorSpec,proto3,oneof"`
}

func (*Tool_OpenApiSpec) isTool_Specification() {}

func (*Tool_DataStoreSpec) isTool_Specification() {}

func (*Tool_ExtensionSpec) isTool_Specification() {}

func (*Tool_FunctionSpec) isTool_Specification() {}

func (*Tool_ConnectorSpec) isTool_Specification() {}

// The request message for
// [Tools.ListToolVersions][google.cloud.dialogflow.cx.v3beta1.Tools.ListToolVersions].
type ListToolVersionsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The parent of the tool versions.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Optional. 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"`
	// Optional. 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 *ListToolVersionsRequest) Reset() {
	*x = ListToolVersionsRequest{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[9]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListToolVersionsRequest) ProtoMessage() {}

func (x *ListToolVersionsRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 ListToolVersionsRequest.ProtoReflect.Descriptor instead.
func (*ListToolVersionsRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{9}
}

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

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

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

// The response message for
// [Tools.ListToolVersions][google.cloud.dialogflow.cx.v3beta1.Tools.ListToolVersions].
type ListToolVersionsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of tool versions. There will be a maximum number of items
	// returned based on the page_size field in the request.
	ToolVersions []*ToolVersion `protobuf:"bytes,1,rep,name=tool_versions,json=toolVersions,proto3" json:"tool_versions,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 *ListToolVersionsResponse) Reset() {
	*x = ListToolVersionsResponse{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[10]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListToolVersionsResponse) ProtoMessage() {}

func (x *ListToolVersionsResponse) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 ListToolVersionsResponse.ProtoReflect.Descriptor instead.
func (*ListToolVersionsResponse) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{10}
}

func (x *ListToolVersionsResponse) GetToolVersions() []*ToolVersion {
	if x != nil {
		return x.ToolVersions
	}
	return nil
}

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

// The request message for
// [Tools.CreateToolVersion][google.cloud.dialogflow.cx.v3beta1.Tools.CreateToolVersion].
// The request message for
// [Tools.CreateToolVersion][google.cloud.dialogflow.cx.v3beta1.Tools.CreateToolVersion].
type CreateToolVersionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The tool to create a version for.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Required. The tool version to create.
	ToolVersion   *ToolVersion `protobuf:"bytes,2,opt,name=tool_version,json=toolVersion,proto3" json:"tool_version,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateToolVersionRequest) ProtoMessage() {}

func (x *CreateToolVersionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 CreateToolVersionRequest.ProtoReflect.Descriptor instead.
func (*CreateToolVersionRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{11}
}

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

func (x *CreateToolVersionRequest) GetToolVersion() *ToolVersion {
	if x != nil {
		return x.ToolVersion
	}
	return nil
}

// The request message for
// [Tools.GetToolVersion][google.cloud.dialogflow.cx.v3beta1.Tools.GetToolVersion].
type GetToolVersionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the tool version.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>/versions/<VersionID>`.
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetToolVersionRequest) ProtoMessage() {}

func (x *GetToolVersionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 GetToolVersionRequest.ProtoReflect.Descriptor instead.
func (*GetToolVersionRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{12}
}

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

// The request message for
// [Tools.DeleteToolVersion][google.cloud.dialogflow.cx.v3beta1.Tools.DeleteToolVersion].
type DeleteToolVersionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the tool version to delete.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>/versions/<VersionID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Optional. This field has no effect for Tools not being used.
	// For Tools that are used:
	//
	//   - If `force` is set to false, an error will be returned with message
	//     indicating the referenced resources.
	//   - If `force` is set to true, Dialogflow will remove the tool, as well
	//     as any references to the tool.
	Force         bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteToolVersionRequest) ProtoMessage() {}

func (x *DeleteToolVersionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 DeleteToolVersionRequest.ProtoReflect.Descriptor instead.
func (*DeleteToolVersionRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{13}
}

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

func (x *DeleteToolVersionRequest) GetForce() bool {
	if x != nil {
		return x.Force
	}
	return false
}

// The request message for
// [Tools.RestoreToolVersion][google.cloud.dialogflow.cx.v3beta1.Tools.RestoreToolVersion].
type RestoreToolVersionRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the tool version.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>/versions/<VersionID>`.
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*RestoreToolVersionRequest) ProtoMessage() {}

func (x *RestoreToolVersionRequest) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 RestoreToolVersionRequest.ProtoReflect.Descriptor instead.
func (*RestoreToolVersionRequest) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{14}
}

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

// The response message for
// [Tools.RestoreToolVersion][google.cloud.dialogflow.cx.v3beta1.Tools.RestoreToolVersion].
type RestoreToolVersionResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The updated tool.
	Tool          *Tool `protobuf:"bytes,2,opt,name=tool,proto3" json:"tool,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*RestoreToolVersionResponse) ProtoMessage() {}

func (x *RestoreToolVersionResponse) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 RestoreToolVersionResponse.ProtoReflect.Descriptor instead.
func (*RestoreToolVersionResponse) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{15}
}

func (x *RestoreToolVersionResponse) GetTool() *Tool {
	if x != nil {
		return x.Tool
	}
	return nil
}

// Tool version is a snapshot of the tool at certain timestamp.
type ToolVersion struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Identifier. The unique identifier of the tool version.
	//
	//	Format:
	//
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/tools/<ToolID>/versions/<VersionID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The display name of the tool version.
	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// Required. Snapshot of the tool to be associated with this version.
	Tool *Tool `protobuf:"bytes,3,opt,name=tool,proto3" json:"tool,omitempty"`
	// Output only. Last time the tool version was created or modified.
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// Output only. Last time the tool version was created or modified.
	UpdateTime    *timestamppb.Timestamp `protobuf:"bytes,5,opt,name=update_time,json=updateTime,proto3" json:"update_time,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ToolVersion) ProtoMessage() {}

func (x *ToolVersion) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 ToolVersion.ProtoReflect.Descriptor instead.
func (*ToolVersion) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{16}
}

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

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

func (x *ToolVersion) GetTool() *Tool {
	if x != nil {
		return x.Tool
	}
	return nil
}

func (x *ToolVersion) GetCreateTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CreateTime
	}
	return nil
}

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

// Metadata returned for the
// [Tools.ExportTools][google.cloud.dialogflow.cx.v3beta1.Tools.ExportTools]
// long running operation.
type ExportToolsMetadata struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ExportToolsMetadata) ProtoMessage() {}

func (x *ExportToolsMetadata) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 ExportToolsMetadata.ProtoReflect.Descriptor instead.
func (*ExportToolsMetadata) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{17}
}

// An OpenAPI tool is a way to provide the Tool specifications in the Open API
// schema format.
type Tool_OpenApiTool struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Schema representation.
	//
	// Types that are valid to be assigned to Schema:
	//
	//	*Tool_OpenApiTool_TextSchema
	Schema isTool_OpenApiTool_Schema `protobuf_oneof:"schema"`
	// Optional. Authentication information required by the API.
	Authentication *Tool_Authentication `protobuf:"bytes,2,opt,name=authentication,proto3" json:"authentication,omitempty"`
	// Optional. TLS configuration for the HTTPS verification.
	TlsConfig *Tool_TLSConfig `protobuf:"bytes,3,opt,name=tls_config,json=tlsConfig,proto3" json:"tls_config,omitempty"`
	// Optional. Service Directory configuration.
	ServiceDirectoryConfig *Tool_ServiceDirectoryConfig `protobuf:"bytes,4,opt,name=service_directory_config,json=serviceDirectoryConfig,proto3" json:"service_directory_config,omitempty"`
	unknownFields          protoimpl.UnknownFields
	sizeCache              protoimpl.SizeCache
}

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

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

func (*Tool_OpenApiTool) ProtoMessage() {}

func (x *Tool_OpenApiTool) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 Tool_OpenApiTool.ProtoReflect.Descriptor instead.
func (*Tool_OpenApiTool) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 0}
}

func (x *Tool_OpenApiTool) GetSchema() isTool_OpenApiTool_Schema {
	if x != nil {
		return x.Schema
	}
	return nil
}

func (x *Tool_OpenApiTool) GetTextSchema() string {
	if x != nil {
		if x, ok := x.Schema.(*Tool_OpenApiTool_TextSchema); ok {
			return x.TextSchema
		}
	}
	return ""
}

func (x *Tool_OpenApiTool) GetAuthentication() *Tool_Authentication {
	if x != nil {
		return x.Authentication
	}
	return nil
}

func (x *Tool_OpenApiTool) GetTlsConfig() *Tool_TLSConfig {
	if x != nil {
		return x.TlsConfig
	}
	return nil
}

func (x *Tool_OpenApiTool) GetServiceDirectoryConfig() *Tool_ServiceDirectoryConfig {
	if x != nil {
		return x.ServiceDirectoryConfig
	}
	return nil
}

type isTool_OpenApiTool_Schema interface {
	isTool_OpenApiTool_Schema()
}

type Tool_OpenApiTool_TextSchema struct {
	// Required. The OpenAPI schema specified as a text.
	TextSchema string `protobuf:"bytes,1,opt,name=text_schema,json=textSchema,proto3,oneof"`
}

func (*Tool_OpenApiTool_TextSchema) isTool_OpenApiTool_Schema() {}

// A DataStoreTool is a way to provide specifications needed to search a
// list of data stores.
type Tool_DataStoreTool struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. List of data stores to search.
	DataStoreConnections []*DataStoreConnection `protobuf:"bytes,1,rep,name=data_store_connections,json=dataStoreConnections,proto3" json:"data_store_connections,omitempty"`
	// Required. Fallback prompt configurations to use.
	FallbackPrompt *Tool_DataStoreTool_FallbackPrompt `protobuf:"bytes,3,opt,name=fallback_prompt,json=fallbackPrompt,proto3" json:"fallback_prompt,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

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

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

func (*Tool_DataStoreTool) ProtoMessage() {}

func (x *Tool_DataStoreTool) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 Tool_DataStoreTool.ProtoReflect.Descriptor instead.
func (*Tool_DataStoreTool) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 1}
}

func (x *Tool_DataStoreTool) GetDataStoreConnections() []*DataStoreConnection {
	if x != nil {
		return x.DataStoreConnections
	}
	return nil
}

func (x *Tool_DataStoreTool) GetFallbackPrompt() *Tool_DataStoreTool_FallbackPrompt {
	if x != nil {
		return x.FallbackPrompt
	}
	return nil
}

// An ExtensionTool is a way to use Vertex Extensions as a tool.
type Tool_ExtensionTool struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full name of the referenced vertex extension.
	// Formats:
	// `projects/{project}/locations/{location}/extensions/{extension}`
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Tool_ExtensionTool) ProtoMessage() {}

func (x *Tool_ExtensionTool) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_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 Tool_ExtensionTool.ProtoReflect.Descriptor instead.
func (*Tool_ExtensionTool) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 2}
}

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

// A Function tool describes the functions to be invoked on the client side.
type Tool_FunctionTool struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Optional. The JSON schema is encapsulated in a
	// [google.protobuf.Struct][google.protobuf.Struct] to describe the input of
	// the function. This input is a JSON object that contains the function's
	// parameters as properties of the object.
	InputSchema *structpb.Struct `protobuf:"bytes,1,opt,name=input_schema,json=inputSchema,proto3" json:"input_schema,omitempty"`
	// Optional. The JSON schema is encapsulated in a
	// [google.protobuf.Struct][google.protobuf.Struct] to describe the output
	// of the function. This output is a JSON object that contains the
	// function's parameters as properties of the object.
	OutputSchema  *structpb.Struct `protobuf:"bytes,2,opt,name=output_schema,json=outputSchema,proto3" json:"output_schema,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_FunctionTool) Reset() {
	*x = Tool_FunctionTool{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[21]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_FunctionTool) ProtoMessage() {}

func (x *Tool_FunctionTool) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[21]
	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 Tool_FunctionTool.ProtoReflect.Descriptor instead.
func (*Tool_FunctionTool) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 3}
}

func (x *Tool_FunctionTool) GetInputSchema() *structpb.Struct {
	if x != nil {
		return x.InputSchema
	}
	return nil
}

func (x *Tool_FunctionTool) GetOutputSchema() *structpb.Struct {
	if x != nil {
		return x.OutputSchema
	}
	return nil
}

// A ConnectorTool enabling using Integration Connectors Connections as tools.
type Tool_ConnectorTool struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The full resource name of the referenced Integration Connectors
	// Connection. Format: `projects/*/locations/*/connections/*`
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. Actions for the tool to use.
	Actions []*Tool_ConnectorTool_Action `protobuf:"bytes,2,rep,name=actions,proto3" json:"actions,omitempty"`
	// Optional. Integration Connectors end-user authentication configuration.
	// If configured, the end-user authentication fields will be passed in the
	// Integration Connectors API request and override the admin, default
	// authentication configured for the Connection.
	// **Note**: The Connection must have authentication override enabled in
	// order to specify an EUC configuration here - otherwise, the ConnectorTool
	// creation will fail. See:
	// https://cloud.google.com/application-integration/docs/configure-connectors-task#configure-authentication-override
	EndUserAuthConfig *Tool_EndUserAuthConfig `protobuf:"bytes,3,opt,name=end_user_auth_config,json=endUserAuthConfig,proto3" json:"end_user_auth_config,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

func (x *Tool_ConnectorTool) Reset() {
	*x = Tool_ConnectorTool{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[22]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_ConnectorTool) ProtoMessage() {}

func (x *Tool_ConnectorTool) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[22]
	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 Tool_ConnectorTool.ProtoReflect.Descriptor instead.
func (*Tool_ConnectorTool) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 4}
}

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

func (x *Tool_ConnectorTool) GetActions() []*Tool_ConnectorTool_Action {
	if x != nil {
		return x.Actions
	}
	return nil
}

func (x *Tool_ConnectorTool) GetEndUserAuthConfig() *Tool_EndUserAuthConfig {
	if x != nil {
		return x.EndUserAuthConfig
	}
	return nil
}

// Authentication information required for API calls
type Tool_Authentication struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The auth configuration.
	//
	// Types that are valid to be assigned to AuthConfig:
	//
	//	*Tool_Authentication_ApiKeyConfig_
	//	*Tool_Authentication_OauthConfig
	//	*Tool_Authentication_ServiceAgentAuthConfig_
	//	*Tool_Authentication_BearerTokenConfig_
	//	*Tool_Authentication_ServiceAccountAuthConfig_
	AuthConfig    isTool_Authentication_AuthConfig `protobuf_oneof:"auth_config"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_Authentication) Reset() {
	*x = Tool_Authentication{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[23]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_Authentication) ProtoMessage() {}

func (x *Tool_Authentication) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[23]
	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 Tool_Authentication.ProtoReflect.Descriptor instead.
func (*Tool_Authentication) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 5}
}

func (x *Tool_Authentication) GetAuthConfig() isTool_Authentication_AuthConfig {
	if x != nil {
		return x.AuthConfig
	}
	return nil
}

func (x *Tool_Authentication) GetApiKeyConfig() *Tool_Authentication_ApiKeyConfig {
	if x != nil {
		if x, ok := x.AuthConfig.(*Tool_Authentication_ApiKeyConfig_); ok {
			return x.ApiKeyConfig
		}
	}
	return nil
}

func (x *Tool_Authentication) GetOauthConfig() *Tool_Authentication_OAuthConfig {
	if x != nil {
		if x, ok := x.AuthConfig.(*Tool_Authentication_OauthConfig); ok {
			return x.OauthConfig
		}
	}
	return nil
}

func (x *Tool_Authentication) GetServiceAgentAuthConfig() *Tool_Authentication_ServiceAgentAuthConfig {
	if x != nil {
		if x, ok := x.AuthConfig.(*Tool_Authentication_ServiceAgentAuthConfig_); ok {
			return x.ServiceAgentAuthConfig
		}
	}
	return nil
}

func (x *Tool_Authentication) GetBearerTokenConfig() *Tool_Authentication_BearerTokenConfig {
	if x != nil {
		if x, ok := x.AuthConfig.(*Tool_Authentication_BearerTokenConfig_); ok {
			return x.BearerTokenConfig
		}
	}
	return nil
}

func (x *Tool_Authentication) GetServiceAccountAuthConfig() *Tool_Authentication_ServiceAccountAuthConfig {
	if x != nil {
		if x, ok := x.AuthConfig.(*Tool_Authentication_ServiceAccountAuthConfig_); ok {
			return x.ServiceAccountAuthConfig
		}
	}
	return nil
}

type isTool_Authentication_AuthConfig interface {
	isTool_Authentication_AuthConfig()
}

type Tool_Authentication_ApiKeyConfig_ struct {
	// Config for API key auth.
	ApiKeyConfig *Tool_Authentication_ApiKeyConfig `protobuf:"bytes,1,opt,name=api_key_config,json=apiKeyConfig,proto3,oneof"`
}

type Tool_Authentication_OauthConfig struct {
	// Config for OAuth.
	OauthConfig *Tool_Authentication_OAuthConfig `protobuf:"bytes,2,opt,name=oauth_config,json=oauthConfig,proto3,oneof"`
}

type Tool_Authentication_ServiceAgentAuthConfig_ struct {
	// Config for [Diglogflow service
	// agent](https://cloud.google.com/iam/docs/service-agents#dialogflow-service-agent)
	// auth.
	ServiceAgentAuthConfig *Tool_Authentication_ServiceAgentAuthConfig `protobuf:"bytes,3,opt,name=service_agent_auth_config,json=serviceAgentAuthConfig,proto3,oneof"`
}

type Tool_Authentication_BearerTokenConfig_ struct {
	// Config for bearer token auth.
	BearerTokenConfig *Tool_Authentication_BearerTokenConfig `protobuf:"bytes,4,opt,name=bearer_token_config,json=bearerTokenConfig,proto3,oneof"`
}

type Tool_Authentication_ServiceAccountAuthConfig_ struct {
	// Configuration for service account authentication.
	ServiceAccountAuthConfig *Tool_Authentication_ServiceAccountAuthConfig `protobuf:"bytes,5,opt,name=service_account_auth_config,json=serviceAccountAuthConfig,proto3,oneof"`
}

func (*Tool_Authentication_ApiKeyConfig_) isTool_Authentication_AuthConfig() {}

func (*Tool_Authentication_OauthConfig) isTool_Authentication_AuthConfig() {}

func (*Tool_Authentication_ServiceAgentAuthConfig_) isTool_Authentication_AuthConfig() {}

func (*Tool_Authentication_BearerTokenConfig_) isTool_Authentication_AuthConfig() {}

func (*Tool_Authentication_ServiceAccountAuthConfig_) isTool_Authentication_AuthConfig() {}

// The TLS configuration.
type Tool_TLSConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Specifies a list of allowed custom CA certificates for HTTPS
	// verification.
	CaCerts       []*Tool_TLSConfig_CACert `protobuf:"bytes,1,rep,name=ca_certs,json=caCerts,proto3" json:"ca_certs,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_TLSConfig) Reset() {
	*x = Tool_TLSConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[24]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_TLSConfig) ProtoMessage() {}

func (x *Tool_TLSConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[24]
	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 Tool_TLSConfig.ProtoReflect.Descriptor instead.
func (*Tool_TLSConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 6}
}

func (x *Tool_TLSConfig) GetCaCerts() []*Tool_TLSConfig_CACert {
	if x != nil {
		return x.CaCerts
	}
	return nil
}

// Configuration for tools using Service Directory.
type Tool_ServiceDirectoryConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of [Service
	// Directory](https://cloud.google.com/service-directory) service.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/namespaces/<NamespaceID>/services/<ServiceID>`.
	// `LocationID` of the service directory must be the same as the location
	// of the agent.
	Service       string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_ServiceDirectoryConfig) Reset() {
	*x = Tool_ServiceDirectoryConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[25]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_ServiceDirectoryConfig) ProtoMessage() {}

func (x *Tool_ServiceDirectoryConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[25]
	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 Tool_ServiceDirectoryConfig.ProtoReflect.Descriptor instead.
func (*Tool_ServiceDirectoryConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 7}
}

func (x *Tool_ServiceDirectoryConfig) GetService() string {
	if x != nil {
		return x.Service
	}
	return ""
}

// End-user authentication configuration used for Connection calls.
// The field values can either be hardcoded authentication values or the names
// of [session
// parameters](https://cloud.google.com/dialogflow/cx/docs/concept/parameter#session-ref)
// or [request
// parameters](https://cloud.google.com/dialogflow/cx/docs/concept/parameter#request-scoped).
//
// If parameter names are provided, then those parameters can be used to pass
// the authentication values dynamically, through `$session.params.param-id`
// or `$request.payload.param-id`.
type Tool_EndUserAuthConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The end-user authentication configuration.
	//
	// Types that are valid to be assigned to EndUserAuthConfig:
	//
	//	*Tool_EndUserAuthConfig_Oauth2AuthCodeConfig_
	//	*Tool_EndUserAuthConfig_Oauth2JwtBearerConfig_
	EndUserAuthConfig isTool_EndUserAuthConfig_EndUserAuthConfig `protobuf_oneof:"end_user_auth_config"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

func (x *Tool_EndUserAuthConfig) Reset() {
	*x = Tool_EndUserAuthConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[26]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_EndUserAuthConfig) ProtoMessage() {}

func (x *Tool_EndUserAuthConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[26]
	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 Tool_EndUserAuthConfig.ProtoReflect.Descriptor instead.
func (*Tool_EndUserAuthConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 8}
}

func (x *Tool_EndUserAuthConfig) GetEndUserAuthConfig() isTool_EndUserAuthConfig_EndUserAuthConfig {
	if x != nil {
		return x.EndUserAuthConfig
	}
	return nil
}

func (x *Tool_EndUserAuthConfig) GetOauth2AuthCodeConfig() *Tool_EndUserAuthConfig_Oauth2AuthCodeConfig {
	if x != nil {
		if x, ok := x.EndUserAuthConfig.(*Tool_EndUserAuthConfig_Oauth2AuthCodeConfig_); ok {
			return x.Oauth2AuthCodeConfig
		}
	}
	return nil
}

func (x *Tool_EndUserAuthConfig) GetOauth2JwtBearerConfig() *Tool_EndUserAuthConfig_Oauth2JwtBearerConfig {
	if x != nil {
		if x, ok := x.EndUserAuthConfig.(*Tool_EndUserAuthConfig_Oauth2JwtBearerConfig_); ok {
			return x.Oauth2JwtBearerConfig
		}
	}
	return nil
}

type isTool_EndUserAuthConfig_EndUserAuthConfig interface {
	isTool_EndUserAuthConfig_EndUserAuthConfig()
}

type Tool_EndUserAuthConfig_Oauth2AuthCodeConfig_ struct {
	// Oauth 2.0 Authorization Code authentication.
	Oauth2AuthCodeConfig *Tool_EndUserAuthConfig_Oauth2AuthCodeConfig `protobuf:"bytes,2,opt,name=oauth2_auth_code_config,json=oauth2AuthCodeConfig,proto3,oneof"`
}

type Tool_EndUserAuthConfig_Oauth2JwtBearerConfig_ struct {
	// JWT Profile Oauth 2.0 Authorization Grant authentication.
	Oauth2JwtBearerConfig *Tool_EndUserAuthConfig_Oauth2JwtBearerConfig `protobuf:"bytes,3,opt,name=oauth2_jwt_bearer_config,json=oauth2JwtBearerConfig,proto3,oneof"`
}

func (*Tool_EndUserAuthConfig_Oauth2AuthCodeConfig_) isTool_EndUserAuthConfig_EndUserAuthConfig() {}

func (*Tool_EndUserAuthConfig_Oauth2JwtBearerConfig_) isTool_EndUserAuthConfig_EndUserAuthConfig() {}

// A FallbackPrompt is a way to provide specifications for the Data Store
// fallback prompt when generating responses.
type Tool_DataStoreTool_FallbackPrompt struct {
	state         protoimpl.MessageState `protogen:"open.v1"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_DataStoreTool_FallbackPrompt) Reset() {
	*x = Tool_DataStoreTool_FallbackPrompt{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[27]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_DataStoreTool_FallbackPrompt) ProtoMessage() {}

func (x *Tool_DataStoreTool_FallbackPrompt) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[27]
	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 Tool_DataStoreTool_FallbackPrompt.ProtoReflect.Descriptor instead.
func (*Tool_DataStoreTool_FallbackPrompt) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 1, 0}
}

// Configuration of a Connection operation for the tool to use.
type Tool_ConnectorTool_Action struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Specification for an action to configure for the tool to use.
	//
	// Types that are valid to be assigned to ActionSpec:
	//
	//	*Tool_ConnectorTool_Action_ConnectionActionId
	//	*Tool_ConnectorTool_Action_EntityOperation_
	ActionSpec isTool_ConnectorTool_Action_ActionSpec `protobuf_oneof:"action_spec"`
	// Optional. Entity fields to use as inputs for the operation.
	// If no fields are specified, all fields of the Entity will be used.
	InputFields []string `protobuf:"bytes,2,rep,name=input_fields,json=inputFields,proto3" json:"input_fields,omitempty"`
	// Optional. Entity fields to return from the operation.
	// If no fields are specified, all fields of the Entity will be returned.
	OutputFields  []string `protobuf:"bytes,3,rep,name=output_fields,json=outputFields,proto3" json:"output_fields,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_ConnectorTool_Action) Reset() {
	*x = Tool_ConnectorTool_Action{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[28]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_ConnectorTool_Action) ProtoMessage() {}

func (x *Tool_ConnectorTool_Action) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[28]
	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 Tool_ConnectorTool_Action.ProtoReflect.Descriptor instead.
func (*Tool_ConnectorTool_Action) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 4, 0}
}

func (x *Tool_ConnectorTool_Action) GetActionSpec() isTool_ConnectorTool_Action_ActionSpec {
	if x != nil {
		return x.ActionSpec
	}
	return nil
}

func (x *Tool_ConnectorTool_Action) GetConnectionActionId() string {
	if x != nil {
		if x, ok := x.ActionSpec.(*Tool_ConnectorTool_Action_ConnectionActionId); ok {
			return x.ConnectionActionId
		}
	}
	return ""
}

func (x *Tool_ConnectorTool_Action) GetEntityOperation() *Tool_ConnectorTool_Action_EntityOperation {
	if x != nil {
		if x, ok := x.ActionSpec.(*Tool_ConnectorTool_Action_EntityOperation_); ok {
			return x.EntityOperation
		}
	}
	return nil
}

func (x *Tool_ConnectorTool_Action) GetInputFields() []string {
	if x != nil {
		return x.InputFields
	}
	return nil
}

func (x *Tool_ConnectorTool_Action) GetOutputFields() []string {
	if x != nil {
		return x.OutputFields
	}
	return nil
}

type isTool_ConnectorTool_Action_ActionSpec interface {
	isTool_ConnectorTool_Action_ActionSpec()
}

type Tool_ConnectorTool_Action_ConnectionActionId struct {
	// ID of a Connection action for the tool to use.
	ConnectionActionId string `protobuf:"bytes,4,opt,name=connection_action_id,json=connectionActionId,proto3,oneof"`
}

type Tool_ConnectorTool_Action_EntityOperation_ struct {
	// Entity operation configuration for the tool to use.
	EntityOperation *Tool_ConnectorTool_Action_EntityOperation `protobuf:"bytes,5,opt,name=entity_operation,json=entityOperation,proto3,oneof"`
}

func (*Tool_ConnectorTool_Action_ConnectionActionId) isTool_ConnectorTool_Action_ActionSpec() {}

func (*Tool_ConnectorTool_Action_EntityOperation_) isTool_ConnectorTool_Action_ActionSpec() {}

// Entity CRUD operation specification.
type Tool_ConnectorTool_Action_EntityOperation struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. ID of the entity.
	EntityId string `protobuf:"bytes,1,opt,name=entity_id,json=entityId,proto3" json:"entity_id,omitempty"`
	// Required. Operation to perform on the entity.
	Operation     Tool_ConnectorTool_Action_EntityOperation_OperationType `protobuf:"varint,2,opt,name=operation,proto3,enum=google.cloud.dialogflow.cx.v3beta1.Tool_ConnectorTool_Action_EntityOperation_OperationType" json:"operation,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_ConnectorTool_Action_EntityOperation) Reset() {
	*x = Tool_ConnectorTool_Action_EntityOperation{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[29]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_ConnectorTool_Action_EntityOperation) ProtoMessage() {}

func (x *Tool_ConnectorTool_Action_EntityOperation) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[29]
	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 Tool_ConnectorTool_Action_EntityOperation.ProtoReflect.Descriptor instead.
func (*Tool_ConnectorTool_Action_EntityOperation) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 4, 0, 0}
}

func (x *Tool_ConnectorTool_Action_EntityOperation) GetEntityId() string {
	if x != nil {
		return x.EntityId
	}
	return ""
}

func (x *Tool_ConnectorTool_Action_EntityOperation) GetOperation() Tool_ConnectorTool_Action_EntityOperation_OperationType {
	if x != nil {
		return x.Operation
	}
	return Tool_ConnectorTool_Action_EntityOperation_OPERATION_TYPE_UNSPECIFIED
}

// Config for authentication with API key.
type Tool_Authentication_ApiKeyConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The parameter name or the header name of the API key.
	// E.g., If the API request is "https://example.com/act?X-Api-Key=<API
	// KEY>", "X-Api-Key" would be the parameter name.
	KeyName string `protobuf:"bytes,1,opt,name=key_name,json=keyName,proto3" json:"key_name,omitempty"`
	// Optional. The API key. If the `secret_version_for_api_key` field is
	// set, this field will be ignored.
	ApiKey string `protobuf:"bytes,2,opt,name=api_key,json=apiKey,proto3" json:"api_key,omitempty"`
	// Optional. The name of the SecretManager secret version resource storing
	// the API key. If this field is set, the `api_key` field will be ignored.
	// Format: `projects/{project}/secrets/{secret}/versions/{version}`
	SecretVersionForApiKey string `protobuf:"bytes,4,opt,name=secret_version_for_api_key,json=secretVersionForApiKey,proto3" json:"secret_version_for_api_key,omitempty"`
	// Required. Key location in the request.
	RequestLocation Tool_Authentication_RequestLocation `protobuf:"varint,3,opt,name=request_location,json=requestLocation,proto3,enum=google.cloud.dialogflow.cx.v3beta1.Tool_Authentication_RequestLocation" json:"request_location,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

func (x *Tool_Authentication_ApiKeyConfig) Reset() {
	*x = Tool_Authentication_ApiKeyConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[30]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_Authentication_ApiKeyConfig) ProtoMessage() {}

func (x *Tool_Authentication_ApiKeyConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[30]
	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 Tool_Authentication_ApiKeyConfig.ProtoReflect.Descriptor instead.
func (*Tool_Authentication_ApiKeyConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 5, 0}
}

func (x *Tool_Authentication_ApiKeyConfig) GetKeyName() string {
	if x != nil {
		return x.KeyName
	}
	return ""
}

func (x *Tool_Authentication_ApiKeyConfig) GetApiKey() string {
	if x != nil {
		return x.ApiKey
	}
	return ""
}

func (x *Tool_Authentication_ApiKeyConfig) GetSecretVersionForApiKey() string {
	if x != nil {
		return x.SecretVersionForApiKey
	}
	return ""
}

func (x *Tool_Authentication_ApiKeyConfig) GetRequestLocation() Tool_Authentication_RequestLocation {
	if x != nil {
		return x.RequestLocation
	}
	return Tool_Authentication_REQUEST_LOCATION_UNSPECIFIED
}

// Config for authentication with OAuth.
type Tool_Authentication_OAuthConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. OAuth grant types.
	OauthGrantType Tool_Authentication_OAuthConfig_OauthGrantType `protobuf:"varint,1,opt,name=oauth_grant_type,json=oauthGrantType,proto3,enum=google.cloud.dialogflow.cx.v3beta1.Tool_Authentication_OAuthConfig_OauthGrantType" json:"oauth_grant_type,omitempty"`
	// Required. The client ID from the OAuth provider.
	ClientId string `protobuf:"bytes,2,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
	// Optional. The client secret from the OAuth provider. If the
	// `secret_version_for_client_secret` field is set, this field will be
	// ignored.
	ClientSecret string `protobuf:"bytes,3,opt,name=client_secret,json=clientSecret,proto3" json:"client_secret,omitempty"`
	// Optional. The name of the SecretManager secret version resource storing
	// the client secret. If this field is set, the `client_secret` field will
	// be ignored. Format:
	// `projects/{project}/secrets/{secret}/versions/{version}`
	SecretVersionForClientSecret string `protobuf:"bytes,6,opt,name=secret_version_for_client_secret,json=secretVersionForClientSecret,proto3" json:"secret_version_for_client_secret,omitempty"`
	// Required. The token endpoint in the OAuth provider to exchange for an
	// access token.
	TokenEndpoint string `protobuf:"bytes,4,opt,name=token_endpoint,json=tokenEndpoint,proto3" json:"token_endpoint,omitempty"`
	// Optional. The OAuth scopes to grant.
	Scopes        []string `protobuf:"bytes,5,rep,name=scopes,proto3" json:"scopes,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_Authentication_OAuthConfig) Reset() {
	*x = Tool_Authentication_OAuthConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[31]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_Authentication_OAuthConfig) ProtoMessage() {}

func (x *Tool_Authentication_OAuthConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[31]
	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 Tool_Authentication_OAuthConfig.ProtoReflect.Descriptor instead.
func (*Tool_Authentication_OAuthConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 5, 1}
}

func (x *Tool_Authentication_OAuthConfig) GetOauthGrantType() Tool_Authentication_OAuthConfig_OauthGrantType {
	if x != nil {
		return x.OauthGrantType
	}
	return Tool_Authentication_OAuthConfig_OAUTH_GRANT_TYPE_UNSPECIFIED
}

func (x *Tool_Authentication_OAuthConfig) GetClientId() string {
	if x != nil {
		return x.ClientId
	}
	return ""
}

func (x *Tool_Authentication_OAuthConfig) GetClientSecret() string {
	if x != nil {
		return x.ClientSecret
	}
	return ""
}

func (x *Tool_Authentication_OAuthConfig) GetSecretVersionForClientSecret() string {
	if x != nil {
		return x.SecretVersionForClientSecret
	}
	return ""
}

func (x *Tool_Authentication_OAuthConfig) GetTokenEndpoint() string {
	if x != nil {
		return x.TokenEndpoint
	}
	return ""
}

func (x *Tool_Authentication_OAuthConfig) GetScopes() []string {
	if x != nil {
		return x.Scopes
	}
	return nil
}

// Config for auth using [Diglogflow service
// agent](https://cloud.google.com/iam/docs/service-agents#dialogflow-service-agent).
type Tool_Authentication_ServiceAgentAuthConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Optional. Indicate the auth token type generated from the [Diglogflow
	// service
	// agent](https://cloud.google.com/iam/docs/service-agents#dialogflow-service-agent).
	// The generated token is sent in the Authorization header.
	ServiceAgentAuth Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth `protobuf:"varint,1,opt,name=service_agent_auth,json=serviceAgentAuth,proto3,enum=google.cloud.dialogflow.cx.v3beta1.Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth" json:"service_agent_auth,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

func (x *Tool_Authentication_ServiceAgentAuthConfig) Reset() {
	*x = Tool_Authentication_ServiceAgentAuthConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[32]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_Authentication_ServiceAgentAuthConfig) ProtoMessage() {}

func (x *Tool_Authentication_ServiceAgentAuthConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[32]
	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 Tool_Authentication_ServiceAgentAuthConfig.ProtoReflect.Descriptor instead.
func (*Tool_Authentication_ServiceAgentAuthConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 5, 2}
}

func (x *Tool_Authentication_ServiceAgentAuthConfig) GetServiceAgentAuth() Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth {
	if x != nil {
		return x.ServiceAgentAuth
	}
	return Tool_Authentication_ServiceAgentAuthConfig_SERVICE_AGENT_AUTH_UNSPECIFIED
}

// Config for authentication using bearer token.
type Tool_Authentication_BearerTokenConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Optional. The text token appended to the text `Bearer` to the request
	// Authorization header.
	// [Session parameters
	// reference](https://cloud.google.com/dialogflow/cx/docs/concept/parameter#session-ref)
	// can be used to pass the token dynamically, e.g.
	// `$session.params.parameter-id`.
	Token string `protobuf:"bytes,1,opt,name=token,proto3" json:"token,omitempty"`
	// Optional. The name of the SecretManager secret version resource storing
	// the Bearer token. If this field is set, the `token` field will be
	// ignored. Format:
	// `projects/{project}/secrets/{secret}/versions/{version}`
	SecretVersionForToken string `protobuf:"bytes,2,opt,name=secret_version_for_token,json=secretVersionForToken,proto3" json:"secret_version_for_token,omitempty"`
	unknownFields         protoimpl.UnknownFields
	sizeCache             protoimpl.SizeCache
}

func (x *Tool_Authentication_BearerTokenConfig) Reset() {
	*x = Tool_Authentication_BearerTokenConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[33]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_Authentication_BearerTokenConfig) ProtoMessage() {}

func (x *Tool_Authentication_BearerTokenConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[33]
	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 Tool_Authentication_BearerTokenConfig.ProtoReflect.Descriptor instead.
func (*Tool_Authentication_BearerTokenConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 5, 3}
}

func (x *Tool_Authentication_BearerTokenConfig) GetToken() string {
	if x != nil {
		return x.Token
	}
	return ""
}

func (x *Tool_Authentication_BearerTokenConfig) GetSecretVersionForToken() string {
	if x != nil {
		return x.SecretVersionForToken
	}
	return ""
}

// Configuration for authentication using a service account.
type Tool_Authentication_ServiceAccountAuthConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The email address of the service account used to authenticate
	// the tool call. Dialogflow uses this service account to exchange an
	// access token and the access token is then sent in the `Authorization`
	// header of the tool request.
	//
	// The service account must have the
	// `roles/iam.serviceAccountTokenCreator` role granted to the
	// [Dialogflow service
	// agent](https://cloud.google.com/iam/docs/service-agents#dialogflow-service-agent).
	ServiceAccount string `protobuf:"bytes,1,opt,name=service_account,json=serviceAccount,proto3" json:"service_account,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

func (x *Tool_Authentication_ServiceAccountAuthConfig) Reset() {
	*x = Tool_Authentication_ServiceAccountAuthConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[34]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_Authentication_ServiceAccountAuthConfig) ProtoMessage() {}

func (x *Tool_Authentication_ServiceAccountAuthConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[34]
	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 Tool_Authentication_ServiceAccountAuthConfig.ProtoReflect.Descriptor instead.
func (*Tool_Authentication_ServiceAccountAuthConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 5, 4}
}

func (x *Tool_Authentication_ServiceAccountAuthConfig) GetServiceAccount() string {
	if x != nil {
		return x.ServiceAccount
	}
	return ""
}

// The CA certificate.
type Tool_TLSConfig_CACert struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the allowed custom CA certificates. This
	// can be used to disambiguate the custom CA certificates.
	DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// Required. The allowed custom CA certificates (in DER format) for
	// HTTPS verification. This overrides the default SSL trust store. If this
	// is empty or unspecified, Dialogflow will use Google's default trust
	// store to verify certificates. N.B. Make sure the HTTPS server
	// certificates are signed with "subject alt name". For instance a
	// certificate can be self-signed using the following command:
	//
	// ```
	//
	//	openssl x509 -req -days 200 -in example.com.csr \
	//	  -signkey example.com.key \
	//	  -out example.com.crt \
	//	  -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")
	//
	// ```
	Cert          []byte `protobuf:"bytes,2,opt,name=cert,proto3" json:"cert,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_TLSConfig_CACert) Reset() {
	*x = Tool_TLSConfig_CACert{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[35]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_TLSConfig_CACert) ProtoMessage() {}

func (x *Tool_TLSConfig_CACert) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[35]
	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 Tool_TLSConfig_CACert.ProtoReflect.Descriptor instead.
func (*Tool_TLSConfig_CACert) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 6, 0}
}

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

func (x *Tool_TLSConfig_CACert) GetCert() []byte {
	if x != nil {
		return x.Cert
	}
	return nil
}

// Oauth 2.0 Authorization Code authentication configuration.
type Tool_EndUserAuthConfig_Oauth2AuthCodeConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Oauth token value or parameter name to pass it through.
	OauthToken    string `protobuf:"bytes,1,opt,name=oauth_token,json=oauthToken,proto3" json:"oauth_token,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_EndUserAuthConfig_Oauth2AuthCodeConfig) Reset() {
	*x = Tool_EndUserAuthConfig_Oauth2AuthCodeConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[36]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_EndUserAuthConfig_Oauth2AuthCodeConfig) ProtoMessage() {}

func (x *Tool_EndUserAuthConfig_Oauth2AuthCodeConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[36]
	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 Tool_EndUserAuthConfig_Oauth2AuthCodeConfig.ProtoReflect.Descriptor instead.
func (*Tool_EndUserAuthConfig_Oauth2AuthCodeConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 8, 0}
}

func (x *Tool_EndUserAuthConfig_Oauth2AuthCodeConfig) GetOauthToken() string {
	if x != nil {
		return x.OauthToken
	}
	return ""
}

// JWT Profile Oauth 2.0 Authorization Grant authentication configuration.
type Tool_EndUserAuthConfig_Oauth2JwtBearerConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Issuer value or parameter name to pass it through.
	Issuer string `protobuf:"bytes,1,opt,name=issuer,proto3" json:"issuer,omitempty"`
	// Required. Subject value or parameter name to pass it through.
	Subject string `protobuf:"bytes,2,opt,name=subject,proto3" json:"subject,omitempty"`
	// Required. Client key value or parameter name to pass it through.
	ClientKey     string `protobuf:"bytes,3,opt,name=client_key,json=clientKey,proto3" json:"client_key,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *Tool_EndUserAuthConfig_Oauth2JwtBearerConfig) Reset() {
	*x = Tool_EndUserAuthConfig_Oauth2JwtBearerConfig{}
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[37]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*Tool_EndUserAuthConfig_Oauth2JwtBearerConfig) ProtoMessage() {}

func (x *Tool_EndUserAuthConfig_Oauth2JwtBearerConfig) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[37]
	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 Tool_EndUserAuthConfig_Oauth2JwtBearerConfig.ProtoReflect.Descriptor instead.
func (*Tool_EndUserAuthConfig_Oauth2JwtBearerConfig) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP(), []int{8, 8, 1}
}

func (x *Tool_EndUserAuthConfig_Oauth2JwtBearerConfig) GetIssuer() string {
	if x != nil {
		return x.Issuer
	}
	return ""
}

func (x *Tool_EndUserAuthConfig_Oauth2JwtBearerConfig) GetSubject() string {
	if x != nil {
		return x.Subject
	}
	return ""
}

func (x *Tool_EndUserAuthConfig_Oauth2JwtBearerConfig) GetClientKey() string {
	if x != nil {
		return x.ClientKey
	}
	return ""
}

var File_google_cloud_dialogflow_cx_v3beta1_tool_proto protoreflect.FileDescriptor

const file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDesc = "" +
	"\n" +
	"-google/cloud/dialogflow/cx/v3beta1/tool.proto\x12\"google.cloud.dialogflow.cx.v3beta1\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/v3beta1/data_store_connection.proto\x1a/google/cloud/dialogflow/cx/v3beta1/inline.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\"\x96\x01\n" +
	"\x11CreateToolRequest\x12>\n" +
	"\x06parent\x18\x01 \x01(\tB&\xe0A\x02\xfaA \x12\x1edialogflow.googleapis.com/ToolR\x06parent\x12A\n" +
	"\x04tool\x18\x02 \x01(\v2(.google.cloud.dialogflow.cx.v3beta1.ToolB\x03\xe0A\x02R\x04tool\"\x8e\x01\n" +
	"\x10ListToolsRequest\x12>\n" +
	"\x06parent\x18\x01 \x01(\tB&\xe0A\x02\xfaA \x12\x1edialogflow.googleapis.com/ToolR\x06parent\x12\x1b\n" +
	"\tpage_size\x18\x02 \x01(\x05R\bpageSize\x12\x1d\n" +
	"\n" +
	"page_token\x18\x03 \x01(\tR\tpageToken\"{\n" +
	"\x11ListToolsResponse\x12>\n" +
	"\x05tools\x18\x01 \x03(\v2(.google.cloud.dialogflow.cx.v3beta1.ToolR\x05tools\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"L\n" +
	"\x0eGetToolRequest\x12:\n" +
	"\x04name\x18\x01 \x01(\tB&\xe0A\x02\xfaA \n" +
	"\x1edialogflow.googleapis.com/ToolR\x04name\"\x9c\x03\n" +
	"\x12ExportToolsRequest\x12>\n" +
	"\x06parent\x18\x01 \x01(\tB&\xe0A\x02\xfaA \x12\x1edialogflow.googleapis.com/ToolR\x06parent\x12<\n" +
	"\x05tools\x18\x02 \x03(\tB&\xe0A\x02\xfaA \n" +
	"\x1edialogflow.googleapis.com/ToolR\x05tools\x12\"\n" +
	"\ttools_uri\x18\x03 \x01(\tB\x03\xe0A\x01H\x00R\btoolsUri\x127\n" +
	"\x14tools_content_inline\x18\x04 \x01(\bB\x03\xe0A\x01H\x00R\x12toolsContentInline\x12g\n" +
	"\vdata_format\x18\x05 \x01(\x0e2A.google.cloud.dialogflow.cx.v3beta1.ExportToolsRequest.DataFormatB\x03\xe0A\x01R\n" +
	"dataFormat\"3\n" +
	"\n" +
	"DataFormat\x12\x1b\n" +
	"\x17DATA_FORMAT_UNSPECIFIED\x10\x00\x12\b\n" +
	"\x04BLOB\x10\x01B\r\n" +
	"\vdestination\"\x9b\x01\n" +
	"\x13ExportToolsResponse\x12\x1d\n" +
	"\ttools_uri\x18\x01 \x01(\tH\x00R\btoolsUri\x12\\\n" +
	"\rtools_content\x18\x02 \x01(\v25.google.cloud.dialogflow.cx.v3beta1.InlineDestinationH\x00R\ftoolsContentB\a\n" +
	"\x05tools\"\x93\x01\n" +
	"\x11UpdateToolRequest\x12A\n" +
	"\x04tool\x18\x01 \x01(\v2(.google.cloud.dialogflow.cx.v3beta1.ToolB\x03\xe0A\x02R\x04tool\x12;\n" +
	"\vupdate_mask\x18\x02 \x01(\v2\x1a.google.protobuf.FieldMaskR\n" +
	"updateMask\"e\n" +
	"\x11DeleteToolRequest\x12:\n" +
	"\x04name\x18\x01 \x01(\tB&\xe0A\x02\xfaA \n" +
	"\x1edialogflow.googleapis.com/ToolR\x04name\x12\x14\n" +
	"\x05force\x18\x02 \x01(\bR\x05force\"\x81*\n" +
	"\x04Tool\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(\tB\x03\xe0A\x02R\vdescription\x12Z\n" +
	"\ropen_api_spec\x18\x04 \x01(\v24.google.cloud.dialogflow.cx.v3beta1.Tool.OpenApiToolH\x00R\vopenApiSpec\x12`\n" +
	"\x0fdata_store_spec\x18\b \x01(\v26.google.cloud.dialogflow.cx.v3beta1.Tool.DataStoreToolH\x00R\rdataStoreSpec\x12_\n" +
	"\x0eextension_spec\x18\v \x01(\v26.google.cloud.dialogflow.cx.v3beta1.Tool.ExtensionToolH\x00R\rextensionSpec\x12\\\n" +
	"\rfunction_spec\x18\r \x01(\v25.google.cloud.dialogflow.cx.v3beta1.Tool.FunctionToolH\x00R\ffunctionSpec\x12_\n" +
	"\x0econnector_spec\x18\x0f \x01(\v26.google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorToolH\x00R\rconnectorSpec\x12S\n" +
	"\ttool_type\x18\f \x01(\x0e21.google.cloud.dialogflow.cx.v3beta1.Tool.ToolTypeB\x03\xe0A\x03R\btoolType\x1a\xfd\x02\n" +
	"\vOpenApiTool\x12&\n" +
	"\vtext_schema\x18\x01 \x01(\tB\x03\xe0A\x02H\x00R\n" +
	"textSchema\x12d\n" +
	"\x0eauthentication\x18\x02 \x01(\v27.google.cloud.dialogflow.cx.v3beta1.Tool.AuthenticationB\x03\xe0A\x01R\x0eauthentication\x12V\n" +
	"\n" +
	"tls_config\x18\x03 \x01(\v22.google.cloud.dialogflow.cx.v3beta1.Tool.TLSConfigB\x03\xe0A\x01R\ttlsConfig\x12~\n" +
	"\x18service_directory_config\x18\x04 \x01(\v2?.google.cloud.dialogflow.cx.v3beta1.Tool.ServiceDirectoryConfigB\x03\xe0A\x01R\x16serviceDirectoryConfigB\b\n" +
	"\x06schema\x1a\x8a\x02\n" +
	"\rDataStoreTool\x12r\n" +
	"\x16data_store_connections\x18\x01 \x03(\v27.google.cloud.dialogflow.cx.v3beta1.DataStoreConnectionB\x03\xe0A\x02R\x14dataStoreConnections\x12s\n" +
	"\x0ffallback_prompt\x18\x03 \x01(\v2E.google.cloud.dialogflow.cx.v3beta1.Tool.DataStoreTool.FallbackPromptB\x03\xe0A\x02R\x0efallbackPrompt\x1a\x10\n" +
	"\x0eFallbackPrompt\x1a(\n" +
	"\rExtensionTool\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x02R\x04name\x1a\x92\x01\n" +
	"\fFunctionTool\x12?\n" +
	"\finput_schema\x18\x01 \x01(\v2\x17.google.protobuf.StructB\x03\xe0A\x01R\vinputSchema\x12A\n" +
	"\routput_schema\x18\x02 \x01(\v2\x17.google.protobuf.StructB\x03\xe0A\x01R\foutputSchema\x1a\xb2\x06\n" +
	"\rConnectorTool\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x02R\x04name\x12\\\n" +
	"\aactions\x18\x02 \x03(\v2=.google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.ActionB\x03\xe0A\x02R\aactions\x12p\n" +
	"\x14end_user_auth_config\x18\x03 \x01(\v2:.google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfigB\x03\xe0A\x01R\x11endUserAuthConfig\x1a\xb7\x04\n" +
	"\x06Action\x122\n" +
	"\x14connection_action_id\x18\x04 \x01(\tH\x00R\x12connectionActionId\x12z\n" +
	"\x10entity_operation\x18\x05 \x01(\v2M.google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.Action.EntityOperationH\x00R\x0fentityOperation\x12&\n" +
	"\finput_fields\x18\x02 \x03(\tB\x03\xe0A\x01R\vinputFields\x12(\n" +
	"\routput_fields\x18\x03 \x03(\tB\x03\xe0A\x01R\foutputFields\x1a\x9b\x02\n" +
	"\x0fEntityOperation\x12 \n" +
	"\tentity_id\x18\x01 \x01(\tB\x03\xe0A\x02R\bentityId\x12~\n" +
	"\toperation\x18\x02 \x01(\x0e2[.google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.Action.EntityOperation.OperationTypeB\x03\xe0A\x02R\toperation\"f\n" +
	"\rOperationType\x12\x1e\n" +
	"\x1aOPERATION_TYPE_UNSPECIFIED\x10\x00\x12\b\n" +
	"\x04LIST\x10\x01\x12\a\n" +
	"\x03GET\x10\x02\x12\n" +
	"\n" +
	"\x06CREATE\x10\x03\x12\n" +
	"\n" +
	"\x06UPDATE\x10\x04\x12\n" +
	"\n" +
	"\x06DELETE\x10\x05B\r\n" +
	"\vaction_spec\x1a\x81\x10\n" +
	"\x0eAuthentication\x12l\n" +
	"\x0eapi_key_config\x18\x01 \x01(\v2D.google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ApiKeyConfigH\x00R\fapiKeyConfig\x12h\n" +
	"\foauth_config\x18\x02 \x01(\v2C.google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.OAuthConfigH\x00R\voauthConfig\x12\x8b\x01\n" +
	"\x19service_agent_auth_config\x18\x03 \x01(\v2N.google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ServiceAgentAuthConfigH\x00R\x16serviceAgentAuthConfig\x12{\n" +
	"\x13bearer_token_config\x18\x04 \x01(\v2I.google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.BearerTokenConfigH\x00R\x11bearerTokenConfig\x12\x91\x01\n" +
	"\x1bservice_account_auth_config\x18\x05 \x01(\v2P.google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ServiceAccountAuthConfigH\x00R\x18serviceAccountAuthConfig\x1a\xb5\x02\n" +
	"\fApiKeyConfig\x12\x1e\n" +
	"\bkey_name\x18\x01 \x01(\tB\x03\xe0A\x02R\akeyName\x12\x1c\n" +
	"\aapi_key\x18\x02 \x01(\tB\x03\xe0A\x01R\x06apiKey\x12n\n" +
	"\x1asecret_version_for_api_key\x18\x04 \x01(\tB2\xe0A\x01\xfaA,\n" +
	"*secretmanager.googleapis.com/SecretVersionR\x16secretVersionForApiKey\x12w\n" +
	"\x10request_location\x18\x03 \x01(\x0e2G.google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.RequestLocationB\x03\xe0A\x02R\x0frequestLocation\x1a\xed\x03\n" +
	"\vOAuthConfig\x12\x81\x01\n" +
	"\x10oauth_grant_type\x18\x01 \x01(\x0e2R.google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.OAuthConfig.OauthGrantTypeB\x03\xe0A\x02R\x0eoauthGrantType\x12 \n" +
	"\tclient_id\x18\x02 \x01(\tB\x03\xe0A\x02R\bclientId\x12(\n" +
	"\rclient_secret\x18\x03 \x01(\tB\x03\xe0A\x01R\fclientSecret\x12z\n" +
	" secret_version_for_client_secret\x18\x06 \x01(\tB2\xe0A\x01\xfaA,\n" +
	"*secretmanager.googleapis.com/SecretVersionR\x1csecretVersionForClientSecret\x12*\n" +
	"\x0etoken_endpoint\x18\x04 \x01(\tB\x03\xe0A\x02R\rtokenEndpoint\x12\x1b\n" +
	"\x06scopes\x18\x05 \x03(\tB\x03\xe0A\x01R\x06scopes\"I\n" +
	"\x0eOauthGrantType\x12 \n" +
	"\x1cOAUTH_GRANT_TYPE_UNSPECIFIED\x10\x00\x12\x15\n" +
	"\x11CLIENT_CREDENTIAL\x10\x01\x1a\x85\x02\n" +
	"\x16ServiceAgentAuthConfig\x12\x92\x01\n" +
	"\x12service_agent_auth\x18\x01 \x01(\x0e2_.google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ServiceAgentAuthConfig.ServiceAgentAuthB\x03\xe0A\x01R\x10serviceAgentAuth\"V\n" +
	"\x10ServiceAgentAuth\x12\"\n" +
	"\x1eSERVICE_AGENT_AUTH_UNSPECIFIED\x10\x00\x12\f\n" +
	"\bID_TOKEN\x10\x01\x12\x10\n" +
	"\fACCESS_TOKEN\x10\x02\x1a\x9b\x01\n" +
	"\x11BearerTokenConfig\x12\x19\n" +
	"\x05token\x18\x01 \x01(\tB\x03\xe0A\x01R\x05token\x12k\n" +
	"\x18secret_version_for_token\x18\x02 \x01(\tB2\xe0A\x01\xfaA,\n" +
	"*secretmanager.googleapis.com/SecretVersionR\x15secretVersionForToken\x1aH\n" +
	"\x18ServiceAccountAuthConfig\x12,\n" +
	"\x0fservice_account\x18\x01 \x01(\tB\x03\xe0A\x02R\x0eserviceAccount\"Q\n" +
	"\x0fRequestLocation\x12 \n" +
	"\x1cREQUEST_LOCATION_UNSPECIFIED\x10\x00\x12\n" +
	"\n" +
	"\x06HEADER\x10\x01\x12\x10\n" +
	"\fQUERY_STRING\x10\x02B\r\n" +
	"\vauth_config\x1a\xb1\x01\n" +
	"\tTLSConfig\x12Y\n" +
	"\bca_certs\x18\x01 \x03(\v29.google.cloud.dialogflow.cx.v3beta1.Tool.TLSConfig.CACertB\x03\xe0A\x02R\acaCerts\x1aI\n" +
	"\x06CACert\x12&\n" +
	"\fdisplay_name\x18\x01 \x01(\tB\x03\xe0A\x02R\vdisplayName\x12\x17\n" +
	"\x04cert\x18\x02 \x01(\fB\x03\xe0A\x02R\x04cert\x1ac\n" +
	"\x16ServiceDirectoryConfig\x12I\n" +
	"\aservice\x18\x01 \x01(\tB/\xe0A\x02\xfaA)\n" +
	"'servicedirectory.googleapis.com/ServiceR\aservice\x1a\xfb\x03\n" +
	"\x11EndUserAuthConfig\x12\x88\x01\n" +
	"\x17oauth2_auth_code_config\x18\x02 \x01(\v2O.google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfig.Oauth2AuthCodeConfigH\x00R\x14oauth2AuthCodeConfig\x12\x8b\x01\n" +
	"\x18oauth2_jwt_bearer_config\x18\x03 \x01(\v2P.google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfig.Oauth2JwtBearerConfigH\x00R\x15oauth2JwtBearerConfig\x1a<\n" +
	"\x14Oauth2AuthCodeConfig\x12$\n" +
	"\voauth_token\x18\x01 \x01(\tB\x03\xe0A\x02R\n" +
	"oauthToken\x1aw\n" +
	"\x15Oauth2JwtBearerConfig\x12\x1b\n" +
	"\x06issuer\x18\x01 \x01(\tB\x03\xe0A\x02R\x06issuer\x12\x1d\n" +
	"\asubject\x18\x02 \x01(\tB\x03\xe0A\x02R\asubject\x12\"\n" +
	"\n" +
	"client_key\x18\x03 \x01(\tB\x03\xe0A\x02R\tclientKeyB\x16\n" +
	"\x14end_user_auth_config\"L\n" +
	"\bToolType\x12\x19\n" +
	"\x15TOOL_TYPE_UNSPECIFIED\x10\x00\x12\x13\n" +
	"\x0fCUSTOMIZED_TOOL\x10\x01\x12\x10\n" +
	"\fBUILTIN_TOOL\x10\x02:h\xeaAe\n" +
	"\x1edialogflow.googleapis.com/Tool\x12Cprojects/{project}/locations/{location}/agents/{agent}/tools/{tool}B\x0f\n" +
	"\rspecification\"\xa6\x01\n" +
	"\x17ListToolVersionsRequest\x12E\n" +
	"\x06parent\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\x12%dialogflow.googleapis.com/ToolVersionR\x06parent\x12 \n" +
	"\tpage_size\x18\x02 \x01(\x05B\x03\xe0A\x01R\bpageSize\x12\"\n" +
	"\n" +
	"page_token\x18\x03 \x01(\tB\x03\xe0A\x01R\tpageToken\"\x98\x01\n" +
	"\x18ListToolVersionsResponse\x12T\n" +
	"\rtool_versions\x18\x01 \x03(\v2/.google.cloud.dialogflow.cx.v3beta1.ToolVersionR\ftoolVersions\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xba\x01\n" +
	"\x18CreateToolVersionRequest\x12E\n" +
	"\x06parent\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\x12%dialogflow.googleapis.com/ToolVersionR\x06parent\x12W\n" +
	"\ftool_version\x18\x02 \x01(\v2/.google.cloud.dialogflow.cx.v3beta1.ToolVersionB\x03\xe0A\x02R\vtoolVersion\"Z\n" +
	"\x15GetToolVersionRequest\x12A\n" +
	"\x04name\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/ToolVersionR\x04name\"x\n" +
	"\x18DeleteToolVersionRequest\x12A\n" +
	"\x04name\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/ToolVersionR\x04name\x12\x19\n" +
	"\x05force\x18\x02 \x01(\bB\x03\xe0A\x01R\x05force\"^\n" +
	"\x19RestoreToolVersionRequest\x12A\n" +
	"\x04name\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/ToolVersionR\x04name\"Z\n" +
	"\x1aRestoreToolVersionResponse\x12<\n" +
	"\x04tool\x18\x02 \x01(\v2(.google.cloud.dialogflow.cx.v3beta1.ToolR\x04tool\"\xb6\x03\n" +
	"\vToolVersion\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\bR\x04name\x12&\n" +
	"\fdisplay_name\x18\x02 \x01(\tB\x03\xe0A\x02R\vdisplayName\x12A\n" +
	"\x04tool\x18\x03 \x01(\v2(.google.cloud.dialogflow.cx.v3beta1.ToolB\x03\xe0A\x02R\x04tool\x12@\n" +
	"\vcreate_time\x18\x04 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\x12@\n" +
	"\vupdate_time\x18\x05 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"updateTime:\x9e\x01\xeaA\x9a\x01\n" +
	"%dialogflow.googleapis.com/ToolVersion\x12Vprojects/{project}/locations/{location}/agents/{agent}/tools/{tool}/versions/{version}*\ftoolVersions2\vtoolVersion\"\x15\n" +
	"\x13ExportToolsMetadata2\xf0\x12\n" +
	"\x05Tools\x12\xc2\x01\n" +
	"\n" +
	"CreateTool\x125.google.cloud.dialogflow.cx.v3beta1.CreateToolRequest\x1a(.google.cloud.dialogflow.cx.v3beta1.Tool\"S\xdaA\vparent,tool\x82\xd3\xe4\x93\x02?:\x04tool\"7/v3beta1/{parent=projects/*/locations/*/agents/*}/tools\x12\xc2\x01\n" +
	"\tListTools\x124.google.cloud.dialogflow.cx.v3beta1.ListToolsRequest\x1a5.google.cloud.dialogflow.cx.v3beta1.ListToolsResponse\"H\xdaA\x06parent\x82\xd3\xe4\x93\x029\x127/v3beta1/{parent=projects/*/locations/*/agents/*}/tools\x12\xdc\x01\n" +
	"\vExportTools\x126.google.cloud.dialogflow.cx.v3beta1.ExportToolsRequest\x1a\x1d.google.longrunning.Operation\"v\xcaA*\n" +
	"\x13ExportToolsResponse\x12\x13ExportToolsMetadata\x82\xd3\xe4\x93\x02C:\x01*\">/v3beta1/{parent=projects/*/locations/*/agents/*}/tools:export\x12\xaf\x01\n" +
	"\aGetTool\x122.google.cloud.dialogflow.cx.v3beta1.GetToolRequest\x1a(.google.cloud.dialogflow.cx.v3beta1.Tool\"F\xdaA\x04name\x82\xd3\xe4\x93\x029\x127/v3beta1/{name=projects/*/locations/*/agents/*/tools/*}\x12\xcc\x01\n" +
	"\n" +
	"UpdateTool\x125.google.cloud.dialogflow.cx.v3beta1.UpdateToolRequest\x1a(.google.cloud.dialogflow.cx.v3beta1.Tool\"]\xdaA\x10tool,update_mask\x82\xd3\xe4\x93\x02D:\x04tool2</v3beta1/{tool.name=projects/*/locations/*/agents/*/tools/*}\x12\xa3\x01\n" +
	"\n" +
	"DeleteTool\x125.google.cloud.dialogflow.cx.v3beta1.DeleteToolRequest\x1a\x16.google.protobuf.Empty\"F\xdaA\x04name\x82\xd3\xe4\x93\x029*7/v3beta1/{name=projects/*/locations/*/agents/*/tools/*}\x12\xe2\x01\n" +
	"\x10ListToolVersions\x12;.google.cloud.dialogflow.cx.v3beta1.ListToolVersionsRequest\x1a<.google.cloud.dialogflow.cx.v3beta1.ListToolVersionsResponse\"S\xdaA\x06parent\x82\xd3\xe4\x93\x02D\x12B/v3beta1/{parent=projects/*/locations/*/agents/*/tools/*}/versions\x12\xf2\x01\n" +
	"\x11CreateToolVersion\x12<.google.cloud.dialogflow.cx.v3beta1.CreateToolVersionRequest\x1a/.google.cloud.dialogflow.cx.v3beta1.ToolVersion\"n\xdaA\x13parent,tool_version\x82\xd3\xe4\x93\x02R:\ftool_version\"B/v3beta1/{parent=projects/*/locations/*/agents/*/tools/*}/versions\x12\xcf\x01\n" +
	"\x0eGetToolVersion\x129.google.cloud.dialogflow.cx.v3beta1.GetToolVersionRequest\x1a/.google.cloud.dialogflow.cx.v3beta1.ToolVersion\"Q\xdaA\x04name\x82\xd3\xe4\x93\x02D\x12B/v3beta1/{name=projects/*/locations/*/agents/*/tools/*/versions/*}\x12\xbc\x01\n" +
	"\x11DeleteToolVersion\x12<.google.cloud.dialogflow.cx.v3beta1.DeleteToolVersionRequest\x1a\x16.google.protobuf.Empty\"Q\xdaA\x04name\x82\xd3\xe4\x93\x02D*B/v3beta1/{name=projects/*/locations/*/agents/*/tools/*/versions/*}\x12\xf1\x01\n" +
	"\x12RestoreToolVersion\x12=.google.cloud.dialogflow.cx.v3beta1.RestoreToolVersionRequest\x1a>.google.cloud.dialogflow.cx.v3beta1.RestoreToolVersionResponse\"\\\xdaA\x04name\x82\xd3\xe4\x93\x02O:\x01*\"J/v3beta1/{name=projects/*/locations/*/agents/*/tools/*/versions/*}:restore\x1ax\xcaA\x19dialogflow.googleapis.com\xd2AYhttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/dialogflowB\x97\x01\n" +
	"&com.google.cloud.dialogflow.cx.v3beta1B\tToolProtoP\x01Z6cloud.google.com/go/dialogflow/cx/apiv3beta1/cxpb;cxpb\xa2\x02\x02DF\xaa\x02\"Google.Cloud.Dialogflow.Cx.V3Beta1b\x06proto3"

var (
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescOnce sync.Once
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescData []byte
)

func file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescGZIP() []byte {
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescOnce.Do(func() {
		file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDesc), len(file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDesc)))
	})
	return file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDescData
}

var file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes = make([]protoimpl.EnumInfo, 6)
var file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes = make([]protoimpl.MessageInfo, 38)
var file_google_cloud_dialogflow_cx_v3beta1_tool_proto_goTypes = []any{
	(ExportToolsRequest_DataFormat)(0),                               // 0: google.cloud.dialogflow.cx.v3beta1.ExportToolsRequest.DataFormat
	(Tool_ToolType)(0),                                               // 1: google.cloud.dialogflow.cx.v3beta1.Tool.ToolType
	(Tool_ConnectorTool_Action_EntityOperation_OperationType)(0),     // 2: google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.Action.EntityOperation.OperationType
	(Tool_Authentication_RequestLocation)(0),                         // 3: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.RequestLocation
	(Tool_Authentication_OAuthConfig_OauthGrantType)(0),              // 4: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.OAuthConfig.OauthGrantType
	(Tool_Authentication_ServiceAgentAuthConfig_ServiceAgentAuth)(0), // 5: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ServiceAgentAuthConfig.ServiceAgentAuth
	(*CreateToolRequest)(nil),                                        // 6: google.cloud.dialogflow.cx.v3beta1.CreateToolRequest
	(*ListToolsRequest)(nil),                                         // 7: google.cloud.dialogflow.cx.v3beta1.ListToolsRequest
	(*ListToolsResponse)(nil),                                        // 8: google.cloud.dialogflow.cx.v3beta1.ListToolsResponse
	(*GetToolRequest)(nil),                                           // 9: google.cloud.dialogflow.cx.v3beta1.GetToolRequest
	(*ExportToolsRequest)(nil),                                       // 10: google.cloud.dialogflow.cx.v3beta1.ExportToolsRequest
	(*ExportToolsResponse)(nil),                                      // 11: google.cloud.dialogflow.cx.v3beta1.ExportToolsResponse
	(*UpdateToolRequest)(nil),                                        // 12: google.cloud.dialogflow.cx.v3beta1.UpdateToolRequest
	(*DeleteToolRequest)(nil),                                        // 13: google.cloud.dialogflow.cx.v3beta1.DeleteToolRequest
	(*Tool)(nil),                                                     // 14: google.cloud.dialogflow.cx.v3beta1.Tool
	(*ListToolVersionsRequest)(nil),                                  // 15: google.cloud.dialogflow.cx.v3beta1.ListToolVersionsRequest
	(*ListToolVersionsResponse)(nil),                                 // 16: google.cloud.dialogflow.cx.v3beta1.ListToolVersionsResponse
	(*CreateToolVersionRequest)(nil),                                 // 17: google.cloud.dialogflow.cx.v3beta1.CreateToolVersionRequest
	(*GetToolVersionRequest)(nil),                                    // 18: google.cloud.dialogflow.cx.v3beta1.GetToolVersionRequest
	(*DeleteToolVersionRequest)(nil),                                 // 19: google.cloud.dialogflow.cx.v3beta1.DeleteToolVersionRequest
	(*RestoreToolVersionRequest)(nil),                                // 20: google.cloud.dialogflow.cx.v3beta1.RestoreToolVersionRequest
	(*RestoreToolVersionResponse)(nil),                               // 21: google.cloud.dialogflow.cx.v3beta1.RestoreToolVersionResponse
	(*ToolVersion)(nil),                                              // 22: google.cloud.dialogflow.cx.v3beta1.ToolVersion
	(*ExportToolsMetadata)(nil),                                      // 23: google.cloud.dialogflow.cx.v3beta1.ExportToolsMetadata
	(*Tool_OpenApiTool)(nil),                                         // 24: google.cloud.dialogflow.cx.v3beta1.Tool.OpenApiTool
	(*Tool_DataStoreTool)(nil),                                       // 25: google.cloud.dialogflow.cx.v3beta1.Tool.DataStoreTool
	(*Tool_ExtensionTool)(nil),                                       // 26: google.cloud.dialogflow.cx.v3beta1.Tool.ExtensionTool
	(*Tool_FunctionTool)(nil),                                        // 27: google.cloud.dialogflow.cx.v3beta1.Tool.FunctionTool
	(*Tool_ConnectorTool)(nil),                                       // 28: google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool
	(*Tool_Authentication)(nil),                                      // 29: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication
	(*Tool_TLSConfig)(nil),                                           // 30: google.cloud.dialogflow.cx.v3beta1.Tool.TLSConfig
	(*Tool_ServiceDirectoryConfig)(nil),                              // 31: google.cloud.dialogflow.cx.v3beta1.Tool.ServiceDirectoryConfig
	(*Tool_EndUserAuthConfig)(nil),                                   // 32: google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfig
	(*Tool_DataStoreTool_FallbackPrompt)(nil),                        // 33: google.cloud.dialogflow.cx.v3beta1.Tool.DataStoreTool.FallbackPrompt
	(*Tool_ConnectorTool_Action)(nil),                                // 34: google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.Action
	(*Tool_ConnectorTool_Action_EntityOperation)(nil),                // 35: google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.Action.EntityOperation
	(*Tool_Authentication_ApiKeyConfig)(nil),                         // 36: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ApiKeyConfig
	(*Tool_Authentication_OAuthConfig)(nil),                          // 37: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.OAuthConfig
	(*Tool_Authentication_ServiceAgentAuthConfig)(nil),               // 38: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ServiceAgentAuthConfig
	(*Tool_Authentication_BearerTokenConfig)(nil),                    // 39: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.BearerTokenConfig
	(*Tool_Authentication_ServiceAccountAuthConfig)(nil),             // 40: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ServiceAccountAuthConfig
	(*Tool_TLSConfig_CACert)(nil),                                    // 41: google.cloud.dialogflow.cx.v3beta1.Tool.TLSConfig.CACert
	(*Tool_EndUserAuthConfig_Oauth2AuthCodeConfig)(nil),              // 42: google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfig.Oauth2AuthCodeConfig
	(*Tool_EndUserAuthConfig_Oauth2JwtBearerConfig)(nil),             // 43: google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfig.Oauth2JwtBearerConfig
	(*InlineDestination)(nil),                                        // 44: google.cloud.dialogflow.cx.v3beta1.InlineDestination
	(*fieldmaskpb.FieldMask)(nil),                                    // 45: google.protobuf.FieldMask
	(*timestamppb.Timestamp)(nil),                                    // 46: google.protobuf.Timestamp
	(*DataStoreConnection)(nil),                                      // 47: google.cloud.dialogflow.cx.v3beta1.DataStoreConnection
	(*structpb.Struct)(nil),                                          // 48: google.protobuf.Struct
	(*longrunningpb.Operation)(nil),                                  // 49: google.longrunning.Operation
	(*emptypb.Empty)(nil),                                            // 50: google.protobuf.Empty
}
var file_google_cloud_dialogflow_cx_v3beta1_tool_proto_depIdxs = []int32{
	14, // 0: google.cloud.dialogflow.cx.v3beta1.CreateToolRequest.tool:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool
	14, // 1: google.cloud.dialogflow.cx.v3beta1.ListToolsResponse.tools:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool
	0,  // 2: google.cloud.dialogflow.cx.v3beta1.ExportToolsRequest.data_format:type_name -> google.cloud.dialogflow.cx.v3beta1.ExportToolsRequest.DataFormat
	44, // 3: google.cloud.dialogflow.cx.v3beta1.ExportToolsResponse.tools_content:type_name -> google.cloud.dialogflow.cx.v3beta1.InlineDestination
	14, // 4: google.cloud.dialogflow.cx.v3beta1.UpdateToolRequest.tool:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool
	45, // 5: google.cloud.dialogflow.cx.v3beta1.UpdateToolRequest.update_mask:type_name -> google.protobuf.FieldMask
	24, // 6: google.cloud.dialogflow.cx.v3beta1.Tool.open_api_spec:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.OpenApiTool
	25, // 7: google.cloud.dialogflow.cx.v3beta1.Tool.data_store_spec:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.DataStoreTool
	26, // 8: google.cloud.dialogflow.cx.v3beta1.Tool.extension_spec:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.ExtensionTool
	27, // 9: google.cloud.dialogflow.cx.v3beta1.Tool.function_spec:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.FunctionTool
	28, // 10: google.cloud.dialogflow.cx.v3beta1.Tool.connector_spec:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool
	1,  // 11: google.cloud.dialogflow.cx.v3beta1.Tool.tool_type:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.ToolType
	22, // 12: google.cloud.dialogflow.cx.v3beta1.ListToolVersionsResponse.tool_versions:type_name -> google.cloud.dialogflow.cx.v3beta1.ToolVersion
	22, // 13: google.cloud.dialogflow.cx.v3beta1.CreateToolVersionRequest.tool_version:type_name -> google.cloud.dialogflow.cx.v3beta1.ToolVersion
	14, // 14: google.cloud.dialogflow.cx.v3beta1.RestoreToolVersionResponse.tool:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool
	14, // 15: google.cloud.dialogflow.cx.v3beta1.ToolVersion.tool:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool
	46, // 16: google.cloud.dialogflow.cx.v3beta1.ToolVersion.create_time:type_name -> google.protobuf.Timestamp
	46, // 17: google.cloud.dialogflow.cx.v3beta1.ToolVersion.update_time:type_name -> google.protobuf.Timestamp
	29, // 18: google.cloud.dialogflow.cx.v3beta1.Tool.OpenApiTool.authentication:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.Authentication
	30, // 19: google.cloud.dialogflow.cx.v3beta1.Tool.OpenApiTool.tls_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.TLSConfig
	31, // 20: google.cloud.dialogflow.cx.v3beta1.Tool.OpenApiTool.service_directory_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.ServiceDirectoryConfig
	47, // 21: google.cloud.dialogflow.cx.v3beta1.Tool.DataStoreTool.data_store_connections:type_name -> google.cloud.dialogflow.cx.v3beta1.DataStoreConnection
	33, // 22: google.cloud.dialogflow.cx.v3beta1.Tool.DataStoreTool.fallback_prompt:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.DataStoreTool.FallbackPrompt
	48, // 23: google.cloud.dialogflow.cx.v3beta1.Tool.FunctionTool.input_schema:type_name -> google.protobuf.Struct
	48, // 24: google.cloud.dialogflow.cx.v3beta1.Tool.FunctionTool.output_schema:type_name -> google.protobuf.Struct
	34, // 25: google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.actions:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.Action
	32, // 26: google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.end_user_auth_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfig
	36, // 27: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.api_key_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ApiKeyConfig
	37, // 28: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.oauth_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.OAuthConfig
	38, // 29: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.service_agent_auth_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ServiceAgentAuthConfig
	39, // 30: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.bearer_token_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.BearerTokenConfig
	40, // 31: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.service_account_auth_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ServiceAccountAuthConfig
	41, // 32: google.cloud.dialogflow.cx.v3beta1.Tool.TLSConfig.ca_certs:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.TLSConfig.CACert
	42, // 33: google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfig.oauth2_auth_code_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfig.Oauth2AuthCodeConfig
	43, // 34: google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfig.oauth2_jwt_bearer_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.EndUserAuthConfig.Oauth2JwtBearerConfig
	35, // 35: google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.Action.entity_operation:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.Action.EntityOperation
	2,  // 36: google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.Action.EntityOperation.operation:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.ConnectorTool.Action.EntityOperation.OperationType
	3,  // 37: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ApiKeyConfig.request_location:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.RequestLocation
	4,  // 38: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.OAuthConfig.oauth_grant_type:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.OAuthConfig.OauthGrantType
	5,  // 39: google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ServiceAgentAuthConfig.service_agent_auth:type_name -> google.cloud.dialogflow.cx.v3beta1.Tool.Authentication.ServiceAgentAuthConfig.ServiceAgentAuth
	6,  // 40: google.cloud.dialogflow.cx.v3beta1.Tools.CreateTool:input_type -> google.cloud.dialogflow.cx.v3beta1.CreateToolRequest
	7,  // 41: google.cloud.dialogflow.cx.v3beta1.Tools.ListTools:input_type -> google.cloud.dialogflow.cx.v3beta1.ListToolsRequest
	10, // 42: google.cloud.dialogflow.cx.v3beta1.Tools.ExportTools:input_type -> google.cloud.dialogflow.cx.v3beta1.ExportToolsRequest
	9,  // 43: google.cloud.dialogflow.cx.v3beta1.Tools.GetTool:input_type -> google.cloud.dialogflow.cx.v3beta1.GetToolRequest
	12, // 44: google.cloud.dialogflow.cx.v3beta1.Tools.UpdateTool:input_type -> google.cloud.dialogflow.cx.v3beta1.UpdateToolRequest
	13, // 45: google.cloud.dialogflow.cx.v3beta1.Tools.DeleteTool:input_type -> google.cloud.dialogflow.cx.v3beta1.DeleteToolRequest
	15, // 46: google.cloud.dialogflow.cx.v3beta1.Tools.ListToolVersions:input_type -> google.cloud.dialogflow.cx.v3beta1.ListToolVersionsRequest
	17, // 47: google.cloud.dialogflow.cx.v3beta1.Tools.CreateToolVersion:input_type -> google.cloud.dialogflow.cx.v3beta1.CreateToolVersionRequest
	18, // 48: google.cloud.dialogflow.cx.v3beta1.Tools.GetToolVersion:input_type -> google.cloud.dialogflow.cx.v3beta1.GetToolVersionRequest
	19, // 49: google.cloud.dialogflow.cx.v3beta1.Tools.DeleteToolVersion:input_type -> google.cloud.dialogflow.cx.v3beta1.DeleteToolVersionRequest
	20, // 50: google.cloud.dialogflow.cx.v3beta1.Tools.RestoreToolVersion:input_type -> google.cloud.dialogflow.cx.v3beta1.RestoreToolVersionRequest
	14, // 51: google.cloud.dialogflow.cx.v3beta1.Tools.CreateTool:output_type -> google.cloud.dialogflow.cx.v3beta1.Tool
	8,  // 52: google.cloud.dialogflow.cx.v3beta1.Tools.ListTools:output_type -> google.cloud.dialogflow.cx.v3beta1.ListToolsResponse
	49, // 53: google.cloud.dialogflow.cx.v3beta1.Tools.ExportTools:output_type -> google.longrunning.Operation
	14, // 54: google.cloud.dialogflow.cx.v3beta1.Tools.GetTool:output_type -> google.cloud.dialogflow.cx.v3beta1.Tool
	14, // 55: google.cloud.dialogflow.cx.v3beta1.Tools.UpdateTool:output_type -> google.cloud.dialogflow.cx.v3beta1.Tool
	50, // 56: google.cloud.dialogflow.cx.v3beta1.Tools.DeleteTool:output_type -> google.protobuf.Empty
	16, // 57: google.cloud.dialogflow.cx.v3beta1.Tools.ListToolVersions:output_type -> google.cloud.dialogflow.cx.v3beta1.ListToolVersionsResponse
	22, // 58: google.cloud.dialogflow.cx.v3beta1.Tools.CreateToolVersion:output_type -> google.cloud.dialogflow.cx.v3beta1.ToolVersion
	22, // 59: google.cloud.dialogflow.cx.v3beta1.Tools.GetToolVersion:output_type -> google.cloud.dialogflow.cx.v3beta1.ToolVersion
	50, // 60: google.cloud.dialogflow.cx.v3beta1.Tools.DeleteToolVersion:output_type -> google.protobuf.Empty
	21, // 61: google.cloud.dialogflow.cx.v3beta1.Tools.RestoreToolVersion:output_type -> google.cloud.dialogflow.cx.v3beta1.RestoreToolVersionResponse
	51, // [51:62] is the sub-list for method output_type
	40, // [40:51] is the sub-list for method input_type
	40, // [40:40] is the sub-list for extension type_name
	40, // [40:40] is the sub-list for extension extendee
	0,  // [0:40] is the sub-list for field type_name
}

func init() { file_google_cloud_dialogflow_cx_v3beta1_tool_proto_init() }
func file_google_cloud_dialogflow_cx_v3beta1_tool_proto_init() {
	if File_google_cloud_dialogflow_cx_v3beta1_tool_proto != nil {
		return
	}
	file_google_cloud_dialogflow_cx_v3beta1_data_store_connection_proto_init()
	file_google_cloud_dialogflow_cx_v3beta1_inline_proto_init()
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[4].OneofWrappers = []any{
		(*ExportToolsRequest_ToolsUri)(nil),
		(*ExportToolsRequest_ToolsContentInline)(nil),
	}
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[5].OneofWrappers = []any{
		(*ExportToolsResponse_ToolsUri)(nil),
		(*ExportToolsResponse_ToolsContent)(nil),
	}
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[8].OneofWrappers = []any{
		(*Tool_OpenApiSpec)(nil),
		(*Tool_DataStoreSpec)(nil),
		(*Tool_ExtensionSpec)(nil),
		(*Tool_FunctionSpec)(nil),
		(*Tool_ConnectorSpec)(nil),
	}
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[18].OneofWrappers = []any{
		(*Tool_OpenApiTool_TextSchema)(nil),
	}
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[23].OneofWrappers = []any{
		(*Tool_Authentication_ApiKeyConfig_)(nil),
		(*Tool_Authentication_OauthConfig)(nil),
		(*Tool_Authentication_ServiceAgentAuthConfig_)(nil),
		(*Tool_Authentication_BearerTokenConfig_)(nil),
		(*Tool_Authentication_ServiceAccountAuthConfig_)(nil),
	}
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[26].OneofWrappers = []any{
		(*Tool_EndUserAuthConfig_Oauth2AuthCodeConfig_)(nil),
		(*Tool_EndUserAuthConfig_Oauth2JwtBearerConfig_)(nil),
	}
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes[28].OneofWrappers = []any{
		(*Tool_ConnectorTool_Action_ConnectionActionId)(nil),
		(*Tool_ConnectorTool_Action_EntityOperation_)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDesc), len(file_google_cloud_dialogflow_cx_v3beta1_tool_proto_rawDesc)),
			NumEnums:      6,
			NumMessages:   38,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_google_cloud_dialogflow_cx_v3beta1_tool_proto_goTypes,
		DependencyIndexes: file_google_cloud_dialogflow_cx_v3beta1_tool_proto_depIdxs,
		EnumInfos:         file_google_cloud_dialogflow_cx_v3beta1_tool_proto_enumTypes,
		MessageInfos:      file_google_cloud_dialogflow_cx_v3beta1_tool_proto_msgTypes,
	}.Build()
	File_google_cloud_dialogflow_cx_v3beta1_tool_proto = out.File
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_goTypes = nil
	file_google_cloud_dialogflow_cx_v3beta1_tool_proto_depIdxs = nil
}
