// 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/v2/participant.proto

package dialogflowpb

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

	_ "google.golang.org/genproto/googleapis/api/annotations"
	status "google.golang.org/genproto/googleapis/rpc/status"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	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)
)

// Response reason from datastore which indicates data serving status or
// answer quality degradation.
type DatastoreResponseReason int32

const (
	// Default value.
	DatastoreResponseReason_DATASTORE_RESPONSE_REASON_UNSPECIFIED DatastoreResponseReason = 0
	// No specific response reason from datastore.
	DatastoreResponseReason_NONE DatastoreResponseReason = 1
	// Search is blocked due to out of quota.
	DatastoreResponseReason_SEARCH_OUT_OF_QUOTA DatastoreResponseReason = 2
	// Search returns empty results.
	DatastoreResponseReason_SEARCH_EMPTY_RESULTS DatastoreResponseReason = 3
	// Generative AI is disabled.
	DatastoreResponseReason_ANSWER_GENERATION_GEN_AI_DISABLED DatastoreResponseReason = 4
	// Answer generation is blocked due to out of quota.
	DatastoreResponseReason_ANSWER_GENERATION_OUT_OF_QUOTA DatastoreResponseReason = 5
	// Answer generation encounters an error.
	DatastoreResponseReason_ANSWER_GENERATION_ERROR DatastoreResponseReason = 6
	// Answer generation does not have enough information to generate answer.
	DatastoreResponseReason_ANSWER_GENERATION_NOT_ENOUGH_INFO DatastoreResponseReason = 7
	// Answer generation is blocked by RAI (Responsible AI) failure.
	DatastoreResponseReason_ANSWER_GENERATION_RAI_FAILED DatastoreResponseReason = 8
	// Answer generation is not grounded on reliable sources.
	DatastoreResponseReason_ANSWER_GENERATION_NOT_GROUNDED DatastoreResponseReason = 9
)

// Enum value maps for DatastoreResponseReason.
var (
	DatastoreResponseReason_name = map[int32]string{
		0: "DATASTORE_RESPONSE_REASON_UNSPECIFIED",
		1: "NONE",
		2: "SEARCH_OUT_OF_QUOTA",
		3: "SEARCH_EMPTY_RESULTS",
		4: "ANSWER_GENERATION_GEN_AI_DISABLED",
		5: "ANSWER_GENERATION_OUT_OF_QUOTA",
		6: "ANSWER_GENERATION_ERROR",
		7: "ANSWER_GENERATION_NOT_ENOUGH_INFO",
		8: "ANSWER_GENERATION_RAI_FAILED",
		9: "ANSWER_GENERATION_NOT_GROUNDED",
	}
	DatastoreResponseReason_value = map[string]int32{
		"DATASTORE_RESPONSE_REASON_UNSPECIFIED": 0,
		"NONE":                                  1,
		"SEARCH_OUT_OF_QUOTA":                   2,
		"SEARCH_EMPTY_RESULTS":                  3,
		"ANSWER_GENERATION_GEN_AI_DISABLED":     4,
		"ANSWER_GENERATION_OUT_OF_QUOTA":        5,
		"ANSWER_GENERATION_ERROR":               6,
		"ANSWER_GENERATION_NOT_ENOUGH_INFO":     7,
		"ANSWER_GENERATION_RAI_FAILED":          8,
		"ANSWER_GENERATION_NOT_GROUNDED":        9,
	}
)

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

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

func (DatastoreResponseReason) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_v2_participant_proto_enumTypes[0].Descriptor()
}

func (DatastoreResponseReason) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_v2_participant_proto_enumTypes[0]
}

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

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

// Enumeration of the roles a participant can play in a conversation.
type Participant_Role int32

const (
	// Participant role not set.
	Participant_ROLE_UNSPECIFIED Participant_Role = 0
	// Participant is a human agent.
	Participant_HUMAN_AGENT Participant_Role = 1
	// Participant is an automated agent, such as a Dialogflow agent.
	Participant_AUTOMATED_AGENT Participant_Role = 2
	// Participant is an end user that has called or chatted with
	// Dialogflow services.
	Participant_END_USER Participant_Role = 3
)

// Enum value maps for Participant_Role.
var (
	Participant_Role_name = map[int32]string{
		0: "ROLE_UNSPECIFIED",
		1: "HUMAN_AGENT",
		2: "AUTOMATED_AGENT",
		3: "END_USER",
	}
	Participant_Role_value = map[string]int32{
		"ROLE_UNSPECIFIED": 0,
		"HUMAN_AGENT":      1,
		"AUTOMATED_AGENT":  2,
		"END_USER":         3,
	}
)

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

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

func (Participant_Role) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_v2_participant_proto_enumTypes[1].Descriptor()
}

func (Participant_Role) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_v2_participant_proto_enumTypes[1]
}

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

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

// Enumeration of the Agent Desktop Source when using prebuilt Agent
// Assist integration modules.
type Participant_AgentDesktopSource int32

const (
	// Agent Desktop Source is not specified.
	Participant_AGENT_DESKTOP_SOURCE_UNSPECIFIED Participant_AgentDesktopSource = 0
	// Agent Desktop Source is Live Person.
	Participant_LIVE_PERSON Participant_AgentDesktopSource = 1
	// Agent Desktop Source is Genesys Cloud.
	Participant_GENESYS_CLOUD Participant_AgentDesktopSource = 2
	// Agent Desktop Source is Twilio.
	Participant_TWILIO Participant_AgentDesktopSource = 3
	// Agent Desktop Source is Salesforce.
	Participant_SALESFORCE Participant_AgentDesktopSource = 4
	// UI Modules are in use but the desktop is either not currently released or
	// setting this field to the applicable desktop.
	Participant_OTHER Participant_AgentDesktopSource = 8
)

// Enum value maps for Participant_AgentDesktopSource.
var (
	Participant_AgentDesktopSource_name = map[int32]string{
		0: "AGENT_DESKTOP_SOURCE_UNSPECIFIED",
		1: "LIVE_PERSON",
		2: "GENESYS_CLOUD",
		3: "TWILIO",
		4: "SALESFORCE",
		8: "OTHER",
	}
	Participant_AgentDesktopSource_value = map[string]int32{
		"AGENT_DESKTOP_SOURCE_UNSPECIFIED": 0,
		"LIVE_PERSON":                      1,
		"GENESYS_CLOUD":                    2,
		"TWILIO":                           3,
		"SALESFORCE":                       4,
		"OTHER":                            8,
	}
)

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

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

func (Participant_AgentDesktopSource) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_v2_participant_proto_enumTypes[2].Descriptor()
}

func (Participant_AgentDesktopSource) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_v2_participant_proto_enumTypes[2]
}

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

// Deprecated: Use Participant_AgentDesktopSource.Descriptor instead.
func (Participant_AgentDesktopSource) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{0, 1}
}

// Represents different automated agent reply types.
type AutomatedAgentReply_AutomatedAgentReplyType int32

const (
	// Not specified. This should never happen.
	AutomatedAgentReply_AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED AutomatedAgentReply_AutomatedAgentReplyType = 0
	// Partial reply. e.g. Aggregated responses in a `Fulfillment` that enables
	// `return_partial_response` can be returned as partial reply.
	// WARNING: partial reply is not eligible for barge-in.
	AutomatedAgentReply_PARTIAL AutomatedAgentReply_AutomatedAgentReplyType = 1
	// Final reply.
	AutomatedAgentReply_FINAL AutomatedAgentReply_AutomatedAgentReplyType = 2
)

// Enum value maps for AutomatedAgentReply_AutomatedAgentReplyType.
var (
	AutomatedAgentReply_AutomatedAgentReplyType_name = map[int32]string{
		0: "AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED",
		1: "PARTIAL",
		2: "FINAL",
	}
	AutomatedAgentReply_AutomatedAgentReplyType_value = map[string]int32{
		"AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED": 0,
		"PARTIAL":                                1,
		"FINAL":                                  2,
	}
)

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

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

func (AutomatedAgentReply_AutomatedAgentReplyType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_v2_participant_proto_enumTypes[3].Descriptor()
}

func (AutomatedAgentReply_AutomatedAgentReplyType) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_v2_participant_proto_enumTypes[3]
}

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

// Deprecated: Use AutomatedAgentReply_AutomatedAgentReplyType.Descriptor instead.
func (AutomatedAgentReply_AutomatedAgentReplyType) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{21, 0}
}

// Indicate what type of action to take with the tool call.
type SuggestionInput_Action int32

const (
	// Action not specified.
	SuggestionInput_ACTION_UNSPECIFIED SuggestionInput_Action = 0
	// Indicates the user chooses to not make the tool call. It
	// is only applicable to tool calls that are waiting for user
	// confirmation.
	SuggestionInput_CANCEL SuggestionInput_Action = 1
	// Makes the tool call with provided parameters. This action is intended
	// for tool calls that only read but not write data.
	SuggestionInput_REVISE SuggestionInput_Action = 2
	// Makes the tool call with provided parameters. This action is intended
	// for tool calls that may write data.
	SuggestionInput_CONFIRM SuggestionInput_Action = 3
)

// Enum value maps for SuggestionInput_Action.
var (
	SuggestionInput_Action_name = map[int32]string{
		0: "ACTION_UNSPECIFIED",
		1: "CANCEL",
		2: "REVISE",
		3: "CONFIRM",
	}
	SuggestionInput_Action_value = map[string]int32{
		"ACTION_UNSPECIFIED": 0,
		"CANCEL":             1,
		"REVISE":             2,
		"CONFIRM":            3,
	}
)

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

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

func (SuggestionInput_Action) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_v2_participant_proto_enumTypes[4].Descriptor()
}

func (SuggestionInput_Action) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_v2_participant_proto_enumTypes[4]
}

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

// Deprecated: Use SuggestionInput_Action.Descriptor instead.
func (SuggestionInput_Action) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{31, 0}
}

// Enum representing the various states of parameter ingestion.
type IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus int32

const (
	// Default value, indicates that the ingestion status is not specified.
	IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_INGESTION_STATUS_UNSPECIFIED IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus = 0
	// Indicates that the parameter was successfully ingested.
	IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_INGESTION_STATUS_SUCCEEDED IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus = 1
	// Indicates that the parameter was not available for ingestion.
	IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_INGESTION_STATUS_CONTEXT_NOT_AVAILABLE IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus = 2
	// Indicates that there was a failure parsing the parameter content.
	IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_INGESTION_STATUS_PARSE_FAILED IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus = 3
	// Indicates that the context reference had an unexpected number of
	// content entries as Context reference should only have one entry.
	IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_INGESTION_STATUS_INVALID_ENTRY IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus = 4
	// Indicates that the context reference content was not in the expected
	// format (e.g., JSON).
	IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_INGESTION_STATUS_INVALID_FORMAT IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus = 5
	// Indicates that the context reference language does not match the
	// conversation language.
	IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_INGESTION_STATUS_LANGUAGE_MISMATCH IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus = 6
)

// Enum value maps for IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus.
var (
	IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus_name = map[int32]string{
		0: "INGESTION_STATUS_UNSPECIFIED",
		1: "INGESTION_STATUS_SUCCEEDED",
		2: "INGESTION_STATUS_CONTEXT_NOT_AVAILABLE",
		3: "INGESTION_STATUS_PARSE_FAILED",
		4: "INGESTION_STATUS_INVALID_ENTRY",
		5: "INGESTION_STATUS_INVALID_FORMAT",
		6: "INGESTION_STATUS_LANGUAGE_MISMATCH",
	}
	IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus_value = map[string]int32{
		"INGESTION_STATUS_UNSPECIFIED":           0,
		"INGESTION_STATUS_SUCCEEDED":             1,
		"INGESTION_STATUS_CONTEXT_NOT_AVAILABLE": 2,
		"INGESTION_STATUS_PARSE_FAILED":          3,
		"INGESTION_STATUS_INVALID_ENTRY":         4,
		"INGESTION_STATUS_INVALID_FORMAT":        5,
		"INGESTION_STATUS_LANGUAGE_MISMATCH":     6,
	}
)

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

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

func (IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_v2_participant_proto_enumTypes[5].Descriptor()
}

func (IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_v2_participant_proto_enumTypes[5]
}

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

// Deprecated: Use IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus.Descriptor instead.
func (IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{35, 0, 0}
}

// Reason for query generation failure.
type KnowledgeAssistDebugInfo_QueryGenerationFailureReason int32

const (
	// Default value.
	KnowledgeAssistDebugInfo_QUERY_GENERATION_FAILURE_REASON_UNSPECIFIED KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 0
	// Query generation is blocked due to out of quota.
	KnowledgeAssistDebugInfo_QUERY_GENERATION_OUT_OF_QUOTA KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 1
	// Call to Knowedge Assist query generation model fails.
	KnowledgeAssistDebugInfo_QUERY_GENERATION_FAILED KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 2
	// Query generation model decides that there is no new topic change or
	// there has been similar queries generated in the previous turns.
	KnowledgeAssistDebugInfo_QUERY_GENERATION_NO_QUERY_GENERATED KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 3
	// Knowedge Assist generated query is blocked by RAI (Responsible AI).
	KnowledgeAssistDebugInfo_QUERY_GENERATION_RAI_FAILED KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 4
	// Query generation is blocked by Knowledge Assist conversation profile
	// level / agent id level filtering.
	KnowledgeAssistDebugInfo_NOT_IN_ALLOWLIST KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 5
	// The generated query is blocked due to redaction.
	KnowledgeAssistDebugInfo_QUERY_GENERATION_QUERY_REDACTED KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 6
	// Query generation failed due to LLM response parse failure.
	KnowledgeAssistDebugInfo_QUERY_GENERATION_LLM_RESPONSE_PARSE_FAILED KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 10
	// The conversation has no messages.
	KnowledgeAssistDebugInfo_QUERY_GENERATION_EMPTY_CONVERSATION KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 11
	// The last message in the conversation is empty.
	KnowledgeAssistDebugInfo_QUERY_GENERATION_EMPTY_LAST_MESSAGE KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 12
	// The trigger event condition is not met.
	// This occurs in the following scenarios:
	//  1. The trigger_event is CUSTOMER_MESSAGE or UNSPECIFIED, but the last
	//     message is not from the customer.
	//  2. The trigger_event is AGENT_MESSAGE, but the last message is not from
	//     the agent.
	KnowledgeAssistDebugInfo_QUERY_GENERATION_TRIGGERING_EVENT_CONDITION_NOT_MET KnowledgeAssistDebugInfo_QueryGenerationFailureReason = 13
)

// Enum value maps for KnowledgeAssistDebugInfo_QueryGenerationFailureReason.
var (
	KnowledgeAssistDebugInfo_QueryGenerationFailureReason_name = map[int32]string{
		0:  "QUERY_GENERATION_FAILURE_REASON_UNSPECIFIED",
		1:  "QUERY_GENERATION_OUT_OF_QUOTA",
		2:  "QUERY_GENERATION_FAILED",
		3:  "QUERY_GENERATION_NO_QUERY_GENERATED",
		4:  "QUERY_GENERATION_RAI_FAILED",
		5:  "NOT_IN_ALLOWLIST",
		6:  "QUERY_GENERATION_QUERY_REDACTED",
		10: "QUERY_GENERATION_LLM_RESPONSE_PARSE_FAILED",
		11: "QUERY_GENERATION_EMPTY_CONVERSATION",
		12: "QUERY_GENERATION_EMPTY_LAST_MESSAGE",
		13: "QUERY_GENERATION_TRIGGERING_EVENT_CONDITION_NOT_MET",
	}
	KnowledgeAssistDebugInfo_QueryGenerationFailureReason_value = map[string]int32{
		"QUERY_GENERATION_FAILURE_REASON_UNSPECIFIED":         0,
		"QUERY_GENERATION_OUT_OF_QUOTA":                       1,
		"QUERY_GENERATION_FAILED":                             2,
		"QUERY_GENERATION_NO_QUERY_GENERATED":                 3,
		"QUERY_GENERATION_RAI_FAILED":                         4,
		"NOT_IN_ALLOWLIST":                                    5,
		"QUERY_GENERATION_QUERY_REDACTED":                     6,
		"QUERY_GENERATION_LLM_RESPONSE_PARSE_FAILED":          10,
		"QUERY_GENERATION_EMPTY_CONVERSATION":                 11,
		"QUERY_GENERATION_EMPTY_LAST_MESSAGE":                 12,
		"QUERY_GENERATION_TRIGGERING_EVENT_CONDITION_NOT_MET": 13,
	}
)

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

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

func (KnowledgeAssistDebugInfo_QueryGenerationFailureReason) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_v2_participant_proto_enumTypes[6].Descriptor()
}

func (KnowledgeAssistDebugInfo_QueryGenerationFailureReason) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_v2_participant_proto_enumTypes[6]
}

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

// Deprecated: Use KnowledgeAssistDebugInfo_QueryGenerationFailureReason.Descriptor instead.
func (KnowledgeAssistDebugInfo_QueryGenerationFailureReason) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{37, 0}
}

// Reason for query categorization failure.
type KnowledgeAssistDebugInfo_QueryCategorizationFailureReason int32

const (
	// Default value.
	KnowledgeAssistDebugInfo_QUERY_CATEGORIZATION_FAILURE_REASON_UNSPECIFIED KnowledgeAssistDebugInfo_QueryCategorizationFailureReason = 0
	// Vertex AI Search config supplied for query categorization is invalid.
	KnowledgeAssistDebugInfo_QUERY_CATEGORIZATION_INVALID_CONFIG KnowledgeAssistDebugInfo_QueryCategorizationFailureReason = 1
	// Vertex AI Search result does not contain a query categorization result.
	KnowledgeAssistDebugInfo_QUERY_CATEGORIZATION_RESULT_NOT_FOUND KnowledgeAssistDebugInfo_QueryCategorizationFailureReason = 2
	// Vertex AI Search call fails.
	KnowledgeAssistDebugInfo_QUERY_CATEGORIZATION_FAILED KnowledgeAssistDebugInfo_QueryCategorizationFailureReason = 3
)

// Enum value maps for KnowledgeAssistDebugInfo_QueryCategorizationFailureReason.
var (
	KnowledgeAssistDebugInfo_QueryCategorizationFailureReason_name = map[int32]string{
		0: "QUERY_CATEGORIZATION_FAILURE_REASON_UNSPECIFIED",
		1: "QUERY_CATEGORIZATION_INVALID_CONFIG",
		2: "QUERY_CATEGORIZATION_RESULT_NOT_FOUND",
		3: "QUERY_CATEGORIZATION_FAILED",
	}
	KnowledgeAssistDebugInfo_QueryCategorizationFailureReason_value = map[string]int32{
		"QUERY_CATEGORIZATION_FAILURE_REASON_UNSPECIFIED": 0,
		"QUERY_CATEGORIZATION_INVALID_CONFIG":             1,
		"QUERY_CATEGORIZATION_RESULT_NOT_FOUND":           2,
		"QUERY_CATEGORIZATION_FAILED":                     3,
	}
)

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

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

func (KnowledgeAssistDebugInfo_QueryCategorizationFailureReason) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_v2_participant_proto_enumTypes[7].Descriptor()
}

func (KnowledgeAssistDebugInfo_QueryCategorizationFailureReason) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_v2_participant_proto_enumTypes[7]
}

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

// Deprecated: Use KnowledgeAssistDebugInfo_QueryCategorizationFailureReason.Descriptor instead.
func (KnowledgeAssistDebugInfo_QueryCategorizationFailureReason) EnumDescriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{37, 1}
}

// Represents a conversation participant (human agent, virtual agent, end-user).
type Participant struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Optional. The unique identifier of this participant.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Immutable. The role this participant plays in the conversation. This field
	// must be set during participant creation and is then immutable.
	Role Participant_Role `protobuf:"varint,2,opt,name=role,proto3,enum=google.cloud.dialogflow.v2.Participant_Role" json:"role,omitempty"`
	// Optional. Label applied to streams representing this participant in SIPREC
	// XML metadata and SDP. This is used to assign transcriptions from that
	// media stream to this participant. This field can be updated.
	SipRecordingMediaLabel string `protobuf:"bytes,6,opt,name=sip_recording_media_label,json=sipRecordingMediaLabel,proto3" json:"sip_recording_media_label,omitempty"`
	// Optional. Obfuscated user id that should be associated with the created
	// participant.
	//
	// You can specify a user id as follows:
	//
	//  1. If you set this field in
	//     [CreateParticipantRequest][google.cloud.dialogflow.v2.CreateParticipantRequest.participant]
	//     or
	//     [UpdateParticipantRequest][google.cloud.dialogflow.v2.UpdateParticipantRequest.participant],
	//     Dialogflow adds the obfuscated user id with the participant.
	//
	//  2. If you set this field in
	//     [AnalyzeContent][google.cloud.dialogflow.v2.AnalyzeContentRequest.participant]
	//     or
	//     [StreamingAnalyzeContent][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.participant],
	//     Dialogflow will update
	//     [Participant.obfuscated_external_user_id][google.cloud.dialogflow.v2.Participant.obfuscated_external_user_id].
	//
	// Dialogflow returns an error if you try to add a user id for a
	// non-[END_USER][google.cloud.dialogflow.v2.Participant.Role.END_USER]
	// participant.
	//
	// Dialogflow uses this user id for billing and measurement purposes. For
	// example, Dialogflow determines whether a user in one conversation returned
	// in a later conversation.
	//
	// Note:
	//
	//   - Please never pass raw user ids to Dialogflow. Always obfuscate your user
	//     id first.
	//   - Dialogflow only accepts a UTF-8 encoded string, e.g., a hex digest of a
	//     hash function like SHA-512.
	//   - The length of the user id must be <= 256 characters.
	ObfuscatedExternalUserId string `protobuf:"bytes,7,opt,name=obfuscated_external_user_id,json=obfuscatedExternalUserId,proto3" json:"obfuscated_external_user_id,omitempty"`
	// Optional. Key-value filters on the metadata of documents returned by
	// article suggestion. If specified, article suggestion only returns suggested
	// documents that match all filters in their
	// [Document.metadata][google.cloud.dialogflow.v2.Document.metadata]. Multiple
	// values for a metadata key should be concatenated by comma. For example,
	// filters to match all documents that have 'US' or 'CA' in their market
	// metadata values and 'agent' in their user metadata values will be
	// ```
	//
	//	documents_metadata_filters {
	//	  key: "market"
	//	  value: "US,CA"
	//	}
	//
	//	documents_metadata_filters {
	//	  key: "user"
	//	  value: "agent"
	//	}
	//
	// ```
	DocumentsMetadataFilters map[string]string `protobuf:"bytes,8,rep,name=documents_metadata_filters,json=documentsMetadataFilters,proto3" json:"documents_metadata_filters,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	// Optional. For tracking the utilization of prebuilt Agent Assist integration
	// modules. This field is only inscope for Integration type that include UI
	// Modules, Backend Modules, and Agent Desktop connector, it is out of scope
	// for CCaaS and Direct Integration.
	// For each human agent, prebuilt UI Modules needs to trigger the
	// UpdateParticipant API to update this field. Both
	// [CreateParticipantRequest][google.cloud.dialogflow.v2.CreateParticipantRequest.participant]
	// and
	// [UpdateParticipantRequest][google.cloud.dialogflow.v2.UpdateParticipantRequest.participant]
	// will be supported.
	AgentDesktopSource Participant_AgentDesktopSource `protobuf:"varint,10,opt,name=agent_desktop_source,json=agentDesktopSource,proto3,enum=google.cloud.dialogflow.v2.Participant_AgentDesktopSource" json:"agent_desktop_source,omitempty"`
	unknownFields      protoimpl.UnknownFields
	sizeCache          protoimpl.SizeCache
}

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

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

func (*Participant) ProtoMessage() {}

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

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

func (x *Participant) GetRole() Participant_Role {
	if x != nil {
		return x.Role
	}
	return Participant_ROLE_UNSPECIFIED
}

func (x *Participant) GetSipRecordingMediaLabel() string {
	if x != nil {
		return x.SipRecordingMediaLabel
	}
	return ""
}

func (x *Participant) GetObfuscatedExternalUserId() string {
	if x != nil {
		return x.ObfuscatedExternalUserId
	}
	return ""
}

func (x *Participant) GetDocumentsMetadataFilters() map[string]string {
	if x != nil {
		return x.DocumentsMetadataFilters
	}
	return nil
}

func (x *Participant) GetAgentDesktopSource() Participant_AgentDesktopSource {
	if x != nil {
		return x.AgentDesktopSource
	}
	return Participant_AGENT_DESKTOP_SOURCE_UNSPECIFIED
}

// Represents a message posted into a conversation.
type Message struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Optional. The unique identifier of the message.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The message content.
	Content string `protobuf:"bytes,2,opt,name=content,proto3" json:"content,omitempty"`
	// Optional. The message language.
	// This should be a [BCP-47](https://www.rfc-editor.org/rfc/bcp/bcp47.txt)
	// language tag. Example: "en-US".
	LanguageCode string `protobuf:"bytes,3,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
	// Output only. The participant that sends this message.
	Participant string `protobuf:"bytes,4,opt,name=participant,proto3" json:"participant,omitempty"`
	// Output only. The role of the participant.
	ParticipantRole Participant_Role `protobuf:"varint,5,opt,name=participant_role,json=participantRole,proto3,enum=google.cloud.dialogflow.v2.Participant_Role" json:"participant_role,omitempty"`
	// Output only. The time when the message was created in Contact Center AI.
	CreateTime *timestamppb.Timestamp `protobuf:"bytes,6,opt,name=create_time,json=createTime,proto3" json:"create_time,omitempty"`
	// Optional. The time when the message was sent. For voice messages, this is
	// the time when an utterance started.
	SendTime *timestamppb.Timestamp `protobuf:"bytes,9,opt,name=send_time,json=sendTime,proto3" json:"send_time,omitempty"`
	// Output only. The annotation for the message.
	MessageAnnotation *MessageAnnotation `protobuf:"bytes,7,opt,name=message_annotation,json=messageAnnotation,proto3" json:"message_annotation,omitempty"`
	// Output only. The sentiment analysis result for the message.
	SentimentAnalysis *SentimentAnalysisResult `protobuf:"bytes,8,opt,name=sentiment_analysis,json=sentimentAnalysis,proto3" json:"sentiment_analysis,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

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

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

func (*Message) ProtoMessage() {}

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

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

func (x *Message) GetContent() string {
	if x != nil {
		return x.Content
	}
	return ""
}

func (x *Message) GetLanguageCode() string {
	if x != nil {
		return x.LanguageCode
	}
	return ""
}

func (x *Message) GetParticipant() string {
	if x != nil {
		return x.Participant
	}
	return ""
}

func (x *Message) GetParticipantRole() Participant_Role {
	if x != nil {
		return x.ParticipantRole
	}
	return Participant_ROLE_UNSPECIFIED
}

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

func (x *Message) GetSendTime() *timestamppb.Timestamp {
	if x != nil {
		return x.SendTime
	}
	return nil
}

func (x *Message) GetMessageAnnotation() *MessageAnnotation {
	if x != nil {
		return x.MessageAnnotation
	}
	return nil
}

func (x *Message) GetSentimentAnalysis() *SentimentAnalysisResult {
	if x != nil {
		return x.SentimentAnalysis
	}
	return nil
}

// The request message for
// [Participants.CreateParticipant][google.cloud.dialogflow.v2.Participants.CreateParticipant].
type CreateParticipantRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Resource identifier of the conversation adding the participant.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Required. The participant to create.
	Participant   *Participant `protobuf:"bytes,2,opt,name=participant,proto3" json:"participant,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*CreateParticipantRequest) ProtoMessage() {}

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

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

func (x *CreateParticipantRequest) GetParticipant() *Participant {
	if x != nil {
		return x.Participant
	}
	return nil
}

// The request message for
// [Participants.GetParticipant][google.cloud.dialogflow.v2.Participants.GetParticipant].
type GetParticipantRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the participant. Format:
	// `projects/<Project ID>/locations/<Location ID>/conversations/<Conversation
	// ID>/participants/<Participant ID>`.
	Name          string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GetParticipantRequest) ProtoMessage() {}

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

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

// The request message for
// [Participants.ListParticipants][google.cloud.dialogflow.v2.Participants.ListParticipants].
type ListParticipantsRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The conversation to list all participants from.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>`.
	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 *ListParticipantsRequest) Reset() {
	*x = ListParticipantsRequest{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[4]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListParticipantsRequest) ProtoMessage() {}

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

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

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

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

// The response message for
// [Participants.ListParticipants][google.cloud.dialogflow.v2.Participants.ListParticipants].
type ListParticipantsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of participants. There is a maximum number of items
	// returned based on the page_size field in the request.
	Participants []*Participant `protobuf:"bytes,1,rep,name=participants,proto3" json:"participants,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 *ListParticipantsResponse) Reset() {
	*x = ListParticipantsResponse{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[5]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ListParticipantsResponse) ProtoMessage() {}

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

func (x *ListParticipantsResponse) GetParticipants() []*Participant {
	if x != nil {
		return x.Participants
	}
	return nil
}

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

// The request message for
// [Participants.UpdateParticipant][google.cloud.dialogflow.v2.Participants.UpdateParticipant].
type UpdateParticipantRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The participant to update.
	Participant *Participant `protobuf:"bytes,1,opt,name=participant,proto3" json:"participant,omitempty"`
	// Required. The mask to specify which fields to update.
	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 *UpdateParticipantRequest) Reset() {
	*x = UpdateParticipantRequest{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[6]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*UpdateParticipantRequest) ProtoMessage() {}

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

func (x *UpdateParticipantRequest) GetParticipant() *Participant {
	if x != nil {
		return x.Participant
	}
	return nil
}

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

// The request message for
// [Participants.AnalyzeContent][google.cloud.dialogflow.v2.Participants.AnalyzeContent].
type AnalyzeContentRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the participant this text comes from.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
	Participant string `protobuf:"bytes,1,opt,name=participant,proto3" json:"participant,omitempty"`
	// Required. The input content.
	//
	// Types that are valid to be assigned to Input:
	//
	//	*AnalyzeContentRequest_TextInput
	//	*AnalyzeContentRequest_AudioInput
	//	*AnalyzeContentRequest_EventInput
	//	*AnalyzeContentRequest_SuggestionInput
	Input isAnalyzeContentRequest_Input `protobuf_oneof:"input"`
	// Speech synthesis configuration.
	// The speech synthesis settings for a virtual agent that may be configured
	// for the associated conversation profile are not used when calling
	// AnalyzeContent. If this configuration is not supplied, speech synthesis
	// is disabled.
	ReplyAudioConfig *OutputAudioConfig `protobuf:"bytes,5,opt,name=reply_audio_config,json=replyAudioConfig,proto3" json:"reply_audio_config,omitempty"`
	// Parameters for a Dialogflow virtual-agent query.
	QueryParams *QueryParameters `protobuf:"bytes,9,opt,name=query_params,json=queryParams,proto3" json:"query_params,omitempty"`
	// Parameters for a human assist query.
	AssistQueryParams *AssistQueryParameters `protobuf:"bytes,14,opt,name=assist_query_params,json=assistQueryParams,proto3" json:"assist_query_params,omitempty"`
	// Additional parameters to be put into Dialogflow CX session parameters. To
	// remove a parameter from the session, clients should explicitly set the
	// parameter value to null.
	//
	// Note: this field should only be used if you are connecting to a Dialogflow
	// CX agent.
	CxParameters *structpb.Struct `protobuf:"bytes,18,opt,name=cx_parameters,json=cxParameters,proto3" json:"cx_parameters,omitempty"`
	// A unique identifier for this request. Restricted to 36 ASCII characters.
	// A random UUID is recommended.
	// This request is only idempotent if a `request_id` is provided.
	RequestId     string `protobuf:"bytes,11,opt,name=request_id,json=requestId,proto3" json:"request_id,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AnalyzeContentRequest) ProtoMessage() {}

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

func (x *AnalyzeContentRequest) GetParticipant() string {
	if x != nil {
		return x.Participant
	}
	return ""
}

func (x *AnalyzeContentRequest) GetInput() isAnalyzeContentRequest_Input {
	if x != nil {
		return x.Input
	}
	return nil
}

func (x *AnalyzeContentRequest) GetTextInput() *TextInput {
	if x != nil {
		if x, ok := x.Input.(*AnalyzeContentRequest_TextInput); ok {
			return x.TextInput
		}
	}
	return nil
}

func (x *AnalyzeContentRequest) GetAudioInput() *AudioInput {
	if x != nil {
		if x, ok := x.Input.(*AnalyzeContentRequest_AudioInput); ok {
			return x.AudioInput
		}
	}
	return nil
}

func (x *AnalyzeContentRequest) GetEventInput() *EventInput {
	if x != nil {
		if x, ok := x.Input.(*AnalyzeContentRequest_EventInput); ok {
			return x.EventInput
		}
	}
	return nil
}

func (x *AnalyzeContentRequest) GetSuggestionInput() *SuggestionInput {
	if x != nil {
		if x, ok := x.Input.(*AnalyzeContentRequest_SuggestionInput); ok {
			return x.SuggestionInput
		}
	}
	return nil
}

func (x *AnalyzeContentRequest) GetReplyAudioConfig() *OutputAudioConfig {
	if x != nil {
		return x.ReplyAudioConfig
	}
	return nil
}

func (x *AnalyzeContentRequest) GetQueryParams() *QueryParameters {
	if x != nil {
		return x.QueryParams
	}
	return nil
}

func (x *AnalyzeContentRequest) GetAssistQueryParams() *AssistQueryParameters {
	if x != nil {
		return x.AssistQueryParams
	}
	return nil
}

func (x *AnalyzeContentRequest) GetCxParameters() *structpb.Struct {
	if x != nil {
		return x.CxParameters
	}
	return nil
}

func (x *AnalyzeContentRequest) GetRequestId() string {
	if x != nil {
		return x.RequestId
	}
	return ""
}

type isAnalyzeContentRequest_Input interface {
	isAnalyzeContentRequest_Input()
}

type AnalyzeContentRequest_TextInput struct {
	// The natural language text to be processed.
	TextInput *TextInput `protobuf:"bytes,6,opt,name=text_input,json=textInput,proto3,oneof"`
}

type AnalyzeContentRequest_AudioInput struct {
	// The natural language speech audio to be processed.
	AudioInput *AudioInput `protobuf:"bytes,7,opt,name=audio_input,json=audioInput,proto3,oneof"`
}

type AnalyzeContentRequest_EventInput struct {
	// An input event to send to Dialogflow.
	EventInput *EventInput `protobuf:"bytes,8,opt,name=event_input,json=eventInput,proto3,oneof"`
}

type AnalyzeContentRequest_SuggestionInput struct {
	// An input representing the selection of a suggestion.
	SuggestionInput *SuggestionInput `protobuf:"bytes,12,opt,name=suggestion_input,json=suggestionInput,proto3,oneof"`
}

func (*AnalyzeContentRequest_TextInput) isAnalyzeContentRequest_Input() {}

func (*AnalyzeContentRequest_AudioInput) isAnalyzeContentRequest_Input() {}

func (*AnalyzeContentRequest_EventInput) isAnalyzeContentRequest_Input() {}

func (*AnalyzeContentRequest_SuggestionInput) isAnalyzeContentRequest_Input() {}

// The message in the response that indicates the parameters of DTMF.
type DtmfParameters struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Indicates whether DTMF input can be handled in the next request.
	AcceptsDtmfInput bool `protobuf:"varint,1,opt,name=accepts_dtmf_input,json=acceptsDtmfInput,proto3" json:"accepts_dtmf_input,omitempty"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

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

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

func (*DtmfParameters) ProtoMessage() {}

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

func (x *DtmfParameters) GetAcceptsDtmfInput() bool {
	if x != nil {
		return x.AcceptsDtmfInput
	}
	return false
}

// The response message for
// [Participants.AnalyzeContent][google.cloud.dialogflow.v2.Participants.AnalyzeContent].
type AnalyzeContentResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The output text content.
	// This field is set if the automated agent responded with text to show to
	// the user.
	ReplyText string `protobuf:"bytes,1,opt,name=reply_text,json=replyText,proto3" json:"reply_text,omitempty"`
	// The audio data bytes encoded as specified in the request.
	// This field is set if:
	//
	//   - `reply_audio_config` was specified in the request, or
	//   - The automated agent responded with audio to play to the user. In such
	//     case, `reply_audio.config` contains settings used to synthesize the
	//     speech.
	//
	// In some scenarios, multiple output audio fields may be present in the
	// response structure. In these cases, only the top-most-level audio output
	// has content.
	ReplyAudio *OutputAudio `protobuf:"bytes,2,opt,name=reply_audio,json=replyAudio,proto3" json:"reply_audio,omitempty"`
	// Only set if a Dialogflow automated agent has responded.
	// Note that in [AutomatedAgentReply.DetectIntentResponse][],
	// [Sessions.DetectIntentResponse.output_audio][]
	// and [Sessions.DetectIntentResponse.output_audio_config][]
	// are always empty, use
	// [reply_audio][google.cloud.dialogflow.v2.AnalyzeContentResponse.reply_audio]
	// instead.
	AutomatedAgentReply *AutomatedAgentReply `protobuf:"bytes,3,opt,name=automated_agent_reply,json=automatedAgentReply,proto3" json:"automated_agent_reply,omitempty"`
	// Message analyzed by CCAI.
	Message *Message `protobuf:"bytes,5,opt,name=message,proto3" json:"message,omitempty"`
	// The suggestions for most recent human agent. The order is the same as
	// [HumanAgentAssistantConfig.SuggestionConfig.feature_configs][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.SuggestionConfig.feature_configs]
	// of
	// [HumanAgentAssistantConfig.human_agent_suggestion_config][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.human_agent_suggestion_config].
	//
	// Note that any failure of Agent Assist features will not lead to the overall
	// failure of an AnalyzeContent API call. Instead, the features will
	// fail silently with the error field set in the corresponding
	// SuggestionResult.
	HumanAgentSuggestionResults []*SuggestionResult `protobuf:"bytes,6,rep,name=human_agent_suggestion_results,json=humanAgentSuggestionResults,proto3" json:"human_agent_suggestion_results,omitempty"`
	// The suggestions for end user. The order is the same as
	// [HumanAgentAssistantConfig.SuggestionConfig.feature_configs][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.SuggestionConfig.feature_configs]
	// of
	// [HumanAgentAssistantConfig.end_user_suggestion_config][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.end_user_suggestion_config].
	//
	// Same as human_agent_suggestion_results, any failure of Agent Assist
	// features will not lead to the overall failure of an AnalyzeContent API
	// call. Instead, the features will fail silently with the error field set in
	// the corresponding SuggestionResult.
	EndUserSuggestionResults []*SuggestionResult `protobuf:"bytes,7,rep,name=end_user_suggestion_results,json=endUserSuggestionResults,proto3" json:"end_user_suggestion_results,omitempty"`
	// Indicates the parameters of DTMF.
	DtmfParameters *DtmfParameters `protobuf:"bytes,9,opt,name=dtmf_parameters,json=dtmfParameters,proto3" json:"dtmf_parameters,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

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

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

func (*AnalyzeContentResponse) ProtoMessage() {}

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

func (x *AnalyzeContentResponse) GetReplyText() string {
	if x != nil {
		return x.ReplyText
	}
	return ""
}

func (x *AnalyzeContentResponse) GetReplyAudio() *OutputAudio {
	if x != nil {
		return x.ReplyAudio
	}
	return nil
}

func (x *AnalyzeContentResponse) GetAutomatedAgentReply() *AutomatedAgentReply {
	if x != nil {
		return x.AutomatedAgentReply
	}
	return nil
}

func (x *AnalyzeContentResponse) GetMessage() *Message {
	if x != nil {
		return x.Message
	}
	return nil
}

func (x *AnalyzeContentResponse) GetHumanAgentSuggestionResults() []*SuggestionResult {
	if x != nil {
		return x.HumanAgentSuggestionResults
	}
	return nil
}

func (x *AnalyzeContentResponse) GetEndUserSuggestionResults() []*SuggestionResult {
	if x != nil {
		return x.EndUserSuggestionResults
	}
	return nil
}

func (x *AnalyzeContentResponse) GetDtmfParameters() *DtmfParameters {
	if x != nil {
		return x.DtmfParameters
	}
	return nil
}

// The top-level message sent by the client to the
// [Participants.StreamingAnalyzeContent][google.cloud.dialogflow.v2.Participants.StreamingAnalyzeContent]
// method.
//
// Multiple request messages should be sent in order:
//
//  1. The first message must contain
//     [participant][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.participant],
//     [config][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.config]
//     and optionally
//     [query_params][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.query_params].
//     If you want to receive an audio response, it should also contain
//     [reply_audio_config][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.reply_audio_config].
//     The message must not contain
//     [input][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.input].
//
// 2.  If
// [config][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.config] in
// the first message
//
//	   was set to
//	   [audio_config][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.audio_config],
//	   all subsequent messages must contain
//	   [input_audio][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.input_audio]
//	   to continue with Speech recognition. However, note that:
//
//	   * Dialogflow will bill you for the audio so far.
//	   * Dialogflow discards all Speech recognition results in favor of the
//	     text input.
//
//	3. If
//	[StreamingAnalyzeContentRequest.config][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.config]
//	in the first message was set
//	  to
//	  [StreamingAnalyzeContentRequest.text_config][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.text_config],
//	  then the second message must contain only
//	  [input_text][google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.input_text].
//	  Moreover, you must not send more than two messages.
//
//	After you sent all input, you must half-close or abort the request stream.
type StreamingAnalyzeContentRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the participant this text comes from.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
	Participant string `protobuf:"bytes,1,opt,name=participant,proto3" json:"participant,omitempty"`
	// The input config.
	//
	// Types that are valid to be assigned to Config:
	//
	//	*StreamingAnalyzeContentRequest_AudioConfig
	//	*StreamingAnalyzeContentRequest_TextConfig
	Config isStreamingAnalyzeContentRequest_Config `protobuf_oneof:"config"`
	// Speech synthesis configuration.
	// The speech synthesis settings for a virtual agent that may be configured
	// for the associated conversation profile are not used when calling
	// StreamingAnalyzeContent. If this configuration is not supplied, speech
	// synthesis is disabled.
	ReplyAudioConfig *OutputAudioConfig `protobuf:"bytes,4,opt,name=reply_audio_config,json=replyAudioConfig,proto3" json:"reply_audio_config,omitempty"`
	// The input.
	//
	// Types that are valid to be assigned to Input:
	//
	//	*StreamingAnalyzeContentRequest_InputAudio
	//	*StreamingAnalyzeContentRequest_InputText
	//	*StreamingAnalyzeContentRequest_InputDtmf
	Input isStreamingAnalyzeContentRequest_Input `protobuf_oneof:"input"`
	// Parameters for a Dialogflow virtual-agent query.
	QueryParams *QueryParameters `protobuf:"bytes,7,opt,name=query_params,json=queryParams,proto3" json:"query_params,omitempty"`
	// Parameters for a human assist query.
	AssistQueryParams *AssistQueryParameters `protobuf:"bytes,8,opt,name=assist_query_params,json=assistQueryParams,proto3" json:"assist_query_params,omitempty"`
	// Additional parameters to be put into Dialogflow CX session parameters. To
	// remove a parameter from the session, clients should explicitly set the
	// parameter value to null.
	//
	// Note: this field should only be used if you are connecting to a Dialogflow
	// CX agent.
	CxParameters *structpb.Struct `protobuf:"bytes,13,opt,name=cx_parameters,json=cxParameters,proto3" json:"cx_parameters,omitempty"`
	// Optional. Enable full bidirectional streaming. You can keep streaming the
	// audio until timeout, and there's no need to half close the stream to get
	// the response.
	//
	// Restrictions:
	//
	// - Timeout: 3 mins.
	// - Audio Encoding: only supports
	// [AudioEncoding.AUDIO_ENCODING_LINEAR_16][google.cloud.dialogflow.v2.AudioEncoding.AUDIO_ENCODING_LINEAR_16]
	// and
	// [AudioEncoding.AUDIO_ENCODING_MULAW][google.cloud.dialogflow.v2.AudioEncoding.AUDIO_ENCODING_MULAW]
	//   - Lifecycle: conversation should be in `Assist Stage`, go to
	//     [Conversations.CreateConversation][google.cloud.dialogflow.v2.Conversations.CreateConversation]
	//     for more information.
	//
	// InvalidArgument Error will be returned if the one of restriction checks
	// failed.
	//
	// You can find more details in
	// https://cloud.google.com/agent-assist/docs/extended-streaming
	EnableExtendedStreaming bool `protobuf:"varint,11,opt,name=enable_extended_streaming,json=enableExtendedStreaming,proto3" json:"enable_extended_streaming,omitempty"`
	// Optional. Enable partial responses from Dialogflow CX agent. If this flag
	// is not enabled, response stream still contains only one final response even
	// if some `Fulfillment`s in Dialogflow CX agent have been configured to
	// return partial responses.
	EnablePartialAutomatedAgentReply bool `protobuf:"varint,12,opt,name=enable_partial_automated_agent_reply,json=enablePartialAutomatedAgentReply,proto3" json:"enable_partial_automated_agent_reply,omitempty"`
	// Optional. If multiple uttereances are detected in the audio stream, process
	// them individually instead of stitching them together to form a single
	// utterance.
	OutputMultipleUtterances bool `protobuf:"varint,18,opt,name=output_multiple_utterances,json=outputMultipleUtterances,proto3" json:"output_multiple_utterances,omitempty"`
	// If true, `StreamingAnalyzeContentResponse.debugging_info` will get
	// populated.
	EnableDebuggingInfo bool `protobuf:"varint,19,opt,name=enable_debugging_info,json=enableDebuggingInfo,proto3" json:"enable_debugging_info,omitempty"`
	unknownFields       protoimpl.UnknownFields
	sizeCache           protoimpl.SizeCache
}

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

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

func (*StreamingAnalyzeContentRequest) ProtoMessage() {}

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

func (x *StreamingAnalyzeContentRequest) GetParticipant() string {
	if x != nil {
		return x.Participant
	}
	return ""
}

func (x *StreamingAnalyzeContentRequest) GetConfig() isStreamingAnalyzeContentRequest_Config {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *StreamingAnalyzeContentRequest) GetAudioConfig() *InputAudioConfig {
	if x != nil {
		if x, ok := x.Config.(*StreamingAnalyzeContentRequest_AudioConfig); ok {
			return x.AudioConfig
		}
	}
	return nil
}

func (x *StreamingAnalyzeContentRequest) GetTextConfig() *InputTextConfig {
	if x != nil {
		if x, ok := x.Config.(*StreamingAnalyzeContentRequest_TextConfig); ok {
			return x.TextConfig
		}
	}
	return nil
}

func (x *StreamingAnalyzeContentRequest) GetReplyAudioConfig() *OutputAudioConfig {
	if x != nil {
		return x.ReplyAudioConfig
	}
	return nil
}

func (x *StreamingAnalyzeContentRequest) GetInput() isStreamingAnalyzeContentRequest_Input {
	if x != nil {
		return x.Input
	}
	return nil
}

func (x *StreamingAnalyzeContentRequest) GetInputAudio() []byte {
	if x != nil {
		if x, ok := x.Input.(*StreamingAnalyzeContentRequest_InputAudio); ok {
			return x.InputAudio
		}
	}
	return nil
}

func (x *StreamingAnalyzeContentRequest) GetInputText() string {
	if x != nil {
		if x, ok := x.Input.(*StreamingAnalyzeContentRequest_InputText); ok {
			return x.InputText
		}
	}
	return ""
}

func (x *StreamingAnalyzeContentRequest) GetInputDtmf() *TelephonyDtmfEvents {
	if x != nil {
		if x, ok := x.Input.(*StreamingAnalyzeContentRequest_InputDtmf); ok {
			return x.InputDtmf
		}
	}
	return nil
}

func (x *StreamingAnalyzeContentRequest) GetQueryParams() *QueryParameters {
	if x != nil {
		return x.QueryParams
	}
	return nil
}

func (x *StreamingAnalyzeContentRequest) GetAssistQueryParams() *AssistQueryParameters {
	if x != nil {
		return x.AssistQueryParams
	}
	return nil
}

func (x *StreamingAnalyzeContentRequest) GetCxParameters() *structpb.Struct {
	if x != nil {
		return x.CxParameters
	}
	return nil
}

func (x *StreamingAnalyzeContentRequest) GetEnableExtendedStreaming() bool {
	if x != nil {
		return x.EnableExtendedStreaming
	}
	return false
}

func (x *StreamingAnalyzeContentRequest) GetEnablePartialAutomatedAgentReply() bool {
	if x != nil {
		return x.EnablePartialAutomatedAgentReply
	}
	return false
}

func (x *StreamingAnalyzeContentRequest) GetOutputMultipleUtterances() bool {
	if x != nil {
		return x.OutputMultipleUtterances
	}
	return false
}

func (x *StreamingAnalyzeContentRequest) GetEnableDebuggingInfo() bool {
	if x != nil {
		return x.EnableDebuggingInfo
	}
	return false
}

type isStreamingAnalyzeContentRequest_Config interface {
	isStreamingAnalyzeContentRequest_Config()
}

type StreamingAnalyzeContentRequest_AudioConfig struct {
	// Instructs the speech recognizer how to process the speech audio.
	AudioConfig *InputAudioConfig `protobuf:"bytes,2,opt,name=audio_config,json=audioConfig,proto3,oneof"`
}

type StreamingAnalyzeContentRequest_TextConfig struct {
	// The natural language text to be processed.
	TextConfig *InputTextConfig `protobuf:"bytes,3,opt,name=text_config,json=textConfig,proto3,oneof"`
}

func (*StreamingAnalyzeContentRequest_AudioConfig) isStreamingAnalyzeContentRequest_Config() {}

func (*StreamingAnalyzeContentRequest_TextConfig) isStreamingAnalyzeContentRequest_Config() {}

type isStreamingAnalyzeContentRequest_Input interface {
	isStreamingAnalyzeContentRequest_Input()
}

type StreamingAnalyzeContentRequest_InputAudio struct {
	// The input audio content to be recognized. Must be sent if `audio_config`
	// is set in the first message. The complete audio over all streaming
	// messages must not exceed 1 minute.
	InputAudio []byte `protobuf:"bytes,5,opt,name=input_audio,json=inputAudio,proto3,oneof"`
}

type StreamingAnalyzeContentRequest_InputText struct {
	// The UTF-8 encoded natural language text to be processed. Must be sent if
	// `text_config` is set in the first message. Text length must not exceed
	// 256 bytes for virtual agent interactions. The `input_text` field can be
	// only sent once, and would cancel the speech recognition if any ongoing.
	InputText string `protobuf:"bytes,6,opt,name=input_text,json=inputText,proto3,oneof"`
}

type StreamingAnalyzeContentRequest_InputDtmf struct {
	// The DTMF digits used to invoke intent and fill in parameter value.
	//
	// This input is ignored if the previous response indicated that DTMF input
	// is not accepted.
	InputDtmf *TelephonyDtmfEvents `protobuf:"bytes,9,opt,name=input_dtmf,json=inputDtmf,proto3,oneof"`
}

func (*StreamingAnalyzeContentRequest_InputAudio) isStreamingAnalyzeContentRequest_Input() {}

func (*StreamingAnalyzeContentRequest_InputText) isStreamingAnalyzeContentRequest_Input() {}

func (*StreamingAnalyzeContentRequest_InputDtmf) isStreamingAnalyzeContentRequest_Input() {}

// The top-level message returned from the `StreamingAnalyzeContent` method.
//
// Multiple response messages can be returned in order:
//
//  1. If the input was set to streaming audio, the first one or more messages
//     contain `recognition_result`. Each `recognition_result` represents a more
//     complete transcript of what the user said. The last `recognition_result`
//     has `is_final` set to `true`.
//
//  2. In virtual agent stage: if `enable_partial_automated_agent_reply` is
//     true, the following N (currently 1 <= N <= 4) messages
//     contain `automated_agent_reply` and optionally `reply_audio`
//     returned by the virtual agent. The first (N-1)
//     `automated_agent_reply`s will have `automated_agent_reply_type` set to
//     `PARTIAL`. The last `automated_agent_reply` has
//     `automated_agent_reply_type` set to `FINAL`.
//     If `enable_partial_automated_agent_reply` is not enabled, response stream
//     only contains the final reply.
//
//     In human assist stage: the following N (N >= 1) messages contain
//     `human_agent_suggestion_results`, `end_user_suggestion_results` or
//     `message`.
type StreamingAnalyzeContentResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The result of speech recognition.
	RecognitionResult *StreamingRecognitionResult `protobuf:"bytes,1,opt,name=recognition_result,json=recognitionResult,proto3" json:"recognition_result,omitempty"`
	// The output text content.
	// This field is set if an automated agent responded with a text for the user.
	ReplyText string `protobuf:"bytes,2,opt,name=reply_text,json=replyText,proto3" json:"reply_text,omitempty"`
	// The audio data bytes encoded as specified in the request.
	// This field is set if:
	//
	//   - The `reply_audio_config` field is specified in the request.
	//   - The automated agent, which this output comes from, responded with audio.
	//     In such case, the `reply_audio.config` field contains settings used to
	//     synthesize the speech.
	//
	// In some scenarios, multiple output audio fields may be present in the
	// response structure. In these cases, only the top-most-level audio output
	// has content.
	ReplyAudio *OutputAudio `protobuf:"bytes,3,opt,name=reply_audio,json=replyAudio,proto3" json:"reply_audio,omitempty"`
	// Note that in [AutomatedAgentReply.DetectIntentResponse][],
	// [Sessions.DetectIntentResponse.output_audio][]
	// and [Sessions.DetectIntentResponse.output_audio_config][]
	// are always empty, use
	// [reply_audio][google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse.reply_audio]
	// instead.
	AutomatedAgentReply *AutomatedAgentReply `protobuf:"bytes,4,opt,name=automated_agent_reply,json=automatedAgentReply,proto3" json:"automated_agent_reply,omitempty"`
	// Message analyzed by CCAI.
	Message *Message `protobuf:"bytes,6,opt,name=message,proto3" json:"message,omitempty"`
	// The suggestions for most recent human agent. The order is the same as
	// [HumanAgentAssistantConfig.SuggestionConfig.feature_configs][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.SuggestionConfig.feature_configs]
	// of
	// [HumanAgentAssistantConfig.human_agent_suggestion_config][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.human_agent_suggestion_config].
	HumanAgentSuggestionResults []*SuggestionResult `protobuf:"bytes,7,rep,name=human_agent_suggestion_results,json=humanAgentSuggestionResults,proto3" json:"human_agent_suggestion_results,omitempty"`
	// The suggestions for end user. The order is the same as
	// [HumanAgentAssistantConfig.SuggestionConfig.feature_configs][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.SuggestionConfig.feature_configs]
	// of
	// [HumanAgentAssistantConfig.end_user_suggestion_config][google.cloud.dialogflow.v2.HumanAgentAssistantConfig.end_user_suggestion_config].
	EndUserSuggestionResults []*SuggestionResult `protobuf:"bytes,8,rep,name=end_user_suggestion_results,json=endUserSuggestionResults,proto3" json:"end_user_suggestion_results,omitempty"`
	// Indicates the parameters of DTMF.
	DtmfParameters *DtmfParameters `protobuf:"bytes,10,opt,name=dtmf_parameters,json=dtmfParameters,proto3" json:"dtmf_parameters,omitempty"`
	// Debugging info that would get populated when
	// `StreamingAnalyzeContentRequest.enable_debugging_info` is set to true.
	DebuggingInfo *CloudConversationDebuggingInfo `protobuf:"bytes,11,opt,name=debugging_info,json=debuggingInfo,proto3" json:"debugging_info,omitempty"`
	// The name of the actual Cloud speech model used for speech recognition.
	SpeechModel   string `protobuf:"bytes,13,opt,name=speech_model,json=speechModel,proto3" json:"speech_model,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*StreamingAnalyzeContentResponse) ProtoMessage() {}

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

func (x *StreamingAnalyzeContentResponse) GetRecognitionResult() *StreamingRecognitionResult {
	if x != nil {
		return x.RecognitionResult
	}
	return nil
}

func (x *StreamingAnalyzeContentResponse) GetReplyText() string {
	if x != nil {
		return x.ReplyText
	}
	return ""
}

func (x *StreamingAnalyzeContentResponse) GetReplyAudio() *OutputAudio {
	if x != nil {
		return x.ReplyAudio
	}
	return nil
}

func (x *StreamingAnalyzeContentResponse) GetAutomatedAgentReply() *AutomatedAgentReply {
	if x != nil {
		return x.AutomatedAgentReply
	}
	return nil
}

func (x *StreamingAnalyzeContentResponse) GetMessage() *Message {
	if x != nil {
		return x.Message
	}
	return nil
}

func (x *StreamingAnalyzeContentResponse) GetHumanAgentSuggestionResults() []*SuggestionResult {
	if x != nil {
		return x.HumanAgentSuggestionResults
	}
	return nil
}

func (x *StreamingAnalyzeContentResponse) GetEndUserSuggestionResults() []*SuggestionResult {
	if x != nil {
		return x.EndUserSuggestionResults
	}
	return nil
}

func (x *StreamingAnalyzeContentResponse) GetDtmfParameters() *DtmfParameters {
	if x != nil {
		return x.DtmfParameters
	}
	return nil
}

func (x *StreamingAnalyzeContentResponse) GetDebuggingInfo() *CloudConversationDebuggingInfo {
	if x != nil {
		return x.DebuggingInfo
	}
	return nil
}

func (x *StreamingAnalyzeContentResponse) GetSpeechModel() string {
	if x != nil {
		return x.SpeechModel
	}
	return ""
}

// The request message for
// [Participants.SuggestArticles][google.cloud.dialogflow.v2.Participants.SuggestArticles].
type SuggestArticlesRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the participant to fetch suggestion for.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Optional. The name of the latest conversation message to compile suggestion
	// for. If empty, it will be the latest message of the conversation.
	//
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
	LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
	// Optional. Max number of messages prior to and including
	// [latest_message][google.cloud.dialogflow.v2.SuggestArticlesRequest.latest_message]
	// to use as context when compiling the suggestion. By default 20 and at
	// most 50.
	ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
	// Parameters for a human assist query.
	AssistQueryParams *AssistQueryParameters `protobuf:"bytes,4,opt,name=assist_query_params,json=assistQueryParams,proto3" json:"assist_query_params,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

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

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

func (*SuggestArticlesRequest) ProtoMessage() {}

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

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

func (x *SuggestArticlesRequest) GetLatestMessage() string {
	if x != nil {
		return x.LatestMessage
	}
	return ""
}

func (x *SuggestArticlesRequest) GetContextSize() int32 {
	if x != nil {
		return x.ContextSize
	}
	return 0
}

func (x *SuggestArticlesRequest) GetAssistQueryParams() *AssistQueryParameters {
	if x != nil {
		return x.AssistQueryParams
	}
	return nil
}

// The response message for
// [Participants.SuggestArticles][google.cloud.dialogflow.v2.Participants.SuggestArticles].
type SuggestArticlesResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Articles ordered by score in descending order.
	ArticleAnswers []*ArticleAnswer `protobuf:"bytes,1,rep,name=article_answers,json=articleAnswers,proto3" json:"article_answers,omitempty"`
	// The name of the latest conversation message used to compile
	// suggestion for.
	//
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
	LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
	// Number of messages prior to and including
	// [latest_message][google.cloud.dialogflow.v2.SuggestArticlesResponse.latest_message]
	// to compile the suggestion. It may be smaller than the
	// [SuggestArticlesRequest.context_size][google.cloud.dialogflow.v2.SuggestArticlesRequest.context_size]
	// field in the request if there aren't that many messages in the
	// conversation.
	ContextSize   int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SuggestArticlesResponse) ProtoMessage() {}

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

func (x *SuggestArticlesResponse) GetArticleAnswers() []*ArticleAnswer {
	if x != nil {
		return x.ArticleAnswers
	}
	return nil
}

func (x *SuggestArticlesResponse) GetLatestMessage() string {
	if x != nil {
		return x.LatestMessage
	}
	return ""
}

func (x *SuggestArticlesResponse) GetContextSize() int32 {
	if x != nil {
		return x.ContextSize
	}
	return 0
}

// The request message for
// [Participants.SuggestFaqAnswers][google.cloud.dialogflow.v2.Participants.SuggestFaqAnswers].
type SuggestFaqAnswersRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the participant to fetch suggestion for.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Optional. The name of the latest conversation message to compile suggestion
	// for. If empty, it will be the latest message of the conversation.
	//
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
	LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
	// Optional. Max number of messages prior to and including
	// [latest_message] to use as context when compiling the
	// suggestion. By default 20 and at most 50.
	ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
	// Parameters for a human assist query.
	AssistQueryParams *AssistQueryParameters `protobuf:"bytes,4,opt,name=assist_query_params,json=assistQueryParams,proto3" json:"assist_query_params,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

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

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

func (*SuggestFaqAnswersRequest) ProtoMessage() {}

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

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

func (x *SuggestFaqAnswersRequest) GetLatestMessage() string {
	if x != nil {
		return x.LatestMessage
	}
	return ""
}

func (x *SuggestFaqAnswersRequest) GetContextSize() int32 {
	if x != nil {
		return x.ContextSize
	}
	return 0
}

func (x *SuggestFaqAnswersRequest) GetAssistQueryParams() *AssistQueryParameters {
	if x != nil {
		return x.AssistQueryParams
	}
	return nil
}

// The request message for
// [Participants.SuggestFaqAnswers][google.cloud.dialogflow.v2.Participants.SuggestFaqAnswers].
type SuggestFaqAnswersResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Answers extracted from FAQ documents.
	FaqAnswers []*FaqAnswer `protobuf:"bytes,1,rep,name=faq_answers,json=faqAnswers,proto3" json:"faq_answers,omitempty"`
	// The name of the latest conversation message used to compile
	// suggestion for.
	//
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
	LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
	// Number of messages prior to and including
	// [latest_message][google.cloud.dialogflow.v2.SuggestFaqAnswersResponse.latest_message]
	// to compile the suggestion. It may be smaller than the
	// [SuggestFaqAnswersRequest.context_size][google.cloud.dialogflow.v2.SuggestFaqAnswersRequest.context_size]
	// field in the request if there aren't that many messages in the
	// conversation.
	ContextSize   int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SuggestFaqAnswersResponse) ProtoMessage() {}

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

func (x *SuggestFaqAnswersResponse) GetFaqAnswers() []*FaqAnswer {
	if x != nil {
		return x.FaqAnswers
	}
	return nil
}

func (x *SuggestFaqAnswersResponse) GetLatestMessage() string {
	if x != nil {
		return x.LatestMessage
	}
	return ""
}

func (x *SuggestFaqAnswersResponse) GetContextSize() int32 {
	if x != nil {
		return x.ContextSize
	}
	return 0
}

// The response message for
// [Conversations.GenerateSuggestions][google.cloud.dialogflow.v2.Conversations.GenerateSuggestions].
type GenerateSuggestionsResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The answers generated for the conversation based on context.
	GeneratorSuggestionAnswers []*GenerateSuggestionsResponse_GeneratorSuggestionAnswer `protobuf:"bytes,1,rep,name=generator_suggestion_answers,json=generatorSuggestionAnswers,proto3" json:"generator_suggestion_answers,omitempty"`
	// The name of the latest conversation message used as context for
	// compiling suggestion.
	//
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
	LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*GenerateSuggestionsResponse) ProtoMessage() {}

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

func (x *GenerateSuggestionsResponse) GetGeneratorSuggestionAnswers() []*GenerateSuggestionsResponse_GeneratorSuggestionAnswer {
	if x != nil {
		return x.GeneratorSuggestionAnswers
	}
	return nil
}

func (x *GenerateSuggestionsResponse) GetLatestMessage() string {
	if x != nil {
		return x.LatestMessage
	}
	return ""
}

// The request message for
// [Participants.SuggestSmartReplies][google.cloud.dialogflow.v2.Participants.SuggestSmartReplies].
type SuggestSmartRepliesRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the participant to fetch suggestion for.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// The current natural language text segment to compile suggestion
	// for. This provides a way for user to get follow up smart reply suggestion
	// after a smart reply selection, without sending a text message.
	CurrentTextInput *TextInput `protobuf:"bytes,4,opt,name=current_text_input,json=currentTextInput,proto3" json:"current_text_input,omitempty"`
	// The name of the latest conversation message to compile suggestion
	// for. If empty, it will be the latest message of the conversation.
	//
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
	LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
	// Max number of messages prior to and including
	// [latest_message] to use as context when compiling the
	// suggestion. By default 20 and at most 50.
	ContextSize   int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SuggestSmartRepliesRequest) ProtoMessage() {}

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

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

func (x *SuggestSmartRepliesRequest) GetCurrentTextInput() *TextInput {
	if x != nil {
		return x.CurrentTextInput
	}
	return nil
}

func (x *SuggestSmartRepliesRequest) GetLatestMessage() string {
	if x != nil {
		return x.LatestMessage
	}
	return ""
}

func (x *SuggestSmartRepliesRequest) GetContextSize() int32 {
	if x != nil {
		return x.ContextSize
	}
	return 0
}

// The response message for
// [Participants.SuggestSmartReplies][google.cloud.dialogflow.v2.Participants.SuggestSmartReplies].
type SuggestSmartRepliesResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Output only. Multiple reply options provided by smart reply service. The
	// order is based on the rank of the model prediction.
	// The maximum number of the returned replies is set in SmartReplyConfig.
	SmartReplyAnswers []*SmartReplyAnswer `protobuf:"bytes,1,rep,name=smart_reply_answers,json=smartReplyAnswers,proto3" json:"smart_reply_answers,omitempty"`
	// The name of the latest conversation message used to compile
	// suggestion for.
	//
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
	LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
	// Number of messages prior to and including
	// [latest_message][google.cloud.dialogflow.v2.SuggestSmartRepliesResponse.latest_message]
	// to compile the suggestion. It may be smaller than the
	// [SuggestSmartRepliesRequest.context_size][google.cloud.dialogflow.v2.SuggestSmartRepliesRequest.context_size]
	// field in the request if there aren't that many messages in the
	// conversation.
	ContextSize   int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SuggestSmartRepliesResponse) ProtoMessage() {}

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

func (x *SuggestSmartRepliesResponse) GetSmartReplyAnswers() []*SmartReplyAnswer {
	if x != nil {
		return x.SmartReplyAnswers
	}
	return nil
}

func (x *SuggestSmartRepliesResponse) GetLatestMessage() string {
	if x != nil {
		return x.LatestMessage
	}
	return ""
}

func (x *SuggestSmartRepliesResponse) GetContextSize() int32 {
	if x != nil {
		return x.ContextSize
	}
	return 0
}

// Represents the natural language speech audio to be processed.
type AudioInput struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Instructs the speech recognizer how to process the speech audio.
	Config *InputAudioConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	// Required. The natural language speech audio to be processed.
	// A single request can contain up to 2 minutes of speech audio data.
	// The transcribed text cannot contain more than 256 bytes for virtual agent
	// interactions.
	Audio         []byte `protobuf:"bytes,2,opt,name=audio,proto3" json:"audio,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AudioInput) ProtoMessage() {}

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

func (x *AudioInput) GetConfig() *InputAudioConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *AudioInput) GetAudio() []byte {
	if x != nil {
		return x.Audio
	}
	return nil
}

// Represents the natural language speech audio to be played to the end user.
type OutputAudio struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Instructs the speech synthesizer how to generate the speech
	// audio.
	Config *OutputAudioConfig `protobuf:"bytes,1,opt,name=config,proto3" json:"config,omitempty"`
	// The natural language speech audio.
	Audio         []byte `protobuf:"bytes,2,opt,name=audio,proto3" json:"audio,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*OutputAudio) ProtoMessage() {}

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

func (x *OutputAudio) GetConfig() *OutputAudioConfig {
	if x != nil {
		return x.Config
	}
	return nil
}

func (x *OutputAudio) GetAudio() []byte {
	if x != nil {
		return x.Audio
	}
	return nil
}

// Represents a response from an automated agent.
type AutomatedAgentReply struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Response of the Dialogflow
	// [Sessions.DetectIntent][google.cloud.dialogflow.v2.Sessions.DetectIntent]
	// call.
	DetectIntentResponse *DetectIntentResponse `protobuf:"bytes,1,opt,name=detect_intent_response,json=detectIntentResponse,proto3" json:"detect_intent_response,omitempty"`
	// AutomatedAgentReply type.
	AutomatedAgentReplyType AutomatedAgentReply_AutomatedAgentReplyType `protobuf:"varint,7,opt,name=automated_agent_reply_type,json=automatedAgentReplyType,proto3,enum=google.cloud.dialogflow.v2.AutomatedAgentReply_AutomatedAgentReplyType" json:"automated_agent_reply_type,omitempty"`
	// Indicates whether the partial automated agent reply is interruptible when a
	// later reply message arrives. e.g. if the agent specified some music as
	// partial response, it can be cancelled.
	AllowCancellation bool `protobuf:"varint,8,opt,name=allow_cancellation,json=allowCancellation,proto3" json:"allow_cancellation,omitempty"`
	// The unique identifier of the current Dialogflow CX conversation page.
	// Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent
	// ID>/flows/<Flow ID>/pages/<Page ID>`.
	CxCurrentPage string `protobuf:"bytes,11,opt,name=cx_current_page,json=cxCurrentPage,proto3" json:"cx_current_page,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*AutomatedAgentReply) ProtoMessage() {}

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

func (x *AutomatedAgentReply) GetDetectIntentResponse() *DetectIntentResponse {
	if x != nil {
		return x.DetectIntentResponse
	}
	return nil
}

func (x *AutomatedAgentReply) GetAutomatedAgentReplyType() AutomatedAgentReply_AutomatedAgentReplyType {
	if x != nil {
		return x.AutomatedAgentReplyType
	}
	return AutomatedAgentReply_AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED
}

func (x *AutomatedAgentReply) GetAllowCancellation() bool {
	if x != nil {
		return x.AllowCancellation
	}
	return false
}

func (x *AutomatedAgentReply) GetCxCurrentPage() string {
	if x != nil {
		return x.CxCurrentPage
	}
	return ""
}

// Represents article answer.
type ArticleAnswer struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The article title.
	Title string `protobuf:"bytes,1,opt,name=title,proto3" json:"title,omitempty"`
	// The article URI.
	Uri string `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"`
	// Article snippets.
	Snippets []string `protobuf:"bytes,3,rep,name=snippets,proto3" json:"snippets,omitempty"`
	// Article match confidence.
	// The system's confidence score that this article is a good match for this
	// conversation, as a value from 0.0 (completely uncertain) to 1.0
	// (completely certain).
	Confidence float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
	// A map that contains metadata about the answer and the
	// document from which it originates.
	Metadata map[string]string `protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	// The name of answer record, in the format of
	// "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer Record
	// ID>"
	AnswerRecord  string `protobuf:"bytes,6,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*ArticleAnswer) ProtoMessage() {}

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

func (x *ArticleAnswer) GetTitle() string {
	if x != nil {
		return x.Title
	}
	return ""
}

func (x *ArticleAnswer) GetUri() string {
	if x != nil {
		return x.Uri
	}
	return ""
}

func (x *ArticleAnswer) GetSnippets() []string {
	if x != nil {
		return x.Snippets
	}
	return nil
}

func (x *ArticleAnswer) GetConfidence() float32 {
	if x != nil {
		return x.Confidence
	}
	return 0
}

func (x *ArticleAnswer) GetMetadata() map[string]string {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *ArticleAnswer) GetAnswerRecord() string {
	if x != nil {
		return x.AnswerRecord
	}
	return ""
}

// Represents answer from "frequently asked questions".
type FaqAnswer struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The piece of text from the `source` knowledge base document.
	Answer string `protobuf:"bytes,1,opt,name=answer,proto3" json:"answer,omitempty"`
	// The system's confidence score that this Knowledge answer is a good match
	// for this conversational query, range from 0.0 (completely uncertain)
	// to 1.0 (completely certain).
	Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
	// The corresponding FAQ question.
	Question string `protobuf:"bytes,3,opt,name=question,proto3" json:"question,omitempty"`
	// Indicates which Knowledge Document this answer was extracted
	// from.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/agent/knowledgeBases/<Knowledge Base ID>/documents/<Document ID>`.
	Source string `protobuf:"bytes,4,opt,name=source,proto3" json:"source,omitempty"`
	// A map that contains metadata about the answer and the
	// document from which it originates.
	Metadata map[string]string `protobuf:"bytes,5,rep,name=metadata,proto3" json:"metadata,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	// The name of answer record, in the format of
	// "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer Record
	// ID>"
	AnswerRecord  string `protobuf:"bytes,6,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*FaqAnswer) ProtoMessage() {}

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

func (x *FaqAnswer) GetAnswer() string {
	if x != nil {
		return x.Answer
	}
	return ""
}

func (x *FaqAnswer) GetConfidence() float32 {
	if x != nil {
		return x.Confidence
	}
	return 0
}

func (x *FaqAnswer) GetQuestion() string {
	if x != nil {
		return x.Question
	}
	return ""
}

func (x *FaqAnswer) GetSource() string {
	if x != nil {
		return x.Source
	}
	return ""
}

func (x *FaqAnswer) GetMetadata() map[string]string {
	if x != nil {
		return x.Metadata
	}
	return nil
}

func (x *FaqAnswer) GetAnswerRecord() string {
	if x != nil {
		return x.AnswerRecord
	}
	return ""
}

// Represents a smart reply answer.
type SmartReplyAnswer struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The content of the reply.
	Reply string `protobuf:"bytes,1,opt,name=reply,proto3" json:"reply,omitempty"`
	// Smart reply confidence.
	// The system's confidence score that this reply is a good match for
	// this conversation, as a value from 0.0 (completely uncertain) to 1.0
	// (completely certain).
	Confidence float32 `protobuf:"fixed32,2,opt,name=confidence,proto3" json:"confidence,omitempty"`
	// The name of answer record, in the format of
	// "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer Record
	// ID>"
	AnswerRecord  string `protobuf:"bytes,3,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SmartReplyAnswer) ProtoMessage() {}

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

func (x *SmartReplyAnswer) GetReply() string {
	if x != nil {
		return x.Reply
	}
	return ""
}

func (x *SmartReplyAnswer) GetConfidence() float32 {
	if x != nil {
		return x.Confidence
	}
	return 0
}

func (x *SmartReplyAnswer) GetAnswerRecord() string {
	if x != nil {
		return x.AnswerRecord
	}
	return ""
}

// Represents an intent suggestion.
type IntentSuggestion struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The display name of the intent.
	DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// The name of the intent.
	//
	// Types that are valid to be assigned to Intent:
	//
	//	*IntentSuggestion_IntentV2
	Intent isIntentSuggestion_Intent `protobuf_oneof:"intent"`
	// Human readable description for better understanding an intent like its
	// scope, content, result etc. Maximum character limit: 140 characters.
	Description   string `protobuf:"bytes,5,opt,name=description,proto3" json:"description,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*IntentSuggestion) ProtoMessage() {}

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

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

func (x *IntentSuggestion) GetIntent() isIntentSuggestion_Intent {
	if x != nil {
		return x.Intent
	}
	return nil
}

func (x *IntentSuggestion) GetIntentV2() string {
	if x != nil {
		if x, ok := x.Intent.(*IntentSuggestion_IntentV2); ok {
			return x.IntentV2
		}
	}
	return ""
}

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

type isIntentSuggestion_Intent interface {
	isIntentSuggestion_Intent()
}

type IntentSuggestion_IntentV2 struct {
	// The unique identifier of this
	// [intent][google.cloud.dialogflow.v2.Intent]. Format: `projects/<Project
	// ID>/locations/<Location ID>/agent/intents/<Intent ID>`.
	IntentV2 string `protobuf:"bytes,2,opt,name=intent_v2,json=intentV2,proto3,oneof"`
}

func (*IntentSuggestion_IntentV2) isIntentSuggestion_Intent() {}

// Represents a Dialogflow assist answer.
type DialogflowAssistAnswer struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Result from DetectIntent for one matched intent.
	//
	// Types that are valid to be assigned to Result:
	//
	//	*DialogflowAssistAnswer_QueryResult
	//	*DialogflowAssistAnswer_IntentSuggestion
	Result isDialogflowAssistAnswer_Result `protobuf_oneof:"result"`
	// The name of answer record, in the format of
	// "projects/<Project ID>/locations/<Location ID>/answerRecords/<Answer Record
	// ID>"
	AnswerRecord  string `protobuf:"bytes,2,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DialogflowAssistAnswer) ProtoMessage() {}

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

func (x *DialogflowAssistAnswer) GetResult() isDialogflowAssistAnswer_Result {
	if x != nil {
		return x.Result
	}
	return nil
}

func (x *DialogflowAssistAnswer) GetQueryResult() *QueryResult {
	if x != nil {
		if x, ok := x.Result.(*DialogflowAssistAnswer_QueryResult); ok {
			return x.QueryResult
		}
	}
	return nil
}

func (x *DialogflowAssistAnswer) GetIntentSuggestion() *IntentSuggestion {
	if x != nil {
		if x, ok := x.Result.(*DialogflowAssistAnswer_IntentSuggestion); ok {
			return x.IntentSuggestion
		}
	}
	return nil
}

func (x *DialogflowAssistAnswer) GetAnswerRecord() string {
	if x != nil {
		return x.AnswerRecord
	}
	return ""
}

type isDialogflowAssistAnswer_Result interface {
	isDialogflowAssistAnswer_Result()
}

type DialogflowAssistAnswer_QueryResult struct {
	// Result from v2 agent.
	QueryResult *QueryResult `protobuf:"bytes,1,opt,name=query_result,json=queryResult,proto3,oneof"`
}

type DialogflowAssistAnswer_IntentSuggestion struct {
	// An intent suggestion generated from conversation.
	IntentSuggestion *IntentSuggestion `protobuf:"bytes,5,opt,name=intent_suggestion,json=intentSuggestion,proto3,oneof"`
}

func (*DialogflowAssistAnswer_QueryResult) isDialogflowAssistAnswer_Result() {}

func (*DialogflowAssistAnswer_IntentSuggestion) isDialogflowAssistAnswer_Result() {}

// One response of different type of suggestion response which is used in
// the response of
// [Participants.AnalyzeContent][google.cloud.dialogflow.v2.Participants.AnalyzeContent]
// and
// [Participants.AnalyzeContent][google.cloud.dialogflow.v2.Participants.AnalyzeContent],
// as well as
// [HumanAgentAssistantEvent][google.cloud.dialogflow.v2.HumanAgentAssistantEvent].
type SuggestionResult struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Different type of suggestion response.
	//
	// Types that are valid to be assigned to SuggestionResponse:
	//
	//	*SuggestionResult_Error
	//	*SuggestionResult_SuggestArticlesResponse
	//	*SuggestionResult_SuggestKnowledgeAssistResponse
	//	*SuggestionResult_SuggestFaqAnswersResponse
	//	*SuggestionResult_SuggestSmartRepliesResponse
	//	*SuggestionResult_GenerateSuggestionsResponse
	SuggestionResponse isSuggestionResult_SuggestionResponse `protobuf_oneof:"suggestion_response"`
	unknownFields      protoimpl.UnknownFields
	sizeCache          protoimpl.SizeCache
}

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

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

func (*SuggestionResult) ProtoMessage() {}

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

func (x *SuggestionResult) GetSuggestionResponse() isSuggestionResult_SuggestionResponse {
	if x != nil {
		return x.SuggestionResponse
	}
	return nil
}

func (x *SuggestionResult) GetError() *status.Status {
	if x != nil {
		if x, ok := x.SuggestionResponse.(*SuggestionResult_Error); ok {
			return x.Error
		}
	}
	return nil
}

func (x *SuggestionResult) GetSuggestArticlesResponse() *SuggestArticlesResponse {
	if x != nil {
		if x, ok := x.SuggestionResponse.(*SuggestionResult_SuggestArticlesResponse); ok {
			return x.SuggestArticlesResponse
		}
	}
	return nil
}

func (x *SuggestionResult) GetSuggestKnowledgeAssistResponse() *SuggestKnowledgeAssistResponse {
	if x != nil {
		if x, ok := x.SuggestionResponse.(*SuggestionResult_SuggestKnowledgeAssistResponse); ok {
			return x.SuggestKnowledgeAssistResponse
		}
	}
	return nil
}

func (x *SuggestionResult) GetSuggestFaqAnswersResponse() *SuggestFaqAnswersResponse {
	if x != nil {
		if x, ok := x.SuggestionResponse.(*SuggestionResult_SuggestFaqAnswersResponse); ok {
			return x.SuggestFaqAnswersResponse
		}
	}
	return nil
}

func (x *SuggestionResult) GetSuggestSmartRepliesResponse() *SuggestSmartRepliesResponse {
	if x != nil {
		if x, ok := x.SuggestionResponse.(*SuggestionResult_SuggestSmartRepliesResponse); ok {
			return x.SuggestSmartRepliesResponse
		}
	}
	return nil
}

func (x *SuggestionResult) GetGenerateSuggestionsResponse() *GenerateSuggestionsResponse {
	if x != nil {
		if x, ok := x.SuggestionResponse.(*SuggestionResult_GenerateSuggestionsResponse); ok {
			return x.GenerateSuggestionsResponse
		}
	}
	return nil
}

type isSuggestionResult_SuggestionResponse interface {
	isSuggestionResult_SuggestionResponse()
}

type SuggestionResult_Error struct {
	// Error status if the request failed.
	Error *status.Status `protobuf:"bytes,1,opt,name=error,proto3,oneof"`
}

type SuggestionResult_SuggestArticlesResponse struct {
	// SuggestArticlesResponse if request is for ARTICLE_SUGGESTION.
	SuggestArticlesResponse *SuggestArticlesResponse `protobuf:"bytes,2,opt,name=suggest_articles_response,json=suggestArticlesResponse,proto3,oneof"`
}

type SuggestionResult_SuggestKnowledgeAssistResponse struct {
	// SuggestKnowledgeAssistResponse if request is for KNOWLEDGE_ASSIST.
	SuggestKnowledgeAssistResponse *SuggestKnowledgeAssistResponse `protobuf:"bytes,8,opt,name=suggest_knowledge_assist_response,json=suggestKnowledgeAssistResponse,proto3,oneof"`
}

type SuggestionResult_SuggestFaqAnswersResponse struct {
	// SuggestFaqAnswersResponse if request is for FAQ_ANSWER.
	SuggestFaqAnswersResponse *SuggestFaqAnswersResponse `protobuf:"bytes,3,opt,name=suggest_faq_answers_response,json=suggestFaqAnswersResponse,proto3,oneof"`
}

type SuggestionResult_SuggestSmartRepliesResponse struct {
	// SuggestSmartRepliesResponse if request is for SMART_REPLY.
	SuggestSmartRepliesResponse *SuggestSmartRepliesResponse `protobuf:"bytes,4,opt,name=suggest_smart_replies_response,json=suggestSmartRepliesResponse,proto3,oneof"`
}

type SuggestionResult_GenerateSuggestionsResponse struct {
	// Suggestions generated using generators triggered by customer or agent
	// messages.
	GenerateSuggestionsResponse *GenerateSuggestionsResponse `protobuf:"bytes,9,opt,name=generate_suggestions_response,json=generateSuggestionsResponse,proto3,oneof"`
}

func (*SuggestionResult_Error) isSuggestionResult_SuggestionResponse() {}

func (*SuggestionResult_SuggestArticlesResponse) isSuggestionResult_SuggestionResponse() {}

func (*SuggestionResult_SuggestKnowledgeAssistResponse) isSuggestionResult_SuggestionResponse() {}

func (*SuggestionResult_SuggestFaqAnswersResponse) isSuggestionResult_SuggestionResponse() {}

func (*SuggestionResult_SuggestSmartRepliesResponse) isSuggestionResult_SuggestionResponse() {}

func (*SuggestionResult_GenerateSuggestionsResponse) isSuggestionResult_SuggestionResponse() {}

// Defines the language used in the input text.
type InputTextConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The language of this conversational query. See [Language
	// Support](https://cloud.google.com/dialogflow/docs/reference/language)
	// for a list of the currently supported language codes.
	LanguageCode  string `protobuf:"bytes,1,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*InputTextConfig) ProtoMessage() {}

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

func (x *InputTextConfig) GetLanguageCode() string {
	if x != nil {
		return x.LanguageCode
	}
	return ""
}

// Represents a part of a message possibly annotated with an entity. The part
// can be an entity or purely a part of the message between two entities or
// message start/end.
type AnnotatedMessagePart struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// A part of a message possibly annotated with an entity.
	Text string `protobuf:"bytes,1,opt,name=text,proto3" json:"text,omitempty"`
	// The [Dialogflow system entity
	// type](https://cloud.google.com/dialogflow/docs/reference/system-entities)
	// of this message part. If this is empty, Dialogflow could not annotate the
	// phrase part with a system entity.
	EntityType string `protobuf:"bytes,2,opt,name=entity_type,json=entityType,proto3" json:"entity_type,omitempty"`
	// The [Dialogflow system entity formatted value
	// ](https://cloud.google.com/dialogflow/docs/reference/system-entities) of
	// this message part. For example for a system entity of type
	// `@sys.unit-currency`, this may contain:
	// <pre>
	//
	//	{
	//	  "amount": 5,
	//	  "currency": "USD"
	//	}
	//
	// </pre>
	FormattedValue *structpb.Value `protobuf:"bytes,3,opt,name=formatted_value,json=formattedValue,proto3" json:"formatted_value,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

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

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

func (*AnnotatedMessagePart) ProtoMessage() {}

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

func (x *AnnotatedMessagePart) GetText() string {
	if x != nil {
		return x.Text
	}
	return ""
}

func (x *AnnotatedMessagePart) GetEntityType() string {
	if x != nil {
		return x.EntityType
	}
	return ""
}

func (x *AnnotatedMessagePart) GetFormattedValue() *structpb.Value {
	if x != nil {
		return x.FormattedValue
	}
	return nil
}

// Represents the result of annotation for the message.
type MessageAnnotation struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The collection of annotated message parts ordered by their
	// position in the message. You can recover the annotated message by
	// concatenating [AnnotatedMessagePart.text].
	Parts []*AnnotatedMessagePart `protobuf:"bytes,1,rep,name=parts,proto3" json:"parts,omitempty"`
	// Indicates whether the text message contains entities.
	ContainEntities bool `protobuf:"varint,2,opt,name=contain_entities,json=containEntities,proto3" json:"contain_entities,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

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

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

func (*MessageAnnotation) ProtoMessage() {}

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

func (x *MessageAnnotation) GetParts() []*AnnotatedMessagePart {
	if x != nil {
		return x.Parts
	}
	return nil
}

func (x *MessageAnnotation) GetContainEntities() bool {
	if x != nil {
		return x.ContainEntities
	}
	return false
}

// Represents the action to take for a tool call that requires confirmation.
type SuggestionInput struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. Format: `projects/<Project ID>/locations/<Location
	// ID>/answerRecords/<Answer Record ID>`
	// The answer record associated with the tool call.
	AnswerRecord string `protobuf:"bytes,1,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
	// Optional. Parameters to be used for the tool call.  If not provided, the
	// tool will be called without any parameters.
	Parameters *structpb.Struct `protobuf:"bytes,4,opt,name=parameters,proto3" json:"parameters,omitempty"`
	// Optional. The type of action to take with the tool.
	Action SuggestionInput_Action `protobuf:"varint,5,opt,name=action,proto3,enum=google.cloud.dialogflow.v2.SuggestionInput_Action" json:"action,omitempty"`
	// Optional. Time when the current suggest input is sent. For tool calls, this
	// timestamp (along with the answer record) will be included in the
	// corresponding tool call result so that it can be identified.
	SendTime      *timestamppb.Timestamp `protobuf:"bytes,7,opt,name=send_time,json=sendTime,proto3" json:"send_time,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SuggestionInput) ProtoMessage() {}

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

func (x *SuggestionInput) GetAnswerRecord() string {
	if x != nil {
		return x.AnswerRecord
	}
	return ""
}

func (x *SuggestionInput) GetParameters() *structpb.Struct {
	if x != nil {
		return x.Parameters
	}
	return nil
}

func (x *SuggestionInput) GetAction() SuggestionInput_Action {
	if x != nil {
		return x.Action
	}
	return SuggestionInput_ACTION_UNSPECIFIED
}

func (x *SuggestionInput) GetSendTime() *timestamppb.Timestamp {
	if x != nil {
		return x.SendTime
	}
	return nil
}

// Represents the parameters of human assist query.
type AssistQueryParameters struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Key-value filters on the metadata of documents returned by article
	// suggestion. If specified, article suggestion only returns suggested
	// documents that match all filters in their
	// [Document.metadata][google.cloud.dialogflow.v2.Document.metadata]. Multiple
	// values for a metadata key should be concatenated by comma. For example,
	// filters to match all documents that have 'US' or 'CA' in their market
	// metadata values and 'agent' in their user metadata values will be
	// ```
	//
	//	documents_metadata_filters {
	//	  key: "market"
	//	  value: "US,CA"
	//	}
	//
	//	documents_metadata_filters {
	//	  key: "user"
	//	  value: "agent"
	//	}
	//
	// ```
	DocumentsMetadataFilters map[string]string `protobuf:"bytes,1,rep,name=documents_metadata_filters,json=documentsMetadataFilters,proto3" json:"documents_metadata_filters,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	unknownFields            protoimpl.UnknownFields
	sizeCache                protoimpl.SizeCache
}

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

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

func (*AssistQueryParameters) ProtoMessage() {}

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

func (x *AssistQueryParameters) GetDocumentsMetadataFilters() map[string]string {
	if x != nil {
		return x.DocumentsMetadataFilters
	}
	return nil
}

// The request message for
// [Participants.SuggestKnowledgeAssist][google.cloud.dialogflow.v2.Participants.SuggestKnowledgeAssist].
type SuggestKnowledgeAssistRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the participant to fetch suggestions for.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
	Parent string `protobuf:"bytes,1,opt,name=parent,proto3" json:"parent,omitempty"`
	// Optional. The name of the latest conversation message to compile
	// suggestions for. If empty, it will be the latest message of the
	// conversation. Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
	LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
	// Optional. Max number of messages prior to and including
	// [latest_message][google.cloud.dialogflow.v2.SuggestKnowledgeAssistRequest.latest_message]
	// to use as context when compiling the suggestion. The context size is by
	// default 100 and at most 100.
	ContextSize int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
	// Optional. The previously suggested query for the given conversation. This
	// helps identify whether the next suggestion we generate is reasonably
	// different from the previous one. This is useful to avoid similar
	// suggestions within the conversation.
	PreviousSuggestedQuery string `protobuf:"bytes,4,opt,name=previous_suggested_query,json=previousSuggestedQuery,proto3" json:"previous_suggested_query,omitempty"`
	unknownFields          protoimpl.UnknownFields
	sizeCache              protoimpl.SizeCache
}

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

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

func (*SuggestKnowledgeAssistRequest) ProtoMessage() {}

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

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

func (x *SuggestKnowledgeAssistRequest) GetLatestMessage() string {
	if x != nil {
		return x.LatestMessage
	}
	return ""
}

func (x *SuggestKnowledgeAssistRequest) GetContextSize() int32 {
	if x != nil {
		return x.ContextSize
	}
	return 0
}

func (x *SuggestKnowledgeAssistRequest) GetPreviousSuggestedQuery() string {
	if x != nil {
		return x.PreviousSuggestedQuery
	}
	return ""
}

// The response message for
// [Participants.SuggestKnowledgeAssist][google.cloud.dialogflow.v2.Participants.SuggestKnowledgeAssist].
type SuggestKnowledgeAssistResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Output only. Knowledge Assist suggestion.
	KnowledgeAssistAnswer *KnowledgeAssistAnswer `protobuf:"bytes,1,opt,name=knowledge_assist_answer,json=knowledgeAssistAnswer,proto3" json:"knowledge_assist_answer,omitempty"`
	// The name of the latest conversation message used to compile suggestion for.
	// Format: `projects/<Project ID>/locations/<Location
	// ID>/conversations/<Conversation ID>/messages/<Message ID>`.
	LatestMessage string `protobuf:"bytes,2,opt,name=latest_message,json=latestMessage,proto3" json:"latest_message,omitempty"`
	// Number of messages prior to and including
	// [latest_message][google.cloud.dialogflow.v2.SuggestKnowledgeAssistResponse.latest_message]
	// to compile the suggestion. It may be smaller than the
	// [SuggestKnowledgeAssistRequest.context_size][google.cloud.dialogflow.v2.SuggestKnowledgeAssistRequest.context_size]
	// field in the request if there are fewer messages in the conversation.
	ContextSize   int32 `protobuf:"varint,3,opt,name=context_size,json=contextSize,proto3" json:"context_size,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SuggestKnowledgeAssistResponse) ProtoMessage() {}

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

func (x *SuggestKnowledgeAssistResponse) GetKnowledgeAssistAnswer() *KnowledgeAssistAnswer {
	if x != nil {
		return x.KnowledgeAssistAnswer
	}
	return nil
}

func (x *SuggestKnowledgeAssistResponse) GetLatestMessage() string {
	if x != nil {
		return x.LatestMessage
	}
	return ""
}

func (x *SuggestKnowledgeAssistResponse) GetContextSize() int32 {
	if x != nil {
		return x.ContextSize
	}
	return 0
}

// Debug information related to ingested context reference.
type IngestedContextReferenceDebugInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Indicates if the project is allowlisted to use ingested context
	// reference.
	ProjectNotAllowlisted bool `protobuf:"varint,1,opt,name=project_not_allowlisted,json=projectNotAllowlisted,proto3" json:"project_not_allowlisted,omitempty"`
	// The status of context_reference retrieval from database.
	ContextReferenceRetrieved bool `protobuf:"varint,2,opt,name=context_reference_retrieved,json=contextReferenceRetrieved,proto3" json:"context_reference_retrieved,omitempty"`
	// Parameters ingested from the context reference.
	IngestedParametersDebugInfo []*IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo `protobuf:"bytes,3,rep,name=ingested_parameters_debug_info,json=ingestedParametersDebugInfo,proto3" json:"ingested_parameters_debug_info,omitempty"`
	unknownFields               protoimpl.UnknownFields
	sizeCache                   protoimpl.SizeCache
}

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

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

func (*IngestedContextReferenceDebugInfo) ProtoMessage() {}

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

func (x *IngestedContextReferenceDebugInfo) GetProjectNotAllowlisted() bool {
	if x != nil {
		return x.ProjectNotAllowlisted
	}
	return false
}

func (x *IngestedContextReferenceDebugInfo) GetContextReferenceRetrieved() bool {
	if x != nil {
		return x.ContextReferenceRetrieved
	}
	return false
}

func (x *IngestedContextReferenceDebugInfo) GetIngestedParametersDebugInfo() []*IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo {
	if x != nil {
		return x.IngestedParametersDebugInfo
	}
	return nil
}

// Message to represent the latency of the service.
type ServiceLatency struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// A list of internal service latencies.
	InternalServiceLatencies []*ServiceLatency_InternalServiceLatency `protobuf:"bytes,1,rep,name=internal_service_latencies,json=internalServiceLatencies,proto3" json:"internal_service_latencies,omitempty"`
	unknownFields            protoimpl.UnknownFields
	sizeCache                protoimpl.SizeCache
}

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

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

func (*ServiceLatency) ProtoMessage() {}

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

func (x *ServiceLatency) GetInternalServiceLatencies() []*ServiceLatency_InternalServiceLatency {
	if x != nil {
		return x.InternalServiceLatencies
	}
	return nil
}

// Debug information related to Knowledge Assist feature.
type KnowledgeAssistDebugInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Reason for query generation.
	QueryGenerationFailureReason KnowledgeAssistDebugInfo_QueryGenerationFailureReason `protobuf:"varint,1,opt,name=query_generation_failure_reason,json=queryGenerationFailureReason,proto3,enum=google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo_QueryGenerationFailureReason" json:"query_generation_failure_reason,omitempty"`
	// Reason for query categorization.
	QueryCategorizationFailureReason KnowledgeAssistDebugInfo_QueryCategorizationFailureReason `protobuf:"varint,2,opt,name=query_categorization_failure_reason,json=queryCategorizationFailureReason,proto3,enum=google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo_QueryCategorizationFailureReason" json:"query_categorization_failure_reason,omitempty"`
	// Response reason from datastore which indicates data serving status or
	// answer quality degradation.
	DatastoreResponseReason DatastoreResponseReason `protobuf:"varint,3,opt,name=datastore_response_reason,json=datastoreResponseReason,proto3,enum=google.cloud.dialogflow.v2.DatastoreResponseReason" json:"datastore_response_reason,omitempty"`
	// Configured behaviors for Knowedge Assist.
	KnowledgeAssistBehavior *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior `protobuf:"bytes,4,opt,name=knowledge_assist_behavior,json=knowledgeAssistBehavior,proto3" json:"knowledge_assist_behavior,omitempty"`
	// Information about parameters ingested for search knowledge.
	IngestedContextReferenceDebugInfo *IngestedContextReferenceDebugInfo `protobuf:"bytes,5,opt,name=ingested_context_reference_debug_info,json=ingestedContextReferenceDebugInfo,proto3" json:"ingested_context_reference_debug_info,omitempty"`
	// The latency of the service.
	ServiceLatency *ServiceLatency `protobuf:"bytes,6,opt,name=service_latency,json=serviceLatency,proto3" json:"service_latency,omitempty"`
	unknownFields  protoimpl.UnknownFields
	sizeCache      protoimpl.SizeCache
}

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

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

func (*KnowledgeAssistDebugInfo) ProtoMessage() {}

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

func (x *KnowledgeAssistDebugInfo) GetQueryGenerationFailureReason() KnowledgeAssistDebugInfo_QueryGenerationFailureReason {
	if x != nil {
		return x.QueryGenerationFailureReason
	}
	return KnowledgeAssistDebugInfo_QUERY_GENERATION_FAILURE_REASON_UNSPECIFIED
}

func (x *KnowledgeAssistDebugInfo) GetQueryCategorizationFailureReason() KnowledgeAssistDebugInfo_QueryCategorizationFailureReason {
	if x != nil {
		return x.QueryCategorizationFailureReason
	}
	return KnowledgeAssistDebugInfo_QUERY_CATEGORIZATION_FAILURE_REASON_UNSPECIFIED
}

func (x *KnowledgeAssistDebugInfo) GetDatastoreResponseReason() DatastoreResponseReason {
	if x != nil {
		return x.DatastoreResponseReason
	}
	return DatastoreResponseReason_DATASTORE_RESPONSE_REASON_UNSPECIFIED
}

func (x *KnowledgeAssistDebugInfo) GetKnowledgeAssistBehavior() *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior {
	if x != nil {
		return x.KnowledgeAssistBehavior
	}
	return nil
}

func (x *KnowledgeAssistDebugInfo) GetIngestedContextReferenceDebugInfo() *IngestedContextReferenceDebugInfo {
	if x != nil {
		return x.IngestedContextReferenceDebugInfo
	}
	return nil
}

func (x *KnowledgeAssistDebugInfo) GetServiceLatency() *ServiceLatency {
	if x != nil {
		return x.ServiceLatency
	}
	return nil
}

// Represents a Knowledge Assist answer.
type KnowledgeAssistAnswer struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The query suggested based on the context. Suggestion is made only if it
	// is different from the previous suggestion.
	SuggestedQuery *KnowledgeAssistAnswer_SuggestedQuery `protobuf:"bytes,1,opt,name=suggested_query,json=suggestedQuery,proto3" json:"suggested_query,omitempty"`
	// The answer generated for the suggested query. Whether or not an answer is
	// generated depends on how confident we are about the generated query.
	SuggestedQueryAnswer *KnowledgeAssistAnswer_KnowledgeAnswer `protobuf:"bytes,2,opt,name=suggested_query_answer,json=suggestedQueryAnswer,proto3" json:"suggested_query_answer,omitempty"`
	// The name of the answer record.
	// Format: `projects/<Project ID>/locations/<location ID>/answer
	// Records/<Answer Record ID>`.
	AnswerRecord string `protobuf:"bytes,3,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
	// Debug information related to Knowledge Assist feature.
	KnowledgeAssistDebugInfo *KnowledgeAssistDebugInfo `protobuf:"bytes,7,opt,name=knowledge_assist_debug_info,json=knowledgeAssistDebugInfo,proto3" json:"knowledge_assist_debug_info,omitempty"`
	unknownFields            protoimpl.UnknownFields
	sizeCache                protoimpl.SizeCache
}

func (x *KnowledgeAssistAnswer) Reset() {
	*x = KnowledgeAssistAnswer{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[38]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*KnowledgeAssistAnswer) ProtoMessage() {}

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

func (x *KnowledgeAssistAnswer) GetSuggestedQuery() *KnowledgeAssistAnswer_SuggestedQuery {
	if x != nil {
		return x.SuggestedQuery
	}
	return nil
}

func (x *KnowledgeAssistAnswer) GetSuggestedQueryAnswer() *KnowledgeAssistAnswer_KnowledgeAnswer {
	if x != nil {
		return x.SuggestedQueryAnswer
	}
	return nil
}

func (x *KnowledgeAssistAnswer) GetAnswerRecord() string {
	if x != nil {
		return x.AnswerRecord
	}
	return ""
}

func (x *KnowledgeAssistAnswer) GetKnowledgeAssistDebugInfo() *KnowledgeAssistDebugInfo {
	if x != nil {
		return x.KnowledgeAssistDebugInfo
	}
	return nil
}

// A GeneratorSuggestion answer.
type GenerateSuggestionsResponse_GeneratorSuggestionAnswer struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Suggestion details.
	GeneratorSuggestion *GeneratorSuggestion `protobuf:"bytes,1,opt,name=generator_suggestion,json=generatorSuggestion,proto3" json:"generator_suggestion,omitempty"`
	// The name of the generator used to generate this suggestion. Format:
	// `projects/<Project ID>/locations/<Location ID>/generators/<Generator
	// ID>`.
	SourceGenerator string `protobuf:"bytes,2,opt,name=source_generator,json=sourceGenerator,proto3" json:"source_generator,omitempty"`
	// Answer record that uniquely identifies the suggestion. This can be used
	// to provide suggestion feedback.
	AnswerRecord  string `protobuf:"bytes,3,opt,name=answer_record,json=answerRecord,proto3" json:"answer_record,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *GenerateSuggestionsResponse_GeneratorSuggestionAnswer) Reset() {
	*x = GenerateSuggestionsResponse_GeneratorSuggestionAnswer{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[40]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*GenerateSuggestionsResponse_GeneratorSuggestionAnswer) ProtoMessage() {}

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

func (x *GenerateSuggestionsResponse_GeneratorSuggestionAnswer) GetGeneratorSuggestion() *GeneratorSuggestion {
	if x != nil {
		return x.GeneratorSuggestion
	}
	return nil
}

func (x *GenerateSuggestionsResponse_GeneratorSuggestionAnswer) GetSourceGenerator() string {
	if x != nil {
		return x.SourceGenerator
	}
	return ""
}

func (x *GenerateSuggestionsResponse_GeneratorSuggestionAnswer) GetAnswerRecord() string {
	if x != nil {
		return x.AnswerRecord
	}
	return ""
}

// Debug information related to ingested parameters from context reference.
type IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The name of the parameter in the context reference.
	Parameter string `protobuf:"bytes,1,opt,name=parameter,proto3" json:"parameter,omitempty"`
	// The ingestion status for this specific parameter.
	IngestionStatus IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus `protobuf:"varint,2,opt,name=ingestion_status,json=ingestionStatus,proto3,enum=google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus" json:"ingestion_status,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

func (x *IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo) Reset() {
	*x = IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[44]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo) ProtoMessage() {}

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

func (x *IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo) GetParameter() string {
	if x != nil {
		return x.Parameter
	}
	return ""
}

func (x *IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo) GetIngestionStatus() IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus {
	if x != nil {
		return x.IngestionStatus
	}
	return IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_INGESTION_STATUS_UNSPECIFIED
}

// Message to represent the latency of an internal service.
type ServiceLatency_InternalServiceLatency struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The name of the internal service.
	Step string `protobuf:"bytes,1,opt,name=step,proto3" json:"step,omitempty"`
	// The latency of the internal service in milliseconds.
	LatencyMs float32 `protobuf:"fixed32,2,opt,name=latency_ms,json=latencyMs,proto3" json:"latency_ms,omitempty"`
	// The start time of the internal service.
	StartTime *timestamppb.Timestamp `protobuf:"bytes,3,opt,name=start_time,json=startTime,proto3" json:"start_time,omitempty"`
	// The completion time of the internal service.
	CompleteTime  *timestamppb.Timestamp `protobuf:"bytes,4,opt,name=complete_time,json=completeTime,proto3" json:"complete_time,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *ServiceLatency_InternalServiceLatency) Reset() {
	*x = ServiceLatency_InternalServiceLatency{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[45]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*ServiceLatency_InternalServiceLatency) ProtoMessage() {}

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

func (x *ServiceLatency_InternalServiceLatency) GetStep() string {
	if x != nil {
		return x.Step
	}
	return ""
}

func (x *ServiceLatency_InternalServiceLatency) GetLatencyMs() float32 {
	if x != nil {
		return x.LatencyMs
	}
	return 0
}

func (x *ServiceLatency_InternalServiceLatency) GetStartTime() *timestamppb.Timestamp {
	if x != nil {
		return x.StartTime
	}
	return nil
}

func (x *ServiceLatency_InternalServiceLatency) GetCompleteTime() *timestamppb.Timestamp {
	if x != nil {
		return x.CompleteTime
	}
	return nil
}

// Configured behaviors for Knowedge Assist.
type KnowledgeAssistDebugInfo_KnowledgeAssistBehavior struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Whether data store agent rewriter was turned off for the request.
	AnswerGenerationRewriterOn bool `protobuf:"varint,1,opt,name=answer_generation_rewriter_on,json=answerGenerationRewriterOn,proto3" json:"answer_generation_rewriter_on,omitempty"`
	// Whether end_user_metadata is included in the data store agent call.
	EndUserMetadataIncluded bool `protobuf:"varint,2,opt,name=end_user_metadata_included,json=endUserMetadataIncluded,proto3" json:"end_user_metadata_included,omitempty"`
	// Whether customers configured to return query only in the
	// conversation profile.
	ReturnQueryOnly bool `protobuf:"varint,4,opt,name=return_query_only,json=returnQueryOnly,proto3" json:"return_query_only,omitempty"`
	// Whether customers configured to use pubsub to deliver.
	UsePubsubDelivery bool `protobuf:"varint,5,opt,name=use_pubsub_delivery,json=usePubsubDelivery,proto3" json:"use_pubsub_delivery,omitempty"`
	// Whether customers configured to disable the synchronous delivery of
	// Knowedge Assist response.
	DisableSyncDelivery bool `protobuf:"varint,6,opt,name=disable_sync_delivery,json=disableSyncDelivery,proto3" json:"disable_sync_delivery,omitempty"`
	// Whether previously suggested queries are included in the query generation
	// process.
	PreviousQueriesIncluded bool `protobuf:"varint,7,opt,name=previous_queries_included,json=previousQueriesIncluded,proto3" json:"previous_queries_included,omitempty"`
	// Translated message is included in query generation process.
	UseTranslatedMessage bool `protobuf:"varint,8,opt,name=use_translated_message,json=useTranslatedMessage,proto3" json:"use_translated_message,omitempty"`
	// Safety filter is adjusted by user.
	UseCustomSafetyFilterLevel bool `protobuf:"varint,9,opt,name=use_custom_safety_filter_level,json=useCustomSafetyFilterLevel,proto3" json:"use_custom_safety_filter_level,omitempty"`
	// Conversation transcript has mixed languages.
	ConversationTranscriptHasMixedLanguages bool `protobuf:"varint,10,opt,name=conversation_transcript_has_mixed_languages,json=conversationTranscriptHasMixedLanguages,proto3" json:"conversation_transcript_has_mixed_languages,omitempty"`
	// Whether the agent language from the translation generator mismatches the
	// end-user language.
	QueryGenerationAgentLanguageMismatch bool `protobuf:"varint,11,opt,name=query_generation_agent_language_mismatch,json=queryGenerationAgentLanguageMismatch,proto3" json:"query_generation_agent_language_mismatch,omitempty"`
	// Whether the end-user language from the translation generator mismatches
	// the end-user language.
	QueryGenerationEndUserLanguageMismatch bool `protobuf:"varint,12,opt,name=query_generation_end_user_language_mismatch,json=queryGenerationEndUserLanguageMismatch,proto3" json:"query_generation_end_user_language_mismatch,omitempty"`
	// This field indicates whether third party connectors are enabled for the
	// project
	ThirdPartyConnectorAllowed bool `protobuf:"varint,13,opt,name=third_party_connector_allowed,json=thirdPartyConnectorAllowed,proto3" json:"third_party_connector_allowed,omitempty"`
	// Indicates that the query generation model generated multiple queries.
	MultipleQueriesGenerated bool `protobuf:"varint,14,opt,name=multiple_queries_generated,json=multipleQueriesGenerated,proto3" json:"multiple_queries_generated,omitempty"`
	// Indicates that the generated query contains search context.
	QueryContainedSearchContext bool `protobuf:"varint,15,opt,name=query_contained_search_context,json=queryContainedSearchContext,proto3" json:"query_contained_search_context,omitempty"`
	// Indicates that invalid items were skipped when parsing the LLM response.
	InvalidItemsQuerySuggestionSkipped bool `protobuf:"varint,16,opt,name=invalid_items_query_suggestion_skipped,json=invalidItemsQuerySuggestionSkipped,proto3" json:"invalid_items_query_suggestion_skipped,omitempty"`
	// True if the primary suggested query was redacted and replaced by an
	// additional query.
	PrimaryQueryRedactedAndReplaced bool `protobuf:"varint,17,opt,name=primary_query_redacted_and_replaced,json=primaryQueryRedactedAndReplaced,proto3" json:"primary_query_redacted_and_replaced,omitempty"`
	// The number of search contexts appended to the query.
	AppendedSearchContextCount int32 `protobuf:"varint,18,opt,name=appended_search_context_count,json=appendedSearchContextCount,proto3" json:"appended_search_context_count,omitempty"`
	unknownFields              protoimpl.UnknownFields
	sizeCache                  protoimpl.SizeCache
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) Reset() {
	*x = KnowledgeAssistDebugInfo_KnowledgeAssistBehavior{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[46]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) ProtoMessage() {}

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

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetAnswerGenerationRewriterOn() bool {
	if x != nil {
		return x.AnswerGenerationRewriterOn
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetEndUserMetadataIncluded() bool {
	if x != nil {
		return x.EndUserMetadataIncluded
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetReturnQueryOnly() bool {
	if x != nil {
		return x.ReturnQueryOnly
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetUsePubsubDelivery() bool {
	if x != nil {
		return x.UsePubsubDelivery
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetDisableSyncDelivery() bool {
	if x != nil {
		return x.DisableSyncDelivery
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetPreviousQueriesIncluded() bool {
	if x != nil {
		return x.PreviousQueriesIncluded
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetUseTranslatedMessage() bool {
	if x != nil {
		return x.UseTranslatedMessage
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetUseCustomSafetyFilterLevel() bool {
	if x != nil {
		return x.UseCustomSafetyFilterLevel
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetConversationTranscriptHasMixedLanguages() bool {
	if x != nil {
		return x.ConversationTranscriptHasMixedLanguages
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetQueryGenerationAgentLanguageMismatch() bool {
	if x != nil {
		return x.QueryGenerationAgentLanguageMismatch
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetQueryGenerationEndUserLanguageMismatch() bool {
	if x != nil {
		return x.QueryGenerationEndUserLanguageMismatch
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetThirdPartyConnectorAllowed() bool {
	if x != nil {
		return x.ThirdPartyConnectorAllowed
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetMultipleQueriesGenerated() bool {
	if x != nil {
		return x.MultipleQueriesGenerated
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetQueryContainedSearchContext() bool {
	if x != nil {
		return x.QueryContainedSearchContext
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetInvalidItemsQuerySuggestionSkipped() bool {
	if x != nil {
		return x.InvalidItemsQuerySuggestionSkipped
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetPrimaryQueryRedactedAndReplaced() bool {
	if x != nil {
		return x.PrimaryQueryRedactedAndReplaced
	}
	return false
}

func (x *KnowledgeAssistDebugInfo_KnowledgeAssistBehavior) GetAppendedSearchContextCount() int32 {
	if x != nil {
		return x.AppendedSearchContextCount
	}
	return 0
}

// Represents a suggested query.
type KnowledgeAssistAnswer_SuggestedQuery struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Suggested query text.
	QueryText     string `protobuf:"bytes,1,opt,name=query_text,json=queryText,proto3" json:"query_text,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *KnowledgeAssistAnswer_SuggestedQuery) Reset() {
	*x = KnowledgeAssistAnswer_SuggestedQuery{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[47]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*KnowledgeAssistAnswer_SuggestedQuery) ProtoMessage() {}

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

func (x *KnowledgeAssistAnswer_SuggestedQuery) GetQueryText() string {
	if x != nil {
		return x.QueryText
	}
	return ""
}

// Represents an answer from Knowledge. Currently supports FAQ and Generative
// answers.
type KnowledgeAssistAnswer_KnowledgeAnswer struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The piece of text from the `source` that answers this suggested query.
	AnswerText string `protobuf:"bytes,1,opt,name=answer_text,json=answerText,proto3" json:"answer_text,omitempty"`
	// Source of result.
	//
	// Types that are valid to be assigned to Source:
	//
	//	*KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource_
	//	*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_
	Source        isKnowledgeAssistAnswer_KnowledgeAnswer_Source `protobuf_oneof:"source"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer) Reset() {
	*x = KnowledgeAssistAnswer_KnowledgeAnswer{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[48]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*KnowledgeAssistAnswer_KnowledgeAnswer) ProtoMessage() {}

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

func (x *KnowledgeAssistAnswer_KnowledgeAnswer) GetAnswerText() string {
	if x != nil {
		return x.AnswerText
	}
	return ""
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer) GetSource() isKnowledgeAssistAnswer_KnowledgeAnswer_Source {
	if x != nil {
		return x.Source
	}
	return nil
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer) GetFaqSource() *KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource {
	if x != nil {
		if x, ok := x.Source.(*KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource_); ok {
			return x.FaqSource
		}
	}
	return nil
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer) GetGenerativeSource() *KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource {
	if x != nil {
		if x, ok := x.Source.(*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_); ok {
			return x.GenerativeSource
		}
	}
	return nil
}

type isKnowledgeAssistAnswer_KnowledgeAnswer_Source interface {
	isKnowledgeAssistAnswer_KnowledgeAnswer_Source()
}

type KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource_ struct {
	// Populated if the prediction came from FAQ.
	FaqSource *KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource `protobuf:"bytes,3,opt,name=faq_source,json=faqSource,proto3,oneof"`
}

type KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_ struct {
	// Populated if the prediction was Generative.
	GenerativeSource *KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource `protobuf:"bytes,4,opt,name=generative_source,json=generativeSource,proto3,oneof"`
}

func (*KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource_) isKnowledgeAssistAnswer_KnowledgeAnswer_Source() {
}

func (*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_) isKnowledgeAssistAnswer_KnowledgeAnswer_Source() {
}

// Details about source of FAQ answer.
type KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The corresponding FAQ question.
	Question      string `protobuf:"bytes,2,opt,name=question,proto3" json:"question,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource) Reset() {
	*x = KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[49]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource) ProtoMessage() {}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[49]
	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 KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource.ProtoReflect.Descriptor instead.
func (*KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{38, 1, 0}
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource) GetQuestion() string {
	if x != nil {
		return x.Question
	}
	return ""
}

// Details about source of Generative answer.
type KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// All snippets used for this Generative Prediction, with their source URI
	// and data.
	Snippets      []*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet `protobuf:"bytes,1,rep,name=snippets,proto3" json:"snippets,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource) Reset() {
	*x = KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[50]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource) ProtoMessage() {}

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

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource) GetSnippets() []*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet {
	if x != nil {
		return x.Snippets
	}
	return nil
}

// Snippet Source for a Generative Prediction.
type KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// URI the data is sourced from.
	Uri string `protobuf:"bytes,2,opt,name=uri,proto3" json:"uri,omitempty"`
	// Text taken from that URI.
	Text string `protobuf:"bytes,3,opt,name=text,proto3" json:"text,omitempty"`
	// Title of the document.
	Title string `protobuf:"bytes,4,opt,name=title,proto3" json:"title,omitempty"`
	// Metadata of the document.
	Metadata      *structpb.Struct `protobuf:"bytes,5,opt,name=metadata,proto3" json:"metadata,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet) Reset() {
	*x = KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet{}
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[51]
	ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x))
	ms.StoreMessageInfo(mi)
}

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

func (*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet) ProtoMessage() {}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet) ProtoReflect() protoreflect.Message {
	mi := &file_google_cloud_dialogflow_v2_participant_proto_msgTypes[51]
	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 KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet.ProtoReflect.Descriptor instead.
func (*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet) Descriptor() ([]byte, []int) {
	return file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP(), []int{38, 1, 1, 0}
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet) GetUri() string {
	if x != nil {
		return x.Uri
	}
	return ""
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet) GetText() string {
	if x != nil {
		return x.Text
	}
	return ""
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet) GetTitle() string {
	if x != nil {
		return x.Title
	}
	return ""
}

func (x *KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet) GetMetadata() *structpb.Struct {
	if x != nil {
		return x.Metadata
	}
	return nil
}

var File_google_cloud_dialogflow_v2_participant_proto protoreflect.FileDescriptor

const file_google_cloud_dialogflow_v2_participant_proto_rawDesc = "" +
	"\n" +
	",google/cloud/dialogflow/v2/participant.proto\x12\x1agoogle.cloud.dialogflow.v2\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/v2/audio_config.proto\x1a*google/cloud/dialogflow/v2/generator.proto\x1a(google/cloud/dialogflow/v2/session.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\x1a\x1fgoogle/protobuf/timestamp.proto\x1a\x17google/rpc/status.proto\"\xf1\a\n" +
	"\vParticipant\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x01R\x04name\x12E\n" +
	"\x04role\x18\x02 \x01(\x0e2,.google.cloud.dialogflow.v2.Participant.RoleB\x03\xe0A\x05R\x04role\x12>\n" +
	"\x19sip_recording_media_label\x18\x06 \x01(\tB\x03\xe0A\x01R\x16sipRecordingMediaLabel\x12B\n" +
	"\x1bobfuscated_external_user_id\x18\a \x01(\tB\x03\xe0A\x01R\x18obfuscatedExternalUserId\x12\x88\x01\n" +
	"\x1adocuments_metadata_filters\x18\b \x03(\v2E.google.cloud.dialogflow.v2.Participant.DocumentsMetadataFiltersEntryB\x03\xe0A\x01R\x18documentsMetadataFilters\x12q\n" +
	"\x14agent_desktop_source\x18\n" +
	" \x01(\x0e2:.google.cloud.dialogflow.v2.Participant.AgentDesktopSourceB\x03\xe0A\x01R\x12agentDesktopSource\x1aK\n" +
	"\x1dDocumentsMetadataFiltersEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"P\n" +
	"\x04Role\x12\x14\n" +
	"\x10ROLE_UNSPECIFIED\x10\x00\x12\x0f\n" +
	"\vHUMAN_AGENT\x10\x01\x12\x13\n" +
	"\x0fAUTOMATED_AGENT\x10\x02\x12\f\n" +
	"\bEND_USER\x10\x03\"\x85\x01\n" +
	"\x12AgentDesktopSource\x12$\n" +
	" AGENT_DESKTOP_SOURCE_UNSPECIFIED\x10\x00\x12\x0f\n" +
	"\vLIVE_PERSON\x10\x01\x12\x11\n" +
	"\rGENESYS_CLOUD\x10\x02\x12\n" +
	"\n" +
	"\x06TWILIO\x10\x03\x12\x0e\n" +
	"\n" +
	"SALESFORCE\x10\x04\x12\t\n" +
	"\x05OTHER\x10\b:\xd8\x01\xeaA\xd4\x01\n" +
	"%dialogflow.googleapis.com/Participant\x12Jprojects/{project}/conversations/{conversation}/participants/{participant}\x12_projects/{project}/locations/{location}/conversations/{conversation}/participants/{participant}\"\x83\x06\n" +
	"\aMessage\x12\x17\n" +
	"\x04name\x18\x01 \x01(\tB\x03\xe0A\x01R\x04name\x12\x1d\n" +
	"\acontent\x18\x02 \x01(\tB\x03\xe0A\x02R\acontent\x12(\n" +
	"\rlanguage_code\x18\x03 \x01(\tB\x03\xe0A\x01R\flanguageCode\x12%\n" +
	"\vparticipant\x18\x04 \x01(\tB\x03\xe0A\x03R\vparticipant\x12\\\n" +
	"\x10participant_role\x18\x05 \x01(\x0e2,.google.cloud.dialogflow.v2.Participant.RoleB\x03\xe0A\x03R\x0fparticipantRole\x12@\n" +
	"\vcreate_time\x18\x06 \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x03R\n" +
	"createTime\x12<\n" +
	"\tsend_time\x18\t \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x01R\bsendTime\x12a\n" +
	"\x12message_annotation\x18\a \x01(\v2-.google.cloud.dialogflow.v2.MessageAnnotationB\x03\xe0A\x03R\x11messageAnnotation\x12g\n" +
	"\x12sentiment_analysis\x18\b \x01(\v23.google.cloud.dialogflow.v2.SentimentAnalysisResultB\x03\xe0A\x03R\x11sentimentAnalysis:\xc4\x01\xeaA\xc0\x01\n" +
	"!dialogflow.googleapis.com/Message\x12Bprojects/{project}/conversations/{conversation}/messages/{message}\x12Wprojects/{project}/locations/{location}/conversations/{conversation}/messages/{message}\"\xb1\x01\n" +
	"\x18CreateParticipantRequest\x12E\n" +
	"\x06parent\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\x12%dialogflow.googleapis.com/ParticipantR\x06parent\x12N\n" +
	"\vparticipant\x18\x02 \x01(\v2'.google.cloud.dialogflow.v2.ParticipantB\x03\xe0A\x02R\vparticipant\"Z\n" +
	"\x15GetParticipantRequest\x12A\n" +
	"\x04name\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/ParticipantR\x04name\"\xa6\x01\n" +
	"\x17ListParticipantsRequest\x12E\n" +
	"\x06parent\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\x12%dialogflow.googleapis.com/ParticipantR\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\"\x8f\x01\n" +
	"\x18ListParticipantsResponse\x12K\n" +
	"\fparticipants\x18\x01 \x03(\v2'.google.cloud.dialogflow.v2.ParticipantR\fparticipants\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"\xac\x01\n" +
	"\x18UpdateParticipantRequest\x12N\n" +
	"\vparticipant\x18\x01 \x01(\v2'.google.cloud.dialogflow.v2.ParticipantB\x03\xe0A\x02R\vparticipant\x12@\n" +
	"\vupdate_mask\x18\x02 \x01(\v2\x1a.google.protobuf.FieldMaskB\x03\xe0A\x02R\n" +
	"updateMask\"\x96\x06\n" +
	"\x15AnalyzeContentRequest\x12O\n" +
	"\vparticipant\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/ParticipantR\vparticipant\x12F\n" +
	"\n" +
	"text_input\x18\x06 \x01(\v2%.google.cloud.dialogflow.v2.TextInputH\x00R\ttextInput\x12I\n" +
	"\vaudio_input\x18\a \x01(\v2&.google.cloud.dialogflow.v2.AudioInputH\x00R\n" +
	"audioInput\x12I\n" +
	"\vevent_input\x18\b \x01(\v2&.google.cloud.dialogflow.v2.EventInputH\x00R\n" +
	"eventInput\x12X\n" +
	"\x10suggestion_input\x18\f \x01(\v2+.google.cloud.dialogflow.v2.SuggestionInputH\x00R\x0fsuggestionInput\x12[\n" +
	"\x12reply_audio_config\x18\x05 \x01(\v2-.google.cloud.dialogflow.v2.OutputAudioConfigR\x10replyAudioConfig\x12N\n" +
	"\fquery_params\x18\t \x01(\v2+.google.cloud.dialogflow.v2.QueryParametersR\vqueryParams\x12a\n" +
	"\x13assist_query_params\x18\x0e \x01(\v21.google.cloud.dialogflow.v2.AssistQueryParametersR\x11assistQueryParams\x12<\n" +
	"\rcx_parameters\x18\x12 \x01(\v2\x17.google.protobuf.StructR\fcxParameters\x12\x1d\n" +
	"\n" +
	"request_id\x18\v \x01(\tR\trequestIdB\a\n" +
	"\x05input\">\n" +
	"\x0eDtmfParameters\x12,\n" +
	"\x12accepts_dtmf_input\x18\x01 \x01(\bR\x10acceptsDtmfInput\"\xda\x04\n" +
	"\x16AnalyzeContentResponse\x12\x1d\n" +
	"\n" +
	"reply_text\x18\x01 \x01(\tR\treplyText\x12H\n" +
	"\vreply_audio\x18\x02 \x01(\v2'.google.cloud.dialogflow.v2.OutputAudioR\n" +
	"replyAudio\x12c\n" +
	"\x15automated_agent_reply\x18\x03 \x01(\v2/.google.cloud.dialogflow.v2.AutomatedAgentReplyR\x13automatedAgentReply\x12=\n" +
	"\amessage\x18\x05 \x01(\v2#.google.cloud.dialogflow.v2.MessageR\amessage\x12q\n" +
	"\x1ehuman_agent_suggestion_results\x18\x06 \x03(\v2,.google.cloud.dialogflow.v2.SuggestionResultR\x1bhumanAgentSuggestionResults\x12k\n" +
	"\x1bend_user_suggestion_results\x18\a \x03(\v2,.google.cloud.dialogflow.v2.SuggestionResultR\x18endUserSuggestionResults\x12S\n" +
	"\x0fdtmf_parameters\x18\t \x01(\v2*.google.cloud.dialogflow.v2.DtmfParametersR\x0edtmfParameters\"\x98\b\n" +
	"\x1eStreamingAnalyzeContentRequest\x12O\n" +
	"\vparticipant\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/ParticipantR\vparticipant\x12Q\n" +
	"\faudio_config\x18\x02 \x01(\v2,.google.cloud.dialogflow.v2.InputAudioConfigH\x00R\vaudioConfig\x12N\n" +
	"\vtext_config\x18\x03 \x01(\v2+.google.cloud.dialogflow.v2.InputTextConfigH\x00R\n" +
	"textConfig\x12[\n" +
	"\x12reply_audio_config\x18\x04 \x01(\v2-.google.cloud.dialogflow.v2.OutputAudioConfigR\x10replyAudioConfig\x12!\n" +
	"\vinput_audio\x18\x05 \x01(\fH\x01R\n" +
	"inputAudio\x12\x1f\n" +
	"\n" +
	"input_text\x18\x06 \x01(\tH\x01R\tinputText\x12P\n" +
	"\n" +
	"input_dtmf\x18\t \x01(\v2/.google.cloud.dialogflow.v2.TelephonyDtmfEventsH\x01R\tinputDtmf\x12N\n" +
	"\fquery_params\x18\a \x01(\v2+.google.cloud.dialogflow.v2.QueryParametersR\vqueryParams\x12a\n" +
	"\x13assist_query_params\x18\b \x01(\v21.google.cloud.dialogflow.v2.AssistQueryParametersR\x11assistQueryParams\x12<\n" +
	"\rcx_parameters\x18\r \x01(\v2\x17.google.protobuf.StructR\fcxParameters\x12?\n" +
	"\x19enable_extended_streaming\x18\v \x01(\bB\x03\xe0A\x01R\x17enableExtendedStreaming\x12S\n" +
	"$enable_partial_automated_agent_reply\x18\f \x01(\bB\x03\xe0A\x01R enablePartialAutomatedAgentReply\x12A\n" +
	"\x1aoutput_multiple_utterances\x18\x12 \x01(\bB\x03\xe0A\x01R\x18outputMultipleUtterances\x122\n" +
	"\x15enable_debugging_info\x18\x13 \x01(\bR\x13enableDebuggingInfoB\b\n" +
	"\x06configB\a\n" +
	"\x05input\"\xd0\x06\n" +
	"\x1fStreamingAnalyzeContentResponse\x12e\n" +
	"\x12recognition_result\x18\x01 \x01(\v26.google.cloud.dialogflow.v2.StreamingRecognitionResultR\x11recognitionResult\x12\x1d\n" +
	"\n" +
	"reply_text\x18\x02 \x01(\tR\treplyText\x12H\n" +
	"\vreply_audio\x18\x03 \x01(\v2'.google.cloud.dialogflow.v2.OutputAudioR\n" +
	"replyAudio\x12c\n" +
	"\x15automated_agent_reply\x18\x04 \x01(\v2/.google.cloud.dialogflow.v2.AutomatedAgentReplyR\x13automatedAgentReply\x12=\n" +
	"\amessage\x18\x06 \x01(\v2#.google.cloud.dialogflow.v2.MessageR\amessage\x12q\n" +
	"\x1ehuman_agent_suggestion_results\x18\a \x03(\v2,.google.cloud.dialogflow.v2.SuggestionResultR\x1bhumanAgentSuggestionResults\x12k\n" +
	"\x1bend_user_suggestion_results\x18\b \x03(\v2,.google.cloud.dialogflow.v2.SuggestionResultR\x18endUserSuggestionResults\x12S\n" +
	"\x0fdtmf_parameters\x18\n" +
	" \x01(\v2*.google.cloud.dialogflow.v2.DtmfParametersR\x0edtmfParameters\x12a\n" +
	"\x0edebugging_info\x18\v \x01(\v2:.google.cloud.dialogflow.v2.CloudConversationDebuggingInfoR\rdebuggingInfo\x12!\n" +
	"\fspeech_model\x18\r \x01(\tR\vspeechModel\"\xbc\x02\n" +
	"\x16SuggestArticlesRequest\x12E\n" +
	"\x06parent\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/ParticipantR\x06parent\x12P\n" +
	"\x0elatest_message\x18\x02 \x01(\tB)\xe0A\x01\xfaA#\n" +
	"!dialogflow.googleapis.com/MessageR\rlatestMessage\x12&\n" +
	"\fcontext_size\x18\x03 \x01(\x05B\x03\xe0A\x01R\vcontextSize\x12a\n" +
	"\x13assist_query_params\x18\x04 \x01(\v21.google.cloud.dialogflow.v2.AssistQueryParametersR\x11assistQueryParams\"\xb7\x01\n" +
	"\x17SuggestArticlesResponse\x12R\n" +
	"\x0farticle_answers\x18\x01 \x03(\v2).google.cloud.dialogflow.v2.ArticleAnswerR\x0earticleAnswers\x12%\n" +
	"\x0elatest_message\x18\x02 \x01(\tR\rlatestMessage\x12!\n" +
	"\fcontext_size\x18\x03 \x01(\x05R\vcontextSize\"\xbe\x02\n" +
	"\x18SuggestFaqAnswersRequest\x12E\n" +
	"\x06parent\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/ParticipantR\x06parent\x12P\n" +
	"\x0elatest_message\x18\x02 \x01(\tB)\xe0A\x01\xfaA#\n" +
	"!dialogflow.googleapis.com/MessageR\rlatestMessage\x12&\n" +
	"\fcontext_size\x18\x03 \x01(\x05B\x03\xe0A\x01R\vcontextSize\x12a\n" +
	"\x13assist_query_params\x18\x04 \x01(\v21.google.cloud.dialogflow.v2.AssistQueryParametersR\x11assistQueryParams\"\xad\x01\n" +
	"\x19SuggestFaqAnswersResponse\x12F\n" +
	"\vfaq_answers\x18\x01 \x03(\v2%.google.cloud.dialogflow.v2.FaqAnswerR\n" +
	"faqAnswers\x12%\n" +
	"\x0elatest_message\x18\x02 \x01(\tR\rlatestMessage\x12!\n" +
	"\fcontext_size\x18\x03 \x01(\x05R\vcontextSize\"\x81\x04\n" +
	"\x1bGenerateSuggestionsResponse\x12\x93\x01\n" +
	"\x1cgenerator_suggestion_answers\x18\x01 \x03(\v2Q.google.cloud.dialogflow.v2.GenerateSuggestionsResponse.GeneratorSuggestionAnswerR\x1ageneratorSuggestionAnswers\x12M\n" +
	"\x0elatest_message\x18\x02 \x01(\tB&\xfaA#\n" +
	"!dialogflow.googleapis.com/MessageR\rlatestMessage\x1a\xfc\x01\n" +
	"\x19GeneratorSuggestionAnswer\x12b\n" +
	"\x14generator_suggestion\x18\x01 \x01(\v2/.google.cloud.dialogflow.v2.GeneratorSuggestionR\x13generatorSuggestion\x12)\n" +
	"\x10source_generator\x18\x02 \x01(\tR\x0fsourceGenerator\x12P\n" +
	"\ranswer_record\x18\x03 \x01(\tB+\xfaA(\n" +
	"&dialogflow.googleapis.com/AnswerRecordR\fanswerRecord\"\xaa\x02\n" +
	"\x1aSuggestSmartRepliesRequest\x12E\n" +
	"\x06parent\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/ParticipantR\x06parent\x12S\n" +
	"\x12current_text_input\x18\x04 \x01(\v2%.google.cloud.dialogflow.v2.TextInputR\x10currentTextInput\x12M\n" +
	"\x0elatest_message\x18\x02 \x01(\tB&\xfaA#\n" +
	"!dialogflow.googleapis.com/MessageR\rlatestMessage\x12!\n" +
	"\fcontext_size\x18\x03 \x01(\x05R\vcontextSize\"\xf2\x01\n" +
	"\x1bSuggestSmartRepliesResponse\x12a\n" +
	"\x13smart_reply_answers\x18\x01 \x03(\v2,.google.cloud.dialogflow.v2.SmartReplyAnswerB\x03\xe0A\x03R\x11smartReplyAnswers\x12M\n" +
	"\x0elatest_message\x18\x02 \x01(\tB&\xfaA#\n" +
	"!dialogflow.googleapis.com/MessageR\rlatestMessage\x12!\n" +
	"\fcontext_size\x18\x03 \x01(\x05R\vcontextSize\"r\n" +
	"\n" +
	"AudioInput\x12I\n" +
	"\x06config\x18\x01 \x01(\v2,.google.cloud.dialogflow.v2.InputAudioConfigB\x03\xe0A\x02R\x06config\x12\x19\n" +
	"\x05audio\x18\x02 \x01(\fB\x03\xe0A\x02R\x05audio\"j\n" +
	"\vOutputAudio\x12E\n" +
	"\x06config\x18\x01 \x01(\v2-.google.cloud.dialogflow.v2.OutputAudioConfigR\x06config\x12\x14\n" +
	"\x05audio\x18\x02 \x01(\fR\x05audio\"\xba\x03\n" +
	"\x13AutomatedAgentReply\x12f\n" +
	"\x16detect_intent_response\x18\x01 \x01(\v20.google.cloud.dialogflow.v2.DetectIntentResponseR\x14detectIntentResponse\x12\x84\x01\n" +
	"\x1aautomated_agent_reply_type\x18\a \x01(\x0e2G.google.cloud.dialogflow.v2.AutomatedAgentReply.AutomatedAgentReplyTypeR\x17automatedAgentReplyType\x12-\n" +
	"\x12allow_cancellation\x18\b \x01(\bR\x11allowCancellation\x12&\n" +
	"\x0fcx_current_page\x18\v \x01(\tR\rcxCurrentPage\"]\n" +
	"\x17AutomatedAgentReplyType\x12*\n" +
	"&AUTOMATED_AGENT_REPLY_TYPE_UNSPECIFIED\x10\x00\x12\v\n" +
	"\aPARTIAL\x10\x01\x12\t\n" +
	"\x05FINAL\x10\x02\"\xaa\x02\n" +
	"\rArticleAnswer\x12\x14\n" +
	"\x05title\x18\x01 \x01(\tR\x05title\x12\x10\n" +
	"\x03uri\x18\x02 \x01(\tR\x03uri\x12\x1a\n" +
	"\bsnippets\x18\x03 \x03(\tR\bsnippets\x12\x1e\n" +
	"\n" +
	"confidence\x18\x04 \x01(\x02R\n" +
	"confidence\x12S\n" +
	"\bmetadata\x18\x05 \x03(\v27.google.cloud.dialogflow.v2.ArticleAnswer.MetadataEntryR\bmetadata\x12#\n" +
	"\ranswer_record\x18\x06 \x01(\tR\fanswerRecord\x1a;\n" +
	"\rMetadataEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\xaa\x02\n" +
	"\tFaqAnswer\x12\x16\n" +
	"\x06answer\x18\x01 \x01(\tR\x06answer\x12\x1e\n" +
	"\n" +
	"confidence\x18\x02 \x01(\x02R\n" +
	"confidence\x12\x1a\n" +
	"\bquestion\x18\x03 \x01(\tR\bquestion\x12\x16\n" +
	"\x06source\x18\x04 \x01(\tR\x06source\x12O\n" +
	"\bmetadata\x18\x05 \x03(\v23.google.cloud.dialogflow.v2.FaqAnswer.MetadataEntryR\bmetadata\x12#\n" +
	"\ranswer_record\x18\x06 \x01(\tR\fanswerRecord\x1a;\n" +
	"\rMetadataEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\x9a\x01\n" +
	"\x10SmartReplyAnswer\x12\x14\n" +
	"\x05reply\x18\x01 \x01(\tR\x05reply\x12\x1e\n" +
	"\n" +
	"confidence\x18\x02 \x01(\x02R\n" +
	"confidence\x12P\n" +
	"\ranswer_record\x18\x03 \x01(\tB+\xfaA(\n" +
	"&dialogflow.googleapis.com/AnswerRecordR\fanswerRecord\"\x80\x01\n" +
	"\x10IntentSuggestion\x12!\n" +
	"\fdisplay_name\x18\x01 \x01(\tR\vdisplayName\x12\x1d\n" +
	"\tintent_v2\x18\x02 \x01(\tH\x00R\bintentV2\x12 \n" +
	"\vdescription\x18\x05 \x01(\tR\vdescriptionB\b\n" +
	"\x06intent\"\xf2\x01\n" +
	"\x16DialogflowAssistAnswer\x12L\n" +
	"\fquery_result\x18\x01 \x01(\v2'.google.cloud.dialogflow.v2.QueryResultH\x00R\vqueryResult\x12[\n" +
	"\x11intent_suggestion\x18\x05 \x01(\v2,.google.cloud.dialogflow.v2.IntentSuggestionH\x00R\x10intentSuggestion\x12#\n" +
	"\ranswer_record\x18\x02 \x01(\tR\fanswerRecordB\b\n" +
	"\x06result\"\xcb\x05\n" +
	"\x10SuggestionResult\x12*\n" +
	"\x05error\x18\x01 \x01(\v2\x12.google.rpc.StatusH\x00R\x05error\x12q\n" +
	"\x19suggest_articles_response\x18\x02 \x01(\v23.google.cloud.dialogflow.v2.SuggestArticlesResponseH\x00R\x17suggestArticlesResponse\x12\x87\x01\n" +
	"!suggest_knowledge_assist_response\x18\b \x01(\v2:.google.cloud.dialogflow.v2.SuggestKnowledgeAssistResponseH\x00R\x1esuggestKnowledgeAssistResponse\x12x\n" +
	"\x1csuggest_faq_answers_response\x18\x03 \x01(\v25.google.cloud.dialogflow.v2.SuggestFaqAnswersResponseH\x00R\x19suggestFaqAnswersResponse\x12~\n" +
	"\x1esuggest_smart_replies_response\x18\x04 \x01(\v27.google.cloud.dialogflow.v2.SuggestSmartRepliesResponseH\x00R\x1bsuggestSmartRepliesResponse\x12}\n" +
	"\x1dgenerate_suggestions_response\x18\t \x01(\v27.google.cloud.dialogflow.v2.GenerateSuggestionsResponseH\x00R\x1bgenerateSuggestionsResponseB\x15\n" +
	"\x13suggestion_response\";\n" +
	"\x0fInputTextConfig\x12(\n" +
	"\rlanguage_code\x18\x01 \x01(\tB\x03\xe0A\x02R\flanguageCode\"\x8c\x01\n" +
	"\x14AnnotatedMessagePart\x12\x12\n" +
	"\x04text\x18\x01 \x01(\tR\x04text\x12\x1f\n" +
	"\ventity_type\x18\x02 \x01(\tR\n" +
	"entityType\x12?\n" +
	"\x0fformatted_value\x18\x03 \x01(\v2\x16.google.protobuf.ValueR\x0eformattedValue\"\x86\x01\n" +
	"\x11MessageAnnotation\x12F\n" +
	"\x05parts\x18\x01 \x03(\v20.google.cloud.dialogflow.v2.AnnotatedMessagePartR\x05parts\x12)\n" +
	"\x10contain_entities\x18\x02 \x01(\bR\x0fcontainEntities\"\xcf\x02\n" +
	"\x0fSuggestionInput\x12(\n" +
	"\ranswer_record\x18\x01 \x01(\tB\x03\xe0A\x02R\fanswerRecord\x12<\n" +
	"\n" +
	"parameters\x18\x04 \x01(\v2\x17.google.protobuf.StructB\x03\xe0A\x01R\n" +
	"parameters\x12O\n" +
	"\x06action\x18\x05 \x01(\x0e22.google.cloud.dialogflow.v2.SuggestionInput.ActionB\x03\xe0A\x01R\x06action\x12<\n" +
	"\tsend_time\x18\a \x01(\v2\x1a.google.protobuf.TimestampB\x03\xe0A\x01R\bsendTime\"E\n" +
	"\x06Action\x12\x16\n" +
	"\x12ACTION_UNSPECIFIED\x10\x00\x12\n" +
	"\n" +
	"\x06CANCEL\x10\x01\x12\n" +
	"\n" +
	"\x06REVISE\x10\x02\x12\v\n" +
	"\aCONFIRM\x10\x03\"\xf4\x01\n" +
	"\x15AssistQueryParameters\x12\x8d\x01\n" +
	"\x1adocuments_metadata_filters\x18\x01 \x03(\v2O.google.cloud.dialogflow.v2.AssistQueryParameters.DocumentsMetadataFiltersEntryR\x18documentsMetadataFilters\x1aK\n" +
	"\x1dDocumentsMetadataFiltersEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"\x9f\x02\n" +
	"\x1dSuggestKnowledgeAssistRequest\x12E\n" +
	"\x06parent\x18\x01 \x01(\tB-\xe0A\x02\xfaA'\n" +
	"%dialogflow.googleapis.com/ParticipantR\x06parent\x12P\n" +
	"\x0elatest_message\x18\x02 \x01(\tB)\xe0A\x01\xfaA#\n" +
	"!dialogflow.googleapis.com/MessageR\rlatestMessage\x12&\n" +
	"\fcontext_size\x18\x03 \x01(\x05B\x03\xe0A\x01R\vcontextSize\x12=\n" +
	"\x18previous_suggested_query\x18\x04 \x01(\tB\x03\xe0A\x01R\x16previousSuggestedQuery\"\xda\x01\n" +
	"\x1eSuggestKnowledgeAssistResponse\x12n\n" +
	"\x17knowledge_assist_answer\x18\x01 \x01(\v21.google.cloud.dialogflow.v2.KnowledgeAssistAnswerB\x03\xe0A\x03R\x15knowledgeAssistAnswer\x12%\n" +
	"\x0elatest_message\x18\x02 \x01(\tR\rlatestMessage\x12!\n" +
	"\fcontext_size\x18\x03 \x01(\x05R\vcontextSize\"\xa4\x06\n" +
	"!IngestedContextReferenceDebugInfo\x126\n" +
	"\x17project_not_allowlisted\x18\x01 \x01(\bR\x15projectNotAllowlisted\x12>\n" +
	"\x1bcontext_reference_retrieved\x18\x02 \x01(\bR\x19contextReferenceRetrieved\x12\x9d\x01\n" +
	"\x1eingested_parameters_debug_info\x18\x03 \x03(\v2X.google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo.IngestedParameterDebugInfoR\x1bingestedParametersDebugInfo\x1a\xe6\x03\n" +
	"\x1aIngestedParameterDebugInfo\x12\x1c\n" +
	"\tparameter\x18\x01 \x01(\tR\tparameter\x12\x93\x01\n" +
	"\x10ingestion_status\x18\x02 \x01(\x0e2h.google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo.IngestedParameterDebugInfo.IngestionStatusR\x0fingestionStatus\"\x93\x02\n" +
	"\x0fIngestionStatus\x12 \n" +
	"\x1cINGESTION_STATUS_UNSPECIFIED\x10\x00\x12\x1e\n" +
	"\x1aINGESTION_STATUS_SUCCEEDED\x10\x01\x12*\n" +
	"&INGESTION_STATUS_CONTEXT_NOT_AVAILABLE\x10\x02\x12!\n" +
	"\x1dINGESTION_STATUS_PARSE_FAILED\x10\x03\x12\"\n" +
	"\x1eINGESTION_STATUS_INVALID_ENTRY\x10\x04\x12#\n" +
	"\x1fINGESTION_STATUS_INVALID_FORMAT\x10\x05\x12&\n" +
	"\"INGESTION_STATUS_LANGUAGE_MISMATCH\x10\x06\"\xdb\x02\n" +
	"\x0eServiceLatency\x12\x7f\n" +
	"\x1ainternal_service_latencies\x18\x01 \x03(\v2A.google.cloud.dialogflow.v2.ServiceLatency.InternalServiceLatencyR\x18internalServiceLatencies\x1a\xc7\x01\n" +
	"\x16InternalServiceLatency\x12\x12\n" +
	"\x04step\x18\x01 \x01(\tR\x04step\x12\x1d\n" +
	"\n" +
	"latency_ms\x18\x02 \x01(\x02R\tlatencyMs\x129\n" +
	"\n" +
	"start_time\x18\x03 \x01(\v2\x1a.google.protobuf.TimestampR\tstartTime\x12?\n" +
	"\rcomplete_time\x18\x04 \x01(\v2\x1a.google.protobuf.TimestampR\fcompleteTime\"\x80\x15\n" +
	"\x18KnowledgeAssistDebugInfo\x12\x98\x01\n" +
	"\x1fquery_generation_failure_reason\x18\x01 \x01(\x0e2Q.google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.QueryGenerationFailureReasonR\x1cqueryGenerationFailureReason\x12\xa4\x01\n" +
	"#query_categorization_failure_reason\x18\x02 \x01(\x0e2U.google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.QueryCategorizationFailureReasonR queryCategorizationFailureReason\x12o\n" +
	"\x19datastore_response_reason\x18\x03 \x01(\x0e23.google.cloud.dialogflow.v2.DatastoreResponseReasonR\x17datastoreResponseReason\x12\x88\x01\n" +
	"\x19knowledge_assist_behavior\x18\x04 \x01(\v2L.google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.KnowledgeAssistBehaviorR\x17knowledgeAssistBehavior\x12\x8f\x01\n" +
	"%ingested_context_reference_debug_info\x18\x05 \x01(\v2=.google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfoR!ingestedContextReferenceDebugInfo\x12S\n" +
	"\x0fservice_latency\x18\x06 \x01(\v2*.google.cloud.dialogflow.v2.ServiceLatencyR\x0eserviceLatency\x1a\x9d\t\n" +
	"\x17KnowledgeAssistBehavior\x12A\n" +
	"\x1danswer_generation_rewriter_on\x18\x01 \x01(\bR\x1aanswerGenerationRewriterOn\x12;\n" +
	"\x1aend_user_metadata_included\x18\x02 \x01(\bR\x17endUserMetadataIncluded\x12*\n" +
	"\x11return_query_only\x18\x04 \x01(\bR\x0freturnQueryOnly\x12.\n" +
	"\x13use_pubsub_delivery\x18\x05 \x01(\bR\x11usePubsubDelivery\x122\n" +
	"\x15disable_sync_delivery\x18\x06 \x01(\bR\x13disableSyncDelivery\x12:\n" +
	"\x19previous_queries_included\x18\a \x01(\bR\x17previousQueriesIncluded\x124\n" +
	"\x16use_translated_message\x18\b \x01(\bR\x14useTranslatedMessage\x12B\n" +
	"\x1euse_custom_safety_filter_level\x18\t \x01(\bR\x1auseCustomSafetyFilterLevel\x12\\\n" +
	"+conversation_transcript_has_mixed_languages\x18\n" +
	" \x01(\bR'conversationTranscriptHasMixedLanguages\x12V\n" +
	"(query_generation_agent_language_mismatch\x18\v \x01(\bR$queryGenerationAgentLanguageMismatch\x12[\n" +
	"+query_generation_end_user_language_mismatch\x18\f \x01(\bR&queryGenerationEndUserLanguageMismatch\x12A\n" +
	"\x1dthird_party_connector_allowed\x18\r \x01(\bR\x1athirdPartyConnectorAllowed\x12<\n" +
	"\x1amultiple_queries_generated\x18\x0e \x01(\bR\x18multipleQueriesGenerated\x12C\n" +
	"\x1equery_contained_search_context\x18\x0f \x01(\bR\x1bqueryContainedSearchContext\x12R\n" +
	"&invalid_items_query_suggestion_skipped\x18\x10 \x01(\bR\"invalidItemsQuerySuggestionSkipped\x12L\n" +
	"#primary_query_redacted_and_replaced\x18\x11 \x01(\bR\x1fprimaryQueryRedactedAndReplaced\x12A\n" +
	"\x1dappended_search_context_count\x18\x12 \x01(\x05R\x1aappendedSearchContextCount\"\xcf\x03\n" +
	"\x1cQueryGenerationFailureReason\x12/\n" +
	"+QUERY_GENERATION_FAILURE_REASON_UNSPECIFIED\x10\x00\x12!\n" +
	"\x1dQUERY_GENERATION_OUT_OF_QUOTA\x10\x01\x12\x1b\n" +
	"\x17QUERY_GENERATION_FAILED\x10\x02\x12'\n" +
	"#QUERY_GENERATION_NO_QUERY_GENERATED\x10\x03\x12\x1f\n" +
	"\x1bQUERY_GENERATION_RAI_FAILED\x10\x04\x12\x14\n" +
	"\x10NOT_IN_ALLOWLIST\x10\x05\x12#\n" +
	"\x1fQUERY_GENERATION_QUERY_REDACTED\x10\x06\x12.\n" +
	"*QUERY_GENERATION_LLM_RESPONSE_PARSE_FAILED\x10\n" +
	"\x12'\n" +
	"#QUERY_GENERATION_EMPTY_CONVERSATION\x10\v\x12'\n" +
	"#QUERY_GENERATION_EMPTY_LAST_MESSAGE\x10\f\x127\n" +
	"3QUERY_GENERATION_TRIGGERING_EVENT_CONDITION_NOT_MET\x10\r\"\xcc\x01\n" +
	" QueryCategorizationFailureReason\x123\n" +
	"/QUERY_CATEGORIZATION_FAILURE_REASON_UNSPECIFIED\x10\x00\x12'\n" +
	"#QUERY_CATEGORIZATION_INVALID_CONFIG\x10\x01\x12)\n" +
	"%QUERY_CATEGORIZATION_RESULT_NOT_FOUND\x10\x02\x12\x1f\n" +
	"\x1bQUERY_CATEGORIZATION_FAILED\x10\x03\"\xa9\b\n" +
	"\x15KnowledgeAssistAnswer\x12i\n" +
	"\x0fsuggested_query\x18\x01 \x01(\v2@.google.cloud.dialogflow.v2.KnowledgeAssistAnswer.SuggestedQueryR\x0esuggestedQuery\x12w\n" +
	"\x16suggested_query_answer\x18\x02 \x01(\v2A.google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswerR\x14suggestedQueryAnswer\x12#\n" +
	"\ranswer_record\x18\x03 \x01(\tR\fanswerRecord\x12s\n" +
	"\x1bknowledge_assist_debug_info\x18\a \x01(\v24.google.cloud.dialogflow.v2.KnowledgeAssistDebugInfoR\x18knowledgeAssistDebugInfo\x1a/\n" +
	"\x0eSuggestedQuery\x12\x1d\n" +
	"\n" +
	"query_text\x18\x01 \x01(\tR\tqueryText\x1a\xe0\x04\n" +
	"\x0fKnowledgeAnswer\x12\x1f\n" +
	"\vanswer_text\x18\x01 \x01(\tR\n" +
	"answerText\x12l\n" +
	"\n" +
	"faq_source\x18\x03 \x01(\v2K.google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.FaqSourceH\x00R\tfaqSource\x12\x81\x01\n" +
	"\x11generative_source\x18\x04 \x01(\v2R.google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.GenerativeSourceH\x00R\x10generativeSource\x1a'\n" +
	"\tFaqSource\x12\x1a\n" +
	"\bquestion\x18\x02 \x01(\tR\bquestion\x1a\x86\x02\n" +
	"\x10GenerativeSource\x12v\n" +
	"\bsnippets\x18\x01 \x03(\v2Z.google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.GenerativeSource.SnippetR\bsnippets\x1az\n" +
	"\aSnippet\x12\x10\n" +
	"\x03uri\x18\x02 \x01(\tR\x03uri\x12\x12\n" +
	"\x04text\x18\x03 \x01(\tR\x04text\x12\x14\n" +
	"\x05title\x18\x04 \x01(\tR\x05title\x123\n" +
	"\bmetadata\x18\x05 \x01(\v2\x17.google.protobuf.StructR\bmetadataB\b\n" +
	"\x06source*\xd6\x02\n" +
	"\x17DatastoreResponseReason\x12)\n" +
	"%DATASTORE_RESPONSE_REASON_UNSPECIFIED\x10\x00\x12\b\n" +
	"\x04NONE\x10\x01\x12\x17\n" +
	"\x13SEARCH_OUT_OF_QUOTA\x10\x02\x12\x18\n" +
	"\x14SEARCH_EMPTY_RESULTS\x10\x03\x12%\n" +
	"!ANSWER_GENERATION_GEN_AI_DISABLED\x10\x04\x12\"\n" +
	"\x1eANSWER_GENERATION_OUT_OF_QUOTA\x10\x05\x12\x1b\n" +
	"\x17ANSWER_GENERATION_ERROR\x10\x06\x12%\n" +
	"!ANSWER_GENERATION_NOT_ENOUGH_INFO\x10\a\x12 \n" +
	"\x1cANSWER_GENERATION_RAI_FAILED\x10\b\x12\"\n" +
	"\x1eANSWER_GENERATION_NOT_GROUNDED\x10\t2\xfa\x18\n" +
	"\fParticipants\x12\xa5\x02\n" +
	"\x11CreateParticipant\x124.google.cloud.dialogflow.v2.CreateParticipantRequest\x1a'.google.cloud.dialogflow.v2.Participant\"\xb0\x01\xdaA\x12parent,participant\x82\xd3\xe4\x93\x02\x94\x01:\vparticipantZO:\vparticipant\"@/v2/{parent=projects/*/locations/*/conversations/*}/participants\"4/v2/{parent=projects/*/conversations/*}/participants\x12\xf6\x01\n" +
	"\x0eGetParticipant\x121.google.cloud.dialogflow.v2.GetParticipantRequest\x1a'.google.cloud.dialogflow.v2.Participant\"\x87\x01\xdaA\x04name\x82\xd3\xe4\x93\x02zZB\x12@/v2/{name=projects/*/locations/*/conversations/*/participants/*}\x124/v2/{name=projects/*/conversations/*/participants/*}\x12\x89\x02\n" +
	"\x10ListParticipants\x123.google.cloud.dialogflow.v2.ListParticipantsRequest\x1a4.google.cloud.dialogflow.v2.ListParticipantsResponse\"\x89\x01\xdaA\x06parent\x82\xd3\xe4\x93\x02zZB\x12@/v2/{parent=projects/*/locations/*/conversations/*}/participants\x124/v2/{parent=projects/*/conversations/*}/participants\x12\xc2\x02\n" +
	"\x11UpdateParticipant\x124.google.cloud.dialogflow.v2.UpdateParticipantRequest\x1a'.google.cloud.dialogflow.v2.Participant\"\xcd\x01\xdaA\x17participant,update_mask\x82\xd3\xe4\x93\x02\xac\x01:\vparticipantZ[:\vparticipant2L/v2/{participant.name=projects/*/locations/*/conversations/*/participants/*}2@/v2/{participant.name=projects/*/conversations/*/participants/*}\x12\xfa\x02\n" +
	"\x0eAnalyzeContent\x121.google.cloud.dialogflow.v2.AnalyzeContentRequest\x1a2.google.cloud.dialogflow.v2.AnalyzeContentResponse\"\x80\x02\xdaA\x16participant,text_input\xdaA\x17participant,event_input\xdaA\x17participant,audio_input\x82\xd3\xe4\x93\x02\xac\x01:\x01*Z[:\x01*\"V/v2/{participant=projects/*/locations/*/conversations/*/participants/*}:analyzeContent\"J/v2/{participant=projects/*/conversations/*/participants/*}:analyzeContent\x12\x98\x01\n" +
	"\x17StreamingAnalyzeContent\x12:.google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest\x1a;.google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse\"\x00(\x010\x01\x12\xc9\x02\n" +
	"\x0fSuggestArticles\x122.google.cloud.dialogflow.v2.SuggestArticlesRequest\x1a3.google.cloud.dialogflow.v2.SuggestArticlesResponse\"\xcc\x01\xdaA\x06parent\x82\xd3\xe4\x93\x02\xbc\x01:\x01*Zc:\x01*\"^/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestArticles\"R/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestArticles\x12\xd3\x02\n" +
	"\x11SuggestFaqAnswers\x124.google.cloud.dialogflow.v2.SuggestFaqAnswersRequest\x1a5.google.cloud.dialogflow.v2.SuggestFaqAnswersResponse\"\xd0\x01\xdaA\x06parent\x82\xd3\xe4\x93\x02\xc0\x01:\x01*Ze:\x01*\"`/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers\"T/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestFaqAnswers\x12\xdd\x02\n" +
	"\x13SuggestSmartReplies\x126.google.cloud.dialogflow.v2.SuggestSmartRepliesRequest\x1a7.google.cloud.dialogflow.v2.SuggestSmartRepliesResponse\"\xd4\x01\xdaA\x06parent\x82\xd3\xe4\x93\x02\xc4\x01:\x01*Zg:\x01*\"b/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestSmartReplies\"V/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestSmartReplies\x12\xe3\x02\n" +
	"\x16SuggestKnowledgeAssist\x129.google.cloud.dialogflow.v2.SuggestKnowledgeAssistRequest\x1a:.google.cloud.dialogflow.v2.SuggestKnowledgeAssistResponse\"\xd1\x01\x82\xd3\xe4\x93\x02\xca\x01:\x01*Zj:\x01*\"e/v2/{parent=projects/*/locations/*/conversations/*/participants/*}/suggestions:suggestKnowledgeAssist\"Y/v2/{parent=projects/*/conversations/*/participants/*}/suggestions:suggestKnowledgeAssist\x1ax\xcaA\x19dialogflow.googleapis.com\xd2AYhttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/dialogflowB\x96\x01\n" +
	"\x1ecom.google.cloud.dialogflow.v2B\x10ParticipantProtoP\x01Z>cloud.google.com/go/dialogflow/apiv2/dialogflowpb;dialogflowpb\xa2\x02\x02DF\xaa\x02\x1aGoogle.Cloud.Dialogflow.V2b\x06proto3"

var (
	file_google_cloud_dialogflow_v2_participant_proto_rawDescOnce sync.Once
	file_google_cloud_dialogflow_v2_participant_proto_rawDescData []byte
)

func file_google_cloud_dialogflow_v2_participant_proto_rawDescGZIP() []byte {
	file_google_cloud_dialogflow_v2_participant_proto_rawDescOnce.Do(func() {
		file_google_cloud_dialogflow_v2_participant_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_google_cloud_dialogflow_v2_participant_proto_rawDesc), len(file_google_cloud_dialogflow_v2_participant_proto_rawDesc)))
	})
	return file_google_cloud_dialogflow_v2_participant_proto_rawDescData
}

var file_google_cloud_dialogflow_v2_participant_proto_enumTypes = make([]protoimpl.EnumInfo, 8)
var file_google_cloud_dialogflow_v2_participant_proto_msgTypes = make([]protoimpl.MessageInfo, 52)
var file_google_cloud_dialogflow_v2_participant_proto_goTypes = []any{
	(DatastoreResponseReason)(0),                     // 0: google.cloud.dialogflow.v2.DatastoreResponseReason
	(Participant_Role)(0),                            // 1: google.cloud.dialogflow.v2.Participant.Role
	(Participant_AgentDesktopSource)(0),              // 2: google.cloud.dialogflow.v2.Participant.AgentDesktopSource
	(AutomatedAgentReply_AutomatedAgentReplyType)(0), // 3: google.cloud.dialogflow.v2.AutomatedAgentReply.AutomatedAgentReplyType
	(SuggestionInput_Action)(0),                      // 4: google.cloud.dialogflow.v2.SuggestionInput.Action
	(IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo_IngestionStatus)(0), // 5: google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo.IngestedParameterDebugInfo.IngestionStatus
	(KnowledgeAssistDebugInfo_QueryGenerationFailureReason)(0),                        // 6: google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.QueryGenerationFailureReason
	(KnowledgeAssistDebugInfo_QueryCategorizationFailureReason)(0),                    // 7: google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.QueryCategorizationFailureReason
	(*Participant)(nil),                                           // 8: google.cloud.dialogflow.v2.Participant
	(*Message)(nil),                                               // 9: google.cloud.dialogflow.v2.Message
	(*CreateParticipantRequest)(nil),                              // 10: google.cloud.dialogflow.v2.CreateParticipantRequest
	(*GetParticipantRequest)(nil),                                 // 11: google.cloud.dialogflow.v2.GetParticipantRequest
	(*ListParticipantsRequest)(nil),                               // 12: google.cloud.dialogflow.v2.ListParticipantsRequest
	(*ListParticipantsResponse)(nil),                              // 13: google.cloud.dialogflow.v2.ListParticipantsResponse
	(*UpdateParticipantRequest)(nil),                              // 14: google.cloud.dialogflow.v2.UpdateParticipantRequest
	(*AnalyzeContentRequest)(nil),                                 // 15: google.cloud.dialogflow.v2.AnalyzeContentRequest
	(*DtmfParameters)(nil),                                        // 16: google.cloud.dialogflow.v2.DtmfParameters
	(*AnalyzeContentResponse)(nil),                                // 17: google.cloud.dialogflow.v2.AnalyzeContentResponse
	(*StreamingAnalyzeContentRequest)(nil),                        // 18: google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest
	(*StreamingAnalyzeContentResponse)(nil),                       // 19: google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse
	(*SuggestArticlesRequest)(nil),                                // 20: google.cloud.dialogflow.v2.SuggestArticlesRequest
	(*SuggestArticlesResponse)(nil),                               // 21: google.cloud.dialogflow.v2.SuggestArticlesResponse
	(*SuggestFaqAnswersRequest)(nil),                              // 22: google.cloud.dialogflow.v2.SuggestFaqAnswersRequest
	(*SuggestFaqAnswersResponse)(nil),                             // 23: google.cloud.dialogflow.v2.SuggestFaqAnswersResponse
	(*GenerateSuggestionsResponse)(nil),                           // 24: google.cloud.dialogflow.v2.GenerateSuggestionsResponse
	(*SuggestSmartRepliesRequest)(nil),                            // 25: google.cloud.dialogflow.v2.SuggestSmartRepliesRequest
	(*SuggestSmartRepliesResponse)(nil),                           // 26: google.cloud.dialogflow.v2.SuggestSmartRepliesResponse
	(*AudioInput)(nil),                                            // 27: google.cloud.dialogflow.v2.AudioInput
	(*OutputAudio)(nil),                                           // 28: google.cloud.dialogflow.v2.OutputAudio
	(*AutomatedAgentReply)(nil),                                   // 29: google.cloud.dialogflow.v2.AutomatedAgentReply
	(*ArticleAnswer)(nil),                                         // 30: google.cloud.dialogflow.v2.ArticleAnswer
	(*FaqAnswer)(nil),                                             // 31: google.cloud.dialogflow.v2.FaqAnswer
	(*SmartReplyAnswer)(nil),                                      // 32: google.cloud.dialogflow.v2.SmartReplyAnswer
	(*IntentSuggestion)(nil),                                      // 33: google.cloud.dialogflow.v2.IntentSuggestion
	(*DialogflowAssistAnswer)(nil),                                // 34: google.cloud.dialogflow.v2.DialogflowAssistAnswer
	(*SuggestionResult)(nil),                                      // 35: google.cloud.dialogflow.v2.SuggestionResult
	(*InputTextConfig)(nil),                                       // 36: google.cloud.dialogflow.v2.InputTextConfig
	(*AnnotatedMessagePart)(nil),                                  // 37: google.cloud.dialogflow.v2.AnnotatedMessagePart
	(*MessageAnnotation)(nil),                                     // 38: google.cloud.dialogflow.v2.MessageAnnotation
	(*SuggestionInput)(nil),                                       // 39: google.cloud.dialogflow.v2.SuggestionInput
	(*AssistQueryParameters)(nil),                                 // 40: google.cloud.dialogflow.v2.AssistQueryParameters
	(*SuggestKnowledgeAssistRequest)(nil),                         // 41: google.cloud.dialogflow.v2.SuggestKnowledgeAssistRequest
	(*SuggestKnowledgeAssistResponse)(nil),                        // 42: google.cloud.dialogflow.v2.SuggestKnowledgeAssistResponse
	(*IngestedContextReferenceDebugInfo)(nil),                     // 43: google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo
	(*ServiceLatency)(nil),                                        // 44: google.cloud.dialogflow.v2.ServiceLatency
	(*KnowledgeAssistDebugInfo)(nil),                              // 45: google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo
	(*KnowledgeAssistAnswer)(nil),                                 // 46: google.cloud.dialogflow.v2.KnowledgeAssistAnswer
	nil,                                                           // 47: google.cloud.dialogflow.v2.Participant.DocumentsMetadataFiltersEntry
	(*GenerateSuggestionsResponse_GeneratorSuggestionAnswer)(nil), // 48: google.cloud.dialogflow.v2.GenerateSuggestionsResponse.GeneratorSuggestionAnswer
	nil, // 49: google.cloud.dialogflow.v2.ArticleAnswer.MetadataEntry
	nil, // 50: google.cloud.dialogflow.v2.FaqAnswer.MetadataEntry
	nil, // 51: google.cloud.dialogflow.v2.AssistQueryParameters.DocumentsMetadataFiltersEntry
	(*IngestedContextReferenceDebugInfo_IngestedParameterDebugInfo)(nil),   // 52: google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo.IngestedParameterDebugInfo
	(*ServiceLatency_InternalServiceLatency)(nil),                          // 53: google.cloud.dialogflow.v2.ServiceLatency.InternalServiceLatency
	(*KnowledgeAssistDebugInfo_KnowledgeAssistBehavior)(nil),               // 54: google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.KnowledgeAssistBehavior
	(*KnowledgeAssistAnswer_SuggestedQuery)(nil),                           // 55: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.SuggestedQuery
	(*KnowledgeAssistAnswer_KnowledgeAnswer)(nil),                          // 56: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer
	(*KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource)(nil),                // 57: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.FaqSource
	(*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource)(nil),         // 58: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.GenerativeSource
	(*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_Snippet)(nil), // 59: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.GenerativeSource.Snippet
	(*timestamppb.Timestamp)(nil),                                          // 60: google.protobuf.Timestamp
	(*SentimentAnalysisResult)(nil),                                        // 61: google.cloud.dialogflow.v2.SentimentAnalysisResult
	(*fieldmaskpb.FieldMask)(nil),                                          // 62: google.protobuf.FieldMask
	(*TextInput)(nil),                                                      // 63: google.cloud.dialogflow.v2.TextInput
	(*EventInput)(nil),                                                     // 64: google.cloud.dialogflow.v2.EventInput
	(*OutputAudioConfig)(nil),                                              // 65: google.cloud.dialogflow.v2.OutputAudioConfig
	(*QueryParameters)(nil),                                                // 66: google.cloud.dialogflow.v2.QueryParameters
	(*structpb.Struct)(nil),                                                // 67: google.protobuf.Struct
	(*InputAudioConfig)(nil),                                               // 68: google.cloud.dialogflow.v2.InputAudioConfig
	(*TelephonyDtmfEvents)(nil),                                            // 69: google.cloud.dialogflow.v2.TelephonyDtmfEvents
	(*StreamingRecognitionResult)(nil),                                     // 70: google.cloud.dialogflow.v2.StreamingRecognitionResult
	(*CloudConversationDebuggingInfo)(nil),                                 // 71: google.cloud.dialogflow.v2.CloudConversationDebuggingInfo
	(*DetectIntentResponse)(nil),                                           // 72: google.cloud.dialogflow.v2.DetectIntentResponse
	(*QueryResult)(nil),                                                    // 73: google.cloud.dialogflow.v2.QueryResult
	(*status.Status)(nil),                                                  // 74: google.rpc.Status
	(*structpb.Value)(nil),                                                 // 75: google.protobuf.Value
	(*GeneratorSuggestion)(nil),                                            // 76: google.cloud.dialogflow.v2.GeneratorSuggestion
}
var file_google_cloud_dialogflow_v2_participant_proto_depIdxs = []int32{
	1,  // 0: google.cloud.dialogflow.v2.Participant.role:type_name -> google.cloud.dialogflow.v2.Participant.Role
	47, // 1: google.cloud.dialogflow.v2.Participant.documents_metadata_filters:type_name -> google.cloud.dialogflow.v2.Participant.DocumentsMetadataFiltersEntry
	2,  // 2: google.cloud.dialogflow.v2.Participant.agent_desktop_source:type_name -> google.cloud.dialogflow.v2.Participant.AgentDesktopSource
	1,  // 3: google.cloud.dialogflow.v2.Message.participant_role:type_name -> google.cloud.dialogflow.v2.Participant.Role
	60, // 4: google.cloud.dialogflow.v2.Message.create_time:type_name -> google.protobuf.Timestamp
	60, // 5: google.cloud.dialogflow.v2.Message.send_time:type_name -> google.protobuf.Timestamp
	38, // 6: google.cloud.dialogflow.v2.Message.message_annotation:type_name -> google.cloud.dialogflow.v2.MessageAnnotation
	61, // 7: google.cloud.dialogflow.v2.Message.sentiment_analysis:type_name -> google.cloud.dialogflow.v2.SentimentAnalysisResult
	8,  // 8: google.cloud.dialogflow.v2.CreateParticipantRequest.participant:type_name -> google.cloud.dialogflow.v2.Participant
	8,  // 9: google.cloud.dialogflow.v2.ListParticipantsResponse.participants:type_name -> google.cloud.dialogflow.v2.Participant
	8,  // 10: google.cloud.dialogflow.v2.UpdateParticipantRequest.participant:type_name -> google.cloud.dialogflow.v2.Participant
	62, // 11: google.cloud.dialogflow.v2.UpdateParticipantRequest.update_mask:type_name -> google.protobuf.FieldMask
	63, // 12: google.cloud.dialogflow.v2.AnalyzeContentRequest.text_input:type_name -> google.cloud.dialogflow.v2.TextInput
	27, // 13: google.cloud.dialogflow.v2.AnalyzeContentRequest.audio_input:type_name -> google.cloud.dialogflow.v2.AudioInput
	64, // 14: google.cloud.dialogflow.v2.AnalyzeContentRequest.event_input:type_name -> google.cloud.dialogflow.v2.EventInput
	39, // 15: google.cloud.dialogflow.v2.AnalyzeContentRequest.suggestion_input:type_name -> google.cloud.dialogflow.v2.SuggestionInput
	65, // 16: google.cloud.dialogflow.v2.AnalyzeContentRequest.reply_audio_config:type_name -> google.cloud.dialogflow.v2.OutputAudioConfig
	66, // 17: google.cloud.dialogflow.v2.AnalyzeContentRequest.query_params:type_name -> google.cloud.dialogflow.v2.QueryParameters
	40, // 18: google.cloud.dialogflow.v2.AnalyzeContentRequest.assist_query_params:type_name -> google.cloud.dialogflow.v2.AssistQueryParameters
	67, // 19: google.cloud.dialogflow.v2.AnalyzeContentRequest.cx_parameters:type_name -> google.protobuf.Struct
	28, // 20: google.cloud.dialogflow.v2.AnalyzeContentResponse.reply_audio:type_name -> google.cloud.dialogflow.v2.OutputAudio
	29, // 21: google.cloud.dialogflow.v2.AnalyzeContentResponse.automated_agent_reply:type_name -> google.cloud.dialogflow.v2.AutomatedAgentReply
	9,  // 22: google.cloud.dialogflow.v2.AnalyzeContentResponse.message:type_name -> google.cloud.dialogflow.v2.Message
	35, // 23: google.cloud.dialogflow.v2.AnalyzeContentResponse.human_agent_suggestion_results:type_name -> google.cloud.dialogflow.v2.SuggestionResult
	35, // 24: google.cloud.dialogflow.v2.AnalyzeContentResponse.end_user_suggestion_results:type_name -> google.cloud.dialogflow.v2.SuggestionResult
	16, // 25: google.cloud.dialogflow.v2.AnalyzeContentResponse.dtmf_parameters:type_name -> google.cloud.dialogflow.v2.DtmfParameters
	68, // 26: google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.audio_config:type_name -> google.cloud.dialogflow.v2.InputAudioConfig
	36, // 27: google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.text_config:type_name -> google.cloud.dialogflow.v2.InputTextConfig
	65, // 28: google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.reply_audio_config:type_name -> google.cloud.dialogflow.v2.OutputAudioConfig
	69, // 29: google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.input_dtmf:type_name -> google.cloud.dialogflow.v2.TelephonyDtmfEvents
	66, // 30: google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.query_params:type_name -> google.cloud.dialogflow.v2.QueryParameters
	40, // 31: google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.assist_query_params:type_name -> google.cloud.dialogflow.v2.AssistQueryParameters
	67, // 32: google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest.cx_parameters:type_name -> google.protobuf.Struct
	70, // 33: google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse.recognition_result:type_name -> google.cloud.dialogflow.v2.StreamingRecognitionResult
	28, // 34: google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse.reply_audio:type_name -> google.cloud.dialogflow.v2.OutputAudio
	29, // 35: google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse.automated_agent_reply:type_name -> google.cloud.dialogflow.v2.AutomatedAgentReply
	9,  // 36: google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse.message:type_name -> google.cloud.dialogflow.v2.Message
	35, // 37: google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse.human_agent_suggestion_results:type_name -> google.cloud.dialogflow.v2.SuggestionResult
	35, // 38: google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse.end_user_suggestion_results:type_name -> google.cloud.dialogflow.v2.SuggestionResult
	16, // 39: google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse.dtmf_parameters:type_name -> google.cloud.dialogflow.v2.DtmfParameters
	71, // 40: google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse.debugging_info:type_name -> google.cloud.dialogflow.v2.CloudConversationDebuggingInfo
	40, // 41: google.cloud.dialogflow.v2.SuggestArticlesRequest.assist_query_params:type_name -> google.cloud.dialogflow.v2.AssistQueryParameters
	30, // 42: google.cloud.dialogflow.v2.SuggestArticlesResponse.article_answers:type_name -> google.cloud.dialogflow.v2.ArticleAnswer
	40, // 43: google.cloud.dialogflow.v2.SuggestFaqAnswersRequest.assist_query_params:type_name -> google.cloud.dialogflow.v2.AssistQueryParameters
	31, // 44: google.cloud.dialogflow.v2.SuggestFaqAnswersResponse.faq_answers:type_name -> google.cloud.dialogflow.v2.FaqAnswer
	48, // 45: google.cloud.dialogflow.v2.GenerateSuggestionsResponse.generator_suggestion_answers:type_name -> google.cloud.dialogflow.v2.GenerateSuggestionsResponse.GeneratorSuggestionAnswer
	63, // 46: google.cloud.dialogflow.v2.SuggestSmartRepliesRequest.current_text_input:type_name -> google.cloud.dialogflow.v2.TextInput
	32, // 47: google.cloud.dialogflow.v2.SuggestSmartRepliesResponse.smart_reply_answers:type_name -> google.cloud.dialogflow.v2.SmartReplyAnswer
	68, // 48: google.cloud.dialogflow.v2.AudioInput.config:type_name -> google.cloud.dialogflow.v2.InputAudioConfig
	65, // 49: google.cloud.dialogflow.v2.OutputAudio.config:type_name -> google.cloud.dialogflow.v2.OutputAudioConfig
	72, // 50: google.cloud.dialogflow.v2.AutomatedAgentReply.detect_intent_response:type_name -> google.cloud.dialogflow.v2.DetectIntentResponse
	3,  // 51: google.cloud.dialogflow.v2.AutomatedAgentReply.automated_agent_reply_type:type_name -> google.cloud.dialogflow.v2.AutomatedAgentReply.AutomatedAgentReplyType
	49, // 52: google.cloud.dialogflow.v2.ArticleAnswer.metadata:type_name -> google.cloud.dialogflow.v2.ArticleAnswer.MetadataEntry
	50, // 53: google.cloud.dialogflow.v2.FaqAnswer.metadata:type_name -> google.cloud.dialogflow.v2.FaqAnswer.MetadataEntry
	73, // 54: google.cloud.dialogflow.v2.DialogflowAssistAnswer.query_result:type_name -> google.cloud.dialogflow.v2.QueryResult
	33, // 55: google.cloud.dialogflow.v2.DialogflowAssistAnswer.intent_suggestion:type_name -> google.cloud.dialogflow.v2.IntentSuggestion
	74, // 56: google.cloud.dialogflow.v2.SuggestionResult.error:type_name -> google.rpc.Status
	21, // 57: google.cloud.dialogflow.v2.SuggestionResult.suggest_articles_response:type_name -> google.cloud.dialogflow.v2.SuggestArticlesResponse
	42, // 58: google.cloud.dialogflow.v2.SuggestionResult.suggest_knowledge_assist_response:type_name -> google.cloud.dialogflow.v2.SuggestKnowledgeAssistResponse
	23, // 59: google.cloud.dialogflow.v2.SuggestionResult.suggest_faq_answers_response:type_name -> google.cloud.dialogflow.v2.SuggestFaqAnswersResponse
	26, // 60: google.cloud.dialogflow.v2.SuggestionResult.suggest_smart_replies_response:type_name -> google.cloud.dialogflow.v2.SuggestSmartRepliesResponse
	24, // 61: google.cloud.dialogflow.v2.SuggestionResult.generate_suggestions_response:type_name -> google.cloud.dialogflow.v2.GenerateSuggestionsResponse
	75, // 62: google.cloud.dialogflow.v2.AnnotatedMessagePart.formatted_value:type_name -> google.protobuf.Value
	37, // 63: google.cloud.dialogflow.v2.MessageAnnotation.parts:type_name -> google.cloud.dialogflow.v2.AnnotatedMessagePart
	67, // 64: google.cloud.dialogflow.v2.SuggestionInput.parameters:type_name -> google.protobuf.Struct
	4,  // 65: google.cloud.dialogflow.v2.SuggestionInput.action:type_name -> google.cloud.dialogflow.v2.SuggestionInput.Action
	60, // 66: google.cloud.dialogflow.v2.SuggestionInput.send_time:type_name -> google.protobuf.Timestamp
	51, // 67: google.cloud.dialogflow.v2.AssistQueryParameters.documents_metadata_filters:type_name -> google.cloud.dialogflow.v2.AssistQueryParameters.DocumentsMetadataFiltersEntry
	46, // 68: google.cloud.dialogflow.v2.SuggestKnowledgeAssistResponse.knowledge_assist_answer:type_name -> google.cloud.dialogflow.v2.KnowledgeAssistAnswer
	52, // 69: google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo.ingested_parameters_debug_info:type_name -> google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo.IngestedParameterDebugInfo
	53, // 70: google.cloud.dialogflow.v2.ServiceLatency.internal_service_latencies:type_name -> google.cloud.dialogflow.v2.ServiceLatency.InternalServiceLatency
	6,  // 71: google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.query_generation_failure_reason:type_name -> google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.QueryGenerationFailureReason
	7,  // 72: google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.query_categorization_failure_reason:type_name -> google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.QueryCategorizationFailureReason
	0,  // 73: google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.datastore_response_reason:type_name -> google.cloud.dialogflow.v2.DatastoreResponseReason
	54, // 74: google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.knowledge_assist_behavior:type_name -> google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.KnowledgeAssistBehavior
	43, // 75: google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.ingested_context_reference_debug_info:type_name -> google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo
	44, // 76: google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo.service_latency:type_name -> google.cloud.dialogflow.v2.ServiceLatency
	55, // 77: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.suggested_query:type_name -> google.cloud.dialogflow.v2.KnowledgeAssistAnswer.SuggestedQuery
	56, // 78: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.suggested_query_answer:type_name -> google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer
	45, // 79: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.knowledge_assist_debug_info:type_name -> google.cloud.dialogflow.v2.KnowledgeAssistDebugInfo
	76, // 80: google.cloud.dialogflow.v2.GenerateSuggestionsResponse.GeneratorSuggestionAnswer.generator_suggestion:type_name -> google.cloud.dialogflow.v2.GeneratorSuggestion
	5,  // 81: google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo.IngestedParameterDebugInfo.ingestion_status:type_name -> google.cloud.dialogflow.v2.IngestedContextReferenceDebugInfo.IngestedParameterDebugInfo.IngestionStatus
	60, // 82: google.cloud.dialogflow.v2.ServiceLatency.InternalServiceLatency.start_time:type_name -> google.protobuf.Timestamp
	60, // 83: google.cloud.dialogflow.v2.ServiceLatency.InternalServiceLatency.complete_time:type_name -> google.protobuf.Timestamp
	57, // 84: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.faq_source:type_name -> google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.FaqSource
	58, // 85: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.generative_source:type_name -> google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.GenerativeSource
	59, // 86: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.GenerativeSource.snippets:type_name -> google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.GenerativeSource.Snippet
	67, // 87: google.cloud.dialogflow.v2.KnowledgeAssistAnswer.KnowledgeAnswer.GenerativeSource.Snippet.metadata:type_name -> google.protobuf.Struct
	10, // 88: google.cloud.dialogflow.v2.Participants.CreateParticipant:input_type -> google.cloud.dialogflow.v2.CreateParticipantRequest
	11, // 89: google.cloud.dialogflow.v2.Participants.GetParticipant:input_type -> google.cloud.dialogflow.v2.GetParticipantRequest
	12, // 90: google.cloud.dialogflow.v2.Participants.ListParticipants:input_type -> google.cloud.dialogflow.v2.ListParticipantsRequest
	14, // 91: google.cloud.dialogflow.v2.Participants.UpdateParticipant:input_type -> google.cloud.dialogflow.v2.UpdateParticipantRequest
	15, // 92: google.cloud.dialogflow.v2.Participants.AnalyzeContent:input_type -> google.cloud.dialogflow.v2.AnalyzeContentRequest
	18, // 93: google.cloud.dialogflow.v2.Participants.StreamingAnalyzeContent:input_type -> google.cloud.dialogflow.v2.StreamingAnalyzeContentRequest
	20, // 94: google.cloud.dialogflow.v2.Participants.SuggestArticles:input_type -> google.cloud.dialogflow.v2.SuggestArticlesRequest
	22, // 95: google.cloud.dialogflow.v2.Participants.SuggestFaqAnswers:input_type -> google.cloud.dialogflow.v2.SuggestFaqAnswersRequest
	25, // 96: google.cloud.dialogflow.v2.Participants.SuggestSmartReplies:input_type -> google.cloud.dialogflow.v2.SuggestSmartRepliesRequest
	41, // 97: google.cloud.dialogflow.v2.Participants.SuggestKnowledgeAssist:input_type -> google.cloud.dialogflow.v2.SuggestKnowledgeAssistRequest
	8,  // 98: google.cloud.dialogflow.v2.Participants.CreateParticipant:output_type -> google.cloud.dialogflow.v2.Participant
	8,  // 99: google.cloud.dialogflow.v2.Participants.GetParticipant:output_type -> google.cloud.dialogflow.v2.Participant
	13, // 100: google.cloud.dialogflow.v2.Participants.ListParticipants:output_type -> google.cloud.dialogflow.v2.ListParticipantsResponse
	8,  // 101: google.cloud.dialogflow.v2.Participants.UpdateParticipant:output_type -> google.cloud.dialogflow.v2.Participant
	17, // 102: google.cloud.dialogflow.v2.Participants.AnalyzeContent:output_type -> google.cloud.dialogflow.v2.AnalyzeContentResponse
	19, // 103: google.cloud.dialogflow.v2.Participants.StreamingAnalyzeContent:output_type -> google.cloud.dialogflow.v2.StreamingAnalyzeContentResponse
	21, // 104: google.cloud.dialogflow.v2.Participants.SuggestArticles:output_type -> google.cloud.dialogflow.v2.SuggestArticlesResponse
	23, // 105: google.cloud.dialogflow.v2.Participants.SuggestFaqAnswers:output_type -> google.cloud.dialogflow.v2.SuggestFaqAnswersResponse
	26, // 106: google.cloud.dialogflow.v2.Participants.SuggestSmartReplies:output_type -> google.cloud.dialogflow.v2.SuggestSmartRepliesResponse
	42, // 107: google.cloud.dialogflow.v2.Participants.SuggestKnowledgeAssist:output_type -> google.cloud.dialogflow.v2.SuggestKnowledgeAssistResponse
	98, // [98:108] is the sub-list for method output_type
	88, // [88:98] is the sub-list for method input_type
	88, // [88:88] is the sub-list for extension type_name
	88, // [88:88] is the sub-list for extension extendee
	0,  // [0:88] is the sub-list for field type_name
}

func init() { file_google_cloud_dialogflow_v2_participant_proto_init() }
func file_google_cloud_dialogflow_v2_participant_proto_init() {
	if File_google_cloud_dialogflow_v2_participant_proto != nil {
		return
	}
	file_google_cloud_dialogflow_v2_audio_config_proto_init()
	file_google_cloud_dialogflow_v2_generator_proto_init()
	file_google_cloud_dialogflow_v2_session_proto_init()
	file_google_cloud_dialogflow_v2_participant_proto_msgTypes[7].OneofWrappers = []any{
		(*AnalyzeContentRequest_TextInput)(nil),
		(*AnalyzeContentRequest_AudioInput)(nil),
		(*AnalyzeContentRequest_EventInput)(nil),
		(*AnalyzeContentRequest_SuggestionInput)(nil),
	}
	file_google_cloud_dialogflow_v2_participant_proto_msgTypes[10].OneofWrappers = []any{
		(*StreamingAnalyzeContentRequest_AudioConfig)(nil),
		(*StreamingAnalyzeContentRequest_TextConfig)(nil),
		(*StreamingAnalyzeContentRequest_InputAudio)(nil),
		(*StreamingAnalyzeContentRequest_InputText)(nil),
		(*StreamingAnalyzeContentRequest_InputDtmf)(nil),
	}
	file_google_cloud_dialogflow_v2_participant_proto_msgTypes[25].OneofWrappers = []any{
		(*IntentSuggestion_IntentV2)(nil),
	}
	file_google_cloud_dialogflow_v2_participant_proto_msgTypes[26].OneofWrappers = []any{
		(*DialogflowAssistAnswer_QueryResult)(nil),
		(*DialogflowAssistAnswer_IntentSuggestion)(nil),
	}
	file_google_cloud_dialogflow_v2_participant_proto_msgTypes[27].OneofWrappers = []any{
		(*SuggestionResult_Error)(nil),
		(*SuggestionResult_SuggestArticlesResponse)(nil),
		(*SuggestionResult_SuggestKnowledgeAssistResponse)(nil),
		(*SuggestionResult_SuggestFaqAnswersResponse)(nil),
		(*SuggestionResult_SuggestSmartRepliesResponse)(nil),
		(*SuggestionResult_GenerateSuggestionsResponse)(nil),
	}
	file_google_cloud_dialogflow_v2_participant_proto_msgTypes[48].OneofWrappers = []any{
		(*KnowledgeAssistAnswer_KnowledgeAnswer_FaqSource_)(nil),
		(*KnowledgeAssistAnswer_KnowledgeAnswer_GenerativeSource_)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_cloud_dialogflow_v2_participant_proto_rawDesc), len(file_google_cloud_dialogflow_v2_participant_proto_rawDesc)),
			NumEnums:      8,
			NumMessages:   52,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_google_cloud_dialogflow_v2_participant_proto_goTypes,
		DependencyIndexes: file_google_cloud_dialogflow_v2_participant_proto_depIdxs,
		EnumInfos:         file_google_cloud_dialogflow_v2_participant_proto_enumTypes,
		MessageInfos:      file_google_cloud_dialogflow_v2_participant_proto_msgTypes,
	}.Build()
	File_google_cloud_dialogflow_v2_participant_proto = out.File
	file_google_cloud_dialogflow_v2_participant_proto_goTypes = nil
	file_google_cloud_dialogflow_v2_participant_proto_depIdxs = nil
}
