@google-cloud/discoveryengine 1.11.0 → 1.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +3 -0
  3. package/build/protos/google/cloud/discoveryengine/v1beta/answer.proto +14 -0
  4. package/build/protos/google/cloud/discoveryengine/v1beta/completion.proto +31 -0
  5. package/build/protos/google/cloud/discoveryengine/v1beta/completion_service.proto +38 -0
  6. package/build/protos/google/cloud/discoveryengine/v1beta/conversational_search_service.proto +19 -0
  7. package/build/protos/google/cloud/discoveryengine/v1beta/custom_tuning_model.proto +7 -1
  8. package/build/protos/google/cloud/discoveryengine/v1beta/data_store.proto +23 -0
  9. package/build/protos/google/cloud/discoveryengine/v1beta/data_store_service.proto +10 -0
  10. package/build/protos/google/cloud/discoveryengine/v1beta/import_config.proto +108 -0
  11. package/build/protos/google/cloud/discoveryengine/v1beta/purge_config.proto +111 -0
  12. package/build/protos/google/cloud/discoveryengine/v1beta/search_service.proto +303 -0
  13. package/build/protos/google/cloud/discoveryengine/v1beta/user_event_service.proto +24 -0
  14. package/build/protos/protos.d.ts +2891 -4
  15. package/build/protos/protos.js +23610 -16379
  16. package/build/protos/protos.json +665 -6
  17. package/build/src/v1beta/completion_service_client.d.ts +91 -0
  18. package/build/src/v1beta/completion_service_client.js +84 -0
  19. package/build/src/v1beta/completion_service_client_config.json +10 -0
  20. package/build/src/v1beta/conversational_search_service_client.d.ts +18 -0
  21. package/build/src/v1beta/data_store_service_client.d.ts +9 -0
  22. package/build/src/v1beta/document_service_client.d.ts +2 -0
  23. package/build/src/v1beta/search_service_client.d.ts +147 -0
  24. package/build/src/v1beta/search_service_client.js +98 -0
  25. package/build/src/v1beta/user_event_service_client.d.ts +75 -0
  26. package/build/src/v1beta/user_event_service_client.js +42 -0
  27. package/build/src/v1beta/user_event_service_client_config.json +5 -0
  28. package/package.json +1 -1
@@ -272,6 +272,97 @@ export declare class CompletionServiceClient {
272
272
  * region_tag:discoveryengine_v1beta_generated_CompletionService_PurgeSuggestionDenyListEntries_async
273
273
  */
274
274
  checkPurgeSuggestionDenyListEntriesProgress(name: string): Promise<LROperation<protos.google.cloud.discoveryengine.v1beta.PurgeSuggestionDenyListEntriesResponse, protos.google.cloud.discoveryengine.v1beta.PurgeSuggestionDenyListEntriesMetadata>>;
275
+ /**
276
+ * Imports
277
+ * {@link protos.google.cloud.discoveryengine.v1beta.CompletionSuggestion|CompletionSuggestion}s
278
+ * for a DataStore.
279
+ *
280
+ * @param {Object} request
281
+ * The request object that will be sent.
282
+ * @param {google.cloud.discoveryengine.v1beta.ImportCompletionSuggestionsRequest.InlineSource} request.inlineSource
283
+ * The Inline source for suggestion entries.
284
+ * @param {google.cloud.discoveryengine.v1beta.GcsSource} request.gcsSource
285
+ * Cloud Storage location for the input content.
286
+ * @param {google.cloud.discoveryengine.v1beta.BigQuerySource} request.bigquerySource
287
+ * BigQuery input source.
288
+ * @param {string} request.parent
289
+ * Required. The parent data store resource name for which to import customer
290
+ * autocomplete suggestions.
291
+ *
292
+ * Follows pattern `projects/* /locations/* /collections/* /dataStores/*`
293
+ * @param {google.cloud.discoveryengine.v1beta.ImportErrorConfig} request.errorConfig
294
+ * The desired location of errors incurred during the Import.
295
+ * @param {object} [options]
296
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
297
+ * @returns {Promise} - The promise which resolves to an array.
298
+ * The first element of the array is an object representing
299
+ * a long running operation. Its `promise()` method returns a promise
300
+ * you can `await` for.
301
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
302
+ * for more details and examples.
303
+ * @example <caption>include:samples/generated/v1beta/completion_service.import_completion_suggestions.js</caption>
304
+ * region_tag:discoveryengine_v1beta_generated_CompletionService_ImportCompletionSuggestions_async
305
+ */
306
+ importCompletionSuggestions(request?: protos.google.cloud.discoveryengine.v1beta.IImportCompletionSuggestionsRequest, options?: CallOptions): Promise<[
307
+ LROperation<protos.google.cloud.discoveryengine.v1beta.IImportCompletionSuggestionsResponse, protos.google.cloud.discoveryengine.v1beta.IImportCompletionSuggestionsMetadata>,
308
+ protos.google.longrunning.IOperation | undefined,
309
+ {} | undefined
310
+ ]>;
311
+ importCompletionSuggestions(request: protos.google.cloud.discoveryengine.v1beta.IImportCompletionSuggestionsRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.discoveryengine.v1beta.IImportCompletionSuggestionsResponse, protos.google.cloud.discoveryengine.v1beta.IImportCompletionSuggestionsMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
312
+ importCompletionSuggestions(request: protos.google.cloud.discoveryengine.v1beta.IImportCompletionSuggestionsRequest, callback: Callback<LROperation<protos.google.cloud.discoveryengine.v1beta.IImportCompletionSuggestionsResponse, protos.google.cloud.discoveryengine.v1beta.IImportCompletionSuggestionsMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
313
+ /**
314
+ * Check the status of the long running operation returned by `importCompletionSuggestions()`.
315
+ * @param {String} name
316
+ * The operation name that will be passed.
317
+ * @returns {Promise} - The promise which resolves to an object.
318
+ * The decoded operation object has result and metadata field to get information from.
319
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
320
+ * for more details and examples.
321
+ * @example <caption>include:samples/generated/v1beta/completion_service.import_completion_suggestions.js</caption>
322
+ * region_tag:discoveryengine_v1beta_generated_CompletionService_ImportCompletionSuggestions_async
323
+ */
324
+ checkImportCompletionSuggestionsProgress(name: string): Promise<LROperation<protos.google.cloud.discoveryengine.v1beta.ImportCompletionSuggestionsResponse, protos.google.cloud.discoveryengine.v1beta.ImportCompletionSuggestionsMetadata>>;
325
+ /**
326
+ * Permanently deletes all
327
+ * {@link protos.google.cloud.discoveryengine.v1beta.CompletionSuggestion|CompletionSuggestion}s
328
+ * for a DataStore.
329
+ *
330
+ * @param {Object} request
331
+ * The request object that will be sent.
332
+ * @param {string} request.parent
333
+ * Required. The parent data store resource name for which to purge completion
334
+ * suggestions. Follows pattern
335
+ * projects/* /locations/* /collections/* /dataStores/*.
336
+ * @param {object} [options]
337
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
338
+ * @returns {Promise} - The promise which resolves to an array.
339
+ * The first element of the array is an object representing
340
+ * a long running operation. Its `promise()` method returns a promise
341
+ * you can `await` for.
342
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
343
+ * for more details and examples.
344
+ * @example <caption>include:samples/generated/v1beta/completion_service.purge_completion_suggestions.js</caption>
345
+ * region_tag:discoveryengine_v1beta_generated_CompletionService_PurgeCompletionSuggestions_async
346
+ */
347
+ purgeCompletionSuggestions(request?: protos.google.cloud.discoveryengine.v1beta.IPurgeCompletionSuggestionsRequest, options?: CallOptions): Promise<[
348
+ LROperation<protos.google.cloud.discoveryengine.v1beta.IPurgeCompletionSuggestionsResponse, protos.google.cloud.discoveryengine.v1beta.IPurgeCompletionSuggestionsMetadata>,
349
+ protos.google.longrunning.IOperation | undefined,
350
+ {} | undefined
351
+ ]>;
352
+ purgeCompletionSuggestions(request: protos.google.cloud.discoveryengine.v1beta.IPurgeCompletionSuggestionsRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.discoveryengine.v1beta.IPurgeCompletionSuggestionsResponse, protos.google.cloud.discoveryengine.v1beta.IPurgeCompletionSuggestionsMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
353
+ purgeCompletionSuggestions(request: protos.google.cloud.discoveryengine.v1beta.IPurgeCompletionSuggestionsRequest, callback: Callback<LROperation<protos.google.cloud.discoveryengine.v1beta.IPurgeCompletionSuggestionsResponse, protos.google.cloud.discoveryengine.v1beta.IPurgeCompletionSuggestionsMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
354
+ /**
355
+ * Check the status of the long running operation returned by `purgeCompletionSuggestions()`.
356
+ * @param {String} name
357
+ * The operation name that will be passed.
358
+ * @returns {Promise} - The promise which resolves to an object.
359
+ * The decoded operation object has result and metadata field to get information from.
360
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
361
+ * for more details and examples.
362
+ * @example <caption>include:samples/generated/v1beta/completion_service.purge_completion_suggestions.js</caption>
363
+ * region_tag:discoveryengine_v1beta_generated_CompletionService_PurgeCompletionSuggestions_async
364
+ */
365
+ checkPurgeCompletionSuggestionsProgress(name: string): Promise<LROperation<protos.google.cloud.discoveryengine.v1beta.PurgeCompletionSuggestionsResponse, protos.google.cloud.discoveryengine.v1beta.PurgeCompletionSuggestionsMetadata>>;
275
366
  /**
276
367
  * Gets information about a location.
277
368
  *
@@ -305,9 +305,15 @@ class CompletionServiceClient {
305
305
  const importSuggestionDenyListEntriesMetadata = protoFilesRoot.lookup('.google.cloud.discoveryengine.v1beta.ImportSuggestionDenyListEntriesMetadata');
306
306
  const purgeSuggestionDenyListEntriesResponse = protoFilesRoot.lookup('.google.cloud.discoveryengine.v1beta.PurgeSuggestionDenyListEntriesResponse');
307
307
  const purgeSuggestionDenyListEntriesMetadata = protoFilesRoot.lookup('.google.cloud.discoveryengine.v1beta.PurgeSuggestionDenyListEntriesMetadata');
308
+ const importCompletionSuggestionsResponse = protoFilesRoot.lookup('.google.cloud.discoveryengine.v1beta.ImportCompletionSuggestionsResponse');
309
+ const importCompletionSuggestionsMetadata = protoFilesRoot.lookup('.google.cloud.discoveryengine.v1beta.ImportCompletionSuggestionsMetadata');
310
+ const purgeCompletionSuggestionsResponse = protoFilesRoot.lookup('.google.cloud.discoveryengine.v1beta.PurgeCompletionSuggestionsResponse');
311
+ const purgeCompletionSuggestionsMetadata = protoFilesRoot.lookup('.google.cloud.discoveryengine.v1beta.PurgeCompletionSuggestionsMetadata');
308
312
  this.descriptors.longrunning = {
309
313
  importSuggestionDenyListEntries: new this._gaxModule.LongrunningDescriptor(this.operationsClient, importSuggestionDenyListEntriesResponse.decode.bind(importSuggestionDenyListEntriesResponse), importSuggestionDenyListEntriesMetadata.decode.bind(importSuggestionDenyListEntriesMetadata)),
310
314
  purgeSuggestionDenyListEntries: new this._gaxModule.LongrunningDescriptor(this.operationsClient, purgeSuggestionDenyListEntriesResponse.decode.bind(purgeSuggestionDenyListEntriesResponse), purgeSuggestionDenyListEntriesMetadata.decode.bind(purgeSuggestionDenyListEntriesMetadata)),
315
+ importCompletionSuggestions: new this._gaxModule.LongrunningDescriptor(this.operationsClient, importCompletionSuggestionsResponse.decode.bind(importCompletionSuggestionsResponse), importCompletionSuggestionsMetadata.decode.bind(importCompletionSuggestionsMetadata)),
316
+ purgeCompletionSuggestions: new this._gaxModule.LongrunningDescriptor(this.operationsClient, purgeCompletionSuggestionsResponse.decode.bind(purgeCompletionSuggestionsResponse), purgeCompletionSuggestionsMetadata.decode.bind(purgeCompletionSuggestionsMetadata)),
311
317
  };
312
318
  // Put together the default options sent with requests.
313
319
  this._defaults = this._gaxGrpc.constructSettings('google.cloud.discoveryengine.v1beta.CompletionService', gapicConfig, opts.clientConfig || {}, { 'x-goog-api-client': clientHeader.join(' ') });
@@ -347,6 +353,8 @@ class CompletionServiceClient {
347
353
  'completeQuery',
348
354
  'importSuggestionDenyListEntries',
349
355
  'purgeSuggestionDenyListEntries',
356
+ 'importCompletionSuggestions',
357
+ 'purgeCompletionSuggestions',
350
358
  ];
351
359
  for (const methodName of completionServiceStubMethods) {
352
360
  const callPromise = this.completionServiceStub.then(stub => (...args) => {
@@ -521,6 +529,82 @@ class CompletionServiceClient {
521
529
  const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.purgeSuggestionDenyListEntries, this._gaxModule.createDefaultBackoffSettings());
522
530
  return decodeOperation;
523
531
  }
532
+ importCompletionSuggestions(request, optionsOrCallback, callback) {
533
+ var _a;
534
+ request = request || {};
535
+ let options;
536
+ if (typeof optionsOrCallback === 'function' && callback === undefined) {
537
+ callback = optionsOrCallback;
538
+ options = {};
539
+ }
540
+ else {
541
+ options = optionsOrCallback;
542
+ }
543
+ options = options || {};
544
+ options.otherArgs = options.otherArgs || {};
545
+ options.otherArgs.headers = options.otherArgs.headers || {};
546
+ options.otherArgs.headers['x-goog-request-params'] =
547
+ this._gaxModule.routingHeader.fromParams({
548
+ parent: (_a = request.parent) !== null && _a !== void 0 ? _a : '',
549
+ });
550
+ this.initialize();
551
+ return this.innerApiCalls.importCompletionSuggestions(request, options, callback);
552
+ }
553
+ /**
554
+ * Check the status of the long running operation returned by `importCompletionSuggestions()`.
555
+ * @param {String} name
556
+ * The operation name that will be passed.
557
+ * @returns {Promise} - The promise which resolves to an object.
558
+ * The decoded operation object has result and metadata field to get information from.
559
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
560
+ * for more details and examples.
561
+ * @example <caption>include:samples/generated/v1beta/completion_service.import_completion_suggestions.js</caption>
562
+ * region_tag:discoveryengine_v1beta_generated_CompletionService_ImportCompletionSuggestions_async
563
+ */
564
+ async checkImportCompletionSuggestionsProgress(name) {
565
+ const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({ name });
566
+ const [operation] = await this.operationsClient.getOperation(request);
567
+ const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.importCompletionSuggestions, this._gaxModule.createDefaultBackoffSettings());
568
+ return decodeOperation;
569
+ }
570
+ purgeCompletionSuggestions(request, optionsOrCallback, callback) {
571
+ var _a;
572
+ request = request || {};
573
+ let options;
574
+ if (typeof optionsOrCallback === 'function' && callback === undefined) {
575
+ callback = optionsOrCallback;
576
+ options = {};
577
+ }
578
+ else {
579
+ options = optionsOrCallback;
580
+ }
581
+ options = options || {};
582
+ options.otherArgs = options.otherArgs || {};
583
+ options.otherArgs.headers = options.otherArgs.headers || {};
584
+ options.otherArgs.headers['x-goog-request-params'] =
585
+ this._gaxModule.routingHeader.fromParams({
586
+ parent: (_a = request.parent) !== null && _a !== void 0 ? _a : '',
587
+ });
588
+ this.initialize();
589
+ return this.innerApiCalls.purgeCompletionSuggestions(request, options, callback);
590
+ }
591
+ /**
592
+ * Check the status of the long running operation returned by `purgeCompletionSuggestions()`.
593
+ * @param {String} name
594
+ * The operation name that will be passed.
595
+ * @returns {Promise} - The promise which resolves to an object.
596
+ * The decoded operation object has result and metadata field to get information from.
597
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
598
+ * for more details and examples.
599
+ * @example <caption>include:samples/generated/v1beta/completion_service.purge_completion_suggestions.js</caption>
600
+ * region_tag:discoveryengine_v1beta_generated_CompletionService_PurgeCompletionSuggestions_async
601
+ */
602
+ async checkPurgeCompletionSuggestionsProgress(name) {
603
+ const request = new this._gaxModule.operationsProtos.google.longrunning.GetOperationRequest({ name });
604
+ const [operation] = await this.operationsClient.getOperation(request);
605
+ const decodeOperation = new this._gaxModule.Operation(operation, this.descriptors.longrunning.purgeCompletionSuggestions, this._gaxModule.createDefaultBackoffSettings());
606
+ return decodeOperation;
607
+ }
524
608
  /**
525
609
  * Gets information about a location.
526
610
  *
@@ -46,6 +46,16 @@
46
46
  "timeout_millis": 5000,
47
47
  "retry_codes_name": "unavailable",
48
48
  "retry_params_name": "319f27672a8be83550d842a373549dd84649a57e"
49
+ },
50
+ "ImportCompletionSuggestions": {
51
+ "timeout_millis": 5000,
52
+ "retry_codes_name": "unavailable",
53
+ "retry_params_name": "319f27672a8be83550d842a373549dd84649a57e"
54
+ },
55
+ "PurgeCompletionSuggestions": {
56
+ "timeout_millis": 5000,
57
+ "retry_codes_name": "unavailable",
58
+ "retry_params_name": "319f27672a8be83550d842a373549dd84649a57e"
49
59
  }
50
60
  }
51
61
  }
@@ -363,6 +363,24 @@ export declare class ConversationalSearchServiceClient {
363
363
  *
364
364
  * The field must be a UTF-8 encoded string with a length limit of 128
365
365
  * characters. Otherwise, an `INVALID_ARGUMENT` error is returned.
366
+ * @param {number[]} request.userLabels
367
+ * The user labels applied to a resource must meet the following requirements:
368
+ *
369
+ * * Each resource can have multiple labels, up to a maximum of 64.
370
+ * * Each label must be a key-value pair.
371
+ * * Keys have a minimum length of 1 character and a maximum length of 63
372
+ * characters and cannot be empty. Values can be empty and have a maximum
373
+ * length of 63 characters.
374
+ * * Keys and values can contain only lowercase letters, numeric characters,
375
+ * underscores, and dashes. All characters must use UTF-8 encoding, and
376
+ * international characters are allowed.
377
+ * * The key portion of a label must be unique. However, you can use the same
378
+ * key with multiple resources.
379
+ * * Keys must start with a lowercase letter or international character.
380
+ *
381
+ * See [Google Cloud
382
+ * Document](https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements)
383
+ * for more details.
366
384
  * @param {object} [options]
367
385
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
368
386
  * @returns {Promise} - The promise which resolves to an array.
@@ -218,6 +218,15 @@ export declare class DataStoreServiceClient {
218
218
  * If the data store is not configured as site
219
219
  * search (GENERIC vertical and PUBLIC_WEBSITE content_config), this flag will
220
220
  * be ignored.
221
+ * @param {boolean} request.skipDefaultSchemaCreation
222
+ * A boolean flag indicating whether to skip the default schema creation for
223
+ * the data store. Only enable this flag if you are certain that the default
224
+ * schema is incompatible with your use case.
225
+ *
226
+ * If set to true, you must manually create a schema for the data store before
227
+ * any documents can be ingested.
228
+ *
229
+ * This flag cannot be specified if `data_store.starting_schema` is specified.
221
230
  * @param {object} [options]
222
231
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
223
232
  * @returns {Promise} - The promise which resolves to an array.
@@ -291,6 +291,8 @@ export declare class DocumentServiceClient {
291
291
  * Cloud SQL input source.
292
292
  * @param {google.cloud.discoveryengine.v1beta.FirestoreSource} request.firestoreSource
293
293
  * Firestore input source.
294
+ * @param {google.cloud.discoveryengine.v1beta.AlloyDbSource} request.alloyDbSource
295
+ * AlloyDB input source.
294
296
  * @param {google.cloud.discoveryengine.v1beta.BigtableSource} request.bigtableSource
295
297
  * Cloud Bigtable input source.
296
298
  * @param {string} request.parent
@@ -214,6 +214,17 @@ export declare class SearchServiceClient {
214
214
  * Highly recommended for analytics.
215
215
  * {@link protos.google.cloud.discoveryengine.v1beta.UserInfo.user_agent|UserInfo.user_agent}
216
216
  * is used to deduce `device_type` for analytics.
217
+ * @param {string} request.languageCode
218
+ * The BCP-47 language code, such as "en-US" or "sr-Latn". For more
219
+ * information, see [Standard
220
+ * fields](https://cloud.google.com/apis/design/standard_fields). This field
221
+ * helps to better interpret the query. If a value isn't specified, the query
222
+ * language code is automatically detected, which may not be accurate.
223
+ * @param {string} request.regionCode
224
+ * The Unicode country/region code (CLDR) of a location, such as "US" and
225
+ * "419". For more information, see [Standard
226
+ * fields](https://cloud.google.com/apis/design/standard_fields). If set,
227
+ * then results will be boosted based on the region_code provided.
217
228
  * @param {number[]} request.facetSpecs
218
229
  * Facet specifications for faceted search. If empty, no facets are returned.
219
230
  *
@@ -321,6 +332,44 @@ export declare class SearchServiceClient {
321
332
  * See [Google Cloud
322
333
  * Document](https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements)
323
334
  * for more details.
335
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.NaturalLanguageQueryUnderstandingSpec} request.naturalLanguageQueryUnderstandingSpec
336
+ * If `naturalLanguageQueryUnderstandingSpec` is not specified, no additional
337
+ * natural language query understanding will be done.
338
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.SearchAsYouTypeSpec} request.searchAsYouTypeSpec
339
+ * Search as you type configuration. Only supported for the
340
+ * {@link protos.google.cloud.discoveryengine.v1beta.IndustryVertical.MEDIA|IndustryVertical.MEDIA}
341
+ * vertical.
342
+ * @param {string} request.session
343
+ * The session resource name. Optional.
344
+ *
345
+ * Session allows users to do multi-turn /search API calls or coordination
346
+ * between /search API calls and /answer API calls.
347
+ *
348
+ * Example #1 (multi-turn /search API calls):
349
+ * 1. Call /search API with the auto-session mode (see below).
350
+ * 2. Call /search API with the session ID generated in the first call.
351
+ * Here, the previous search query gets considered in query
352
+ * standing. I.e., if the first query is "How did Alphabet do in 2022?"
353
+ * and the current query is "How about 2023?", the current query will
354
+ * be interpreted as "How did Alphabet do in 2023?".
355
+ *
356
+ * Example #2 (coordination between /search API calls and /answer API calls):
357
+ * 1. Call /search API with the auto-session mode (see below).
358
+ * 2. Call /answer API with the session ID generated in the first call.
359
+ * Here, the answer generation happens in the context of the search
360
+ * results from the first search call.
361
+ *
362
+ * Auto-session mode: when `projects/.../sessions/-` is used, a new session
363
+ * gets automatically created. Otherwise, users can use the create-session API
364
+ * to create a session manually.
365
+ *
366
+ * Multi-turn Search feature is currently at private GA stage. Please use
367
+ * v1alpha or v1beta version instead before we launch this feature to public
368
+ * GA. Or ask for allowlisting through Google Support team.
369
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.SessionSpec} request.sessionSpec
370
+ * Session specification.
371
+ *
372
+ * Can be used only when `session` is set.
324
373
  * @param {object} [options]
325
374
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
326
375
  * @returns {Promise} - The promise which resolves to an array.
@@ -438,6 +487,17 @@ export declare class SearchServiceClient {
438
487
  * Highly recommended for analytics.
439
488
  * {@link protos.google.cloud.discoveryengine.v1beta.UserInfo.user_agent|UserInfo.user_agent}
440
489
  * is used to deduce `device_type` for analytics.
490
+ * @param {string} request.languageCode
491
+ * The BCP-47 language code, such as "en-US" or "sr-Latn". For more
492
+ * information, see [Standard
493
+ * fields](https://cloud.google.com/apis/design/standard_fields). This field
494
+ * helps to better interpret the query. If a value isn't specified, the query
495
+ * language code is automatically detected, which may not be accurate.
496
+ * @param {string} request.regionCode
497
+ * The Unicode country/region code (CLDR) of a location, such as "US" and
498
+ * "419". For more information, see [Standard
499
+ * fields](https://cloud.google.com/apis/design/standard_fields). If set,
500
+ * then results will be boosted based on the region_code provided.
441
501
  * @param {number[]} request.facetSpecs
442
502
  * Facet specifications for faceted search. If empty, no facets are returned.
443
503
  *
@@ -545,6 +605,44 @@ export declare class SearchServiceClient {
545
605
  * See [Google Cloud
546
606
  * Document](https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements)
547
607
  * for more details.
608
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.NaturalLanguageQueryUnderstandingSpec} request.naturalLanguageQueryUnderstandingSpec
609
+ * If `naturalLanguageQueryUnderstandingSpec` is not specified, no additional
610
+ * natural language query understanding will be done.
611
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.SearchAsYouTypeSpec} request.searchAsYouTypeSpec
612
+ * Search as you type configuration. Only supported for the
613
+ * {@link protos.google.cloud.discoveryengine.v1beta.IndustryVertical.MEDIA|IndustryVertical.MEDIA}
614
+ * vertical.
615
+ * @param {string} request.session
616
+ * The session resource name. Optional.
617
+ *
618
+ * Session allows users to do multi-turn /search API calls or coordination
619
+ * between /search API calls and /answer API calls.
620
+ *
621
+ * Example #1 (multi-turn /search API calls):
622
+ * 1. Call /search API with the auto-session mode (see below).
623
+ * 2. Call /search API with the session ID generated in the first call.
624
+ * Here, the previous search query gets considered in query
625
+ * standing. I.e., if the first query is "How did Alphabet do in 2022?"
626
+ * and the current query is "How about 2023?", the current query will
627
+ * be interpreted as "How did Alphabet do in 2023?".
628
+ *
629
+ * Example #2 (coordination between /search API calls and /answer API calls):
630
+ * 1. Call /search API with the auto-session mode (see below).
631
+ * 2. Call /answer API with the session ID generated in the first call.
632
+ * Here, the answer generation happens in the context of the search
633
+ * results from the first search call.
634
+ *
635
+ * Auto-session mode: when `projects/.../sessions/-` is used, a new session
636
+ * gets automatically created. Otherwise, users can use the create-session API
637
+ * to create a session manually.
638
+ *
639
+ * Multi-turn Search feature is currently at private GA stage. Please use
640
+ * v1alpha or v1beta version instead before we launch this feature to public
641
+ * GA. Or ask for allowlisting through Google Support team.
642
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.SessionSpec} request.sessionSpec
643
+ * Session specification.
644
+ *
645
+ * Can be used only when `session` is set.
548
646
  * @param {object} [options]
549
647
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
550
648
  * @returns {Stream}
@@ -657,6 +755,17 @@ export declare class SearchServiceClient {
657
755
  * Highly recommended for analytics.
658
756
  * {@link protos.google.cloud.discoveryengine.v1beta.UserInfo.user_agent|UserInfo.user_agent}
659
757
  * is used to deduce `device_type` for analytics.
758
+ * @param {string} request.languageCode
759
+ * The BCP-47 language code, such as "en-US" or "sr-Latn". For more
760
+ * information, see [Standard
761
+ * fields](https://cloud.google.com/apis/design/standard_fields). This field
762
+ * helps to better interpret the query. If a value isn't specified, the query
763
+ * language code is automatically detected, which may not be accurate.
764
+ * @param {string} request.regionCode
765
+ * The Unicode country/region code (CLDR) of a location, such as "US" and
766
+ * "419". For more information, see [Standard
767
+ * fields](https://cloud.google.com/apis/design/standard_fields). If set,
768
+ * then results will be boosted based on the region_code provided.
660
769
  * @param {number[]} request.facetSpecs
661
770
  * Facet specifications for faceted search. If empty, no facets are returned.
662
771
  *
@@ -764,6 +873,44 @@ export declare class SearchServiceClient {
764
873
  * See [Google Cloud
765
874
  * Document](https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements)
766
875
  * for more details.
876
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.NaturalLanguageQueryUnderstandingSpec} request.naturalLanguageQueryUnderstandingSpec
877
+ * If `naturalLanguageQueryUnderstandingSpec` is not specified, no additional
878
+ * natural language query understanding will be done.
879
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.SearchAsYouTypeSpec} request.searchAsYouTypeSpec
880
+ * Search as you type configuration. Only supported for the
881
+ * {@link protos.google.cloud.discoveryengine.v1beta.IndustryVertical.MEDIA|IndustryVertical.MEDIA}
882
+ * vertical.
883
+ * @param {string} request.session
884
+ * The session resource name. Optional.
885
+ *
886
+ * Session allows users to do multi-turn /search API calls or coordination
887
+ * between /search API calls and /answer API calls.
888
+ *
889
+ * Example #1 (multi-turn /search API calls):
890
+ * 1. Call /search API with the auto-session mode (see below).
891
+ * 2. Call /search API with the session ID generated in the first call.
892
+ * Here, the previous search query gets considered in query
893
+ * standing. I.e., if the first query is "How did Alphabet do in 2022?"
894
+ * and the current query is "How about 2023?", the current query will
895
+ * be interpreted as "How did Alphabet do in 2023?".
896
+ *
897
+ * Example #2 (coordination between /search API calls and /answer API calls):
898
+ * 1. Call /search API with the auto-session mode (see below).
899
+ * 2. Call /answer API with the session ID generated in the first call.
900
+ * Here, the answer generation happens in the context of the search
901
+ * results from the first search call.
902
+ *
903
+ * Auto-session mode: when `projects/.../sessions/-` is used, a new session
904
+ * gets automatically created. Otherwise, users can use the create-session API
905
+ * to create a session manually.
906
+ *
907
+ * Multi-turn Search feature is currently at private GA stage. Please use
908
+ * v1alpha or v1beta version instead before we launch this feature to public
909
+ * GA. Or ask for allowlisting through Google Support team.
910
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.SessionSpec} request.sessionSpec
911
+ * Session specification.
912
+ *
913
+ * Can be used only when `session` is set.
767
914
  * @param {object} [options]
768
915
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
769
916
  * @returns {Object}
@@ -424,6 +424,17 @@ class SearchServiceClient {
424
424
  * Highly recommended for analytics.
425
425
  * {@link protos.google.cloud.discoveryengine.v1beta.UserInfo.user_agent|UserInfo.user_agent}
426
426
  * is used to deduce `device_type` for analytics.
427
+ * @param {string} request.languageCode
428
+ * The BCP-47 language code, such as "en-US" or "sr-Latn". For more
429
+ * information, see [Standard
430
+ * fields](https://cloud.google.com/apis/design/standard_fields). This field
431
+ * helps to better interpret the query. If a value isn't specified, the query
432
+ * language code is automatically detected, which may not be accurate.
433
+ * @param {string} request.regionCode
434
+ * The Unicode country/region code (CLDR) of a location, such as "US" and
435
+ * "419". For more information, see [Standard
436
+ * fields](https://cloud.google.com/apis/design/standard_fields). If set,
437
+ * then results will be boosted based on the region_code provided.
427
438
  * @param {number[]} request.facetSpecs
428
439
  * Facet specifications for faceted search. If empty, no facets are returned.
429
440
  *
@@ -531,6 +542,44 @@ class SearchServiceClient {
531
542
  * See [Google Cloud
532
543
  * Document](https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements)
533
544
  * for more details.
545
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.NaturalLanguageQueryUnderstandingSpec} request.naturalLanguageQueryUnderstandingSpec
546
+ * If `naturalLanguageQueryUnderstandingSpec` is not specified, no additional
547
+ * natural language query understanding will be done.
548
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.SearchAsYouTypeSpec} request.searchAsYouTypeSpec
549
+ * Search as you type configuration. Only supported for the
550
+ * {@link protos.google.cloud.discoveryengine.v1beta.IndustryVertical.MEDIA|IndustryVertical.MEDIA}
551
+ * vertical.
552
+ * @param {string} request.session
553
+ * The session resource name. Optional.
554
+ *
555
+ * Session allows users to do multi-turn /search API calls or coordination
556
+ * between /search API calls and /answer API calls.
557
+ *
558
+ * Example #1 (multi-turn /search API calls):
559
+ * 1. Call /search API with the auto-session mode (see below).
560
+ * 2. Call /search API with the session ID generated in the first call.
561
+ * Here, the previous search query gets considered in query
562
+ * standing. I.e., if the first query is "How did Alphabet do in 2022?"
563
+ * and the current query is "How about 2023?", the current query will
564
+ * be interpreted as "How did Alphabet do in 2023?".
565
+ *
566
+ * Example #2 (coordination between /search API calls and /answer API calls):
567
+ * 1. Call /search API with the auto-session mode (see below).
568
+ * 2. Call /answer API with the session ID generated in the first call.
569
+ * Here, the answer generation happens in the context of the search
570
+ * results from the first search call.
571
+ *
572
+ * Auto-session mode: when `projects/.../sessions/-` is used, a new session
573
+ * gets automatically created. Otherwise, users can use the create-session API
574
+ * to create a session manually.
575
+ *
576
+ * Multi-turn Search feature is currently at private GA stage. Please use
577
+ * v1alpha or v1beta version instead before we launch this feature to public
578
+ * GA. Or ask for allowlisting through Google Support team.
579
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.SessionSpec} request.sessionSpec
580
+ * Session specification.
581
+ *
582
+ * Can be used only when `session` is set.
534
583
  * @param {object} [options]
535
584
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
536
585
  * @returns {Stream}
@@ -657,6 +706,17 @@ class SearchServiceClient {
657
706
  * Highly recommended for analytics.
658
707
  * {@link protos.google.cloud.discoveryengine.v1beta.UserInfo.user_agent|UserInfo.user_agent}
659
708
  * is used to deduce `device_type` for analytics.
709
+ * @param {string} request.languageCode
710
+ * The BCP-47 language code, such as "en-US" or "sr-Latn". For more
711
+ * information, see [Standard
712
+ * fields](https://cloud.google.com/apis/design/standard_fields). This field
713
+ * helps to better interpret the query. If a value isn't specified, the query
714
+ * language code is automatically detected, which may not be accurate.
715
+ * @param {string} request.regionCode
716
+ * The Unicode country/region code (CLDR) of a location, such as "US" and
717
+ * "419". For more information, see [Standard
718
+ * fields](https://cloud.google.com/apis/design/standard_fields). If set,
719
+ * then results will be boosted based on the region_code provided.
660
720
  * @param {number[]} request.facetSpecs
661
721
  * Facet specifications for faceted search. If empty, no facets are returned.
662
722
  *
@@ -764,6 +824,44 @@ class SearchServiceClient {
764
824
  * See [Google Cloud
765
825
  * Document](https://cloud.google.com/resource-manager/docs/creating-managing-labels#requirements)
766
826
  * for more details.
827
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.NaturalLanguageQueryUnderstandingSpec} request.naturalLanguageQueryUnderstandingSpec
828
+ * If `naturalLanguageQueryUnderstandingSpec` is not specified, no additional
829
+ * natural language query understanding will be done.
830
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.SearchAsYouTypeSpec} request.searchAsYouTypeSpec
831
+ * Search as you type configuration. Only supported for the
832
+ * {@link protos.google.cloud.discoveryengine.v1beta.IndustryVertical.MEDIA|IndustryVertical.MEDIA}
833
+ * vertical.
834
+ * @param {string} request.session
835
+ * The session resource name. Optional.
836
+ *
837
+ * Session allows users to do multi-turn /search API calls or coordination
838
+ * between /search API calls and /answer API calls.
839
+ *
840
+ * Example #1 (multi-turn /search API calls):
841
+ * 1. Call /search API with the auto-session mode (see below).
842
+ * 2. Call /search API with the session ID generated in the first call.
843
+ * Here, the previous search query gets considered in query
844
+ * standing. I.e., if the first query is "How did Alphabet do in 2022?"
845
+ * and the current query is "How about 2023?", the current query will
846
+ * be interpreted as "How did Alphabet do in 2023?".
847
+ *
848
+ * Example #2 (coordination between /search API calls and /answer API calls):
849
+ * 1. Call /search API with the auto-session mode (see below).
850
+ * 2. Call /answer API with the session ID generated in the first call.
851
+ * Here, the answer generation happens in the context of the search
852
+ * results from the first search call.
853
+ *
854
+ * Auto-session mode: when `projects/.../sessions/-` is used, a new session
855
+ * gets automatically created. Otherwise, users can use the create-session API
856
+ * to create a session manually.
857
+ *
858
+ * Multi-turn Search feature is currently at private GA stage. Please use
859
+ * v1alpha or v1beta version instead before we launch this feature to public
860
+ * GA. Or ask for allowlisting through Google Support team.
861
+ * @param {google.cloud.discoveryengine.v1beta.SearchRequest.SessionSpec} request.sessionSpec
862
+ * Session specification.
863
+ *
864
+ * Can be used only when `session` is set.
767
865
  * @param {object} [options]
768
866
  * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
769
867
  * @returns {Object}