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

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

package cxpb

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

	_ "google.golang.org/genproto/googleapis/api/annotations"
	protoreflect "google.golang.org/protobuf/reflect/protoreflect"
	protoimpl "google.golang.org/protobuf/runtime/protoimpl"
	durationpb "google.golang.org/protobuf/types/known/durationpb"
	emptypb "google.golang.org/protobuf/types/known/emptypb"
	fieldmaskpb "google.golang.org/protobuf/types/known/fieldmaskpb"
	structpb "google.golang.org/protobuf/types/known/structpb"
)

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)
)

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

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

// Enum value maps for Webhook_GenericWebService_ServiceAgentAuth.
var (
	Webhook_GenericWebService_ServiceAgentAuth_name = map[int32]string{
		0: "SERVICE_AGENT_AUTH_UNSPECIFIED",
		1: "NONE",
		2: "ID_TOKEN",
		3: "ACCESS_TOKEN",
	}
	Webhook_GenericWebService_ServiceAgentAuth_value = map[string]int32{
		"SERVICE_AGENT_AUTH_UNSPECIFIED": 0,
		"NONE":                           1,
		"ID_TOKEN":                       2,
		"ACCESS_TOKEN":                   3,
	}
)

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

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

func (Webhook_GenericWebService_ServiceAgentAuth) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes[0].Descriptor()
}

func (Webhook_GenericWebService_ServiceAgentAuth) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes[0]
}

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

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

// Represents the type of webhook configuration.
type Webhook_GenericWebService_WebhookType int32

const (
	// Default value. This value is unused.
	Webhook_GenericWebService_WEBHOOK_TYPE_UNSPECIFIED Webhook_GenericWebService_WebhookType = 0
	// Represents a standard webhook.
	Webhook_GenericWebService_STANDARD Webhook_GenericWebService_WebhookType = 1
	// Represents a flexible webhook.
	Webhook_GenericWebService_FLEXIBLE Webhook_GenericWebService_WebhookType = 2
)

// Enum value maps for Webhook_GenericWebService_WebhookType.
var (
	Webhook_GenericWebService_WebhookType_name = map[int32]string{
		0: "WEBHOOK_TYPE_UNSPECIFIED",
		1: "STANDARD",
		2: "FLEXIBLE",
	}
	Webhook_GenericWebService_WebhookType_value = map[string]int32{
		"WEBHOOK_TYPE_UNSPECIFIED": 0,
		"STANDARD":                 1,
		"FLEXIBLE":                 2,
	}
)

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

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

func (Webhook_GenericWebService_WebhookType) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes[1].Descriptor()
}

func (Webhook_GenericWebService_WebhookType) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes[1]
}

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

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

// HTTP method to use when calling webhooks.
type Webhook_GenericWebService_HttpMethod int32

const (
	// HTTP method not specified.
	Webhook_GenericWebService_HTTP_METHOD_UNSPECIFIED Webhook_GenericWebService_HttpMethod = 0
	// HTTP POST Method.
	Webhook_GenericWebService_POST Webhook_GenericWebService_HttpMethod = 1
	// HTTP GET Method.
	Webhook_GenericWebService_GET Webhook_GenericWebService_HttpMethod = 2
	// HTTP HEAD Method.
	Webhook_GenericWebService_HEAD Webhook_GenericWebService_HttpMethod = 3
	// HTTP PUT Method.
	Webhook_GenericWebService_PUT Webhook_GenericWebService_HttpMethod = 4
	// HTTP DELETE Method.
	Webhook_GenericWebService_DELETE Webhook_GenericWebService_HttpMethod = 5
	// HTTP PATCH Method.
	Webhook_GenericWebService_PATCH Webhook_GenericWebService_HttpMethod = 6
	// HTTP OPTIONS Method.
	Webhook_GenericWebService_OPTIONS Webhook_GenericWebService_HttpMethod = 7
)

// Enum value maps for Webhook_GenericWebService_HttpMethod.
var (
	Webhook_GenericWebService_HttpMethod_name = map[int32]string{
		0: "HTTP_METHOD_UNSPECIFIED",
		1: "POST",
		2: "GET",
		3: "HEAD",
		4: "PUT",
		5: "DELETE",
		6: "PATCH",
		7: "OPTIONS",
	}
	Webhook_GenericWebService_HttpMethod_value = map[string]int32{
		"HTTP_METHOD_UNSPECIFIED": 0,
		"POST":                    1,
		"GET":                     2,
		"HEAD":                    3,
		"PUT":                     4,
		"DELETE":                  5,
		"PATCH":                   6,
		"OPTIONS":                 7,
	}
)

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

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

func (Webhook_GenericWebService_HttpMethod) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes[2].Descriptor()
}

func (Webhook_GenericWebService_HttpMethod) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes[2]
}

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

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

// Defines merge behavior for `messages`.
type WebhookResponse_FulfillmentResponse_MergeBehavior int32

const (
	// Not specified. `APPEND` will be used.
	WebhookResponse_FulfillmentResponse_MERGE_BEHAVIOR_UNSPECIFIED WebhookResponse_FulfillmentResponse_MergeBehavior = 0
	// `messages` will be appended to the list of messages waiting to be sent
	// to the user.
	WebhookResponse_FulfillmentResponse_APPEND WebhookResponse_FulfillmentResponse_MergeBehavior = 1
	// `messages` will replace the list of messages waiting to be sent to the
	// user.
	WebhookResponse_FulfillmentResponse_REPLACE WebhookResponse_FulfillmentResponse_MergeBehavior = 2
)

// Enum value maps for WebhookResponse_FulfillmentResponse_MergeBehavior.
var (
	WebhookResponse_FulfillmentResponse_MergeBehavior_name = map[int32]string{
		0: "MERGE_BEHAVIOR_UNSPECIFIED",
		1: "APPEND",
		2: "REPLACE",
	}
	WebhookResponse_FulfillmentResponse_MergeBehavior_value = map[string]int32{
		"MERGE_BEHAVIOR_UNSPECIFIED": 0,
		"APPEND":                     1,
		"REPLACE":                    2,
	}
)

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

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

func (WebhookResponse_FulfillmentResponse_MergeBehavior) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes[3].Descriptor()
}

func (WebhookResponse_FulfillmentResponse_MergeBehavior) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes[3]
}

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

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

// Represents the state of a parameter.
type PageInfo_FormInfo_ParameterInfo_ParameterState int32

const (
	// Not specified. This value should be never used.
	PageInfo_FormInfo_ParameterInfo_PARAMETER_STATE_UNSPECIFIED PageInfo_FormInfo_ParameterInfo_ParameterState = 0
	// Indicates that the parameter does not have a value.
	PageInfo_FormInfo_ParameterInfo_EMPTY PageInfo_FormInfo_ParameterInfo_ParameterState = 1
	// Indicates that the parameter value is invalid. This field can be used
	// by the webhook to invalidate the parameter and ask the server to
	// collect it from the user again.
	PageInfo_FormInfo_ParameterInfo_INVALID PageInfo_FormInfo_ParameterInfo_ParameterState = 2
	// Indicates that the parameter has a value.
	PageInfo_FormInfo_ParameterInfo_FILLED PageInfo_FormInfo_ParameterInfo_ParameterState = 3
)

// Enum value maps for PageInfo_FormInfo_ParameterInfo_ParameterState.
var (
	PageInfo_FormInfo_ParameterInfo_ParameterState_name = map[int32]string{
		0: "PARAMETER_STATE_UNSPECIFIED",
		1: "EMPTY",
		2: "INVALID",
		3: "FILLED",
	}
	PageInfo_FormInfo_ParameterInfo_ParameterState_value = map[string]int32{
		"PARAMETER_STATE_UNSPECIFIED": 0,
		"EMPTY":                       1,
		"INVALID":                     2,
		"FILLED":                      3,
	}
)

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

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

func (PageInfo_FormInfo_ParameterInfo_ParameterState) Descriptor() protoreflect.EnumDescriptor {
	return file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes[4].Descriptor()
}

func (PageInfo_FormInfo_ParameterInfo_ParameterState) Type() protoreflect.EnumType {
	return &file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes[4]
}

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

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

// Webhooks host the developer's business logic. During a session, webhooks
// allow the developer to use the data extracted by Dialogflow's natural
// language processing to generate dynamic responses, validate collected data,
// or trigger actions on the backend.
type Webhook struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The unique identifier of the webhook.
	// Required for the
	// [Webhooks.UpdateWebhook][google.cloud.dialogflow.cx.v3beta1.Webhooks.UpdateWebhook]
	// method.
	// [Webhooks.CreateWebhook][google.cloud.dialogflow.cx.v3beta1.Webhooks.CreateWebhook]
	// populates the name automatically. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/webhooks/<WebhookID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// Required. The human-readable name of the webhook, unique within the agent.
	DisplayName string `protobuf:"bytes,2,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// Required. The webhook configuration.
	//
	// Types that are valid to be assigned to Webhook:
	//
	//	*Webhook_GenericWebService_
	//	*Webhook_ServiceDirectory
	Webhook isWebhook_Webhook `protobuf_oneof:"webhook"`
	// Webhook execution timeout. Execution is considered failed if Dialogflow
	// doesn't receive a response from webhook at the end of the timeout period.
	// Defaults to 5 seconds, maximum allowed timeout is 30 seconds.
	Timeout *durationpb.Duration `protobuf:"bytes,6,opt,name=timeout,proto3" json:"timeout,omitempty"`
	// Indicates whether the webhook is disabled.
	Disabled      bool `protobuf:"varint,5,opt,name=disabled,proto3" json:"disabled,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Webhook) ProtoMessage() {}

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

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

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

func (x *Webhook) GetWebhook() isWebhook_Webhook {
	if x != nil {
		return x.Webhook
	}
	return nil
}

func (x *Webhook) GetGenericWebService() *Webhook_GenericWebService {
	if x != nil {
		if x, ok := x.Webhook.(*Webhook_GenericWebService_); ok {
			return x.GenericWebService
		}
	}
	return nil
}

func (x *Webhook) GetServiceDirectory() *Webhook_ServiceDirectoryConfig {
	if x != nil {
		if x, ok := x.Webhook.(*Webhook_ServiceDirectory); ok {
			return x.ServiceDirectory
		}
	}
	return nil
}

func (x *Webhook) GetTimeout() *durationpb.Duration {
	if x != nil {
		return x.Timeout
	}
	return nil
}

func (x *Webhook) GetDisabled() bool {
	if x != nil {
		return x.Disabled
	}
	return false
}

type isWebhook_Webhook interface {
	isWebhook_Webhook()
}

type Webhook_GenericWebService_ struct {
	// Configuration for a generic web service.
	GenericWebService *Webhook_GenericWebService `protobuf:"bytes,4,opt,name=generic_web_service,json=genericWebService,proto3,oneof"`
}

type Webhook_ServiceDirectory struct {
	// Configuration for a [Service
	// Directory](https://cloud.google.com/service-directory) service.
	ServiceDirectory *Webhook_ServiceDirectoryConfig `protobuf:"bytes,7,opt,name=service_directory,json=serviceDirectory,proto3,oneof"`
}

func (*Webhook_GenericWebService_) isWebhook_Webhook() {}

func (*Webhook_ServiceDirectory) isWebhook_Webhook() {}

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

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

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

func (*ListWebhooksRequest) ProtoMessage() {}

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

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

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

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

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

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

func (*ListWebhooksResponse) ProtoMessage() {}

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

func (x *ListWebhooksResponse) GetWebhooks() []*Webhook {
	if x != nil {
		return x.Webhooks
	}
	return nil
}

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

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

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

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

func (*GetWebhookRequest) ProtoMessage() {}

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

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

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

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

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

func (*CreateWebhookRequest) ProtoMessage() {}

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

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

func (x *CreateWebhookRequest) GetWebhook() *Webhook {
	if x != nil {
		return x.Webhook
	}
	return nil
}

// The request message for
// [Webhooks.UpdateWebhook][google.cloud.dialogflow.cx.v3beta1.Webhooks.UpdateWebhook].
type UpdateWebhookRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The webhook to update.
	Webhook *Webhook `protobuf:"bytes,1,opt,name=webhook,proto3" json:"webhook,omitempty"`
	// The mask to control which fields get updated. If the mask is not present,
	// all fields will be updated.
	UpdateMask    *fieldmaskpb.FieldMask `protobuf:"bytes,2,opt,name=update_mask,json=updateMask,proto3" json:"update_mask,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*UpdateWebhookRequest) ProtoMessage() {}

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

func (x *UpdateWebhookRequest) GetWebhook() *Webhook {
	if x != nil {
		return x.Webhook
	}
	return nil
}

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

// The request message for
// [Webhooks.DeleteWebhook][google.cloud.dialogflow.cx.v3beta1.Webhooks.DeleteWebhook].
type DeleteWebhookRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of the webhook to delete.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/webhooks/<WebhookID>`.
	Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"`
	// This field has no effect for webhook not being used.
	// For webhooks that are used by pages/flows/transition route groups:
	//
	//   - If `force` is set to false, an error will be returned with message
	//     indicating the referenced resources.
	//   - If `force` is set to true, Dialogflow will remove the webhook, as well
	//     as any references to the webhook (i.e.
	//     [Webhook][google.cloud.dialogflow.cx.v3beta1.Fulfillment.webhook] and
	//     [tag][google.cloud.dialogflow.cx.v3beta1.Fulfillment.tag]in fulfillments
	//     that point to this webhook will be removed).
	Force         bool `protobuf:"varint,2,opt,name=force,proto3" json:"force,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*DeleteWebhookRequest) ProtoMessage() {}

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

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

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

// The request message for a webhook call. The request is sent as a JSON object
// and the field names will be presented in camel cases.
//
// You may see undocumented fields in an actual request. These fields are used
// internally by Dialogflow and should be ignored.
type WebhookRequest struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Always present. The unique identifier of the
	// [DetectIntentResponse][google.cloud.dialogflow.cx.v3beta1.DetectIntentResponse]
	// that will be returned to the API caller.
	DetectIntentResponseId string `protobuf:"bytes,1,opt,name=detect_intent_response_id,json=detectIntentResponseId,proto3" json:"detect_intent_response_id,omitempty"`
	// The original conversational query.
	//
	// Types that are valid to be assigned to Query:
	//
	//	*WebhookRequest_Text
	//	*WebhookRequest_TriggerIntent
	//	*WebhookRequest_Transcript
	//	*WebhookRequest_TriggerEvent
	//	*WebhookRequest_DtmfDigits
	Query isWebhookRequest_Query `protobuf_oneof:"query"`
	// The language code specified in the [original
	// request][QueryInput.language_code].
	LanguageCode string `protobuf:"bytes,15,opt,name=language_code,json=languageCode,proto3" json:"language_code,omitempty"`
	// Always present. Information about the fulfillment that triggered this
	// webhook call.
	FulfillmentInfo *WebhookRequest_FulfillmentInfo `protobuf:"bytes,6,opt,name=fulfillment_info,json=fulfillmentInfo,proto3" json:"fulfillment_info,omitempty"`
	// Information about the last matched intent.
	IntentInfo *WebhookRequest_IntentInfo `protobuf:"bytes,3,opt,name=intent_info,json=intentInfo,proto3" json:"intent_info,omitempty"`
	// Information about page status.
	PageInfo *PageInfo `protobuf:"bytes,4,opt,name=page_info,json=pageInfo,proto3" json:"page_info,omitempty"`
	// Information about session status.
	SessionInfo *SessionInfo `protobuf:"bytes,5,opt,name=session_info,json=sessionInfo,proto3" json:"session_info,omitempty"`
	// The list of rich message responses to present to the user. Webhook can
	// choose to append or replace this list in
	// [WebhookResponse.fulfillment_response][google.cloud.dialogflow.cx.v3beta1.WebhookResponse.fulfillment_response];
	Messages []*ResponseMessage `protobuf:"bytes,7,rep,name=messages,proto3" json:"messages,omitempty"`
	// Custom data set in
	// [QueryParameters.payload][google.cloud.dialogflow.cx.v3beta1.QueryParameters.payload].
	Payload *structpb.Struct `protobuf:"bytes,8,opt,name=payload,proto3" json:"payload,omitempty"`
	// The sentiment analysis result of the current user request. The field is
	// filled when sentiment analysis is configured to be enabled for the request.
	SentimentAnalysisResult *WebhookRequest_SentimentAnalysisResult `protobuf:"bytes,9,opt,name=sentiment_analysis_result,json=sentimentAnalysisResult,proto3" json:"sentiment_analysis_result,omitempty"`
	// Information about the language of the request.
	LanguageInfo  *LanguageInfo `protobuf:"bytes,18,opt,name=language_info,json=languageInfo,proto3" json:"language_info,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*WebhookRequest) ProtoMessage() {}

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

func (x *WebhookRequest) GetDetectIntentResponseId() string {
	if x != nil {
		return x.DetectIntentResponseId
	}
	return ""
}

func (x *WebhookRequest) GetQuery() isWebhookRequest_Query {
	if x != nil {
		return x.Query
	}
	return nil
}

func (x *WebhookRequest) GetText() string {
	if x != nil {
		if x, ok := x.Query.(*WebhookRequest_Text); ok {
			return x.Text
		}
	}
	return ""
}

func (x *WebhookRequest) GetTriggerIntent() string {
	if x != nil {
		if x, ok := x.Query.(*WebhookRequest_TriggerIntent); ok {
			return x.TriggerIntent
		}
	}
	return ""
}

func (x *WebhookRequest) GetTranscript() string {
	if x != nil {
		if x, ok := x.Query.(*WebhookRequest_Transcript); ok {
			return x.Transcript
		}
	}
	return ""
}

func (x *WebhookRequest) GetTriggerEvent() string {
	if x != nil {
		if x, ok := x.Query.(*WebhookRequest_TriggerEvent); ok {
			return x.TriggerEvent
		}
	}
	return ""
}

func (x *WebhookRequest) GetDtmfDigits() string {
	if x != nil {
		if x, ok := x.Query.(*WebhookRequest_DtmfDigits); ok {
			return x.DtmfDigits
		}
	}
	return ""
}

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

func (x *WebhookRequest) GetFulfillmentInfo() *WebhookRequest_FulfillmentInfo {
	if x != nil {
		return x.FulfillmentInfo
	}
	return nil
}

func (x *WebhookRequest) GetIntentInfo() *WebhookRequest_IntentInfo {
	if x != nil {
		return x.IntentInfo
	}
	return nil
}

func (x *WebhookRequest) GetPageInfo() *PageInfo {
	if x != nil {
		return x.PageInfo
	}
	return nil
}

func (x *WebhookRequest) GetSessionInfo() *SessionInfo {
	if x != nil {
		return x.SessionInfo
	}
	return nil
}

func (x *WebhookRequest) GetMessages() []*ResponseMessage {
	if x != nil {
		return x.Messages
	}
	return nil
}

func (x *WebhookRequest) GetPayload() *structpb.Struct {
	if x != nil {
		return x.Payload
	}
	return nil
}

func (x *WebhookRequest) GetSentimentAnalysisResult() *WebhookRequest_SentimentAnalysisResult {
	if x != nil {
		return x.SentimentAnalysisResult
	}
	return nil
}

func (x *WebhookRequest) GetLanguageInfo() *LanguageInfo {
	if x != nil {
		return x.LanguageInfo
	}
	return nil
}

type isWebhookRequest_Query interface {
	isWebhookRequest_Query()
}

type WebhookRequest_Text struct {
	// If [natural language text][google.cloud.dialogflow.cx.v3beta1.TextInput]
	// was provided as input, this field will contain a copy of the text.
	Text string `protobuf:"bytes,10,opt,name=text,proto3,oneof"`
}

type WebhookRequest_TriggerIntent struct {
	// If an [intent][google.cloud.dialogflow.cx.v3beta1.IntentInput] was
	// provided as input, this field will contain a copy of the intent
	// identifier. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>`.
	TriggerIntent string `protobuf:"bytes,11,opt,name=trigger_intent,json=triggerIntent,proto3,oneof"`
}

type WebhookRequest_Transcript struct {
	// If [natural language speech
	// audio][google.cloud.dialogflow.cx.v3beta1.AudioInput] was provided as
	// input, this field will contain the transcript for the audio.
	Transcript string `protobuf:"bytes,12,opt,name=transcript,proto3,oneof"`
}

type WebhookRequest_TriggerEvent struct {
	// If an [event][google.cloud.dialogflow.cx.v3beta1.EventInput] was provided
	// as input, this field will contain the name of the event.
	TriggerEvent string `protobuf:"bytes,14,opt,name=trigger_event,json=triggerEvent,proto3,oneof"`
}

type WebhookRequest_DtmfDigits struct {
	// If [DTMF][google.cloud.dialogflow.cx.v3beta1.DtmfInput] was provided as
	// input, this field will contain the DTMF digits.
	DtmfDigits string `protobuf:"bytes,17,opt,name=dtmf_digits,json=dtmfDigits,proto3,oneof"`
}

func (*WebhookRequest_Text) isWebhookRequest_Query() {}

func (*WebhookRequest_TriggerIntent) isWebhookRequest_Query() {}

func (*WebhookRequest_Transcript) isWebhookRequest_Query() {}

func (*WebhookRequest_TriggerEvent) isWebhookRequest_Query() {}

func (*WebhookRequest_DtmfDigits) isWebhookRequest_Query() {}

// The response message for a webhook call.
type WebhookResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The fulfillment response to send to the user. This field can be omitted by
	// the webhook if it does not intend to send any response to the user.
	FulfillmentResponse *WebhookResponse_FulfillmentResponse `protobuf:"bytes,1,opt,name=fulfillment_response,json=fulfillmentResponse,proto3" json:"fulfillment_response,omitempty"`
	// Information about page status. This field can be omitted by the webhook if
	// it does not intend to modify page status.
	PageInfo *PageInfo `protobuf:"bytes,2,opt,name=page_info,json=pageInfo,proto3" json:"page_info,omitempty"`
	// Information about session status. This field can be omitted by the webhook
	// if it does not intend to modify session status.
	SessionInfo *SessionInfo `protobuf:"bytes,3,opt,name=session_info,json=sessionInfo,proto3" json:"session_info,omitempty"`
	// Value to append directly to
	// [QueryResult.webhook_payloads][google.cloud.dialogflow.cx.v3beta1.QueryResult.webhook_payloads].
	Payload *structpb.Struct `protobuf:"bytes,4,opt,name=payload,proto3" json:"payload,omitempty"`
	// The target to transition to. This can be set optionally to indicate an
	// immediate transition to a different page in the same host flow, or a
	// different flow in the same agent.
	//
	// Types that are valid to be assigned to Transition:
	//
	//	*WebhookResponse_TargetPage
	//	*WebhookResponse_TargetFlow
	Transition    isWebhookResponse_Transition `protobuf_oneof:"transition"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*WebhookResponse) ProtoMessage() {}

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

func (x *WebhookResponse) GetFulfillmentResponse() *WebhookResponse_FulfillmentResponse {
	if x != nil {
		return x.FulfillmentResponse
	}
	return nil
}

func (x *WebhookResponse) GetPageInfo() *PageInfo {
	if x != nil {
		return x.PageInfo
	}
	return nil
}

func (x *WebhookResponse) GetSessionInfo() *SessionInfo {
	if x != nil {
		return x.SessionInfo
	}
	return nil
}

func (x *WebhookResponse) GetPayload() *structpb.Struct {
	if x != nil {
		return x.Payload
	}
	return nil
}

func (x *WebhookResponse) GetTransition() isWebhookResponse_Transition {
	if x != nil {
		return x.Transition
	}
	return nil
}

func (x *WebhookResponse) GetTargetPage() string {
	if x != nil {
		if x, ok := x.Transition.(*WebhookResponse_TargetPage); ok {
			return x.TargetPage
		}
	}
	return ""
}

func (x *WebhookResponse) GetTargetFlow() string {
	if x != nil {
		if x, ok := x.Transition.(*WebhookResponse_TargetFlow); ok {
			return x.TargetFlow
		}
	}
	return ""
}

type isWebhookResponse_Transition interface {
	isWebhookResponse_Transition()
}

type WebhookResponse_TargetPage struct {
	// The target page to transition to.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>`.
	TargetPage string `protobuf:"bytes,5,opt,name=target_page,json=targetPage,proto3,oneof"`
}

type WebhookResponse_TargetFlow struct {
	// The target flow to transition to.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>`.
	TargetFlow string `protobuf:"bytes,6,opt,name=target_flow,json=targetFlow,proto3,oneof"`
}

func (*WebhookResponse_TargetPage) isWebhookResponse_Transition() {}

func (*WebhookResponse_TargetFlow) isWebhookResponse_Transition() {}

// Represents page information communicated to and from the webhook.
type PageInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Always present for
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest].
	// Ignored for
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse]. The
	// unique identifier of the current page. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/flows/<FlowID>/pages/<PageID>`.
	CurrentPage string `protobuf:"bytes,1,opt,name=current_page,json=currentPage,proto3" json:"current_page,omitempty"`
	// Always present for
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest].
	// Ignored for
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse]. The
	// display name of the current page.
	DisplayName string `protobuf:"bytes,4,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// Optional for both
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest] and
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse].
	// Information about the form.
	FormInfo      *PageInfo_FormInfo `protobuf:"bytes,3,opt,name=form_info,json=formInfo,proto3" json:"form_info,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*PageInfo) ProtoMessage() {}

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

func (x *PageInfo) GetCurrentPage() string {
	if x != nil {
		return x.CurrentPage
	}
	return ""
}

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

func (x *PageInfo) GetFormInfo() *PageInfo_FormInfo {
	if x != nil {
		return x.FormInfo
	}
	return nil
}

// Represents session information communicated to and from the webhook.
type SessionInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Always present for
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest].
	// Ignored for
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse]. The
	// unique identifier of the
	// [session][google.cloud.dialogflow.cx.v3beta1.DetectIntentRequest.session].
	// This field can be used by the webhook to identify a session. Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/sessions/<SessionID>`
	// or
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/environments/<EnvironmentID>/sessions/<SessionID>`
	// if environment is specified.
	Session string `protobuf:"bytes,1,opt,name=session,proto3" json:"session,omitempty"`
	// Optional for
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest].
	// Optional for
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse]. All
	// parameters collected from forms and intents during the session. Parameters
	// can be created, updated, or removed by the webhook. To remove a parameter
	// from the session, the webhook should explicitly set the parameter value to
	// null in
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse]. The
	// map is keyed by parameters' display names.
	Parameters    map[string]*structpb.Value `protobuf:"bytes,2,rep,name=parameters,proto3" json:"parameters,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*SessionInfo) ProtoMessage() {}

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

func (x *SessionInfo) GetSession() string {
	if x != nil {
		return x.Session
	}
	return ""
}

func (x *SessionInfo) GetParameters() map[string]*structpb.Value {
	if x != nil {
		return x.Parameters
	}
	return nil
}

// Represents the language information of the request.
type LanguageInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The language code specified in the original
	// [request][google.cloud.dialogflow.cx.v3beta1.QueryInput.language_code].
	InputLanguageCode string `protobuf:"bytes,1,opt,name=input_language_code,json=inputLanguageCode,proto3" json:"input_language_code,omitempty"`
	// The language code detected for this request based on the user
	// conversation.
	ResolvedLanguageCode string `protobuf:"bytes,2,opt,name=resolved_language_code,json=resolvedLanguageCode,proto3" json:"resolved_language_code,omitempty"`
	// The confidence score of the detected language between 0 and 1.
	ConfidenceScore float32 `protobuf:"fixed32,3,opt,name=confidence_score,json=confidenceScore,proto3" json:"confidence_score,omitempty"`
	unknownFields   protoimpl.UnknownFields
	sizeCache       protoimpl.SizeCache
}

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

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

func (*LanguageInfo) ProtoMessage() {}

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

func (x *LanguageInfo) GetInputLanguageCode() string {
	if x != nil {
		return x.InputLanguageCode
	}
	return ""
}

func (x *LanguageInfo) GetResolvedLanguageCode() string {
	if x != nil {
		return x.ResolvedLanguageCode
	}
	return ""
}

func (x *LanguageInfo) GetConfidenceScore() float32 {
	if x != nil {
		return x.ConfidenceScore
	}
	return 0
}

// Represents configuration for a generic web service.
type Webhook_GenericWebService struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The webhook URI for receiving POST requests. It must use https
	// protocol.
	Uri string `protobuf:"bytes,1,opt,name=uri,proto3" json:"uri,omitempty"`
	// The user name for HTTP Basic authentication.
	//
	// Deprecated: Marked as deprecated in google/cloud/dialogflow/cx/v3beta1/webhook.proto.
	Username string `protobuf:"bytes,2,opt,name=username,proto3" json:"username,omitempty"`
	// The password for HTTP Basic authentication.
	//
	// Deprecated: Marked as deprecated in google/cloud/dialogflow/cx/v3beta1/webhook.proto.
	Password string `protobuf:"bytes,3,opt,name=password,proto3" json:"password,omitempty"`
	// Optional. The SecretManager secret version resource storing the
	// username:password pair for HTTP Basic authentication. Format:
	// `projects/{project}/secrets/{secret}/versions/{version}`
	SecretVersionForUsernamePassword string `protobuf:"bytes,19,opt,name=secret_version_for_username_password,json=secretVersionForUsernamePassword,proto3" json:"secret_version_for_username_password,omitempty"`
	// The HTTP request headers to send together with webhook requests.
	RequestHeaders map[string]string `protobuf:"bytes,4,rep,name=request_headers,json=requestHeaders,proto3" json:"request_headers,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	// Optional. The HTTP request headers to send together with webhook
	// requests. Header values are stored in SecretManager secret versions.
	//
	// When the same header name is specified in both `request_headers` and
	// `secret_versions_for_request_headers`, the value in
	// `secret_versions_for_request_headers` will be used.
	SecretVersionsForRequestHeaders map[string]*Webhook_GenericWebService_SecretVersionHeaderValue `protobuf:"bytes,20,rep,name=secret_versions_for_request_headers,json=secretVersionsForRequestHeaders,proto3" json:"secret_versions_for_request_headers,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	// Optional. Specifies a list of allowed custom CA certificates (in DER
	// format) for HTTPS verification. This overrides the default SSL trust
	// store. If this is empty or unspecified, Dialogflow will use Google's
	// default trust store to verify certificates. N.B. Make sure the HTTPS
	// server certificates are signed with "subject alt name". For instance a
	// certificate can be self-signed using the following command,
	// ```
	//
	//	openssl x509 -req -days 200 -in example.com.csr \
	//	  -signkey example.com.key \
	//	  -out example.com.crt \
	//	  -extfile <(printf "\nsubjectAltName='DNS:www.example.com'")
	//
	// ```
	AllowedCaCerts [][]byte `protobuf:"bytes,5,rep,name=allowed_ca_certs,json=allowedCaCerts,proto3" json:"allowed_ca_certs,omitempty"`
	// Optional. The OAuth configuration of the webhook. If specified,
	// Dialogflow will initiate the OAuth client credential flow to exchange an
	// access token from the 3rd party platform and put it in the auth header.
	OauthConfig *Webhook_GenericWebService_OAuthConfig `protobuf:"bytes,11,opt,name=oauth_config,json=oauthConfig,proto3" json:"oauth_config,omitempty"`
	// Optional. Indicate the auth token type generated from the [Diglogflow
	// service
	// agent](https://cloud.google.com/iam/docs/service-agents#dialogflow-service-agent).
	// The generated token is sent in the Authorization header.
	ServiceAgentAuth Webhook_GenericWebService_ServiceAgentAuth `protobuf:"varint,12,opt,name=service_agent_auth,json=serviceAgentAuth,proto3,enum=google.cloud.dialogflow.cx.v3beta1.Webhook_GenericWebService_ServiceAgentAuth" json:"service_agent_auth,omitempty"`
	// Optional. Configuration for service account authentication.
	ServiceAccountAuthConfig *Webhook_GenericWebService_ServiceAccountAuthConfig `protobuf:"bytes,18,opt,name=service_account_auth_config,json=serviceAccountAuthConfig,proto3" json:"service_account_auth_config,omitempty"`
	// Optional. Type of the webhook.
	WebhookType Webhook_GenericWebService_WebhookType `protobuf:"varint,6,opt,name=webhook_type,json=webhookType,proto3,enum=google.cloud.dialogflow.cx.v3beta1.Webhook_GenericWebService_WebhookType" json:"webhook_type,omitempty"`
	// Optional. HTTP method for the flexible webhook calls. Standard webhook
	// always uses POST.
	HttpMethod Webhook_GenericWebService_HttpMethod `protobuf:"varint,7,opt,name=http_method,json=httpMethod,proto3,enum=google.cloud.dialogflow.cx.v3beta1.Webhook_GenericWebService_HttpMethod" json:"http_method,omitempty"`
	// Optional. Defines a custom JSON object as request body to send to
	// flexible webhook.
	RequestBody string `protobuf:"bytes,8,opt,name=request_body,json=requestBody,proto3" json:"request_body,omitempty"`
	// Optional. Maps the values extracted from specific fields of the flexible
	// webhook response into session parameters.
	// - Key: session parameter name
	// - Value: field path in the webhook response
	ParameterMapping map[string]string `protobuf:"bytes,9,rep,name=parameter_mapping,json=parameterMapping,proto3" json:"parameter_mapping,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	unknownFields    protoimpl.UnknownFields
	sizeCache        protoimpl.SizeCache
}

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

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

func (*Webhook_GenericWebService) ProtoMessage() {}

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

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

// Deprecated: Marked as deprecated in google/cloud/dialogflow/cx/v3beta1/webhook.proto.
func (x *Webhook_GenericWebService) GetUsername() string {
	if x != nil {
		return x.Username
	}
	return ""
}

// Deprecated: Marked as deprecated in google/cloud/dialogflow/cx/v3beta1/webhook.proto.
func (x *Webhook_GenericWebService) GetPassword() string {
	if x != nil {
		return x.Password
	}
	return ""
}

func (x *Webhook_GenericWebService) GetSecretVersionForUsernamePassword() string {
	if x != nil {
		return x.SecretVersionForUsernamePassword
	}
	return ""
}

func (x *Webhook_GenericWebService) GetRequestHeaders() map[string]string {
	if x != nil {
		return x.RequestHeaders
	}
	return nil
}

func (x *Webhook_GenericWebService) GetSecretVersionsForRequestHeaders() map[string]*Webhook_GenericWebService_SecretVersionHeaderValue {
	if x != nil {
		return x.SecretVersionsForRequestHeaders
	}
	return nil
}

func (x *Webhook_GenericWebService) GetAllowedCaCerts() [][]byte {
	if x != nil {
		return x.AllowedCaCerts
	}
	return nil
}

func (x *Webhook_GenericWebService) GetOauthConfig() *Webhook_GenericWebService_OAuthConfig {
	if x != nil {
		return x.OauthConfig
	}
	return nil
}

func (x *Webhook_GenericWebService) GetServiceAgentAuth() Webhook_GenericWebService_ServiceAgentAuth {
	if x != nil {
		return x.ServiceAgentAuth
	}
	return Webhook_GenericWebService_SERVICE_AGENT_AUTH_UNSPECIFIED
}

func (x *Webhook_GenericWebService) GetServiceAccountAuthConfig() *Webhook_GenericWebService_ServiceAccountAuthConfig {
	if x != nil {
		return x.ServiceAccountAuthConfig
	}
	return nil
}

func (x *Webhook_GenericWebService) GetWebhookType() Webhook_GenericWebService_WebhookType {
	if x != nil {
		return x.WebhookType
	}
	return Webhook_GenericWebService_WEBHOOK_TYPE_UNSPECIFIED
}

func (x *Webhook_GenericWebService) GetHttpMethod() Webhook_GenericWebService_HttpMethod {
	if x != nil {
		return x.HttpMethod
	}
	return Webhook_GenericWebService_HTTP_METHOD_UNSPECIFIED
}

func (x *Webhook_GenericWebService) GetRequestBody() string {
	if x != nil {
		return x.RequestBody
	}
	return ""
}

func (x *Webhook_GenericWebService) GetParameterMapping() map[string]string {
	if x != nil {
		return x.ParameterMapping
	}
	return nil
}

// Represents configuration for a [Service
// Directory](https://cloud.google.com/service-directory) service.
type Webhook_ServiceDirectoryConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The name of [Service
	// Directory](https://cloud.google.com/service-directory) service.
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/namespaces/<NamespaceID>/services/<ServiceID>`.
	// `Location ID` of the service directory must be the same as the location
	// of the agent.
	Service string `protobuf:"bytes,1,opt,name=service,proto3" json:"service,omitempty"`
	// Generic Service configuration of this webhook.
	GenericWebService *Webhook_GenericWebService `protobuf:"bytes,2,opt,name=generic_web_service,json=genericWebService,proto3" json:"generic_web_service,omitempty"`
	unknownFields     protoimpl.UnknownFields
	sizeCache         protoimpl.SizeCache
}

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

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

func (*Webhook_ServiceDirectoryConfig) ProtoMessage() {}

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

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

func (x *Webhook_ServiceDirectoryConfig) GetGenericWebService() *Webhook_GenericWebService {
	if x != nil {
		return x.GenericWebService
	}
	return nil
}

// Represents the value of an HTTP header stored in a SecretManager secret
// version.
type Webhook_GenericWebService_SecretVersionHeaderValue struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The SecretManager secret version resource storing the header
	// value. Format: `projects/{project}/secrets/{secret}/versions/{version}`
	SecretVersion string `protobuf:"bytes,1,opt,name=secret_version,json=secretVersion,proto3" json:"secret_version,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Webhook_GenericWebService_SecretVersionHeaderValue) ProtoMessage() {}

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

func (x *Webhook_GenericWebService_SecretVersionHeaderValue) GetSecretVersion() string {
	if x != nil {
		return x.SecretVersion
	}
	return ""
}

// Represents configuration of OAuth client credential flow for 3rd party
// API authentication.
type Webhook_GenericWebService_OAuthConfig struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Required. The client ID provided by the 3rd party platform.
	ClientId string `protobuf:"bytes,1,opt,name=client_id,json=clientId,proto3" json:"client_id,omitempty"`
	// Optional. The client secret provided by the 3rd party platform.
	ClientSecret string `protobuf:"bytes,2,opt,name=client_secret,json=clientSecret,proto3" json:"client_secret,omitempty"`
	// Optional. The name of the SecretManager secret version resource storing
	// the client secret. If this field is set, the `client_secret` field will
	// be ignored. Format:
	// `projects/{project}/secrets/{secret}/versions/{version}`
	SecretVersionForClientSecret string `protobuf:"bytes,5,opt,name=secret_version_for_client_secret,json=secretVersionForClientSecret,proto3" json:"secret_version_for_client_secret,omitempty"`
	// Required. The token endpoint provided by the 3rd party platform to
	// exchange an access token.
	TokenEndpoint string `protobuf:"bytes,3,opt,name=token_endpoint,json=tokenEndpoint,proto3" json:"token_endpoint,omitempty"`
	// Optional. The OAuth scopes to grant.
	Scopes        []string `protobuf:"bytes,4,rep,name=scopes,proto3" json:"scopes,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*Webhook_GenericWebService_OAuthConfig) ProtoMessage() {}

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

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

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

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

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

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

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

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

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

func (*Webhook_GenericWebService_ServiceAccountAuthConfig) ProtoMessage() {}

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

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

// Represents fulfillment information communicated to the webhook.
type WebhookRequest_FulfillmentInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Always present.
	// The value of the
	// [Fulfillment.tag][google.cloud.dialogflow.cx.v3beta1.Fulfillment.tag]
	// field will be populated in this field by Dialogflow when the associated
	// webhook is called. The tag is typically used by the webhook service to
	// identify which fulfillment is being called, but it could be used for
	// other purposes.
	Tag           string `protobuf:"bytes,1,opt,name=tag,proto3" json:"tag,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*WebhookRequest_FulfillmentInfo) ProtoMessage() {}

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

func (x *WebhookRequest_FulfillmentInfo) GetTag() string {
	if x != nil {
		return x.Tag
	}
	return ""
}

// Represents intent information communicated to the webhook.
type WebhookRequest_IntentInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Always present. The unique identifier of the last matched
	// [intent][google.cloud.dialogflow.cx.v3beta1.Intent].
	// Format:
	// `projects/<ProjectID>/locations/<LocationID>/agents/<AgentID>/intents/<IntentID>`.
	LastMatchedIntent string `protobuf:"bytes,1,opt,name=last_matched_intent,json=lastMatchedIntent,proto3" json:"last_matched_intent,omitempty"`
	// Always present. The display name of the last matched
	// [intent][google.cloud.dialogflow.cx.v3beta1.Intent].
	DisplayName string `protobuf:"bytes,3,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// Parameters identified as a result of intent matching. This is a map of
	// the name of the identified parameter to the value of the parameter
	// identified from the user's utterance. All parameters defined in the
	// matched intent that are identified will be surfaced here.
	Parameters map[string]*WebhookRequest_IntentInfo_IntentParameterValue `protobuf:"bytes,2,rep,name=parameters,proto3" json:"parameters,omitempty" protobuf_key:"bytes,1,opt,name=key" protobuf_val:"bytes,2,opt,name=value"`
	// The confidence of the matched intent. Values range from 0.0 (completely
	// uncertain) to 1.0 (completely certain).
	Confidence    float32 `protobuf:"fixed32,4,opt,name=confidence,proto3" json:"confidence,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*WebhookRequest_IntentInfo) ProtoMessage() {}

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

func (x *WebhookRequest_IntentInfo) GetLastMatchedIntent() string {
	if x != nil {
		return x.LastMatchedIntent
	}
	return ""
}

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

func (x *WebhookRequest_IntentInfo) GetParameters() map[string]*WebhookRequest_IntentInfo_IntentParameterValue {
	if x != nil {
		return x.Parameters
	}
	return nil
}

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

// Represents the result of sentiment analysis.
type WebhookRequest_SentimentAnalysisResult struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Sentiment score between -1.0 (negative sentiment) and 1.0 (positive
	//
	//	sentiment).
	Score float32 `protobuf:"fixed32,1,opt,name=score,proto3" json:"score,omitempty"`
	// A non-negative number in the [0, +inf) range, which represents the
	// absolute magnitude of sentiment, regardless of score (positive or
	// negative).
	Magnitude     float32 `protobuf:"fixed32,2,opt,name=magnitude,proto3" json:"magnitude,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*WebhookRequest_SentimentAnalysisResult) ProtoMessage() {}

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

func (x *WebhookRequest_SentimentAnalysisResult) GetScore() float32 {
	if x != nil {
		return x.Score
	}
	return 0
}

func (x *WebhookRequest_SentimentAnalysisResult) GetMagnitude() float32 {
	if x != nil {
		return x.Magnitude
	}
	return 0
}

// Represents a value for an intent parameter.
type WebhookRequest_IntentInfo_IntentParameterValue struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Always present. Original text value extracted from user utterance.
	OriginalValue string `protobuf:"bytes,1,opt,name=original_value,json=originalValue,proto3" json:"original_value,omitempty"`
	// Always present. Structured value for the parameter extracted from user
	// utterance.
	ResolvedValue *structpb.Value `protobuf:"bytes,2,opt,name=resolved_value,json=resolvedValue,proto3" json:"resolved_value,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*WebhookRequest_IntentInfo_IntentParameterValue) ProtoMessage() {}

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

func (x *WebhookRequest_IntentInfo_IntentParameterValue) GetOriginalValue() string {
	if x != nil {
		return x.OriginalValue
	}
	return ""
}

func (x *WebhookRequest_IntentInfo_IntentParameterValue) GetResolvedValue() *structpb.Value {
	if x != nil {
		return x.ResolvedValue
	}
	return nil
}

// Represents a fulfillment response to the user.
type WebhookResponse_FulfillmentResponse struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// The list of rich message responses to present to the user.
	Messages []*ResponseMessage `protobuf:"bytes,1,rep,name=messages,proto3" json:"messages,omitempty"`
	// Merge behavior for `messages`.
	MergeBehavior WebhookResponse_FulfillmentResponse_MergeBehavior `protobuf:"varint,2,opt,name=merge_behavior,json=mergeBehavior,proto3,enum=google.cloud.dialogflow.cx.v3beta1.WebhookResponse_FulfillmentResponse_MergeBehavior" json:"merge_behavior,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*WebhookResponse_FulfillmentResponse) ProtoMessage() {}

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

func (x *WebhookResponse_FulfillmentResponse) GetMessages() []*ResponseMessage {
	if x != nil {
		return x.Messages
	}
	return nil
}

func (x *WebhookResponse_FulfillmentResponse) GetMergeBehavior() WebhookResponse_FulfillmentResponse_MergeBehavior {
	if x != nil {
		return x.MergeBehavior
	}
	return WebhookResponse_FulfillmentResponse_MERGE_BEHAVIOR_UNSPECIFIED
}

// Represents form information.
type PageInfo_FormInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Optional for both
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest] and
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse].
	// The parameters contained in the form. Note that the webhook cannot add
	// or remove any form parameter.
	ParameterInfo []*PageInfo_FormInfo_ParameterInfo `protobuf:"bytes,2,rep,name=parameter_info,json=parameterInfo,proto3" json:"parameter_info,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*PageInfo_FormInfo) ProtoMessage() {}

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

func (x *PageInfo_FormInfo) GetParameterInfo() []*PageInfo_FormInfo_ParameterInfo {
	if x != nil {
		return x.ParameterInfo
	}
	return nil
}

// Represents parameter information.
type PageInfo_FormInfo_ParameterInfo struct {
	state protoimpl.MessageState `protogen:"open.v1"`
	// Always present for
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest].
	// Required for
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse].
	// The human-readable name of the parameter, unique within the form. This
	// field cannot be modified by the webhook.
	DisplayName string `protobuf:"bytes,1,opt,name=display_name,json=displayName,proto3" json:"display_name,omitempty"`
	// Optional for both
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest] and
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse].
	// Indicates whether the parameter is required. Optional parameters will
	// not trigger prompts; however, they are filled if the user specifies
	// them. Required parameters must be filled before form filling concludes.
	Required bool `protobuf:"varint,2,opt,name=required,proto3" json:"required,omitempty"`
	// Always present for
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest].
	// Required for
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse].
	// The state of the parameter. This field can be set to
	// [INVALID][google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo.ParameterInfo.ParameterState.INVALID]
	// by the webhook to invalidate the parameter; other values set by the
	// webhook will be ignored.
	State PageInfo_FormInfo_ParameterInfo_ParameterState `protobuf:"varint,3,opt,name=state,proto3,enum=google.cloud.dialogflow.cx.v3beta1.PageInfo_FormInfo_ParameterInfo_ParameterState" json:"state,omitempty"`
	// Optional for both
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest] and
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse].
	// The value of the parameter. This field can be set by the webhook to
	// change the parameter value.
	Value *structpb.Value `protobuf:"bytes,4,opt,name=value,proto3" json:"value,omitempty"`
	// Optional for
	// [WebhookRequest][google.cloud.dialogflow.cx.v3beta1.WebhookRequest].
	// Ignored for
	// [WebhookResponse][google.cloud.dialogflow.cx.v3beta1.WebhookResponse].
	// Indicates if the parameter value was just collected on the last
	// conversation turn.
	JustCollected bool `protobuf:"varint,5,opt,name=just_collected,json=justCollected,proto3" json:"just_collected,omitempty"`
	unknownFields protoimpl.UnknownFields
	sizeCache     protoimpl.SizeCache
}

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

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

func (*PageInfo_FormInfo_ParameterInfo) ProtoMessage() {}

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

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

func (x *PageInfo_FormInfo_ParameterInfo) GetRequired() bool {
	if x != nil {
		return x.Required
	}
	return false
}

func (x *PageInfo_FormInfo_ParameterInfo) GetState() PageInfo_FormInfo_ParameterInfo_ParameterState {
	if x != nil {
		return x.State
	}
	return PageInfo_FormInfo_ParameterInfo_PARAMETER_STATE_UNSPECIFIED
}

func (x *PageInfo_FormInfo_ParameterInfo) GetValue() *structpb.Value {
	if x != nil {
		return x.Value
	}
	return nil
}

func (x *PageInfo_FormInfo_ParameterInfo) GetJustCollected() bool {
	if x != nil {
		return x.JustCollected
	}
	return false
}

var File_google_cloud_dialogflow_cx_v3beta1_webhook_proto protoreflect.FileDescriptor

const file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDesc = "" +
	"\n" +
	"0google/cloud/dialogflow/cx/v3beta1/webhook.proto\x12\"google.cloud.dialogflow.cx.v3beta1\x1a\x1cgoogle/api/annotations.proto\x1a\x17google/api/client.proto\x1a\x1fgoogle/api/field_behavior.proto\x1a\x19google/api/resource.proto\x1a9google/cloud/dialogflow/cx/v3beta1/response_message.proto\x1a\x1egoogle/protobuf/duration.proto\x1a\x1bgoogle/protobuf/empty.proto\x1a google/protobuf/field_mask.proto\x1a\x1cgoogle/protobuf/struct.proto\"\x80\x19\n" +
	"\aWebhook\x12\x12\n" +
	"\x04name\x18\x01 \x01(\tR\x04name\x12&\n" +
	"\fdisplay_name\x18\x02 \x01(\tB\x03\xe0A\x02R\vdisplayName\x12o\n" +
	"\x13generic_web_service\x18\x04 \x01(\v2=.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebServiceH\x00R\x11genericWebService\x12q\n" +
	"\x11service_directory\x18\a \x01(\v2B.google.cloud.dialogflow.cx.v3beta1.Webhook.ServiceDirectoryConfigH\x00R\x10serviceDirectory\x123\n" +
	"\atimeout\x18\x06 \x01(\v2\x19.google.protobuf.DurationR\atimeout\x12\x1a\n" +
	"\bdisabled\x18\x05 \x01(\bR\bdisabled\x1a\xb0\x13\n" +
	"\x11GenericWebService\x12\x15\n" +
	"\x03uri\x18\x01 \x01(\tB\x03\xe0A\x02R\x03uri\x12\x1e\n" +
	"\busername\x18\x02 \x01(\tB\x02\x18\x01R\busername\x12\x1e\n" +
	"\bpassword\x18\x03 \x01(\tB\x02\x18\x01R\bpassword\x12\x82\x01\n" +
	"$secret_version_for_username_password\x18\x13 \x01(\tB2\xe0A\x01\xfaA,\n" +
	"*secretmanager.googleapis.com/SecretVersionR secretVersionForUsernamePassword\x12z\n" +
	"\x0frequest_headers\x18\x04 \x03(\v2Q.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.RequestHeadersEntryR\x0erequestHeaders\x12\xb5\x01\n" +
	"#secret_versions_for_request_headers\x18\x14 \x03(\v2b.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.SecretVersionsForRequestHeadersEntryB\x03\xe0A\x01R\x1fsecretVersionsForRequestHeaders\x12-\n" +
	"\x10allowed_ca_certs\x18\x05 \x03(\fB\x03\xe0A\x01R\x0eallowedCaCerts\x12q\n" +
	"\foauth_config\x18\v \x01(\v2I.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.OAuthConfigB\x03\xe0A\x01R\voauthConfig\x12\x81\x01\n" +
	"\x12service_agent_auth\x18\f \x01(\x0e2N.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.ServiceAgentAuthB\x03\xe0A\x01R\x10serviceAgentAuth\x12\x9a\x01\n" +
	"\x1bservice_account_auth_config\x18\x12 \x01(\v2V.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.ServiceAccountAuthConfigB\x03\xe0A\x01R\x18serviceAccountAuthConfig\x12q\n" +
	"\fwebhook_type\x18\x06 \x01(\x0e2I.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.WebhookTypeB\x03\xe0A\x01R\vwebhookType\x12n\n" +
	"\vhttp_method\x18\a \x01(\x0e2H.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.HttpMethodB\x03\xe0A\x01R\n" +
	"httpMethod\x12&\n" +
	"\frequest_body\x18\b \x01(\tB\x03\xe0A\x01R\vrequestBody\x12\x85\x01\n" +
	"\x11parameter_mapping\x18\t \x03(\v2S.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.ParameterMappingEntryB\x03\xe0A\x01R\x10parameterMapping\x1au\n" +
	"\x18SecretVersionHeaderValue\x12Y\n" +
	"\x0esecret_version\x18\x01 \x01(\tB2\xe0A\x02\xfaA,\n" +
	"*secretmanager.googleapis.com/SecretVersionR\rsecretVersion\x1a\x9e\x02\n" +
	"\vOAuthConfig\x12 \n" +
	"\tclient_id\x18\x01 \x01(\tB\x03\xe0A\x02R\bclientId\x12(\n" +
	"\rclient_secret\x18\x02 \x01(\tB\x03\xe0A\x01R\fclientSecret\x12z\n" +
	" secret_version_for_client_secret\x18\x05 \x01(\tB2\xe0A\x01\xfaA,\n" +
	"*secretmanager.googleapis.com/SecretVersionR\x1csecretVersionForClientSecret\x12*\n" +
	"\x0etoken_endpoint\x18\x03 \x01(\tB\x03\xe0A\x02R\rtokenEndpoint\x12\x1b\n" +
	"\x06scopes\x18\x04 \x03(\tB\x03\xe0A\x01R\x06scopes\x1aH\n" +
	"\x18ServiceAccountAuthConfig\x12,\n" +
	"\x0fservice_account\x18\x01 \x01(\tB\x03\xe0A\x02R\x0eserviceAccount\x1aA\n" +
	"\x13RequestHeadersEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\x1a\xaa\x01\n" +
	"$SecretVersionsForRequestHeadersEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12l\n" +
	"\x05value\x18\x02 \x01(\v2V.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.SecretVersionHeaderValueR\x05value:\x028\x01\x1aC\n" +
	"\x15ParameterMappingEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12\x14\n" +
	"\x05value\x18\x02 \x01(\tR\x05value:\x028\x01\"`\n" +
	"\x10ServiceAgentAuth\x12\"\n" +
	"\x1eSERVICE_AGENT_AUTH_UNSPECIFIED\x10\x00\x12\b\n" +
	"\x04NONE\x10\x01\x12\f\n" +
	"\bID_TOKEN\x10\x02\x12\x10\n" +
	"\fACCESS_TOKEN\x10\x03\"G\n" +
	"\vWebhookType\x12\x1c\n" +
	"\x18WEBHOOK_TYPE_UNSPECIFIED\x10\x00\x12\f\n" +
	"\bSTANDARD\x10\x01\x12\f\n" +
	"\bFLEXIBLE\x10\x02\"s\n" +
	"\n" +
	"HttpMethod\x12\x1b\n" +
	"\x17HTTP_METHOD_UNSPECIFIED\x10\x00\x12\b\n" +
	"\x04POST\x10\x01\x12\a\n" +
	"\x03GET\x10\x02\x12\b\n" +
	"\x04HEAD\x10\x03\x12\a\n" +
	"\x03PUT\x10\x04\x12\n" +
	"\n" +
	"\x06DELETE\x10\x05\x12\t\n" +
	"\x05PATCH\x10\x06\x12\v\n" +
	"\aOPTIONS\x10\a\x1a\xd2\x01\n" +
	"\x16ServiceDirectoryConfig\x12I\n" +
	"\aservice\x18\x01 \x01(\tB/\xe0A\x02\xfaA)\n" +
	"'servicedirectory.googleapis.com/ServiceR\aservice\x12m\n" +
	"\x13generic_web_service\x18\x02 \x01(\v2=.google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebServiceR\x11genericWebService:q\xeaAn\n" +
	"!dialogflow.googleapis.com/Webhook\x12Iprojects/{project}/locations/{location}/agents/{agent}/webhooks/{webhook}B\t\n" +
	"\awebhook\"\x94\x01\n" +
	"\x13ListWebhooksRequest\x12A\n" +
	"\x06parent\x18\x01 \x01(\tB)\xe0A\x02\xfaA#\x12!dialogflow.googleapis.com/WebhookR\x06parent\x12\x1b\n" +
	"\tpage_size\x18\x02 \x01(\x05R\bpageSize\x12\x1d\n" +
	"\n" +
	"page_token\x18\x03 \x01(\tR\tpageToken\"\x87\x01\n" +
	"\x14ListWebhooksResponse\x12G\n" +
	"\bwebhooks\x18\x01 \x03(\v2+.google.cloud.dialogflow.cx.v3beta1.WebhookR\bwebhooks\x12&\n" +
	"\x0fnext_page_token\x18\x02 \x01(\tR\rnextPageToken\"R\n" +
	"\x11GetWebhookRequest\x12=\n" +
	"\x04name\x18\x01 \x01(\tB)\xe0A\x02\xfaA#\n" +
	"!dialogflow.googleapis.com/WebhookR\x04name\"\xa5\x01\n" +
	"\x14CreateWebhookRequest\x12A\n" +
	"\x06parent\x18\x01 \x01(\tB)\xe0A\x02\xfaA#\x12!dialogflow.googleapis.com/WebhookR\x06parent\x12J\n" +
	"\awebhook\x18\x02 \x01(\v2+.google.cloud.dialogflow.cx.v3beta1.WebhookB\x03\xe0A\x02R\awebhook\"\x9f\x01\n" +
	"\x14UpdateWebhookRequest\x12J\n" +
	"\awebhook\x18\x01 \x01(\v2+.google.cloud.dialogflow.cx.v3beta1.WebhookB\x03\xe0A\x02R\awebhook\x12;\n" +
	"\vupdate_mask\x18\x02 \x01(\v2\x1a.google.protobuf.FieldMaskR\n" +
	"updateMask\"k\n" +
	"\x14DeleteWebhookRequest\x12=\n" +
	"\x04name\x18\x01 \x01(\tB)\xe0A\x02\xfaA#\n" +
	"!dialogflow.googleapis.com/WebhookR\x04name\x12\x14\n" +
	"\x05force\x18\x02 \x01(\bR\x05force\"\xbb\r\n" +
	"\x0eWebhookRequest\x129\n" +
	"\x19detect_intent_response_id\x18\x01 \x01(\tR\x16detectIntentResponseId\x12\x14\n" +
	"\x04text\x18\n" +
	" \x01(\tH\x00R\x04text\x12N\n" +
	"\x0etrigger_intent\x18\v \x01(\tB%\xfaA\"\n" +
	" dialogflow.googleapis.com/IntentH\x00R\rtriggerIntent\x12 \n" +
	"\n" +
	"transcript\x18\f \x01(\tH\x00R\n" +
	"transcript\x12%\n" +
	"\rtrigger_event\x18\x0e \x01(\tH\x00R\ftriggerEvent\x12!\n" +
	"\vdtmf_digits\x18\x11 \x01(\tH\x00R\n" +
	"dtmfDigits\x12#\n" +
	"\rlanguage_code\x18\x0f \x01(\tR\flanguageCode\x12m\n" +
	"\x10fulfillment_info\x18\x06 \x01(\v2B.google.cloud.dialogflow.cx.v3beta1.WebhookRequest.FulfillmentInfoR\x0ffulfillmentInfo\x12^\n" +
	"\vintent_info\x18\x03 \x01(\v2=.google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfoR\n" +
	"intentInfo\x12I\n" +
	"\tpage_info\x18\x04 \x01(\v2,.google.cloud.dialogflow.cx.v3beta1.PageInfoR\bpageInfo\x12R\n" +
	"\fsession_info\x18\x05 \x01(\v2/.google.cloud.dialogflow.cx.v3beta1.SessionInfoR\vsessionInfo\x12O\n" +
	"\bmessages\x18\a \x03(\v23.google.cloud.dialogflow.cx.v3beta1.ResponseMessageR\bmessages\x121\n" +
	"\apayload\x18\b \x01(\v2\x17.google.protobuf.StructR\apayload\x12\x86\x01\n" +
	"\x19sentiment_analysis_result\x18\t \x01(\v2J.google.cloud.dialogflow.cx.v3beta1.WebhookRequest.SentimentAnalysisResultR\x17sentimentAnalysisResult\x12U\n" +
	"\rlanguage_info\x18\x12 \x01(\v20.google.cloud.dialogflow.cx.v3beta1.LanguageInfoR\flanguageInfo\x1a#\n" +
	"\x0fFulfillmentInfo\x12\x10\n" +
	"\x03tag\x18\x01 \x01(\tR\x03tag\x1a\xa7\x04\n" +
	"\n" +
	"IntentInfo\x12U\n" +
	"\x13last_matched_intent\x18\x01 \x01(\tB%\xfaA\"\n" +
	" dialogflow.googleapis.com/IntentR\x11lastMatchedIntent\x12!\n" +
	"\fdisplay_name\x18\x03 \x01(\tR\vdisplayName\x12m\n" +
	"\n" +
	"parameters\x18\x02 \x03(\v2M.google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo.ParametersEntryR\n" +
	"parameters\x12\x1e\n" +
	"\n" +
	"confidence\x18\x04 \x01(\x02R\n" +
	"confidence\x1a|\n" +
	"\x14IntentParameterValue\x12%\n" +
	"\x0eoriginal_value\x18\x01 \x01(\tR\roriginalValue\x12=\n" +
	"\x0eresolved_value\x18\x02 \x01(\v2\x16.google.protobuf.ValueR\rresolvedValue\x1a\x91\x01\n" +
	"\x0fParametersEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12h\n" +
	"\x05value\x18\x02 \x01(\v2R.google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo.IntentParameterValueR\x05value:\x028\x01\x1aM\n" +
	"\x17SentimentAnalysisResult\x12\x14\n" +
	"\x05score\x18\x01 \x01(\x02R\x05score\x12\x1c\n" +
	"\tmagnitude\x18\x02 \x01(\x02R\tmagnitudeB\a\n" +
	"\x05query\"\xae\x06\n" +
	"\x0fWebhookResponse\x12z\n" +
	"\x14fulfillment_response\x18\x01 \x01(\v2G.google.cloud.dialogflow.cx.v3beta1.WebhookResponse.FulfillmentResponseR\x13fulfillmentResponse\x12I\n" +
	"\tpage_info\x18\x02 \x01(\v2,.google.cloud.dialogflow.cx.v3beta1.PageInfoR\bpageInfo\x12R\n" +
	"\fsession_info\x18\x03 \x01(\v2/.google.cloud.dialogflow.cx.v3beta1.SessionInfoR\vsessionInfo\x121\n" +
	"\apayload\x18\x04 \x01(\v2\x17.google.protobuf.StructR\apayload\x12F\n" +
	"\vtarget_page\x18\x05 \x01(\tB#\xfaA \n" +
	"\x1edialogflow.googleapis.com/PageH\x00R\n" +
	"targetPage\x12F\n" +
	"\vtarget_flow\x18\x06 \x01(\tB#\xfaA \n" +
	"\x1edialogflow.googleapis.com/FlowH\x00R\n" +
	"targetFlow\x1a\xae\x02\n" +
	"\x13FulfillmentResponse\x12O\n" +
	"\bmessages\x18\x01 \x03(\v23.google.cloud.dialogflow.cx.v3beta1.ResponseMessageR\bmessages\x12|\n" +
	"\x0emerge_behavior\x18\x02 \x01(\x0e2U.google.cloud.dialogflow.cx.v3beta1.WebhookResponse.FulfillmentResponse.MergeBehaviorR\rmergeBehavior\"H\n" +
	"\rMergeBehavior\x12\x1e\n" +
	"\x1aMERGE_BEHAVIOR_UNSPECIFIED\x10\x00\x12\n" +
	"\n" +
	"\x06APPEND\x10\x01\x12\v\n" +
	"\aREPLACE\x10\x02B\f\n" +
	"\n" +
	"transition\"\xa9\x05\n" +
	"\bPageInfo\x12F\n" +
	"\fcurrent_page\x18\x01 \x01(\tB#\xfaA \n" +
	"\x1edialogflow.googleapis.com/PageR\vcurrentPage\x12!\n" +
	"\fdisplay_name\x18\x04 \x01(\tR\vdisplayName\x12R\n" +
	"\tform_info\x18\x03 \x01(\v25.google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfoR\bformInfo\x1a\xdd\x03\n" +
	"\bFormInfo\x12j\n" +
	"\x0eparameter_info\x18\x02 \x03(\v2C.google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo.ParameterInfoR\rparameterInfo\x1a\xe4\x02\n" +
	"\rParameterInfo\x12!\n" +
	"\fdisplay_name\x18\x01 \x01(\tR\vdisplayName\x12\x1a\n" +
	"\brequired\x18\x02 \x01(\bR\brequired\x12h\n" +
	"\x05state\x18\x03 \x01(\x0e2R.google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo.ParameterInfo.ParameterStateR\x05state\x12,\n" +
	"\x05value\x18\x04 \x01(\v2\x16.google.protobuf.ValueR\x05value\x12%\n" +
	"\x0ejust_collected\x18\x05 \x01(\bR\rjustCollected\"U\n" +
	"\x0eParameterState\x12\x1f\n" +
	"\x1bPARAMETER_STATE_UNSPECIFIED\x10\x00\x12\t\n" +
	"\x05EMPTY\x10\x01\x12\v\n" +
	"\aINVALID\x10\x02\x12\n" +
	"\n" +
	"\x06FILLED\x10\x03\"\x87\x02\n" +
	"\vSessionInfo\x12@\n" +
	"\asession\x18\x01 \x01(\tB&\xfaA#\n" +
	"!dialogflow.googleapis.com/SessionR\asession\x12_\n" +
	"\n" +
	"parameters\x18\x02 \x03(\v2?.google.cloud.dialogflow.cx.v3beta1.SessionInfo.ParametersEntryR\n" +
	"parameters\x1aU\n" +
	"\x0fParametersEntry\x12\x10\n" +
	"\x03key\x18\x01 \x01(\tR\x03key\x12,\n" +
	"\x05value\x18\x02 \x01(\v2\x16.google.protobuf.ValueR\x05value:\x028\x01\"\x9f\x01\n" +
	"\fLanguageInfo\x12.\n" +
	"\x13input_language_code\x18\x01 \x01(\tR\x11inputLanguageCode\x124\n" +
	"\x16resolved_language_code\x18\x02 \x01(\tR\x14resolvedLanguageCode\x12)\n" +
	"\x10confidence_score\x18\x03 \x01(\x02R\x0fconfidenceScore2\xfd\b\n" +
	"\bWebhooks\x12\xce\x01\n" +
	"\fListWebhooks\x127.google.cloud.dialogflow.cx.v3beta1.ListWebhooksRequest\x1a8.google.cloud.dialogflow.cx.v3beta1.ListWebhooksResponse\"K\xdaA\x06parent\x82\xd3\xe4\x93\x02<\x12:/v3beta1/{parent=projects/*/locations/*/agents/*}/webhooks\x12\xbb\x01\n" +
	"\n" +
	"GetWebhook\x125.google.cloud.dialogflow.cx.v3beta1.GetWebhookRequest\x1a+.google.cloud.dialogflow.cx.v3beta1.Webhook\"I\xdaA\x04name\x82\xd3\xe4\x93\x02<\x12:/v3beta1/{name=projects/*/locations/*/agents/*/webhooks/*}\x12\xd4\x01\n" +
	"\rCreateWebhook\x128.google.cloud.dialogflow.cx.v3beta1.CreateWebhookRequest\x1a+.google.cloud.dialogflow.cx.v3beta1.Webhook\"\\\xdaA\x0eparent,webhook\x82\xd3\xe4\x93\x02E:\awebhook\":/v3beta1/{parent=projects/*/locations/*/agents/*}/webhooks\x12\xe1\x01\n" +
	"\rUpdateWebhook\x128.google.cloud.dialogflow.cx.v3beta1.UpdateWebhookRequest\x1a+.google.cloud.dialogflow.cx.v3beta1.Webhook\"i\xdaA\x13webhook,update_mask\x82\xd3\xe4\x93\x02M:\awebhook2B/v3beta1/{webhook.name=projects/*/locations/*/agents/*/webhooks/*}\x12\xac\x01\n" +
	"\rDeleteWebhook\x128.google.cloud.dialogflow.cx.v3beta1.DeleteWebhookRequest\x1a\x16.google.protobuf.Empty\"I\xdaA\x04name\x82\xd3\xe4\x93\x02<*:/v3beta1/{name=projects/*/locations/*/agents/*/webhooks/*}\x1ax\xcaA\x19dialogflow.googleapis.com\xd2AYhttps://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/dialogflowB\xc2\x02\xeaA|\n" +
	"'servicedirectory.googleapis.com/Service\x12Qprojects/{project}/locations/{location}/namespaces/{namespace}/services/{service}\n" +
	"&com.google.cloud.dialogflow.cx.v3beta1B\fWebhookProtoP\x01Z6cloud.google.com/go/dialogflow/cx/apiv3beta1/cxpb;cxpb\xa2\x02\x02DF\xaa\x02\"Google.Cloud.Dialogflow.Cx.V3Beta1\xea\x02&Google::Cloud::Dialogflow::CX::V3beta1b\x06proto3"

var (
	file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDescOnce sync.Once
	file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDescData []byte
)

func file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDescGZIP() []byte {
	file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDescOnce.Do(func() {
		file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDescData = protoimpl.X.CompressGZIP(unsafe.Slice(unsafe.StringData(file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDesc), len(file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDesc)))
	})
	return file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDescData
}

var file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes = make([]protoimpl.EnumInfo, 5)
var file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_msgTypes = make([]protoimpl.MessageInfo, 29)
var file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_goTypes = []any{
	(Webhook_GenericWebService_ServiceAgentAuth)(0),        // 0: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.ServiceAgentAuth
	(Webhook_GenericWebService_WebhookType)(0),             // 1: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.WebhookType
	(Webhook_GenericWebService_HttpMethod)(0),              // 2: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.HttpMethod
	(WebhookResponse_FulfillmentResponse_MergeBehavior)(0), // 3: google.cloud.dialogflow.cx.v3beta1.WebhookResponse.FulfillmentResponse.MergeBehavior
	(PageInfo_FormInfo_ParameterInfo_ParameterState)(0),    // 4: google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo.ParameterInfo.ParameterState
	(*Webhook)(nil),                                            // 5: google.cloud.dialogflow.cx.v3beta1.Webhook
	(*ListWebhooksRequest)(nil),                                // 6: google.cloud.dialogflow.cx.v3beta1.ListWebhooksRequest
	(*ListWebhooksResponse)(nil),                               // 7: google.cloud.dialogflow.cx.v3beta1.ListWebhooksResponse
	(*GetWebhookRequest)(nil),                                  // 8: google.cloud.dialogflow.cx.v3beta1.GetWebhookRequest
	(*CreateWebhookRequest)(nil),                               // 9: google.cloud.dialogflow.cx.v3beta1.CreateWebhookRequest
	(*UpdateWebhookRequest)(nil),                               // 10: google.cloud.dialogflow.cx.v3beta1.UpdateWebhookRequest
	(*DeleteWebhookRequest)(nil),                               // 11: google.cloud.dialogflow.cx.v3beta1.DeleteWebhookRequest
	(*WebhookRequest)(nil),                                     // 12: google.cloud.dialogflow.cx.v3beta1.WebhookRequest
	(*WebhookResponse)(nil),                                    // 13: google.cloud.dialogflow.cx.v3beta1.WebhookResponse
	(*PageInfo)(nil),                                           // 14: google.cloud.dialogflow.cx.v3beta1.PageInfo
	(*SessionInfo)(nil),                                        // 15: google.cloud.dialogflow.cx.v3beta1.SessionInfo
	(*LanguageInfo)(nil),                                       // 16: google.cloud.dialogflow.cx.v3beta1.LanguageInfo
	(*Webhook_GenericWebService)(nil),                          // 17: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService
	(*Webhook_ServiceDirectoryConfig)(nil),                     // 18: google.cloud.dialogflow.cx.v3beta1.Webhook.ServiceDirectoryConfig
	(*Webhook_GenericWebService_SecretVersionHeaderValue)(nil), // 19: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.SecretVersionHeaderValue
	(*Webhook_GenericWebService_OAuthConfig)(nil),              // 20: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.OAuthConfig
	(*Webhook_GenericWebService_ServiceAccountAuthConfig)(nil), // 21: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.ServiceAccountAuthConfig
	nil,                                    // 22: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.RequestHeadersEntry
	nil,                                    // 23: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.SecretVersionsForRequestHeadersEntry
	nil,                                    // 24: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.ParameterMappingEntry
	(*WebhookRequest_FulfillmentInfo)(nil), // 25: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.FulfillmentInfo
	(*WebhookRequest_IntentInfo)(nil),      // 26: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo
	(*WebhookRequest_SentimentAnalysisResult)(nil),         // 27: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.SentimentAnalysisResult
	(*WebhookRequest_IntentInfo_IntentParameterValue)(nil), // 28: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo.IntentParameterValue
	nil, // 29: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo.ParametersEntry
	(*WebhookResponse_FulfillmentResponse)(nil), // 30: google.cloud.dialogflow.cx.v3beta1.WebhookResponse.FulfillmentResponse
	(*PageInfo_FormInfo)(nil),                   // 31: google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo
	(*PageInfo_FormInfo_ParameterInfo)(nil),     // 32: google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo.ParameterInfo
	nil,                                         // 33: google.cloud.dialogflow.cx.v3beta1.SessionInfo.ParametersEntry
	(*durationpb.Duration)(nil),                 // 34: google.protobuf.Duration
	(*fieldmaskpb.FieldMask)(nil),               // 35: google.protobuf.FieldMask
	(*ResponseMessage)(nil),                     // 36: google.cloud.dialogflow.cx.v3beta1.ResponseMessage
	(*structpb.Struct)(nil),                     // 37: google.protobuf.Struct
	(*structpb.Value)(nil),                      // 38: google.protobuf.Value
	(*emptypb.Empty)(nil),                       // 39: google.protobuf.Empty
}
var file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_depIdxs = []int32{
	17, // 0: google.cloud.dialogflow.cx.v3beta1.Webhook.generic_web_service:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService
	18, // 1: google.cloud.dialogflow.cx.v3beta1.Webhook.service_directory:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.ServiceDirectoryConfig
	34, // 2: google.cloud.dialogflow.cx.v3beta1.Webhook.timeout:type_name -> google.protobuf.Duration
	5,  // 3: google.cloud.dialogflow.cx.v3beta1.ListWebhooksResponse.webhooks:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook
	5,  // 4: google.cloud.dialogflow.cx.v3beta1.CreateWebhookRequest.webhook:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook
	5,  // 5: google.cloud.dialogflow.cx.v3beta1.UpdateWebhookRequest.webhook:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook
	35, // 6: google.cloud.dialogflow.cx.v3beta1.UpdateWebhookRequest.update_mask:type_name -> google.protobuf.FieldMask
	25, // 7: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.fulfillment_info:type_name -> google.cloud.dialogflow.cx.v3beta1.WebhookRequest.FulfillmentInfo
	26, // 8: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.intent_info:type_name -> google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo
	14, // 9: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.page_info:type_name -> google.cloud.dialogflow.cx.v3beta1.PageInfo
	15, // 10: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.session_info:type_name -> google.cloud.dialogflow.cx.v3beta1.SessionInfo
	36, // 11: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.messages:type_name -> google.cloud.dialogflow.cx.v3beta1.ResponseMessage
	37, // 12: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.payload:type_name -> google.protobuf.Struct
	27, // 13: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.sentiment_analysis_result:type_name -> google.cloud.dialogflow.cx.v3beta1.WebhookRequest.SentimentAnalysisResult
	16, // 14: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.language_info:type_name -> google.cloud.dialogflow.cx.v3beta1.LanguageInfo
	30, // 15: google.cloud.dialogflow.cx.v3beta1.WebhookResponse.fulfillment_response:type_name -> google.cloud.dialogflow.cx.v3beta1.WebhookResponse.FulfillmentResponse
	14, // 16: google.cloud.dialogflow.cx.v3beta1.WebhookResponse.page_info:type_name -> google.cloud.dialogflow.cx.v3beta1.PageInfo
	15, // 17: google.cloud.dialogflow.cx.v3beta1.WebhookResponse.session_info:type_name -> google.cloud.dialogflow.cx.v3beta1.SessionInfo
	37, // 18: google.cloud.dialogflow.cx.v3beta1.WebhookResponse.payload:type_name -> google.protobuf.Struct
	31, // 19: google.cloud.dialogflow.cx.v3beta1.PageInfo.form_info:type_name -> google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo
	33, // 20: google.cloud.dialogflow.cx.v3beta1.SessionInfo.parameters:type_name -> google.cloud.dialogflow.cx.v3beta1.SessionInfo.ParametersEntry
	22, // 21: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.request_headers:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.RequestHeadersEntry
	23, // 22: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.secret_versions_for_request_headers:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.SecretVersionsForRequestHeadersEntry
	20, // 23: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.oauth_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.OAuthConfig
	0,  // 24: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.service_agent_auth:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.ServiceAgentAuth
	21, // 25: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.service_account_auth_config:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.ServiceAccountAuthConfig
	1,  // 26: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.webhook_type:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.WebhookType
	2,  // 27: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.http_method:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.HttpMethod
	24, // 28: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.parameter_mapping:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.ParameterMappingEntry
	17, // 29: google.cloud.dialogflow.cx.v3beta1.Webhook.ServiceDirectoryConfig.generic_web_service:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService
	19, // 30: google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.SecretVersionsForRequestHeadersEntry.value:type_name -> google.cloud.dialogflow.cx.v3beta1.Webhook.GenericWebService.SecretVersionHeaderValue
	29, // 31: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo.parameters:type_name -> google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo.ParametersEntry
	38, // 32: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo.IntentParameterValue.resolved_value:type_name -> google.protobuf.Value
	28, // 33: google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo.ParametersEntry.value:type_name -> google.cloud.dialogflow.cx.v3beta1.WebhookRequest.IntentInfo.IntentParameterValue
	36, // 34: google.cloud.dialogflow.cx.v3beta1.WebhookResponse.FulfillmentResponse.messages:type_name -> google.cloud.dialogflow.cx.v3beta1.ResponseMessage
	3,  // 35: google.cloud.dialogflow.cx.v3beta1.WebhookResponse.FulfillmentResponse.merge_behavior:type_name -> google.cloud.dialogflow.cx.v3beta1.WebhookResponse.FulfillmentResponse.MergeBehavior
	32, // 36: google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo.parameter_info:type_name -> google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo.ParameterInfo
	4,  // 37: google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo.ParameterInfo.state:type_name -> google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo.ParameterInfo.ParameterState
	38, // 38: google.cloud.dialogflow.cx.v3beta1.PageInfo.FormInfo.ParameterInfo.value:type_name -> google.protobuf.Value
	38, // 39: google.cloud.dialogflow.cx.v3beta1.SessionInfo.ParametersEntry.value:type_name -> google.protobuf.Value
	6,  // 40: google.cloud.dialogflow.cx.v3beta1.Webhooks.ListWebhooks:input_type -> google.cloud.dialogflow.cx.v3beta1.ListWebhooksRequest
	8,  // 41: google.cloud.dialogflow.cx.v3beta1.Webhooks.GetWebhook:input_type -> google.cloud.dialogflow.cx.v3beta1.GetWebhookRequest
	9,  // 42: google.cloud.dialogflow.cx.v3beta1.Webhooks.CreateWebhook:input_type -> google.cloud.dialogflow.cx.v3beta1.CreateWebhookRequest
	10, // 43: google.cloud.dialogflow.cx.v3beta1.Webhooks.UpdateWebhook:input_type -> google.cloud.dialogflow.cx.v3beta1.UpdateWebhookRequest
	11, // 44: google.cloud.dialogflow.cx.v3beta1.Webhooks.DeleteWebhook:input_type -> google.cloud.dialogflow.cx.v3beta1.DeleteWebhookRequest
	7,  // 45: google.cloud.dialogflow.cx.v3beta1.Webhooks.ListWebhooks:output_type -> google.cloud.dialogflow.cx.v3beta1.ListWebhooksResponse
	5,  // 46: google.cloud.dialogflow.cx.v3beta1.Webhooks.GetWebhook:output_type -> google.cloud.dialogflow.cx.v3beta1.Webhook
	5,  // 47: google.cloud.dialogflow.cx.v3beta1.Webhooks.CreateWebhook:output_type -> google.cloud.dialogflow.cx.v3beta1.Webhook
	5,  // 48: google.cloud.dialogflow.cx.v3beta1.Webhooks.UpdateWebhook:output_type -> google.cloud.dialogflow.cx.v3beta1.Webhook
	39, // 49: google.cloud.dialogflow.cx.v3beta1.Webhooks.DeleteWebhook:output_type -> google.protobuf.Empty
	45, // [45:50] is the sub-list for method output_type
	40, // [40:45] is the sub-list for method input_type
	40, // [40:40] is the sub-list for extension type_name
	40, // [40:40] is the sub-list for extension extendee
	0,  // [0:40] is the sub-list for field type_name
}

func init() { file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_init() }
func file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_init() {
	if File_google_cloud_dialogflow_cx_v3beta1_webhook_proto != nil {
		return
	}
	file_google_cloud_dialogflow_cx_v3beta1_response_message_proto_init()
	file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_msgTypes[0].OneofWrappers = []any{
		(*Webhook_GenericWebService_)(nil),
		(*Webhook_ServiceDirectory)(nil),
	}
	file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_msgTypes[7].OneofWrappers = []any{
		(*WebhookRequest_Text)(nil),
		(*WebhookRequest_TriggerIntent)(nil),
		(*WebhookRequest_Transcript)(nil),
		(*WebhookRequest_TriggerEvent)(nil),
		(*WebhookRequest_DtmfDigits)(nil),
	}
	file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_msgTypes[8].OneofWrappers = []any{
		(*WebhookResponse_TargetPage)(nil),
		(*WebhookResponse_TargetFlow)(nil),
	}
	type x struct{}
	out := protoimpl.TypeBuilder{
		File: protoimpl.DescBuilder{
			GoPackagePath: reflect.TypeOf(x{}).PkgPath(),
			RawDescriptor: unsafe.Slice(unsafe.StringData(file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDesc), len(file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_rawDesc)),
			NumEnums:      5,
			NumMessages:   29,
			NumExtensions: 0,
			NumServices:   1,
		},
		GoTypes:           file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_goTypes,
		DependencyIndexes: file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_depIdxs,
		EnumInfos:         file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_enumTypes,
		MessageInfos:      file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_msgTypes,
	}.Build()
	File_google_cloud_dialogflow_cx_v3beta1_webhook_proto = out.File
	file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_goTypes = nil
	file_google_cloud_dialogflow_cx_v3beta1_webhook_proto_depIdxs = nil
}
