@azure-tools/typespec-azure-resource-manager 0.71.0-dev.13 → 0.71.0-dev.15

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
@@ -700,7 +700,7 @@ multiple base types. Duplicate entries are ignored.
700
700
 
701
701
  ```typespec
702
702
  // Agent definition and properties using the Appliance deployment model
703
- model ContosoApplianceDefinition is AgentDefinitionAppliance<true, true>;
703
+ model ContosoApplianceDefinition is AgentDefinitionAppliance<true>;
704
704
  model ContosoApplianceProperties is AgentPropertiesAppliance<ContosoApplianceDefinition> {
705
705
  ...DefaultProvisioningStateProperty;
706
706
  }
@@ -15,7 +15,7 @@ export interface BaseTypeInfo {
15
15
  * @example
16
16
  * ```typespec
17
17
  * // Agent definition and properties using the Appliance deployment model
18
- * model ContosoApplianceDefinition is AgentDefinitionAppliance<true, true>;
18
+ * model ContosoApplianceDefinition is AgentDefinitionAppliance<true>;
19
19
  * model ContosoApplianceProperties is AgentPropertiesAppliance<ContosoApplianceDefinition> {
20
20
  * ...DefaultProvisioningStateProperty;
21
21
  * }
@@ -56,15 +56,11 @@ internal model AgentDefinition {
56
56
  /**
57
57
  * Appliance deployment model of AgentDefinition.
58
58
  * Properties controlled by `@baseTypeOptional` are invisible when the corresponding
59
- * template parameter is false. When present, `instructions` is read-only while
60
- * `modelDeploymentRef` stays writable so the client can point the agent at a model deployment.
61
- * @template HasModelDeploymentRef Whether the modelDeploymentRef property is present.
59
+ * template parameter is false, or read-only when present. The appliance owns the whole
60
+ * agent definition, so there is no `modelDeploymentRef` property in this deployment model.
62
61
  * @template HasInstructions Whether the instructions property is present.
63
62
  */
64
- model AgentDefinitionAppliance<
65
- HasModelDeploymentRef extends valueof boolean = false,
66
- HasInstructions extends valueof boolean = false
67
- > {
63
+ model AgentDefinitionAppliance<HasInstructions extends valueof boolean = false> {
68
64
  /** Model identifier (RP-defined). */
69
65
  @visibility(Lifecycle.Read)
70
66
  `model`: string;
@@ -72,10 +68,6 @@ model AgentDefinitionAppliance<
72
68
  /** System prompt / behavioral instructions for the agent. */
73
69
  @baseTypeOptional(HasInstructions, true)
74
70
  instructions: string;
75
-
76
- /** Optional RP-specific reference to an underlying model deployment. Writable in both deployment models. */
77
- @baseTypeOptional(HasModelDeploymentRef, false)
78
- modelDeploymentRef?: string;
79
71
  }
80
72
 
81
73
  /**
@@ -126,10 +118,7 @@ internal model AgentProperties {
126
118
 
127
119
  /**
128
120
  * Appliance deployment model of AgentProperties.
129
- * All properties are read-only (the appliance owns and reports state), except the `definition`
130
- * container itself: it stays writable so the client can send the fields the agent definition
131
- * marks as writable, such as `modelDeploymentRef`. Every service-owned field inside the
132
- * definition remains read-only.
121
+ * All properties are read-only (the appliance owns and reports state).
133
122
  * @template AgentDefinitionType The user-defined agent definition model (must extend AgentDefinition).
134
123
  */
135
124
  model AgentPropertiesAppliance<AgentDefinitionType extends AgentDefinition> {
@@ -145,7 +134,8 @@ model AgentPropertiesAppliance<AgentDefinitionType extends AgentDefinition> {
145
134
  @visibility(Lifecycle.Read)
146
135
  description: string;
147
136
 
148
- /** Inline agent definition. The container is writable so the client can set the definition fields that are not service-owned. */
137
+ /** Inline agent definition. */
138
+ @visibility(Lifecycle.Read)
149
139
  definition: AgentDefinitionType;
150
140
 
151
141
  /** Tool bindings. Read-only in the Appliance deployment model. */
@@ -44,7 +44,7 @@ model BaseTypeInfo {
44
44
  *
45
45
  * ```typespec
46
46
  * // Agent definition and properties using the Appliance deployment model
47
- * model ContosoApplianceDefinition is AgentDefinitionAppliance<true, true>;
47
+ * model ContosoApplianceDefinition is AgentDefinitionAppliance<true>;
48
48
  * model ContosoApplianceProperties is AgentPropertiesAppliance<ContosoApplianceDefinition> {
49
49
  * ...DefaultProvisioningStateProperty;
50
50
  * }
@@ -6,6 +6,7 @@ namespace Azure.ResourceManager.CommonTypes;
6
6
  /** Managed service identity (system assigned and/or user assigned identities and/or delegated identities) - internal use only. */
7
7
  @added(Versions.v4)
8
8
  model ManagedServiceIdentityWithDelegation extends ManagedServiceIdentity {
9
+ /** The delegated resources of the identity - internal use only. */
9
10
  delegatedResources?: DelegatedResources;
10
11
  }
11
12
 
@@ -24,12 +24,26 @@ union AccessRuleDirection {
24
24
  @added(Versions.v5)
25
25
  union NetworkSecurityPerimeterConfigurationProvisioningState {
26
26
  string,
27
+
28
+ /** The configuration was provisioned successfully. */
27
29
  Succeeded: "Succeeded",
30
+
31
+ /** The configuration is being created. */
28
32
  Creating: "Creating",
33
+
34
+ /** The configuration is being updated. */
29
35
  Updating: "Updating",
36
+
37
+ /** The configuration is being deleted. */
30
38
  Deleting: "Deleting",
39
+
40
+ /** The configuration request was accepted and provisioning has not started yet. */
31
41
  Accepted: "Accepted",
42
+
43
+ /** The configuration failed to provision. */
32
44
  Failed: "Failed",
45
+
46
+ /** The configuration provisioning was canceled. */
33
47
  Canceled: "Canceled",
34
48
  }
35
49
 
@@ -55,7 +69,11 @@ union IssueType {
55
69
  @added(Versions.v5)
56
70
  union Severity {
57
71
  string,
72
+
73
+ /** The issue is a warning and does not prevent the configuration from being applied. */
58
74
  Warning: "Warning",
75
+
76
+ /** The issue is an error and prevents the configuration from being applied. */
59
77
  Error: "Error",
60
78
  }
61
79
 
@@ -95,12 +113,14 @@ model AccessRule {
95
113
  /** Name of the access rule */
96
114
  name?: string;
97
115
 
116
+ /** Properties of the access rule */
98
117
  properties?: AccessRuleProperties;
99
118
  }
100
119
 
101
120
  /** Properties of Access Rule */
102
121
  @added(Versions.v5)
103
122
  model AccessRuleProperties {
123
+ /** Direction of the access rule */
104
124
  direction?: AccessRuleDirection;
105
125
 
106
126
  /** Address prefixes in the CIDR format for inbound rules */
@@ -146,12 +166,14 @@ model NetworkSecurityPerimeter {
146
166
  /** Network security perimeter (NSP) configuration resource */
147
167
  @added(Versions.v5)
148
168
  model NetworkSecurityPerimeterConfiguration extends ProxyResource {
169
+ /** Network security configuration properties. */
149
170
  properties?: NetworkSecurityPerimeterConfigurationProperties;
150
171
  }
151
172
 
152
173
  /** Network security configuration properties. */
153
174
  @added(Versions.v5)
154
175
  model NetworkSecurityPerimeterConfigurationProperties {
176
+ /** Provisioning state of the network security perimeter configuration */
155
177
  @visibility(Lifecycle.Read)
156
178
  provisioningState?: NetworkSecurityPerimeterConfigurationProvisioningState;
157
179
 
@@ -160,8 +182,13 @@ model NetworkSecurityPerimeterConfigurationProperties {
160
182
  @Azure.ResourceManager.identifiers(#[])
161
183
  provisioningIssues?: ProvisioningIssue[];
162
184
 
185
+ /** Information about the network security perimeter (NSP) */
163
186
  networkSecurityPerimeter?: NetworkSecurityPerimeter;
187
+
188
+ /** Information about the resource association */
164
189
  resourceAssociation?: ResourceAssociation;
190
+
191
+ /** Network security perimeter configuration profile */
165
192
  profile?: NetworkSecurityProfile;
166
193
  }
167
194
 
@@ -172,6 +199,7 @@ model ProvisioningIssue {
172
199
  @visibility(Lifecycle.Read)
173
200
  name?: string;
174
201
 
202
+ /** Details of the provisioning issue */
175
203
  @visibility(Lifecycle.Read)
176
204
  properties?: ProvisioningIssueProperties;
177
205
  }
@@ -207,6 +235,7 @@ model ResourceAssociation {
207
235
  /** Name of the resource association */
208
236
  name?: string;
209
237
 
238
+ /** Access mode of the resource association */
210
239
  accessMode?: ResourceAssociationAccessMode;
211
240
  }
212
241
 
@@ -80,10 +80,14 @@ model ResourceModelWithAllowedPropertySet extends TrackedResource {
80
80
  @visibility(Lifecycle.Read)
81
81
  etag?: string;
82
82
 
83
+ /** The identity of the resource. */
83
84
  @typeChangedFrom(Versions.v6, Identity)
84
85
  identity?: ManagedServiceIdentity;
85
86
 
87
+ /** The SKU of the resource. */
86
88
  sku?: Sku;
89
+
90
+ /** The plan of the resource. */
87
91
  plan?: Plan;
88
92
  }
89
93
 
@@ -346,6 +350,7 @@ union createdByType {
346
350
 
347
351
  /** Resource Identity Type */
348
352
  union ResourceIdentityType {
353
+ /** The identity is assigned by the system. */
349
354
  SystemAssigned: "SystemAssigned",
350
355
  }
351
356
 
@@ -173,6 +173,7 @@ model ExternalResource<
173
173
  Description extends valueof string = "The name of the resource",
174
174
  ParentType extends valueof "Tenant" | "Subscription" | "ResourceGroup" = "ResourceGroup"
175
175
  > {
176
+ /** The name of the resource. */
176
177
  @doc(Description)
177
178
  @visibility(Lifecycle.Read)
178
179
  @path
@@ -223,6 +224,7 @@ model ExternalChildResource<
223
224
  NameType extends string = string,
224
225
  Description extends valueof string = "The name of the resource"
225
226
  > {
227
+ /** The name of the resource. */
226
228
  @doc(Description)
227
229
  @visibility(Lifecycle.Read)
228
230
  @path
@@ -190,6 +190,7 @@ model ProxyResourceUpdateModel<
190
190
  Resource extends Foundations.SimpleResource,
191
191
  Properties extends TypeSpec.Reflection.Model
192
192
  > {
193
+ /** The resource-specific properties for this resource. */
193
194
  properties?: ResourceUpdateModelProperties<Resource, Properties>;
194
195
  }
195
196
 
@@ -33,11 +33,12 @@ interface Operations {
33
33
  }
34
34
 
35
35
  /**
36
- * @deprecated Use Azure.ResourceManager.TrackedResourceOperations instead
37
36
  * A composite interface for resources that include `ResourceInstanceOperations<Resource, Properties>`
38
37
  * and `ResourceCollectionOperations<Resource>`. It includes: `GET`, `PUT`, `PATCH`, `DELETE`, ListByParent,
39
38
  * ListBySubscription operations. The actual route depends on the resource model.
40
39
  * This is the most common API pattern for Tracked Resources to use.
40
+ *
41
+ * Deprecated: use `Azure.ResourceManager.TrackedResourceOperations` instead.
41
42
  * @template Resource the ArmResource that provides these operations
42
43
  * @template Properties RP-specific property bag for the resource
43
44
  * @template BaseParameters The http parameters that are part of the request
@@ -147,7 +148,6 @@ interface ResourceCollectionOperations<
147
148
  interface ResourceListBySubscription<Resource extends Foundations.SimpleResource> {
148
149
  /**
149
150
  * List resources by subscription.
150
- * @template Resource The ArmResource to list.
151
151
  */
152
152
  @doc("List {name} resources by subscription ID", Resource)
153
153
  listBySubscription is ArmListBySubscription<Resource>;
@@ -168,10 +168,6 @@ interface ResourceListByParent<
168
168
  > {
169
169
  /**
170
170
  * List resources by parent.
171
- * @template Resource The ArmResource to list.
172
- * @template BaseParameters The http parameters that are part of the request
173
- * @template ParentName The name of the parent resource
174
- * @template ParentFriendlyName The friendly name of the parent resource
175
171
  */
176
172
  @Private.armRenameListByOperation(Resource, ParentName, ParentFriendlyName, true) // This must come before @armResourceList!
177
173
  listByParent is ArmResourceListByParent<Resource, BaseParameters, ParentName, ParentFriendlyName>;
@@ -188,8 +184,6 @@ interface ResourceRead<
188
184
  > {
189
185
  /**
190
186
  * Retrieve a resource.
191
- * @template Resource The ArmResource to retrieve.
192
- * @template BaseParameters The http parameters that are part of the request
193
187
  */
194
188
  @doc("Get a {name}", Resource)
195
189
  get is ArmResourceRead<Resource, BaseParameters>;
@@ -206,8 +200,6 @@ interface ResourceCreateSync<
206
200
  > {
207
201
  /**
208
202
  * Create or update a resource using the synchronous call pattern.
209
- * @template Resource The ArmResource to create or update.
210
- * @template BaseParameters The http parameters that are part of the request
211
203
  */
212
204
  @doc("Create a {name}", Resource)
213
205
  createOrUpdate is ArmResourceCreateOrReplaceSync<Resource, BaseParameters>;
@@ -224,8 +216,6 @@ interface ResourceCreateAsync<
224
216
  > {
225
217
  /**
226
218
  * Create or update a resource using the asynchronous call pattern.
227
- * @template Resource The ArmResource to create or update.
228
- * @template BaseParameters The http parameters that are part of the request
229
219
  */
230
220
  @doc("Create a {name}", Resource)
231
221
  createOrUpdate is ArmResourceCreateOrUpdateAsync<Resource, BaseParameters>;
@@ -245,8 +235,6 @@ interface ResourceDeleteAsync<
245
235
  > {
246
236
  /**
247
237
  * Delete a resource using the asynchronous call pattern.
248
- * @template Resource The ArmResource to delete.
249
- * @template BaseParameters The http parameters that are part of the request
250
238
  */
251
239
  @doc("Delete a {name}", Resource)
252
240
  delete is ArmResourceDeleteAsync<Resource, BaseParameters>;
@@ -265,8 +253,6 @@ interface ResourceDeleteWithoutOkAsync<
265
253
  > {
266
254
  /**
267
255
  * Delete a resource using the asynchronous call pattern.
268
- * @template Resource The ArmResource to delete.
269
- * @template BaseParameters The http parameters that are part of the request
270
256
  */
271
257
  @doc("Delete a {name}", Resource)
272
258
  delete is ArmResourceDeleteWithoutOkAsync<Resource, BaseParameters>;
@@ -284,8 +270,6 @@ interface ResourceDeleteSync<
284
270
  > {
285
271
  /**
286
272
  * Delete a resource using the synchronous call pattern.
287
- * @template Resource The ArmResource to delete.
288
- * @template BaseParameters The http parameters that are part of the request
289
273
  */
290
274
  @doc("Delete a {name}", Resource)
291
275
  delete is ArmResourceDeleteSync<Resource, BaseParameters>;
@@ -305,9 +289,6 @@ interface ResourceUpdateAsync<
305
289
  > {
306
290
  /**
307
291
  * Update a resource using the asynchronous call pattern.
308
- * @template Resource The ArmResource to update.
309
- * @template Properties RP-specific property bag for the resource
310
- * @template BaseParameters The http parameters that are part of the request
311
292
  */
312
293
  @doc("Update a {name}", Resource)
313
294
  update is ArmCustomPatchAsync<
@@ -331,9 +312,6 @@ interface ResourceUpdateSync<
331
312
  > {
332
313
  /**
333
314
  * Update a resource using the synchronous call pattern.
334
- * @template Resource The ArmResource to update.
335
- * @template Properties RP-specific property bag for the resource
336
- * @template BaseParameters The http parameters that are part of the request
337
315
  */
338
316
  #suppress "@typespec/http/deprecated-implicit-optionality" "Legacy"
339
317
  @patch(#{ implicitOptionality: true })
@@ -70,6 +70,7 @@ alias EntityTagProperty = {
70
70
  * ```
71
71
  */
72
72
  model ExtendedLocationOptionalProperty {
73
+ /** The extended location of the resource. */
73
74
  @visibility(Lifecycle.Read, Lifecycle.Create)
74
75
  extendedLocation?: ExtendedLocationOptional;
75
76
  }
package/lib/models.tsp CHANGED
@@ -11,7 +11,7 @@ namespace Azure.ResourceManager;
11
11
  * is specified, the resource name will be properly camel cased and pluralized for `@key` and `@segment`
12
12
  * automatically. You can also apply explicit override with `KeyName` and `SegmentName` template parameters.
13
13
  *
14
- * For additional decorators such as @minLength, you can use either augment decorator on `[Resource].name` or passing in a scalar string type with decorators.
14
+ * For additional decorators such as `@minLength`, you can use either augment decorator on `[Resource].name` or passing in a scalar string type with decorators.
15
15
  *
16
16
  * @template Resource The ARM resource this name parameter is applying to.
17
17
  * @template KeyName Override default key name of the resource.
@@ -229,6 +229,7 @@ model DefaultProvisioningStateProperty {
229
229
  * ```
230
230
  */
231
231
  model ExtendedLocationProperty {
232
+ /** The extended location of the resource. */
232
233
  @visibility(Lifecycle.Read, Lifecycle.Create)
233
234
  extendedLocation?: Foundations.ExtendedLocation;
234
235
  }
@@ -60,8 +60,6 @@ interface PrivateEndpoints<
60
60
  * @template ParentResource the parent resource of the PrivateEndpointConnection
61
61
  * @template Resource Optional. The PrivateEndpointConnection resource being listed
62
62
  * @template BaseParameters Optional. Allows overriding the operation parameters
63
- * @template ParentName Optional. The name of the parent resource
64
- * @template ParentFriendlyName Optional. The friendly name of the parent resource
65
63
  * @template Parameters Optional. Additional parameters after the path parameters
66
64
  * @template Response Optional. The success response for the list operation
67
65
  * @template Error Optional. The error response, if non-standard.
@@ -10,7 +10,6 @@ namespace Azure.ResourceManager;
10
10
  * Resource providers must declare a private link resource type in their provider namespace if
11
11
  * they support private link resources
12
12
  * @template Description Optional. The documentary description of the private link resource name parameter.
13
- * @template KeyName Optional. The name of the private link resource name parameter.
14
13
  * @example
15
14
  * ```ts
16
15
  * namespace Microsoft.Contoso;
@@ -61,8 +60,6 @@ interface PrivateLinks<
61
60
  * @template ParentResource the parent resource of the PrivateLink
62
61
  * @template Resource Optional. The PrivateLink resource being listed
63
62
  * @template BaseParameters Optional. Allows overriding the operation parameters
64
- * @template ParentName Optional. The name of the parent resource
65
- * @template ParentFriendlyName Optional. The friendly name of the parent resource
66
63
  * @template Parameters Optional. Additional parameters after the path parameters
67
64
  * @template Response Optional. The success response for the list operation
68
65
  * @template Error Optional. The error response, if non-standard.
@@ -95,8 +92,6 @@ interface PrivateLinks<
95
92
  * @template ParentResource the parent resource of the PrivateLink
96
93
  * @template Resource Optional. The PrivateLink resource being listed
97
94
  * @template BaseParameters Optional. Allows overriding the operation parameters
98
- * @template ParentName Optional. The name of the parent resource
99
- * @template ParentFriendlyName Optional. The friendly name of the parent resource
100
95
  * @template Parameters Optional. Additional parameters after the path parameters
101
96
  * @template Response Optional. The success response for the list operation
102
97
  * @template Error Optional. The error response, if non-standard.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-tools/typespec-azure-resource-manager",
3
- "version": "0.71.0-dev.13",
3
+ "version": "0.71.0-dev.15",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec Azure Resource Manager library",
6
6
  "homepage": "https://azure.github.io/typespec-azure",
@@ -47,15 +47,15 @@
47
47
  "pluralize": "^8.0.0"
48
48
  },
49
49
  "peerDependencies": {
50
- "@azure-tools/typespec-azure-core": "^0.70.0 || >= 0.71.0-dev.4",
50
+ "@azure-tools/typespec-azure-core": "^0.70.0 || >= 0.71.0-dev.7",
51
51
  "@typespec/compiler": "^1.14.0",
52
- "@typespec/openapi": "^1.14.0",
53
- "@typespec/versioning": "^0.84.0",
54
52
  "@typespec/http": "^1.14.0",
55
- "@typespec/rest": "^0.84.0"
53
+ "@typespec/rest": "^0.84.0",
54
+ "@typespec/openapi": "^1.14.0",
55
+ "@typespec/versioning": "^0.84.0"
56
56
  },
57
57
  "devDependencies": {
58
- "@azure-tools/typespec-azure-core": "^0.70.0 || >= 0.71.0-dev.4",
58
+ "@azure-tools/typespec-azure-core": "^0.70.0 || >= 0.71.0-dev.7",
59
59
  "@types/node": "^26.0.0",
60
60
  "@types/pluralize": "^0.0.33",
61
61
  "@vitest/coverage-v8": "^4.1.3",
@@ -63,12 +63,12 @@
63
63
  "rimraf": "^6.1.3",
64
64
  "typescript": "~6.0.2",
65
65
  "vitest": "^4.1.3",
66
- "@typespec/compiler": "^1.14.0",
67
66
  "@typespec/http": "^1.14.0",
68
67
  "@typespec/rest": "^0.84.0",
68
+ "@typespec/library-linter": "^0.84.0",
69
69
  "@typespec/tspd": "^0.76.0",
70
70
  "@typespec/versioning": "^0.84.0",
71
- "@typespec/library-linter": "^0.84.0",
71
+ "@typespec/compiler": "^1.14.0",
72
72
  "@typespec/openapi": "^1.14.0"
73
73
  },
74
74
  "scripts": {