@google-cloud/dialogflow
Version:
Dialogflow API client for Node.js
744 lines • 118 kB
TypeScript
import type * as gax from 'google-gax';
import type { Callback, CallOptions, Descriptors, ClientOptions, PaginationCallback, LocationsClient, LocationProtos } from 'google-gax';
import { Transform } from 'stream';
import * as protos from '../../protos/protos';
/**
* Service for managing
* {@link protos.google.cloud.dialogflow.v2beta1.Participant|Participants}.
* @class
* @memberof v2beta1
*/
export declare class ParticipantsClient {
private _terminated;
private _opts;
private _providedCustomServicePath;
private _gaxModule;
private _gaxGrpc;
private _protos;
private _defaults;
private _universeDomain;
private _servicePath;
private _log;
auth: gax.GoogleAuth;
descriptors: Descriptors;
warn: (code: string, message: string, warnType?: string) => void;
innerApiCalls: {
[name: string]: Function;
};
locationsClient: LocationsClient;
pathTemplates: {
[name: string]: gax.PathTemplate;
};
participantsStub?: Promise<{
[name: string]: Function;
}>;
/**
* Construct an instance of ParticipantsClient.
*
* @param {object} [options] - The configuration object.
* The options accepted by the constructor are described in detail
* in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance).
* The common options are:
* @param {object} [options.credentials] - Credentials object.
* @param {string} [options.credentials.client_email]
* @param {string} [options.credentials.private_key]
* @param {string} [options.email] - Account email address. Required when
* using a .pem or .p12 keyFilename.
* @param {string} [options.keyFilename] - Full path to the a .json, .pem, or
* .p12 key downloaded from the Google Developers Console. If you provide
* a path to a JSON file, the projectId option below is not necessary.
* NOTE: .pem and .p12 require you to specify options.email as well.
* @param {number} [options.port] - The port on which to connect to
* the remote host.
* @param {string} [options.projectId] - The project ID from the Google
* Developer's Console, e.g. 'grape-spaceship-123'. We will also check
* the environment variable GCLOUD_PROJECT for your project ID. If your
* app is running in an environment which supports
* {@link https://cloud.google.com/docs/authentication/application-default-credentials Application Default Credentials},
* your project ID will be detected automatically.
* @param {string} [options.apiEndpoint] - The domain name of the
* API remote host.
* @param {gax.ClientConfig} [options.clientConfig] - Client configuration override.
* Follows the structure of {@link gapicConfig}.
* @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode.
* For more information, please check the
* {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}.
* @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you
* need to avoid loading the default gRPC version and want to use the fallback
* HTTP implementation. Load only fallback version and pass it to the constructor:
* ```
* const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC
* const client = new ParticipantsClient({fallback: true}, gax);
* ```
*/
constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback);
/**
* Initialize the client.
* Performs asynchronous operations (such as authentication) and prepares the client.
* This function will be called automatically when any class method is called for the
* first time, but if you need to initialize it before calling an actual method,
* feel free to call initialize() directly.
*
* You can await on this method if you want to make sure the client is initialized.
*
* @returns {Promise} A promise that resolves to an authenticated service stub.
*/
initialize(): Promise<{
[name: string]: Function;
}>;
/**
* The DNS address for this API service.
* @deprecated Use the apiEndpoint method of the client instance.
* @returns {string} The DNS address for this service.
*/
static get servicePath(): string;
/**
* The DNS address for this API service - same as servicePath.
* @deprecated Use the apiEndpoint method of the client instance.
* @returns {string} The DNS address for this service.
*/
static get apiEndpoint(): string;
/**
* The DNS address for this API service.
* @returns {string} The DNS address for this service.
*/
get apiEndpoint(): string;
get universeDomain(): string;
/**
* The port for this API service.
* @returns {number} The default port for this service.
*/
static get port(): number;
/**
* The scopes needed to make gRPC calls for every method defined
* in this service.
* @returns {string[]} List of default scopes.
*/
static get scopes(): string[];
getProjectId(): Promise<string>;
getProjectId(callback: Callback<string, undefined, undefined>): void;
/**
* Creates a new participant in a conversation.
*
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. Resource identifier of the conversation adding the participant.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>`.
* @param {google.cloud.dialogflow.v2beta1.Participant} request.participant
* Required. The participant to create.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is an object representing {@link protos.google.cloud.dialogflow.v2beta1.Participant|Participant}.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.create_participant.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_CreateParticipant_async
*/
createParticipant(request?: protos.google.cloud.dialogflow.v2beta1.ICreateParticipantRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.IParticipant,
protos.google.cloud.dialogflow.v2beta1.ICreateParticipantRequest | undefined,
{} | undefined
]>;
createParticipant(request: protos.google.cloud.dialogflow.v2beta1.ICreateParticipantRequest, options: CallOptions, callback: Callback<protos.google.cloud.dialogflow.v2beta1.IParticipant, protos.google.cloud.dialogflow.v2beta1.ICreateParticipantRequest | null | undefined, {} | null | undefined>): void;
createParticipant(request: protos.google.cloud.dialogflow.v2beta1.ICreateParticipantRequest, callback: Callback<protos.google.cloud.dialogflow.v2beta1.IParticipant, protos.google.cloud.dialogflow.v2beta1.ICreateParticipantRequest | null | undefined, {} | null | undefined>): void;
/**
* Retrieves a conversation participant.
*
* @param {Object} request
* The request object that will be sent.
* @param {string} request.name
* Required. The name of the participant. Format:
* `projects/<Project ID>/locations/<Location ID>/conversations/<Conversation
* ID>/participants/<Participant ID>`.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is an object representing {@link protos.google.cloud.dialogflow.v2beta1.Participant|Participant}.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.get_participant.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_GetParticipant_async
*/
getParticipant(request?: protos.google.cloud.dialogflow.v2beta1.IGetParticipantRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.IParticipant,
protos.google.cloud.dialogflow.v2beta1.IGetParticipantRequest | undefined,
{} | undefined
]>;
getParticipant(request: protos.google.cloud.dialogflow.v2beta1.IGetParticipantRequest, options: CallOptions, callback: Callback<protos.google.cloud.dialogflow.v2beta1.IParticipant, protos.google.cloud.dialogflow.v2beta1.IGetParticipantRequest | null | undefined, {} | null | undefined>): void;
getParticipant(request: protos.google.cloud.dialogflow.v2beta1.IGetParticipantRequest, callback: Callback<protos.google.cloud.dialogflow.v2beta1.IParticipant, protos.google.cloud.dialogflow.v2beta1.IGetParticipantRequest | null | undefined, {} | null | undefined>): void;
/**
* Updates the specified participant.
*
* @param {Object} request
* The request object that will be sent.
* @param {google.cloud.dialogflow.v2beta1.Participant} request.participant
* Required. The participant to update.
* @param {google.protobuf.FieldMask} request.updateMask
* Required. The mask to specify which fields to update.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is an object representing {@link protos.google.cloud.dialogflow.v2beta1.Participant|Participant}.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.update_participant.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_UpdateParticipant_async
*/
updateParticipant(request?: protos.google.cloud.dialogflow.v2beta1.IUpdateParticipantRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.IParticipant,
protos.google.cloud.dialogflow.v2beta1.IUpdateParticipantRequest | undefined,
{} | undefined
]>;
updateParticipant(request: protos.google.cloud.dialogflow.v2beta1.IUpdateParticipantRequest, options: CallOptions, callback: Callback<protos.google.cloud.dialogflow.v2beta1.IParticipant, protos.google.cloud.dialogflow.v2beta1.IUpdateParticipantRequest | null | undefined, {} | null | undefined>): void;
updateParticipant(request: protos.google.cloud.dialogflow.v2beta1.IUpdateParticipantRequest, callback: Callback<protos.google.cloud.dialogflow.v2beta1.IParticipant, protos.google.cloud.dialogflow.v2beta1.IUpdateParticipantRequest | null | undefined, {} | null | undefined>): void;
/**
* Adds a text (chat, for example), or audio (phone recording, for example)
* message from a participant into the conversation.
*
* Note: Always use agent versions for production traffic
* sent to virtual agents. See [Versions and
* environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
*
* @param {Object} request
* The request object that will be sent.
* @param {string} request.participant
* Required. The name of the participant this text comes from.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
* @param {google.cloud.dialogflow.v2beta1.TextInput} request.textInput
* The natural language text to be processed.
* @param {google.cloud.dialogflow.v2beta1.AudioInput} request.audioInput
* The natural language speech audio to be processed.
* @param {google.cloud.dialogflow.v2beta1.EventInput} request.eventInput
* An input event to send to Dialogflow.
* @param {google.cloud.dialogflow.v2beta1.SuggestionInput} request.suggestionInput
* An input representing the selection of a suggestion.
* @param {google.cloud.dialogflow.v2beta1.IntentInput} request.intentInput
* The intent to be triggered on V3 agent.
* @param {google.cloud.dialogflow.v2beta1.OutputAudioConfig} request.replyAudioConfig
* Speech synthesis configuration.
* The speech synthesis settings for a virtual agent that may be configured
* for the associated conversation profile are not used when calling
* AnalyzeContent. If this configuration is not supplied, speech synthesis
* is disabled.
* @param {google.cloud.dialogflow.v2beta1.QueryParameters} request.queryParams
* Parameters for a Dialogflow virtual-agent query.
* @param {google.cloud.dialogflow.v2beta1.AssistQueryParameters} request.assistQueryParams
* Parameters for a human assist query.
* @param {google.protobuf.Struct} request.cxParameters
* Additional parameters to be put into Dialogflow CX session parameters. To
* remove a parameter from the session, clients should explicitly set the
* parameter value to null.
*
* Note: this field should only be used if you are connecting to a Dialogflow
* CX agent.
* @param {string} request.cxCurrentPage
* The unique identifier of the Dialogflow CX page to override the
* `current_page` in the session.
* Format: `projects/<Project ID>/locations/<Location ID>/agents/<Agent
* ID>/flows/<Flow ID>/pages/<Page ID>`.
*
* If `cx_current_page` is specified, the previous state of the session will
* be ignored by Dialogflow CX, including the [previous
* page][QueryResult.current_page] and the [previous session
* parameters][QueryResult.parameters]. In most cases, `cx_current_page` and
* `cx_parameters` should be configured together to direct a session to a
* specific state.
*
* Note: this field should only be used if you are connecting to a Dialogflow
* CX agent.
* @param {google.protobuf.Timestamp} [request.messageSendTime]
* Optional. The send time of the message from end user or human agent's
* perspective. It is used for identifying the same message under one
* participant.
*
* For BatchCreateMessages API only:
* Given two messages under the same participant:
* * If send time are different regardless of whether the content of the
* messages are exactly the same, the conversation will regard them as
* two distinct messages sent by the participant.
* * If send time is the same regardless of whether the content of the
* messages are exactly the same, the conversation will regard them as
* same message, and ignore the message received later.
*
* If the value is not provided, a new request will always be regarded as a
* new message without any de-duplication.
* @param {string} request.requestId
* A unique identifier for this request. Restricted to 36 ASCII characters.
* A random UUID is recommended.
* This request is only idempotent if a `request_id` is provided.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is an object representing {@link protos.google.cloud.dialogflow.v2beta1.AnalyzeContentResponse|AnalyzeContentResponse}.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.analyze_content.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_AnalyzeContent_async
*/
analyzeContent(request?: protos.google.cloud.dialogflow.v2beta1.IAnalyzeContentRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.IAnalyzeContentResponse,
protos.google.cloud.dialogflow.v2beta1.IAnalyzeContentRequest | undefined,
{} | undefined
]>;
analyzeContent(request: protos.google.cloud.dialogflow.v2beta1.IAnalyzeContentRequest, options: CallOptions, callback: Callback<protos.google.cloud.dialogflow.v2beta1.IAnalyzeContentResponse, protos.google.cloud.dialogflow.v2beta1.IAnalyzeContentRequest | null | undefined, {} | null | undefined>): void;
analyzeContent(request: protos.google.cloud.dialogflow.v2beta1.IAnalyzeContentRequest, callback: Callback<protos.google.cloud.dialogflow.v2beta1.IAnalyzeContentResponse, protos.google.cloud.dialogflow.v2beta1.IAnalyzeContentRequest | null | undefined, {} | null | undefined>): void;
/**
* Gets suggested articles for a participant based on specific historical
* messages.
*
* Note that
* {@link protos.google.cloud.dialogflow.v2beta1.Participants.ListSuggestions|ListSuggestions}
* will only list the auto-generated suggestions, while
* {@link protos.google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion|CompileSuggestion}
* will try to compile suggestion based on the provided conversation context
* in the real time.
*
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The name of the participant to fetch suggestion for.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
* @param {string} [request.latestMessage]
* Optional. The name of the latest conversation message to compile suggestion
* for. If empty, it will be the latest message of the conversation.
*
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/messages/<Message ID>`.
* @param {number} [request.contextSize]
* Optional. Max number of messages prior to and including
* {@link protos.google.cloud.dialogflow.v2beta1.SuggestArticlesRequest.latest_message|latest_message}
* to use as context when compiling the suggestion. By default 20 and at
* most 50.
* @param {google.cloud.dialogflow.v2beta1.AssistQueryParameters} [request.assistQueryParams]
* Optional. Parameters for a human assist query.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is an object representing {@link protos.google.cloud.dialogflow.v2beta1.SuggestArticlesResponse|SuggestArticlesResponse}.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.suggest_articles.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_SuggestArticles_async
*/
suggestArticles(request?: protos.google.cloud.dialogflow.v2beta1.ISuggestArticlesRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.ISuggestArticlesResponse,
protos.google.cloud.dialogflow.v2beta1.ISuggestArticlesRequest | undefined,
{} | undefined
]>;
suggestArticles(request: protos.google.cloud.dialogflow.v2beta1.ISuggestArticlesRequest, options: CallOptions, callback: Callback<protos.google.cloud.dialogflow.v2beta1.ISuggestArticlesResponse, protos.google.cloud.dialogflow.v2beta1.ISuggestArticlesRequest | null | undefined, {} | null | undefined>): void;
suggestArticles(request: protos.google.cloud.dialogflow.v2beta1.ISuggestArticlesRequest, callback: Callback<protos.google.cloud.dialogflow.v2beta1.ISuggestArticlesResponse, protos.google.cloud.dialogflow.v2beta1.ISuggestArticlesRequest | null | undefined, {} | null | undefined>): void;
/**
* Gets suggested faq answers for a participant based on specific historical
* messages.
*
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The name of the participant to fetch suggestion for.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
* @param {string} [request.latestMessage]
* Optional. The name of the latest conversation message to compile suggestion
* for. If empty, it will be the latest message of the conversation.
*
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/messages/<Message ID>`.
* @param {number} [request.contextSize]
* Optional. Max number of messages prior to and including
* [latest_message] to use as context when compiling the
* suggestion. By default 20 and at most 50.
* @param {google.cloud.dialogflow.v2beta1.AssistQueryParameters} [request.assistQueryParams]
* Optional. Parameters for a human assist query.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is an object representing {@link protos.google.cloud.dialogflow.v2beta1.SuggestFaqAnswersResponse|SuggestFaqAnswersResponse}.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.suggest_faq_answers.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_SuggestFaqAnswers_async
*/
suggestFaqAnswers(request?: protos.google.cloud.dialogflow.v2beta1.ISuggestFaqAnswersRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.ISuggestFaqAnswersResponse,
protos.google.cloud.dialogflow.v2beta1.ISuggestFaqAnswersRequest | undefined,
{} | undefined
]>;
suggestFaqAnswers(request: protos.google.cloud.dialogflow.v2beta1.ISuggestFaqAnswersRequest, options: CallOptions, callback: Callback<protos.google.cloud.dialogflow.v2beta1.ISuggestFaqAnswersResponse, protos.google.cloud.dialogflow.v2beta1.ISuggestFaqAnswersRequest | null | undefined, {} | null | undefined>): void;
suggestFaqAnswers(request: protos.google.cloud.dialogflow.v2beta1.ISuggestFaqAnswersRequest, callback: Callback<protos.google.cloud.dialogflow.v2beta1.ISuggestFaqAnswersResponse, protos.google.cloud.dialogflow.v2beta1.ISuggestFaqAnswersRequest | null | undefined, {} | null | undefined>): void;
/**
* Gets smart replies for a participant based on specific historical
* messages.
*
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The name of the participant to fetch suggestion for.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
* @param {google.cloud.dialogflow.v2beta1.TextInput} request.currentTextInput
* The current natural language text segment to compile suggestion
* for. This provides a way for user to get follow up smart reply suggestion
* after a smart reply selection, without sending a text message.
* @param {string} request.latestMessage
* The name of the latest conversation message to compile suggestion
* for. If empty, it will be the latest message of the conversation.
*
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/messages/<Message ID>`.
* @param {number} request.contextSize
* Optional. Max number of messages prior to and including
* [latest_message] to use as context when compiling the
* suggestion. By default 20 and at most 50.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is an object representing {@link protos.google.cloud.dialogflow.v2beta1.SuggestSmartRepliesResponse|SuggestSmartRepliesResponse}.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.suggest_smart_replies.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_SuggestSmartReplies_async
*/
suggestSmartReplies(request?: protos.google.cloud.dialogflow.v2beta1.ISuggestSmartRepliesRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.ISuggestSmartRepliesResponse,
protos.google.cloud.dialogflow.v2beta1.ISuggestSmartRepliesRequest | undefined,
{} | undefined
]>;
suggestSmartReplies(request: protos.google.cloud.dialogflow.v2beta1.ISuggestSmartRepliesRequest, options: CallOptions, callback: Callback<protos.google.cloud.dialogflow.v2beta1.ISuggestSmartRepliesResponse, protos.google.cloud.dialogflow.v2beta1.ISuggestSmartRepliesRequest | null | undefined, {} | null | undefined>): void;
suggestSmartReplies(request: protos.google.cloud.dialogflow.v2beta1.ISuggestSmartRepliesRequest, callback: Callback<protos.google.cloud.dialogflow.v2beta1.ISuggestSmartRepliesResponse, protos.google.cloud.dialogflow.v2beta1.ISuggestSmartRepliesRequest | null | undefined, {} | null | undefined>): void;
/**
* Gets knowledge assist suggestions based on historical messages.
*
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The name of the participant to fetch suggestions for.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
* @param {string} [request.latestMessage]
* Optional. The name of the latest conversation message to compile
* suggestions for. If empty, it will be the latest message of the
* conversation. Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/messages/<Message ID>`.
* @param {number} [request.contextSize]
* Optional. Max number of messages prior to and including
* {@link protos.google.cloud.dialogflow.v2beta1.SuggestKnowledgeAssistRequest.latest_message|latest_message}
* to use as context when compiling the suggestion. The context size is by
* default 100 and at most 100.
* @param {string} [request.previousSuggestedQuery]
* Optional. The previously suggested query for the given conversation. This
* helps identify whether the next suggestion we generate is reasonably
* different from the previous one. This is useful to avoid similar
* suggestions within the conversation.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is an object representing {@link protos.google.cloud.dialogflow.v2beta1.SuggestKnowledgeAssistResponse|SuggestKnowledgeAssistResponse}.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.suggest_knowledge_assist.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_SuggestKnowledgeAssist_async
*/
suggestKnowledgeAssist(request?: protos.google.cloud.dialogflow.v2beta1.ISuggestKnowledgeAssistRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.ISuggestKnowledgeAssistResponse,
protos.google.cloud.dialogflow.v2beta1.ISuggestKnowledgeAssistRequest | undefined,
{} | undefined
]>;
suggestKnowledgeAssist(request: protos.google.cloud.dialogflow.v2beta1.ISuggestKnowledgeAssistRequest, options: CallOptions, callback: Callback<protos.google.cloud.dialogflow.v2beta1.ISuggestKnowledgeAssistResponse, protos.google.cloud.dialogflow.v2beta1.ISuggestKnowledgeAssistRequest | null | undefined, {} | null | undefined>): void;
suggestKnowledgeAssist(request: protos.google.cloud.dialogflow.v2beta1.ISuggestKnowledgeAssistRequest, callback: Callback<protos.google.cloud.dialogflow.v2beta1.ISuggestKnowledgeAssistResponse, protos.google.cloud.dialogflow.v2beta1.ISuggestKnowledgeAssistRequest | null | undefined, {} | null | undefined>): void;
/**
* Deprecated. use
* {@link protos.google.cloud.dialogflow.v2beta1.Participants.SuggestArticles|SuggestArticles}
* and
* {@link protos.google.cloud.dialogflow.v2beta1.Participants.SuggestFaqAnswers|SuggestFaqAnswers}
* instead.
*
* Gets suggestions for a participant based on specific historical
* messages.
*
* Note that
* {@link protos.google.cloud.dialogflow.v2beta1.Participants.ListSuggestions|ListSuggestions}
* will only list the auto-generated suggestions, while
* {@link protos.google.cloud.dialogflow.v2beta1.Participants.CompileSuggestion|CompileSuggestion}
* will try to compile suggestion based on the provided conversation context
* in the real time.
*
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The name of the participant to fetch suggestion for.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
* @param {string} request.latestMessage
* Optional. The name of the latest conversation message to compile suggestion
* for. If empty, it will be the latest message of the conversation.
*
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/messages/<Message ID>`.
* @param {number} request.contextSize
* Optional. Max number of messages prior to and including
* [latest_message] to use as context when compiling the
* suggestion. If zero or less than zero, 20 is used.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is an object representing {@link protos.google.cloud.dialogflow.v2beta1.CompileSuggestionResponse|CompileSuggestionResponse}.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.compile_suggestion.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_CompileSuggestion_async
* @deprecated CompileSuggestion is deprecated and may be removed in a future version.
*/
compileSuggestion(request?: protos.google.cloud.dialogflow.v2beta1.ICompileSuggestionRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.ICompileSuggestionResponse,
protos.google.cloud.dialogflow.v2beta1.ICompileSuggestionRequest | undefined,
{} | undefined
]>;
compileSuggestion(request: protos.google.cloud.dialogflow.v2beta1.ICompileSuggestionRequest, options: CallOptions, callback: Callback<protos.google.cloud.dialogflow.v2beta1.ICompileSuggestionResponse, protos.google.cloud.dialogflow.v2beta1.ICompileSuggestionRequest | null | undefined, {} | null | undefined>): void;
compileSuggestion(request: protos.google.cloud.dialogflow.v2beta1.ICompileSuggestionRequest, callback: Callback<protos.google.cloud.dialogflow.v2beta1.ICompileSuggestionResponse, protos.google.cloud.dialogflow.v2beta1.ICompileSuggestionRequest | null | undefined, {} | null | undefined>): void;
/**
* Adds a text (e.g., chat) or audio (e.g., phone recording) message from a
* participant into the conversation.
* Note: This method is only available through the gRPC API (not REST).
*
* The top-level message sent to the client by the server is
* `StreamingAnalyzeContentResponse`. Multiple response messages can be
* returned in order. The first one or more messages contain the
* `recognition_result` field. Each result represents a more complete
* transcript of what the user said. The next message contains the
* `reply_text` field, and potentially the `reply_audio` and/or the
* `automated_agent_reply` fields.
*
* Note: Always use agent versions for production traffic
* sent to virtual agents. See [Versions and
* environments](https://cloud.google.com/dialogflow/es/docs/agents-versions).
*
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Stream}
* An object stream which is both readable and writable. It accepts objects
* representing {@link protos.google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentRequest|StreamingAnalyzeContentRequest} for write() method, and
* will emit objects representing {@link protos.google.cloud.dialogflow.v2beta1.StreamingAnalyzeContentResponse|StreamingAnalyzeContentResponse} on 'data' event asynchronously.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#bi-directional-streaming | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.streaming_analyze_content.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_StreamingAnalyzeContent_async
*/
streamingAnalyzeContent(options?: CallOptions): gax.CancellableStream;
/**
* Returns the list of all participants in the specified conversation.
*
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The conversation to list all participants from.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>`.
* @param {number} [request.pageSize]
* Optional. The maximum number of items to return in a single page. By
* default 100 and at most 1000.
* @param {string} [request.pageToken]
* Optional. The next_page_token value returned from a previous list request.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is Array of {@link protos.google.cloud.dialogflow.v2beta1.Participant|Participant}.
* The client library will perform auto-pagination by default: it will call the API as many
* times as needed and will merge results from all the pages into this array.
* Note that it can affect your quota.
* We recommend using `listParticipantsAsync()`
* method described below for async iteration which you can stop as needed.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
* for more details and examples.
*/
listParticipants(request?: protos.google.cloud.dialogflow.v2beta1.IListParticipantsRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.IParticipant[],
protos.google.cloud.dialogflow.v2beta1.IListParticipantsRequest | null,
protos.google.cloud.dialogflow.v2beta1.IListParticipantsResponse
]>;
listParticipants(request: protos.google.cloud.dialogflow.v2beta1.IListParticipantsRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.dialogflow.v2beta1.IListParticipantsRequest, protos.google.cloud.dialogflow.v2beta1.IListParticipantsResponse | null | undefined, protos.google.cloud.dialogflow.v2beta1.IParticipant>): void;
listParticipants(request: protos.google.cloud.dialogflow.v2beta1.IListParticipantsRequest, callback: PaginationCallback<protos.google.cloud.dialogflow.v2beta1.IListParticipantsRequest, protos.google.cloud.dialogflow.v2beta1.IListParticipantsResponse | null | undefined, protos.google.cloud.dialogflow.v2beta1.IParticipant>): void;
/**
* Equivalent to `listParticipants`, but returns a NodeJS Stream object.
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The conversation to list all participants from.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>`.
* @param {number} [request.pageSize]
* Optional. The maximum number of items to return in a single page. By
* default 100 and at most 1000.
* @param {string} [request.pageToken]
* Optional. The next_page_token value returned from a previous list request.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Stream}
* An object stream which emits an object representing {@link protos.google.cloud.dialogflow.v2beta1.Participant|Participant} on 'data' event.
* The client library will perform auto-pagination by default: it will call the API as many
* times as needed. Note that it can affect your quota.
* We recommend using `listParticipantsAsync()`
* method described below for async iteration which you can stop as needed.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
* for more details and examples.
*/
listParticipantsStream(request?: protos.google.cloud.dialogflow.v2beta1.IListParticipantsRequest, options?: CallOptions): Transform;
/**
* Equivalent to `listParticipants`, but returns an iterable object.
*
* `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The conversation to list all participants from.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>`.
* @param {number} [request.pageSize]
* Optional. The maximum number of items to return in a single page. By
* default 100 and at most 1000.
* @param {string} [request.pageToken]
* Optional. The next_page_token value returned from a previous list request.
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Object}
* An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
* When you iterate the returned iterable, each element will be an object representing
* {@link protos.google.cloud.dialogflow.v2beta1.Participant|Participant}. The API will be called under the hood as needed, once per the page,
* so you can stop the iteration when you don't need more results.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
* for more details and examples.
* @example <caption>include:samples/generated/v2beta1/participants.list_participants.js</caption>
* region_tag:dialogflow_v2beta1_generated_Participants_ListParticipants_async
*/
listParticipantsAsync(request?: protos.google.cloud.dialogflow.v2beta1.IListParticipantsRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.dialogflow.v2beta1.IParticipant>;
/**
* Deprecated: Use inline suggestion, event based suggestion or
* Suggestion* API instead.
* See
* {@link protos.google.cloud.dialogflow.v2beta1.HumanAgentAssistantConfig.name|HumanAgentAssistantConfig.name}
* for more details. Removal Date: 2020-09-01.
*
* Retrieves suggestions for live agents.
*
* This method should be used by human agent client software to fetch auto
* generated suggestions in real-time, while the conversation with an end user
* is in progress. The functionality is implemented in terms of the
* [list
* pagination](https://cloud.google.com/apis/design/design_patterns#list_pagination)
* design pattern. The client app should use the `next_page_token` field
* to fetch the next batch of suggestions. `suggestions` are sorted by
* `create_time` in descending order.
* To fetch latest suggestion, just set `page_size` to 1.
* To fetch new suggestions without duplication, send request with filter
* `create_time_epoch_microseconds > [first item's create_time of previous
* request]` and empty page_token.
*
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The name of the participant to fetch suggestions for.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
* @param {number} request.pageSize
* Optional. The maximum number of items to return in a single page. The
* default value is 100; the maximum value is 1000.
* @param {string} request.pageToken
* Optional. The next_page_token value returned from a previous list request.
* @param {string} request.filter
* Optional. Filter on suggestions fields. Currently predicates on
* `create_time` and `create_time_epoch_microseconds` are supported.
* `create_time` only support milliseconds accuracy. E.g.,
* `create_time_epoch_microseconds > 1551790877964485` or
* `create_time > "2017-01-15T01:30:15.01Z"`
*
* For more information about filtering, see
* [API Filtering](https://aip.dev/160).
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Promise} - The promise which resolves to an array.
* The first element of the array is Array of {@link protos.google.cloud.dialogflow.v2beta1.Suggestion|Suggestion}.
* The client library will perform auto-pagination by default: it will call the API as many
* times as needed and will merge results from all the pages into this array.
* Note that it can affect your quota.
* We recommend using `listSuggestionsAsync()`
* method described below for async iteration which you can stop as needed.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
* for more details and examples.
* @deprecated ListSuggestions is deprecated and may be removed in a future version.
*/
listSuggestions(request?: protos.google.cloud.dialogflow.v2beta1.IListSuggestionsRequest, options?: CallOptions): Promise<[
protos.google.cloud.dialogflow.v2beta1.ISuggestion[],
protos.google.cloud.dialogflow.v2beta1.IListSuggestionsRequest | null,
protos.google.cloud.dialogflow.v2beta1.IListSuggestionsResponse
]>;
listSuggestions(request: protos.google.cloud.dialogflow.v2beta1.IListSuggestionsRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.dialogflow.v2beta1.IListSuggestionsRequest, protos.google.cloud.dialogflow.v2beta1.IListSuggestionsResponse | null | undefined, protos.google.cloud.dialogflow.v2beta1.ISuggestion>): void;
listSuggestions(request: protos.google.cloud.dialogflow.v2beta1.IListSuggestionsRequest, callback: PaginationCallback<protos.google.cloud.dialogflow.v2beta1.IListSuggestionsRequest, protos.google.cloud.dialogflow.v2beta1.IListSuggestionsResponse | null | undefined, protos.google.cloud.dialogflow.v2beta1.ISuggestion>): void;
/**
* Equivalent to `listSuggestions`, but returns a NodeJS Stream object.
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The name of the participant to fetch suggestions for.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
* @param {number} request.pageSize
* Optional. The maximum number of items to return in a single page. The
* default value is 100; the maximum value is 1000.
* @param {string} request.pageToken
* Optional. The next_page_token value returned from a previous list request.
* @param {string} request.filter
* Optional. Filter on suggestions fields. Currently predicates on
* `create_time` and `create_time_epoch_microseconds` are supported.
* `create_time` only support milliseconds accuracy. E.g.,
* `create_time_epoch_microseconds > 1551790877964485` or
* `create_time > "2017-01-15T01:30:15.01Z"`
*
* For more information about filtering, see
* [API Filtering](https://aip.dev/160).
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Stream}
* An object stream which emits an object representing {@link protos.google.cloud.dialogflow.v2beta1.Suggestion|Suggestion} on 'data' event.
* The client library will perform auto-pagination by default: it will call the API as many
* times as needed. Note that it can affect your quota.
* We recommend using `listSuggestionsAsync()`
* method described below for async iteration which you can stop as needed.
* Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
* for more details and examples.
* @deprecated ListSuggestions is deprecated and may be removed in a future version.
*/
listSuggestionsStream(request?: protos.google.cloud.dialogflow.v2beta1.IListSuggestionsRequest, options?: CallOptions): Transform;
/**
* Equivalent to `listSuggestions`, but returns an iterable object.
*
* `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
* @param {Object} request
* The request object that will be sent.
* @param {string} request.parent
* Required. The name of the participant to fetch suggestions for.
* Format: `projects/<Project ID>/locations/<Location
* ID>/conversations/<Conversation ID>/participants/<Participant ID>`.
* @param {number} request.pageSize
* Optional. The maximum number of items to return in a single page. The
* default value is 100; the maximum value is 1000.
* @param {string} request.pageToken
* Optional. The next_page_token value returned from a previous list request.
* @param {string} request.filter
* Optional. Filter on suggestions fields. Currently predicates on
* `create_time` and `create_time_epoch_microseconds` are supported.
* `create_time` only support milliseconds accuracy. E.g.,
* `create_time_epoch_microseconds > 1551790877964485` or
* `create_time > "2017-01-15T01:30:15.01Z"`
*
* For more information about filtering, see
* [API Filtering](https://aip.dev/160).
* @param {object} [options]
* Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
* @returns {Object}
* An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
* When you iterate the returned iterable, each element will be an object representing
* {@link protos.google.cloud.