@distilled.cloud/gcp 0.4.0 → 0.5.1

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.
@@ -0,0 +1,3220 @@
1
+ // ==========================================================================
2
+ // SaaS Runtime API (saasservicemgmt v1)
3
+ // DO NOT EDIT - Generated from GCP Discovery Document
4
+ // ==========================================================================
5
+
6
+ import * as Schema from "effect/Schema";
7
+ import * as API from "../client/api.ts";
8
+ import * as T from "../traits";
9
+ import type { Credentials } from "../credentials";
10
+ import type { DefaultErrors } from "../errors";
11
+ import type * as HttpClient from "effect/unstable/http/HttpClient";
12
+
13
+ // Service metadata
14
+ const svc = T.Service({
15
+ name: "saasservicemgmt",
16
+ version: "v1",
17
+ rootUrl: "https://saasservicemgmt.googleapis.com/",
18
+ servicePath: "",
19
+ });
20
+
21
+ // ==========================================================================
22
+ // Schemas
23
+ // ==========================================================================
24
+
25
+ export interface GoogleCloudLocationLocation {
26
+ /** The friendly name for this location, typically a nearby city name. For example, "Tokyo". */
27
+ displayName?: string;
28
+ /** Resource name for the location, which may vary between implementations. For example: `"projects/example-project/locations/us-east1"` */
29
+ name?: string;
30
+ /** The canonical id for this location. For example: `"us-east1"`. */
31
+ locationId?: string;
32
+ /** Cross-service attributes for the location. For example {"cloud.googleapis.com/region": "us-east1"} */
33
+ labels?: Record<string, string>;
34
+ /** Service-specific metadata. For example the available capacity at the given location. */
35
+ metadata?: Record<string, unknown>;
36
+ }
37
+
38
+ export const GoogleCloudLocationLocation: Schema.Schema<GoogleCloudLocationLocation> =
39
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
40
+ Schema.Struct({
41
+ displayName: Schema.optional(Schema.String),
42
+ name: Schema.optional(Schema.String),
43
+ locationId: Schema.optional(Schema.String),
44
+ labels: Schema.optional(Schema.Record(Schema.String, Schema.String)),
45
+ metadata: Schema.optional(Schema.Record(Schema.String, Schema.Unknown)),
46
+ }),
47
+ ).annotate({
48
+ identifier: "GoogleCloudLocationLocation",
49
+ }) as any as Schema.Schema<GoogleCloudLocationLocation>;
50
+
51
+ export interface UnitVariable {
52
+ /** Optional. Immutable. Name of a supported variable type. Supported types are string, int, bool. */
53
+ type?: "TYPE_UNSPECIFIED" | "STRING" | "INT" | "BOOL" | (string & {});
54
+ /** Required. Immutable. Name of the variable from actuation configs. */
55
+ variable?: string;
56
+ /** Optional. String encoded value for the variable. */
57
+ value?: string;
58
+ }
59
+
60
+ export const UnitVariable: Schema.Schema<UnitVariable> =
61
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
62
+ Schema.Struct({
63
+ type: Schema.optional(Schema.String),
64
+ variable: Schema.optional(Schema.String),
65
+ value: Schema.optional(Schema.String),
66
+ }),
67
+ ).annotate({
68
+ identifier: "UnitVariable",
69
+ }) as any as Schema.Schema<UnitVariable>;
70
+
71
+ export interface Upgrade {
72
+ /** Optional. Reference to the Release object to use for the Unit. (optional). */
73
+ release?: string;
74
+ /** Optional. Set of input variables. Maximum 100. (optional) */
75
+ inputVariables?: Array<UnitVariable>;
76
+ }
77
+
78
+ export const Upgrade: Schema.Schema<Upgrade> =
79
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
80
+ Schema.Struct({
81
+ release: Schema.optional(Schema.String),
82
+ inputVariables: Schema.optional(Schema.Array(UnitVariable)),
83
+ }),
84
+ ).annotate({ identifier: "Upgrade" }) as any as Schema.Schema<Upgrade>;
85
+
86
+ export interface Provision {
87
+ /** Optional. Reference to the Release object to use for the Unit. (optional). */
88
+ release?: string;
89
+ /** Optional. Set of input variables. Maximum 100. (optional) */
90
+ inputVariables?: Array<UnitVariable>;
91
+ }
92
+
93
+ export const Provision: Schema.Schema<Provision> =
94
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
95
+ Schema.Struct({
96
+ release: Schema.optional(Schema.String),
97
+ inputVariables: Schema.optional(Schema.Array(UnitVariable)),
98
+ }),
99
+ ).annotate({ identifier: "Provision" }) as any as Schema.Schema<Provision>;
100
+
101
+ export interface Deprovision {}
102
+
103
+ export const Deprovision: Schema.Schema<Deprovision> =
104
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() => Schema.Struct({})).annotate({
105
+ identifier: "Deprovision",
106
+ }) as any as Schema.Schema<Deprovision>;
107
+
108
+ export interface UnitOperationCondition {
109
+ /** Required. Human readable message indicating details about the last transition. */
110
+ message?: string;
111
+ /** Required. Last time the condition transited from one status to another. */
112
+ lastTransitionTime?: string;
113
+ /** Required. Status of the condition. */
114
+ status?:
115
+ | "STATUS_UNSPECIFIED"
116
+ | "STATUS_UNKNOWN"
117
+ | "STATUS_TRUE"
118
+ | "STATUS_FALSE"
119
+ | (string & {});
120
+ /** Required. Brief reason for the condition's last transition. */
121
+ reason?: string;
122
+ /** Required. Type of the condition. */
123
+ type?:
124
+ | "TYPE_UNSPECIFIED"
125
+ | "TYPE_SCHEDULED"
126
+ | "TYPE_RUNNING"
127
+ | "TYPE_SUCCEEDED"
128
+ | "TYPE_CANCELLED"
129
+ | "TYPE_APP_CREATED"
130
+ | "TYPE_APP_COMPONENTS_REGISTERED"
131
+ | (string & {});
132
+ }
133
+
134
+ export const UnitOperationCondition: Schema.Schema<UnitOperationCondition> =
135
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
136
+ Schema.Struct({
137
+ message: Schema.optional(Schema.String),
138
+ lastTransitionTime: Schema.optional(Schema.String),
139
+ status: Schema.optional(Schema.String),
140
+ reason: Schema.optional(Schema.String),
141
+ type: Schema.optional(Schema.String),
142
+ }),
143
+ ).annotate({
144
+ identifier: "UnitOperationCondition",
145
+ }) as any as Schema.Schema<UnitOperationCondition>;
146
+
147
+ export interface Schedule {
148
+ /** Optional. Start of operation. If not set, will be set to the start of the next window. (optional) */
149
+ startTime?: string;
150
+ }
151
+
152
+ export const Schedule: Schema.Schema<Schedule> =
153
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
154
+ Schema.Struct({
155
+ startTime: Schema.optional(Schema.String),
156
+ }),
157
+ ).annotate({ identifier: "Schedule" }) as any as Schema.Schema<Schedule>;
158
+
159
+ export interface UnitOperation {
160
+ /** Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */
161
+ annotations?: Record<string, string>;
162
+ upgrade?: Upgrade;
163
+ /** Optional. Output only. UnitOperationErrorCategory describe the error category. */
164
+ errorCategory?:
165
+ | "UNIT_OPERATION_ERROR_CATEGORY_UNSPECIFIED"
166
+ | "NOT_APPLICABLE"
167
+ | "FATAL"
168
+ | "RETRIABLE"
169
+ | "IGNORABLE"
170
+ | "STANDARD"
171
+ | (string & {});
172
+ /** Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */
173
+ etag?: string;
174
+ /** Optional. Output only. The engine state for on-going deployment engine operation(s). This field is opaque for external usage. */
175
+ engineState?: string;
176
+ /** Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */
177
+ uid?: string;
178
+ /** Output only. The timestamp when the resource was created. */
179
+ createTime?: string;
180
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/unitOperations/{unitOperation}" */
181
+ name?: string;
182
+ /** Required. Immutable. The Unit a given UnitOperation will act upon. */
183
+ unit?: string;
184
+ provision?: Provision;
185
+ /** Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */
186
+ updateTime?: string;
187
+ /** Optional. When true, attempt to cancel the operation. Cancellation may fail if the operation is already executing. (Optional) */
188
+ cancel?: boolean;
189
+ deprovision?: Deprovision;
190
+ /** Optional. Output only. UnitOperationState describes the current state of the unit operation. */
191
+ state?:
192
+ | "UNIT_OPERATION_STATE_UNKNOWN"
193
+ | "UNIT_OPERATION_STATE_PENDING"
194
+ | "UNIT_OPERATION_STATE_SCHEDULED"
195
+ | "UNIT_OPERATION_STATE_RUNNING"
196
+ | "UNIT_OPERATION_STATE_SUCCEEDED"
197
+ | "UNIT_OPERATION_STATE_FAILED"
198
+ | "UNIT_OPERATION_STATE_CANCELLED"
199
+ | (string & {});
200
+ /** Optional. Reference to parent resource: UnitOperation. If an operation needs to create other operations as part of its workflow, each of the child operations should have this field set to the parent. This can be used for tracing. (Optional) */
201
+ parentUnitOperation?: string;
202
+ /** Optional. Output only. A set of conditions which indicate the various conditions this resource can have. */
203
+ conditions?: Array<UnitOperationCondition>;
204
+ /** Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation). */
205
+ deleteTime?: string;
206
+ /** Optional. When to schedule this operation. */
207
+ schedule?: Schedule;
208
+ /** Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */
209
+ labels?: Record<string, string>;
210
+ /** Optional. Specifies which rollout created this Unit Operation. This cannot be modified and is used for filtering purposes only. If a dependent unit and unit operation are created as part of another unit operation, they will use the same rolloutId. */
211
+ rollout?: string;
212
+ }
213
+
214
+ export const UnitOperation: Schema.Schema<UnitOperation> =
215
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
216
+ Schema.Struct({
217
+ annotations: Schema.optional(Schema.Record(Schema.String, Schema.String)),
218
+ upgrade: Schema.optional(Upgrade),
219
+ errorCategory: Schema.optional(Schema.String),
220
+ etag: Schema.optional(Schema.String),
221
+ engineState: Schema.optional(Schema.String),
222
+ uid: Schema.optional(Schema.String),
223
+ createTime: Schema.optional(Schema.String),
224
+ name: Schema.optional(Schema.String),
225
+ unit: Schema.optional(Schema.String),
226
+ provision: Schema.optional(Provision),
227
+ updateTime: Schema.optional(Schema.String),
228
+ cancel: Schema.optional(Schema.Boolean),
229
+ deprovision: Schema.optional(Deprovision),
230
+ state: Schema.optional(Schema.String),
231
+ parentUnitOperation: Schema.optional(Schema.String),
232
+ conditions: Schema.optional(Schema.Array(UnitOperationCondition)),
233
+ deleteTime: Schema.optional(Schema.String),
234
+ schedule: Schema.optional(Schedule),
235
+ labels: Schema.optional(Schema.Record(Schema.String, Schema.String)),
236
+ rollout: Schema.optional(Schema.String),
237
+ }),
238
+ ).annotate({
239
+ identifier: "UnitOperation",
240
+ }) as any as Schema.Schema<UnitOperation>;
241
+
242
+ export interface UnitCondition {
243
+ /** Required. Last time the condition transited from one status to another. */
244
+ lastTransitionTime?: string;
245
+ /** Required. Human readable message indicating details about the last transition. */
246
+ message?: string;
247
+ /** Required. Status of the condition. */
248
+ status?:
249
+ | "STATUS_UNSPECIFIED"
250
+ | "STATUS_UNKNOWN"
251
+ | "STATUS_TRUE"
252
+ | "STATUS_FALSE"
253
+ | (string & {});
254
+ /** Required. Brief reason for the condition's last transition. */
255
+ reason?: string;
256
+ /** Required. Type of the condition. */
257
+ type?:
258
+ | "TYPE_UNSPECIFIED"
259
+ | "TYPE_READY"
260
+ | "TYPE_UPDATING"
261
+ | "TYPE_PROVISIONED"
262
+ | "TYPE_OPERATION_ERROR"
263
+ | (string & {});
264
+ }
265
+
266
+ export const UnitCondition: Schema.Schema<UnitCondition> =
267
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
268
+ Schema.Struct({
269
+ lastTransitionTime: Schema.optional(Schema.String),
270
+ message: Schema.optional(Schema.String),
271
+ status: Schema.optional(Schema.String),
272
+ reason: Schema.optional(Schema.String),
273
+ type: Schema.optional(Schema.String),
274
+ }),
275
+ ).annotate({
276
+ identifier: "UnitCondition",
277
+ }) as any as Schema.Schema<UnitCondition>;
278
+
279
+ export interface Status {
280
+ /** The status code, which should be an enum value of google.rpc.Code. */
281
+ code?: number;
282
+ /** A list of messages that carry the error details. There is a common set of message types for APIs to use. */
283
+ details?: Array<Record<string, unknown>>;
284
+ /** A developer-facing error message, which should be in English. Any user-facing error message should be localized and sent in the google.rpc.Status.details field, or localized by the client. */
285
+ message?: string;
286
+ }
287
+
288
+ export const Status: Schema.Schema<Status> =
289
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
290
+ Schema.Struct({
291
+ code: Schema.optional(Schema.Number),
292
+ details: Schema.optional(
293
+ Schema.Array(Schema.Record(Schema.String, Schema.Unknown)),
294
+ ),
295
+ message: Schema.optional(Schema.String),
296
+ }),
297
+ ).annotate({ identifier: "Status" }) as any as Schema.Schema<Status>;
298
+
299
+ export interface Location {
300
+ /** Optional. Name of location. */
301
+ name?: string;
302
+ }
303
+
304
+ export const Location: Schema.Schema<Location> =
305
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
306
+ Schema.Struct({
307
+ name: Schema.optional(Schema.String),
308
+ }),
309
+ ).annotate({ identifier: "Location" }) as any as Schema.Schema<Location>;
310
+
311
+ export interface Saas {
312
+ /** Optional. List of locations that the service is available in. Rollout refers to the list to generate a rollout plan. */
313
+ locations?: Array<Location>;
314
+ /** Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */
315
+ labels?: Record<string, string>;
316
+ /** Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */
317
+ etag?: string;
318
+ /** Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */
319
+ updateTime?: string;
320
+ /** Output only. The timestamp when the resource was created. */
321
+ createTime?: string;
322
+ /** Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */
323
+ uid?: string;
324
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/saas/{saas}" */
325
+ name?: string;
326
+ /** Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */
327
+ annotations?: Record<string, string>;
328
+ }
329
+
330
+ export const Saas: Schema.Schema<Saas> =
331
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
332
+ Schema.Struct({
333
+ locations: Schema.optional(Schema.Array(Location)),
334
+ labels: Schema.optional(Schema.Record(Schema.String, Schema.String)),
335
+ etag: Schema.optional(Schema.String),
336
+ updateTime: Schema.optional(Schema.String),
337
+ createTime: Schema.optional(Schema.String),
338
+ uid: Schema.optional(Schema.String),
339
+ name: Schema.optional(Schema.String),
340
+ annotations: Schema.optional(Schema.Record(Schema.String, Schema.String)),
341
+ }),
342
+ ).annotate({ identifier: "Saas" }) as any as Schema.Schema<Saas>;
343
+
344
+ export interface ReleaseRequirements {
345
+ /** Optional. A list of releases from which a unit can be upgraded to this one (optional). If left empty no constraints will be applied. When provided, unit upgrade requests to this release will check and enforce this constraint. */
346
+ upgradeableFromReleases?: Array<string>;
347
+ }
348
+
349
+ export const ReleaseRequirements: Schema.Schema<ReleaseRequirements> =
350
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
351
+ Schema.Struct({
352
+ upgradeableFromReleases: Schema.optional(Schema.Array(Schema.String)),
353
+ }),
354
+ ).annotate({
355
+ identifier: "ReleaseRequirements",
356
+ }) as any as Schema.Schema<ReleaseRequirements>;
357
+
358
+ export interface ErrorBudget {
359
+ /** Optional. The maximum number of failed units allowed in a location without pausing the rollout. */
360
+ allowedCount?: number;
361
+ /** Optional. The maximum percentage of units allowed to fail (0, 100] within a location without pausing the rollout. */
362
+ allowedPercentage?: number;
363
+ }
364
+
365
+ export const ErrorBudget: Schema.Schema<ErrorBudget> =
366
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
367
+ Schema.Struct({
368
+ allowedCount: Schema.optional(Schema.Number),
369
+ allowedPercentage: Schema.optional(Schema.Number),
370
+ }),
371
+ ).annotate({
372
+ identifier: "ErrorBudget",
373
+ }) as any as Schema.Schema<ErrorBudget>;
374
+
375
+ export interface RolloutKind {
376
+ /** Optional. Value among strict (enforcing maintenance policy and only looking at Units with maintenance policy), ignore (ignoring maintenance policy) and skip (skipping Units with maintenance policy) */
377
+ maintenancePolicyEnforcement?:
378
+ | "MAINTENANCE_POLICY_ENFORCEMENT_UNSPECIFIED"
379
+ | "MAINTENANCE_POLICY_ENFORCEMENT_STRICT"
380
+ | "MAINTENANCE_POLICY_ENFORCEMENT_IGNORED"
381
+ | "MAINTENANCE_POLICY_ENFORCEMENT_SKIPPED"
382
+ | (string & {});
383
+ /** Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */
384
+ etag?: string;
385
+ /** Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */
386
+ uid?: string;
387
+ /** Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */
388
+ updateTime?: string;
389
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}" */
390
+ name?: string;
391
+ /** Optional. CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout. */
392
+ unitFilter?: string;
393
+ /** Optional. The strategy used for executing a Rollout. This is a required field. There are two supported values strategies which are used to control - "Google.Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the associated UnitKind's Saas Locations. */
394
+ rolloutOrchestrationStrategy?: string;
395
+ /** Output only. The timestamp when the resource was created. */
396
+ createTime?: string;
397
+ /** Required. Immutable. UnitKind that this rollout kind corresponds to. Rollouts stemming from this rollout kind will target the units of this unit kind. In other words, this defines the population of target units to be upgraded by rollouts. */
398
+ unitKind?: string;
399
+ /** Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */
400
+ labels?: Record<string, string>;
401
+ /** Optional. The configuration for error budget. If the number of failed units exceeds max(allowed_count, allowed_ratio * total_units), the rollout will be paused. If not set, all units will be attempted to be updated regardless of the number of failures encountered. */
402
+ errorBudget?: ErrorBudget;
403
+ /** Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */
404
+ annotations?: Record<string, string>;
405
+ /** Optional. The config for updating the unit kind. By default, the unit kind will be updated on the rollout start. */
406
+ updateUnitKindStrategy?:
407
+ | "UPDATE_UNIT_KIND_STRATEGY_UNSPECIFIED"
408
+ | "UPDATE_UNIT_KIND_STRATEGY_ON_START"
409
+ | "UPDATE_UNIT_KIND_STRATEGY_NEVER"
410
+ | (string & {});
411
+ }
412
+
413
+ export const RolloutKind: Schema.Schema<RolloutKind> =
414
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
415
+ Schema.Struct({
416
+ maintenancePolicyEnforcement: Schema.optional(Schema.String),
417
+ etag: Schema.optional(Schema.String),
418
+ uid: Schema.optional(Schema.String),
419
+ updateTime: Schema.optional(Schema.String),
420
+ name: Schema.optional(Schema.String),
421
+ unitFilter: Schema.optional(Schema.String),
422
+ rolloutOrchestrationStrategy: Schema.optional(Schema.String),
423
+ createTime: Schema.optional(Schema.String),
424
+ unitKind: Schema.optional(Schema.String),
425
+ labels: Schema.optional(Schema.Record(Schema.String, Schema.String)),
426
+ errorBudget: Schema.optional(ErrorBudget),
427
+ annotations: Schema.optional(Schema.Record(Schema.String, Schema.String)),
428
+ updateUnitKindStrategy: Schema.optional(Schema.String),
429
+ }),
430
+ ).annotate({
431
+ identifier: "RolloutKind",
432
+ }) as any as Schema.Schema<RolloutKind>;
433
+
434
+ export interface Blueprint {
435
+ /** Optional. Immutable. URI to a blueprint used by the Unit (required unless unitKind or release is set). */
436
+ package?: string;
437
+ /** Output only. Version metadata if present on the blueprint. */
438
+ version?: string;
439
+ /** Output only. Type of the engine used to actuate the blueprint. e.g. terraform, helm etc. */
440
+ engine?: string;
441
+ }
442
+
443
+ export const Blueprint: Schema.Schema<Blueprint> =
444
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
445
+ Schema.Struct({
446
+ package: Schema.optional(Schema.String),
447
+ version: Schema.optional(Schema.String),
448
+ engine: Schema.optional(Schema.String),
449
+ }),
450
+ ).annotate({ identifier: "Blueprint" }) as any as Schema.Schema<Blueprint>;
451
+
452
+ export interface Release {
453
+ /** Optional. Set of requirements to be fulfilled on the Unit when using this Release. */
454
+ releaseRequirements?: ReleaseRequirements;
455
+ /** Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */
456
+ annotations?: Record<string, string>;
457
+ /** Optional. Output only. List of output variables declared on the blueprint and can be present with their values on the unit status */
458
+ outputVariables?: Array<UnitVariable>;
459
+ /** Output only. The timestamp when the resource was created. */
460
+ createTime?: string;
461
+ /** Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */
462
+ labels?: Record<string, string>;
463
+ /** Optional. Blueprints are OCI Images that contain all of the artifacts needed to provision a unit. */
464
+ blueprint?: Blueprint;
465
+ /** Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */
466
+ updateTime?: string;
467
+ /** Required. Immutable. Reference to the UnitKind this Release corresponds to (required and immutable once created). */
468
+ unitKind?: string;
469
+ /** Optional. Output only. List of input variables declared on the blueprint and can be present with their values on the unit spec */
470
+ inputVariables?: Array<UnitVariable>;
471
+ /** Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */
472
+ etag?: string;
473
+ /** Optional. Mapping of input variables to default values. Maximum 100 */
474
+ inputVariableDefaults?: Array<UnitVariable>;
475
+ /** Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */
476
+ uid?: string;
477
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/releases/{release}" */
478
+ name?: string;
479
+ }
480
+
481
+ export const Release: Schema.Schema<Release> =
482
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
483
+ Schema.Struct({
484
+ releaseRequirements: Schema.optional(ReleaseRequirements),
485
+ annotations: Schema.optional(Schema.Record(Schema.String, Schema.String)),
486
+ outputVariables: Schema.optional(Schema.Array(UnitVariable)),
487
+ createTime: Schema.optional(Schema.String),
488
+ labels: Schema.optional(Schema.Record(Schema.String, Schema.String)),
489
+ blueprint: Schema.optional(Blueprint),
490
+ updateTime: Schema.optional(Schema.String),
491
+ unitKind: Schema.optional(Schema.String),
492
+ inputVariables: Schema.optional(Schema.Array(UnitVariable)),
493
+ etag: Schema.optional(Schema.String),
494
+ inputVariableDefaults: Schema.optional(Schema.Array(UnitVariable)),
495
+ uid: Schema.optional(Schema.String),
496
+ name: Schema.optional(Schema.String),
497
+ }),
498
+ ).annotate({ identifier: "Release" }) as any as Schema.Schema<Release>;
499
+
500
+ export interface UnitDependency {
501
+ /** Output only. A reference to the Unit object. */
502
+ unit?: string;
503
+ /** Output only. Alias for the name of the dependency. */
504
+ alias?: string;
505
+ }
506
+
507
+ export const UnitDependency: Schema.Schema<UnitDependency> =
508
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
509
+ Schema.Struct({
510
+ unit: Schema.optional(Schema.String),
511
+ alias: Schema.optional(Schema.String),
512
+ }),
513
+ ).annotate({
514
+ identifier: "UnitDependency",
515
+ }) as any as Schema.Schema<UnitDependency>;
516
+
517
+ export interface ListSaasResponse {
518
+ /** Locations that could not be reached. */
519
+ unreachable?: Array<string>;
520
+ /** The resulting saas. */
521
+ saas?: Array<Saas>;
522
+ /** If present, the next page token can be provided to a subsequent ListSaas call to list the next page. If empty, there are no more pages. */
523
+ nextPageToken?: string;
524
+ }
525
+
526
+ export const ListSaasResponse: Schema.Schema<ListSaasResponse> =
527
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
528
+ Schema.Struct({
529
+ unreachable: Schema.optional(Schema.Array(Schema.String)),
530
+ saas: Schema.optional(Schema.Array(Saas)),
531
+ nextPageToken: Schema.optional(Schema.String),
532
+ }),
533
+ ).annotate({
534
+ identifier: "ListSaasResponse",
535
+ }) as any as Schema.Schema<ListSaasResponse>;
536
+
537
+ export interface RunRolloutActionParams {
538
+ /** Required. If true, the rollout will retry failed operations when resumed. This is applicable only the current state of the Rollout is PAUSED and the requested action is RUN. */
539
+ retryFailedOperations?: boolean;
540
+ }
541
+
542
+ export const RunRolloutActionParams: Schema.Schema<RunRolloutActionParams> =
543
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
544
+ Schema.Struct({
545
+ retryFailedOperations: Schema.optional(Schema.Boolean),
546
+ }),
547
+ ).annotate({
548
+ identifier: "RunRolloutActionParams",
549
+ }) as any as Schema.Schema<RunRolloutActionParams>;
550
+
551
+ export interface RolloutControl {
552
+ /** Optional. Parameters for the RUN action. It is an error to specify this if the RolloutAction is not set to RUN. By default, the rollout will retry failed operations when resumed. */
553
+ runParams?: RunRolloutActionParams;
554
+ /** Required. Action to be performed on the Rollout. The default behavior is to run the rollout until it naturally reaches a terminal state. */
555
+ action?:
556
+ | "ROLLOUT_ACTION_UNSPECIFIED"
557
+ | "ROLLOUT_ACTION_RUN"
558
+ | "ROLLOUT_ACTION_PAUSE"
559
+ | "ROLLOUT_ACTION_CANCEL"
560
+ | (string & {});
561
+ }
562
+
563
+ export const RolloutControl: Schema.Schema<RolloutControl> =
564
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
565
+ Schema.Struct({
566
+ runParams: Schema.optional(RunRolloutActionParams),
567
+ action: Schema.optional(Schema.String),
568
+ }),
569
+ ).annotate({
570
+ identifier: "RolloutControl",
571
+ }) as any as Schema.Schema<RolloutControl>;
572
+
573
+ export interface Aggregate {
574
+ /** Required. Group by which to aggregate. */
575
+ group?: string;
576
+ /** Required. Number of records in the group. */
577
+ count?: number;
578
+ }
579
+
580
+ export const Aggregate: Schema.Schema<Aggregate> =
581
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
582
+ Schema.Struct({
583
+ group: Schema.optional(Schema.String),
584
+ count: Schema.optional(Schema.Number),
585
+ }),
586
+ ).annotate({ identifier: "Aggregate" }) as any as Schema.Schema<Aggregate>;
587
+
588
+ export interface RolloutStats {
589
+ /** Optional. Output only. Unordered list. A breakdown of the progress of operations triggered by the rollout. Provides a count of Operations by their state. This can be used to determine the number of units which have been updated, or are scheduled to be updated. There will be at most one entry per group. Possible values for operation groups are: - "SCHEDULED" - "PENDING" - "RUNNING" - "SUCCEEDED" - "FAILED" - "CANCELLED" */
590
+ operationsByState?: Array<Aggregate>;
591
+ }
592
+
593
+ export const RolloutStats: Schema.Schema<RolloutStats> =
594
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
595
+ Schema.Struct({
596
+ operationsByState: Schema.optional(Schema.Array(Aggregate)),
597
+ }),
598
+ ).annotate({
599
+ identifier: "RolloutStats",
600
+ }) as any as Schema.Schema<RolloutStats>;
601
+
602
+ export interface Rollout {
603
+ /** Optional. CEL(https://github.com/google/cel-spec) formatted filter string against Unit. The filter will be applied to determine the eligible unit population. This filter can only reduce, but not expand the scope of the rollout. If not provided, the unit_filter from the RolloutKind will be used. */
604
+ unitFilter?: string;
605
+ /** Optional. Output only. The time when the rollout transitioned into its current state. */
606
+ stateTransitionTime?: string;
607
+ /** Optional. Requested change to the execution of this rollout. Default RolloutControl.action is ROLLOUT_ACTION_RUN meaning the rollout will be executed to completion while progressing through all natural Rollout States (such as RUNNING -> SUCCEEDED or RUNNING -> FAILED). Requests can only be made when the Rollout is in a non-terminal state. */
608
+ control?: RolloutControl;
609
+ /** Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */
610
+ labels?: Record<string, string>;
611
+ /** Optional. Immutable. Name of the Release that gets rolled out to target Units. Required if no other type of release is specified. */
612
+ release?: string;
613
+ /** Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */
614
+ etag?: string;
615
+ /** Optional. Output only. Output only snapshot of the effective unit filter at Rollout start time. Contains a CEL(https://github.com/google/cel-spec) expression consisting of a conjunction of Rollout.unit_filter and RolloutKind.unit_filter. This field captures the filter applied by the Rollout to determine the Unit population. If the associated RolloutKind's unit_filter is modified after the rollout is started, it will not be updated here. */
616
+ effectiveUnitFilter?: string;
617
+ /** Optional. Output only. The direct parent rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rollouts/{rollout_id}" */
618
+ parentRollout?: string;
619
+ /** Optional. Immutable. Name of the RolloutKind this rollout is stemming from and adhering to. */
620
+ rolloutKind?: string;
621
+ /** Optional. Output only. The time when the rollout finished execution (regardless of success, failure, or cancellation). Will be empty if the rollout hasn't finished yet. Once set, the rollout is in terminal state and all the results are final. */
622
+ endTime?: string;
623
+ /** Output only. The timestamp when the resource was created. */
624
+ createTime?: string;
625
+ /** Output only. Human readable message indicating details about the last state transition. */
626
+ stateMessage?: string;
627
+ /** Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */
628
+ annotations?: Record<string, string>;
629
+ /** Optional. Output only. The time when the rollout started executing. Will be empty if the rollout hasn't started yet. */
630
+ startTime?: string;
631
+ /** Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */
632
+ updateTime?: string;
633
+ /** Optional. Output only. Details about the progress of the rollout. */
634
+ stats?: RolloutStats;
635
+ /** Optional. Output only. The root rollout that this rollout is stemming from. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rollouts/{rollout_id}" */
636
+ rootRollout?: string;
637
+ /** Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */
638
+ uid?: string;
639
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rollout/{rollout_id}" */
640
+ name?: string;
641
+ /** Output only. The timestamp when the resource was marked for deletion (deletion is an asynchronous operation). */
642
+ deleteTime?: string;
643
+ /** Output only. Current state of the rollout. */
644
+ state?:
645
+ | "ROLLOUT_STATE_UNSPECIFIED"
646
+ | "ROLLOUT_STATE_RUNNING"
647
+ | "ROLLOUT_STATE_PAUSED"
648
+ | "ROLLOUT_STATE_SUCCEEDED"
649
+ | "ROLLOUT_STATE_FAILED"
650
+ | "ROLLOUT_STATE_CANCELLED"
651
+ | "ROLLOUT_STATE_WAITING"
652
+ | "ROLLOUT_STATE_CANCELLING"
653
+ | "ROLLOUT_STATE_RESUMING"
654
+ | "ROLLOUT_STATE_PAUSING"
655
+ | (string & {});
656
+ /** Optional. The strategy used for executing this Rollout. This strategy will override whatever strategy is specified in the RolloutKind. If not specified on creation, the strategy from RolloutKind will be used. There are two supported values strategies which are used to control - "Google.Cloud.Simple.AllAtOnce" - "Google.Cloud.Simple.OneLocationAtATime" A rollout with one of these simple strategies will rollout across all locations defined in the targeted UnitKind's Saas Locations. */
657
+ rolloutOrchestrationStrategy?: string;
658
+ }
659
+
660
+ export const Rollout: Schema.Schema<Rollout> =
661
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
662
+ Schema.Struct({
663
+ unitFilter: Schema.optional(Schema.String),
664
+ stateTransitionTime: Schema.optional(Schema.String),
665
+ control: Schema.optional(RolloutControl),
666
+ labels: Schema.optional(Schema.Record(Schema.String, Schema.String)),
667
+ release: Schema.optional(Schema.String),
668
+ etag: Schema.optional(Schema.String),
669
+ effectiveUnitFilter: Schema.optional(Schema.String),
670
+ parentRollout: Schema.optional(Schema.String),
671
+ rolloutKind: Schema.optional(Schema.String),
672
+ endTime: Schema.optional(Schema.String),
673
+ createTime: Schema.optional(Schema.String),
674
+ stateMessage: Schema.optional(Schema.String),
675
+ annotations: Schema.optional(Schema.Record(Schema.String, Schema.String)),
676
+ startTime: Schema.optional(Schema.String),
677
+ updateTime: Schema.optional(Schema.String),
678
+ stats: Schema.optional(RolloutStats),
679
+ rootRollout: Schema.optional(Schema.String),
680
+ uid: Schema.optional(Schema.String),
681
+ name: Schema.optional(Schema.String),
682
+ deleteTime: Schema.optional(Schema.String),
683
+ state: Schema.optional(Schema.String),
684
+ rolloutOrchestrationStrategy: Schema.optional(Schema.String),
685
+ }),
686
+ ).annotate({ identifier: "Rollout" }) as any as Schema.Schema<Rollout>;
687
+
688
+ export interface ListRolloutsResponse {
689
+ /** If present, the next page token can be provided to a subsequent ListRollouts call to list the next page. If empty, there are no more pages. */
690
+ nextPageToken?: string;
691
+ /** Locations that could not be reached. */
692
+ unreachable?: Array<string>;
693
+ /** The resulting rollouts. */
694
+ rollouts?: Array<Rollout>;
695
+ }
696
+
697
+ export const ListRolloutsResponse: Schema.Schema<ListRolloutsResponse> =
698
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
699
+ Schema.Struct({
700
+ nextPageToken: Schema.optional(Schema.String),
701
+ unreachable: Schema.optional(Schema.Array(Schema.String)),
702
+ rollouts: Schema.optional(Schema.Array(Rollout)),
703
+ }),
704
+ ).annotate({
705
+ identifier: "ListRolloutsResponse",
706
+ }) as any as Schema.Schema<ListRolloutsResponse>;
707
+
708
+ export interface Dependency {
709
+ /** Required. Immutable. The unit kind of the dependency. */
710
+ unitKind?: string;
711
+ /** Required. An alias for the dependency. Used for input variable mapping. */
712
+ alias?: string;
713
+ }
714
+
715
+ export const Dependency: Schema.Schema<Dependency> =
716
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
717
+ Schema.Struct({
718
+ unitKind: Schema.optional(Schema.String),
719
+ alias: Schema.optional(Schema.String),
720
+ }),
721
+ ).annotate({ identifier: "Dependency" }) as any as Schema.Schema<Dependency>;
722
+
723
+ export interface Empty {}
724
+
725
+ export const Empty: Schema.Schema<Empty> =
726
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() => Schema.Struct({})).annotate({
727
+ identifier: "Empty",
728
+ }) as any as Schema.Schema<Empty>;
729
+
730
+ export interface ToMapping {
731
+ /** Required. Name of the inputVariable on the dependency */
732
+ inputVariable?: string;
733
+ /** Required. Alias of the dependency that the inputVariable will pass its value to */
734
+ dependency?: string;
735
+ /** Optional. Tells SaaS Runtime if this mapping should be used during lookup or not */
736
+ ignoreForLookup?: boolean;
737
+ }
738
+
739
+ export const ToMapping: Schema.Schema<ToMapping> =
740
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
741
+ Schema.Struct({
742
+ inputVariable: Schema.optional(Schema.String),
743
+ dependency: Schema.optional(Schema.String),
744
+ ignoreForLookup: Schema.optional(Schema.Boolean),
745
+ }),
746
+ ).annotate({ identifier: "ToMapping" }) as any as Schema.Schema<ToMapping>;
747
+
748
+ export interface FromMapping {
749
+ /** Required. Alias of the dependency that the outputVariable will pass its value to */
750
+ dependency?: string;
751
+ /** Required. Name of the outputVariable on the dependency */
752
+ outputVariable?: string;
753
+ }
754
+
755
+ export const FromMapping: Schema.Schema<FromMapping> =
756
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
757
+ Schema.Struct({
758
+ dependency: Schema.optional(Schema.String),
759
+ outputVariable: Schema.optional(Schema.String),
760
+ }),
761
+ ).annotate({
762
+ identifier: "FromMapping",
763
+ }) as any as Schema.Schema<FromMapping>;
764
+
765
+ export interface VariableMapping {
766
+ /** Required. name of the variable */
767
+ variable?: string;
768
+ /** Optional. Input variables whose values will be passed on to dependencies. */
769
+ to?: ToMapping;
770
+ /** Optional. Output variables which will get their values from dependencies */
771
+ from?: FromMapping;
772
+ }
773
+
774
+ export const VariableMapping: Schema.Schema<VariableMapping> =
775
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
776
+ Schema.Struct({
777
+ variable: Schema.optional(Schema.String),
778
+ to: Schema.optional(ToMapping),
779
+ from: Schema.optional(FromMapping),
780
+ }),
781
+ ).annotate({
782
+ identifier: "VariableMapping",
783
+ }) as any as Schema.Schema<VariableMapping>;
784
+
785
+ export interface CancelOperationRequest {}
786
+
787
+ export const CancelOperationRequest: Schema.Schema<CancelOperationRequest> =
788
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() => Schema.Struct({})).annotate({
789
+ identifier: "CancelOperationRequest",
790
+ }) as any as Schema.Schema<CancelOperationRequest>;
791
+
792
+ export interface UnitKind {
793
+ /** Optional. A reference to the Release object to use as default for creating new units of this UnitKind (optional). If not specified, a new unit must explicitly reference which release to use for its creation. */
794
+ defaultRelease?: string;
795
+ /** Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */
796
+ updateTime?: string;
797
+ /** Optional. Immutable. List of other unit kinds that this release will depend on. Dependencies will be automatically provisioned if not found. Maximum 10. */
798
+ dependencies?: Array<Dependency>;
799
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/unitKinds/{unitKind}" */
800
+ name?: string;
801
+ /** Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */
802
+ uid?: string;
803
+ /** Optional. List of outputVariables for this unit kind will be passed to this unit's outputVariables. Maximum 100. */
804
+ outputVariableMappings?: Array<VariableMapping>;
805
+ /** Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */
806
+ etag?: string;
807
+ /** Optional. List of inputVariables for this release that will either be retrieved from a dependency’s outputVariables, or will be passed on to a dependency’s inputVariables. Maximum 100. */
808
+ inputVariableMappings?: Array<VariableMapping>;
809
+ /** Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with SaaS Runtime. Part of the SaaS Runtime common data model. Immutable once set. */
810
+ saas?: string;
811
+ /** Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */
812
+ annotations?: Record<string, string>;
813
+ /** Output only. The timestamp when the resource was created. */
814
+ createTime?: string;
815
+ /** Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */
816
+ labels?: Record<string, string>;
817
+ }
818
+
819
+ export const UnitKind: Schema.Schema<UnitKind> =
820
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
821
+ Schema.Struct({
822
+ defaultRelease: Schema.optional(Schema.String),
823
+ updateTime: Schema.optional(Schema.String),
824
+ dependencies: Schema.optional(Schema.Array(Dependency)),
825
+ name: Schema.optional(Schema.String),
826
+ uid: Schema.optional(Schema.String),
827
+ outputVariableMappings: Schema.optional(Schema.Array(VariableMapping)),
828
+ etag: Schema.optional(Schema.String),
829
+ inputVariableMappings: Schema.optional(Schema.Array(VariableMapping)),
830
+ saas: Schema.optional(Schema.String),
831
+ annotations: Schema.optional(Schema.Record(Schema.String, Schema.String)),
832
+ createTime: Schema.optional(Schema.String),
833
+ labels: Schema.optional(Schema.Record(Schema.String, Schema.String)),
834
+ }),
835
+ ).annotate({ identifier: "UnitKind" }) as any as Schema.Schema<UnitKind>;
836
+
837
+ export interface ListUnitKindsResponse {
838
+ /** Locations that could not be reached. */
839
+ unreachable?: Array<string>;
840
+ /** The resulting unit kinds. */
841
+ unitKinds?: Array<UnitKind>;
842
+ /** If present, the next page token can be provided to a subsequent ListUnitKinds call to list the next page. If empty, there are no more pages. */
843
+ nextPageToken?: string;
844
+ }
845
+
846
+ export const ListUnitKindsResponse: Schema.Schema<ListUnitKindsResponse> =
847
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
848
+ Schema.Struct({
849
+ unreachable: Schema.optional(Schema.Array(Schema.String)),
850
+ unitKinds: Schema.optional(Schema.Array(UnitKind)),
851
+ nextPageToken: Schema.optional(Schema.String),
852
+ }),
853
+ ).annotate({
854
+ identifier: "ListUnitKindsResponse",
855
+ }) as any as Schema.Schema<ListUnitKindsResponse>;
856
+
857
+ export interface ListLocationsResponse {
858
+ /** A list of locations that matches the specified filter in the request. */
859
+ locations?: Array<GoogleCloudLocationLocation>;
860
+ /** The standard List next-page token. */
861
+ nextPageToken?: string;
862
+ }
863
+
864
+ export const ListLocationsResponse: Schema.Schema<ListLocationsResponse> =
865
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
866
+ Schema.Struct({
867
+ locations: Schema.optional(Schema.Array(GoogleCloudLocationLocation)),
868
+ nextPageToken: Schema.optional(Schema.String),
869
+ }),
870
+ ).annotate({
871
+ identifier: "ListLocationsResponse",
872
+ }) as any as Schema.Schema<ListLocationsResponse>;
873
+
874
+ export interface MaintenanceSettings {
875
+ /** Optional. If present, it fixes the release on the unit until the given time; i.e. changes to the release field will be rejected. Rollouts should and will also respect this by not requesting an upgrade in the first place. */
876
+ pinnedUntilTime?: string;
877
+ }
878
+
879
+ export const MaintenanceSettings: Schema.Schema<MaintenanceSettings> =
880
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
881
+ Schema.Struct({
882
+ pinnedUntilTime: Schema.optional(Schema.String),
883
+ }),
884
+ ).annotate({
885
+ identifier: "MaintenanceSettings",
886
+ }) as any as Schema.Schema<MaintenanceSettings>;
887
+
888
+ export interface Unit {
889
+ /** Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */
890
+ labels?: Record<string, string>;
891
+ /** Output only. The timestamp when the resource was created. */
892
+ createTime?: string;
893
+ /** Optional. Output only. Indicates the current input variables deployed by the unit */
894
+ inputVariables?: Array<UnitVariable>;
895
+ /** Optional. Immutable. Indicates whether the Unit life cycle is controlled by the user or by the system. Immutable once created. */
896
+ managementMode?:
897
+ | "MANAGEMENT_MODE_UNSPECIFIED"
898
+ | "MANAGEMENT_MODE_USER"
899
+ | "MANAGEMENT_MODE_SYSTEM"
900
+ | (string & {});
901
+ /** Optional. Output only. If set, indicates the time when the system will start removing the unit. */
902
+ systemCleanupAt?: string;
903
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/units/{unit}" */
904
+ name?: string;
905
+ /** Optional. Captures requested directives for performing future maintenance on the unit. This includes a request for the unit to skip maintenance for a period of time and remain pinned to its current release as well as controls for postponing maintenance scheduled in future. */
906
+ maintenance?: MaintenanceSettings;
907
+ /** Optional. Output only. Indicates the system managed state of the unit. */
908
+ systemManagedState?:
909
+ | "SYSTEM_MANAGED_STATE_UNSPECIFIED"
910
+ | "SYSTEM_MANAGED_STATE_ACTIVE"
911
+ | "SYSTEM_MANAGED_STATE_INACTIVE"
912
+ | "SYSTEM_MANAGED_STATE_DECOMMISSIONED"
913
+ | (string & {});
914
+ /** Optional. Output only. List of concurrent UnitOperations that are operating on this Unit. */
915
+ ongoingOperations?: Array<string>;
916
+ /** Optional. Output only. Current lifecycle state of the resource (e.g. if it's being created or ready to use). */
917
+ state?:
918
+ | "UNIT_STATE_UNSPECIFIED"
919
+ | "UNIT_STATE_NOT_PROVISIONED"
920
+ | "UNIT_STATE_PROVISIONING"
921
+ | "UNIT_STATE_UPDATING"
922
+ | "UNIT_STATE_DEPROVISIONING"
923
+ | "UNIT_STATE_READY"
924
+ | "UNIT_STATE_ERROR"
925
+ | (string & {});
926
+ /** Optional. Output only. The current Release object for this Unit. */
927
+ release?: string;
928
+ /** Optional. Reference to the Saas Tenant resource this unit belongs to. This for example informs the maintenance policies to use for scheduling future updates on a unit. (optional and immutable once created) */
929
+ tenant?: string;
930
+ /** Output only. Indicates whether the resource location satisfies Zone Separation constraints. This is false by default. */
931
+ satisfiesPzs?: boolean;
932
+ /** Optional. Reference to the UnitKind this Unit belongs to. Immutable once set. */
933
+ unitKind?: string;
934
+ /** Optional. Output only. Set of dependencies for this unit. Maximum 10. */
935
+ dependencies?: Array<UnitDependency>;
936
+ /** Optional. Output only. List of scheduled UnitOperations for this unit. */
937
+ scheduledOperations?: Array<string>;
938
+ /** Output only. Indicates whether the resource location satisfies Zone Isolation constraints. This is false by default. */
939
+ satisfiesPzi?: boolean;
940
+ /** Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */
941
+ etag?: string;
942
+ /** Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */
943
+ updateTime?: string;
944
+ /** Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */
945
+ uid?: string;
946
+ /** Optional. Output only. List of Units that depend on this unit. Unit can only be deprovisioned if this list is empty. Maximum 1000. */
947
+ dependents?: Array<UnitDependency>;
948
+ /** Optional. Output only. List of pending (wait to be executed) UnitOperations for this unit. */
949
+ pendingOperations?: Array<string>;
950
+ /** Optional. Output only. A set of conditions which indicate the various conditions this resource can have. */
951
+ conditions?: Array<UnitCondition>;
952
+ /** Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */
953
+ annotations?: Record<string, string>;
954
+ /** Optional. Output only. Set of key/value pairs corresponding to output variables from execution of actuation templates. The variables are declared in actuation configs (e.g in helm chart or terraform) and the values are fetched and returned by the actuation engine upon completion of execution. */
955
+ outputVariables?: Array<UnitVariable>;
956
+ }
957
+
958
+ export const Unit: Schema.Schema<Unit> =
959
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
960
+ Schema.Struct({
961
+ labels: Schema.optional(Schema.Record(Schema.String, Schema.String)),
962
+ createTime: Schema.optional(Schema.String),
963
+ inputVariables: Schema.optional(Schema.Array(UnitVariable)),
964
+ managementMode: Schema.optional(Schema.String),
965
+ systemCleanupAt: Schema.optional(Schema.String),
966
+ name: Schema.optional(Schema.String),
967
+ maintenance: Schema.optional(MaintenanceSettings),
968
+ systemManagedState: Schema.optional(Schema.String),
969
+ ongoingOperations: Schema.optional(Schema.Array(Schema.String)),
970
+ state: Schema.optional(Schema.String),
971
+ release: Schema.optional(Schema.String),
972
+ tenant: Schema.optional(Schema.String),
973
+ satisfiesPzs: Schema.optional(Schema.Boolean),
974
+ unitKind: Schema.optional(Schema.String),
975
+ dependencies: Schema.optional(Schema.Array(UnitDependency)),
976
+ scheduledOperations: Schema.optional(Schema.Array(Schema.String)),
977
+ satisfiesPzi: Schema.optional(Schema.Boolean),
978
+ etag: Schema.optional(Schema.String),
979
+ updateTime: Schema.optional(Schema.String),
980
+ uid: Schema.optional(Schema.String),
981
+ dependents: Schema.optional(Schema.Array(UnitDependency)),
982
+ pendingOperations: Schema.optional(Schema.Array(Schema.String)),
983
+ conditions: Schema.optional(Schema.Array(UnitCondition)),
984
+ annotations: Schema.optional(Schema.Record(Schema.String, Schema.String)),
985
+ outputVariables: Schema.optional(Schema.Array(UnitVariable)),
986
+ }),
987
+ ).annotate({ identifier: "Unit" }) as any as Schema.Schema<Unit>;
988
+
989
+ export interface Operation {
990
+ /** If the value is `false`, it means the operation is still in progress. If `true`, the operation is completed, and either `error` or `response` is available. */
991
+ done?: boolean;
992
+ /** Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any. */
993
+ metadata?: Record<string, unknown>;
994
+ /** The error result of the operation in case of failure or cancellation. */
995
+ error?: Status;
996
+ /** The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the `name` should be a resource name ending with `operations/{unique_id}`. */
997
+ name?: string;
998
+ /** The normal, successful response of the operation. If the original method returns no data on success, such as `Delete`, the response is `google.protobuf.Empty`. If the original method is standard `Get`/`Create`/`Update`, the response should be the resource. For other methods, the response should have the type `XxxResponse`, where `Xxx` is the original method name. For example, if the original method name is `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. */
999
+ response?: Record<string, unknown>;
1000
+ }
1001
+
1002
+ export const Operation: Schema.Schema<Operation> =
1003
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
1004
+ Schema.Struct({
1005
+ done: Schema.optional(Schema.Boolean),
1006
+ metadata: Schema.optional(Schema.Record(Schema.String, Schema.Unknown)),
1007
+ error: Schema.optional(Status),
1008
+ name: Schema.optional(Schema.String),
1009
+ response: Schema.optional(Schema.Record(Schema.String, Schema.Unknown)),
1010
+ }),
1011
+ ).annotate({ identifier: "Operation" }) as any as Schema.Schema<Operation>;
1012
+
1013
+ export interface Tenant {
1014
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/tenants/{tenant}" */
1015
+ name?: string;
1016
+ /** Required. Immutable. A reference to the Saas that defines the product (managed service) that the producer wants to manage with SaaS Runtime. Part of the SaaS Runtime common data model. */
1017
+ saas?: string;
1018
+ /** Optional. The labels on the resource, which can be used for categorization. similar to Kubernetes resource labels. */
1019
+ labels?: Record<string, string>;
1020
+ /** Optional. Annotations is an unstructured key-value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. They are not queryable and should be preserved when modifying objects. More info: https://kubernetes.io/docs/user-guide/annotations */
1021
+ annotations?: Record<string, string>;
1022
+ /** Output only. The timestamp when the resource was created. */
1023
+ createTime?: string;
1024
+ /** Optional. Immutable. A reference to the consumer resource this SaaS Tenant is representing. The relationship with a consumer resource can be used by SaaS Runtime for retrieving consumer-defined settings and policies such as maintenance policies (using Unified Maintenance Policy API). */
1025
+ consumerResource?: string;
1026
+ /** Output only. The timestamp when the resource was last updated. Any change to the resource made by users must refresh this value. Changes to a resource made by the service should refresh this value. */
1027
+ updateTime?: string;
1028
+ /** Output only. The unique identifier of the resource. UID is unique in the time and space for this resource within the scope of the service. It is typically generated by the server on successful creation of a resource and must not be changed. UID is used to uniquely identify resources with resource name reuses. This should be a UUID4. */
1029
+ uid?: string;
1030
+ /** Output only. An opaque value that uniquely identifies a version or generation of a resource. It can be used to confirm that the client and server agree on the ordering of a resource being written. */
1031
+ etag?: string;
1032
+ }
1033
+
1034
+ export const Tenant: Schema.Schema<Tenant> =
1035
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
1036
+ Schema.Struct({
1037
+ name: Schema.optional(Schema.String),
1038
+ saas: Schema.optional(Schema.String),
1039
+ labels: Schema.optional(Schema.Record(Schema.String, Schema.String)),
1040
+ annotations: Schema.optional(Schema.Record(Schema.String, Schema.String)),
1041
+ createTime: Schema.optional(Schema.String),
1042
+ consumerResource: Schema.optional(Schema.String),
1043
+ updateTime: Schema.optional(Schema.String),
1044
+ uid: Schema.optional(Schema.String),
1045
+ etag: Schema.optional(Schema.String),
1046
+ }),
1047
+ ).annotate({ identifier: "Tenant" }) as any as Schema.Schema<Tenant>;
1048
+
1049
+ export interface ListTenantsResponse {
1050
+ /** If present, the next page token can be provided to a subsequent ListTenants call to list the next page. If empty, there are no more pages. */
1051
+ nextPageToken?: string;
1052
+ /** Locations that could not be reached. */
1053
+ unreachable?: Array<string>;
1054
+ /** The resulting tenants. */
1055
+ tenants?: Array<Tenant>;
1056
+ }
1057
+
1058
+ export const ListTenantsResponse: Schema.Schema<ListTenantsResponse> =
1059
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
1060
+ Schema.Struct({
1061
+ nextPageToken: Schema.optional(Schema.String),
1062
+ unreachable: Schema.optional(Schema.Array(Schema.String)),
1063
+ tenants: Schema.optional(Schema.Array(Tenant)),
1064
+ }),
1065
+ ).annotate({
1066
+ identifier: "ListTenantsResponse",
1067
+ }) as any as Schema.Schema<ListTenantsResponse>;
1068
+
1069
+ export interface ListOperationsResponse {
1070
+ /** The standard List next-page token. */
1071
+ nextPageToken?: string;
1072
+ /** A list of operations that matches the specified filter in the request. */
1073
+ operations?: Array<Operation>;
1074
+ /** Unordered list. Unreachable resources. Populated when the request sets `ListOperationsRequest.return_partial_success` and reads across collections. For example, when attempting to list all resources across all supported locations. */
1075
+ unreachable?: Array<string>;
1076
+ }
1077
+
1078
+ export const ListOperationsResponse: Schema.Schema<ListOperationsResponse> =
1079
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
1080
+ Schema.Struct({
1081
+ nextPageToken: Schema.optional(Schema.String),
1082
+ operations: Schema.optional(Schema.Array(Operation)),
1083
+ unreachable: Schema.optional(Schema.Array(Schema.String)),
1084
+ }),
1085
+ ).annotate({
1086
+ identifier: "ListOperationsResponse",
1087
+ }) as any as Schema.Schema<ListOperationsResponse>;
1088
+
1089
+ export interface ListRolloutKindsResponse {
1090
+ /** The resulting rollout kinds. */
1091
+ rolloutKinds?: Array<RolloutKind>;
1092
+ /** If present, the next page token can be provided to a subsequent ListRolloutKinds call to list the next page. If empty, there are no more pages. */
1093
+ nextPageToken?: string;
1094
+ /** Locations that could not be reached. */
1095
+ unreachable?: Array<string>;
1096
+ }
1097
+
1098
+ export const ListRolloutKindsResponse: Schema.Schema<ListRolloutKindsResponse> =
1099
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
1100
+ Schema.Struct({
1101
+ rolloutKinds: Schema.optional(Schema.Array(RolloutKind)),
1102
+ nextPageToken: Schema.optional(Schema.String),
1103
+ unreachable: Schema.optional(Schema.Array(Schema.String)),
1104
+ }),
1105
+ ).annotate({
1106
+ identifier: "ListRolloutKindsResponse",
1107
+ }) as any as Schema.Schema<ListRolloutKindsResponse>;
1108
+
1109
+ export interface ListUnitsResponse {
1110
+ /** If present, the next page token can be provided to a subsequent ListUnits call to list the next page. If empty, there are no more pages. */
1111
+ nextPageToken?: string;
1112
+ /** The resulting units. */
1113
+ units?: Array<Unit>;
1114
+ /** Locations that could not be reached. */
1115
+ unreachable?: Array<string>;
1116
+ }
1117
+
1118
+ export const ListUnitsResponse: Schema.Schema<ListUnitsResponse> =
1119
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
1120
+ Schema.Struct({
1121
+ nextPageToken: Schema.optional(Schema.String),
1122
+ units: Schema.optional(Schema.Array(Unit)),
1123
+ unreachable: Schema.optional(Schema.Array(Schema.String)),
1124
+ }),
1125
+ ).annotate({
1126
+ identifier: "ListUnitsResponse",
1127
+ }) as any as Schema.Schema<ListUnitsResponse>;
1128
+
1129
+ export interface ListUnitOperationsResponse {
1130
+ /** If present, the next page token can be provided to a subsequent ListUnitOperations call to list the next page. If empty, there are no more pages. */
1131
+ nextPageToken?: string;
1132
+ /** Locations that could not be reached. */
1133
+ unreachable?: Array<string>;
1134
+ /** The resulting unit operations. */
1135
+ unitOperations?: Array<UnitOperation>;
1136
+ }
1137
+
1138
+ export const ListUnitOperationsResponse: Schema.Schema<ListUnitOperationsResponse> =
1139
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
1140
+ Schema.Struct({
1141
+ nextPageToken: Schema.optional(Schema.String),
1142
+ unreachable: Schema.optional(Schema.Array(Schema.String)),
1143
+ unitOperations: Schema.optional(Schema.Array(UnitOperation)),
1144
+ }),
1145
+ ).annotate({
1146
+ identifier: "ListUnitOperationsResponse",
1147
+ }) as any as Schema.Schema<ListUnitOperationsResponse>;
1148
+
1149
+ export interface ListReleasesResponse {
1150
+ /** The resulting releases. */
1151
+ releases?: Array<Release>;
1152
+ /** If present, the next page token can be provided to a subsequent ListReleases call to list the next page. If empty, there are no more pages. */
1153
+ nextPageToken?: string;
1154
+ /** Locations that could not be reached. */
1155
+ unreachable?: Array<string>;
1156
+ }
1157
+
1158
+ export const ListReleasesResponse: Schema.Schema<ListReleasesResponse> =
1159
+ /*@__PURE__*/ /*#__PURE__*/ Schema.suspend(() =>
1160
+ Schema.Struct({
1161
+ releases: Schema.optional(Schema.Array(Release)),
1162
+ nextPageToken: Schema.optional(Schema.String),
1163
+ unreachable: Schema.optional(Schema.Array(Schema.String)),
1164
+ }),
1165
+ ).annotate({
1166
+ identifier: "ListReleasesResponse",
1167
+ }) as any as Schema.Schema<ListReleasesResponse>;
1168
+
1169
+ // ==========================================================================
1170
+ // Operations
1171
+ // ==========================================================================
1172
+
1173
+ export interface GetOperationsRequest {
1174
+ /** The name of the operation resource. */
1175
+ name: string;
1176
+ }
1177
+
1178
+ export const GetOperationsRequest = /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1179
+ name: Schema.String.pipe(T.HttpPath("name")),
1180
+ }).pipe(
1181
+ T.Http({ method: "GET", path: "v1/operations/{operationsId}" }),
1182
+ svc,
1183
+ ) as unknown as Schema.Schema<GetOperationsRequest>;
1184
+
1185
+ export type GetOperationsResponse = Operation;
1186
+ export const GetOperationsResponse = /*@__PURE__*/ /*#__PURE__*/ Operation;
1187
+
1188
+ export type GetOperationsError = DefaultErrors;
1189
+
1190
+ /** Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service. */
1191
+ export const getOperations: API.OperationMethod<
1192
+ GetOperationsRequest,
1193
+ GetOperationsResponse,
1194
+ GetOperationsError,
1195
+ Credentials | HttpClient.HttpClient
1196
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1197
+ input: GetOperationsRequest,
1198
+ output: GetOperationsResponse,
1199
+ errors: [],
1200
+ }));
1201
+
1202
+ export interface CancelOperationsRequest {
1203
+ /** The name of the operation resource to be cancelled. */
1204
+ name: string;
1205
+ /** Request body */
1206
+ body?: CancelOperationRequest;
1207
+ }
1208
+
1209
+ export const CancelOperationsRequest =
1210
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1211
+ name: Schema.String.pipe(T.HttpPath("name")),
1212
+ body: Schema.optional(CancelOperationRequest).pipe(T.HttpBody()),
1213
+ }).pipe(
1214
+ T.Http({
1215
+ method: "POST",
1216
+ path: "v1/operations/{operationsId}:cancel",
1217
+ hasBody: true,
1218
+ }),
1219
+ svc,
1220
+ ) as unknown as Schema.Schema<CancelOperationsRequest>;
1221
+
1222
+ export type CancelOperationsResponse = Empty;
1223
+ export const CancelOperationsResponse = /*@__PURE__*/ /*#__PURE__*/ Empty;
1224
+
1225
+ export type CancelOperationsError = DefaultErrors;
1226
+
1227
+ /** Starts asynchronous cancellation on a long-running operation. The server makes a best effort to cancel the operation, but success is not guaranteed. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or other methods to check whether the cancellation succeeded or whether the operation completed despite cancellation. On successful cancellation, the operation is not deleted; instead, it becomes an operation with an Operation.error value with a google.rpc.Status.code of `1`, corresponding to `Code.CANCELLED`. */
1228
+ export const cancelOperations: API.OperationMethod<
1229
+ CancelOperationsRequest,
1230
+ CancelOperationsResponse,
1231
+ CancelOperationsError,
1232
+ Credentials | HttpClient.HttpClient
1233
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1234
+ input: CancelOperationsRequest,
1235
+ output: CancelOperationsResponse,
1236
+ errors: [],
1237
+ }));
1238
+
1239
+ export interface DeleteOperationsRequest {
1240
+ /** The name of the operation resource to be deleted. */
1241
+ name: string;
1242
+ }
1243
+
1244
+ export const DeleteOperationsRequest =
1245
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1246
+ name: Schema.String.pipe(T.HttpPath("name")),
1247
+ }).pipe(
1248
+ T.Http({ method: "DELETE", path: "v1/operations/{operationsId}" }),
1249
+ svc,
1250
+ ) as unknown as Schema.Schema<DeleteOperationsRequest>;
1251
+
1252
+ export type DeleteOperationsResponse = Empty;
1253
+ export const DeleteOperationsResponse = /*@__PURE__*/ /*#__PURE__*/ Empty;
1254
+
1255
+ export type DeleteOperationsError = DefaultErrors;
1256
+
1257
+ /** Deletes a long-running operation. This method indicates that the client is no longer interested in the operation result. It does not cancel the operation. If the server doesn't support this method, it returns `google.rpc.Code.UNIMPLEMENTED`. */
1258
+ export const deleteOperations: API.OperationMethod<
1259
+ DeleteOperationsRequest,
1260
+ DeleteOperationsResponse,
1261
+ DeleteOperationsError,
1262
+ Credentials | HttpClient.HttpClient
1263
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1264
+ input: DeleteOperationsRequest,
1265
+ output: DeleteOperationsResponse,
1266
+ errors: [],
1267
+ }));
1268
+
1269
+ export interface ListOperationsRequest {
1270
+ /** The standard list page size. */
1271
+ pageSize?: number;
1272
+ /** When set to `true`, operations that are reachable are returned as normal, and those that are unreachable are returned in the ListOperationsResponse.unreachable field. This can only be `true` when reading across collections. For example, when `parent` is set to `"projects/example/locations/-"`. This field is not supported by default and will result in an `UNIMPLEMENTED` error if set unless explicitly documented otherwise in service or product specific documentation. */
1273
+ returnPartialSuccess?: boolean;
1274
+ /** The name of the operation's parent resource. */
1275
+ name: string;
1276
+ /** The standard list page token. */
1277
+ pageToken?: string;
1278
+ /** The standard list filter. */
1279
+ filter?: string;
1280
+ }
1281
+
1282
+ export const ListOperationsRequest = /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1283
+ pageSize: Schema.optional(Schema.Number).pipe(T.HttpQuery("pageSize")),
1284
+ returnPartialSuccess: Schema.optional(Schema.Boolean).pipe(
1285
+ T.HttpQuery("returnPartialSuccess"),
1286
+ ),
1287
+ name: Schema.String.pipe(T.HttpPath("name")),
1288
+ pageToken: Schema.optional(Schema.String).pipe(T.HttpQuery("pageToken")),
1289
+ filter: Schema.optional(Schema.String).pipe(T.HttpQuery("filter")),
1290
+ }).pipe(
1291
+ T.Http({ method: "GET", path: "v1/operations" }),
1292
+ svc,
1293
+ ) as unknown as Schema.Schema<ListOperationsRequest>;
1294
+
1295
+ export type ListOperationsResponse_Op = ListOperationsResponse;
1296
+ export const ListOperationsResponse_Op =
1297
+ /*@__PURE__*/ /*#__PURE__*/ ListOperationsResponse;
1298
+
1299
+ export type ListOperationsError = DefaultErrors;
1300
+
1301
+ /** Lists operations that match the specified filter in the request. If the server doesn't support this method, it returns `UNIMPLEMENTED`. */
1302
+ export const listOperations: API.PaginatedOperationMethod<
1303
+ ListOperationsRequest,
1304
+ ListOperationsResponse_Op,
1305
+ ListOperationsError,
1306
+ Credentials | HttpClient.HttpClient
1307
+ > = /*@__PURE__*/ /*#__PURE__*/ API.makePaginated(() => ({
1308
+ input: ListOperationsRequest,
1309
+ output: ListOperationsResponse_Op,
1310
+ errors: [],
1311
+ pagination: {
1312
+ inputToken: "pageToken",
1313
+ outputToken: "nextPageToken",
1314
+ },
1315
+ }));
1316
+
1317
+ export interface ListProjectsLocationsRequest {
1318
+ /** A filter to narrow down results to a preferred subset. The filtering language accepts strings like `"displayName=tokyo"`, and is documented in more detail in [AIP-160](https://google.aip.dev/160). */
1319
+ filter?: string;
1320
+ /** The maximum number of results to return. If not set, the service selects a default. */
1321
+ pageSize?: number;
1322
+ /** A page token received from the `next_page_token` field in the response. Send that page token to receive the subsequent page. */
1323
+ pageToken?: string;
1324
+ /** The resource that owns the locations collection, if applicable. */
1325
+ name: string;
1326
+ /** Optional. Do not use this field. It is unsupported and is ignored unless explicitly documented otherwise. This is primarily for internal usage. */
1327
+ extraLocationTypes?: string[];
1328
+ }
1329
+
1330
+ export const ListProjectsLocationsRequest =
1331
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1332
+ filter: Schema.optional(Schema.String).pipe(T.HttpQuery("filter")),
1333
+ pageSize: Schema.optional(Schema.Number).pipe(T.HttpQuery("pageSize")),
1334
+ pageToken: Schema.optional(Schema.String).pipe(T.HttpQuery("pageToken")),
1335
+ name: Schema.String.pipe(T.HttpPath("name")),
1336
+ extraLocationTypes: Schema.optional(Schema.Array(Schema.String)).pipe(
1337
+ T.HttpQuery("extraLocationTypes"),
1338
+ ),
1339
+ }).pipe(
1340
+ T.Http({ method: "GET", path: "v1/projects/{projectsId}/locations" }),
1341
+ svc,
1342
+ ) as unknown as Schema.Schema<ListProjectsLocationsRequest>;
1343
+
1344
+ export type ListProjectsLocationsResponse = ListLocationsResponse;
1345
+ export const ListProjectsLocationsResponse =
1346
+ /*@__PURE__*/ /*#__PURE__*/ ListLocationsResponse;
1347
+
1348
+ export type ListProjectsLocationsError = DefaultErrors;
1349
+
1350
+ /** Lists information about the supported locations for this service. This method can be called in two ways: * **List all public locations:** Use the path `GET /v1/locations`. * **List project-visible locations:** Use the path `GET /v1/projects/{project_id}/locations`. This may include public locations as well as private or other locations specifically visible to the project. */
1351
+ export const listProjectsLocations: API.PaginatedOperationMethod<
1352
+ ListProjectsLocationsRequest,
1353
+ ListProjectsLocationsResponse,
1354
+ ListProjectsLocationsError,
1355
+ Credentials | HttpClient.HttpClient
1356
+ > = /*@__PURE__*/ /*#__PURE__*/ API.makePaginated(() => ({
1357
+ input: ListProjectsLocationsRequest,
1358
+ output: ListProjectsLocationsResponse,
1359
+ errors: [],
1360
+ pagination: {
1361
+ inputToken: "pageToken",
1362
+ outputToken: "nextPageToken",
1363
+ },
1364
+ }));
1365
+
1366
+ export interface GetProjectsLocationsRequest {
1367
+ /** Resource name for the location. */
1368
+ name: string;
1369
+ }
1370
+
1371
+ export const GetProjectsLocationsRequest =
1372
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1373
+ name: Schema.String.pipe(T.HttpPath("name")),
1374
+ }).pipe(
1375
+ T.Http({
1376
+ method: "GET",
1377
+ path: "v1/projects/{projectsId}/locations/{locationsId}",
1378
+ }),
1379
+ svc,
1380
+ ) as unknown as Schema.Schema<GetProjectsLocationsRequest>;
1381
+
1382
+ export type GetProjectsLocationsResponse = GoogleCloudLocationLocation;
1383
+ export const GetProjectsLocationsResponse =
1384
+ /*@__PURE__*/ /*#__PURE__*/ GoogleCloudLocationLocation;
1385
+
1386
+ export type GetProjectsLocationsError = DefaultErrors;
1387
+
1388
+ /** Gets information about a location. */
1389
+ export const getProjectsLocations: API.OperationMethod<
1390
+ GetProjectsLocationsRequest,
1391
+ GetProjectsLocationsResponse,
1392
+ GetProjectsLocationsError,
1393
+ Credentials | HttpClient.HttpClient
1394
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1395
+ input: GetProjectsLocationsRequest,
1396
+ output: GetProjectsLocationsResponse,
1397
+ errors: [],
1398
+ }));
1399
+
1400
+ export interface PatchProjectsLocationsRolloutKindsRequest {
1401
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rolloutKinds/{rollout_kind_id}" */
1402
+ name: string;
1403
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
1404
+ validateOnly?: boolean;
1405
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
1406
+ requestId?: string;
1407
+ /** Field mask is used to specify the fields to be overwritten in the RolloutKind resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields in the RolloutKind will be overwritten. */
1408
+ updateMask?: string;
1409
+ /** Request body */
1410
+ body?: RolloutKind;
1411
+ }
1412
+
1413
+ export const PatchProjectsLocationsRolloutKindsRequest =
1414
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1415
+ name: Schema.String.pipe(T.HttpPath("name")),
1416
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
1417
+ T.HttpQuery("validateOnly"),
1418
+ ),
1419
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
1420
+ updateMask: Schema.optional(Schema.String).pipe(T.HttpQuery("updateMask")),
1421
+ body: Schema.optional(RolloutKind).pipe(T.HttpBody()),
1422
+ }).pipe(
1423
+ T.Http({
1424
+ method: "PATCH",
1425
+ path: "v1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}",
1426
+ hasBody: true,
1427
+ }),
1428
+ svc,
1429
+ ) as unknown as Schema.Schema<PatchProjectsLocationsRolloutKindsRequest>;
1430
+
1431
+ export type PatchProjectsLocationsRolloutKindsResponse = RolloutKind;
1432
+ export const PatchProjectsLocationsRolloutKindsResponse =
1433
+ /*@__PURE__*/ /*#__PURE__*/ RolloutKind;
1434
+
1435
+ export type PatchProjectsLocationsRolloutKindsError = DefaultErrors;
1436
+
1437
+ /** Update a single rollout kind. */
1438
+ export const patchProjectsLocationsRolloutKinds: API.OperationMethod<
1439
+ PatchProjectsLocationsRolloutKindsRequest,
1440
+ PatchProjectsLocationsRolloutKindsResponse,
1441
+ PatchProjectsLocationsRolloutKindsError,
1442
+ Credentials | HttpClient.HttpClient
1443
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1444
+ input: PatchProjectsLocationsRolloutKindsRequest,
1445
+ output: PatchProjectsLocationsRolloutKindsResponse,
1446
+ errors: [],
1447
+ }));
1448
+
1449
+ export interface ListProjectsLocationsRolloutKindsRequest {
1450
+ /** Order results as specified in https://google.aip.dev/132. */
1451
+ orderBy?: string;
1452
+ /** Required. The parent of the rollout kind. */
1453
+ parent: string;
1454
+ /** Filter the list as specified in https://google.aip.dev/160. */
1455
+ filter?: string;
1456
+ /** The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. */
1457
+ pageToken?: string;
1458
+ /** The maximum number of rollout kinds to send per page. */
1459
+ pageSize?: number;
1460
+ }
1461
+
1462
+ export const ListProjectsLocationsRolloutKindsRequest =
1463
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1464
+ orderBy: Schema.optional(Schema.String).pipe(T.HttpQuery("orderBy")),
1465
+ parent: Schema.String.pipe(T.HttpPath("parent")),
1466
+ filter: Schema.optional(Schema.String).pipe(T.HttpQuery("filter")),
1467
+ pageToken: Schema.optional(Schema.String).pipe(T.HttpQuery("pageToken")),
1468
+ pageSize: Schema.optional(Schema.Number).pipe(T.HttpQuery("pageSize")),
1469
+ }).pipe(
1470
+ T.Http({
1471
+ method: "GET",
1472
+ path: "v1/projects/{projectsId}/locations/{locationsId}/rolloutKinds",
1473
+ }),
1474
+ svc,
1475
+ ) as unknown as Schema.Schema<ListProjectsLocationsRolloutKindsRequest>;
1476
+
1477
+ export type ListProjectsLocationsRolloutKindsResponse =
1478
+ ListRolloutKindsResponse;
1479
+ export const ListProjectsLocationsRolloutKindsResponse =
1480
+ /*@__PURE__*/ /*#__PURE__*/ ListRolloutKindsResponse;
1481
+
1482
+ export type ListProjectsLocationsRolloutKindsError = DefaultErrors;
1483
+
1484
+ /** Retrieve a collection of rollout kinds. */
1485
+ export const listProjectsLocationsRolloutKinds: API.PaginatedOperationMethod<
1486
+ ListProjectsLocationsRolloutKindsRequest,
1487
+ ListProjectsLocationsRolloutKindsResponse,
1488
+ ListProjectsLocationsRolloutKindsError,
1489
+ Credentials | HttpClient.HttpClient
1490
+ > = /*@__PURE__*/ /*#__PURE__*/ API.makePaginated(() => ({
1491
+ input: ListProjectsLocationsRolloutKindsRequest,
1492
+ output: ListProjectsLocationsRolloutKindsResponse,
1493
+ errors: [],
1494
+ pagination: {
1495
+ inputToken: "pageToken",
1496
+ outputToken: "nextPageToken",
1497
+ },
1498
+ }));
1499
+
1500
+ export interface GetProjectsLocationsRolloutKindsRequest {
1501
+ /** Required. The resource name of the resource within a service. */
1502
+ name: string;
1503
+ }
1504
+
1505
+ export const GetProjectsLocationsRolloutKindsRequest =
1506
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1507
+ name: Schema.String.pipe(T.HttpPath("name")),
1508
+ }).pipe(
1509
+ T.Http({
1510
+ method: "GET",
1511
+ path: "v1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}",
1512
+ }),
1513
+ svc,
1514
+ ) as unknown as Schema.Schema<GetProjectsLocationsRolloutKindsRequest>;
1515
+
1516
+ export type GetProjectsLocationsRolloutKindsResponse = RolloutKind;
1517
+ export const GetProjectsLocationsRolloutKindsResponse =
1518
+ /*@__PURE__*/ /*#__PURE__*/ RolloutKind;
1519
+
1520
+ export type GetProjectsLocationsRolloutKindsError = DefaultErrors;
1521
+
1522
+ /** Retrieve a single rollout kind. */
1523
+ export const getProjectsLocationsRolloutKinds: API.OperationMethod<
1524
+ GetProjectsLocationsRolloutKindsRequest,
1525
+ GetProjectsLocationsRolloutKindsResponse,
1526
+ GetProjectsLocationsRolloutKindsError,
1527
+ Credentials | HttpClient.HttpClient
1528
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1529
+ input: GetProjectsLocationsRolloutKindsRequest,
1530
+ output: GetProjectsLocationsRolloutKindsResponse,
1531
+ errors: [],
1532
+ }));
1533
+
1534
+ export interface CreateProjectsLocationsRolloutKindsRequest {
1535
+ /** Required. The ID value for the new rollout kind. */
1536
+ rolloutKindId?: string;
1537
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
1538
+ requestId?: string;
1539
+ /** Required. The parent of the rollout kind. */
1540
+ parent: string;
1541
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
1542
+ validateOnly?: boolean;
1543
+ /** Request body */
1544
+ body?: RolloutKind;
1545
+ }
1546
+
1547
+ export const CreateProjectsLocationsRolloutKindsRequest =
1548
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1549
+ rolloutKindId: Schema.optional(Schema.String).pipe(
1550
+ T.HttpQuery("rolloutKindId"),
1551
+ ),
1552
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
1553
+ parent: Schema.String.pipe(T.HttpPath("parent")),
1554
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
1555
+ T.HttpQuery("validateOnly"),
1556
+ ),
1557
+ body: Schema.optional(RolloutKind).pipe(T.HttpBody()),
1558
+ }).pipe(
1559
+ T.Http({
1560
+ method: "POST",
1561
+ path: "v1/projects/{projectsId}/locations/{locationsId}/rolloutKinds",
1562
+ hasBody: true,
1563
+ }),
1564
+ svc,
1565
+ ) as unknown as Schema.Schema<CreateProjectsLocationsRolloutKindsRequest>;
1566
+
1567
+ export type CreateProjectsLocationsRolloutKindsResponse = RolloutKind;
1568
+ export const CreateProjectsLocationsRolloutKindsResponse =
1569
+ /*@__PURE__*/ /*#__PURE__*/ RolloutKind;
1570
+
1571
+ export type CreateProjectsLocationsRolloutKindsError = DefaultErrors;
1572
+
1573
+ /** Create a new rollout kind. */
1574
+ export const createProjectsLocationsRolloutKinds: API.OperationMethod<
1575
+ CreateProjectsLocationsRolloutKindsRequest,
1576
+ CreateProjectsLocationsRolloutKindsResponse,
1577
+ CreateProjectsLocationsRolloutKindsError,
1578
+ Credentials | HttpClient.HttpClient
1579
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1580
+ input: CreateProjectsLocationsRolloutKindsRequest,
1581
+ output: CreateProjectsLocationsRolloutKindsResponse,
1582
+ errors: [],
1583
+ }));
1584
+
1585
+ export interface DeleteProjectsLocationsRolloutKindsRequest {
1586
+ /** The etag known to the client for the expected state of the rollout kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. */
1587
+ etag?: string;
1588
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
1589
+ requestId?: string;
1590
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
1591
+ validateOnly?: boolean;
1592
+ /** Required. The resource name of the resource within a service. */
1593
+ name: string;
1594
+ }
1595
+
1596
+ export const DeleteProjectsLocationsRolloutKindsRequest =
1597
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1598
+ etag: Schema.optional(Schema.String).pipe(T.HttpQuery("etag")),
1599
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
1600
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
1601
+ T.HttpQuery("validateOnly"),
1602
+ ),
1603
+ name: Schema.String.pipe(T.HttpPath("name")),
1604
+ }).pipe(
1605
+ T.Http({
1606
+ method: "DELETE",
1607
+ path: "v1/projects/{projectsId}/locations/{locationsId}/rolloutKinds/{rolloutKindsId}",
1608
+ }),
1609
+ svc,
1610
+ ) as unknown as Schema.Schema<DeleteProjectsLocationsRolloutKindsRequest>;
1611
+
1612
+ export type DeleteProjectsLocationsRolloutKindsResponse = Empty;
1613
+ export const DeleteProjectsLocationsRolloutKindsResponse =
1614
+ /*@__PURE__*/ /*#__PURE__*/ Empty;
1615
+
1616
+ export type DeleteProjectsLocationsRolloutKindsError = DefaultErrors;
1617
+
1618
+ /** Delete a single rollout kind. */
1619
+ export const deleteProjectsLocationsRolloutKinds: API.OperationMethod<
1620
+ DeleteProjectsLocationsRolloutKindsRequest,
1621
+ DeleteProjectsLocationsRolloutKindsResponse,
1622
+ DeleteProjectsLocationsRolloutKindsError,
1623
+ Credentials | HttpClient.HttpClient
1624
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1625
+ input: DeleteProjectsLocationsRolloutKindsRequest,
1626
+ output: DeleteProjectsLocationsRolloutKindsResponse,
1627
+ errors: [],
1628
+ }));
1629
+
1630
+ export interface PatchProjectsLocationsUnitsRequest {
1631
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
1632
+ requestId?: string;
1633
+ /** Field mask is used to specify the fields to be overwritten in the Unit resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields in the Unit will be overwritten. */
1634
+ updateMask?: string;
1635
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
1636
+ validateOnly?: boolean;
1637
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/units/{unit}" */
1638
+ name: string;
1639
+ /** Request body */
1640
+ body?: Unit;
1641
+ }
1642
+
1643
+ export const PatchProjectsLocationsUnitsRequest =
1644
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1645
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
1646
+ updateMask: Schema.optional(Schema.String).pipe(T.HttpQuery("updateMask")),
1647
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
1648
+ T.HttpQuery("validateOnly"),
1649
+ ),
1650
+ name: Schema.String.pipe(T.HttpPath("name")),
1651
+ body: Schema.optional(Unit).pipe(T.HttpBody()),
1652
+ }).pipe(
1653
+ T.Http({
1654
+ method: "PATCH",
1655
+ path: "v1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}",
1656
+ hasBody: true,
1657
+ }),
1658
+ svc,
1659
+ ) as unknown as Schema.Schema<PatchProjectsLocationsUnitsRequest>;
1660
+
1661
+ export type PatchProjectsLocationsUnitsResponse = Unit;
1662
+ export const PatchProjectsLocationsUnitsResponse =
1663
+ /*@__PURE__*/ /*#__PURE__*/ Unit;
1664
+
1665
+ export type PatchProjectsLocationsUnitsError = DefaultErrors;
1666
+
1667
+ /** Update a single unit. */
1668
+ export const patchProjectsLocationsUnits: API.OperationMethod<
1669
+ PatchProjectsLocationsUnitsRequest,
1670
+ PatchProjectsLocationsUnitsResponse,
1671
+ PatchProjectsLocationsUnitsError,
1672
+ Credentials | HttpClient.HttpClient
1673
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1674
+ input: PatchProjectsLocationsUnitsRequest,
1675
+ output: PatchProjectsLocationsUnitsResponse,
1676
+ errors: [],
1677
+ }));
1678
+
1679
+ export interface DeleteProjectsLocationsUnitsRequest {
1680
+ /** Required. The resource name of the resource within a service. */
1681
+ name: string;
1682
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
1683
+ validateOnly?: boolean;
1684
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
1685
+ requestId?: string;
1686
+ /** The etag known to the client for the expected state of the unit. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. */
1687
+ etag?: string;
1688
+ }
1689
+
1690
+ export const DeleteProjectsLocationsUnitsRequest =
1691
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1692
+ name: Schema.String.pipe(T.HttpPath("name")),
1693
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
1694
+ T.HttpQuery("validateOnly"),
1695
+ ),
1696
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
1697
+ etag: Schema.optional(Schema.String).pipe(T.HttpQuery("etag")),
1698
+ }).pipe(
1699
+ T.Http({
1700
+ method: "DELETE",
1701
+ path: "v1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}",
1702
+ }),
1703
+ svc,
1704
+ ) as unknown as Schema.Schema<DeleteProjectsLocationsUnitsRequest>;
1705
+
1706
+ export type DeleteProjectsLocationsUnitsResponse = Empty;
1707
+ export const DeleteProjectsLocationsUnitsResponse =
1708
+ /*@__PURE__*/ /*#__PURE__*/ Empty;
1709
+
1710
+ export type DeleteProjectsLocationsUnitsError = DefaultErrors;
1711
+
1712
+ /** Delete a single unit. */
1713
+ export const deleteProjectsLocationsUnits: API.OperationMethod<
1714
+ DeleteProjectsLocationsUnitsRequest,
1715
+ DeleteProjectsLocationsUnitsResponse,
1716
+ DeleteProjectsLocationsUnitsError,
1717
+ Credentials | HttpClient.HttpClient
1718
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1719
+ input: DeleteProjectsLocationsUnitsRequest,
1720
+ output: DeleteProjectsLocationsUnitsResponse,
1721
+ errors: [],
1722
+ }));
1723
+
1724
+ export interface GetProjectsLocationsUnitsRequest {
1725
+ /** Required. The resource name of the resource within a service. */
1726
+ name: string;
1727
+ }
1728
+
1729
+ export const GetProjectsLocationsUnitsRequest =
1730
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1731
+ name: Schema.String.pipe(T.HttpPath("name")),
1732
+ }).pipe(
1733
+ T.Http({
1734
+ method: "GET",
1735
+ path: "v1/projects/{projectsId}/locations/{locationsId}/units/{unitsId}",
1736
+ }),
1737
+ svc,
1738
+ ) as unknown as Schema.Schema<GetProjectsLocationsUnitsRequest>;
1739
+
1740
+ export type GetProjectsLocationsUnitsResponse = Unit;
1741
+ export const GetProjectsLocationsUnitsResponse =
1742
+ /*@__PURE__*/ /*#__PURE__*/ Unit;
1743
+
1744
+ export type GetProjectsLocationsUnitsError = DefaultErrors;
1745
+
1746
+ /** Retrieve a single unit. */
1747
+ export const getProjectsLocationsUnits: API.OperationMethod<
1748
+ GetProjectsLocationsUnitsRequest,
1749
+ GetProjectsLocationsUnitsResponse,
1750
+ GetProjectsLocationsUnitsError,
1751
+ Credentials | HttpClient.HttpClient
1752
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1753
+ input: GetProjectsLocationsUnitsRequest,
1754
+ output: GetProjectsLocationsUnitsResponse,
1755
+ errors: [],
1756
+ }));
1757
+
1758
+ export interface ListProjectsLocationsUnitsRequest {
1759
+ /** Filter the list as specified in https://google.aip.dev/160. */
1760
+ filter?: string;
1761
+ /** The maximum number of units to send per page. */
1762
+ pageSize?: number;
1763
+ /** Required. The parent of the unit. */
1764
+ parent: string;
1765
+ /** Order results as specified in https://google.aip.dev/132. */
1766
+ orderBy?: string;
1767
+ /** The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. */
1768
+ pageToken?: string;
1769
+ }
1770
+
1771
+ export const ListProjectsLocationsUnitsRequest =
1772
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1773
+ filter: Schema.optional(Schema.String).pipe(T.HttpQuery("filter")),
1774
+ pageSize: Schema.optional(Schema.Number).pipe(T.HttpQuery("pageSize")),
1775
+ parent: Schema.String.pipe(T.HttpPath("parent")),
1776
+ orderBy: Schema.optional(Schema.String).pipe(T.HttpQuery("orderBy")),
1777
+ pageToken: Schema.optional(Schema.String).pipe(T.HttpQuery("pageToken")),
1778
+ }).pipe(
1779
+ T.Http({
1780
+ method: "GET",
1781
+ path: "v1/projects/{projectsId}/locations/{locationsId}/units",
1782
+ }),
1783
+ svc,
1784
+ ) as unknown as Schema.Schema<ListProjectsLocationsUnitsRequest>;
1785
+
1786
+ export type ListProjectsLocationsUnitsResponse = ListUnitsResponse;
1787
+ export const ListProjectsLocationsUnitsResponse =
1788
+ /*@__PURE__*/ /*#__PURE__*/ ListUnitsResponse;
1789
+
1790
+ export type ListProjectsLocationsUnitsError = DefaultErrors;
1791
+
1792
+ /** Retrieve a collection of units. */
1793
+ export const listProjectsLocationsUnits: API.PaginatedOperationMethod<
1794
+ ListProjectsLocationsUnitsRequest,
1795
+ ListProjectsLocationsUnitsResponse,
1796
+ ListProjectsLocationsUnitsError,
1797
+ Credentials | HttpClient.HttpClient
1798
+ > = /*@__PURE__*/ /*#__PURE__*/ API.makePaginated(() => ({
1799
+ input: ListProjectsLocationsUnitsRequest,
1800
+ output: ListProjectsLocationsUnitsResponse,
1801
+ errors: [],
1802
+ pagination: {
1803
+ inputToken: "pageToken",
1804
+ outputToken: "nextPageToken",
1805
+ },
1806
+ }));
1807
+
1808
+ export interface CreateProjectsLocationsUnitsRequest {
1809
+ /** Required. The ID value for the new unit. */
1810
+ unitId?: string;
1811
+ /** Required. The parent of the unit. */
1812
+ parent: string;
1813
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
1814
+ validateOnly?: boolean;
1815
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
1816
+ requestId?: string;
1817
+ /** Request body */
1818
+ body?: Unit;
1819
+ }
1820
+
1821
+ export const CreateProjectsLocationsUnitsRequest =
1822
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1823
+ unitId: Schema.optional(Schema.String).pipe(T.HttpQuery("unitId")),
1824
+ parent: Schema.String.pipe(T.HttpPath("parent")),
1825
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
1826
+ T.HttpQuery("validateOnly"),
1827
+ ),
1828
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
1829
+ body: Schema.optional(Unit).pipe(T.HttpBody()),
1830
+ }).pipe(
1831
+ T.Http({
1832
+ method: "POST",
1833
+ path: "v1/projects/{projectsId}/locations/{locationsId}/units",
1834
+ hasBody: true,
1835
+ }),
1836
+ svc,
1837
+ ) as unknown as Schema.Schema<CreateProjectsLocationsUnitsRequest>;
1838
+
1839
+ export type CreateProjectsLocationsUnitsResponse = Unit;
1840
+ export const CreateProjectsLocationsUnitsResponse =
1841
+ /*@__PURE__*/ /*#__PURE__*/ Unit;
1842
+
1843
+ export type CreateProjectsLocationsUnitsError = DefaultErrors;
1844
+
1845
+ /** Create a new unit. */
1846
+ export const createProjectsLocationsUnits: API.OperationMethod<
1847
+ CreateProjectsLocationsUnitsRequest,
1848
+ CreateProjectsLocationsUnitsResponse,
1849
+ CreateProjectsLocationsUnitsError,
1850
+ Credentials | HttpClient.HttpClient
1851
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1852
+ input: CreateProjectsLocationsUnitsRequest,
1853
+ output: CreateProjectsLocationsUnitsResponse,
1854
+ errors: [],
1855
+ }));
1856
+
1857
+ export interface GetProjectsLocationsUnitOperationsRequest {
1858
+ /** Required. The resource name of the resource within a service. */
1859
+ name: string;
1860
+ }
1861
+
1862
+ export const GetProjectsLocationsUnitOperationsRequest =
1863
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1864
+ name: Schema.String.pipe(T.HttpPath("name")),
1865
+ }).pipe(
1866
+ T.Http({
1867
+ method: "GET",
1868
+ path: "v1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}",
1869
+ }),
1870
+ svc,
1871
+ ) as unknown as Schema.Schema<GetProjectsLocationsUnitOperationsRequest>;
1872
+
1873
+ export type GetProjectsLocationsUnitOperationsResponse = UnitOperation;
1874
+ export const GetProjectsLocationsUnitOperationsResponse =
1875
+ /*@__PURE__*/ /*#__PURE__*/ UnitOperation;
1876
+
1877
+ export type GetProjectsLocationsUnitOperationsError = DefaultErrors;
1878
+
1879
+ /** Retrieve a single unit operation. */
1880
+ export const getProjectsLocationsUnitOperations: API.OperationMethod<
1881
+ GetProjectsLocationsUnitOperationsRequest,
1882
+ GetProjectsLocationsUnitOperationsResponse,
1883
+ GetProjectsLocationsUnitOperationsError,
1884
+ Credentials | HttpClient.HttpClient
1885
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1886
+ input: GetProjectsLocationsUnitOperationsRequest,
1887
+ output: GetProjectsLocationsUnitOperationsResponse,
1888
+ errors: [],
1889
+ }));
1890
+
1891
+ export interface PatchProjectsLocationsUnitOperationsRequest {
1892
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
1893
+ validateOnly?: boolean;
1894
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
1895
+ requestId?: string;
1896
+ /** Field mask is used to specify the fields to be overwritten in the UnitOperation resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields in the UnitOperation will be overwritten. */
1897
+ updateMask?: string;
1898
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/unitOperations/{unitOperation}" */
1899
+ name: string;
1900
+ /** Request body */
1901
+ body?: UnitOperation;
1902
+ }
1903
+
1904
+ export const PatchProjectsLocationsUnitOperationsRequest =
1905
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1906
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
1907
+ T.HttpQuery("validateOnly"),
1908
+ ),
1909
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
1910
+ updateMask: Schema.optional(Schema.String).pipe(T.HttpQuery("updateMask")),
1911
+ name: Schema.String.pipe(T.HttpPath("name")),
1912
+ body: Schema.optional(UnitOperation).pipe(T.HttpBody()),
1913
+ }).pipe(
1914
+ T.Http({
1915
+ method: "PATCH",
1916
+ path: "v1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}",
1917
+ hasBody: true,
1918
+ }),
1919
+ svc,
1920
+ ) as unknown as Schema.Schema<PatchProjectsLocationsUnitOperationsRequest>;
1921
+
1922
+ export type PatchProjectsLocationsUnitOperationsResponse = UnitOperation;
1923
+ export const PatchProjectsLocationsUnitOperationsResponse =
1924
+ /*@__PURE__*/ /*#__PURE__*/ UnitOperation;
1925
+
1926
+ export type PatchProjectsLocationsUnitOperationsError = DefaultErrors;
1927
+
1928
+ /** Update a single unit operation. */
1929
+ export const patchProjectsLocationsUnitOperations: API.OperationMethod<
1930
+ PatchProjectsLocationsUnitOperationsRequest,
1931
+ PatchProjectsLocationsUnitOperationsResponse,
1932
+ PatchProjectsLocationsUnitOperationsError,
1933
+ Credentials | HttpClient.HttpClient
1934
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1935
+ input: PatchProjectsLocationsUnitOperationsRequest,
1936
+ output: PatchProjectsLocationsUnitOperationsResponse,
1937
+ errors: [],
1938
+ }));
1939
+
1940
+ export interface CreateProjectsLocationsUnitOperationsRequest {
1941
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
1942
+ validateOnly?: boolean;
1943
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
1944
+ requestId?: string;
1945
+ /** Required. The parent of the unit operation. */
1946
+ parent: string;
1947
+ /** Required. The ID value for the new unit operation. */
1948
+ unitOperationId?: string;
1949
+ /** Request body */
1950
+ body?: UnitOperation;
1951
+ }
1952
+
1953
+ export const CreateProjectsLocationsUnitOperationsRequest =
1954
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
1955
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
1956
+ T.HttpQuery("validateOnly"),
1957
+ ),
1958
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
1959
+ parent: Schema.String.pipe(T.HttpPath("parent")),
1960
+ unitOperationId: Schema.optional(Schema.String).pipe(
1961
+ T.HttpQuery("unitOperationId"),
1962
+ ),
1963
+ body: Schema.optional(UnitOperation).pipe(T.HttpBody()),
1964
+ }).pipe(
1965
+ T.Http({
1966
+ method: "POST",
1967
+ path: "v1/projects/{projectsId}/locations/{locationsId}/unitOperations",
1968
+ hasBody: true,
1969
+ }),
1970
+ svc,
1971
+ ) as unknown as Schema.Schema<CreateProjectsLocationsUnitOperationsRequest>;
1972
+
1973
+ export type CreateProjectsLocationsUnitOperationsResponse = UnitOperation;
1974
+ export const CreateProjectsLocationsUnitOperationsResponse =
1975
+ /*@__PURE__*/ /*#__PURE__*/ UnitOperation;
1976
+
1977
+ export type CreateProjectsLocationsUnitOperationsError = DefaultErrors;
1978
+
1979
+ /** Create a new unit operation. */
1980
+ export const createProjectsLocationsUnitOperations: API.OperationMethod<
1981
+ CreateProjectsLocationsUnitOperationsRequest,
1982
+ CreateProjectsLocationsUnitOperationsResponse,
1983
+ CreateProjectsLocationsUnitOperationsError,
1984
+ Credentials | HttpClient.HttpClient
1985
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
1986
+ input: CreateProjectsLocationsUnitOperationsRequest,
1987
+ output: CreateProjectsLocationsUnitOperationsResponse,
1988
+ errors: [],
1989
+ }));
1990
+
1991
+ export interface ListProjectsLocationsUnitOperationsRequest {
1992
+ /** Required. The parent of the unit operation. */
1993
+ parent: string;
1994
+ /** The maximum number of unit operations to send per page. */
1995
+ pageSize?: number;
1996
+ /** Order results as specified in https://google.aip.dev/132. */
1997
+ orderBy?: string;
1998
+ /** The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. */
1999
+ pageToken?: string;
2000
+ /** Filter the list as specified in https://google.aip.dev/160. */
2001
+ filter?: string;
2002
+ }
2003
+
2004
+ export const ListProjectsLocationsUnitOperationsRequest =
2005
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2006
+ parent: Schema.String.pipe(T.HttpPath("parent")),
2007
+ pageSize: Schema.optional(Schema.Number).pipe(T.HttpQuery("pageSize")),
2008
+ orderBy: Schema.optional(Schema.String).pipe(T.HttpQuery("orderBy")),
2009
+ pageToken: Schema.optional(Schema.String).pipe(T.HttpQuery("pageToken")),
2010
+ filter: Schema.optional(Schema.String).pipe(T.HttpQuery("filter")),
2011
+ }).pipe(
2012
+ T.Http({
2013
+ method: "GET",
2014
+ path: "v1/projects/{projectsId}/locations/{locationsId}/unitOperations",
2015
+ }),
2016
+ svc,
2017
+ ) as unknown as Schema.Schema<ListProjectsLocationsUnitOperationsRequest>;
2018
+
2019
+ export type ListProjectsLocationsUnitOperationsResponse =
2020
+ ListUnitOperationsResponse;
2021
+ export const ListProjectsLocationsUnitOperationsResponse =
2022
+ /*@__PURE__*/ /*#__PURE__*/ ListUnitOperationsResponse;
2023
+
2024
+ export type ListProjectsLocationsUnitOperationsError = DefaultErrors;
2025
+
2026
+ /** Retrieve a collection of unit operations. */
2027
+ export const listProjectsLocationsUnitOperations: API.PaginatedOperationMethod<
2028
+ ListProjectsLocationsUnitOperationsRequest,
2029
+ ListProjectsLocationsUnitOperationsResponse,
2030
+ ListProjectsLocationsUnitOperationsError,
2031
+ Credentials | HttpClient.HttpClient
2032
+ > = /*@__PURE__*/ /*#__PURE__*/ API.makePaginated(() => ({
2033
+ input: ListProjectsLocationsUnitOperationsRequest,
2034
+ output: ListProjectsLocationsUnitOperationsResponse,
2035
+ errors: [],
2036
+ pagination: {
2037
+ inputToken: "pageToken",
2038
+ outputToken: "nextPageToken",
2039
+ },
2040
+ }));
2041
+
2042
+ export interface DeleteProjectsLocationsUnitOperationsRequest {
2043
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2044
+ requestId?: string;
2045
+ /** The etag known to the client for the expected state of the unit operation. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit operation. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. */
2046
+ etag?: string;
2047
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2048
+ validateOnly?: boolean;
2049
+ /** Required. The resource name of the resource within a service. */
2050
+ name: string;
2051
+ }
2052
+
2053
+ export const DeleteProjectsLocationsUnitOperationsRequest =
2054
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2055
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2056
+ etag: Schema.optional(Schema.String).pipe(T.HttpQuery("etag")),
2057
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2058
+ T.HttpQuery("validateOnly"),
2059
+ ),
2060
+ name: Schema.String.pipe(T.HttpPath("name")),
2061
+ }).pipe(
2062
+ T.Http({
2063
+ method: "DELETE",
2064
+ path: "v1/projects/{projectsId}/locations/{locationsId}/unitOperations/{unitOperationsId}",
2065
+ }),
2066
+ svc,
2067
+ ) as unknown as Schema.Schema<DeleteProjectsLocationsUnitOperationsRequest>;
2068
+
2069
+ export type DeleteProjectsLocationsUnitOperationsResponse = Empty;
2070
+ export const DeleteProjectsLocationsUnitOperationsResponse =
2071
+ /*@__PURE__*/ /*#__PURE__*/ Empty;
2072
+
2073
+ export type DeleteProjectsLocationsUnitOperationsError = DefaultErrors;
2074
+
2075
+ /** Delete a single unit operation. */
2076
+ export const deleteProjectsLocationsUnitOperations: API.OperationMethod<
2077
+ DeleteProjectsLocationsUnitOperationsRequest,
2078
+ DeleteProjectsLocationsUnitOperationsResponse,
2079
+ DeleteProjectsLocationsUnitOperationsError,
2080
+ Credentials | HttpClient.HttpClient
2081
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2082
+ input: DeleteProjectsLocationsUnitOperationsRequest,
2083
+ output: DeleteProjectsLocationsUnitOperationsResponse,
2084
+ errors: [],
2085
+ }));
2086
+
2087
+ export interface CreateProjectsLocationsReleasesRequest {
2088
+ /** Required. The ID value for the new release. */
2089
+ releaseId?: string;
2090
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2091
+ requestId?: string;
2092
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2093
+ validateOnly?: boolean;
2094
+ /** Required. The parent of the release. */
2095
+ parent: string;
2096
+ /** Request body */
2097
+ body?: Release;
2098
+ }
2099
+
2100
+ export const CreateProjectsLocationsReleasesRequest =
2101
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2102
+ releaseId: Schema.optional(Schema.String).pipe(T.HttpQuery("releaseId")),
2103
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2104
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2105
+ T.HttpQuery("validateOnly"),
2106
+ ),
2107
+ parent: Schema.String.pipe(T.HttpPath("parent")),
2108
+ body: Schema.optional(Release).pipe(T.HttpBody()),
2109
+ }).pipe(
2110
+ T.Http({
2111
+ method: "POST",
2112
+ path: "v1/projects/{projectsId}/locations/{locationsId}/releases",
2113
+ hasBody: true,
2114
+ }),
2115
+ svc,
2116
+ ) as unknown as Schema.Schema<CreateProjectsLocationsReleasesRequest>;
2117
+
2118
+ export type CreateProjectsLocationsReleasesResponse = Release;
2119
+ export const CreateProjectsLocationsReleasesResponse =
2120
+ /*@__PURE__*/ /*#__PURE__*/ Release;
2121
+
2122
+ export type CreateProjectsLocationsReleasesError = DefaultErrors;
2123
+
2124
+ /** Create a new release. */
2125
+ export const createProjectsLocationsReleases: API.OperationMethod<
2126
+ CreateProjectsLocationsReleasesRequest,
2127
+ CreateProjectsLocationsReleasesResponse,
2128
+ CreateProjectsLocationsReleasesError,
2129
+ Credentials | HttpClient.HttpClient
2130
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2131
+ input: CreateProjectsLocationsReleasesRequest,
2132
+ output: CreateProjectsLocationsReleasesResponse,
2133
+ errors: [],
2134
+ }));
2135
+
2136
+ export interface ListProjectsLocationsReleasesRequest {
2137
+ /** The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. */
2138
+ pageToken?: string;
2139
+ /** The maximum number of releases to send per page. */
2140
+ pageSize?: number;
2141
+ /** Filter the list as specified in https://google.aip.dev/160. */
2142
+ filter?: string;
2143
+ /** Required. The parent of the release. */
2144
+ parent: string;
2145
+ /** Order results as specified in https://google.aip.dev/132. */
2146
+ orderBy?: string;
2147
+ }
2148
+
2149
+ export const ListProjectsLocationsReleasesRequest =
2150
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2151
+ pageToken: Schema.optional(Schema.String).pipe(T.HttpQuery("pageToken")),
2152
+ pageSize: Schema.optional(Schema.Number).pipe(T.HttpQuery("pageSize")),
2153
+ filter: Schema.optional(Schema.String).pipe(T.HttpQuery("filter")),
2154
+ parent: Schema.String.pipe(T.HttpPath("parent")),
2155
+ orderBy: Schema.optional(Schema.String).pipe(T.HttpQuery("orderBy")),
2156
+ }).pipe(
2157
+ T.Http({
2158
+ method: "GET",
2159
+ path: "v1/projects/{projectsId}/locations/{locationsId}/releases",
2160
+ }),
2161
+ svc,
2162
+ ) as unknown as Schema.Schema<ListProjectsLocationsReleasesRequest>;
2163
+
2164
+ export type ListProjectsLocationsReleasesResponse = ListReleasesResponse;
2165
+ export const ListProjectsLocationsReleasesResponse =
2166
+ /*@__PURE__*/ /*#__PURE__*/ ListReleasesResponse;
2167
+
2168
+ export type ListProjectsLocationsReleasesError = DefaultErrors;
2169
+
2170
+ /** Retrieve a collection of releases. */
2171
+ export const listProjectsLocationsReleases: API.PaginatedOperationMethod<
2172
+ ListProjectsLocationsReleasesRequest,
2173
+ ListProjectsLocationsReleasesResponse,
2174
+ ListProjectsLocationsReleasesError,
2175
+ Credentials | HttpClient.HttpClient
2176
+ > = /*@__PURE__*/ /*#__PURE__*/ API.makePaginated(() => ({
2177
+ input: ListProjectsLocationsReleasesRequest,
2178
+ output: ListProjectsLocationsReleasesResponse,
2179
+ errors: [],
2180
+ pagination: {
2181
+ inputToken: "pageToken",
2182
+ outputToken: "nextPageToken",
2183
+ },
2184
+ }));
2185
+
2186
+ export interface GetProjectsLocationsReleasesRequest {
2187
+ /** Required. The resource name of the resource within a service. */
2188
+ name: string;
2189
+ }
2190
+
2191
+ export const GetProjectsLocationsReleasesRequest =
2192
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2193
+ name: Schema.String.pipe(T.HttpPath("name")),
2194
+ }).pipe(
2195
+ T.Http({
2196
+ method: "GET",
2197
+ path: "v1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}",
2198
+ }),
2199
+ svc,
2200
+ ) as unknown as Schema.Schema<GetProjectsLocationsReleasesRequest>;
2201
+
2202
+ export type GetProjectsLocationsReleasesResponse = Release;
2203
+ export const GetProjectsLocationsReleasesResponse =
2204
+ /*@__PURE__*/ /*#__PURE__*/ Release;
2205
+
2206
+ export type GetProjectsLocationsReleasesError = DefaultErrors;
2207
+
2208
+ /** Retrieve a single release. */
2209
+ export const getProjectsLocationsReleases: API.OperationMethod<
2210
+ GetProjectsLocationsReleasesRequest,
2211
+ GetProjectsLocationsReleasesResponse,
2212
+ GetProjectsLocationsReleasesError,
2213
+ Credentials | HttpClient.HttpClient
2214
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2215
+ input: GetProjectsLocationsReleasesRequest,
2216
+ output: GetProjectsLocationsReleasesResponse,
2217
+ errors: [],
2218
+ }));
2219
+
2220
+ export interface DeleteProjectsLocationsReleasesRequest {
2221
+ /** The etag known to the client for the expected state of the release. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the release. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. */
2222
+ etag?: string;
2223
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2224
+ requestId?: string;
2225
+ /** Required. The resource name of the resource within a service. */
2226
+ name: string;
2227
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2228
+ validateOnly?: boolean;
2229
+ }
2230
+
2231
+ export const DeleteProjectsLocationsReleasesRequest =
2232
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2233
+ etag: Schema.optional(Schema.String).pipe(T.HttpQuery("etag")),
2234
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2235
+ name: Schema.String.pipe(T.HttpPath("name")),
2236
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2237
+ T.HttpQuery("validateOnly"),
2238
+ ),
2239
+ }).pipe(
2240
+ T.Http({
2241
+ method: "DELETE",
2242
+ path: "v1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}",
2243
+ }),
2244
+ svc,
2245
+ ) as unknown as Schema.Schema<DeleteProjectsLocationsReleasesRequest>;
2246
+
2247
+ export type DeleteProjectsLocationsReleasesResponse = Empty;
2248
+ export const DeleteProjectsLocationsReleasesResponse =
2249
+ /*@__PURE__*/ /*#__PURE__*/ Empty;
2250
+
2251
+ export type DeleteProjectsLocationsReleasesError = DefaultErrors;
2252
+
2253
+ /** Delete a single release. */
2254
+ export const deleteProjectsLocationsReleases: API.OperationMethod<
2255
+ DeleteProjectsLocationsReleasesRequest,
2256
+ DeleteProjectsLocationsReleasesResponse,
2257
+ DeleteProjectsLocationsReleasesError,
2258
+ Credentials | HttpClient.HttpClient
2259
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2260
+ input: DeleteProjectsLocationsReleasesRequest,
2261
+ output: DeleteProjectsLocationsReleasesResponse,
2262
+ errors: [],
2263
+ }));
2264
+
2265
+ export interface PatchProjectsLocationsReleasesRequest {
2266
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2267
+ requestId?: string;
2268
+ /** Field mask is used to specify the fields to be overwritten in the Release resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields in the Release will be overwritten. */
2269
+ updateMask?: string;
2270
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2271
+ validateOnly?: boolean;
2272
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/releases/{release}" */
2273
+ name: string;
2274
+ /** Request body */
2275
+ body?: Release;
2276
+ }
2277
+
2278
+ export const PatchProjectsLocationsReleasesRequest =
2279
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2280
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2281
+ updateMask: Schema.optional(Schema.String).pipe(T.HttpQuery("updateMask")),
2282
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2283
+ T.HttpQuery("validateOnly"),
2284
+ ),
2285
+ name: Schema.String.pipe(T.HttpPath("name")),
2286
+ body: Schema.optional(Release).pipe(T.HttpBody()),
2287
+ }).pipe(
2288
+ T.Http({
2289
+ method: "PATCH",
2290
+ path: "v1/projects/{projectsId}/locations/{locationsId}/releases/{releasesId}",
2291
+ hasBody: true,
2292
+ }),
2293
+ svc,
2294
+ ) as unknown as Schema.Schema<PatchProjectsLocationsReleasesRequest>;
2295
+
2296
+ export type PatchProjectsLocationsReleasesResponse = Release;
2297
+ export const PatchProjectsLocationsReleasesResponse =
2298
+ /*@__PURE__*/ /*#__PURE__*/ Release;
2299
+
2300
+ export type PatchProjectsLocationsReleasesError = DefaultErrors;
2301
+
2302
+ /** Update a single release. */
2303
+ export const patchProjectsLocationsReleases: API.OperationMethod<
2304
+ PatchProjectsLocationsReleasesRequest,
2305
+ PatchProjectsLocationsReleasesResponse,
2306
+ PatchProjectsLocationsReleasesError,
2307
+ Credentials | HttpClient.HttpClient
2308
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2309
+ input: PatchProjectsLocationsReleasesRequest,
2310
+ output: PatchProjectsLocationsReleasesResponse,
2311
+ errors: [],
2312
+ }));
2313
+
2314
+ export interface ListProjectsLocationsUnitKindsRequest {
2315
+ /** Filter the list as specified in https://google.aip.dev/160. */
2316
+ filter?: string;
2317
+ /** Order results as specified in https://google.aip.dev/132. */
2318
+ orderBy?: string;
2319
+ /** The maximum number of unit kinds to send per page. */
2320
+ pageSize?: number;
2321
+ /** Required. The parent of the unit kind. */
2322
+ parent: string;
2323
+ /** The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. */
2324
+ pageToken?: string;
2325
+ }
2326
+
2327
+ export const ListProjectsLocationsUnitKindsRequest =
2328
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2329
+ filter: Schema.optional(Schema.String).pipe(T.HttpQuery("filter")),
2330
+ orderBy: Schema.optional(Schema.String).pipe(T.HttpQuery("orderBy")),
2331
+ pageSize: Schema.optional(Schema.Number).pipe(T.HttpQuery("pageSize")),
2332
+ parent: Schema.String.pipe(T.HttpPath("parent")),
2333
+ pageToken: Schema.optional(Schema.String).pipe(T.HttpQuery("pageToken")),
2334
+ }).pipe(
2335
+ T.Http({
2336
+ method: "GET",
2337
+ path: "v1/projects/{projectsId}/locations/{locationsId}/unitKinds",
2338
+ }),
2339
+ svc,
2340
+ ) as unknown as Schema.Schema<ListProjectsLocationsUnitKindsRequest>;
2341
+
2342
+ export type ListProjectsLocationsUnitKindsResponse = ListUnitKindsResponse;
2343
+ export const ListProjectsLocationsUnitKindsResponse =
2344
+ /*@__PURE__*/ /*#__PURE__*/ ListUnitKindsResponse;
2345
+
2346
+ export type ListProjectsLocationsUnitKindsError = DefaultErrors;
2347
+
2348
+ /** Retrieve a collection of unit kinds. */
2349
+ export const listProjectsLocationsUnitKinds: API.PaginatedOperationMethod<
2350
+ ListProjectsLocationsUnitKindsRequest,
2351
+ ListProjectsLocationsUnitKindsResponse,
2352
+ ListProjectsLocationsUnitKindsError,
2353
+ Credentials | HttpClient.HttpClient
2354
+ > = /*@__PURE__*/ /*#__PURE__*/ API.makePaginated(() => ({
2355
+ input: ListProjectsLocationsUnitKindsRequest,
2356
+ output: ListProjectsLocationsUnitKindsResponse,
2357
+ errors: [],
2358
+ pagination: {
2359
+ inputToken: "pageToken",
2360
+ outputToken: "nextPageToken",
2361
+ },
2362
+ }));
2363
+
2364
+ export interface DeleteProjectsLocationsUnitKindsRequest {
2365
+ /** Required. The resource name of the resource within a service. */
2366
+ name: string;
2367
+ /** The etag known to the client for the expected state of the unit kind. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the unit kind. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. */
2368
+ etag?: string;
2369
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2370
+ requestId?: string;
2371
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2372
+ validateOnly?: boolean;
2373
+ }
2374
+
2375
+ export const DeleteProjectsLocationsUnitKindsRequest =
2376
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2377
+ name: Schema.String.pipe(T.HttpPath("name")),
2378
+ etag: Schema.optional(Schema.String).pipe(T.HttpQuery("etag")),
2379
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2380
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2381
+ T.HttpQuery("validateOnly"),
2382
+ ),
2383
+ }).pipe(
2384
+ T.Http({
2385
+ method: "DELETE",
2386
+ path: "v1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}",
2387
+ }),
2388
+ svc,
2389
+ ) as unknown as Schema.Schema<DeleteProjectsLocationsUnitKindsRequest>;
2390
+
2391
+ export type DeleteProjectsLocationsUnitKindsResponse = Empty;
2392
+ export const DeleteProjectsLocationsUnitKindsResponse =
2393
+ /*@__PURE__*/ /*#__PURE__*/ Empty;
2394
+
2395
+ export type DeleteProjectsLocationsUnitKindsError = DefaultErrors;
2396
+
2397
+ /** Delete a single unit kind. */
2398
+ export const deleteProjectsLocationsUnitKinds: API.OperationMethod<
2399
+ DeleteProjectsLocationsUnitKindsRequest,
2400
+ DeleteProjectsLocationsUnitKindsResponse,
2401
+ DeleteProjectsLocationsUnitKindsError,
2402
+ Credentials | HttpClient.HttpClient
2403
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2404
+ input: DeleteProjectsLocationsUnitKindsRequest,
2405
+ output: DeleteProjectsLocationsUnitKindsResponse,
2406
+ errors: [],
2407
+ }));
2408
+
2409
+ export interface CreateProjectsLocationsUnitKindsRequest {
2410
+ /** Required. The ID value for the new unit kind. */
2411
+ unitKindId?: string;
2412
+ /** Required. The parent of the unit kind. */
2413
+ parent: string;
2414
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2415
+ validateOnly?: boolean;
2416
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2417
+ requestId?: string;
2418
+ /** Request body */
2419
+ body?: UnitKind;
2420
+ }
2421
+
2422
+ export const CreateProjectsLocationsUnitKindsRequest =
2423
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2424
+ unitKindId: Schema.optional(Schema.String).pipe(T.HttpQuery("unitKindId")),
2425
+ parent: Schema.String.pipe(T.HttpPath("parent")),
2426
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2427
+ T.HttpQuery("validateOnly"),
2428
+ ),
2429
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2430
+ body: Schema.optional(UnitKind).pipe(T.HttpBody()),
2431
+ }).pipe(
2432
+ T.Http({
2433
+ method: "POST",
2434
+ path: "v1/projects/{projectsId}/locations/{locationsId}/unitKinds",
2435
+ hasBody: true,
2436
+ }),
2437
+ svc,
2438
+ ) as unknown as Schema.Schema<CreateProjectsLocationsUnitKindsRequest>;
2439
+
2440
+ export type CreateProjectsLocationsUnitKindsResponse = UnitKind;
2441
+ export const CreateProjectsLocationsUnitKindsResponse =
2442
+ /*@__PURE__*/ /*#__PURE__*/ UnitKind;
2443
+
2444
+ export type CreateProjectsLocationsUnitKindsError = DefaultErrors;
2445
+
2446
+ /** Create a new unit kind. */
2447
+ export const createProjectsLocationsUnitKinds: API.OperationMethod<
2448
+ CreateProjectsLocationsUnitKindsRequest,
2449
+ CreateProjectsLocationsUnitKindsResponse,
2450
+ CreateProjectsLocationsUnitKindsError,
2451
+ Credentials | HttpClient.HttpClient
2452
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2453
+ input: CreateProjectsLocationsUnitKindsRequest,
2454
+ output: CreateProjectsLocationsUnitKindsResponse,
2455
+ errors: [],
2456
+ }));
2457
+
2458
+ export interface PatchProjectsLocationsUnitKindsRequest {
2459
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2460
+ requestId?: string;
2461
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/unitKinds/{unitKind}" */
2462
+ name: string;
2463
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2464
+ validateOnly?: boolean;
2465
+ /** Field mask is used to specify the fields to be overwritten in the UnitKind resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields in the UnitKind will be overwritten. */
2466
+ updateMask?: string;
2467
+ /** Request body */
2468
+ body?: UnitKind;
2469
+ }
2470
+
2471
+ export const PatchProjectsLocationsUnitKindsRequest =
2472
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2473
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2474
+ name: Schema.String.pipe(T.HttpPath("name")),
2475
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2476
+ T.HttpQuery("validateOnly"),
2477
+ ),
2478
+ updateMask: Schema.optional(Schema.String).pipe(T.HttpQuery("updateMask")),
2479
+ body: Schema.optional(UnitKind).pipe(T.HttpBody()),
2480
+ }).pipe(
2481
+ T.Http({
2482
+ method: "PATCH",
2483
+ path: "v1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}",
2484
+ hasBody: true,
2485
+ }),
2486
+ svc,
2487
+ ) as unknown as Schema.Schema<PatchProjectsLocationsUnitKindsRequest>;
2488
+
2489
+ export type PatchProjectsLocationsUnitKindsResponse = UnitKind;
2490
+ export const PatchProjectsLocationsUnitKindsResponse =
2491
+ /*@__PURE__*/ /*#__PURE__*/ UnitKind;
2492
+
2493
+ export type PatchProjectsLocationsUnitKindsError = DefaultErrors;
2494
+
2495
+ /** Update a single unit kind. */
2496
+ export const patchProjectsLocationsUnitKinds: API.OperationMethod<
2497
+ PatchProjectsLocationsUnitKindsRequest,
2498
+ PatchProjectsLocationsUnitKindsResponse,
2499
+ PatchProjectsLocationsUnitKindsError,
2500
+ Credentials | HttpClient.HttpClient
2501
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2502
+ input: PatchProjectsLocationsUnitKindsRequest,
2503
+ output: PatchProjectsLocationsUnitKindsResponse,
2504
+ errors: [],
2505
+ }));
2506
+
2507
+ export interface GetProjectsLocationsUnitKindsRequest {
2508
+ /** Required. The resource name of the resource within a service. */
2509
+ name: string;
2510
+ }
2511
+
2512
+ export const GetProjectsLocationsUnitKindsRequest =
2513
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2514
+ name: Schema.String.pipe(T.HttpPath("name")),
2515
+ }).pipe(
2516
+ T.Http({
2517
+ method: "GET",
2518
+ path: "v1/projects/{projectsId}/locations/{locationsId}/unitKinds/{unitKindsId}",
2519
+ }),
2520
+ svc,
2521
+ ) as unknown as Schema.Schema<GetProjectsLocationsUnitKindsRequest>;
2522
+
2523
+ export type GetProjectsLocationsUnitKindsResponse = UnitKind;
2524
+ export const GetProjectsLocationsUnitKindsResponse =
2525
+ /*@__PURE__*/ /*#__PURE__*/ UnitKind;
2526
+
2527
+ export type GetProjectsLocationsUnitKindsError = DefaultErrors;
2528
+
2529
+ /** Retrieve a single unit kind. */
2530
+ export const getProjectsLocationsUnitKinds: API.OperationMethod<
2531
+ GetProjectsLocationsUnitKindsRequest,
2532
+ GetProjectsLocationsUnitKindsResponse,
2533
+ GetProjectsLocationsUnitKindsError,
2534
+ Credentials | HttpClient.HttpClient
2535
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2536
+ input: GetProjectsLocationsUnitKindsRequest,
2537
+ output: GetProjectsLocationsUnitKindsResponse,
2538
+ errors: [],
2539
+ }));
2540
+
2541
+ export interface CreateProjectsLocationsTenantsRequest {
2542
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2543
+ requestId?: string;
2544
+ /** Required. The ID value for the new tenant. */
2545
+ tenantId?: string;
2546
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2547
+ validateOnly?: boolean;
2548
+ /** Required. The parent of the tenant. */
2549
+ parent: string;
2550
+ /** Request body */
2551
+ body?: Tenant;
2552
+ }
2553
+
2554
+ export const CreateProjectsLocationsTenantsRequest =
2555
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2556
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2557
+ tenantId: Schema.optional(Schema.String).pipe(T.HttpQuery("tenantId")),
2558
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2559
+ T.HttpQuery("validateOnly"),
2560
+ ),
2561
+ parent: Schema.String.pipe(T.HttpPath("parent")),
2562
+ body: Schema.optional(Tenant).pipe(T.HttpBody()),
2563
+ }).pipe(
2564
+ T.Http({
2565
+ method: "POST",
2566
+ path: "v1/projects/{projectsId}/locations/{locationsId}/tenants",
2567
+ hasBody: true,
2568
+ }),
2569
+ svc,
2570
+ ) as unknown as Schema.Schema<CreateProjectsLocationsTenantsRequest>;
2571
+
2572
+ export type CreateProjectsLocationsTenantsResponse = Tenant;
2573
+ export const CreateProjectsLocationsTenantsResponse =
2574
+ /*@__PURE__*/ /*#__PURE__*/ Tenant;
2575
+
2576
+ export type CreateProjectsLocationsTenantsError = DefaultErrors;
2577
+
2578
+ /** Create a new tenant. */
2579
+ export const createProjectsLocationsTenants: API.OperationMethod<
2580
+ CreateProjectsLocationsTenantsRequest,
2581
+ CreateProjectsLocationsTenantsResponse,
2582
+ CreateProjectsLocationsTenantsError,
2583
+ Credentials | HttpClient.HttpClient
2584
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2585
+ input: CreateProjectsLocationsTenantsRequest,
2586
+ output: CreateProjectsLocationsTenantsResponse,
2587
+ errors: [],
2588
+ }));
2589
+
2590
+ export interface DeleteProjectsLocationsTenantsRequest {
2591
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2592
+ requestId?: string;
2593
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2594
+ validateOnly?: boolean;
2595
+ /** The etag known to the client for the expected state of the tenant. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the tenant. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. */
2596
+ etag?: string;
2597
+ /** Required. The resource name of the resource within a service. */
2598
+ name: string;
2599
+ }
2600
+
2601
+ export const DeleteProjectsLocationsTenantsRequest =
2602
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2603
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2604
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2605
+ T.HttpQuery("validateOnly"),
2606
+ ),
2607
+ etag: Schema.optional(Schema.String).pipe(T.HttpQuery("etag")),
2608
+ name: Schema.String.pipe(T.HttpPath("name")),
2609
+ }).pipe(
2610
+ T.Http({
2611
+ method: "DELETE",
2612
+ path: "v1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}",
2613
+ }),
2614
+ svc,
2615
+ ) as unknown as Schema.Schema<DeleteProjectsLocationsTenantsRequest>;
2616
+
2617
+ export type DeleteProjectsLocationsTenantsResponse = Empty;
2618
+ export const DeleteProjectsLocationsTenantsResponse =
2619
+ /*@__PURE__*/ /*#__PURE__*/ Empty;
2620
+
2621
+ export type DeleteProjectsLocationsTenantsError = DefaultErrors;
2622
+
2623
+ /** Delete a single tenant. */
2624
+ export const deleteProjectsLocationsTenants: API.OperationMethod<
2625
+ DeleteProjectsLocationsTenantsRequest,
2626
+ DeleteProjectsLocationsTenantsResponse,
2627
+ DeleteProjectsLocationsTenantsError,
2628
+ Credentials | HttpClient.HttpClient
2629
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2630
+ input: DeleteProjectsLocationsTenantsRequest,
2631
+ output: DeleteProjectsLocationsTenantsResponse,
2632
+ errors: [],
2633
+ }));
2634
+
2635
+ export interface ListProjectsLocationsTenantsRequest {
2636
+ /** The maximum number of tenants to send per page. */
2637
+ pageSize?: number;
2638
+ /** The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. */
2639
+ pageToken?: string;
2640
+ /** Order results as specified in https://google.aip.dev/132. */
2641
+ orderBy?: string;
2642
+ /** Filter the list as specified in https://google.aip.dev/160. */
2643
+ filter?: string;
2644
+ /** Required. The parent of the tenant. */
2645
+ parent: string;
2646
+ }
2647
+
2648
+ export const ListProjectsLocationsTenantsRequest =
2649
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2650
+ pageSize: Schema.optional(Schema.Number).pipe(T.HttpQuery("pageSize")),
2651
+ pageToken: Schema.optional(Schema.String).pipe(T.HttpQuery("pageToken")),
2652
+ orderBy: Schema.optional(Schema.String).pipe(T.HttpQuery("orderBy")),
2653
+ filter: Schema.optional(Schema.String).pipe(T.HttpQuery("filter")),
2654
+ parent: Schema.String.pipe(T.HttpPath("parent")),
2655
+ }).pipe(
2656
+ T.Http({
2657
+ method: "GET",
2658
+ path: "v1/projects/{projectsId}/locations/{locationsId}/tenants",
2659
+ }),
2660
+ svc,
2661
+ ) as unknown as Schema.Schema<ListProjectsLocationsTenantsRequest>;
2662
+
2663
+ export type ListProjectsLocationsTenantsResponse = ListTenantsResponse;
2664
+ export const ListProjectsLocationsTenantsResponse =
2665
+ /*@__PURE__*/ /*#__PURE__*/ ListTenantsResponse;
2666
+
2667
+ export type ListProjectsLocationsTenantsError = DefaultErrors;
2668
+
2669
+ /** Retrieve a collection of tenants. */
2670
+ export const listProjectsLocationsTenants: API.PaginatedOperationMethod<
2671
+ ListProjectsLocationsTenantsRequest,
2672
+ ListProjectsLocationsTenantsResponse,
2673
+ ListProjectsLocationsTenantsError,
2674
+ Credentials | HttpClient.HttpClient
2675
+ > = /*@__PURE__*/ /*#__PURE__*/ API.makePaginated(() => ({
2676
+ input: ListProjectsLocationsTenantsRequest,
2677
+ output: ListProjectsLocationsTenantsResponse,
2678
+ errors: [],
2679
+ pagination: {
2680
+ inputToken: "pageToken",
2681
+ outputToken: "nextPageToken",
2682
+ },
2683
+ }));
2684
+
2685
+ export interface GetProjectsLocationsTenantsRequest {
2686
+ /** Required. The resource name of the resource within a service. */
2687
+ name: string;
2688
+ }
2689
+
2690
+ export const GetProjectsLocationsTenantsRequest =
2691
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2692
+ name: Schema.String.pipe(T.HttpPath("name")),
2693
+ }).pipe(
2694
+ T.Http({
2695
+ method: "GET",
2696
+ path: "v1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}",
2697
+ }),
2698
+ svc,
2699
+ ) as unknown as Schema.Schema<GetProjectsLocationsTenantsRequest>;
2700
+
2701
+ export type GetProjectsLocationsTenantsResponse = Tenant;
2702
+ export const GetProjectsLocationsTenantsResponse =
2703
+ /*@__PURE__*/ /*#__PURE__*/ Tenant;
2704
+
2705
+ export type GetProjectsLocationsTenantsError = DefaultErrors;
2706
+
2707
+ /** Retrieve a single tenant. */
2708
+ export const getProjectsLocationsTenants: API.OperationMethod<
2709
+ GetProjectsLocationsTenantsRequest,
2710
+ GetProjectsLocationsTenantsResponse,
2711
+ GetProjectsLocationsTenantsError,
2712
+ Credentials | HttpClient.HttpClient
2713
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2714
+ input: GetProjectsLocationsTenantsRequest,
2715
+ output: GetProjectsLocationsTenantsResponse,
2716
+ errors: [],
2717
+ }));
2718
+
2719
+ export interface PatchProjectsLocationsTenantsRequest {
2720
+ /** Field mask is used to specify the fields to be overwritten in the Tenant resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields in the Tenant will be overwritten. */
2721
+ updateMask?: string;
2722
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2723
+ validateOnly?: boolean;
2724
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2725
+ requestId?: string;
2726
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/tenants/{tenant}" */
2727
+ name: string;
2728
+ /** Request body */
2729
+ body?: Tenant;
2730
+ }
2731
+
2732
+ export const PatchProjectsLocationsTenantsRequest =
2733
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2734
+ updateMask: Schema.optional(Schema.String).pipe(T.HttpQuery("updateMask")),
2735
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2736
+ T.HttpQuery("validateOnly"),
2737
+ ),
2738
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2739
+ name: Schema.String.pipe(T.HttpPath("name")),
2740
+ body: Schema.optional(Tenant).pipe(T.HttpBody()),
2741
+ }).pipe(
2742
+ T.Http({
2743
+ method: "PATCH",
2744
+ path: "v1/projects/{projectsId}/locations/{locationsId}/tenants/{tenantsId}",
2745
+ hasBody: true,
2746
+ }),
2747
+ svc,
2748
+ ) as unknown as Schema.Schema<PatchProjectsLocationsTenantsRequest>;
2749
+
2750
+ export type PatchProjectsLocationsTenantsResponse = Tenant;
2751
+ export const PatchProjectsLocationsTenantsResponse =
2752
+ /*@__PURE__*/ /*#__PURE__*/ Tenant;
2753
+
2754
+ export type PatchProjectsLocationsTenantsError = DefaultErrors;
2755
+
2756
+ /** Update a single tenant. */
2757
+ export const patchProjectsLocationsTenants: API.OperationMethod<
2758
+ PatchProjectsLocationsTenantsRequest,
2759
+ PatchProjectsLocationsTenantsResponse,
2760
+ PatchProjectsLocationsTenantsError,
2761
+ Credentials | HttpClient.HttpClient
2762
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2763
+ input: PatchProjectsLocationsTenantsRequest,
2764
+ output: PatchProjectsLocationsTenantsResponse,
2765
+ errors: [],
2766
+ }));
2767
+
2768
+ export interface CreateProjectsLocationsSaasRequest {
2769
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2770
+ requestId?: string;
2771
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2772
+ validateOnly?: boolean;
2773
+ /** Required. The ID value for the new saas. */
2774
+ saasId?: string;
2775
+ /** Required. The parent of the saas. */
2776
+ parent: string;
2777
+ /** Request body */
2778
+ body?: Saas;
2779
+ }
2780
+
2781
+ export const CreateProjectsLocationsSaasRequest =
2782
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2783
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2784
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2785
+ T.HttpQuery("validateOnly"),
2786
+ ),
2787
+ saasId: Schema.optional(Schema.String).pipe(T.HttpQuery("saasId")),
2788
+ parent: Schema.String.pipe(T.HttpPath("parent")),
2789
+ body: Schema.optional(Saas).pipe(T.HttpBody()),
2790
+ }).pipe(
2791
+ T.Http({
2792
+ method: "POST",
2793
+ path: "v1/projects/{projectsId}/locations/{locationsId}/saas",
2794
+ hasBody: true,
2795
+ }),
2796
+ svc,
2797
+ ) as unknown as Schema.Schema<CreateProjectsLocationsSaasRequest>;
2798
+
2799
+ export type CreateProjectsLocationsSaasResponse = Saas;
2800
+ export const CreateProjectsLocationsSaasResponse =
2801
+ /*@__PURE__*/ /*#__PURE__*/ Saas;
2802
+
2803
+ export type CreateProjectsLocationsSaasError = DefaultErrors;
2804
+
2805
+ /** Create a new saas. */
2806
+ export const createProjectsLocationsSaas: API.OperationMethod<
2807
+ CreateProjectsLocationsSaasRequest,
2808
+ CreateProjectsLocationsSaasResponse,
2809
+ CreateProjectsLocationsSaasError,
2810
+ Credentials | HttpClient.HttpClient
2811
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2812
+ input: CreateProjectsLocationsSaasRequest,
2813
+ output: CreateProjectsLocationsSaasResponse,
2814
+ errors: [],
2815
+ }));
2816
+
2817
+ export interface ListProjectsLocationsSaasRequest {
2818
+ /** The maximum number of saas to send per page. */
2819
+ pageSize?: number;
2820
+ /** Order results as specified in https://google.aip.dev/132. */
2821
+ orderBy?: string;
2822
+ /** Required. The parent of the saas. */
2823
+ parent: string;
2824
+ /** Filter the list as specified in https://google.aip.dev/160. */
2825
+ filter?: string;
2826
+ /** The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. */
2827
+ pageToken?: string;
2828
+ }
2829
+
2830
+ export const ListProjectsLocationsSaasRequest =
2831
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2832
+ pageSize: Schema.optional(Schema.Number).pipe(T.HttpQuery("pageSize")),
2833
+ orderBy: Schema.optional(Schema.String).pipe(T.HttpQuery("orderBy")),
2834
+ parent: Schema.String.pipe(T.HttpPath("parent")),
2835
+ filter: Schema.optional(Schema.String).pipe(T.HttpQuery("filter")),
2836
+ pageToken: Schema.optional(Schema.String).pipe(T.HttpQuery("pageToken")),
2837
+ }).pipe(
2838
+ T.Http({
2839
+ method: "GET",
2840
+ path: "v1/projects/{projectsId}/locations/{locationsId}/saas",
2841
+ }),
2842
+ svc,
2843
+ ) as unknown as Schema.Schema<ListProjectsLocationsSaasRequest>;
2844
+
2845
+ export type ListProjectsLocationsSaasResponse = ListSaasResponse;
2846
+ export const ListProjectsLocationsSaasResponse =
2847
+ /*@__PURE__*/ /*#__PURE__*/ ListSaasResponse;
2848
+
2849
+ export type ListProjectsLocationsSaasError = DefaultErrors;
2850
+
2851
+ /** Retrieve a collection of saas. */
2852
+ export const listProjectsLocationsSaas: API.PaginatedOperationMethod<
2853
+ ListProjectsLocationsSaasRequest,
2854
+ ListProjectsLocationsSaasResponse,
2855
+ ListProjectsLocationsSaasError,
2856
+ Credentials | HttpClient.HttpClient
2857
+ > = /*@__PURE__*/ /*#__PURE__*/ API.makePaginated(() => ({
2858
+ input: ListProjectsLocationsSaasRequest,
2859
+ output: ListProjectsLocationsSaasResponse,
2860
+ errors: [],
2861
+ pagination: {
2862
+ inputToken: "pageToken",
2863
+ outputToken: "nextPageToken",
2864
+ },
2865
+ }));
2866
+
2867
+ export interface PatchProjectsLocationsSaasRequest {
2868
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2869
+ validateOnly?: boolean;
2870
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2871
+ requestId?: string;
2872
+ /** Field mask is used to specify the fields to be overwritten in the Saas resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields in the Saas will be overwritten. */
2873
+ updateMask?: string;
2874
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/saas/{saas}" */
2875
+ name: string;
2876
+ /** Request body */
2877
+ body?: Saas;
2878
+ }
2879
+
2880
+ export const PatchProjectsLocationsSaasRequest =
2881
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2882
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2883
+ T.HttpQuery("validateOnly"),
2884
+ ),
2885
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2886
+ updateMask: Schema.optional(Schema.String).pipe(T.HttpQuery("updateMask")),
2887
+ name: Schema.String.pipe(T.HttpPath("name")),
2888
+ body: Schema.optional(Saas).pipe(T.HttpBody()),
2889
+ }).pipe(
2890
+ T.Http({
2891
+ method: "PATCH",
2892
+ path: "v1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}",
2893
+ hasBody: true,
2894
+ }),
2895
+ svc,
2896
+ ) as unknown as Schema.Schema<PatchProjectsLocationsSaasRequest>;
2897
+
2898
+ export type PatchProjectsLocationsSaasResponse = Saas;
2899
+ export const PatchProjectsLocationsSaasResponse =
2900
+ /*@__PURE__*/ /*#__PURE__*/ Saas;
2901
+
2902
+ export type PatchProjectsLocationsSaasError = DefaultErrors;
2903
+
2904
+ /** Update a single saas. */
2905
+ export const patchProjectsLocationsSaas: API.OperationMethod<
2906
+ PatchProjectsLocationsSaasRequest,
2907
+ PatchProjectsLocationsSaasResponse,
2908
+ PatchProjectsLocationsSaasError,
2909
+ Credentials | HttpClient.HttpClient
2910
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2911
+ input: PatchProjectsLocationsSaasRequest,
2912
+ output: PatchProjectsLocationsSaasResponse,
2913
+ errors: [],
2914
+ }));
2915
+
2916
+ export interface DeleteProjectsLocationsSaasRequest {
2917
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
2918
+ requestId?: string;
2919
+ /** Required. The resource name of the resource within a service. */
2920
+ name: string;
2921
+ /** The etag known to the client for the expected state of the saas. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the saas. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. */
2922
+ etag?: string;
2923
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2924
+ validateOnly?: boolean;
2925
+ }
2926
+
2927
+ export const DeleteProjectsLocationsSaasRequest =
2928
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2929
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
2930
+ name: Schema.String.pipe(T.HttpPath("name")),
2931
+ etag: Schema.optional(Schema.String).pipe(T.HttpQuery("etag")),
2932
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
2933
+ T.HttpQuery("validateOnly"),
2934
+ ),
2935
+ }).pipe(
2936
+ T.Http({
2937
+ method: "DELETE",
2938
+ path: "v1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}",
2939
+ }),
2940
+ svc,
2941
+ ) as unknown as Schema.Schema<DeleteProjectsLocationsSaasRequest>;
2942
+
2943
+ export type DeleteProjectsLocationsSaasResponse = Empty;
2944
+ export const DeleteProjectsLocationsSaasResponse =
2945
+ /*@__PURE__*/ /*#__PURE__*/ Empty;
2946
+
2947
+ export type DeleteProjectsLocationsSaasError = DefaultErrors;
2948
+
2949
+ /** Delete a single saas. */
2950
+ export const deleteProjectsLocationsSaas: API.OperationMethod<
2951
+ DeleteProjectsLocationsSaasRequest,
2952
+ DeleteProjectsLocationsSaasResponse,
2953
+ DeleteProjectsLocationsSaasError,
2954
+ Credentials | HttpClient.HttpClient
2955
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2956
+ input: DeleteProjectsLocationsSaasRequest,
2957
+ output: DeleteProjectsLocationsSaasResponse,
2958
+ errors: [],
2959
+ }));
2960
+
2961
+ export interface GetProjectsLocationsSaasRequest {
2962
+ /** Required. The resource name of the resource within a service. */
2963
+ name: string;
2964
+ }
2965
+
2966
+ export const GetProjectsLocationsSaasRequest =
2967
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
2968
+ name: Schema.String.pipe(T.HttpPath("name")),
2969
+ }).pipe(
2970
+ T.Http({
2971
+ method: "GET",
2972
+ path: "v1/projects/{projectsId}/locations/{locationsId}/saas/{saasId}",
2973
+ }),
2974
+ svc,
2975
+ ) as unknown as Schema.Schema<GetProjectsLocationsSaasRequest>;
2976
+
2977
+ export type GetProjectsLocationsSaasResponse = Saas;
2978
+ export const GetProjectsLocationsSaasResponse =
2979
+ /*@__PURE__*/ /*#__PURE__*/ Saas;
2980
+
2981
+ export type GetProjectsLocationsSaasError = DefaultErrors;
2982
+
2983
+ /** Retrieve a single saas. */
2984
+ export const getProjectsLocationsSaas: API.OperationMethod<
2985
+ GetProjectsLocationsSaasRequest,
2986
+ GetProjectsLocationsSaasResponse,
2987
+ GetProjectsLocationsSaasError,
2988
+ Credentials | HttpClient.HttpClient
2989
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
2990
+ input: GetProjectsLocationsSaasRequest,
2991
+ output: GetProjectsLocationsSaasResponse,
2992
+ errors: [],
2993
+ }));
2994
+
2995
+ export interface DeleteProjectsLocationsRolloutsRequest {
2996
+ /** Required. The resource name of the resource within a service. */
2997
+ name: string;
2998
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
2999
+ validateOnly?: boolean;
3000
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
3001
+ requestId?: string;
3002
+ /** The etag known to the client for the expected state of the rollout. This is used with state-changing methods to prevent accidental overwrites when multiple user agents might be acting in parallel on the same resource. An etag wildcard provide optimistic concurrency based on the expected existence of the rollout. The Any wildcard (`*`) requires that the resource must already exists, and the Not Any wildcard (`!*`) requires that it must not. */
3003
+ etag?: string;
3004
+ }
3005
+
3006
+ export const DeleteProjectsLocationsRolloutsRequest =
3007
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
3008
+ name: Schema.String.pipe(T.HttpPath("name")),
3009
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
3010
+ T.HttpQuery("validateOnly"),
3011
+ ),
3012
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
3013
+ etag: Schema.optional(Schema.String).pipe(T.HttpQuery("etag")),
3014
+ }).pipe(
3015
+ T.Http({
3016
+ method: "DELETE",
3017
+ path: "v1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}",
3018
+ }),
3019
+ svc,
3020
+ ) as unknown as Schema.Schema<DeleteProjectsLocationsRolloutsRequest>;
3021
+
3022
+ export type DeleteProjectsLocationsRolloutsResponse = Empty;
3023
+ export const DeleteProjectsLocationsRolloutsResponse =
3024
+ /*@__PURE__*/ /*#__PURE__*/ Empty;
3025
+
3026
+ export type DeleteProjectsLocationsRolloutsError = DefaultErrors;
3027
+
3028
+ /** Delete a single rollout. */
3029
+ export const deleteProjectsLocationsRollouts: API.OperationMethod<
3030
+ DeleteProjectsLocationsRolloutsRequest,
3031
+ DeleteProjectsLocationsRolloutsResponse,
3032
+ DeleteProjectsLocationsRolloutsError,
3033
+ Credentials | HttpClient.HttpClient
3034
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
3035
+ input: DeleteProjectsLocationsRolloutsRequest,
3036
+ output: DeleteProjectsLocationsRolloutsResponse,
3037
+ errors: [],
3038
+ }));
3039
+
3040
+ export interface ListProjectsLocationsRolloutsRequest {
3041
+ /** The maximum number of rollouts to send per page. */
3042
+ pageSize?: number;
3043
+ /** Required. The parent of the rollout. */
3044
+ parent: string;
3045
+ /** Filter the list as specified in https://google.aip.dev/160. */
3046
+ filter?: string;
3047
+ /** The page token: If the next_page_token from a previous response is provided, this request will send the subsequent page. */
3048
+ pageToken?: string;
3049
+ /** Order results as specified in https://google.aip.dev/132. */
3050
+ orderBy?: string;
3051
+ }
3052
+
3053
+ export const ListProjectsLocationsRolloutsRequest =
3054
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
3055
+ pageSize: Schema.optional(Schema.Number).pipe(T.HttpQuery("pageSize")),
3056
+ parent: Schema.String.pipe(T.HttpPath("parent")),
3057
+ filter: Schema.optional(Schema.String).pipe(T.HttpQuery("filter")),
3058
+ pageToken: Schema.optional(Schema.String).pipe(T.HttpQuery("pageToken")),
3059
+ orderBy: Schema.optional(Schema.String).pipe(T.HttpQuery("orderBy")),
3060
+ }).pipe(
3061
+ T.Http({
3062
+ method: "GET",
3063
+ path: "v1/projects/{projectsId}/locations/{locationsId}/rollouts",
3064
+ }),
3065
+ svc,
3066
+ ) as unknown as Schema.Schema<ListProjectsLocationsRolloutsRequest>;
3067
+
3068
+ export type ListProjectsLocationsRolloutsResponse = ListRolloutsResponse;
3069
+ export const ListProjectsLocationsRolloutsResponse =
3070
+ /*@__PURE__*/ /*#__PURE__*/ ListRolloutsResponse;
3071
+
3072
+ export type ListProjectsLocationsRolloutsError = DefaultErrors;
3073
+
3074
+ /** Retrieve a collection of rollouts. */
3075
+ export const listProjectsLocationsRollouts: API.PaginatedOperationMethod<
3076
+ ListProjectsLocationsRolloutsRequest,
3077
+ ListProjectsLocationsRolloutsResponse,
3078
+ ListProjectsLocationsRolloutsError,
3079
+ Credentials | HttpClient.HttpClient
3080
+ > = /*@__PURE__*/ /*#__PURE__*/ API.makePaginated(() => ({
3081
+ input: ListProjectsLocationsRolloutsRequest,
3082
+ output: ListProjectsLocationsRolloutsResponse,
3083
+ errors: [],
3084
+ pagination: {
3085
+ inputToken: "pageToken",
3086
+ outputToken: "nextPageToken",
3087
+ },
3088
+ }));
3089
+
3090
+ export interface CreateProjectsLocationsRolloutsRequest {
3091
+ /** Required. The ID value for the new rollout. */
3092
+ rolloutId?: string;
3093
+ /** Required. The parent of the rollout. */
3094
+ parent: string;
3095
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
3096
+ validateOnly?: boolean;
3097
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
3098
+ requestId?: string;
3099
+ /** Request body */
3100
+ body?: Rollout;
3101
+ }
3102
+
3103
+ export const CreateProjectsLocationsRolloutsRequest =
3104
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
3105
+ rolloutId: Schema.optional(Schema.String).pipe(T.HttpQuery("rolloutId")),
3106
+ parent: Schema.String.pipe(T.HttpPath("parent")),
3107
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
3108
+ T.HttpQuery("validateOnly"),
3109
+ ),
3110
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
3111
+ body: Schema.optional(Rollout).pipe(T.HttpBody()),
3112
+ }).pipe(
3113
+ T.Http({
3114
+ method: "POST",
3115
+ path: "v1/projects/{projectsId}/locations/{locationsId}/rollouts",
3116
+ hasBody: true,
3117
+ }),
3118
+ svc,
3119
+ ) as unknown as Schema.Schema<CreateProjectsLocationsRolloutsRequest>;
3120
+
3121
+ export type CreateProjectsLocationsRolloutsResponse = Rollout;
3122
+ export const CreateProjectsLocationsRolloutsResponse =
3123
+ /*@__PURE__*/ /*#__PURE__*/ Rollout;
3124
+
3125
+ export type CreateProjectsLocationsRolloutsError = DefaultErrors;
3126
+
3127
+ /** Create a new rollout. */
3128
+ export const createProjectsLocationsRollouts: API.OperationMethod<
3129
+ CreateProjectsLocationsRolloutsRequest,
3130
+ CreateProjectsLocationsRolloutsResponse,
3131
+ CreateProjectsLocationsRolloutsError,
3132
+ Credentials | HttpClient.HttpClient
3133
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
3134
+ input: CreateProjectsLocationsRolloutsRequest,
3135
+ output: CreateProjectsLocationsRolloutsResponse,
3136
+ errors: [],
3137
+ }));
3138
+
3139
+ export interface PatchProjectsLocationsRolloutsRequest {
3140
+ /** Identifier. The resource name (full URI of the resource) following the standard naming scheme: "projects/{project}/locations/{location}/rollout/{rollout_id}" */
3141
+ name: string;
3142
+ /** An optional request ID to identify requests. Specify a unique request ID so that if you must retry your request, the server will know to ignore the request if it has already been completed. The server will guarantee that for at least 60 minutes since the first request. For example, consider a situation where you make an initial request and the request times out. If you make the request again with the same request ID, the server can check if original operation with the same request ID was received, and if so, will ignore the second request. This prevents clients from accidentally creating duplicate commitments. The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). */
3143
+ requestId?: string;
3144
+ /** If "validate_only" is set to true, the service will try to validate that this request would succeed, but will not actually make changes. */
3145
+ validateOnly?: boolean;
3146
+ /** Field mask is used to specify the fields to be overwritten in the Rollout resource by the update. The fields specified in the update_mask are relative to the resource, not the full request. A field will be overwritten if it is in the mask. If the user does not provide a mask then all fields in the Rollout will be overwritten. */
3147
+ updateMask?: string;
3148
+ /** Request body */
3149
+ body?: Rollout;
3150
+ }
3151
+
3152
+ export const PatchProjectsLocationsRolloutsRequest =
3153
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
3154
+ name: Schema.String.pipe(T.HttpPath("name")),
3155
+ requestId: Schema.optional(Schema.String).pipe(T.HttpQuery("requestId")),
3156
+ validateOnly: Schema.optional(Schema.Boolean).pipe(
3157
+ T.HttpQuery("validateOnly"),
3158
+ ),
3159
+ updateMask: Schema.optional(Schema.String).pipe(T.HttpQuery("updateMask")),
3160
+ body: Schema.optional(Rollout).pipe(T.HttpBody()),
3161
+ }).pipe(
3162
+ T.Http({
3163
+ method: "PATCH",
3164
+ path: "v1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}",
3165
+ hasBody: true,
3166
+ }),
3167
+ svc,
3168
+ ) as unknown as Schema.Schema<PatchProjectsLocationsRolloutsRequest>;
3169
+
3170
+ export type PatchProjectsLocationsRolloutsResponse = Rollout;
3171
+ export const PatchProjectsLocationsRolloutsResponse =
3172
+ /*@__PURE__*/ /*#__PURE__*/ Rollout;
3173
+
3174
+ export type PatchProjectsLocationsRolloutsError = DefaultErrors;
3175
+
3176
+ /** Update a single rollout. */
3177
+ export const patchProjectsLocationsRollouts: API.OperationMethod<
3178
+ PatchProjectsLocationsRolloutsRequest,
3179
+ PatchProjectsLocationsRolloutsResponse,
3180
+ PatchProjectsLocationsRolloutsError,
3181
+ Credentials | HttpClient.HttpClient
3182
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
3183
+ input: PatchProjectsLocationsRolloutsRequest,
3184
+ output: PatchProjectsLocationsRolloutsResponse,
3185
+ errors: [],
3186
+ }));
3187
+
3188
+ export interface GetProjectsLocationsRolloutsRequest {
3189
+ /** Required. The resource name of the resource within a service. */
3190
+ name: string;
3191
+ }
3192
+
3193
+ export const GetProjectsLocationsRolloutsRequest =
3194
+ /*@__PURE__*/ /*#__PURE__*/ Schema.Struct({
3195
+ name: Schema.String.pipe(T.HttpPath("name")),
3196
+ }).pipe(
3197
+ T.Http({
3198
+ method: "GET",
3199
+ path: "v1/projects/{projectsId}/locations/{locationsId}/rollouts/{rolloutsId}",
3200
+ }),
3201
+ svc,
3202
+ ) as unknown as Schema.Schema<GetProjectsLocationsRolloutsRequest>;
3203
+
3204
+ export type GetProjectsLocationsRolloutsResponse = Rollout;
3205
+ export const GetProjectsLocationsRolloutsResponse =
3206
+ /*@__PURE__*/ /*#__PURE__*/ Rollout;
3207
+
3208
+ export type GetProjectsLocationsRolloutsError = DefaultErrors;
3209
+
3210
+ /** Retrieve a single rollout. */
3211
+ export const getProjectsLocationsRollouts: API.OperationMethod<
3212
+ GetProjectsLocationsRolloutsRequest,
3213
+ GetProjectsLocationsRolloutsResponse,
3214
+ GetProjectsLocationsRolloutsError,
3215
+ Credentials | HttpClient.HttpClient
3216
+ > = /*@__PURE__*/ /*#__PURE__*/ API.make(() => ({
3217
+ input: GetProjectsLocationsRolloutsRequest,
3218
+ output: GetProjectsLocationsRolloutsResponse,
3219
+ errors: [],
3220
+ }));