@azure-typespec/http-client-csharp-mgmt 1.0.0-alpha.20250519.1 → 1.0.0-alpha.20250520.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.
@@ -1,3 +1,4 @@
1
- import { CodeModel } from "@typespec/http-client-csharp";
1
+ import { CodeModel, InputClient } from "@typespec/http-client-csharp";
2
2
  export declare function updateClients(codeModel: CodeModel): void;
3
+ export declare function getAllClients(codeModel: CodeModel): InputClient[];
3
4
  //# sourceMappingURL=resource-detection.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-detection.d.ts","sourceRoot":"","sources":["../../emitter/src/resource-detection.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,SAAS,EAGV,MAAM,8BAA8B,CAAC;AActC,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,QAsBjD"}
1
+ {"version":3,"file":"resource-detection.d.ts","sourceRoot":"","sources":["../../emitter/src/resource-detection.ts"],"names":[],"mappings":"AAGA,OAAO,EACL,SAAS,EACT,WAAW,EAEZ,MAAM,8BAA8B,CAAC;AAkBtC,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,QAsBjD;AAED,wBAAgB,aAAa,CAAC,SAAS,EAAE,SAAS,GAAG,WAAW,EAAE,CAgBjE"}
@@ -1,7 +1,7 @@
1
1
  // Copyright (c) Microsoft Corporation. All rights reserved.
2
2
  // Licensed under the MIT License. See License.txt in the project root for license information.
3
- import { calculateResourceTypeFromPath } from "./resource-metadata.js";
4
- import { armResourceCreateOrUpdate, armResourceOperations, armResourceRead, resourceMetadata, singleton } from "./sdk-context-options.js";
3
+ import { calculateResourceTypeFromPath, ResourceScope } from "./resource-metadata.js";
4
+ import { armResourceCreateOrUpdate, armResourceOperations, armResourceRead, resourceGroupResource, resourceMetadata, singleton, subscriptionResource, tenantResource } from "./sdk-context-options.js";
5
5
  export function updateClients(codeModel) {
6
6
  // first we flatten all possible clients in the code model
7
7
  const clients = getAllClients(codeModel);
@@ -22,7 +22,7 @@ export function updateClients(codeModel) {
22
22
  }
23
23
  }
24
24
  }
25
- function getAllClients(codeModel) {
25
+ export function getAllClients(codeModel) {
26
26
  const clients = [];
27
27
  for (const client of codeModel.clients) {
28
28
  traverseClient(client);
@@ -72,23 +72,40 @@ function gatherResourceMetadata(client, metadataMap) {
72
72
  }
73
73
  }
74
74
  if (resourceModel && resourceType) {
75
+ // find the scope on its model
75
76
  const metadata = {
76
77
  resourceModel: resourceModel,
77
78
  resourceClient: client,
78
79
  resourceType: resourceType,
79
- isSingleton: isSingleton
80
+ isSingleton: isSingleton,
81
+ resourceScope: getResourceScope(resourceModel)
80
82
  };
81
83
  metadataMap.set(client, metadata);
82
84
  }
83
85
  }
86
+ function getResourceScope(model) {
87
+ const decorators = model.decorators;
88
+ if (decorators?.some((d) => d.name == tenantResource)) {
89
+ return ResourceScope.Tenant;
90
+ }
91
+ else if (decorators?.some((d) => d.name == subscriptionResource)) {
92
+ return ResourceScope.Subscription;
93
+ }
94
+ else if (decorators?.some((d) => d.name == resourceGroupResource)) {
95
+ return ResourceScope.ResourceGroup;
96
+ }
97
+ return ResourceScope.ResourceGroup; // all the templates work as if there is a resource group decorator when there is no such decorator
98
+ }
84
99
  }
85
100
  function addResourceMetadata(client, metadata) {
86
101
  const resourceMetadataDecorator = {
87
102
  name: resourceMetadata,
88
103
  arguments: {
89
104
  resourceModel: metadata.resourceModel.crossLanguageDefinitionId,
105
+ resourceClient: metadata.resourceClient.crossLanguageDefinitionId,
90
106
  isSingleton: metadata.isSingleton,
91
- resourceType: metadata.resourceType
107
+ resourceType: metadata.resourceType,
108
+ resourceScope: metadata.resourceScope
92
109
  }
93
110
  };
94
111
  if (!client.decorators) {
@@ -1 +1 @@
1
- {"version":3,"file":"resource-detection.js","sourceRoot":"","sources":["../../emitter/src/resource-detection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resource-detection.js","sourceRoot":"","sources":["../../emitter/src/resource-detection.ts"],"names":[],"mappings":"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"}
@@ -1,9 +1,15 @@
1
1
  import { InputClient, InputModelType } from "@typespec/http-client-csharp";
2
2
  export declare function calculateResourceTypeFromPath(path: string): string;
3
+ export declare enum ResourceScope {
4
+ Tenant = "Tenant",
5
+ Subscription = "Subscription",
6
+ ResourceGroup = "ResourceGroup"
7
+ }
3
8
  export interface ResourceMetadata {
4
9
  resourceType: string;
5
10
  resourceModel: InputModelType;
6
11
  resourceClient: InputClient;
7
12
  isSingleton: boolean;
13
+ resourceScope: ResourceScope;
8
14
  }
9
15
  //# sourceMappingURL=resource-metadata.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-metadata.d.ts","sourceRoot":"","sources":["../../emitter/src/resource-metadata.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAQ3E,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAqBlE;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,cAAc,CAAC;IAC9B,cAAc,EAAE,WAAW,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;CACtB"}
1
+ {"version":3,"file":"resource-metadata.d.ts","sourceRoot":"","sources":["../../emitter/src/resource-metadata.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAQ3E,wBAAgB,6BAA6B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAqBlE;AAED,oBAAY,aAAa;IACvB,MAAM,WAAW;IACjB,YAAY,iBAAiB;IAC7B,aAAa,kBAAkB;CAChC;AAED,MAAM,WAAW,gBAAgB;IAC/B,YAAY,EAAE,MAAM,CAAC;IACrB,aAAa,EAAE,cAAc,CAAC;IAC9B,cAAc,EAAE,WAAW,CAAC;IAC5B,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,aAAa,CAAC;CAE9B"}
@@ -5,7 +5,7 @@ const SubscriptionScopePrefix = "/subscriptions";
5
5
  const TenantScopePrefix = "/tenants";
6
6
  const Providers = "/providers";
7
7
  export function calculateResourceTypeFromPath(path) {
8
- const providerIndex = path.indexOf(Providers);
8
+ const providerIndex = path.lastIndexOf(Providers);
9
9
  if (providerIndex === -1) {
10
10
  if (path.startsWith(ResourceGroupScopePrefix)) {
11
11
  return "Microsoft.Resources/resourceGroups";
@@ -28,4 +28,10 @@ export function calculateResourceTypeFromPath(path) {
28
28
  return result;
29
29
  }, "");
30
30
  }
31
+ export var ResourceScope;
32
+ (function (ResourceScope) {
33
+ ResourceScope["Tenant"] = "Tenant";
34
+ ResourceScope["Subscription"] = "Subscription";
35
+ ResourceScope["ResourceGroup"] = "ResourceGroup";
36
+ })(ResourceScope || (ResourceScope = {}));
31
37
  //# sourceMappingURL=resource-metadata.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"resource-metadata.js","sourceRoot":"","sources":["../../emitter/src/resource-metadata.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAI/F,MAAM,wBAAwB,GAC5B,gDAAgD,CAAC;AACnD,MAAM,uBAAuB,GAAG,gBAAgB,CAAC;AACjD,MAAM,iBAAiB,GAAG,UAAU,CAAC;AACrC,MAAM,SAAS,GAAG,YAAY,CAAC;AAE/B,MAAM,UAAU,6BAA6B,CAAC,IAAY;IACxD,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC9C,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,CAAC;YAC9C,OAAO,oCAAoC,CAAC;QAC9C,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;YACpD,OAAO,mCAAmC,CAAC;QAC7C,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC9C,OAAO,6BAA6B,CAAC;QACvC,CAAC;QACD,MAAM,QAAQ,IAAI,6BAA6B,CAAC;IAClD,CAAC;IAED,OAAO,IAAI;SACR,SAAS,CAAC,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC;SAC3C,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QACjC,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC;YAChC,OAAO,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,OAAO,EAAE,CAAC;;YACrD,OAAO,MAAM,CAAC;IACrB,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC"}
1
+ {"version":3,"file":"resource-metadata.js","sourceRoot":"","sources":["../../emitter/src/resource-metadata.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAI/F,MAAM,wBAAwB,GAC5B,gDAAgD,CAAC;AACnD,MAAM,uBAAuB,GAAG,gBAAgB,CAAC;AACjD,MAAM,iBAAiB,GAAG,UAAU,CAAC;AACrC,MAAM,SAAS,GAAG,YAAY,CAAC;AAE/B,MAAM,UAAU,6BAA6B,CAAC,IAAY;IACxD,MAAM,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;IAClD,IAAI,aAAa,KAAK,CAAC,CAAC,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,CAAC;YAC9C,OAAO,oCAAoC,CAAC;QAC9C,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,EAAE,CAAC;YACpD,OAAO,mCAAmC,CAAC;QAC7C,CAAC;aAAM,IAAI,IAAI,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC9C,OAAO,6BAA6B,CAAC;QACvC,CAAC;QACD,MAAM,QAAQ,IAAI,6BAA6B,CAAC;IAClD,CAAC;IAED,OAAO,IAAI;SACR,SAAS,CAAC,aAAa,GAAG,SAAS,CAAC,MAAM,CAAC;SAC3C,KAAK,CAAC,GAAG,CAAC;SACV,MAAM,CAAC,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE;QACjC,IAAI,KAAK,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,KAAK,CAAC;YAChC,OAAO,MAAM,KAAK,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,MAAM,IAAI,OAAO,EAAE,CAAC;;YACrD,OAAO,MAAM,CAAC;IACrB,CAAC,EAAE,EAAE,CAAC,CAAC;AACX,CAAC;AAED,MAAM,CAAN,IAAY,aAIX;AAJD,WAAY,aAAa;IACvB,kCAAiB,CAAA;IACjB,8CAA6B,CAAA;IAC7B,gDAA+B,CAAA;AACjC,CAAC,EAJW,aAAa,KAAb,aAAa,QAIxB"}
@@ -4,6 +4,9 @@ export declare const armResourceOperations = "Azure.ResourceManager.@armResource
4
4
  export declare const armResourceRead = "Azure.ResourceManager.@armResourceRead";
5
5
  export declare const armResourceCreateOrUpdate = "Azure.ResourceManager.@armResourceCreateOrUpdate";
6
6
  export declare const singleton = "Azure.ResourceManager.@singleton";
7
+ export declare const subscriptionResource = "Azure.ResourceManager.@subscriptionResource";
8
+ export declare const tenantResource = "Azure.ResourceManager.@tenantResource";
9
+ export declare const resourceGroupResource = "Azure.ResourceManager.@resourceGroupResource";
7
10
  export declare const resourceMetadata = "Azure.ClientGenerator.Core.@resourceSchema";
8
11
  export declare const azureSDKContextOptions: CreateSdkContextOptions;
9
12
  //# sourceMappingURL=sdk-context-options.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk-context-options.d.ts","sourceRoot":"","sources":["../../emitter/src/sdk-context-options.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AAWtF,eAAO,MAAM,cAAc,kCAAkC,CAAC;AAI9D,eAAO,MAAM,qBAAqB,iDACc,CAAC;AAKjD,eAAO,MAAM,eAAe,2CAA2C,CAAC;AAIxE,eAAO,MAAM,yBAAyB,qDACc,CAAC;AAIrD,eAAO,MAAM,SAAS,qCAAqC,CAAC;AAM5D,eAAO,MAAM,gBAAgB,+CAA+C,CAAC;AAI7E,eAAO,MAAM,sBAAsB,EAAE,uBAepC,CAAC"}
1
+ {"version":3,"file":"sdk-context-options.d.ts","sourceRoot":"","sources":["../../emitter/src/sdk-context-options.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AAWtF,eAAO,MAAM,cAAc,kCAAkC,CAAC;AAI9D,eAAO,MAAM,qBAAqB,iDACc,CAAC;AAKjD,eAAO,MAAM,eAAe,2CAA2C,CAAC;AAIxE,eAAO,MAAM,yBAAyB,qDACc,CAAC;AAIrD,eAAO,MAAM,SAAS,qCAAqC,CAAC;AAO5D,eAAO,MAAM,oBAAoB,gDACc,CAAC;AAKhD,eAAO,MAAM,cAAc,0CAA0C,CAAC;AAItE,eAAO,MAAM,qBAAqB,iDACc,CAAC;AAKjD,eAAO,MAAM,gBAAgB,+CAA+C,CAAC;AAI7E,eAAO,MAAM,sBAAsB,EAAE,uBAkBpC,CAAC"}
@@ -20,6 +20,15 @@ const armResourceCreateOrUpdateRegex = "Azure\\.ResourceManager\\.@armResourceCr
20
20
  export const singleton = "Azure.ResourceManager.@singleton";
21
21
  const singletonRegex = "Azure\\.ResourceManager\\.@singleton";
22
22
  const armResourceInternalRegex = "Azure\\.ResourceManager\\.Private\\.@armResourceInternal";
23
+ // https://github.com/Azure/typespec-azure/blob/main/packages/typespec-azure-resource-manager/README.md#subscriptionresource
24
+ export const subscriptionResource = "Azure.ResourceManager.@subscriptionResource";
25
+ const subscriptionResourceRegex = "Azure\\.ResourceManager\\.@subscriptionResource";
26
+ // https://github.com/Azure/typespec-azure/blob/main/packages/typespec-azure-resource-manager/README.md#tenantresource
27
+ export const tenantResource = "Azure.ResourceManager.@tenantResource";
28
+ const tenantResourceRegex = "Azure\\.ResourceManager\\.@tenantResource";
29
+ // https://github.com/Azure/typespec-azure/blob/main/packages/typespec-azure-resource-manager/README.md#resourcegroupresource
30
+ export const resourceGroupResource = "Azure.ResourceManager.@resourceGroupResource";
31
+ const resourceGroupResourceRegex = "Azure\\.ResourceManager\\.@resourceGroupResource";
23
32
  // TODO: add this decorator to TCGC
24
33
  export const resourceMetadata = "Azure.ClientGenerator.Core.@resourceSchema";
25
34
  const resourceMetadataRegex = "Azure\\.ClientGenerator\\.Core\\.@resourceSchema";
@@ -37,6 +46,9 @@ export const azureSDKContextOptions = {
37
46
  parentResourceRegex,
38
47
  singletonRegex,
39
48
  armResourceInternalRegex,
49
+ subscriptionResourceRegex,
50
+ resourceGroupResourceRegex,
51
+ tenantResourceRegex
40
52
  ]
41
53
  };
42
54
  //# sourceMappingURL=sdk-context-options.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"sdk-context-options.js","sourceRoot":"","sources":["../../emitter/src/sdk-context-options.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAI/F,iIAAiI;AACjI,MAAM,+BAA+B,GACnC,8DAA8D,CAAC;AAEjE,4HAA4H;AAC5H,MAAM,yBAAyB,GAC7B,iDAAiD,CAAC;AAEpD,yFAAyF;AACzF,MAAM,CAAC,MAAM,cAAc,GAAG,+BAA+B,CAAC;AAC9D,MAAM,mBAAmB,GAAG,mCAAmC,CAAC;AAEhE,6HAA6H;AAC7H,MAAM,CAAC,MAAM,qBAAqB,GAChC,8CAA8C,CAAC;AACjD,MAAM,0BAA0B,GAC9B,kDAAkD,CAAC;AAErD,uHAAuH;AACvH,MAAM,CAAC,MAAM,eAAe,GAAG,wCAAwC,CAAC;AACxE,MAAM,oBAAoB,GAAG,4CAA4C,CAAC;AAE1E,iIAAiI;AACjI,MAAM,CAAC,MAAM,yBAAyB,GACpC,kDAAkD,CAAC;AACrD,MAAM,8BAA8B,GAClC,sDAAsD,CAAC;AACzD,iHAAiH;AACjH,MAAM,CAAC,MAAM,SAAS,GAAG,kCAAkC,CAAC;AAC5D,MAAM,cAAc,GAAG,sCAAsC,CAAC;AAE9D,MAAM,wBAAwB,GAAG,0DAA0D,CAAC;AAE5F,mCAAmC;AACnC,MAAM,CAAC,MAAM,gBAAgB,GAAG,4CAA4C,CAAC;AAC7E,MAAM,qBAAqB,GACzB,kDAAkD,CAAC;AAErD,MAAM,CAAC,MAAM,sBAAsB,GAA4B;IAC7D,UAAU,EAAE;QACV,kBAAkB,EAAE,WAAW;KAChC;IACD,oBAAoB,EAAE;QACpB,+BAA+B;QAC/B,qBAAqB;QACrB,yBAAyB;QACzB,0BAA0B;QAC1B,8BAA8B;QAC9B,oBAAoB;QACpB,mBAAmB;QACnB,cAAc;QACd,wBAAwB;KACzB;CACF,CAAC"}
1
+ {"version":3,"file":"sdk-context-options.js","sourceRoot":"","sources":["../../emitter/src/sdk-context-options.ts"],"names":[],"mappings":"AAAA,4DAA4D;AAC5D,+FAA+F;AAI/F,iIAAiI;AACjI,MAAM,+BAA+B,GACnC,8DAA8D,CAAC;AAEjE,4HAA4H;AAC5H,MAAM,yBAAyB,GAC7B,iDAAiD,CAAC;AAEpD,yFAAyF;AACzF,MAAM,CAAC,MAAM,cAAc,GAAG,+BAA+B,CAAC;AAC9D,MAAM,mBAAmB,GAAG,mCAAmC,CAAC;AAEhE,6HAA6H;AAC7H,MAAM,CAAC,MAAM,qBAAqB,GAChC,8CAA8C,CAAC;AACjD,MAAM,0BAA0B,GAC9B,kDAAkD,CAAC;AAErD,uHAAuH;AACvH,MAAM,CAAC,MAAM,eAAe,GAAG,wCAAwC,CAAC;AACxE,MAAM,oBAAoB,GAAG,4CAA4C,CAAC;AAE1E,iIAAiI;AACjI,MAAM,CAAC,MAAM,yBAAyB,GACpC,kDAAkD,CAAC;AACrD,MAAM,8BAA8B,GAClC,sDAAsD,CAAC;AACzD,iHAAiH;AACjH,MAAM,CAAC,MAAM,SAAS,GAAG,kCAAkC,CAAC;AAC5D,MAAM,cAAc,GAAG,sCAAsC,CAAC;AAE9D,MAAM,wBAAwB,GAC5B,0DAA0D,CAAC;AAE7D,4HAA4H;AAC5H,MAAM,CAAC,MAAM,oBAAoB,GAC/B,6CAA6C,CAAC;AAChD,MAAM,yBAAyB,GAC7B,iDAAiD,CAAC;AAEpD,sHAAsH;AACtH,MAAM,CAAC,MAAM,cAAc,GAAG,uCAAuC,CAAC;AACtE,MAAM,mBAAmB,GAAG,2CAA2C,CAAC;AAExE,6HAA6H;AAC7H,MAAM,CAAC,MAAM,qBAAqB,GAChC,8CAA8C,CAAC;AACjD,MAAM,0BAA0B,GAC9B,kDAAkD,CAAC;AAErD,mCAAmC;AACnC,MAAM,CAAC,MAAM,gBAAgB,GAAG,4CAA4C,CAAC;AAC7E,MAAM,qBAAqB,GACzB,kDAAkD,CAAC;AAErD,MAAM,CAAC,MAAM,sBAAsB,GAA4B;IAC7D,UAAU,EAAE;QACV,kBAAkB,EAAE,WAAW;KAChC;IACD,oBAAoB,EAAE;QACpB,+BAA+B;QAC/B,qBAAqB;QACrB,yBAAyB;QACzB,0BAA0B;QAC1B,8BAA8B;QAC9B,oBAAoB;QACpB,mBAAmB;QACnB,cAAc;QACd,wBAAwB;QACxB,yBAAyB;QACzB,0BAA0B;QAC1B,mBAAmB;KACpB;CACF,CAAC"}
@@ -6,7 +6,7 @@
6
6
  "compilationOptions": {},
7
7
  "targets": {
8
8
  ".NETCoreApp,Version=v8.0": {
9
- "Azure.Generator.Management/1.0.0-alpha.20250519.1": {
9
+ "Azure.Generator.Management/1.0.0-alpha.20250521.1": {
10
10
  "dependencies": {
11
11
  "Azure.Core": "1.46.1",
12
12
  "Azure.Generator": "1.0.0-alpha.20250515.2",
@@ -618,7 +618,7 @@
618
618
  }
619
619
  },
620
620
  "libraries": {
621
- "Azure.Generator.Management/1.0.0-alpha.20250519.1": {
621
+ "Azure.Generator.Management/1.0.0-alpha.20250521.1": {
622
622
  "type": "project",
623
623
  "serviceable": false,
624
624
  "sha512": ""
@@ -35,6 +35,11 @@
35
35
  <member name="M:Azure.Generator.Management.ManagementInputLibrary.#ctor(System.String)">
36
36
  <inheritdoc/>
37
37
  </member>
38
+ <member name="P:Azure.Generator.Management.ManagementInputLibrary.AllClients">
39
+ <summary>
40
+ All clients in the input library, including the subclients.
41
+ </summary>
42
+ </member>
38
43
  <member name="T:Azure.Generator.Management.ManagementOutputLibrary">
39
44
  <inheritdoc/>
40
45
  </member>
@@ -6,7 +6,7 @@
6
6
  "compilationOptions": {},
7
7
  "targets": {
8
8
  ".NETCoreApp,Version=v8.0": {
9
- "Azure.Generator.Management/1.0.0-alpha.20250519.1": {
9
+ "Azure.Generator.Management/1.0.0-alpha.20250521.1": {
10
10
  "dependencies": {
11
11
  "Azure.Core": "1.46.1",
12
12
  "Azure.Generator": "1.0.0-alpha.20250515.2",
@@ -618,7 +618,7 @@
618
618
  }
619
619
  },
620
620
  "libraries": {
621
- "Azure.Generator.Management/1.0.0-alpha.20250519.1": {
621
+ "Azure.Generator.Management/1.0.0-alpha.20250521.1": {
622
622
  "type": "project",
623
623
  "serviceable": false,
624
624
  "sha512": ""
@@ -35,6 +35,11 @@
35
35
  <member name="M:Azure.Generator.Management.ManagementInputLibrary.#ctor(System.String)">
36
36
  <inheritdoc/>
37
37
  </member>
38
+ <member name="P:Azure.Generator.Management.ManagementInputLibrary.AllClients">
39
+ <summary>
40
+ All clients in the input library, including the subclients.
41
+ </summary>
42
+ </member>
38
43
  <member name="T:Azure.Generator.Management.ManagementOutputLibrary">
39
44
  <inheritdoc/>
40
45
  </member>
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@azure-typespec/http-client-csharp-mgmt",
3
- "version": "1.0.0-alpha.20250519.1",
3
+ "version": "1.0.0-alpha.20250520.1",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "TypeSpec library for emitting Azure management libraries for C#.",
6
6
  "readme": "https://github.com/Azure/azure-sdk-for-net/blob/main/eng/packages/http-client-csharp-mgmt/README.md",