@google-cloud/vectorsearch 0.2.0 → 0.4.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 (44) hide show
  1. package/README.md +22 -0
  2. package/build/protos/google/cloud/vectorsearch/v1/common.proto +37 -0
  3. package/build/protos/google/cloud/vectorsearch/v1/data_object.proto +95 -0
  4. package/build/protos/google/cloud/vectorsearch/v1/data_object_search_service.proto +409 -0
  5. package/build/protos/google/cloud/vectorsearch/v1/data_object_service.proto +242 -0
  6. package/build/protos/google/cloud/vectorsearch/v1/embedding_config.proto +74 -0
  7. package/build/protos/google/cloud/vectorsearch/v1/vectorsearch_service.proto +710 -0
  8. package/build/protos/google/cloud/vectorsearch/v1beta/common.proto +4 -1
  9. package/build/protos/google/cloud/vectorsearch/v1beta/data_object.proto +8 -3
  10. package/build/protos/google/cloud/vectorsearch/v1beta/data_object_search_service.proto +71 -40
  11. package/build/protos/google/cloud/vectorsearch/v1beta/data_object_service.proto +11 -2
  12. package/build/protos/google/cloud/vectorsearch/v1beta/embedding_config.proto +3 -0
  13. package/build/protos/google/cloud/vectorsearch/v1beta/vectorsearch_service.proto +85 -15
  14. package/build/protos/protos.d.ts +7493 -161
  15. package/build/protos/protos.js +24251 -6379
  16. package/build/protos/protos.json +2260 -56
  17. package/build/src/index.d.ts +12 -10
  18. package/build/src/index.js +7 -5
  19. package/build/src/index.js.map +1 -1
  20. package/build/src/v1/data_object_search_service_client.d.ts +583 -0
  21. package/build/src/v1/data_object_search_service_client.js +855 -0
  22. package/build/src/v1/data_object_search_service_client.js.map +1 -0
  23. package/build/src/v1/data_object_search_service_client_config.json +58 -0
  24. package/build/src/v1/data_object_search_service_proto_list.json +8 -0
  25. package/build/src/v1/data_object_service_client.d.ts +490 -0
  26. package/build/src/v1/data_object_service_client.js +767 -0
  27. package/build/src/v1/data_object_service_client.js.map +1 -0
  28. package/build/src/v1/data_object_service_client_config.json +73 -0
  29. package/build/src/v1/data_object_service_proto_list.json +8 -0
  30. package/build/src/v1/gapic_metadata.json +277 -0
  31. package/build/src/v1/index.d.ts +3 -0
  32. package/build/src/v1/index.js +27 -0
  33. package/build/src/v1/index.js.map +1 -0
  34. package/build/src/v1/vector_search_service_client.d.ts +1021 -0
  35. package/build/src/v1/vector_search_service_client.js +1387 -0
  36. package/build/src/v1/vector_search_service_client.js.map +1 -0
  37. package/build/src/v1/vector_search_service_client_config.json +88 -0
  38. package/build/src/v1/vector_search_service_proto_list.json +8 -0
  39. package/build/src/v1beta/data_object_search_service_client.d.ts +15 -6
  40. package/build/src/v1beta/data_object_search_service_client.js +10 -4
  41. package/build/src/v1beta/data_object_search_service_client.js.map +1 -1
  42. package/build/src/v1beta/data_object_service_client.d.ts +4 -0
  43. package/build/src/v1beta/data_object_service_client.js.map +1 -1
  44. package/package.json +1 -1
@@ -0,0 +1,1021 @@
1
+ import type * as gax from 'google-gax';
2
+ import type { Callback, CallOptions, Descriptors, ClientOptions, LROperation, PaginationCallback, LocationsClient, LocationProtos } from 'google-gax';
3
+ import { Transform } from 'stream';
4
+ import * as protos from '../../protos/protos';
5
+ /**
6
+ * VectorSearchService provides methods for managing Collection resources, and
7
+ * Collection Index resources. The primary resources offered by this service are
8
+ * Collections which are a container for a set of related JSON data objects, and
9
+ * Collection Indexes which enable efficient ANN search across data objects
10
+ * within a Collection.
11
+ * @class
12
+ * @memberof v1
13
+ */
14
+ export declare class VectorSearchServiceClient {
15
+ private _terminated;
16
+ private _opts;
17
+ private _providedCustomServicePath;
18
+ private _gaxModule;
19
+ private _gaxGrpc;
20
+ private _protos;
21
+ private _defaults;
22
+ private _universeDomain;
23
+ private _servicePath;
24
+ private _log;
25
+ auth: gax.GoogleAuth;
26
+ descriptors: Descriptors;
27
+ warn: (code: string, message: string, warnType?: string) => void;
28
+ innerApiCalls: {
29
+ [name: string]: Function;
30
+ };
31
+ locationsClient: LocationsClient;
32
+ pathTemplates: {
33
+ [name: string]: gax.PathTemplate;
34
+ };
35
+ operationsClient: gax.OperationsClient;
36
+ vectorSearchServiceStub?: Promise<{
37
+ [name: string]: Function;
38
+ }>;
39
+ /**
40
+ * Construct an instance of VectorSearchServiceClient.
41
+ *
42
+ * @param {object} [options] - The configuration object.
43
+ * The options accepted by the constructor are described in detail
44
+ * in [this document](https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#creating-the-client-instance).
45
+ * The common options are:
46
+ * @param {object} [options.credentials] - Credentials object.
47
+ * @param {string} [options.credentials.client_email]
48
+ * @param {string} [options.credentials.private_key]
49
+ * @param {string} [options.email] - Account email address. Required when
50
+ * using a .pem or .p12 keyFilename.
51
+ * @param {string} [options.keyFilename] - Full path to the a .json, .pem, or
52
+ * .p12 key downloaded from the Google Developers Console. If you provide
53
+ * a path to a JSON file, the projectId option below is not necessary.
54
+ * NOTE: .pem and .p12 require you to specify options.email as well.
55
+ * @param {number} [options.port] - The port on which to connect to
56
+ * the remote host.
57
+ * @param {string} [options.projectId] - The project ID from the Google
58
+ * Developer's Console, e.g. 'grape-spaceship-123'. We will also check
59
+ * the environment variable GCLOUD_PROJECT for your project ID. If your
60
+ * app is running in an environment which supports
61
+ * {@link https://cloud.google.com/docs/authentication/application-default-credentials Application Default Credentials},
62
+ * your project ID will be detected automatically.
63
+ * @param {string} [options.apiEndpoint] - The domain name of the
64
+ * API remote host.
65
+ * @param {gax.ClientConfig} [options.clientConfig] - Client configuration override.
66
+ * Follows the structure of {@link gapicConfig}.
67
+ * @param {boolean} [options.fallback] - Use HTTP/1.1 REST mode.
68
+ * For more information, please check the
69
+ * {@link https://github.com/googleapis/gax-nodejs/blob/main/client-libraries.md#http11-rest-api-mode documentation}.
70
+ * @param {gax} [gaxInstance]: loaded instance of `google-gax`. Useful if you
71
+ * need to avoid loading the default gRPC version and want to use the fallback
72
+ * HTTP implementation. Load only fallback version and pass it to the constructor:
73
+ * ```
74
+ * const gax = require('google-gax/build/src/fallback'); // avoids loading google-gax with gRPC
75
+ * const client = new VectorSearchServiceClient({fallback: true}, gax);
76
+ * ```
77
+ */
78
+ constructor(opts?: ClientOptions, gaxInstance?: typeof gax | typeof gax.fallback);
79
+ /**
80
+ * Initialize the client.
81
+ * Performs asynchronous operations (such as authentication) and prepares the client.
82
+ * This function will be called automatically when any class method is called for the
83
+ * first time, but if you need to initialize it before calling an actual method,
84
+ * feel free to call initialize() directly.
85
+ *
86
+ * You can await on this method if you want to make sure the client is initialized.
87
+ *
88
+ * @returns {Promise} A promise that resolves to an authenticated service stub.
89
+ */
90
+ initialize(): Promise<{
91
+ [name: string]: Function;
92
+ }>;
93
+ /**
94
+ * The DNS address for this API service.
95
+ * @deprecated Use the apiEndpoint method of the client instance.
96
+ * @returns {string} The DNS address for this service.
97
+ */
98
+ static get servicePath(): string;
99
+ /**
100
+ * The DNS address for this API service - same as servicePath.
101
+ * @deprecated Use the apiEndpoint method of the client instance.
102
+ * @returns {string} The DNS address for this service.
103
+ */
104
+ static get apiEndpoint(): string;
105
+ /**
106
+ * The DNS address for this API service.
107
+ * @returns {string} The DNS address for this service.
108
+ */
109
+ get apiEndpoint(): string;
110
+ get universeDomain(): string;
111
+ /**
112
+ * The port for this API service.
113
+ * @returns {number} The default port for this service.
114
+ */
115
+ static get port(): number;
116
+ /**
117
+ * The scopes needed to make gRPC calls for every method defined
118
+ * in this service.
119
+ * @returns {string[]} List of default scopes.
120
+ */
121
+ static get scopes(): string[];
122
+ getProjectId(): Promise<string>;
123
+ getProjectId(callback: Callback<string, undefined, undefined>): void;
124
+ /**
125
+ * Gets details of a single Collection.
126
+ *
127
+ * @param {Object} request
128
+ * The request object that will be sent.
129
+ * @param {string} request.name
130
+ * Required. Name of the resource
131
+ * @param {object} [options]
132
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
133
+ * @returns {Promise} - The promise which resolves to an array.
134
+ * The first element of the array is an object representing {@link protos.google.cloud.vectorsearch.v1.Collection|Collection}.
135
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
136
+ * for more details and examples.
137
+ * @example <caption>include:samples/generated/v1/vector_search_service.get_collection.js</caption>
138
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_GetCollection_async
139
+ */
140
+ getCollection(request?: protos.google.cloud.vectorsearch.v1.IGetCollectionRequest, options?: CallOptions): Promise<[
141
+ protos.google.cloud.vectorsearch.v1.ICollection,
142
+ protos.google.cloud.vectorsearch.v1.IGetCollectionRequest | undefined,
143
+ {} | undefined
144
+ ]>;
145
+ getCollection(request: protos.google.cloud.vectorsearch.v1.IGetCollectionRequest, options: CallOptions, callback: Callback<protos.google.cloud.vectorsearch.v1.ICollection, protos.google.cloud.vectorsearch.v1.IGetCollectionRequest | null | undefined, {} | null | undefined>): void;
146
+ getCollection(request: protos.google.cloud.vectorsearch.v1.IGetCollectionRequest, callback: Callback<protos.google.cloud.vectorsearch.v1.ICollection, protos.google.cloud.vectorsearch.v1.IGetCollectionRequest | null | undefined, {} | null | undefined>): void;
147
+ /**
148
+ * Gets details of a single Index.
149
+ *
150
+ * @param {Object} request
151
+ * The request object that will be sent.
152
+ * @param {string} request.name
153
+ * Required. Name of the resource
154
+ * @param {object} [options]
155
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
156
+ * @returns {Promise} - The promise which resolves to an array.
157
+ * The first element of the array is an object representing {@link protos.google.cloud.vectorsearch.v1.Index|Index}.
158
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
159
+ * for more details and examples.
160
+ * @example <caption>include:samples/generated/v1/vector_search_service.get_index.js</caption>
161
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_GetIndex_async
162
+ */
163
+ getIndex(request?: protos.google.cloud.vectorsearch.v1.IGetIndexRequest, options?: CallOptions): Promise<[
164
+ protos.google.cloud.vectorsearch.v1.IIndex,
165
+ protos.google.cloud.vectorsearch.v1.IGetIndexRequest | undefined,
166
+ {} | undefined
167
+ ]>;
168
+ getIndex(request: protos.google.cloud.vectorsearch.v1.IGetIndexRequest, options: CallOptions, callback: Callback<protos.google.cloud.vectorsearch.v1.IIndex, protos.google.cloud.vectorsearch.v1.IGetIndexRequest | null | undefined, {} | null | undefined>): void;
169
+ getIndex(request: protos.google.cloud.vectorsearch.v1.IGetIndexRequest, callback: Callback<protos.google.cloud.vectorsearch.v1.IIndex, protos.google.cloud.vectorsearch.v1.IGetIndexRequest | null | undefined, {} | null | undefined>): void;
170
+ /**
171
+ * Creates a new Collection in a given project and location.
172
+ *
173
+ * @param {Object} request
174
+ * The request object that will be sent.
175
+ * @param {string} request.parent
176
+ * Required. Value for parent.
177
+ * @param {string} request.collectionId
178
+ * Required. ID of the Collection to create.
179
+ * The id must be 1-63 characters long, and comply with
180
+ * [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
181
+ * Specifically, it must be 1-63 characters long and match the regular
182
+ * expression `[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?`.
183
+ * @param {google.cloud.vectorsearch.v1.Collection} request.collection
184
+ * Required. The resource being created
185
+ * @param {string} [request.requestId]
186
+ * Optional. An optional request ID to identify requests. Specify a unique
187
+ * request ID so that if you must retry your request, the server will know to
188
+ * ignore the request if it has already been completed. The server will
189
+ * guarantee that for at least 60 minutes since the first request.
190
+ *
191
+ * For example, consider a situation where you make an initial request and the
192
+ * request times out. If you make the request again with the same request
193
+ * ID, the server can check if original operation with the same request ID
194
+ * was received, and if so, will ignore the second request. This prevents
195
+ * clients from accidentally creating duplicate commitments.
196
+ *
197
+ * The request ID must be a valid UUID with the exception that zero UUID is
198
+ * not supported (00000000-0000-0000-0000-000000000000).
199
+ * @param {object} [options]
200
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
201
+ * @returns {Promise} - The promise which resolves to an array.
202
+ * The first element of the array is an object representing
203
+ * a long running operation. Its `promise()` method returns a promise
204
+ * you can `await` for.
205
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
206
+ * for more details and examples.
207
+ * @example <caption>include:samples/generated/v1/vector_search_service.create_collection.js</caption>
208
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_CreateCollection_async
209
+ */
210
+ createCollection(request?: protos.google.cloud.vectorsearch.v1.ICreateCollectionRequest, options?: CallOptions): Promise<[
211
+ LROperation<protos.google.cloud.vectorsearch.v1.ICollection, protos.google.cloud.vectorsearch.v1.IOperationMetadata>,
212
+ protos.google.longrunning.IOperation | undefined,
213
+ {} | undefined
214
+ ]>;
215
+ createCollection(request: protos.google.cloud.vectorsearch.v1.ICreateCollectionRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.vectorsearch.v1.ICollection, protos.google.cloud.vectorsearch.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
216
+ createCollection(request: protos.google.cloud.vectorsearch.v1.ICreateCollectionRequest, callback: Callback<LROperation<protos.google.cloud.vectorsearch.v1.ICollection, protos.google.cloud.vectorsearch.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
217
+ /**
218
+ * Check the status of the long running operation returned by `createCollection()`.
219
+ * @param {String} name
220
+ * The operation name that will be passed.
221
+ * @returns {Promise} - The promise which resolves to an object.
222
+ * The decoded operation object has result and metadata field to get information from.
223
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
224
+ * for more details and examples.
225
+ * @example <caption>include:samples/generated/v1/vector_search_service.create_collection.js</caption>
226
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_CreateCollection_async
227
+ */
228
+ checkCreateCollectionProgress(name: string): Promise<LROperation<protos.google.cloud.vectorsearch.v1.Collection, protos.google.cloud.vectorsearch.v1.OperationMetadata>>;
229
+ /**
230
+ * Updates the parameters of a single Collection.
231
+ *
232
+ * @param {Object} request
233
+ * The request object that will be sent.
234
+ * @param {google.protobuf.FieldMask} [request.updateMask]
235
+ * Optional. Field mask is used to specify the fields to be overwritten in the
236
+ * Collection resource by the update.
237
+ * The fields specified in the update_mask are relative to the resource, not
238
+ * the full request. A field will be overwritten if it is in the mask. If the
239
+ * user does not provide a mask then all fields present in the request will be
240
+ * overwritten.
241
+ *
242
+ * The following fields support update: `display_name`, `description`,
243
+ * `labels`, `data_schema`, `vector_schema`.
244
+ * For `data_schema` and `vector_schema`, fields can only be added, not
245
+ * deleted, but `vertex_embedding_config` in `vector_schema` can be added or
246
+ * removed.
247
+ * Partial updates for `data_schema` and `vector_schema` are also supported
248
+ * by using sub-field paths in `update_mask`, e.g.
249
+ * `data_schema.properties.foo` or `vector_schema.my_vector_field`.
250
+ *
251
+ * If `*` is provided in the update_mask, full replacement will be performed.
252
+ * @param {google.cloud.vectorsearch.v1.Collection} request.collection
253
+ * Required. The resource being updated
254
+ * @param {string} [request.requestId]
255
+ * Optional. An optional request ID to identify requests. Specify a unique
256
+ * request ID so that if you must retry your request, the server will know to
257
+ * ignore the request if it has already been completed. The server will
258
+ * guarantee that for at least 60 minutes since the first request.
259
+ *
260
+ * For example, consider a situation where you make an initial request and the
261
+ * request times out. If you make the request again with the same request
262
+ * ID, the server can check if original operation with the same request ID
263
+ * was received, and if so, will ignore the second request. This prevents
264
+ * clients from accidentally creating duplicate commitments.
265
+ *
266
+ * The request ID must be a valid UUID with the exception that zero UUID is
267
+ * not supported (00000000-0000-0000-0000-000000000000).
268
+ * @param {object} [options]
269
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
270
+ * @returns {Promise} - The promise which resolves to an array.
271
+ * The first element of the array is an object representing
272
+ * a long running operation. Its `promise()` method returns a promise
273
+ * you can `await` for.
274
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
275
+ * for more details and examples.
276
+ * @example <caption>include:samples/generated/v1/vector_search_service.update_collection.js</caption>
277
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_UpdateCollection_async
278
+ */
279
+ updateCollection(request?: protos.google.cloud.vectorsearch.v1.IUpdateCollectionRequest, options?: CallOptions): Promise<[
280
+ LROperation<protos.google.cloud.vectorsearch.v1.ICollection, protos.google.cloud.vectorsearch.v1.IOperationMetadata>,
281
+ protos.google.longrunning.IOperation | undefined,
282
+ {} | undefined
283
+ ]>;
284
+ updateCollection(request: protos.google.cloud.vectorsearch.v1.IUpdateCollectionRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.vectorsearch.v1.ICollection, protos.google.cloud.vectorsearch.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
285
+ updateCollection(request: protos.google.cloud.vectorsearch.v1.IUpdateCollectionRequest, callback: Callback<LROperation<protos.google.cloud.vectorsearch.v1.ICollection, protos.google.cloud.vectorsearch.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
286
+ /**
287
+ * Check the status of the long running operation returned by `updateCollection()`.
288
+ * @param {String} name
289
+ * The operation name that will be passed.
290
+ * @returns {Promise} - The promise which resolves to an object.
291
+ * The decoded operation object has result and metadata field to get information from.
292
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
293
+ * for more details and examples.
294
+ * @example <caption>include:samples/generated/v1/vector_search_service.update_collection.js</caption>
295
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_UpdateCollection_async
296
+ */
297
+ checkUpdateCollectionProgress(name: string): Promise<LROperation<protos.google.cloud.vectorsearch.v1.Collection, protos.google.cloud.vectorsearch.v1.OperationMetadata>>;
298
+ /**
299
+ * Deletes a single Collection.
300
+ *
301
+ * @param {Object} request
302
+ * The request object that will be sent.
303
+ * @param {string} request.name
304
+ * Required. Name of the resource
305
+ * @param {string} [request.requestId]
306
+ * Optional. An optional request ID to identify requests. Specify a unique
307
+ * request ID so that if you must retry your request, the server will know to
308
+ * ignore the request if it has already been completed. The server will
309
+ * guarantee that for at least 60 minutes after the first request.
310
+ *
311
+ * For example, consider a situation where you make an initial request and the
312
+ * request times out. If you make the request again with the same request
313
+ * ID, the server can check if original operation with the same request ID
314
+ * was received, and if so, will ignore the second request. This prevents
315
+ * clients from accidentally creating duplicate commitments.
316
+ *
317
+ * The request ID must be a valid UUID with the exception that zero UUID is
318
+ * not supported (00000000-0000-0000-0000-000000000000).
319
+ * @param {object} [options]
320
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
321
+ * @returns {Promise} - The promise which resolves to an array.
322
+ * The first element of the array is an object representing
323
+ * a long running operation. Its `promise()` method returns a promise
324
+ * you can `await` for.
325
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
326
+ * for more details and examples.
327
+ * @example <caption>include:samples/generated/v1/vector_search_service.delete_collection.js</caption>
328
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_DeleteCollection_async
329
+ */
330
+ deleteCollection(request?: protos.google.cloud.vectorsearch.v1.IDeleteCollectionRequest, options?: CallOptions): Promise<[
331
+ LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.vectorsearch.v1.IOperationMetadata>,
332
+ protos.google.longrunning.IOperation | undefined,
333
+ {} | undefined
334
+ ]>;
335
+ deleteCollection(request: protos.google.cloud.vectorsearch.v1.IDeleteCollectionRequest, options: CallOptions, callback: Callback<LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.vectorsearch.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
336
+ deleteCollection(request: protos.google.cloud.vectorsearch.v1.IDeleteCollectionRequest, callback: Callback<LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.vectorsearch.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
337
+ /**
338
+ * Check the status of the long running operation returned by `deleteCollection()`.
339
+ * @param {String} name
340
+ * The operation name that will be passed.
341
+ * @returns {Promise} - The promise which resolves to an object.
342
+ * The decoded operation object has result and metadata field to get information from.
343
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
344
+ * for more details and examples.
345
+ * @example <caption>include:samples/generated/v1/vector_search_service.delete_collection.js</caption>
346
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_DeleteCollection_async
347
+ */
348
+ checkDeleteCollectionProgress(name: string): Promise<LROperation<protos.google.protobuf.Empty, protos.google.cloud.vectorsearch.v1.OperationMetadata>>;
349
+ /**
350
+ * Creates a new Index in a given project and location.
351
+ *
352
+ * @param {Object} request
353
+ * The request object that will be sent.
354
+ * @param {string} request.parent
355
+ * Required. The resource name of the Collection for which to create the
356
+ * Index. Format:
357
+ * `projects/{project}/locations/{location}/collections/{collection}`
358
+ * @param {string} request.indexId
359
+ * Required. ID of the Index to create.
360
+ * The id must be 1-63 characters long, and comply with
361
+ * [RFC1035](https://www.ietf.org/rfc/rfc1035.txt).
362
+ * Specifically, it must be 1-63 characters long and match the regular
363
+ * expression `[a-z](?:[-a-z0-9]{0,61}[a-z0-9])?`.
364
+ * @param {google.cloud.vectorsearch.v1.Index} request.index
365
+ * Required. The resource being created
366
+ * @param {string} [request.requestId]
367
+ * Optional. An optional request ID to identify requests. Specify a unique
368
+ * request ID so that if you must retry your request, the server will know to
369
+ * ignore the request if it has already been completed. The server will
370
+ * guarantee that for at least 60 minutes since the first request.
371
+ *
372
+ * For example, consider a situation where you make an initial request and the
373
+ * request times out. If you make the request again with the same request
374
+ * ID, the server can check if original operation with the same request ID
375
+ * was received, and if so, will ignore the second request. This prevents
376
+ * clients from accidentally creating duplicate commitments.
377
+ *
378
+ * The request ID must be a valid UUID with the exception that zero UUID is
379
+ * not supported (00000000-0000-0000-0000-000000000000).
380
+ * @param {object} [options]
381
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
382
+ * @returns {Promise} - The promise which resolves to an array.
383
+ * The first element of the array is an object representing
384
+ * a long running operation. Its `promise()` method returns a promise
385
+ * you can `await` for.
386
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
387
+ * for more details and examples.
388
+ * @example <caption>include:samples/generated/v1/vector_search_service.create_index.js</caption>
389
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_CreateIndex_async
390
+ */
391
+ createIndex(request?: protos.google.cloud.vectorsearch.v1.ICreateIndexRequest, options?: CallOptions): Promise<[
392
+ LROperation<protos.google.cloud.vectorsearch.v1.IIndex, protos.google.cloud.vectorsearch.v1.IOperationMetadata>,
393
+ protos.google.longrunning.IOperation | undefined,
394
+ {} | undefined
395
+ ]>;
396
+ createIndex(request: protos.google.cloud.vectorsearch.v1.ICreateIndexRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.vectorsearch.v1.IIndex, protos.google.cloud.vectorsearch.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
397
+ createIndex(request: protos.google.cloud.vectorsearch.v1.ICreateIndexRequest, callback: Callback<LROperation<protos.google.cloud.vectorsearch.v1.IIndex, protos.google.cloud.vectorsearch.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
398
+ /**
399
+ * Check the status of the long running operation returned by `createIndex()`.
400
+ * @param {String} name
401
+ * The operation name that will be passed.
402
+ * @returns {Promise} - The promise which resolves to an object.
403
+ * The decoded operation object has result and metadata field to get information from.
404
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
405
+ * for more details and examples.
406
+ * @example <caption>include:samples/generated/v1/vector_search_service.create_index.js</caption>
407
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_CreateIndex_async
408
+ */
409
+ checkCreateIndexProgress(name: string): Promise<LROperation<protos.google.cloud.vectorsearch.v1.Index, protos.google.cloud.vectorsearch.v1.OperationMetadata>>;
410
+ /**
411
+ * Deletes a single Index.
412
+ *
413
+ * @param {Object} request
414
+ * The request object that will be sent.
415
+ * @param {string} request.name
416
+ * Required. The resource name of the Index to delete.
417
+ * Format:
418
+ * `projects/{project}/locations/{location}/collections/{collection}/indexes/{index}`
419
+ * @param {string} [request.requestId]
420
+ * Optional. An optional request ID to identify requests. Specify a unique
421
+ * request ID so that if you must retry your request, the server will know to
422
+ * ignore the request if it has already been completed. The server will
423
+ * guarantee that for at least 60 minutes since the first request.
424
+ *
425
+ * For example, consider a situation where you make an initial request and the
426
+ * request times out. If you make the request again with the same request
427
+ * ID, the server can check if original operation with the same request ID
428
+ * was received, and if so, will ignore the second request. This prevents
429
+ * clients from accidentally creating duplicate commitments.
430
+ *
431
+ * The request ID must be a valid UUID with the exception that zero UUID is
432
+ * not supported (00000000-0000-0000-0000-000000000000).
433
+ * @param {object} [options]
434
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
435
+ * @returns {Promise} - The promise which resolves to an array.
436
+ * The first element of the array is an object representing
437
+ * a long running operation. Its `promise()` method returns a promise
438
+ * you can `await` for.
439
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
440
+ * for more details and examples.
441
+ * @example <caption>include:samples/generated/v1/vector_search_service.delete_index.js</caption>
442
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_DeleteIndex_async
443
+ */
444
+ deleteIndex(request?: protos.google.cloud.vectorsearch.v1.IDeleteIndexRequest, options?: CallOptions): Promise<[
445
+ LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.vectorsearch.v1.IOperationMetadata>,
446
+ protos.google.longrunning.IOperation | undefined,
447
+ {} | undefined
448
+ ]>;
449
+ deleteIndex(request: protos.google.cloud.vectorsearch.v1.IDeleteIndexRequest, options: CallOptions, callback: Callback<LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.vectorsearch.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
450
+ deleteIndex(request: protos.google.cloud.vectorsearch.v1.IDeleteIndexRequest, callback: Callback<LROperation<protos.google.protobuf.IEmpty, protos.google.cloud.vectorsearch.v1.IOperationMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
451
+ /**
452
+ * Check the status of the long running operation returned by `deleteIndex()`.
453
+ * @param {String} name
454
+ * The operation name that will be passed.
455
+ * @returns {Promise} - The promise which resolves to an object.
456
+ * The decoded operation object has result and metadata field to get information from.
457
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
458
+ * for more details and examples.
459
+ * @example <caption>include:samples/generated/v1/vector_search_service.delete_index.js</caption>
460
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_DeleteIndex_async
461
+ */
462
+ checkDeleteIndexProgress(name: string): Promise<LROperation<protos.google.protobuf.Empty, protos.google.cloud.vectorsearch.v1.OperationMetadata>>;
463
+ /**
464
+ * Initiates a Long-Running Operation to import DataObjects into a Collection.
465
+ *
466
+ * @param {Object} request
467
+ * The request object that will be sent.
468
+ * @param {google.cloud.vectorsearch.v1.ImportDataObjectsRequest.GcsImportConfig} request.gcsImport
469
+ * The Cloud Storage location of the input content.
470
+ * @param {string} request.name
471
+ * Required. The resource name of the Collection to import DataObjects into.
472
+ * Format: `projects/{project}/locations/{location}/collections/{collection}`.
473
+ * @param {object} [options]
474
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
475
+ * @returns {Promise} - The promise which resolves to an array.
476
+ * The first element of the array is an object representing
477
+ * a long running operation. Its `promise()` method returns a promise
478
+ * you can `await` for.
479
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
480
+ * for more details and examples.
481
+ * @example <caption>include:samples/generated/v1/vector_search_service.import_data_objects.js</caption>
482
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_ImportDataObjects_async
483
+ */
484
+ importDataObjects(request?: protos.google.cloud.vectorsearch.v1.IImportDataObjectsRequest, options?: CallOptions): Promise<[
485
+ LROperation<protos.google.cloud.vectorsearch.v1.IImportDataObjectsResponse, protos.google.cloud.vectorsearch.v1.IImportDataObjectsMetadata>,
486
+ protos.google.longrunning.IOperation | undefined,
487
+ {} | undefined
488
+ ]>;
489
+ importDataObjects(request: protos.google.cloud.vectorsearch.v1.IImportDataObjectsRequest, options: CallOptions, callback: Callback<LROperation<protos.google.cloud.vectorsearch.v1.IImportDataObjectsResponse, protos.google.cloud.vectorsearch.v1.IImportDataObjectsMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
490
+ importDataObjects(request: protos.google.cloud.vectorsearch.v1.IImportDataObjectsRequest, callback: Callback<LROperation<protos.google.cloud.vectorsearch.v1.IImportDataObjectsResponse, protos.google.cloud.vectorsearch.v1.IImportDataObjectsMetadata>, protos.google.longrunning.IOperation | null | undefined, {} | null | undefined>): void;
491
+ /**
492
+ * Check the status of the long running operation returned by `importDataObjects()`.
493
+ * @param {String} name
494
+ * The operation name that will be passed.
495
+ * @returns {Promise} - The promise which resolves to an object.
496
+ * The decoded operation object has result and metadata field to get information from.
497
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#long-running-operations | documentation }
498
+ * for more details and examples.
499
+ * @example <caption>include:samples/generated/v1/vector_search_service.import_data_objects.js</caption>
500
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_ImportDataObjects_async
501
+ */
502
+ checkImportDataObjectsProgress(name: string): Promise<LROperation<protos.google.cloud.vectorsearch.v1.ImportDataObjectsResponse, protos.google.cloud.vectorsearch.v1.ImportDataObjectsMetadata>>;
503
+ /**
504
+ * Lists Collections in a given project and location.
505
+ *
506
+ * @param {Object} request
507
+ * The request object that will be sent.
508
+ * @param {string} request.parent
509
+ * Required. Parent value for ListCollectionsRequest
510
+ * @param {number} [request.pageSize]
511
+ * Optional. Requested page size. Server may return fewer items than
512
+ * requested. If unspecified, server will pick an appropriate default.
513
+ * @param {string} [request.pageToken]
514
+ * Optional. A token identifying a page of results the server should return.
515
+ * @param {string} [request.filter]
516
+ * Optional. Filtering results
517
+ * @param {string} [request.orderBy]
518
+ * Optional. Hint for how to order the results
519
+ * @param {object} [options]
520
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
521
+ * @returns {Promise} - The promise which resolves to an array.
522
+ * The first element of the array is Array of {@link protos.google.cloud.vectorsearch.v1.Collection|Collection}.
523
+ * The client library will perform auto-pagination by default: it will call the API as many
524
+ * times as needed and will merge results from all the pages into this array.
525
+ * Note that it can affect your quota.
526
+ * We recommend using `listCollectionsAsync()`
527
+ * method described below for async iteration which you can stop as needed.
528
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
529
+ * for more details and examples.
530
+ */
531
+ listCollections(request?: protos.google.cloud.vectorsearch.v1.IListCollectionsRequest, options?: CallOptions): Promise<[
532
+ protos.google.cloud.vectorsearch.v1.ICollection[],
533
+ protos.google.cloud.vectorsearch.v1.IListCollectionsRequest | null,
534
+ protos.google.cloud.vectorsearch.v1.IListCollectionsResponse
535
+ ]>;
536
+ listCollections(request: protos.google.cloud.vectorsearch.v1.IListCollectionsRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.vectorsearch.v1.IListCollectionsRequest, protos.google.cloud.vectorsearch.v1.IListCollectionsResponse | null | undefined, protos.google.cloud.vectorsearch.v1.ICollection>): void;
537
+ listCollections(request: protos.google.cloud.vectorsearch.v1.IListCollectionsRequest, callback: PaginationCallback<protos.google.cloud.vectorsearch.v1.IListCollectionsRequest, protos.google.cloud.vectorsearch.v1.IListCollectionsResponse | null | undefined, protos.google.cloud.vectorsearch.v1.ICollection>): void;
538
+ /**
539
+ * Equivalent to `listCollections`, but returns a NodeJS Stream object.
540
+ * @param {Object} request
541
+ * The request object that will be sent.
542
+ * @param {string} request.parent
543
+ * Required. Parent value for ListCollectionsRequest
544
+ * @param {number} [request.pageSize]
545
+ * Optional. Requested page size. Server may return fewer items than
546
+ * requested. If unspecified, server will pick an appropriate default.
547
+ * @param {string} [request.pageToken]
548
+ * Optional. A token identifying a page of results the server should return.
549
+ * @param {string} [request.filter]
550
+ * Optional. Filtering results
551
+ * @param {string} [request.orderBy]
552
+ * Optional. Hint for how to order the results
553
+ * @param {object} [options]
554
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
555
+ * @returns {Stream}
556
+ * An object stream which emits an object representing {@link protos.google.cloud.vectorsearch.v1.Collection|Collection} on 'data' event.
557
+ * The client library will perform auto-pagination by default: it will call the API as many
558
+ * times as needed. Note that it can affect your quota.
559
+ * We recommend using `listCollectionsAsync()`
560
+ * method described below for async iteration which you can stop as needed.
561
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
562
+ * for more details and examples.
563
+ */
564
+ listCollectionsStream(request?: protos.google.cloud.vectorsearch.v1.IListCollectionsRequest, options?: CallOptions): Transform;
565
+ /**
566
+ * Equivalent to `listCollections`, but returns an iterable object.
567
+ *
568
+ * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
569
+ * @param {Object} request
570
+ * The request object that will be sent.
571
+ * @param {string} request.parent
572
+ * Required. Parent value for ListCollectionsRequest
573
+ * @param {number} [request.pageSize]
574
+ * Optional. Requested page size. Server may return fewer items than
575
+ * requested. If unspecified, server will pick an appropriate default.
576
+ * @param {string} [request.pageToken]
577
+ * Optional. A token identifying a page of results the server should return.
578
+ * @param {string} [request.filter]
579
+ * Optional. Filtering results
580
+ * @param {string} [request.orderBy]
581
+ * Optional. Hint for how to order the results
582
+ * @param {object} [options]
583
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
584
+ * @returns {Object}
585
+ * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
586
+ * When you iterate the returned iterable, each element will be an object representing
587
+ * {@link protos.google.cloud.vectorsearch.v1.Collection|Collection}. The API will be called under the hood as needed, once per the page,
588
+ * so you can stop the iteration when you don't need more results.
589
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
590
+ * for more details and examples.
591
+ * @example <caption>include:samples/generated/v1/vector_search_service.list_collections.js</caption>
592
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_ListCollections_async
593
+ */
594
+ listCollectionsAsync(request?: protos.google.cloud.vectorsearch.v1.IListCollectionsRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.vectorsearch.v1.ICollection>;
595
+ /**
596
+ * Lists Indexes in a given project and location.
597
+ *
598
+ * @param {Object} request
599
+ * The request object that will be sent.
600
+ * @param {string} request.parent
601
+ * Required. Parent value for ListIndexesRequest
602
+ * @param {number} [request.pageSize]
603
+ * Optional. Requested page size. Server may return fewer items than
604
+ * requested. If unspecified, server will pick an appropriate default.
605
+ * @param {string} [request.pageToken]
606
+ * Optional. A token identifying a page of results the server should return.
607
+ * @param {string} [request.filter]
608
+ * Optional. Filtering results
609
+ * @param {string} [request.orderBy]
610
+ * Optional. Hint for how to order the results
611
+ * @param {object} [options]
612
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
613
+ * @returns {Promise} - The promise which resolves to an array.
614
+ * The first element of the array is Array of {@link protos.google.cloud.vectorsearch.v1.Index|Index}.
615
+ * The client library will perform auto-pagination by default: it will call the API as many
616
+ * times as needed and will merge results from all the pages into this array.
617
+ * Note that it can affect your quota.
618
+ * We recommend using `listIndexesAsync()`
619
+ * method described below for async iteration which you can stop as needed.
620
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
621
+ * for more details and examples.
622
+ */
623
+ listIndexes(request?: protos.google.cloud.vectorsearch.v1.IListIndexesRequest, options?: CallOptions): Promise<[
624
+ protos.google.cloud.vectorsearch.v1.IIndex[],
625
+ protos.google.cloud.vectorsearch.v1.IListIndexesRequest | null,
626
+ protos.google.cloud.vectorsearch.v1.IListIndexesResponse
627
+ ]>;
628
+ listIndexes(request: protos.google.cloud.vectorsearch.v1.IListIndexesRequest, options: CallOptions, callback: PaginationCallback<protos.google.cloud.vectorsearch.v1.IListIndexesRequest, protos.google.cloud.vectorsearch.v1.IListIndexesResponse | null | undefined, protos.google.cloud.vectorsearch.v1.IIndex>): void;
629
+ listIndexes(request: protos.google.cloud.vectorsearch.v1.IListIndexesRequest, callback: PaginationCallback<protos.google.cloud.vectorsearch.v1.IListIndexesRequest, protos.google.cloud.vectorsearch.v1.IListIndexesResponse | null | undefined, protos.google.cloud.vectorsearch.v1.IIndex>): void;
630
+ /**
631
+ * Equivalent to `listIndexes`, but returns a NodeJS Stream object.
632
+ * @param {Object} request
633
+ * The request object that will be sent.
634
+ * @param {string} request.parent
635
+ * Required. Parent value for ListIndexesRequest
636
+ * @param {number} [request.pageSize]
637
+ * Optional. Requested page size. Server may return fewer items than
638
+ * requested. If unspecified, server will pick an appropriate default.
639
+ * @param {string} [request.pageToken]
640
+ * Optional. A token identifying a page of results the server should return.
641
+ * @param {string} [request.filter]
642
+ * Optional. Filtering results
643
+ * @param {string} [request.orderBy]
644
+ * Optional. Hint for how to order the results
645
+ * @param {object} [options]
646
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
647
+ * @returns {Stream}
648
+ * An object stream which emits an object representing {@link protos.google.cloud.vectorsearch.v1.Index|Index} on 'data' event.
649
+ * The client library will perform auto-pagination by default: it will call the API as many
650
+ * times as needed. Note that it can affect your quota.
651
+ * We recommend using `listIndexesAsync()`
652
+ * method described below for async iteration which you can stop as needed.
653
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
654
+ * for more details and examples.
655
+ */
656
+ listIndexesStream(request?: protos.google.cloud.vectorsearch.v1.IListIndexesRequest, options?: CallOptions): Transform;
657
+ /**
658
+ * Equivalent to `listIndexes`, but returns an iterable object.
659
+ *
660
+ * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
661
+ * @param {Object} request
662
+ * The request object that will be sent.
663
+ * @param {string} request.parent
664
+ * Required. Parent value for ListIndexesRequest
665
+ * @param {number} [request.pageSize]
666
+ * Optional. Requested page size. Server may return fewer items than
667
+ * requested. If unspecified, server will pick an appropriate default.
668
+ * @param {string} [request.pageToken]
669
+ * Optional. A token identifying a page of results the server should return.
670
+ * @param {string} [request.filter]
671
+ * Optional. Filtering results
672
+ * @param {string} [request.orderBy]
673
+ * Optional. Hint for how to order the results
674
+ * @param {object} [options]
675
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
676
+ * @returns {Object}
677
+ * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
678
+ * When you iterate the returned iterable, each element will be an object representing
679
+ * {@link protos.google.cloud.vectorsearch.v1.Index|Index}. The API will be called under the hood as needed, once per the page,
680
+ * so you can stop the iteration when you don't need more results.
681
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
682
+ * for more details and examples.
683
+ * @example <caption>include:samples/generated/v1/vector_search_service.list_indexes.js</caption>
684
+ * region_tag:vectorsearch_v1_generated_VectorSearchService_ListIndexes_async
685
+ */
686
+ listIndexesAsync(request?: protos.google.cloud.vectorsearch.v1.IListIndexesRequest, options?: CallOptions): AsyncIterable<protos.google.cloud.vectorsearch.v1.IIndex>;
687
+ /**
688
+ * Gets information about a location.
689
+ *
690
+ * @param {Object} request
691
+ * The request object that will be sent.
692
+ * @param {string} request.name
693
+ * Resource name for the location.
694
+ * @param {object} [options]
695
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html | CallOptions} for more details.
696
+ * @returns {Promise} - The promise which resolves to an array.
697
+ * The first element of the array is an object representing {@link google.cloud.location.Location | Location}.
698
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#regular-methods | documentation }
699
+ * for more details and examples.
700
+ * @example
701
+ * ```
702
+ * const [response] = await client.getLocation(request);
703
+ * ```
704
+ */
705
+ getLocation(request: LocationProtos.google.cloud.location.IGetLocationRequest, options?: gax.CallOptions | Callback<LocationProtos.google.cloud.location.ILocation, LocationProtos.google.cloud.location.IGetLocationRequest | null | undefined, {} | null | undefined>, callback?: Callback<LocationProtos.google.cloud.location.ILocation, LocationProtos.google.cloud.location.IGetLocationRequest | null | undefined, {} | null | undefined>): Promise<LocationProtos.google.cloud.location.ILocation>;
706
+ /**
707
+ * Lists information about the supported locations for this service. Returns an iterable object.
708
+ *
709
+ * `for`-`await`-`of` syntax is used with the iterable to get response elements on-demand.
710
+ * @param {Object} request
711
+ * The request object that will be sent.
712
+ * @param {string} request.name
713
+ * The resource that owns the locations collection, if applicable.
714
+ * @param {string} request.filter
715
+ * The standard list filter.
716
+ * @param {number} request.pageSize
717
+ * The standard list page size.
718
+ * @param {string} request.pageToken
719
+ * The standard list page token.
720
+ * @param {object} [options]
721
+ * Call options. See {@link https://googleapis.dev/nodejs/google-gax/latest/interfaces/CallOptions.html|CallOptions} for more details.
722
+ * @returns {Object}
723
+ * An iterable Object that allows {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | async iteration }.
724
+ * When you iterate the returned iterable, each element will be an object representing
725
+ * {@link google.cloud.location.Location | Location}. The API will be called under the hood as needed, once per the page,
726
+ * so you can stop the iteration when you don't need more results.
727
+ * Please see the {@link https://github.com/googleapis/gax-nodejs/blob/master/client-libraries.md#auto-pagination | documentation }
728
+ * for more details and examples.
729
+ * @example
730
+ * ```
731
+ * const iterable = client.listLocationsAsync(request);
732
+ * for await (const response of iterable) {
733
+ * // process response
734
+ * }
735
+ * ```
736
+ */
737
+ listLocationsAsync(request: LocationProtos.google.cloud.location.IListLocationsRequest, options?: CallOptions): AsyncIterable<LocationProtos.google.cloud.location.ILocation>;
738
+ /**
739
+ * Gets the latest state of a long-running operation. Clients can use this
740
+ * method to poll the operation result at intervals as recommended by the API
741
+ * service.
742
+ *
743
+ * @param {Object} request - The request object that will be sent.
744
+ * @param {string} request.name - The name of the operation resource.
745
+ * @param {Object=} options
746
+ * Optional parameters. You can override the default settings for this call,
747
+ * e.g, timeout, retries, paginations, etc. See {@link
748
+ * https://googleapis.github.io/gax-nodejs/global.html#CallOptions | gax.CallOptions}
749
+ * for the details.
750
+ * @param {function(?Error, ?Object)=} callback
751
+ * The function which will be called with the result of the API call.
752
+ *
753
+ * The second parameter to the callback is an object representing
754
+ * {@link google.longrunning.Operation | google.longrunning.Operation}.
755
+ * @return {Promise} - The promise which resolves to an array.
756
+ * The first element of the array is an object representing
757
+ * {@link google.longrunning.Operation | google.longrunning.Operation}.
758
+ * The promise has a method named "cancel" which cancels the ongoing API call.
759
+ *
760
+ * @example
761
+ * ```
762
+ * const client = longrunning.operationsClient();
763
+ * const name = '';
764
+ * const [response] = await client.getOperation({name});
765
+ * // doThingsWith(response)
766
+ * ```
767
+ */
768
+ getOperation(request: protos.google.longrunning.GetOperationRequest, optionsOrCallback?: gax.CallOptions | Callback<protos.google.longrunning.Operation, protos.google.longrunning.GetOperationRequest, {} | null | undefined>, callback?: Callback<protos.google.longrunning.Operation, protos.google.longrunning.GetOperationRequest, {} | null | undefined>): Promise<[protos.google.longrunning.Operation]>;
769
+ /**
770
+ * Lists operations that match the specified filter in the request. If the
771
+ * server doesn't support this method, it returns `UNIMPLEMENTED`. Returns an iterable object.
772
+ *
773
+ * For-await-of syntax is used with the iterable to recursively get response element on-demand.
774
+ *
775
+ * @param {Object} request - The request object that will be sent.
776
+ * @param {string} request.name - The name of the operation collection.
777
+ * @param {string} request.filter - The standard list filter.
778
+ * @param {number=} request.pageSize -
779
+ * The maximum number of resources contained in the underlying API
780
+ * response. If page streaming is performed per-resource, this
781
+ * parameter does not affect the return value. If page streaming is
782
+ * performed per-page, this determines the maximum number of
783
+ * resources in a page.
784
+ * @param {Object=} options
785
+ * Optional parameters. You can override the default settings for this call,
786
+ * e.g, timeout, retries, paginations, etc. See {@link
787
+ * https://googleapis.github.io/gax-nodejs/global.html#CallOptions | gax.CallOptions} for the
788
+ * details.
789
+ * @returns {Object}
790
+ * An iterable Object that conforms to {@link https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Iteration_protocols | iteration protocols}.
791
+ *
792
+ * @example
793
+ * ```
794
+ * const client = longrunning.operationsClient();
795
+ * for await (const response of client.listOperationsAsync(request));
796
+ * // doThingsWith(response)
797
+ * ```
798
+ */
799
+ listOperationsAsync(request: protos.google.longrunning.ListOperationsRequest, options?: gax.CallOptions): AsyncIterable<protos.google.longrunning.IOperation>;
800
+ /**
801
+ * Starts asynchronous cancellation on a long-running operation. The server
802
+ * makes a best effort to cancel the operation, but success is not
803
+ * guaranteed. If the server doesn't support this method, it returns
804
+ * `google.rpc.Code.UNIMPLEMENTED`. Clients can use
805
+ * {@link Operations.GetOperation} or
806
+ * other methods to check whether the cancellation succeeded or whether the
807
+ * operation completed despite cancellation. On successful cancellation,
808
+ * the operation is not deleted; instead, it becomes an operation with
809
+ * an {@link Operation.error} value with a {@link google.rpc.Status.code} of
810
+ * 1, corresponding to `Code.CANCELLED`.
811
+ *
812
+ * @param {Object} request - The request object that will be sent.
813
+ * @param {string} request.name - The name of the operation resource to be cancelled.
814
+ * @param {Object=} options
815
+ * Optional parameters. You can override the default settings for this call,
816
+ * e.g, timeout, retries, paginations, etc. See {@link
817
+ * https://googleapis.github.io/gax-nodejs/global.html#CallOptions | gax.CallOptions} for the
818
+ * details.
819
+ * @param {function(?Error)=} callback
820
+ * The function which will be called with the result of the API call.
821
+ * @return {Promise} - The promise which resolves when API call finishes.
822
+ * The promise has a method named "cancel" which cancels the ongoing API
823
+ * call.
824
+ *
825
+ * @example
826
+ * ```
827
+ * const client = longrunning.operationsClient();
828
+ * await client.cancelOperation({name: ''});
829
+ * ```
830
+ */
831
+ cancelOperation(request: protos.google.longrunning.CancelOperationRequest, optionsOrCallback?: gax.CallOptions | Callback<protos.google.longrunning.CancelOperationRequest, protos.google.protobuf.Empty, {} | undefined | null>, callback?: Callback<protos.google.longrunning.CancelOperationRequest, protos.google.protobuf.Empty, {} | undefined | null>): Promise<protos.google.protobuf.Empty>;
832
+ /**
833
+ * Deletes a long-running operation. This method indicates that the client is
834
+ * no longer interested in the operation result. It does not cancel the
835
+ * operation. If the server doesn't support this method, it returns
836
+ * `google.rpc.Code.UNIMPLEMENTED`.
837
+ *
838
+ * @param {Object} request - The request object that will be sent.
839
+ * @param {string} request.name - The name of the operation resource to be deleted.
840
+ * @param {Object=} options
841
+ * Optional parameters. You can override the default settings for this call,
842
+ * e.g, timeout, retries, paginations, etc. See {@link
843
+ * https://googleapis.github.io/gax-nodejs/global.html#CallOptions | gax.CallOptions}
844
+ * for the details.
845
+ * @param {function(?Error)=} callback
846
+ * The function which will be called with the result of the API call.
847
+ * @return {Promise} - The promise which resolves when API call finishes.
848
+ * The promise has a method named "cancel" which cancels the ongoing API
849
+ * call.
850
+ *
851
+ * @example
852
+ * ```
853
+ * const client = longrunning.operationsClient();
854
+ * await client.deleteOperation({name: ''});
855
+ * ```
856
+ */
857
+ deleteOperation(request: protos.google.longrunning.DeleteOperationRequest, optionsOrCallback?: gax.CallOptions | Callback<protos.google.protobuf.Empty, protos.google.longrunning.DeleteOperationRequest, {} | null | undefined>, callback?: Callback<protos.google.protobuf.Empty, protos.google.longrunning.DeleteOperationRequest, {} | null | undefined>): Promise<protos.google.protobuf.Empty>;
858
+ /**
859
+ * Return a fully-qualified collection resource name string.
860
+ *
861
+ * @param {string} project
862
+ * @param {string} location
863
+ * @param {string} collection
864
+ * @returns {string} Resource name string.
865
+ */
866
+ collectionPath(project: string, location: string, collection: string): string;
867
+ /**
868
+ * Parse the project from Collection resource.
869
+ *
870
+ * @param {string} collectionName
871
+ * A fully-qualified path representing Collection resource.
872
+ * @returns {string} A string representing the project.
873
+ */
874
+ matchProjectFromCollectionName(collectionName: string): string | number;
875
+ /**
876
+ * Parse the location from Collection resource.
877
+ *
878
+ * @param {string} collectionName
879
+ * A fully-qualified path representing Collection resource.
880
+ * @returns {string} A string representing the location.
881
+ */
882
+ matchLocationFromCollectionName(collectionName: string): string | number;
883
+ /**
884
+ * Parse the collection from Collection resource.
885
+ *
886
+ * @param {string} collectionName
887
+ * A fully-qualified path representing Collection resource.
888
+ * @returns {string} A string representing the collection.
889
+ */
890
+ matchCollectionFromCollectionName(collectionName: string): string | number;
891
+ /**
892
+ * Return a fully-qualified dataObject resource name string.
893
+ *
894
+ * @param {string} project
895
+ * @param {string} location
896
+ * @param {string} collection
897
+ * @param {string} dataObject
898
+ * @returns {string} Resource name string.
899
+ */
900
+ dataObjectPath(project: string, location: string, collection: string, dataObject: string): string;
901
+ /**
902
+ * Parse the project from DataObject resource.
903
+ *
904
+ * @param {string} dataObjectName
905
+ * A fully-qualified path representing DataObject resource.
906
+ * @returns {string} A string representing the project.
907
+ */
908
+ matchProjectFromDataObjectName(dataObjectName: string): string | number;
909
+ /**
910
+ * Parse the location from DataObject resource.
911
+ *
912
+ * @param {string} dataObjectName
913
+ * A fully-qualified path representing DataObject resource.
914
+ * @returns {string} A string representing the location.
915
+ */
916
+ matchLocationFromDataObjectName(dataObjectName: string): string | number;
917
+ /**
918
+ * Parse the collection from DataObject resource.
919
+ *
920
+ * @param {string} dataObjectName
921
+ * A fully-qualified path representing DataObject resource.
922
+ * @returns {string} A string representing the collection.
923
+ */
924
+ matchCollectionFromDataObjectName(dataObjectName: string): string | number;
925
+ /**
926
+ * Parse the dataObject from DataObject resource.
927
+ *
928
+ * @param {string} dataObjectName
929
+ * A fully-qualified path representing DataObject resource.
930
+ * @returns {string} A string representing the dataObject.
931
+ */
932
+ matchDataObjectFromDataObjectName(dataObjectName: string): string | number;
933
+ /**
934
+ * Return a fully-qualified index resource name string.
935
+ *
936
+ * @param {string} project
937
+ * @param {string} location
938
+ * @param {string} collection
939
+ * @param {string} index
940
+ * @returns {string} Resource name string.
941
+ */
942
+ indexPath(project: string, location: string, collection: string, index: string): string;
943
+ /**
944
+ * Parse the project from Index resource.
945
+ *
946
+ * @param {string} indexName
947
+ * A fully-qualified path representing Index resource.
948
+ * @returns {string} A string representing the project.
949
+ */
950
+ matchProjectFromIndexName(indexName: string): string | number;
951
+ /**
952
+ * Parse the location from Index resource.
953
+ *
954
+ * @param {string} indexName
955
+ * A fully-qualified path representing Index resource.
956
+ * @returns {string} A string representing the location.
957
+ */
958
+ matchLocationFromIndexName(indexName: string): string | number;
959
+ /**
960
+ * Parse the collection from Index resource.
961
+ *
962
+ * @param {string} indexName
963
+ * A fully-qualified path representing Index resource.
964
+ * @returns {string} A string representing the collection.
965
+ */
966
+ matchCollectionFromIndexName(indexName: string): string | number;
967
+ /**
968
+ * Parse the index from Index resource.
969
+ *
970
+ * @param {string} indexName
971
+ * A fully-qualified path representing Index resource.
972
+ * @returns {string} A string representing the index.
973
+ */
974
+ matchIndexFromIndexName(indexName: string): string | number;
975
+ /**
976
+ * Return a fully-qualified location resource name string.
977
+ *
978
+ * @param {string} project
979
+ * @param {string} location
980
+ * @returns {string} Resource name string.
981
+ */
982
+ locationPath(project: string, location: string): string;
983
+ /**
984
+ * Parse the project from Location resource.
985
+ *
986
+ * @param {string} locationName
987
+ * A fully-qualified path representing Location resource.
988
+ * @returns {string} A string representing the project.
989
+ */
990
+ matchProjectFromLocationName(locationName: string): string | number;
991
+ /**
992
+ * Parse the location from Location resource.
993
+ *
994
+ * @param {string} locationName
995
+ * A fully-qualified path representing Location resource.
996
+ * @returns {string} A string representing the location.
997
+ */
998
+ matchLocationFromLocationName(locationName: string): string | number;
999
+ /**
1000
+ * Return a fully-qualified project resource name string.
1001
+ *
1002
+ * @param {string} project
1003
+ * @returns {string} Resource name string.
1004
+ */
1005
+ projectPath(project: string): string;
1006
+ /**
1007
+ * Parse the project from Project resource.
1008
+ *
1009
+ * @param {string} projectName
1010
+ * A fully-qualified path representing Project resource.
1011
+ * @returns {string} A string representing the project.
1012
+ */
1013
+ matchProjectFromProjectName(projectName: string): string | number;
1014
+ /**
1015
+ * Terminate the gRPC channel and close the client.
1016
+ *
1017
+ * The client will no longer be usable and all future behavior is undefined.
1018
+ * @returns {Promise} A promise that resolves when the client is closed.
1019
+ */
1020
+ close(): Promise<void>;
1021
+ }