@azure-tools/typespec-azure-resource-manager 0.57.2 → 0.58.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 +12 -45
- package/dist/generated-defs/Azure.ResourceManager.Legacy.d.ts +1 -14
- package/dist/generated-defs/Azure.ResourceManager.Legacy.d.ts.map +1 -1
- package/dist/generated-defs/Azure.ResourceManager.Private.d.ts +0 -8
- package/dist/generated-defs/Azure.ResourceManager.Private.d.ts.map +1 -1
- package/dist/generated-defs/Azure.ResourceManager.d.ts +6 -20
- package/dist/generated-defs/Azure.ResourceManager.d.ts.map +1 -1
- package/dist/src/lib.d.ts +2 -17
- package/dist/src/lib.d.ts.map +1 -1
- package/dist/src/lib.js +0 -6
- package/dist/src/lib.js.map +1 -1
- package/dist/src/linter.d.ts.map +1 -1
- package/dist/src/linter.js +0 -2
- package/dist/src/linter.js.map +1 -1
- package/dist/src/namespace.d.ts.map +1 -1
- package/dist/src/namespace.js +7 -14
- package/dist/src/namespace.js.map +1 -1
- package/dist/src/operations.d.ts +0 -3
- package/dist/src/operations.d.ts.map +1 -1
- package/dist/src/operations.js +2 -37
- package/dist/src/operations.js.map +1 -1
- package/dist/src/private.decorators.d.ts.map +1 -1
- package/dist/src/private.decorators.js +7 -61
- package/dist/src/private.decorators.js.map +1 -1
- package/dist/src/resource.d.ts +1 -16
- package/dist/src/resource.d.ts.map +1 -1
- package/dist/src/resource.js +14 -68
- package/dist/src/resource.js.map +1 -1
- package/dist/src/rules/arm-resource-interfaces.d.ts.map +1 -1
- package/dist/src/rules/arm-resource-interfaces.js +1 -2
- package/dist/src/rules/arm-resource-interfaces.js.map +1 -1
- package/dist/src/rules/list-operation.js +1 -1
- package/dist/src/rules/list-operation.js.map +1 -1
- package/dist/src/state.d.ts +0 -2
- package/dist/src/state.d.ts.map +1 -1
- package/dist/src/state.js +0 -2
- package/dist/src/state.js.map +1 -1
- package/dist/src/tsp-index.d.ts.map +1 -1
- package/dist/src/tsp-index.js +1 -2
- package/dist/src/tsp-index.js.map +1 -1
- package/lib/Legacy/arm.legacy.tsp +0 -4
- package/lib/Legacy/decorator.tsp +0 -18
- package/lib/Legacy/operations.tsp +32 -130
- package/lib/arm.tsp +0 -1
- package/lib/common-types/internal.tsp +0 -9
- package/lib/common-types/private-links.tsp +4 -0
- package/lib/common-types/types-ref.tsp +3 -12
- package/lib/decorators.tsp +6 -38
- package/lib/private.decorators.tsp +0 -5
- package/package.json +13 -13
- package/dist/generated-defs/Azure.ResourceManager.Extension.Private.d.ts +0 -25
- package/dist/generated-defs/Azure.ResourceManager.Extension.Private.d.ts.map +0 -1
- package/dist/generated-defs/Azure.ResourceManager.Extension.Private.js +0 -2
- package/dist/generated-defs/Azure.ResourceManager.Extension.Private.js.map +0 -1
- package/dist/src/rules/arm-custom-resource-no-key.d.ts +0 -4
- package/dist/src/rules/arm-custom-resource-no-key.d.ts.map +0 -1
- package/dist/src/rules/arm-custom-resource-no-key.js +0 -28
- package/dist/src/rules/arm-custom-resource-no-key.js.map +0 -1
- package/lib/Legacy/extension.tsp +0 -343
- package/lib/Legacy/interfaces.tsp +0 -38
- package/lib/extension/extension.tsp +0 -6
- package/lib/extension/operations.tsp +0 -507
- package/lib/extension/parameters.tsp +0 -223
- package/lib/extension/private.decorators.tsp +0 -24
|
@@ -15,26 +15,11 @@ using Rest;
|
|
|
15
15
|
* @template ResourceTypeParameter The path parameter for the resource name
|
|
16
16
|
* @template ErrorType Optional. The type of error models used in operations created form this template
|
|
17
17
|
*/
|
|
18
|
+
@doc("")
|
|
18
19
|
interface LegacyOperations<
|
|
19
20
|
ParentParameters extends {},
|
|
20
21
|
ResourceTypeParameter extends {},
|
|
21
22
|
ErrorType extends {} = ErrorResponse
|
|
22
|
-
> extends RoutedOperations<ParentParameters, ResourceTypeParameter, ErrorType> {}
|
|
23
|
-
|
|
24
|
-
/**
|
|
25
|
-
* An operation template used to build resource operations in which the same resource type
|
|
26
|
-
* is accessible at multiple, fixed resource paths. Can be used with static routes.
|
|
27
|
-
* @template ParentParameters The path parameters for the resource parent
|
|
28
|
-
* @template ResourceTypeParameter The path parameter for the resource name
|
|
29
|
-
* @template ErrorType Optional. The type of error models used in operations created form this template
|
|
30
|
-
* @template ResourceRoute Optional. The resource route to use for operations in the interface.
|
|
31
|
-
*/
|
|
32
|
-
@doc("")
|
|
33
|
-
interface RoutedOperations<
|
|
34
|
-
ParentParameters extends {},
|
|
35
|
-
ResourceTypeParameter extends {},
|
|
36
|
-
ErrorType extends {} = ErrorResponse,
|
|
37
|
-
ResourceRoute extends valueof ArmOperationOptions = #{ useStaticRoute: false }
|
|
38
23
|
> {
|
|
39
24
|
/**
|
|
40
25
|
* A long-running resource CreateOrUpdate (PUT)
|
|
@@ -43,13 +28,10 @@ interface RoutedOperations<
|
|
|
43
28
|
* @template Parameters Optional. Additional parameters after the path parameters
|
|
44
29
|
* @template Response Optional. The success response(s) for the PUT operation
|
|
45
30
|
* @template OptionalRequestBody Optional. Indicates whether the request body is optional
|
|
46
|
-
* @template OverrideErrortype Optional. The error response, if non-standard.
|
|
47
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
48
31
|
*/
|
|
32
|
+
@autoRoute
|
|
49
33
|
@doc("Create a {name}", Resource)
|
|
50
|
-
@armOperationRoute(OverrideRouteOptions)
|
|
51
34
|
@armResourceCreateOrUpdate(Resource)
|
|
52
|
-
@Private.armUpdateProviderNamespace
|
|
53
35
|
@Azure.Core.Foundations.Private.defaultFinalStateVia(#["location", "azure-async-operation"])
|
|
54
36
|
@put
|
|
55
37
|
CreateOrUpdateAsync<
|
|
@@ -61,15 +43,13 @@ interface RoutedOperations<
|
|
|
61
43
|
Resource,
|
|
62
44
|
LroHeaders
|
|
63
45
|
>,
|
|
64
|
-
OptionalRequestBody extends valueof boolean = false
|
|
65
|
-
OverrideErrortype extends {} = ErrorType,
|
|
66
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
46
|
+
OptionalRequestBody extends valueof boolean = false
|
|
67
47
|
>(
|
|
68
48
|
...ParentParameters,
|
|
69
49
|
...ResourceTypeParameter,
|
|
70
50
|
...Parameters,
|
|
71
51
|
@doc("Resource create parameters.") @armBodyRoot(OptionalRequestBody) resource: Resource,
|
|
72
|
-
): Response |
|
|
52
|
+
): Response | ErrorType;
|
|
73
53
|
|
|
74
54
|
/**
|
|
75
55
|
* A synchronous resource CreateOrUpdate (PUT)
|
|
@@ -77,28 +57,23 @@ interface RoutedOperations<
|
|
|
77
57
|
* @template Parameters Optional. Additional parameters after the path parameters
|
|
78
58
|
* @template Response Optional. The success response(s) for the PUT operation
|
|
79
59
|
* @template OptionalRequestBody Optional. Indicates whether the request body is optional
|
|
80
|
-
* @template OverrideErrortype Optional. The error response, if non-standard.
|
|
81
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
82
60
|
*/
|
|
83
61
|
#suppress "@azure-tools/typespec-azure-core/no-private-usage"
|
|
84
|
-
@
|
|
62
|
+
@autoRoute
|
|
85
63
|
@doc("Create a {name}", Resource)
|
|
86
64
|
@armResourceCreateOrUpdate(Resource)
|
|
87
|
-
@Private.armUpdateProviderNamespace
|
|
88
65
|
@put
|
|
89
66
|
CreateOrUpdateSync<
|
|
90
67
|
Resource extends Foundations.SimpleResource,
|
|
91
68
|
Parameters extends {} = {},
|
|
92
69
|
Response extends {} = ArmResourceUpdatedResponse<Resource> | ArmResourceCreatedSyncResponse<Resource>,
|
|
93
|
-
OptionalRequestBody extends valueof boolean = false
|
|
94
|
-
OverrideErrortype extends {} = ErrorType,
|
|
95
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
70
|
+
OptionalRequestBody extends valueof boolean = false
|
|
96
71
|
>(
|
|
97
72
|
...ParentParameters,
|
|
98
73
|
...ResourceTypeParameter,
|
|
99
74
|
...Parameters,
|
|
100
75
|
@doc("Resource create parameters.") @armBodyRoot(OptionalRequestBody) resource: Resource,
|
|
101
|
-
): Response |
|
|
76
|
+
): Response | ErrorType;
|
|
102
77
|
|
|
103
78
|
/**
|
|
104
79
|
* A long-running resource Update (PATCH)
|
|
@@ -108,13 +83,10 @@ interface RoutedOperations<
|
|
|
108
83
|
* @template Parameters Optional. Additional parameters after the path parameters
|
|
109
84
|
* @template Response Optional. The success response(s) for the PATCH operation
|
|
110
85
|
* @template OptionalRequestBody Optional. Indicates whether the request body is optional
|
|
111
|
-
* @template OverrideErrortype Optional. The error response, if non-standard.
|
|
112
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
113
86
|
*/
|
|
87
|
+
@autoRoute
|
|
114
88
|
@doc("Update a {name}", Resource)
|
|
115
|
-
@armOperationRoute(OverrideRouteOptions)
|
|
116
89
|
@armResourceUpdate(Resource)
|
|
117
|
-
@Private.armUpdateProviderNamespace
|
|
118
90
|
@patch(#{ implicitOptionality: false })
|
|
119
91
|
CustomPatchAsync<
|
|
120
92
|
Resource extends Foundations.SimpleResource,
|
|
@@ -130,15 +102,13 @@ interface RoutedOperations<
|
|
|
130
102
|
"Resource update request accepted.",
|
|
131
103
|
LroHeaders
|
|
132
104
|
>,
|
|
133
|
-
OptionalRequestBody extends valueof boolean = false
|
|
134
|
-
OverrideErrortype extends {} = ErrorType,
|
|
135
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
105
|
+
OptionalRequestBody extends valueof boolean = false
|
|
136
106
|
>(
|
|
137
107
|
...ParentParameters,
|
|
138
108
|
...ResourceTypeParameter,
|
|
139
109
|
...Parameters,
|
|
140
110
|
@doc("Resource create parameters.") @armBodyRoot(OptionalRequestBody) properties: PatchModel,
|
|
141
|
-
): Response |
|
|
111
|
+
): Response | ErrorType;
|
|
142
112
|
|
|
143
113
|
/**
|
|
144
114
|
* A synchronous resource Update (PATCH)
|
|
@@ -147,28 +117,23 @@ interface RoutedOperations<
|
|
|
147
117
|
* @template Parameters Optional. Additional parameters after the path parameters
|
|
148
118
|
* @template Response Optional. The success response(s) for the PATCH operation
|
|
149
119
|
* @template OptionalRequestBody Optional. Indicates whether the request body is optional
|
|
150
|
-
* @template OverrideErrortype Optional. The error response, if non-standard.
|
|
151
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
152
120
|
*/
|
|
121
|
+
@autoRoute
|
|
153
122
|
@doc("Update a {name}", Resource)
|
|
154
|
-
@armOperationRoute(OverrideRouteOptions)
|
|
155
123
|
@armResourceUpdate(Resource)
|
|
156
|
-
@Private.armUpdateProviderNamespace
|
|
157
124
|
@patch(#{ implicitOptionality: false })
|
|
158
125
|
CustomPatchSync<
|
|
159
126
|
Resource extends Foundations.SimpleResource,
|
|
160
127
|
PatchModel extends {} = Azure.ResourceManager.Foundations.TagsUpdateModel<Resource>,
|
|
161
128
|
Parameters extends {} = {},
|
|
162
129
|
Response extends {} = ArmResponse<Resource>,
|
|
163
|
-
OptionalRequestBody extends valueof boolean = false
|
|
164
|
-
OverrideErrortype extends {} = ErrorType,
|
|
165
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
130
|
+
OptionalRequestBody extends valueof boolean = false
|
|
166
131
|
>(
|
|
167
132
|
...ParentParameters,
|
|
168
133
|
...ResourceTypeParameter,
|
|
169
134
|
...Parameters,
|
|
170
135
|
@doc("Resource create parameters.") @armBodyRoot(OptionalRequestBody) properties: PatchModel,
|
|
171
|
-
): Response |
|
|
136
|
+
): Response | ErrorType;
|
|
172
137
|
|
|
173
138
|
/**
|
|
174
139
|
* Delete a resource asynchronously
|
|
@@ -176,116 +141,72 @@ interface RoutedOperations<
|
|
|
176
141
|
* @template LroHeaders The lro headers for the operation
|
|
177
142
|
* @template Parameters Optional. Additional parameters after the path parameters
|
|
178
143
|
* @template Response Optional. The success response(s) for the delete operation
|
|
179
|
-
* @template OverrideErrorType Optional. The error response, if non-standard.
|
|
180
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
181
144
|
*/
|
|
182
145
|
#suppress "@azure-tools/typespec-azure-core/no-response-body" "Valid"
|
|
146
|
+
@autoRoute
|
|
183
147
|
@doc("Delete a {name}", Resource)
|
|
184
|
-
@armOperationRoute(OverrideRouteOptions)
|
|
185
148
|
@delete
|
|
186
149
|
@deletesResource(Resource)
|
|
187
|
-
@Private.armUpdateProviderNamespace
|
|
188
150
|
@armResourceDelete(Resource)
|
|
189
151
|
DeleteWithoutOkAsync<
|
|
190
152
|
Resource extends Foundations.SimpleResource,
|
|
191
153
|
LroHeaders extends TypeSpec.Reflection.Model = ArmLroLocationHeader &
|
|
192
154
|
Azure.Core.Foundations.RetryAfterHeader,
|
|
193
155
|
Parameters extends {} = {},
|
|
194
|
-
Response extends {} = ArmDeleteAcceptedLroResponse<LroHeaders> | ArmDeletedNoContentResponse
|
|
195
|
-
|
|
196
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
197
|
-
>(...ParentParameters, ...ResourceTypeParameter, ...Parameters): Response | OverrideErrorType;
|
|
156
|
+
Response extends {} = ArmDeleteAcceptedLroResponse<LroHeaders> | ArmDeletedNoContentResponse
|
|
157
|
+
>(...ParentParameters, ...ResourceTypeParameter, ...Parameters): Response | ErrorType;
|
|
198
158
|
|
|
199
159
|
/**
|
|
200
160
|
* Delete a resource synchronously
|
|
201
161
|
* @template Resource The resource being deleted
|
|
202
162
|
* @template Parameters Optional. Additional parameters after the path parameters
|
|
203
163
|
* @template Response Optional. The success response(s) for the delete operation
|
|
204
|
-
* @template OverrideErrorType Optional. The error response, if non-standard.
|
|
205
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
206
164
|
*/
|
|
207
165
|
#suppress "@azure-tools/typespec-azure-core/no-response-body" "Valid"
|
|
166
|
+
@autoRoute
|
|
208
167
|
@doc("Delete a {name}", Resource)
|
|
209
|
-
@armOperationRoute(OverrideRouteOptions)
|
|
210
168
|
@delete
|
|
211
169
|
@deletesResource(Resource)
|
|
212
170
|
@armResourceDelete(Resource)
|
|
213
|
-
@Private.armUpdateProviderNamespace
|
|
214
171
|
DeleteSync<
|
|
215
172
|
Resource extends Foundations.SimpleResource,
|
|
216
173
|
Parameters extends {} = {},
|
|
217
|
-
Response extends {} = ArmDeletedResponse | ArmDeletedNoContentResponse
|
|
218
|
-
|
|
219
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
220
|
-
>(...ParentParameters, ...ResourceTypeParameter, ...Parameters): Response | OverrideErrorType;
|
|
174
|
+
Response extends {} = ArmDeletedResponse | ArmDeletedNoContentResponse
|
|
175
|
+
>(...ParentParameters, ...ResourceTypeParameter, ...Parameters): Response | ErrorType;
|
|
221
176
|
|
|
222
177
|
/**
|
|
223
178
|
* @dev Get a resource
|
|
224
179
|
* @template Resource The resource being read
|
|
225
180
|
* @template Parameters Optional. Additional parameters after the path parameters
|
|
226
181
|
* @template Response Optional. The success response for a get operation.
|
|
227
|
-
* @template OverrideErrorType Optional. The error response, if non-standard.
|
|
228
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
229
182
|
*/
|
|
183
|
+
@autoRoute
|
|
230
184
|
@doc("Get a {name}", Resource)
|
|
231
|
-
@armOperationRoute(OverrideRouteOptions)
|
|
232
185
|
@get
|
|
233
186
|
@readsResource(Resource)
|
|
234
187
|
@armResourceRead(Resource)
|
|
235
|
-
@Private.armUpdateProviderNamespace
|
|
236
188
|
Read<
|
|
237
189
|
Resource extends Foundations.SimpleResource,
|
|
238
190
|
Parameters extends {} = {},
|
|
239
|
-
Response extends {} = ArmResponse<Resource
|
|
240
|
-
|
|
241
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
242
|
-
>(...ParentParameters, ...ResourceTypeParameter, ...Parameters): Response | OverrideErrorType;
|
|
243
|
-
|
|
244
|
-
/**
|
|
245
|
-
* Check a resource's existence via HEAD operation
|
|
246
|
-
* @template Resource The resource being checked
|
|
247
|
-
* @template Parameters Optional. Additional parameters after the path parameters
|
|
248
|
-
* @template Response Optional. The success response for a head operation (by default NoContent or NotFound response).
|
|
249
|
-
* @template OverrideErrorType Optional. The error response, if non-standard.
|
|
250
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
251
|
-
*/
|
|
252
|
-
@armOperationRoute(OverrideRouteOptions)
|
|
253
|
-
@doc("Check for the existence of a {name}", Resource)
|
|
254
|
-
@Private.armUpdateProviderNamespace
|
|
255
|
-
@head
|
|
256
|
-
CheckExistence<
|
|
257
|
-
Resource extends Foundations.SimpleResource,
|
|
258
|
-
Parameters extends {} = {},
|
|
259
|
-
Response extends {} = ArmResourceExistsResponse | ArmResourceNotFoundResponse,
|
|
260
|
-
OverrideErrorType extends {} = ErrorType,
|
|
261
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
262
|
-
> is Foundations.ArmReadOperation<
|
|
263
|
-
ParentParameters & ResourceTypeParameter & Parameters,
|
|
264
|
-
Response,
|
|
265
|
-
OverrideErrorType
|
|
266
|
-
>;
|
|
191
|
+
Response extends {} = ArmResponse<Resource>
|
|
192
|
+
>(...ParentParameters, ...ResourceTypeParameter, ...Parameters): Response | ErrorType;
|
|
267
193
|
|
|
268
194
|
/**
|
|
269
195
|
* List a resource
|
|
270
196
|
* @template Resource The resource being listed
|
|
271
197
|
* @template Parameters Optional. Additional parameters after the path parameters
|
|
272
198
|
* @template Response Optional. The response returned by the list
|
|
273
|
-
* @template OverrideErrorType Optional. The error response, if non-standard.
|
|
274
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
275
199
|
*/
|
|
200
|
+
@autoRoute
|
|
276
201
|
@doc("List a {name}", Resource)
|
|
277
202
|
@get
|
|
278
203
|
@listsResource(Resource)
|
|
279
204
|
@segmentOf(Resource)
|
|
280
|
-
@armOperationRoute(OverrideRouteOptions)
|
|
281
205
|
@armResourceList(Resource)
|
|
282
|
-
@Private.armUpdateProviderNamespace
|
|
283
206
|
List<
|
|
284
207
|
Resource extends Foundations.SimpleResource,
|
|
285
208
|
Parameters extends {} = {},
|
|
286
|
-
Response extends {} = ArmResponse<ResourceListResult<Resource
|
|
287
|
-
OverrideErrorType extends {} = ErrorType,
|
|
288
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
209
|
+
Response extends {} = ArmResponse<ResourceListResult<Resource>>
|
|
289
210
|
>(...ParentParameters, ...Parameters): Response | ErrorType;
|
|
290
211
|
|
|
291
212
|
/**
|
|
@@ -295,24 +216,19 @@ interface RoutedOperations<
|
|
|
295
216
|
* @template Response The response model for the action
|
|
296
217
|
* @template Parameters Optional. Additional parameters after the path parameters
|
|
297
218
|
* @template OptionalRequestBody Optional. Indicates whether the request body is optional
|
|
298
|
-
* @template OverrideErrortype Optional. The error response, if non-standard.
|
|
299
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
300
219
|
*/
|
|
301
220
|
@doc("")
|
|
221
|
+
@autoRoute
|
|
302
222
|
@armResourceAction(Resource)
|
|
303
|
-
@armOperationRoute(OverrideRouteOptions)
|
|
304
223
|
@Private.enforceConstraint(Resource, Foundations.Resource)
|
|
305
224
|
@post
|
|
306
|
-
@Private.armUpdateProviderNamespace
|
|
307
225
|
@returnsDoc("Azure operation completed successfully.")
|
|
308
226
|
ActionSync<
|
|
309
227
|
Resource extends Foundations.SimpleResource,
|
|
310
228
|
Request extends TypeSpec.Reflection.Model | void,
|
|
311
229
|
Response extends TypeSpec.Reflection.Model | void,
|
|
312
230
|
Parameters extends {} = {},
|
|
313
|
-
OptionalRequestBody extends valueof boolean = false
|
|
314
|
-
OverrideErrortype extends {} = ErrorType,
|
|
315
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
231
|
+
OptionalRequestBody extends valueof boolean = false
|
|
316
232
|
>(
|
|
317
233
|
...ParentParameters,
|
|
318
234
|
...ResourceTypeParameter,
|
|
@@ -321,26 +237,22 @@ interface RoutedOperations<
|
|
|
321
237
|
@doc("The content of the action request")
|
|
322
238
|
@armBodyRoot(OptionalRequestBody)
|
|
323
239
|
body: Request,
|
|
324
|
-
): Response |
|
|
240
|
+
): Response | ErrorType;
|
|
325
241
|
|
|
326
242
|
/**
|
|
327
243
|
* A long-running resource action.
|
|
328
244
|
* @template Resource The resource being acted upon
|
|
329
245
|
* @template Request The request model for the action
|
|
330
|
-
* @template Result The result model for the action when the operation is successful
|
|
331
246
|
* @template LroHeaders Optional. Allows overriding the headers returned in the Accepted response
|
|
332
|
-
* @template Response The
|
|
247
|
+
* @template Response The response model for the action
|
|
333
248
|
* @template Parameters Optional. Additional parameters after the path parameters
|
|
334
249
|
* @template OptionalRequestBody Optional. Indicates whether the request body is optional
|
|
335
|
-
* @template OverrideErrortype Optional. The error response, if non-standard.
|
|
336
|
-
* @template OverrideRouteOptions Optional. The route options for the operation.
|
|
337
250
|
*/
|
|
338
251
|
#suppress "@azure-tools/typespec-azure-core/no-response-body" "ARM"
|
|
339
252
|
@doc("")
|
|
253
|
+
@autoRoute
|
|
340
254
|
@armResourceAction(Resource)
|
|
341
|
-
@armOperationRoute(OverrideRouteOptions)
|
|
342
255
|
@Private.enforceConstraint(Resource, Foundations.Resource)
|
|
343
|
-
@Private.armUpdateProviderNamespace
|
|
344
256
|
@post
|
|
345
257
|
@returnsDoc("Azure operation completed successfully.")
|
|
346
258
|
ActionAsync<
|
|
@@ -358,9 +270,7 @@ interface RoutedOperations<
|
|
|
358
270
|
"Resource operation accepted.",
|
|
359
271
|
LroHeaders
|
|
360
272
|
> | Result,
|
|
361
|
-
OptionalRequestBody extends valueof boolean = false
|
|
362
|
-
OverrideErrortype extends {} = ErrorType,
|
|
363
|
-
OverrideRouteOptions extends valueof ArmOperationOptions = ResourceRoute
|
|
273
|
+
OptionalRequestBody extends valueof boolean = false
|
|
364
274
|
>(
|
|
365
275
|
...ParentParameters,
|
|
366
276
|
...ResourceTypeParameter,
|
|
@@ -369,24 +279,16 @@ interface RoutedOperations<
|
|
|
369
279
|
@doc("The content of the action request")
|
|
370
280
|
@armBodyRoot(OptionalRequestBody)
|
|
371
281
|
body: Request,
|
|
372
|
-
): Response |
|
|
282
|
+
): Response | ErrorType;
|
|
373
283
|
}
|
|
374
284
|
/**
|
|
375
|
-
* @dev
|
|
285
|
+
* @dev Get the provider namespace key-value pair
|
|
376
286
|
* @template Resource Optional. The resource to get the provider namespace for.
|
|
377
287
|
*/
|
|
378
288
|
model Provider<Resource extends {} = TenantActionScope> {
|
|
379
289
|
...ProviderNamespace<Resource>;
|
|
380
290
|
}
|
|
381
291
|
|
|
382
|
-
/**
|
|
383
|
-
* @dev Get the provider namespace key-value pair
|
|
384
|
-
* @template Resource The resource to get the provider namespace for.
|
|
385
|
-
*/
|
|
386
|
-
model ProviderParameter<Resource extends {}> {
|
|
387
|
-
...ProviderNamespace<Resource>;
|
|
388
|
-
}
|
|
389
|
-
|
|
390
292
|
/**
|
|
391
293
|
* A long-running resource update using a custom PATCH payload (Asynchronous)
|
|
392
294
|
* @template Resource the resource being patched
|
package/lib/arm.tsp
CHANGED
|
@@ -8,7 +8,6 @@ import "@azure-tools/typespec-azure-core";
|
|
|
8
8
|
import "./foundations/arm.foundations.tsp";
|
|
9
9
|
import "./Legacy/arm.legacy.tsp";
|
|
10
10
|
import "./common-types/common-types.tsp";
|
|
11
|
-
import "./extension/extension.tsp";
|
|
12
11
|
import "./backcompat.tsp";
|
|
13
12
|
import "./private.decorators.tsp";
|
|
14
13
|
import "./models.tsp";
|
|
@@ -18,15 +18,6 @@ enum ResourceHome {
|
|
|
18
18
|
|
|
19
19
|
@doc("The resource is bound to an extension")
|
|
20
20
|
Extension,
|
|
21
|
-
|
|
22
|
-
@doc("The resource is a built in tenant resource")
|
|
23
|
-
BuiltIn,
|
|
24
|
-
|
|
25
|
-
@doc("The resource is a built in subscription resource")
|
|
26
|
-
BuiltInSubscription,
|
|
27
|
-
|
|
28
|
-
@doc("The resource is a built in resource group resource")
|
|
29
|
-
BuiltInResourceGroup,
|
|
30
21
|
}
|
|
31
22
|
|
|
32
23
|
/** Alias of keyEncryptionKeyIdentity for back compatibility. Please change to keyEncryptionKeyIdentity. */
|
|
@@ -40,10 +40,12 @@ model PrivateLinkResourceProperties {
|
|
|
40
40
|
model PrivateLinkResourceListResult {
|
|
41
41
|
/** Array of private link resources */
|
|
42
42
|
@OpenAPI.extension("x-ms-identifiers", #["id"])
|
|
43
|
+
@items
|
|
43
44
|
value?: PrivateLinkResource[];
|
|
44
45
|
|
|
45
46
|
/** URL to get the next set of operation list results (if there are any). */
|
|
46
47
|
@visibility(Lifecycle.Read)
|
|
48
|
+
@nextLink
|
|
47
49
|
nextLink?: url;
|
|
48
50
|
}
|
|
49
51
|
//#region
|
|
@@ -59,10 +61,12 @@ model PrivateEndpointConnection extends Resource {
|
|
|
59
61
|
model PrivateEndpointConnectionListResult {
|
|
60
62
|
/** Array of private endpoint connections. */
|
|
61
63
|
@OpenAPI.extension("x-ms-identifiers", #["id"])
|
|
64
|
+
@items
|
|
62
65
|
value?: PrivateEndpointConnection[];
|
|
63
66
|
|
|
64
67
|
/** URL to get the next set of operation list results (if there are any). */
|
|
65
68
|
@visibility(Lifecycle.Read)
|
|
69
|
+
@nextLink
|
|
66
70
|
nextLink?: url;
|
|
67
71
|
}
|
|
68
72
|
|
|
@@ -376,10 +376,7 @@ namespace Azure.ResourceManager.CommonTypes;
|
|
|
376
376
|
ResourceHome.Subscription,
|
|
377
377
|
ResourceHome.Location,
|
|
378
378
|
ResourceHome.Tenant,
|
|
379
|
-
ResourceHome.Extension
|
|
380
|
-
ResourceHome.BuiltIn,
|
|
381
|
-
ResourceHome.BuiltInSubscription,
|
|
382
|
-
ResourceHome.BuiltInResourceGroup
|
|
379
|
+
ResourceHome.Extension
|
|
383
380
|
]
|
|
384
381
|
);
|
|
385
382
|
|
|
@@ -401,13 +398,7 @@ namespace Azure.ResourceManager.CommonTypes;
|
|
|
401
398
|
Azure.ResourceManager.CommonTypes.Versions.v6
|
|
402
399
|
);
|
|
403
400
|
@@resourceParameterBaseFor(SubscriptionIdParameter.subscriptionId,
|
|
404
|
-
[
|
|
405
|
-
ResourceHome.ResourceGroup,
|
|
406
|
-
ResourceHome.Subscription,
|
|
407
|
-
ResourceHome.Location,
|
|
408
|
-
ResourceHome.BuiltInSubscription,
|
|
409
|
-
ResourceHome.BuiltInResourceGroup
|
|
410
|
-
]
|
|
401
|
+
[ResourceHome.ResourceGroup, ResourceHome.Subscription, ResourceHome.Location]
|
|
411
402
|
);
|
|
412
403
|
|
|
413
404
|
/** ResourceGroupNameParameter */
|
|
@@ -428,7 +419,7 @@ namespace Azure.ResourceManager.CommonTypes;
|
|
|
428
419
|
Azure.ResourceManager.CommonTypes.Versions.v6
|
|
429
420
|
);
|
|
430
421
|
@@resourceParameterBaseFor(ResourceGroupNameParameter.resourceGroupName,
|
|
431
|
-
[ResourceHome.ResourceGroup
|
|
422
|
+
[ResourceHome.ResourceGroup]
|
|
432
423
|
);
|
|
433
424
|
|
|
434
425
|
/** ManagementGroupNameParameter */
|
package/lib/decorators.tsp
CHANGED
|
@@ -152,48 +152,16 @@ extern dec armResourceList(target: Operation, resourceType: Model);
|
|
|
152
152
|
|
|
153
153
|
/**
|
|
154
154
|
* This decorator is used to identify interfaces containing resource operations.
|
|
155
|
-
*
|
|
155
|
+
* When applied, it marks the interface with the `@autoRoute` decorator so that
|
|
156
156
|
* all of its contained operations will have their routes generated
|
|
157
157
|
* automatically.
|
|
158
158
|
*
|
|
159
|
-
*
|
|
159
|
+
* It also adds a `@tag` decorator bearing the name of the interface so that all
|
|
160
160
|
* of the operations will be grouped based on the interface name in generated
|
|
161
161
|
* clients.
|
|
162
|
-
*
|
|
163
|
-
* The optional `resourceOperationOptions` parameter provides additional options.
|
|
164
|
-
* `allowStaticRoutes` turns off autoRout for the interface, so individual operations can
|
|
165
|
-
* choose static (`@route`) or automatic (`@autoRoute`) routing.
|
|
166
|
-
*
|
|
167
|
-
* `resourceType: Model` specifies the resource type for the operations in the interface
|
|
168
|
-
*
|
|
169
|
-
* `omitTags: true`: turns off the default tagging of operations in the interface, so that individual operations must be
|
|
170
|
-
* individually tagged
|
|
171
|
-
*
|
|
172
|
-
*
|
|
173
|
-
* @param resourceOperationOptions Options for routing the operations in the interface and associating them with a specific resource
|
|
162
|
+
* @param _ DEPRECATED
|
|
174
163
|
*/
|
|
175
|
-
extern dec armResourceOperations(
|
|
176
|
-
target: Interface,
|
|
177
|
-
resourceOperationOptions?: (valueof ResourceOperationOptions) | unknown
|
|
178
|
-
);
|
|
179
|
-
|
|
180
|
-
/** Interface-level operation options */
|
|
181
|
-
model ResourceOperationOptions {
|
|
182
|
-
/**
|
|
183
|
-
* The resource type for the operations in the interface
|
|
184
|
-
*/
|
|
185
|
-
resourceType?: Model;
|
|
186
|
-
|
|
187
|
-
/**
|
|
188
|
-
* If true, turns off autoRoute for the interface, so individual operations can choose static (`@route`) or automatic (`@autoRoute`) routing.
|
|
189
|
-
*/
|
|
190
|
-
allowStaticRoutes?: boolean;
|
|
191
|
-
|
|
192
|
-
/**
|
|
193
|
-
* If true, turns off the default tagging of operations in the interface, so that individual operations must be individually tagged
|
|
194
|
-
*/
|
|
195
|
-
omitTags?: boolean;
|
|
196
|
-
}
|
|
164
|
+
extern dec armResourceOperations(target: Interface, _?: unknown);
|
|
197
165
|
|
|
198
166
|
/**
|
|
199
167
|
* This decorator is used either on a namespace or a version enum value to indicate
|
|
@@ -212,7 +180,7 @@ extern dec armCommonTypesVersion(
|
|
|
212
180
|
*
|
|
213
181
|
* @param propertiesType: The type of the resource properties.
|
|
214
182
|
*/
|
|
215
|
-
extern dec armVirtualResource(target: Model
|
|
183
|
+
extern dec armVirtualResource(target: Model);
|
|
216
184
|
|
|
217
185
|
/**
|
|
218
186
|
* This decorator sets the base type of the given resource.
|
|
@@ -221,7 +189,7 @@ extern dec armVirtualResource(target: Model, provider?: valueof string);
|
|
|
221
189
|
*/
|
|
222
190
|
extern dec resourceBaseType(
|
|
223
191
|
target: Model,
|
|
224
|
-
|
|
192
|
+
baseType: "Tenant" | "Subscription" | "ResourceGroup" | "Location" | "Extension"
|
|
225
193
|
);
|
|
226
194
|
|
|
227
195
|
/**
|
|
@@ -14,11 +14,6 @@ extern dec armUpdateProviderNamespace(target: Reflection.Operation);
|
|
|
14
14
|
*/
|
|
15
15
|
extern dec assignProviderNameValue(target: ModelProperty, resource: Model);
|
|
16
16
|
|
|
17
|
-
/**
|
|
18
|
-
* @param resource Resource model
|
|
19
|
-
*/
|
|
20
|
-
extern dec assignUniqueProviderNameValue(target: ModelProperty, resource: Model);
|
|
21
|
-
|
|
22
17
|
/**
|
|
23
18
|
* This decorator is used to identify Azure Resource Manager resource types and extract their
|
|
24
19
|
* metadata. It is *not* meant to be used directly by a spec author, it instead
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@azure-tools/typespec-azure-resource-manager",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.58.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",
|
|
@@ -44,30 +44,30 @@
|
|
|
44
44
|
"pluralize": "^8.0.0"
|
|
45
45
|
},
|
|
46
46
|
"peerDependencies": {
|
|
47
|
-
"@azure-tools/typespec-azure-core": "^0.57.0",
|
|
47
|
+
"@azure-tools/typespec-azure-core": "^0.57.0 || >=0.58.0-dev <0.58.0",
|
|
48
48
|
"@typespec/compiler": "^1.1.0",
|
|
49
49
|
"@typespec/http": "^1.1.0",
|
|
50
50
|
"@typespec/openapi": "^1.1.0",
|
|
51
|
-
"@typespec/rest": "^0.71.0",
|
|
52
|
-
"@typespec/versioning": "^0.71.0"
|
|
51
|
+
"@typespec/rest": "^0.71.0 || >=0.72.0-dev <0.72.0",
|
|
52
|
+
"@typespec/versioning": "^0.71.0 || >=0.72.0-dev <0.72.0"
|
|
53
53
|
},
|
|
54
54
|
"devDependencies": {
|
|
55
|
+
"@azure-tools/typespec-azure-core": "^0.57.0 || >=0.58.0-dev <0.58.0",
|
|
55
56
|
"@types/node": "~22.13.11",
|
|
56
57
|
"@types/pluralize": "^0.0.33",
|
|
58
|
+
"@typespec/compiler": "^1.1.0",
|
|
59
|
+
"@typespec/http": "^1.1.0",
|
|
60
|
+
"@typespec/library-linter": "^0.71.0 || >=0.72.0-dev <0.72.0",
|
|
61
|
+
"@typespec/openapi": "^1.1.0",
|
|
62
|
+
"@typespec/rest": "^0.71.0 || >=0.72.0-dev <0.72.0",
|
|
63
|
+
"@typespec/tspd": "^0.71.0 || >=0.72.0-dev <0.72.0",
|
|
64
|
+
"@typespec/versioning": "^0.71.0 || >=0.72.0-dev <0.72.0",
|
|
57
65
|
"@vitest/coverage-v8": "^3.1.2",
|
|
58
66
|
"@vitest/ui": "^3.1.2",
|
|
59
67
|
"c8": "^10.1.3",
|
|
60
68
|
"rimraf": "~6.0.1",
|
|
61
69
|
"typescript": "~5.8.2",
|
|
62
|
-
"vitest": "^3.1.2"
|
|
63
|
-
"@azure-tools/typespec-azure-core": "^0.57.0",
|
|
64
|
-
"@typespec/compiler": "^1.1.0",
|
|
65
|
-
"@typespec/library-linter": "^0.71.0",
|
|
66
|
-
"@typespec/http": "^1.1.0",
|
|
67
|
-
"@typespec/openapi": "^1.1.0",
|
|
68
|
-
"@typespec/rest": "^0.71.0",
|
|
69
|
-
"@typespec/tspd": "^0.71.0",
|
|
70
|
-
"@typespec/versioning": "^0.71.0"
|
|
70
|
+
"vitest": "^3.1.2"
|
|
71
71
|
},
|
|
72
72
|
"scripts": {
|
|
73
73
|
"clean": "rimraf ./dist ./temp",
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import type { DecoratorContext, Model } from "@typespec/compiler";
|
|
2
|
-
/**
|
|
3
|
-
* `@builtInResource` marks a model as built-in to Azure ResourceManager at the tenant level
|
|
4
|
-
*
|
|
5
|
-
* @param target The model that is marked as built-in.
|
|
6
|
-
*/
|
|
7
|
-
export type BuiltInResourceDecorator = (context: DecoratorContext, target: Model) => void;
|
|
8
|
-
/**
|
|
9
|
-
* `@builtInSubscriptionResource` marks a model as built-in to Azure ResourceManager at the Subscription level
|
|
10
|
-
*
|
|
11
|
-
* @param target The model that is marked as built-in.
|
|
12
|
-
*/
|
|
13
|
-
export type BuiltInSubscriptionResourceDecorator = (context: DecoratorContext, target: Model) => void;
|
|
14
|
-
/**
|
|
15
|
-
* `@builtInResourceGroupResource` marks a model as built-in to Azure ResourceManager at the ResourceGroup level
|
|
16
|
-
*
|
|
17
|
-
* @param target The model that is marked as built-in.
|
|
18
|
-
*/
|
|
19
|
-
export type BuiltInResourceGroupResourceDecorator = (context: DecoratorContext, target: Model) => void;
|
|
20
|
-
export type AzureResourceManagerExtensionPrivateDecorators = {
|
|
21
|
-
builtInResource: BuiltInResourceDecorator;
|
|
22
|
-
builtInSubscriptionResource: BuiltInSubscriptionResourceDecorator;
|
|
23
|
-
builtInResourceGroupResource: BuiltInResourceGroupResourceDecorator;
|
|
24
|
-
};
|
|
25
|
-
//# sourceMappingURL=Azure.ResourceManager.Extension.Private.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Azure.ResourceManager.Extension.Private.d.ts","sourceRoot":"","sources":["../../generated-defs/Azure.ResourceManager.Extension.Private.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAElE;;;;GAIG;AACH,MAAM,MAAM,wBAAwB,GAAG,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,KAAK,KAAK,IAAI,CAAC;AAE1F;;;;GAIG;AACH,MAAM,MAAM,oCAAoC,GAAG,CACjD,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,KAAK,KACV,IAAI,CAAC;AAEV;;;;GAIG;AACH,MAAM,MAAM,qCAAqC,GAAG,CAClD,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,KAAK,KACV,IAAI,CAAC;AAEV,MAAM,MAAM,8CAA8C,GAAG;IAC3D,eAAe,EAAE,wBAAwB,CAAC;IAC1C,2BAA2B,EAAE,oCAAoC,CAAC;IAClE,4BAA4B,EAAE,qCAAqC,CAAC;CACrE,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Azure.ResourceManager.Extension.Private.js","sourceRoot":"","sources":["../../generated-defs/Azure.ResourceManager.Extension.Private.ts"],"names":[],"mappings":""}
|
|
@@ -1,4 +0,0 @@
|
|
|
1
|
-
export declare const armCustomResourceNoKey: import("@typespec/compiler").LinterRuleDefinition<"arm-custom-resource-no-key", {
|
|
2
|
-
readonly default: "Custom Azure resource models must define a key property using the @key decorator. Without a key, operation paths could be duplicated.";
|
|
3
|
-
}>;
|
|
4
|
-
//# sourceMappingURL=arm-custom-resource-no-key.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"arm-custom-resource-no-key.d.ts","sourceRoot":"","sources":["../../../src/rules/arm-custom-resource-no-key.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,sBAAsB;;EAyBjC,CAAC"}
|