@azure-tools/typespec-azure-resource-manager 0.27.0

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.
Files changed (115) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +346 -0
  3. package/dist/src/common-types.d.ts +8 -0
  4. package/dist/src/common-types.d.ts.map +1 -0
  5. package/dist/src/common-types.js +14 -0
  6. package/dist/src/common-types.js.map +1 -0
  7. package/dist/src/index.d.ts +7 -0
  8. package/dist/src/index.d.ts.map +1 -0
  9. package/dist/src/index.js +7 -0
  10. package/dist/src/index.js.map +1 -0
  11. package/dist/src/internal.d.ts +44 -0
  12. package/dist/src/internal.d.ts.map +1 -0
  13. package/dist/src/internal.js +142 -0
  14. package/dist/src/internal.js.map +1 -0
  15. package/dist/src/lib.d.ts +615 -0
  16. package/dist/src/lib.d.ts.map +1 -0
  17. package/dist/src/lib.js +250 -0
  18. package/dist/src/lib.js.map +1 -0
  19. package/dist/src/linter.d.ts +3 -0
  20. package/dist/src/linter.d.ts.map +1 -0
  21. package/dist/src/linter.js +42 -0
  22. package/dist/src/linter.js.map +1 -0
  23. package/dist/src/namespace.d.ts +16 -0
  24. package/dist/src/namespace.d.ts.map +1 -0
  25. package/dist/src/namespace.js +106 -0
  26. package/dist/src/namespace.js.map +1 -0
  27. package/dist/src/operations.d.ts +36 -0
  28. package/dist/src/operations.d.ts.map +1 -0
  29. package/dist/src/operations.js +186 -0
  30. package/dist/src/operations.js.map +1 -0
  31. package/dist/src/resource.d.ts +81 -0
  32. package/dist/src/resource.d.ts.map +1 -0
  33. package/dist/src/resource.js +358 -0
  34. package/dist/src/resource.js.map +1 -0
  35. package/dist/src/rules/arm-resource-action-no-segment.d.ts +2 -0
  36. package/dist/src/rules/arm-resource-action-no-segment.d.ts.map +1 -0
  37. package/dist/src/rules/arm-resource-action-no-segment.js +31 -0
  38. package/dist/src/rules/arm-resource-action-no-segment.js.map +1 -0
  39. package/dist/src/rules/arm-resource-invalid-chars.d.ts +2 -0
  40. package/dist/src/rules/arm-resource-invalid-chars.d.ts.map +1 -0
  41. package/dist/src/rules/arm-resource-invalid-chars.js +61 -0
  42. package/dist/src/rules/arm-resource-invalid-chars.js.map +1 -0
  43. package/dist/src/rules/arm-resource-invalid-version-format.d.ts +2 -0
  44. package/dist/src/rules/arm-resource-invalid-version-format.d.ts.map +1 -0
  45. package/dist/src/rules/arm-resource-invalid-version-format.js +48 -0
  46. package/dist/src/rules/arm-resource-invalid-version-format.js.map +1 -0
  47. package/dist/src/rules/arm-resource-operations.d.ts +2 -0
  48. package/dist/src/rules/arm-resource-operations.d.ts.map +1 -0
  49. package/dist/src/rules/arm-resource-operations.js +70 -0
  50. package/dist/src/rules/arm-resource-operations.js.map +1 -0
  51. package/dist/src/rules/arm-resource-properties.d.ts +2 -0
  52. package/dist/src/rules/arm-resource-properties.d.ts.map +1 -0
  53. package/dist/src/rules/arm-resource-properties.js +55 -0
  54. package/dist/src/rules/arm-resource-properties.js.map +1 -0
  55. package/dist/src/rules/arm-resource-provisioning-state-rule.d.ts +2 -0
  56. package/dist/src/rules/arm-resource-provisioning-state-rule.d.ts.map +1 -0
  57. package/dist/src/rules/arm-resource-provisioning-state-rule.js +62 -0
  58. package/dist/src/rules/arm-resource-provisioning-state-rule.js.map +1 -0
  59. package/dist/src/rules/beyond-nesting-levels.d.ts +5 -0
  60. package/dist/src/rules/beyond-nesting-levels.d.ts.map +1 -0
  61. package/dist/src/rules/beyond-nesting-levels.js +37 -0
  62. package/dist/src/rules/beyond-nesting-levels.js.map +1 -0
  63. package/dist/src/rules/core-operations.d.ts +2 -0
  64. package/dist/src/rules/core-operations.d.ts.map +1 -0
  65. package/dist/src/rules/core-operations.js +181 -0
  66. package/dist/src/rules/core-operations.js.map +1 -0
  67. package/dist/src/rules/delete-operation.d.ts +5 -0
  68. package/dist/src/rules/delete-operation.d.ts.map +1 -0
  69. package/dist/src/rules/delete-operation.js +28 -0
  70. package/dist/src/rules/delete-operation.js.map +1 -0
  71. package/dist/src/rules/envelope-properties.d.ts +5 -0
  72. package/dist/src/rules/envelope-properties.d.ts.map +1 -0
  73. package/dist/src/rules/envelope-properties.js +62 -0
  74. package/dist/src/rules/envelope-properties.js.map +1 -0
  75. package/dist/src/rules/list-operation.d.ts +5 -0
  76. package/dist/src/rules/list-operation.d.ts.map +1 -0
  77. package/dist/src/rules/list-operation.js +35 -0
  78. package/dist/src/rules/list-operation.js.map +1 -0
  79. package/dist/src/rules/no-response-body.d.ts +5 -0
  80. package/dist/src/rules/no-response-body.d.ts.map +1 -0
  81. package/dist/src/rules/no-response-body.js +27 -0
  82. package/dist/src/rules/no-response-body.js.map +1 -0
  83. package/dist/src/rules/operations-interface-missing.d.ts +5 -0
  84. package/dist/src/rules/operations-interface-missing.d.ts.map +1 -0
  85. package/dist/src/rules/operations-interface-missing.js +37 -0
  86. package/dist/src/rules/operations-interface-missing.js.map +1 -0
  87. package/dist/src/rules/resource-name.d.ts +5 -0
  88. package/dist/src/rules/resource-name.d.ts.map +1 -0
  89. package/dist/src/rules/resource-name.js +47 -0
  90. package/dist/src/rules/resource-name.js.map +1 -0
  91. package/dist/src/rules/retry-after.d.ts +5 -0
  92. package/dist/src/rules/retry-after.d.ts.map +1 -0
  93. package/dist/src/rules/retry-after.js +31 -0
  94. package/dist/src/rules/retry-after.js.map +1 -0
  95. package/dist/src/rules/unsupported-types.d.ts +5 -0
  96. package/dist/src/rules/unsupported-types.d.ts.map +1 -0
  97. package/dist/src/rules/unsupported-types.js +39 -0
  98. package/dist/src/rules/unsupported-types.js.map +1 -0
  99. package/dist/src/rules/utils.d.ts +18 -0
  100. package/dist/src/rules/utils.d.ts.map +1 -0
  101. package/dist/src/rules/utils.js +77 -0
  102. package/dist/src/rules/utils.js.map +1 -0
  103. package/dist/src/testing/index.d.ts +3 -0
  104. package/dist/src/testing/index.d.ts.map +1 -0
  105. package/dist/src/testing/index.js +24 -0
  106. package/dist/src/testing/index.js.map +1 -0
  107. package/lib/arm.foundations.tsp +465 -0
  108. package/lib/arm.tsp +31 -0
  109. package/lib/decorators.tsp +87 -0
  110. package/lib/interfaces.tsp +287 -0
  111. package/lib/models.tsp +203 -0
  112. package/lib/operations.tsp +260 -0
  113. package/lib/parameters.tsp +126 -0
  114. package/lib/responses.tsp +47 -0
  115. package/package.json +85 -0
@@ -0,0 +1,260 @@
1
+ using TypeSpec.Http;
2
+ using TypeSpec.Rest;
3
+ using OpenAPI;
4
+ using Autorest;
5
+ using Azure.ResourceManager.Foundations;
6
+
7
+ namespace Azure.ResourceManager;
8
+
9
+ // OPERATION TEMPLATES
10
+ @autoRoute
11
+ @doc("List {name} resources by subscription ID", TResource)
12
+ @list(TResource)
13
+ @segmentOf(TResource)
14
+ @armResourceList(TResource)
15
+ @get
16
+ op ArmListBySubscription<TResource extends ArmResource>(
17
+ ...SubscriptionScope<TResource>
18
+ ): ArmResponse<ResourceListResult<TResource>> | ErrorResponse;
19
+
20
+ @get
21
+ @autoRoute
22
+ @list(TResource)
23
+ @segmentOf(TResource)
24
+ @armRenameListByOperation(TResource, TParentName, TParentFriendlyName) // This must come before @armResourceList!
25
+ @armResourceList(TResource)
26
+ op ArmResourceListByParent<
27
+ TResource extends ArmResource,
28
+ TBaseParameters = BaseParameters<TResource>,
29
+ TParentName = "",
30
+ TParentFriendlyName = ""
31
+ >(
32
+ ...ResourceParentParameters<TResource, TBaseParameters>
33
+ ): ArmResponse<ResourceListResult<TResource>> | ErrorResponse;
34
+
35
+ @get
36
+ @autoRoute
37
+ @list(TResource)
38
+ @segmentOf(TResource)
39
+ @armRenameListByOperation(TResource) // This must come before @armResourceList!
40
+ @armResourceList(TResource)
41
+ op ArmResourceListAtScope<
42
+ TResource extends ArmResource,
43
+ TBaseParameters = BaseParameters<TResource>
44
+ >(
45
+ ...ResourceParentParameters<TResource, TBaseParameters>
46
+ ): ArmResponse<ResourceListResult<TResource>> | ErrorResponse;
47
+
48
+ @autoRoute
49
+ @doc("Get a {name}", TResource)
50
+ @get
51
+ @armResourceRead(TResource)
52
+ op ArmResourceRead<TResource extends ArmResource, TBaseParameters = BaseParameters<TResource>>(
53
+ ...ResourceInstanceParameters<TResource, TBaseParameters>
54
+ ): ArmResponse<TResource> | ErrorResponse;
55
+
56
+ @autoRoute
57
+ @doc("Create a {name}", TResource)
58
+ @extension("x-ms-long-running-operation", true)
59
+ @extension(
60
+ "x-ms-long-running-operation-options",
61
+ {
62
+ `final-state-via`: "azure-async-operation",
63
+ }
64
+ )
65
+ @armResourceCreateOrUpdate(TResource)
66
+ @put
67
+ op ArmResourceCreateOrUpdateAsync<
68
+ TResource extends ArmResource,
69
+ TBaseParameters = BaseParameters<TResource>
70
+ >(
71
+ ...ResourceInstanceParameters<TResource, TBaseParameters>,
72
+
73
+ @doc("Resource create parameters.")
74
+ @body
75
+ resource: TResource
76
+ ): ArmResponse<TResource> | ArmCreatedResponse<TResource> | ErrorResponse;
77
+
78
+ @autoRoute
79
+ @doc("Create a {name}", TResource)
80
+ @armResourceCreateOrUpdate(TResource)
81
+ @put
82
+ op ArmResourceCreateOrUpdateSync<
83
+ TResource extends ArmResource,
84
+ TBaseParameters = BaseParameters<TResource>
85
+ >(
86
+ ...ResourceInstanceParameters<TResource, TBaseParameters>,
87
+
88
+ @doc("Resource create parameters.")
89
+ @body
90
+ resource: TResource
91
+ ): ArmResponse<TResource> | ErrorResponse;
92
+
93
+ alias ArmTagsPatchAsync<
94
+ TResource extends ArmResource,
95
+ TProperties extends object,
96
+ TBaseParameters = BaseParameters<TResource>
97
+ > = ArmCustomPatchAsync<TResource, TagsUpdateModel<TResource>, TBaseParameters>;
98
+
99
+ alias ArmResourcePatchAsync<
100
+ TResource extends ArmResource,
101
+ TProperties extends object,
102
+ TBaseParameters = BaseParameters<TResource>
103
+ > = ArmCustomPatchAsync<TResource, ResourceUpdateModel<TResource, TProperties>, TBaseParameters>;
104
+
105
+ @autoRoute
106
+ @doc("Update a {name}", TResource)
107
+ @extension("x-ms-long-running-operation", true)
108
+ @extension(
109
+ "x-ms-long-running-operation-options",
110
+ {
111
+ `final-state-via`: "azure-async-operation",
112
+ }
113
+ )
114
+ @armResourceUpdate(TResource)
115
+ @patch
116
+ op ArmCustomPatchAsync<
117
+ TResource extends ArmResource,
118
+ TPatchModel extends object = TagsUpdateModel<TResource>,
119
+ TBaseParameters = BaseParameters<TResource>
120
+ >(
121
+ ...ResourceInstanceParameters<TResource, TBaseParameters>,
122
+
123
+ @doc("The resource properties to be updated.")
124
+ @body
125
+ properties: TPatchModel
126
+ ): ArmResponse<TResource> | ArmAcceptedResponse<"Resource update request accepted."> | ErrorResponse;
127
+
128
+ alias ArmTagsPatchSync<
129
+ TResource extends ArmResource,
130
+ TBaseParameters = BaseParameters<TResource>
131
+ > = ArmCustomPatchSync<TResource, TagsUpdateModel<TResource>, TBaseParameters>;
132
+
133
+ alias ArmResourcePatchSync<
134
+ TResource extends ArmResource,
135
+ TProperties extends object,
136
+ TBaseParameters = BaseParameters<TResource>
137
+ > = ArmCustomPatchSync<TResource, ResourceUpdateModel<TResource, TProperties>, TBaseParameters>;
138
+
139
+ @autoRoute
140
+ @doc("Update a {name}", TResource)
141
+ @armResourceUpdate(TResource)
142
+ @patch
143
+ op ArmCustomPatchSync<
144
+ TResource extends ArmResource,
145
+ TPatchModel extends object = TagsUpdateModel<TResource>,
146
+ TBaseParameters = BaseParameters<TResource>
147
+ >(
148
+ ...ResourceInstanceParameters<TResource, TBaseParameters>,
149
+
150
+ @doc("The resource properties to be updated.")
151
+ @body
152
+ properties: TPatchModel
153
+ ): ArmResponse<TResource> | ErrorResponse;
154
+
155
+ @autoRoute
156
+ @doc("Delete a {name}", TResource)
157
+ @extension("x-ms-long-running-operation", true)
158
+ @extension(
159
+ "x-ms-long-running-operation-options",
160
+ {
161
+ `final-state-via`: "azure-async-operation",
162
+ }
163
+ )
164
+ @armResourceDelete(TResource)
165
+ @delete
166
+ op ArmResourceDeleteAsync<
167
+ TResource extends ArmResource,
168
+ TBaseParameters = BaseParameters<TResource>
169
+ >(...ResourceInstanceParameters<TResource, TBaseParameters>):
170
+ | ArmDeletedResponse
171
+ | ArmDeleteAcceptedResponse
172
+ | ArmDeletedNoContentResponse
173
+ | ErrorResponse;
174
+
175
+ @autoRoute
176
+ @doc("Delete a {name}", TResource)
177
+ @armResourceDelete(TResource)
178
+ @delete
179
+ op ArmResourceDeleteSync<
180
+ TResource extends ArmResource,
181
+ TBaseParameters = BaseParameters<TResource>
182
+ >(
183
+ ...ResourceInstanceParameters<TResource, TBaseParameters>
184
+ ): ArmDeletedResponse | ArmDeletedNoContentResponse | ErrorResponse;
185
+
186
+ @autoRoute
187
+ @extension("x-ms-long-running-operation", true)
188
+ @extension(
189
+ "x-ms-long-running-operation-options",
190
+ {
191
+ `final-state-via`: "azure-async-operation",
192
+ }
193
+ )
194
+ @armResourceAction(TResource)
195
+ @post
196
+ op ArmResourceActionAsync<
197
+ TResource extends ArmResource,
198
+ TRequest extends object,
199
+ TResponse extends object,
200
+ TBaseParameters = BaseParameters<TResource>
201
+ >(
202
+ ...ResourceInstanceParameters<TResource, TBaseParameters>,
203
+
204
+ @doc("The content of the action request")
205
+ @body
206
+ body: TRequest
207
+ ): ArmResponse<TResponse> | ArmAcceptedResponse | ErrorResponse;
208
+
209
+ @autoRoute
210
+ @armResourceAction(TResource)
211
+ @post
212
+ op ArmResourceActionSync<
213
+ TResource extends ArmResource,
214
+ TRequest extends object,
215
+ TResponse extends object,
216
+ TBaseParameters = BaseParameters<TResource>
217
+ >(
218
+ ...ResourceInstanceParameters<TResource, TBaseParameters>,
219
+
220
+ @doc("The content of the action request")
221
+ @body
222
+ body: TRequest
223
+ ): ArmResponse<TResponse> | ErrorResponse;
224
+
225
+ @autoRoute
226
+ @extension("x-ms-long-running-operation", true)
227
+ @extension(
228
+ "x-ms-long-running-operation-options",
229
+ {
230
+ `final-state-via`: "azure-async-operation",
231
+ }
232
+ )
233
+ @armResourceAction(TResource)
234
+ @post
235
+ op ArmResourceActionNoContentAsync<
236
+ TResource extends ArmResource,
237
+ TRequest extends object,
238
+ TBaseParameters = BaseParameters<TResource>
239
+ >(
240
+ ...ResourceInstanceParameters<TResource, TBaseParameters>,
241
+
242
+ @doc("The content of the action request")
243
+ @body
244
+ body: TRequest
245
+ ): ArmNoContentResponse<"Action completed successfully."> | ArmAcceptedResponse | ErrorResponse;
246
+
247
+ @autoRoute
248
+ @armResourceAction(TResource)
249
+ @post
250
+ op ArmResourceActionNoContentSync<
251
+ TResource extends ArmResource,
252
+ TRequest extends object,
253
+ TBaseParameters = BaseParameters<TResource>
254
+ >(
255
+ ...ResourceInstanceParameters<TResource, TBaseParameters>,
256
+
257
+ @doc("The content of the action request")
258
+ @body
259
+ body: TRequest
260
+ ): ArmNoContentResponse<"Action completed successfully."> | ErrorResponse;
@@ -0,0 +1,126 @@
1
+ using TypeSpec.Http;
2
+ using TypeSpec.Rest;
3
+ using OpenAPI;
4
+ using Azure.ResourceManager.Foundations;
5
+
6
+ namespace Azure.ResourceManager;
7
+
8
+ /**
9
+ * The default api-version parameter type.
10
+ */
11
+ @doc("The default api-version parameter type.")
12
+ model ApiVersionParameter {
13
+ @query("api-version")
14
+ @minLength(1)
15
+ @doc("The API version to use for this operation.")
16
+ @armCommonParameter("ApiVersionParameter")
17
+ @resourceParameterBaseFor(
18
+ [
19
+ ResourceHome.ResourceGroup,
20
+ ResourceHome.Subscription,
21
+ ResourceHome.Location,
22
+ ResourceHome.Tenant,
23
+ ResourceHome.Extension
24
+ ]
25
+ )
26
+ apiVersion: string;
27
+ }
28
+
29
+ /**
30
+ * The default subscriptionId parameter type.
31
+ */
32
+ @doc("The default subscriptionId parameter type.")
33
+ model SubscriptionIdParameter {
34
+ @path
35
+ @minLength(1)
36
+ @segment("subscriptions")
37
+ @doc("The ID of the target subscription.")
38
+ @armCommonParameter("SubscriptionIdParameter")
39
+ @resourceParameterBaseFor(
40
+ [ResourceHome.ResourceGroup, ResourceHome.Subscription, ResourceHome.Location]
41
+ )
42
+ subscriptionId: string;
43
+ }
44
+
45
+ /**
46
+ * The default subscriptionId parameter type.
47
+ */
48
+ @doc("The default subscriptionId parameter type.")
49
+ model LocationParameter {
50
+ @path
51
+ @minLength(1)
52
+ @segment("locations")
53
+ @doc("The location name.")
54
+ @resourceParameterBaseFor([ResourceHome.Location])
55
+ location: string;
56
+ }
57
+
58
+ /**
59
+ * The default resource group parameter type.
60
+ */
61
+ @doc("The default resource group parameter type.")
62
+ model ResourceGroupParameter {
63
+ @path
64
+ @minLength(1)
65
+ @maxLength(90)
66
+ @segment("resourceGroups")
67
+ @pattern("^[-\\w\\._\\(\\)]+$")
68
+ @doc("The name of the resource group. The name is case insensitive.")
69
+ @armCommonParameter("ResourceGroupNameParameter")
70
+ @resourceParameterBaseFor([ResourceHome.ResourceGroup])
71
+ resourceGroupName: string;
72
+ }
73
+
74
+ /**
75
+ * The default resourceUri parameter type.
76
+ */
77
+ @doc("The default resourceUri parameter type.")
78
+ model ResourceUriParameter {
79
+ @path
80
+ @doc("The fully qualified Azure Resource manager identifier of the resource.")
81
+ @extension("x-ms-skip-url-encoding", true)
82
+ @resourceParameterBaseFor([ResourceHome.Extension])
83
+ resourceUri: string;
84
+ }
85
+
86
+ /**
87
+ * The dynamic parameters of a resource instance - pass in the proper base type to indicate
88
+ * where the resource is based. The default is in a resource group
89
+ */
90
+ model ResourceInstanceParameters<
91
+ TResource extends ArmResource,
92
+ TBaseParameters = BaseParameters<TResource>
93
+ > {
94
+ ...TBaseParameters;
95
+ ...ProviderNamespace<TResource>;
96
+ ...KeysOf<TResource>;
97
+ }
98
+
99
+ /**
100
+ * The dynamic parameters of a list call for a resource instance - pass in the proper base type to indicate
101
+ * where the list should take place. The default is in a resource group
102
+ */
103
+ model ResourceParentParameters<
104
+ TResource extends ArmResource,
105
+ TBaseParameters = BaseParameters<TResource>
106
+ > {
107
+ ...TBaseParameters;
108
+ ...ProviderNamespace<TResource>;
109
+ ...ParentKeysOf<TResource>;
110
+ }
111
+
112
+ /**
113
+ * The dynamic parameters of a list call for an extension resource instance.
114
+ */
115
+ alias ExtensionResourceInstanceParameters<TResource extends ArmResource> = ResourceInstanceParameters<
116
+ TResource,
117
+ ExtensionBaseParameters
118
+ >;
119
+
120
+ /**
121
+ * The dynamic parameters of a list call for a tenant resource instance.
122
+ */
123
+ alias TenantInstanceParameters<TResource extends ArmResource> = ResourceInstanceParameters<
124
+ TResource,
125
+ TenantBaseParameters
126
+ >;
@@ -0,0 +1,47 @@
1
+ using TypeSpec.Http;
2
+ using TypeSpec.Rest;
3
+ using OpenAPI;
4
+ using Azure.ResourceManager.Foundations;
5
+
6
+ namespace Azure.ResourceManager;
7
+
8
+ @doc("ARM operation completed successfully.")
9
+ model ArmResponse<T> {
10
+ ...OkResponse;
11
+ ...Body<T>;
12
+ }
13
+
14
+ @doc("ARM create operation completed successfully.")
15
+ model ArmCreatedResponse<T> {
16
+ ...CreatedResponse;
17
+ ...Azure.Core.Foundations.RetryAfterHeader;
18
+ ...Body<T>;
19
+ }
20
+
21
+ @doc("Resource deleted successfully.")
22
+ model ArmDeletedResponse {
23
+ ...OkResponse;
24
+ }
25
+
26
+ model ArmDeleteAcceptedResponse is ArmAcceptedResponse<"Resource deletion accepted.">;
27
+
28
+ @doc(TMessage)
29
+ model ArmAcceptedResponse<TMessage extends string = "Resource operation accepted."> {
30
+ ...AcceptedResponse;
31
+ ...Azure.Core.Foundations.RetryAfterHeader;
32
+ }
33
+
34
+ model ArmDeletedNoContentResponse is ArmNoContentResponse<"Resource deleted successfully.">;
35
+
36
+ @doc(TMessage)
37
+ model ArmNoContentResponse<TMessage extends string = "Operation completed successfully."> {
38
+ ...NoContentResponse;
39
+ }
40
+
41
+ @error
42
+ @armCommonDefinition
43
+ @doc("Common error response for all Azure Resource Manager APIs to return error details for failed operations.")
44
+ model ErrorResponse {
45
+ @doc("The error object.")
46
+ error?: ErrorDetail;
47
+ }
package/package.json ADDED
@@ -0,0 +1,85 @@
1
+ {
2
+ "name": "@azure-tools/typespec-azure-resource-manager",
3
+ "version": "0.27.0",
4
+ "author": "Microsoft Corporation",
5
+ "description": "TypeSpec Azure Resource Manager library",
6
+ "homepage": "https://azure.github.io/typespec-azure",
7
+ "readme": "https://github.com/Microsoft/typespec/blob/master/README.md",
8
+ "license": "MIT",
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/Microsoft/typespec.git"
12
+ },
13
+ "bugs": {
14
+ "url": "https://github.com/Microsot/typespec/issues"
15
+ },
16
+ "keywords": [
17
+ "typespec"
18
+ ],
19
+ "main": "dist/src/index.js",
20
+ "tspMain": "lib/arm.tsp",
21
+ "exports": {
22
+ ".": "./dist/src/index.js",
23
+ "./testing": "./dist/src/testing/index.js"
24
+ },
25
+ "typesVersions": {
26
+ "*": {
27
+ "*": [
28
+ "./dist/src/index.d.ts"
29
+ ],
30
+ "testing": [
31
+ "./dist/src/testing/index.d.ts"
32
+ ]
33
+ }
34
+ },
35
+ "type": "module",
36
+ "engines": {
37
+ "node": ">=16.0.0"
38
+ },
39
+ "files": [
40
+ "lib/*.tsp",
41
+ "dist/**",
42
+ "!dist/test/**"
43
+ ],
44
+ "peerDependencies": {
45
+ "@typespec/compiler": "~0.41.0",
46
+ "@azure-tools/typespec-azure-core": "~0.27.0",
47
+ "@azure-tools/typespec-autorest": "~0.27.0",
48
+ "@typespec/openapi": "~0.41.0",
49
+ "@typespec/rest": "~0.41.0",
50
+ "@typespec/http": "~0.41.0",
51
+ "@typespec/versioning": "~0.41.0"
52
+ },
53
+ "dependencies": {
54
+ "@typespec/lint": "~0.41.0"
55
+ },
56
+ "devDependencies": {
57
+ "@typespec/compiler": "~0.41.0",
58
+ "@typespec/openapi": "~0.41.0",
59
+ "@azure-tools/typespec-azure-core": "~0.27.0",
60
+ "@azure-tools/typespec-autorest": "~0.27.0",
61
+ "@typespec/rest": "~0.41.0",
62
+ "@typespec/http": "~0.41.0",
63
+ "@typespec/versioning": "~0.41.0",
64
+ "@types/mocha": "~10.0.0",
65
+ "@types/node": "~18.11.9",
66
+ "@typespec/eslint-config-typespec": "~0.6.0",
67
+ "@typespec/library-linter": "~0.41.0",
68
+ "@typespec/eslint-plugin": "~0.41.0",
69
+ "eslint": "^8.12.0",
70
+ "mocha": "~10.1.0",
71
+ "c8": "~7.12.0",
72
+ "rimraf": "~3.0.2",
73
+ "typescript": "~4.9.3"
74
+ },
75
+ "scripts": {
76
+ "clean": "rimraf ./dist ./temp",
77
+ "build": "tsc -p . && npm run lint-typespec-library",
78
+ "watch": "tsc -p . --watch",
79
+ "lint-typespec-library": "tsp compile . --warn-as-error --import @typespec/library-linter --no-emit",
80
+ "test": "mocha",
81
+ "test-official": "c8 mocha --forbid-only",
82
+ "lint": "eslint . --ext .ts --max-warnings=0",
83
+ "lint:fix": "eslint . --fix --ext .ts"
84
+ }
85
+ }