@azure-tools/typespec-azure-resource-manager 0.38.0 → 0.39.0-dev.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.
@@ -11,6 +11,9 @@ namespace Azure.ResourceManager;
11
11
  /**
12
12
  * A resource list operation, at the subscription scope
13
13
  * @template Resource the resource being patched
14
+ * @template Parameters Optional. Additional parameters after the path parameters
15
+ * @template Response Optional. The success response for the list operation
16
+ * @template Error Optional. The error response, if non-standard.
14
17
  */
15
18
  @autoRoute
16
19
  @doc("List {name} resources by subscription ID", Resource)
@@ -18,9 +21,12 @@ namespace Azure.ResourceManager;
18
21
  @segmentOf(Resource)
19
22
  @armResourceList(Resource)
20
23
  @get
21
- op ArmListBySubscription<Resource extends ArmResource>(
22
- ...SubscriptionScope<Resource>,
23
- ): ArmResponse<ResourceListResult<Resource>> | ErrorResponse;
24
+ op ArmListBySubscription<
25
+ Resource extends ArmResource,
26
+ Parameters extends {} = {},
27
+ Response extends {} = ArmResponse<ResourceListResult<Resource>>,
28
+ Error extends {} = ErrorResponse
29
+ > is ArmReadOperation<SubscriptionScope<Resource> & Parameters, Response, Error>;
24
30
 
25
31
  /**
26
32
  * A resource list operation, at the scope of the resource's parent
@@ -28,6 +34,9 @@ op ArmListBySubscription<Resource extends ArmResource>(
28
34
  * @template BaseParameters Optional. Allows overriding the operation parameters
29
35
  * @template ParentName Optional. The name of the parent resource
30
36
  * @template ParentFriendlyName Optional. The friendly name of the parent resource
37
+ * @template Parameters Optional. Additional parameters after the path parameters
38
+ * @template Response Optional. The success response for the list operation
39
+ * @template Error Optional. The error response, if non-standard.
31
40
  */
32
41
  @get
33
42
  @autoRoute
@@ -39,15 +48,23 @@ op ArmResourceListByParent<
39
48
  Resource extends ArmResource,
40
49
  BaseParameters = DefaultBaseParameters<Resource>,
41
50
  ParentName extends valueof string = "",
42
- ParentFriendlyName extends valueof string = ""
43
- >(
44
- ...ResourceParentParameters<Resource, BaseParameters>,
45
- ): ArmResponse<ResourceListResult<Resource>> | ErrorResponse;
51
+ ParentFriendlyName extends valueof string = "",
52
+ Parameters extends {} = {},
53
+ Response extends {} = ArmResponse<ResourceListResult<Resource>>,
54
+ Error extends {} = ErrorResponse
55
+ > is ArmReadOperation<
56
+ ResourceParentParameters<Resource, BaseParameters> & Parameters,
57
+ Response,
58
+ ErrorResponse
59
+ >;
46
60
 
47
61
  /**
48
62
  * A resource list operation, with scope determined by BaseParameters
49
63
  * @template Resource the resource being patched
50
64
  * @template BaseParameters Optional. Allows overriding the operation parameters
65
+ * @template Parameters Optional. Additional parameters after the path parameters
66
+ * @template Response Optional. The success response for the list operation
67
+ * @template Error Optional. The error response, if non-standard.
51
68
  */
52
69
  @get
53
70
  @autoRoute
@@ -57,15 +74,23 @@ op ArmResourceListByParent<
57
74
  @armResourceList(Resource)
58
75
  op ArmResourceListAtScope<
59
76
  Resource extends ArmResource,
60
- BaseParameters = DefaultBaseParameters<Resource>
61
- >(
62
- ...ResourceParentParameters<Resource, BaseParameters>,
63
- ): ArmResponse<ResourceListResult<Resource>> | ErrorResponse;
77
+ BaseParameters = DefaultBaseParameters<Resource>,
78
+ Parameters extends {} = {},
79
+ Response extends {} = ArmResponse<ResourceListResult<Resource>>,
80
+ Error extends {} = ErrorResponse
81
+ > is ArmReadOperation<
82
+ ResourceParentParameters<Resource, BaseParameters> & Parameters,
83
+ Response,
84
+ ErrorResponse
85
+ >;
64
86
 
65
87
  /**
66
88
  * A resource GET operation
67
89
  * @template Resource the resource being patched
68
90
  * @template BaseParameters Optional. Allows overriding the operation parameters
91
+ * @template Parameters Optional. Additional parameters after the path parameters
92
+ * @template Response Optional. The success response for the read operation
93
+ * @template Error Optional. The error response, if non-standard.
69
94
  */
70
95
  @autoRoute
71
96
  @doc("Get a {name}", Resource)
@@ -73,14 +98,24 @@ op ArmResourceListAtScope<
73
98
  @armResourceRead(Resource)
74
99
  op ArmResourceRead<
75
100
  Resource extends ArmResourceBase,
76
- BaseParameters = DefaultBaseParameters<Resource>
77
- >(...ResourceInstanceParameters<Resource, BaseParameters>): ArmResponse<Resource> | ErrorResponse;
101
+ BaseParameters = DefaultBaseParameters<Resource>,
102
+ Parameters extends {} = {},
103
+ Response extends {} = ArmResponse<Resource>,
104
+ Error extends {} = ErrorResponse
105
+ > is ArmReadOperation<
106
+ ResourceInstanceParameters<Resource, BaseParameters> & Parameters,
107
+ Response,
108
+ ErrorResponse
109
+ >;
78
110
 
79
111
  /**
80
112
  * A long-running resource CreateOrUpdate (PUT)
81
113
  * @template Resource the resource being patched
82
114
  * @template BaseParameters Optional. Allows overriding the operation parameters
83
115
  * @template LroHeaders Optional. Allows overriding the lro headers returned on resource create
116
+ * @template Parameters Optional. Additional parameters after the path parameters
117
+ * @template Response Optional. The success response for the createOrUpdate operation
118
+ * @template Error Optional. The error response, if non-standard.
84
119
  */
85
120
  @autoRoute
86
121
  @doc("Create a {name}", Resource)
@@ -96,42 +131,53 @@ op ArmResourceRead<
96
131
  op ArmResourceCreateOrUpdateAsync<
97
132
  Resource extends ArmResource,
98
133
  BaseParameters = DefaultBaseParameters<Resource>,
99
- LroHeaders extends TypeSpec.Reflection.Model = {}
100
- >(
101
- ...ResourceInstanceParameters<Resource, BaseParameters>,
102
-
103
- @doc("Resource create parameters.")
104
- @body
105
- resource: Resource,
106
- ): ArmResourceUpdatedResponse<Resource> | ArmResourceCreatedResponse<
134
+ LroHeaders extends TypeSpec.Reflection.Model = {},
135
+ Parameters extends {} = {},
136
+ Response extends {} = ArmResourceUpdatedResponse<Resource> | ArmResourceCreatedResponse<
137
+ Resource,
138
+ LroHeaders
139
+ >,
140
+ Error extends {} = ErrorResponse
141
+ > is ArmCreateOperation<
142
+ ResourceInstanceParameters<Resource, BaseParameters> & Parameters,
107
143
  Resource,
108
- LroHeaders
109
- > | ErrorResponse;
144
+ ArmResourceUpdatedResponse<Resource> | ArmResourceCreatedResponse<Resource, LroHeaders>,
145
+ Error
146
+ >;
110
147
 
111
148
  /**
112
149
  * DEPRECATED: Please use ArmResourceCreateOrReplaceSync instead
113
150
  * @template Resource the resource being patched
114
151
  * @template BaseParameters Optional. Allows overriding the operation parameters
152
+ * @template Parameters Optional. Additional parameters after the path parameters
153
+ * @template Response Optional. The success response for the createOrUpdate operation
154
+ * @template Error Optional. The error response, if non-standard.
115
155
  */
156
+ #deprecated "Please use ArmResourceCreateOrReplaceSync instead"
116
157
  @autoRoute
117
158
  @doc("Create a {name}", Resource)
118
159
  @armResourceCreateOrUpdate(Resource)
119
160
  @put
120
161
  op ArmResourceCreateOrUpdateSync<
121
162
  Resource extends ArmResource,
122
- BaseParameters = DefaultBaseParameters<Resource>
123
- >(
124
- ...ResourceInstanceParameters<Resource, BaseParameters>,
125
-
126
- @doc("Resource create parameters.")
127
- @body
128
- resource: Resource,
129
- ): ArmResponse<Resource> | ErrorResponse;
163
+ BaseParameters = DefaultBaseParameters<Resource>,
164
+ Parameters extends {} = {},
165
+ Response extends {} = ArmResponse<Resource>,
166
+ Error extends {} = ErrorResponse
167
+ > is ArmCreateOperation<
168
+ ResourceInstanceParameters<Resource, BaseParameters> & Parameters,
169
+ Resource,
170
+ Response,
171
+ Error
172
+ >;
130
173
 
131
174
  /**
132
- * Synchronous PUT operation for ARM resources
175
+ * Synchronous PUT operation for Azure Resource Manager resources
133
176
  * @template Resource the resource being patched
134
177
  * @template BaseParameters Optional. Allows overriding the operation parameters
178
+ * @template Parameters Optional. Additional parameters after the path parameters
179
+ * @template Response Optional. The success response for the createOrUpdate operation
180
+ * @template Error Optional. The error response, if non-standard.
135
181
  */
136
182
  @autoRoute
137
183
  @doc("Create a {name}", Resource)
@@ -139,26 +185,51 @@ op ArmResourceCreateOrUpdateSync<
139
185
  @put
140
186
  op ArmResourceCreateOrReplaceSync<
141
187
  Resource extends ArmResource,
142
- BaseParameters = DefaultBaseParameters<Resource>
143
- >(
144
- ...ResourceInstanceParameters<Resource, BaseParameters>,
145
-
146
- @doc("Resource create parameters.")
147
- @body
148
- resource: Resource,
149
- ): ArmResourceUpdatedResponse<Resource> | ArmResourceCreatedSyncResponse<Resource> | ErrorResponse;
188
+ BaseParameters = DefaultBaseParameters<Resource>,
189
+ Parameters extends {} = {},
190
+ Response extends {} = ArmResourceUpdatedResponse<Resource> | ArmResourceCreatedSyncResponse<Resource>,
191
+ Error extends {} = ErrorResponse
192
+ > is ArmCreateOperation<
193
+ ResourceInstanceParameters<Resource, BaseParameters> & Parameters,
194
+ Resource,
195
+ Response,
196
+ Error
197
+ >;
150
198
 
199
+ /**
200
+ * @dev A long-running resource CreateOrUpdate (PUT)
201
+ * @template Resource the resource being patched
202
+ * @template BaseParameters Optional. Allows overriding the operation parameters
203
+ * @template LroHeaders Optional. Allows overriding the lro headers returned on resource create
204
+ * @template Parameters Optional. Additional parameters after the path parameters
205
+ * @template Response Optional. The success response for the createOrReplace operation
206
+ * @template Error Optional. The error response, if non-standard.
207
+ */
151
208
  op ArmResourceCreateOrReplaceAsync<
152
209
  Resource extends ArmResource,
153
210
  BaseParameters = DefaultBaseParameters<Resource>,
154
- LroHeaders extends TypeSpec.Reflection.Model = {}
155
- > is ArmResourceCreateOrUpdateAsync<Resource, BaseParameters, LroHeaders>;
211
+ LroHeaders extends TypeSpec.Reflection.Model = {},
212
+ Parameters extends {} = {},
213
+ Response extends {} = ArmResourceUpdatedResponse<Resource> | ArmResourceCreatedResponse<
214
+ Resource,
215
+ LroHeaders
216
+ >,
217
+ Error extends {} = ErrorResponse
218
+ > is ArmResourceCreateOrUpdateAsync<
219
+ Resource,
220
+ BaseParameters,
221
+ LroHeaders,
222
+ Parameters,
223
+ Response,
224
+ Error
225
+ >;
156
226
 
157
227
  /**
158
228
  * @dev A long-running resource update that only allows updating resource tags (the minimum)
159
229
  * @template Resource the resource being patched
160
230
  * @template BaseParameters Optional. Allows overriding the operation parameters
161
231
  * @template LroHeaders Optional. Allows overriding the lro headers that appear in the Accepted response
232
+ * @template Parameters Optional. Additional parameters after the path parameters
162
233
  */
163
234
  op ArmTagsPatchAsync<
164
235
  Resource extends ArmResource,
@@ -168,8 +239,15 @@ op ArmTagsPatchAsync<
168
239
  Azure.Core.StatusMonitorPollingOptions<ArmOperationStatus>,
169
240
  Resource,
170
241
  string
171
- >
172
- > is ArmCustomPatchAsync<Resource, TagsUpdateModel<Resource>, BaseParameters, LroHeaders>;
242
+ >,
243
+ Parameters extends {} = {}
244
+ > is ArmCustomPatchAsync<
245
+ Resource,
246
+ TagsUpdateModel<Resource>,
247
+ BaseParameters,
248
+ LroHeaders,
249
+ Parameters
250
+ >;
173
251
 
174
252
  /**
175
253
  * @dev A long-running resource update using the items from the resource marked with visibility "update"
@@ -177,6 +255,7 @@ op ArmTagsPatchAsync<
177
255
  * @template Properties The model type of the resource properties
178
256
  * @template BaseParameters Optional. Allows overriding the operation parameters
179
257
  * @template LroHeaders Optional. Allows overriding the lro headers returned in the Accepted response
258
+ * @template Parameters Optional. Additional parameters after the path parameters
180
259
  */
181
260
  op ArmResourcePatchAsync<
182
261
  Resource extends ArmResource,
@@ -186,12 +265,14 @@ op ArmResourcePatchAsync<
186
265
  Azure.Core.StatusMonitorPollingOptions<ArmOperationStatus>,
187
266
  Resource,
188
267
  string
189
- >
268
+ >,
269
+ Parameters extends {} = {}
190
270
  > is ArmCustomPatchAsync<
191
271
  Resource,
192
272
  ResourceUpdateModel<Resource, Properties>,
193
273
  BaseParameters,
194
- LroHeaders
274
+ LroHeaders,
275
+ Parameters
195
276
  >;
196
277
 
197
278
  /**
@@ -200,6 +281,9 @@ op ArmResourcePatchAsync<
200
281
  * @template PatchModel The input model for the PATCH request
201
282
  * @template BaseParameters Optional. Allows overriding the operation parameters
202
283
  * @template LroHeaders Optional. Allows overriding the lro headers returned in the Accepted response
284
+ * @template Parameters Optional. Additional parameters after the path parameters
285
+ * @template Response Optional. The success response for the patch operation
286
+ * @template Error Optional. The error response, if non-standard.
203
287
  */
204
288
  @autoRoute
205
289
  @doc("Update a {name}", Resource)
@@ -220,45 +304,59 @@ op ArmCustomPatchAsync<
220
304
  Azure.Core.StatusMonitorPollingOptions<ArmOperationStatus>,
221
305
  Resource,
222
306
  string
223
- >
224
- >(
225
- ...ResourceInstanceParameters<Resource, BaseParameters>,
226
-
227
- @doc("The resource properties to be updated.")
228
- @body
229
- properties: PatchModel,
230
- ): ArmResponse<Resource> | ArmAcceptedLroResponse<
231
- "Resource update request accepted.",
232
- LroHeaders
233
- > | ErrorResponse;
307
+ >,
308
+ Parameters extends {} = {},
309
+ Response extends {} = ArmResponse<Resource> | ArmAcceptedLroResponse<
310
+ "Resource update request accepted.",
311
+ LroHeaders
312
+ >,
313
+ Error extends {} = ErrorResponse
314
+ > is ArmUpdateOperation<
315
+ ResourceInstanceParameters<Resource, BaseParameters> & Parameters,
316
+ PatchModel,
317
+ Response,
318
+ Error
319
+ >;
234
320
 
235
321
  /**
236
322
  * @dev A resource update that only allows updating resource tags (the minimum)
237
323
  * @template Resource the resource being patched
238
324
  * @template BaseParameters Optional. Allows overriding the operation parameters
325
+ * @template Parameters Optional. Additional parameters after the path parameters
239
326
  */
240
327
  op ArmTagsPatchSync<
241
328
  Resource extends ArmResource,
242
- BaseParameters = DefaultBaseParameters<Resource>
243
- > is ArmCustomPatchSync<Resource, TagsUpdateModel<Resource>, BaseParameters>;
329
+ BaseParameters = DefaultBaseParameters<Resource>,
330
+ Parameters extends {} = {}
331
+ > is ArmCustomPatchSync<Resource, TagsUpdateModel<Resource>, BaseParameters, Parameters>;
244
332
 
245
333
  /**
246
334
  * @dev A resource update using the items from the resource marked with visibility "update"
247
335
  * @template Resource the resource being patched
248
336
  * @template Properties The model type of the resource properties
249
337
  * @template BaseParameters Optional. Allows overriding the operation parameters
338
+ * @template Parameters Optional. Additional parameters after the path parameters
250
339
  */
251
340
  op ArmResourcePatchSync<
252
341
  Resource extends ArmResource,
253
342
  Properties extends TypeSpec.Reflection.Model,
254
- BaseParameters = DefaultBaseParameters<Resource>
255
- > is ArmCustomPatchSync<Resource, ResourceUpdateModel<Resource, Properties>, BaseParameters>;
343
+ BaseParameters = DefaultBaseParameters<Resource>,
344
+ Parameters extends {} = {}
345
+ > is ArmCustomPatchSync<
346
+ Resource,
347
+ ResourceUpdateModel<Resource, Properties>,
348
+ BaseParameters,
349
+ Parameters
350
+ >;
256
351
 
257
352
  /**
258
353
  * A resource update using a custom PATCH payload (synchronous)
259
354
  * @template Resource the resource being patched
260
355
  * @template PatchModel The input model for the PATCH request
261
356
  * @template BaseParameters Optional. Allows overriding the operation parameters
357
+ * @template Parameters Optional. Additional parameters after the path parameters
358
+ * @template Response Optional. The success response for the patch operation
359
+ * @template Error Optional. The error response, if non-standard.
262
360
  */
263
361
  @autoRoute
264
362
  @doc("Update a {name}", Resource)
@@ -267,20 +365,24 @@ op ArmResourcePatchSync<
267
365
  op ArmCustomPatchSync<
268
366
  Resource extends ArmResource,
269
367
  PatchModel extends TypeSpec.Reflection.Model = TagsUpdateModel<Resource>,
270
- BaseParameters = DefaultBaseParameters<Resource>
271
- >(
272
- ...ResourceInstanceParameters<Resource, BaseParameters>,
273
-
274
- @doc("The resource properties to be updated.")
275
- @body
276
- properties: PatchModel,
277
- ): ArmResponse<Resource> | ErrorResponse;
368
+ BaseParameters = DefaultBaseParameters<Resource>,
369
+ Parameters extends {} = {},
370
+ Response extends {} = ArmResponse<Resource>,
371
+ Error extends {} = ErrorResponse
372
+ > is ArmUpdateOperation<
373
+ ResourceInstanceParameters<Resource, BaseParameters> & Parameters,
374
+ PatchModel,
375
+ Response,
376
+ Error
377
+ >;
278
378
 
279
379
  /**
280
380
  * @dev Delete a resource asynchronously
281
381
  * @template Resource The resource being deleted
282
382
  * @template Response The response type for the operation
283
383
  * @template BaseParameters Optional. Allows overriding the parameters for the operation
384
+ * @template Parameters Optional. Additional parameters after the path parameters
385
+ * @template Error Optional. The error response, if non-standard.
284
386
  */
285
387
  @autoRoute
286
388
  @doc("Delete a {name}", Resource)
@@ -296,45 +398,54 @@ op ArmCustomPatchSync<
296
398
  op ArmResourceDeleteAsyncBase<
297
399
  Resource extends ArmResource,
298
400
  Response,
299
- BaseParameters = DefaultBaseParameters<Resource>
300
- >(...ResourceInstanceParameters<Resource, BaseParameters>): Response | ErrorResponse;
401
+ BaseParameters = DefaultBaseParameters<Resource>,
402
+ Parameters extends {} = {},
403
+ Error extends {} = ErrorResponse
404
+ >(...ResourceInstanceParameters<Resource, BaseParameters>, ...Parameters): Response | Error;
301
405
 
302
406
  /**
303
407
  * @dev Delete a resource asynchronously. DEPRECATED: Use ArmResourceDeleteWithoutOkAsync instead
304
408
  * @template Resource The resource being deleted
305
409
  * @template BaseParameters Optional. Allows overriding the parameters for the operation
306
410
  * @template LroHeaders Optional. Allows overriding the headers in the Accepted response
411
+ * @template Parameters Optional. Additional parameters after the path parameters
412
+ * @template Response Optional. The success response(s) for the delete operation
413
+ * @template Error Optional. The error response, if non-standard.
307
414
  */
308
415
  op ArmResourceDeleteAsync<
309
416
  Resource extends ArmResource,
310
417
  BaseParameters = DefaultBaseParameters<Resource>,
311
- LroHeaders extends TypeSpec.Reflection.Model = ArmLroLocationHeader
312
- > is ArmResourceDeleteAsyncBase<
313
- Resource,
314
- ArmDeletedResponse | ArmDeleteAcceptedLroResponse<LroHeaders> | ArmDeletedNoContentResponse,
315
- BaseParameters
316
- >;
418
+ LroHeaders extends TypeSpec.Reflection.Model = ArmLroLocationHeader,
419
+ Parameters extends {} = {},
420
+ Response extends {} = ArmDeletedResponse | ArmDeleteAcceptedLroResponse<LroHeaders> | ArmDeletedNoContentResponse,
421
+ Error extends {} = ErrorResponse
422
+ > is ArmResourceDeleteAsyncBase<Resource, Response, BaseParameters, Parameters, Error>;
317
423
 
318
424
  /**
319
425
  * @dev Delete a resource asynchronously
320
426
  * @template Resource The resource being deleted
321
427
  * @template BaseParameters Optional. Allows overriding the parameters for the operation
322
428
  * @template LroHeaders Optional. Allows overriding the headers returned in the Accepted response
429
+ * @template Parameters Optional. Additional parameters after the path parameters
430
+ * @template Response Optional. The success response(s) for the delete operation
431
+ * @template Error Optional. The error response, if non-standard.
323
432
  */
324
433
  op ArmResourceDeleteWithoutOkAsync<
325
434
  Resource extends ArmResource,
326
435
  BaseParameters = DefaultBaseParameters<Resource>,
327
- LroHeaders extends TypeSpec.Reflection.Model = ArmLroLocationHeader
328
- > is ArmResourceDeleteAsyncBase<
329
- Resource,
330
- ArmDeleteAcceptedLroResponse<LroHeaders> | ArmDeletedNoContentResponse,
331
- BaseParameters
332
- >;
436
+ LroHeaders extends TypeSpec.Reflection.Model = ArmLroLocationHeader,
437
+ Parameters extends {} = {},
438
+ Response extends {} = ArmDeleteAcceptedLroResponse<LroHeaders> | ArmDeletedNoContentResponse,
439
+ Error extends {} = ErrorResponse
440
+ > is ArmResourceDeleteAsyncBase<Resource, Response, BaseParameters, Parameters, Error>;
333
441
 
334
442
  /**
335
443
  * Delete a resource synchronously
336
444
  * @template Resource The resource being deleted
337
445
  * @template BaseParameters Optional. Allows overriding the parameters for the operation
446
+ * @template Parameters Optional. Additional parameters after the path parameters
447
+ * @template Response Optional. The success response(s) for the delete operation
448
+ * @template Error Optional. The error response, if non-standard.
338
449
  */
339
450
  @autoRoute
340
451
  @doc("Delete a {name}", Resource)
@@ -342,10 +453,11 @@ op ArmResourceDeleteWithoutOkAsync<
342
453
  @delete
343
454
  op ArmResourceDeleteSync<
344
455
  Resource extends ArmResource,
345
- BaseParameters = DefaultBaseParameters<Resource>
346
- >(
347
- ...ResourceInstanceParameters<Resource, BaseParameters>,
348
- ): ArmDeletedResponse | ArmDeletedNoContentResponse | ErrorResponse;
456
+ BaseParameters = DefaultBaseParameters<Resource>,
457
+ Parameters extends {} = {},
458
+ Response extends {} = ArmDeletedResponse | ArmDeletedNoContentResponse,
459
+ Error = ErrorResponse
460
+ >(...ResourceInstanceParameters<Resource, BaseParameters>, ...Parameters): Response | Error;
349
461
 
350
462
  /**
351
463
  * A long-running resource action.
@@ -353,6 +465,8 @@ op ArmResourceDeleteSync<
353
465
  * @template Request The request model for the action
354
466
  * @template Response The response type for the action
355
467
  * @template BaseParameters Optional. Allows overriding the parameters for the operation
468
+ * @template Parameters Optional. Additional parameters after the path parameters
469
+ * @template Error Optional. The error response, if non-standard.
356
470
  */
357
471
  @autoRoute
358
472
  @extension("x-ms-long-running-operation", true)
@@ -368,14 +482,17 @@ op ArmResourceActionAsyncBase<
368
482
  Resource extends ArmResource,
369
483
  Request extends TypeSpec.Reflection.Model | void,
370
484
  Response extends TypeSpec.Reflection.Model | void,
371
- BaseParameters extends TypeSpec.Reflection.Model
485
+ BaseParameters extends TypeSpec.Reflection.Model,
486
+ Parameters extends {} = {},
487
+ Error extends {} = ErrorResponse
372
488
  >(
373
489
  ...ResourceInstanceParameters<Resource, BaseParameters>,
490
+ ...Parameters,
374
491
 
375
492
  @doc("The content of the action request")
376
493
  @body
377
494
  body: Request,
378
- ): Response | ErrorResponse;
495
+ ): Response | Error;
379
496
 
380
497
  /**
381
498
  * @dev A long-running resource action.
@@ -384,8 +501,10 @@ op ArmResourceActionAsyncBase<
384
501
  * @template Response The response model for the action
385
502
  * @template BaseParameters Optional. Allows overriding the parameters for the operation
386
503
  * @template LroHeaders Optional. Allows overriding the headers returned in the Accepted response
504
+ * @template Parameters Optional. Additional parameters after the path parameters
505
+ * @template Error Optional. The error response, if non-standard.
387
506
  */
388
- @returnsDoc("ARM operation completed successfully.")
507
+ @returnsDoc("Azure operation completed successfully.")
389
508
  op ArmResourceActionAsync<
390
509
  Resource extends ArmResource,
391
510
  Request extends TypeSpec.Reflection.Model | void,
@@ -395,12 +514,16 @@ op ArmResourceActionAsync<
395
514
  Azure.Core.StatusMonitorPollingOptions<ArmOperationStatus>,
396
515
  Response,
397
516
  string
398
- >
517
+ >,
518
+ Parameters extends {} = {},
519
+ Error extends {} = ErrorResponse
399
520
  > is ArmResourceActionAsyncBase<
400
521
  Resource,
401
522
  Request,
402
523
  ArmAcceptedLroResponse<"Resource operation accepted.", LroHeaders> | Response,
403
- BaseParameters
524
+ BaseParameters,
525
+ Parameters,
526
+ Error
404
527
  >;
405
528
 
406
529
  /**
@@ -409,23 +532,28 @@ op ArmResourceActionAsync<
409
532
  * @template Request The request model for the action
410
533
  * @template Response The response model for the action
411
534
  * @template BaseParameters Optional. Allows overriding the parameters for the operation
535
+ * @template Parameters Optional. Additional parameters after the path parameters
536
+ * @template Error Optional. The error response, if non-standard.
412
537
  */
413
538
  @autoRoute
414
539
  @armResourceAction(Resource)
415
540
  @post
416
- @returnsDoc("ARM operation completed successfully.")
541
+ @returnsDoc("Azure operation completed successfully.")
417
542
  op ArmResourceActionSync<
418
543
  Resource extends ArmResource,
419
544
  Request extends TypeSpec.Reflection.Model | void,
420
545
  Response extends TypeSpec.Reflection.Model | void,
421
- BaseParameters = DefaultBaseParameters<Resource>
546
+ BaseParameters = DefaultBaseParameters<Resource>,
547
+ Parameters extends {} = {},
548
+ Error extends {} = ErrorResponse
422
549
  >(
423
550
  ...ResourceInstanceParameters<Resource, BaseParameters>,
551
+ ...Parameters,
424
552
 
425
553
  @doc("The content of the action request")
426
554
  @body
427
555
  body: Request,
428
- ): Response | ErrorResponse;
556
+ ): Response | Error;
429
557
 
430
558
  /**
431
559
  * @dev A long-running resource action that returns no content. DEPRECATED: Use 'ArmResourceActionNoResponseContentAsync' instead
@@ -433,7 +561,8 @@ op ArmResourceActionSync<
433
561
  * @template Request The request model for the action
434
562
  * @template BaseParameters Optional. Allows overriding the parameters for the operation
435
563
  * @template LroHeaders Optional. Allows overriding the headers returned in the Accepted response
436
- *
564
+ * @template Parameters Optional. Additional parameters after the path parameters
565
+ * @template Error Optional. The error response, if non-standard.
437
566
  */
438
567
  op ArmResourceActionNoContentAsync<
439
568
  Resource extends ArmResource,
@@ -443,12 +572,16 @@ op ArmResourceActionNoContentAsync<
443
572
  Azure.Core.StatusMonitorPollingOptions<ArmOperationStatus>,
444
573
  void,
445
574
  string
446
- >
575
+ >,
576
+ Parameters extends {} = {},
577
+ Error extends {} = ErrorResponse
447
578
  > is ArmResourceActionAsyncBase<
448
579
  Resource,
449
580
  Request,
450
581
  ArmAcceptedLroResponse | ArmNoContentResponse<"Action completed successfully.">,
451
- BaseParameters
582
+ BaseParameters,
583
+ Parameters,
584
+ Error
452
585
  >;
453
586
 
454
587
  /**
@@ -457,6 +590,8 @@ op ArmResourceActionNoContentAsync<
457
590
  * @template Request The request model for the action
458
591
  * @template BaseParameters Optional. Allows overriding the parameters for the operation
459
592
  * @template Headers Optional. Allows overriding the headers returned in the Accepted response
593
+ * @template Parameters Optional. Additional parameters after the path parameters
594
+ * @template Error Optional. The error response, if non-standard.
460
595
  */
461
596
  op ArmResourceActionNoResponseContentAsync<
462
597
  Resource extends ArmResource,
@@ -466,12 +601,16 @@ op ArmResourceActionNoResponseContentAsync<
466
601
  Azure.Core.StatusMonitorPollingOptions<ArmOperationStatus>,
467
602
  void,
468
603
  string
469
- >
604
+ >,
605
+ Parameters extends {} = {},
606
+ Error extends {} = ErrorResponse
470
607
  > is ArmResourceActionAsyncBase<
471
608
  Resource,
472
609
  Request,
473
610
  ArmAcceptedLroResponse<"Resource operation accepted.", LroHeaders>,
474
- BaseParameters
611
+ BaseParameters,
612
+ Parameters,
613
+ Error
475
614
  >;
476
615
 
477
616
  /**
@@ -479,6 +618,8 @@ op ArmResourceActionNoResponseContentAsync<
479
618
  * @template Resource The resource being acted upon
480
619
  * @template Request The request model for the action
481
620
  * @template BaseParameters Optional. Allows overriding the parameters for the operation
621
+ * @template Parameters Optional. Additional parameters after the path parameters
622
+ * @template Error Optional. The error response, if non-standard.
482
623
  */
483
624
  @autoRoute
484
625
  @armResourceAction(Resource)
@@ -486,14 +627,17 @@ op ArmResourceActionNoResponseContentAsync<
486
627
  op ArmResourceActionNoContentSync<
487
628
  Resource extends ArmResource,
488
629
  Request extends TypeSpec.Reflection.Model | void,
489
- BaseParameters = DefaultBaseParameters<Resource>
630
+ BaseParameters = DefaultBaseParameters<Resource>,
631
+ Parameters extends {} = {},
632
+ Error extends {} = ErrorResponse
490
633
  >(
491
634
  ...ResourceInstanceParameters<Resource, BaseParameters>,
635
+ ...Parameters,
492
636
 
493
637
  @doc("The content of the action request")
494
638
  @body
495
639
  body: Request,
496
- ): ArmNoContentResponse<"Action completed successfully."> | ErrorResponse;
640
+ ): ArmNoContentResponse<"Action completed successfully."> | Error;
497
641
 
498
642
  /**
499
643
  * @dev Adds check global name availability operation, normally used if