@azure-tools/typespec-azure-resource-manager 0.39.0-dev.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.
package/README.md CHANGED
@@ -82,7 +82,7 @@ Available ruleSets:
82
82
  #### `@armCommonTypesVersion`
83
83
 
84
84
  This decorator is used either on a namespace or a version enum value to indicate
85
- the version of the ARM common-types to use for refs in emitted Swagger files.
85
+ the version of the Azure Resource Manager common-types to use for refs in emitted Swagger files.
86
86
 
87
87
  ```typespec
88
88
  @Azure.ResourceManager.armCommonTypesVersion(version: valueof string | EnumMember)
@@ -100,7 +100,7 @@ the version of the ARM common-types to use for refs in emitted Swagger files.
100
100
 
101
101
  #### `@armLibraryNamespace`
102
102
 
103
- `@armLibraryNamespace` designates a namespace as containign ARM Provider information.
103
+ `@armLibraryNamespace` designates a namespace as containign Azure Resource Manager Provider information.
104
104
 
105
105
  ```typespec
106
106
  @Azure.ResourceManager.armLibraryNamespace
@@ -123,7 +123,7 @@ namespace Microsoft.Contoso;
123
123
 
124
124
  #### `@armProviderNamespace`
125
125
 
126
- `@armProviderNamespace` sets the ARM provider name. It will default to use the
126
+ `@armProviderNamespace` sets the Azure Resource Manager provider name. It will default to use the
127
127
  Namespace element value unless an override value is specified.
128
128
 
129
129
  ```typespec
@@ -155,7 +155,7 @@ namespace Microsoft.ContosoService;
155
155
  #### `@armProviderNameValue`
156
156
 
157
157
  `@armResourceType` sets the value fo the decorated string
158
- property to the type of the ARM resource.
158
+ property to the type of the Azure Resource Manager resource.
159
159
 
160
160
  ```typespec
161
161
  @Azure.ResourceManager.armProviderNameValue
@@ -328,13 +328,13 @@ clients.
328
328
 
329
329
  #### `@extensionResource`
330
330
 
331
- `@extensionResource` marks an ARM resource model as an Extension resource.
331
+ `@extensionResource` marks an Azure Resource Manager resource model as an Extension resource.
332
332
  Extension resource extends other resource types. URL path is appended
333
333
  to another segment {scope} which refers to another Resource URL.
334
334
 
335
335
  `{resourceUri}/providers/Microsoft.Contoso/accessPermissions`
336
336
 
337
- See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
337
+ See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
338
338
 
339
339
  ```typespec
340
340
  @Azure.ResourceManager.extensionResource
@@ -350,12 +350,12 @@ None
350
350
 
351
351
  #### `@locationResource`
352
352
 
353
- `@locationResource` marks an ARM resource model as a location based resource.
353
+ `@locationResource` marks an Azure Resource Manager resource model as a location based resource.
354
354
 
355
355
  Location based resources have REST API paths like
356
356
  `/subscriptions/{subscriptionId}/locations/{location}/providers/Microsoft.Contoso/employees`
357
357
 
358
- See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
358
+ See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
359
359
 
360
360
  ```typespec
361
361
  @Azure.ResourceManager.locationResource
@@ -371,13 +371,13 @@ None
371
371
 
372
372
  #### `@resourceGroupResource`
373
373
 
374
- `@resourceGroupResource` marks an ARM resource model as a resource group level resource.
375
- This is the default option for ARM resources. It is provided for symmetry and clarity, and
374
+ `@resourceGroupResource` marks an Azure Resource Manager resource model as a resource group level resource.
375
+ This is the default option for Azure Resource Manager resources. It is provided for symmetry and clarity, and
376
376
  you typically do not need to specify it.
377
377
 
378
378
  `/subscription/{id}/resourcegroups/{rg}/providers/Microsoft.Contoso/employees`
379
379
 
380
- See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
380
+ See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
381
381
 
382
382
  ```typespec
383
383
  @Azure.ResourceManager.resourceGroupResource
@@ -393,12 +393,12 @@ None
393
393
 
394
394
  #### `@singleton`
395
395
 
396
- `@singleton` marks an ARM resource model as a singleton resource.
396
+ `@singleton` marks an Azure Resource Manager resource model as a singleton resource.
397
397
 
398
398
  Singleton resources only have a single instance with a fixed key name.
399
399
  `.../providers/Microsoft.Contoso/monthlyReports/default`
400
400
 
401
- See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
401
+ See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
402
402
 
403
403
  ```typespec
404
404
  @Azure.ResourceManager.singleton(keyValue?: valueof string | default)
@@ -416,12 +416,12 @@ See more details on [different ARM resource type here.](https://azure.github.io/
416
416
 
417
417
  #### `@subscriptionResource`
418
418
 
419
- `@subscriptionResource` marks an ARM resource model as a subscription resource.
419
+ `@subscriptionResource` marks an Azure Resource Manager resource model as a subscription resource.
420
420
 
421
421
  Subscription resources have REST API paths like:
422
422
  `/subscription/{id}/providers/Microsoft.Contoso/employees`
423
423
 
424
- See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
424
+ See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
425
425
 
426
426
  ```typespec
427
427
  @Azure.ResourceManager.subscriptionResource
@@ -437,12 +437,12 @@ None
437
437
 
438
438
  #### `@tenantResource`
439
439
 
440
- `@tenantResource` marks an ARM resource model as a Tenant resource/Root resource/Top-Level resource.
440
+ `@tenantResource` marks an Azure Resource Manager resource model as a Tenant resource/Root resource/Top-Level resource.
441
441
 
442
442
  Tenant resources have REST API paths like:
443
443
  `/provider/Microsoft.Contoso/FooResources`
444
444
 
445
- See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
445
+ See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
446
446
 
447
447
  ```typespec
448
448
  @Azure.ResourceManager.tenantResource
@@ -458,8 +458,8 @@ None
458
458
 
459
459
  #### `@useLibraryNamespace`
460
460
 
461
- Declare the ARM library namespaces used in this provider.
462
- This allows sharing ARM resource types across specifications
461
+ Declare the Azure Resource Manager library namespaces used in this provider.
462
+ This allows sharing Azure Resource Manager resource types across specifications
463
463
 
464
464
  ```typespec
465
465
  @Azure.ResourceManager.useLibraryNamespace(...namespaces: Namespace[])
@@ -471,6 +471,6 @@ This allows sharing ARM resource types across specifications
471
471
 
472
472
  ##### Parameters
473
473
 
474
- | Name | Type | Description |
475
- | ---------- | ------------------- | ----------------------------------------------------- |
476
- | namespaces | `model Namespace[]` | The namespaces of arm libraries used in this provider |
474
+ | Name | Type | Description |
475
+ | ---------- | ------------------- | ------------------------------------------------------------------------ |
476
+ | namespaces | `model Namespace[]` | The namespaces of Azure Resource Manager libraries used in this provider |
@@ -17,9 +17,9 @@ A list of REST API operations supported by an Azure Resource Provider. It contai
17
17
  model OperationListResult is Azure.Core.Page<Operation>;
18
18
 
19
19
  /**
20
- * Base model that defines common properties for all ARM resources.
20
+ * Base model that defines common properties for all Azure Resource Manager resources.
21
21
  */
22
- @doc("Common properties for all ARM resources.")
22
+ @doc("Common properties for all Azure Resource Manager resources.")
23
23
  model ArmResource extends ArmResourceBase {
24
24
  @doc("Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}")
25
25
  @visibility("read")
@@ -295,11 +295,11 @@ model ErrorAdditionalInfo {
295
295
  }
296
296
 
297
297
  /**
298
- * Standard type definition for ARM Tags property.
298
+ * Standard type definition for Azure Resource Manager Tags property.
299
299
  *
300
300
  * It is included in the TrackedResource template definition.
301
301
  */
302
- @doc("The ARM Resource tags.")
302
+ @doc("The Azure Resource Manager Resource tags.")
303
303
  model ArmTagsProperty {
304
304
  @doc("Resource tags.")
305
305
  tags?: Record<string>;
@@ -636,7 +636,7 @@ model Operation {
636
636
  name?: string;
637
637
 
638
638
  @doc("""
639
- Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for ARM/control-plane operations.
639
+ Whether the operation applies to data-plane. This is "true" for data-plane operations and "false" for Azure Resource Manager/control-plane operations.
640
640
  """)
641
641
  @visibility("read")
642
642
  isDataAction?: boolean;
@@ -751,3 +751,47 @@ op checkNameAvailability<
751
751
  @body
752
752
  body: Request,
753
753
  ): Response | ErrorResponse;
754
+
755
+ /**
756
+ * @dev The base template for Azure Resource Manager Operations.
757
+ * @param Parameters The parameter object for the operation.
758
+ * @param Response The response or union of responses for success.
759
+ * @param ErrorResponse The error response.
760
+ */
761
+ op ArmReadOperation<Parameters extends {}, Response extends {}, ErrorResponse extends {}>(
762
+ ...Parameters,
763
+ ): Response | ErrorResponse;
764
+
765
+ /**
766
+ * @dev The base temlate for Azure Resource Manager PUT Operations.
767
+ * @param HttpParameters The parameter object for the operation.
768
+ * @param BodyParameter The body parameter
769
+ * @param Response The response or union of responses for success.
770
+ * @param ErrorResponse The error response.
771
+ */
772
+ op ArmCreateOperation<
773
+ HttpParameters extends {},
774
+ BodyParameter extends {},
775
+ Response extends {},
776
+ ErrorResponse extends {}
777
+ >(
778
+ ...HttpParameters,
779
+ @doc("Resource create parameters.") @body resource: BodyParameter,
780
+ ): Response | ErrorResponse;
781
+
782
+ /**
783
+ * @dev The base temlate for Azure Resource Manager PATCH Operations.
784
+ * @param HttpParameters The parameter object for the operation.
785
+ * @param BodyParameter The body parameter
786
+ * @param Response The response or union of responses for success.
787
+ * @param ErrorResponse The error response.
788
+ */
789
+ op ArmUpdateOperation<
790
+ HttpParameters extends {},
791
+ BodyParameter extends {},
792
+ Response extends {},
793
+ ErrorResponse extends {}
794
+ >(
795
+ ...HttpParameters,
796
+ @doc("The resource properties to be updated.") @body properties: BodyParameter,
797
+ ): Response | ErrorResponse;
@@ -5,14 +5,14 @@ using TypeSpec.Versioning;
5
5
  namespace Azure.ResourceManager.CommonTypes;
6
6
 
7
7
  @Private.armCommonTypesVersions
8
- @doc("The ARM common-types versions.")
8
+ @doc("The Azure Resource Manager common-types versions.")
9
9
  enum Versions {
10
- @doc("The ARM v3 common types.")
10
+ @doc("The Azure Resource Manager v3 common types.")
11
11
  v3,
12
12
 
13
- @doc("The ARM v4 common types.")
13
+ @doc("The Azure Resource Manager v4 common types.")
14
14
  v4,
15
15
 
16
- @doc("The ARM v5 common types.")
16
+ @doc("The Azure Resource Manager v5 common types.")
17
17
  v5,
18
18
  }
@@ -3,7 +3,7 @@ using TypeSpec.Reflection;
3
3
  namespace Azure.ResourceManager;
4
4
 
5
5
  /**
6
- * `@armProviderNamespace` sets the ARM provider name. It will default to use the
6
+ * `@armProviderNamespace` sets the Azure Resource Manager provider name. It will default to use the
7
7
  * Namespace element value unless an override value is specified.
8
8
  *
9
9
  * @example
@@ -25,14 +25,14 @@ namespace Azure.ResourceManager;
25
25
  extern dec armProviderNamespace(target: Namespace, providerNamespace?: valueof string);
26
26
 
27
27
  /**
28
- * Declare the ARM library namespaces used in this provider.
29
- * This allows sharing ARM resource types across specifications
30
- * @param namespaces The namespaces of arm libraries used in this provider
28
+ * Declare the Azure Resource Manager library namespaces used in this provider.
29
+ * This allows sharing Azure Resource Manager resource types across specifications
30
+ * @param namespaces The namespaces of Azure Resource Manager libraries used in this provider
31
31
  */
32
32
  extern dec useLibraryNamespace(target: Namespace, ...namespaces: Namespace[]);
33
33
 
34
34
  /**
35
- * `@armLibraryNamespace` designates a namespace as containign ARM Provider information.
35
+ * `@armLibraryNamespace` designates a namespace as containign Azure Resource Manager Provider information.
36
36
  *
37
37
  * @example
38
38
  *
@@ -45,72 +45,72 @@ extern dec useLibraryNamespace(target: Namespace, ...namespaces: Namespace[]);
45
45
  extern dec armLibraryNamespace(target: Namespace);
46
46
 
47
47
  /**
48
- * `@singleton` marks an ARM resource model as a singleton resource.
48
+ * `@singleton` marks an Azure Resource Manager resource model as a singleton resource.
49
49
  *
50
50
  * Singleton resources only have a single instance with a fixed key name.
51
51
  * `.../providers/Microsoft.Contoso/monthlyReports/default`
52
52
  *
53
- * See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
53
+ * See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
54
54
  *
55
55
  * @param keyValue The name of the singleton resource. Default name is "default".
56
56
  */
57
57
  extern dec singleton(target: Model, keyValue?: valueof string | "default");
58
58
 
59
59
  /**
60
- * `@tenantResource` marks an ARM resource model as a Tenant resource/Root resource/Top-Level resource.
60
+ * `@tenantResource` marks an Azure Resource Manager resource model as a Tenant resource/Root resource/Top-Level resource.
61
61
  *
62
62
  * Tenant resources have REST API paths like:
63
63
  * `/provider/Microsoft.Contoso/FooResources`
64
64
  *
65
- * See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
65
+ * See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
66
66
  */
67
67
  extern dec tenantResource(target: Model);
68
68
 
69
69
  /**
70
- * `@subscriptionResource` marks an ARM resource model as a subscription resource.
70
+ * `@subscriptionResource` marks an Azure Resource Manager resource model as a subscription resource.
71
71
  *
72
72
  * Subscription resources have REST API paths like:
73
73
  * `/subscription/{id}/providers/Microsoft.Contoso/employees`
74
74
  *
75
- * See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
75
+ * See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
76
76
  */
77
77
  extern dec subscriptionResource(target: Model);
78
78
 
79
79
  /**
80
- * `@locationResource` marks an ARM resource model as a location based resource.
80
+ * `@locationResource` marks an Azure Resource Manager resource model as a location based resource.
81
81
  *
82
82
  * Location based resources have REST API paths like
83
83
  * `/subscriptions/{subscriptionId}/locations/{location}/providers/Microsoft.Contoso/employees`
84
84
  *
85
- * See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
85
+ * See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
86
86
  */
87
87
  extern dec locationResource(target: Model);
88
88
 
89
89
  /**
90
- * `@resourceGroupResource` marks an ARM resource model as a resource group level resource.
91
- * This is the default option for ARM resources. It is provided for symmetry and clarity, and
90
+ * `@resourceGroupResource` marks an Azure Resource Manager resource model as a resource group level resource.
91
+ * This is the default option for Azure Resource Manager resources. It is provided for symmetry and clarity, and
92
92
  * you typically do not need to specify it.
93
93
  *
94
94
  * `/subscription/{id}/resourcegroups/{rg}/providers/Microsoft.Contoso/employees`
95
95
  *
96
- * See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
96
+ * See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
97
97
  */
98
98
  extern dec resourceGroupResource(target: Model);
99
99
 
100
100
  /**
101
- * `@extensionResource` marks an ARM resource model as an Extension resource.
101
+ * `@extensionResource` marks an Azure Resource Manager resource model as an Extension resource.
102
102
  * Extension resource extends other resource types. URL path is appended
103
103
  * to another segment {scope} which refers to another Resource URL.
104
104
  *
105
105
  * `{resourceUri}/providers/Microsoft.Contoso/accessPermissions`
106
106
  *
107
- * See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
107
+ * See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
108
108
  */
109
109
  extern dec extensionResource(target: Model);
110
110
 
111
111
  /**
112
112
  * `@armResourceType` sets the value fo the decorated string
113
- * property to the type of the ARM resource.
113
+ * property to the type of the Azure Resource Manager resource.
114
114
  * @param resource The resource to get the type of
115
115
  */
116
116
  extern dec armProviderNameValue(target: Operation | Model);
@@ -178,7 +178,7 @@ extern dec armResourceOperations(target: Interface, _?: unknown);
178
178
 
179
179
  /**
180
180
  * This decorator is used either on a namespace or a version enum value to indicate
181
- * the version of the ARM common-types to use for refs in emitted Swagger files.
181
+ * the version of the Azure Resource Manager common-types to use for refs in emitted Swagger files.
182
182
  *
183
183
  * @param version The Azure.ResourceManager.CommonTypes.Versions for the desired common-types version or an equivalent string value.
184
184
  */
@@ -8,9 +8,9 @@ using Azure.ResourceManager.Private;
8
8
  namespace Azure.ResourceManager;
9
9
 
10
10
  /**
11
- * This is the interface that implements the standard ARM operation that returns
11
+ * This is the interface that implements the standard Azure Resource Manager operation that returns
12
12
  * all supported RP operations. You should have exactly one declaration for each
13
- * ARM service. It implements
13
+ * Azure Resource Manager service. It implements
14
14
  * GET "/providers/Microsoft.ContosoProviderHub/operations"
15
15
  */
16
16
  interface Operations {
@@ -201,7 +201,7 @@ interface ResourceCreateSync<
201
201
  * @template Resource The ArmResource to create or update.
202
202
  * @template BaseParameters The http parameters that are part of the request
203
203
  */
204
- createOrUpdate is ArmResourceCreateOrUpdateSync<Resource, BaseParameters>;
204
+ createOrUpdate is ArmResourceCreateOrReplaceSync<Resource, BaseParameters>;
205
205
  }
206
206
 
207
207
  /**
package/lib/models.tsp CHANGED
@@ -10,7 +10,7 @@ namespace Azure.ResourceManager;
10
10
  /**
11
11
  * Concrete tracked resource types can be created by aliasing this type using a specific property type.
12
12
  *
13
- * See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
13
+ * See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
14
14
  * @template Properties A model containing the provider-specific properties for this resource
15
15
  */
16
16
  @doc("Concrete tracked resource types can be created by aliasing this type using a specific property type.")
@@ -26,7 +26,7 @@ model TrackedResource<Properties extends {}> extends TrackedResourceBase {
26
26
  /**
27
27
  * Concrete proxy resource types can be created by aliasing this type using a specific property type.
28
28
  *
29
- * See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
29
+ * See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
30
30
  * @template Properties A model containing the provider-specific properties for this resource
31
31
  */
32
32
  @doc("Concrete proxy resource types can be created by aliasing this type using a specific property type.")
@@ -42,7 +42,7 @@ model ProxyResource<Properties extends {}> extends ProxyResourceBase {
42
42
  /**
43
43
  * Concrete extension resource types can be created by aliasing this type using a specific property type.
44
44
  *
45
- * See more details on [different ARM resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
45
+ * See more details on [different Azure Resource Manager resource type here.](https://azure.github.io/typespec-azure/docs/howtos/ARM/resource-type)
46
46
  * @template Properties A model containing the provider-specific properties for this resource
47
47
  */
48
48
  @extensionResource
@@ -86,10 +86,10 @@ model ProviderNamespace<Resource extends {}> {
86
86
  }
87
87
  //#endregion
88
88
 
89
- //#region Common ARM type definitions
89
+ //#region Common Azure Resource Manager type definitions
90
90
 
91
91
  /**
92
- * A type definition that refers the id to an ARM resource.
92
+ * A type definition that refers the id to an Azure Resource Manager resource.
93
93
  *
94
94
  * Sample usage:
95
95
  * otherArmId: ResourceIdentifier;
@@ -97,7 +97,7 @@ model ProviderNamespace<Resource extends {}> {
97
97
  * vmIds: ResourceIdentifier<[{type:"\\Microsoft.Compute\\vm", scopes["*"]}]>
98
98
  * @template AllowedResourceTypes An array of allowed resource types for the resource reference
99
99
  */
100
- @doc("A type definition that refers the id to an ARM resource.")
100
+ @doc("A type definition that refers the id to an Azure Resource Manager resource.")
101
101
  @format("arm-id")
102
102
  @OpenAPI.extension(
103
103
  "x-ms-arm-id-details",
@@ -109,10 +109,10 @@ scalar ResourceIdentifier<AllowedResourceTypes extends ResourceIdentifierAllowed
109
109
  extends string;
110
110
 
111
111
  /**
112
- * Used in ResourceIdentifier definition to represent a particular type of ARM resource, enabling constraints based on resource type.
112
+ * Used in ResourceIdentifier definition to represent a particular type of Azure Resource Manager resource, enabling constraints based on resource type.
113
113
  * See [link](https://github.com/Azure/autorest/tree/main/docs/extensions#schema)
114
114
  */
115
- @doc("Optional definition represents a particular type of ARM resource which can be referred to by a ResourceIdentifier.")
115
+ @doc("Optional definition represents a particular type of Azure Resource Manager resource which can be referred to by a ResourceIdentifier.")
116
116
  model ResourceIdentifierAllowedResource {
117
117
  @doc("The type of resource that is being referred to. For example Microsoft.Network/virtualNetworks or Microsoft.Network/virtualNetworks/subnets. See Example Types for more examples.")
118
118
  type: string;
@@ -173,7 +173,7 @@ model DefaultProvisioningStateProperty {
173
173
  }
174
174
 
175
175
  /**
176
- * Standard ARM definition of ManagedServiceIdentity
176
+ * Standard Azure Resource Manager definition of ManagedServiceIdentity
177
177
  */
178
178
  @doc("The managed service identities envelope.")
179
179
  model ManagedServiceIdentity {
@@ -182,7 +182,7 @@ model ManagedServiceIdentity {
182
182
  }
183
183
 
184
184
  /**
185
- * Standard ARM definition of ManagedServiceIdentity for services
185
+ * Standard Azure Resource Manager definition of ManagedServiceIdentity for services
186
186
  * that only support system-defined identities
187
187
  */
188
188
  @doc("Managed identity for services that are constrained to system-assigned managed identities.")
@@ -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
@@ -5,7 +5,7 @@ namespace Azure.ResourceManager.Private;
5
5
  using TypeSpec.Reflection;
6
6
 
7
7
  /**
8
- * Update the ARM provider namespace for a given entity.
8
+ * Update the Azure Resource Manager provider namespace for a given entity.
9
9
  */
10
10
  extern dec armUpdateProviderNamespace(target: Reflection.Operation);
11
11
 
@@ -25,7 +25,7 @@ alias ArmCommonTypeVersionSpec = {
25
25
 
26
26
  /**
27
27
  * @param definitionName Definition name
28
- * @param version Arm Version
28
+ * @param version Azure Resource Manager Version
29
29
  * @param referenceFile Reference file
30
30
  */
31
31
  extern dec armCommonDefinition(
@@ -37,7 +37,7 @@ extern dec armCommonDefinition(
37
37
 
38
38
  /**
39
39
  * @param definitionName Definition name
40
- * @param version Arm Version
40
+ * @param version Azure Resource Manager Version
41
41
  * @param referenceFile Reference file
42
42
  */
43
43
  extern dec armCommonParameter(
@@ -48,7 +48,7 @@ extern dec armCommonParameter(
48
48
  );
49
49
 
50
50
  /**
51
- * This decorator is used to identify ARM resource types and extract their
51
+ * This decorator is used to identify Azure Resource Manager resource types and extract their
52
52
  * metadata. It is *not* meant to be used directly by a spec author, it instead
53
53
  * gets implicitly applied when the spec author defines a model type in this form:
54
54
  *
@@ -58,7 +58,7 @@ extern dec armCommonParameter(
58
58
  * `@armResource` decorator, so it also gets applied to the type which absorbs the
59
59
  * `TrackedResource<Resource>` definition by using the `is` keyword.
60
60
  *
61
- * @param properties Arm resource properties
61
+ * @param properties Azure Resource Manager resource properties
62
62
  */
63
63
  extern dec armResourceInternal(target: Model, properties: Model);
64
64
 
package/lib/responses.tsp CHANGED
@@ -7,20 +7,20 @@ using Azure.ResourceManager.Private;
7
7
  namespace Azure.ResourceManager;
8
8
 
9
9
  /**
10
- * The ARM synchronous OK response
10
+ * The Azure Resource Manager synchronous OK response
11
11
  * @template ResponseBody The contents of the response body
12
12
  */
13
- @doc("ARM operation completed successfully.")
13
+ @doc("Azure operation completed successfully.")
14
14
  model ArmResponse<ResponseBody> {
15
15
  ...OkResponse;
16
16
  ...Body<ResponseBody>;
17
17
  }
18
18
 
19
19
  /**
20
- * The ARM 201 response for a resource
20
+ * The Azure Resource Manager 201 response for a resource
21
21
  * @template ResponseBody The contents of the response body
22
22
  */
23
- @doc("ARM create operation completed successfully.")
23
+ @doc("Azure create operation completed successfully.")
24
24
  model ArmCreatedResponse<ResponseBody> {
25
25
  ...CreatedResponse;
26
26
  ...Azure.Core.Foundations.RetryAfterHeader;
@@ -36,14 +36,14 @@ model ArmDeletedResponse {
36
36
  }
37
37
 
38
38
  /**
39
- * @dev The response for asynchronous ARM delete ACCEPTED
39
+ * @dev The response for asynchronous Azure Resource Manager delete ACCEPTED
40
40
  * @template LroHeaders Optional. Allows overriding the Lro headers returned in the response.
41
41
  */
42
42
  model ArmDeleteAcceptedLroResponse<LroHeaders extends TypeSpec.Reflection.Model = ArmLroLocationHeader>
43
43
  is ArmAcceptedLroResponse<"Resource deletion accepted.", LroHeaders>;
44
44
 
45
45
  /**
46
- * @dev The response for synchronous ARM delete ACCEPTED
46
+ * @dev The response for synchronous Azure Resource Manager delete ACCEPTED
47
47
  */
48
48
  model ArmDeleteAcceptedResponse is ArmAcceptedResponse<"Resource deletion accepted.">;
49
49
 
@@ -58,7 +58,7 @@ model ArmAcceptedResponse<Message extends valueof string = "Resource operation a
58
58
  }
59
59
 
60
60
  /**
61
- * @dev The standard ARM response for asynchronous PATCH, POST, and DELETE operations
61
+ * @dev The standard Azure Resource Manager response for asynchronous PATCH, POST, and DELETE operations
62
62
  * @template Description The description of the response status (defaults to `Resource operation accepted`)
63
63
  * @template LroHeaders Optional. The lro headers that appear in the Accepted response
64
64
  */
@@ -73,7 +73,7 @@ model ArmAcceptedLroResponse<
73
73
  }
74
74
 
75
75
  /**
76
- * Standard ARM operation status response
76
+ * Standard Azure Resource Manager operation status response
77
77
  * @template Properties Optional resource-specific properties
78
78
  * @template StatusValues The set of allowed values for operation status
79
79
  */
@@ -174,12 +174,12 @@ model ArmCombinedLroHeaders<
174
174
  }
175
175
 
176
176
  /**
177
- * @dev ARM response for a properly formed delete request, with no resource found
177
+ * @dev Azure Resource Manager response for a properly formed delete request, with no resource found
178
178
  */
179
- model ArmDeletedNoContentResponse is ArmNoContentResponse<"Resource deleted successfully.">;
179
+ model ArmDeletedNoContentResponse is ArmNoContentResponse<"Resource does not exist.">;
180
180
 
181
181
  /**
182
- * Standard ARM NoContent (204) response
182
+ * Standard Azure Resource Manager NoContent (204) response
183
183
  * @template Message The description of the response status (defaults to `Operation completed successfully`)
184
184
  */
185
185
  @doc(Message)
@@ -226,7 +226,7 @@ model ArmResourceCreatedSyncResponse<Resource extends Azure.ResourceManager.Foun
226
226
  }
227
227
 
228
228
  /**
229
- * The standard ARM error response
229
+ * The standard Azure Resource Manager error response
230
230
  */
231
231
  @error
232
232
  @armCommonDefinition("ErrorResponse", Azure.ResourceManager.CommonTypes.Versions.v3)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-azure-resource-manager",
3
- "version": "0.39.0-dev.0",
3
+ "version": "0.39.0-dev.1",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec Azure Resource Manager library",
6
6
  "homepage": "https://azure.github.io/typespec-azure",
@@ -41,7 +41,7 @@
41
41
  "peerDependencies": {
42
42
  "@typespec/compiler": "~0.52.0 || >=0.53.0-dev <0.53.0",
43
43
  "@azure-tools/typespec-azure-core": "~0.38.0 || >=0.39.0-dev <0.39.0",
44
- "@azure-tools/typespec-autorest": "~0.38.0 || >=0.39.0-dev <0.39.0",
44
+ "@azure-tools/typespec-autorest": "~0.38.1 || >=0.39.0-dev <0.39.0",
45
45
  "@typespec/openapi": "~0.52.0 || >=0.53.0-dev <0.53.0",
46
46
  "@typespec/rest": "~0.52.0 || >=0.53.0-dev <0.53.0",
47
47
  "@typespec/http": "~0.52.0 || >=0.53.0-dev <0.53.0",
@@ -51,7 +51,7 @@
51
51
  "@typespec/compiler": "~0.52.0 || >=0.53.0-dev <0.53.0",
52
52
  "@typespec/openapi": "~0.52.0 || >=0.53.0-dev <0.53.0",
53
53
  "@azure-tools/typespec-azure-core": "~0.38.0 || >=0.39.0-dev <0.39.0",
54
- "@azure-tools/typespec-autorest": "~0.38.0 || >=0.39.0-dev <0.39.0",
54
+ "@azure-tools/typespec-autorest": "~0.38.1 || >=0.39.0-dev <0.39.0",
55
55
  "@typespec/rest": "~0.52.0 || >=0.53.0-dev <0.53.0",
56
56
  "@typespec/http": "~0.52.0 || >=0.53.0-dev <0.53.0",
57
57
  "@typespec/versioning": "~0.52.0 || >=0.53.0-dev <0.53.0",