@azure/arm-managementgroups 1.2.0 → 2.0.0-alpha.20211215.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.
Files changed (173) hide show
  1. package/CHANGELOG.md +26 -0
  2. package/{LICENSE.txt → LICENSE} +2 -2
  3. package/README.md +72 -83
  4. package/dist/index.js +2881 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/index.min.js +1 -0
  7. package/dist/index.min.js.map +1 -0
  8. package/dist-esm/src/index.d.ts +6 -0
  9. package/dist-esm/src/index.d.ts.map +1 -0
  10. package/dist-esm/src/index.js +13 -0
  11. package/dist-esm/src/index.js.map +1 -0
  12. package/dist-esm/src/lroImpl.d.ts +16 -0
  13. package/dist-esm/src/lroImpl.d.ts.map +1 -0
  14. package/dist-esm/src/lroImpl.js +29 -0
  15. package/dist-esm/src/lroImpl.js.map +1 -0
  16. package/dist-esm/src/managementGroupsAPI.d.ts +34 -0
  17. package/dist-esm/src/managementGroupsAPI.d.ts.map +1 -0
  18. package/dist-esm/src/managementGroupsAPI.js +102 -0
  19. package/dist-esm/src/managementGroupsAPI.js.map +1 -0
  20. package/dist-esm/src/managementGroupsAPIContext.d.ts +14 -0
  21. package/dist-esm/src/managementGroupsAPIContext.d.ts.map +1 -0
  22. package/dist-esm/src/managementGroupsAPIContext.js +43 -0
  23. package/dist-esm/src/managementGroupsAPIContext.js.map +1 -0
  24. package/dist-esm/src/models/index.d.ts +956 -0
  25. package/dist-esm/src/models/index.d.ts.map +1 -0
  26. package/dist-esm/src/models/index.js +46 -0
  27. package/dist-esm/src/models/index.js.map +1 -0
  28. package/dist-esm/src/models/mappers.d.ts +39 -0
  29. package/dist-esm/src/models/mappers.d.ts.map +1 -0
  30. package/{esm → dist-esm/src}/models/mappers.js +776 -396
  31. package/dist-esm/src/models/mappers.js.map +1 -0
  32. package/dist-esm/src/models/parameters.d.ts +24 -0
  33. package/dist-esm/src/models/parameters.d.ts.map +1 -0
  34. package/dist-esm/src/models/parameters.js +200 -0
  35. package/dist-esm/src/models/parameters.js.map +1 -0
  36. package/dist-esm/src/operations/entities.d.ts +34 -0
  37. package/dist-esm/src/operations/entities.d.ts.map +1 -0
  38. package/dist-esm/src/operations/entities.js +142 -0
  39. package/dist-esm/src/operations/entities.js.map +1 -0
  40. package/dist-esm/src/operations/hierarchySettingsOperations.d.ts +52 -0
  41. package/dist-esm/src/operations/hierarchySettingsOperations.d.ts.map +1 -0
  42. package/dist-esm/src/operations/hierarchySettingsOperations.js +154 -0
  43. package/dist-esm/src/operations/hierarchySettingsOperations.js.map +1 -0
  44. package/{esm → dist-esm/src}/operations/index.d.ts +1 -0
  45. package/dist-esm/src/operations/index.d.ts.map +1 -0
  46. package/{esm → dist-esm/src}/operations/index.js +4 -5
  47. package/dist-esm/src/operations/index.js.map +1 -0
  48. package/dist-esm/src/operations/managementGroupSubscriptions.d.ts +62 -0
  49. package/dist-esm/src/operations/managementGroupSubscriptions.d.ts.map +1 -0
  50. package/dist-esm/src/operations/managementGroupSubscriptions.js +215 -0
  51. package/dist-esm/src/operations/managementGroupSubscriptions.js.map +1 -0
  52. package/dist-esm/src/operations/managementGroups.d.ts +109 -0
  53. package/dist-esm/src/operations/managementGroups.d.ts.map +1 -0
  54. package/dist-esm/src/operations/managementGroups.js +462 -0
  55. package/dist-esm/src/operations/managementGroups.js.map +1 -0
  56. package/dist-esm/src/operations/operations.d.ts +32 -0
  57. package/dist-esm/src/operations/operations.d.ts.map +1 -0
  58. package/dist-esm/src/operations/operations.js +120 -0
  59. package/dist-esm/src/operations/operations.js.map +1 -0
  60. package/dist-esm/src/operationsInterfaces/entities.d.ts +12 -0
  61. package/dist-esm/src/operationsInterfaces/entities.d.ts.map +1 -0
  62. package/dist-esm/src/operationsInterfaces/entities.js +9 -0
  63. package/dist-esm/src/operationsInterfaces/entities.js.map +1 -0
  64. package/dist-esm/src/operationsInterfaces/hierarchySettingsOperations.d.ts +44 -0
  65. package/dist-esm/src/operationsInterfaces/hierarchySettingsOperations.d.ts.map +1 -0
  66. package/dist-esm/src/operationsInterfaces/hierarchySettingsOperations.js +9 -0
  67. package/dist-esm/src/operationsInterfaces/hierarchySettingsOperations.js.map +1 -0
  68. package/dist-esm/src/operationsInterfaces/index.d.ts +6 -0
  69. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -0
  70. package/dist-esm/src/operationsInterfaces/index.js +13 -0
  71. package/dist-esm/src/operationsInterfaces/index.js.map +1 -0
  72. package/dist-esm/src/operationsInterfaces/managementGroupSubscriptions.d.ts +37 -0
  73. package/dist-esm/src/operationsInterfaces/managementGroupSubscriptions.d.ts.map +1 -0
  74. package/dist-esm/src/operationsInterfaces/managementGroupSubscriptions.js +9 -0
  75. package/dist-esm/src/operationsInterfaces/managementGroupSubscriptions.js.map +1 -0
  76. package/dist-esm/src/operationsInterfaces/managementGroups.d.ts +71 -0
  77. package/dist-esm/src/operationsInterfaces/managementGroups.d.ts.map +1 -0
  78. package/dist-esm/src/operationsInterfaces/managementGroups.js +9 -0
  79. package/dist-esm/src/operationsInterfaces/managementGroups.js.map +1 -0
  80. package/dist-esm/src/operationsInterfaces/operations.d.ts +11 -0
  81. package/dist-esm/src/operationsInterfaces/operations.d.ts.map +1 -0
  82. package/dist-esm/src/operationsInterfaces/operations.js +9 -0
  83. package/dist-esm/src/operationsInterfaces/operations.js.map +1 -0
  84. package/dist-esm/test/sampleTest.d.ts +2 -0
  85. package/dist-esm/test/sampleTest.d.ts.map +1 -0
  86. package/dist-esm/test/sampleTest.js +40 -0
  87. package/dist-esm/test/sampleTest.js.map +1 -0
  88. package/package.json +69 -24
  89. package/review/arm-managementgroups.api.md +667 -0
  90. package/rollup.config.js +184 -27
  91. package/src/index.ts +13 -0
  92. package/src/lroImpl.ts +34 -0
  93. package/src/managementGroupsAPI.ts +93 -130
  94. package/src/managementGroupsAPIContext.ts +45 -45
  95. package/src/models/index.ts +801 -1185
  96. package/src/models/mappers.ts +792 -400
  97. package/src/models/parameters.ts +130 -94
  98. package/src/operations/entities.ts +105 -79
  99. package/src/operations/hierarchySettingsOperations.ts +214 -0
  100. package/src/operations/index.ts +4 -5
  101. package/src/operations/managementGroupSubscriptions.ts +226 -72
  102. package/src/operations/managementGroups.ts +449 -222
  103. package/src/operations/operations.ts +84 -70
  104. package/src/operationsInterfaces/entities.ts +23 -0
  105. package/src/operationsInterfaces/hierarchySettingsOperations.ts +80 -0
  106. package/src/operationsInterfaces/index.ts +13 -0
  107. package/src/operationsInterfaces/managementGroupSubscriptions.ts +69 -0
  108. package/src/operationsInterfaces/managementGroups.ts +131 -0
  109. package/src/operationsInterfaces/operations.ts +22 -0
  110. package/tsconfig.json +4 -4
  111. package/types/arm-managementgroups.d.ts +1266 -0
  112. package/types/tsdoc-metadata.json +11 -0
  113. package/dist/arm-managementgroups.js +0 -2017
  114. package/dist/arm-managementgroups.js.map +0 -1
  115. package/dist/arm-managementgroups.min.js +0 -1
  116. package/dist/arm-managementgroups.min.js.map +0 -1
  117. package/esm/managementGroupsAPI.d.ts +0 -74
  118. package/esm/managementGroupsAPI.d.ts.map +0 -1
  119. package/esm/managementGroupsAPI.js +0 -120
  120. package/esm/managementGroupsAPI.js.map +0 -1
  121. package/esm/managementGroupsAPIContext.d.ts +0 -20
  122. package/esm/managementGroupsAPIContext.d.ts.map +0 -1
  123. package/esm/managementGroupsAPIContext.js +0 -56
  124. package/esm/managementGroupsAPIContext.js.map +0 -1
  125. package/esm/models/entitiesMappers.d.ts +0 -2
  126. package/esm/models/entitiesMappers.d.ts.map +0 -1
  127. package/esm/models/entitiesMappers.js +0 -11
  128. package/esm/models/entitiesMappers.js.map +0 -1
  129. package/esm/models/index.d.ts +0 -1390
  130. package/esm/models/index.d.ts.map +0 -1
  131. package/esm/models/index.js +0 -10
  132. package/esm/models/index.js.map +0 -1
  133. package/esm/models/managementGroupSubscriptionsMappers.d.ts +0 -2
  134. package/esm/models/managementGroupSubscriptionsMappers.d.ts.map +0 -1
  135. package/esm/models/managementGroupSubscriptionsMappers.js +0 -11
  136. package/esm/models/managementGroupSubscriptionsMappers.js.map +0 -1
  137. package/esm/models/managementGroupsMappers.d.ts +0 -2
  138. package/esm/models/managementGroupsMappers.d.ts.map +0 -1
  139. package/esm/models/managementGroupsMappers.js +0 -11
  140. package/esm/models/managementGroupsMappers.js.map +0 -1
  141. package/esm/models/mappers.d.ts +0 -28
  142. package/esm/models/mappers.d.ts.map +0 -1
  143. package/esm/models/mappers.js.map +0 -1
  144. package/esm/models/operationsMappers.d.ts +0 -2
  145. package/esm/models/operationsMappers.d.ts.map +0 -1
  146. package/esm/models/operationsMappers.js +0 -11
  147. package/esm/models/operationsMappers.js.map +0 -1
  148. package/esm/models/parameters.d.ts +0 -18
  149. package/esm/models/parameters.d.ts.map +0 -1
  150. package/esm/models/parameters.js +0 -194
  151. package/esm/models/parameters.js.map +0 -1
  152. package/esm/operations/entities.d.ts +0 -46
  153. package/esm/operations/entities.d.ts.map +0 -1
  154. package/esm/operations/entities.js +0 -87
  155. package/esm/operations/entities.js.map +0 -1
  156. package/esm/operations/index.d.ts.map +0 -1
  157. package/esm/operations/index.js.map +0 -1
  158. package/esm/operations/managementGroupSubscriptions.d.ts +0 -55
  159. package/esm/operations/managementGroupSubscriptions.d.ts.map +0 -1
  160. package/esm/operations/managementGroupSubscriptions.js +0 -85
  161. package/esm/operations/managementGroupSubscriptions.js.map +0 -1
  162. package/esm/operations/managementGroups.d.ts +0 -120
  163. package/esm/operations/managementGroups.d.ts.map +0 -1
  164. package/esm/operations/managementGroups.js +0 -252
  165. package/esm/operations/managementGroups.js.map +0 -1
  166. package/esm/operations/operations.d.ts +0 -46
  167. package/esm/operations/operations.d.ts.map +0 -1
  168. package/esm/operations/operations.js +0 -77
  169. package/esm/operations/operations.js.map +0 -1
  170. package/src/models/entitiesMappers.ts +0 -18
  171. package/src/models/managementGroupSubscriptionsMappers.ts +0 -15
  172. package/src/models/managementGroupsMappers.ts +0 -29
  173. package/src/models/operationsMappers.ts +0 -18
@@ -1,1466 +1,1082 @@
1
1
  /*
2
- * Copyright (c) Microsoft Corporation. All rights reserved.
3
- * Licensed under the MIT License. See License.txt in the project root for
4
- * license information.
2
+ * Copyright (c) Microsoft Corporation.
3
+ * Licensed under the MIT License.
5
4
  *
6
5
  * Code generated by Microsoft (R) AutoRest Code Generator.
7
- * Changes may cause incorrect behavior and will be lost if the code is
8
- * regenerated.
6
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
9
7
  */
10
8
 
11
- import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js";
12
- import * as msRest from "@azure/ms-rest-js";
13
-
14
- export { BaseResource, CloudError };
9
+ import * as coreClient from "@azure/core-client";
15
10
 
11
+ /** Describes the result of the request to list management groups. */
12
+ export interface ManagementGroupListResult {
13
+ /** The list of management groups. */
14
+ value?: ManagementGroupInfo[];
15
+ /**
16
+ * The URL to use for getting the next set of results.
17
+ * NOTE: This property will not be serialized. It can only be populated by the server.
18
+ */
19
+ readonly nextLink?: string;
20
+ }
16
21
 
17
- /**
18
- * @interface
19
- * An interface representing ErrorDetails.
20
- * The details of the error.
21
- *
22
- */
23
- export interface ErrorDetails {
22
+ /** The management group resource. */
23
+ export interface ManagementGroupInfo {
24
24
  /**
25
- * @member {string} [code] One of a server-defined set of error codes.
25
+ * The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
26
+ * NOTE: This property will not be serialized. It can only be populated by the server.
26
27
  */
27
- code?: string;
28
+ readonly id?: string;
28
29
  /**
29
- * @member {string} [message] A human-readable representation of the error.
30
+ * The type of the resource. For example, Microsoft.Management/managementGroups
31
+ * NOTE: This property will not be serialized. It can only be populated by the server.
30
32
  */
31
- message?: string;
33
+ readonly type?: string;
32
34
  /**
33
- * @member {string} [details] A human-readable representation of the error's
34
- * details.
35
+ * The name of the management group. For example, 00000000-0000-0000-0000-000000000000
36
+ * NOTE: This property will not be serialized. It can only be populated by the server.
35
37
  */
36
- details?: string;
38
+ readonly name?: string;
39
+ /** The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000 */
40
+ tenantId?: string;
41
+ /** The friendly name of the management group. */
42
+ displayName?: string;
37
43
  }
38
44
 
39
- /**
40
- * @interface
41
- * An interface representing ErrorResponse.
42
- * The error object.
43
- *
44
- */
45
+ /** The error object. */
45
46
  export interface ErrorResponse {
46
- /**
47
- * @member {ErrorDetails} [error] Error.
48
- */
47
+ /** The details of the error. */
49
48
  error?: ErrorDetails;
50
49
  }
51
50
 
52
- /**
53
- * @interface
54
- * An interface representing OperationDisplayProperties.
55
- * The object that represents the operation.
56
- *
57
- */
58
- export interface OperationDisplayProperties {
59
- /**
60
- * @member {string} [provider] The name of the provider.
61
- * **NOTE: This property will not be serialized. It can only be populated by
62
- * the server.**
63
- */
64
- readonly provider?: string;
51
+ /** The details of the error. */
52
+ export interface ErrorDetails {
53
+ /** One of a server-defined set of error codes. */
54
+ code?: string;
55
+ /** A human-readable representation of the error. */
56
+ message?: string;
57
+ /** A human-readable representation of the error's details. */
58
+ details?: string;
59
+ }
60
+
61
+ /** The management group details. */
62
+ export interface ManagementGroup {
65
63
  /**
66
- * @member {string} [resource] The resource on which the operation is
67
- * performed.
68
- * **NOTE: This property will not be serialized. It can only be populated by
69
- * the server.**
64
+ * The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
65
+ * NOTE: This property will not be serialized. It can only be populated by the server.
70
66
  */
71
- readonly resource?: string;
67
+ readonly id?: string;
72
68
  /**
73
- * @member {string} [operation] The operation that can be performed.
74
- * **NOTE: This property will not be serialized. It can only be populated by
75
- * the server.**
69
+ * The type of the resource. For example, Microsoft.Management/managementGroups
70
+ * NOTE: This property will not be serialized. It can only be populated by the server.
76
71
  */
77
- readonly operation?: string;
72
+ readonly type?: string;
78
73
  /**
79
- * @member {string} [description] Operation description.
80
- * **NOTE: This property will not be serialized. It can only be populated by
81
- * the server.**
74
+ * The name of the management group. For example, 00000000-0000-0000-0000-000000000000
75
+ * NOTE: This property will not be serialized. It can only be populated by the server.
82
76
  */
83
- readonly description?: string;
77
+ readonly name?: string;
78
+ /** The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000 */
79
+ tenantId?: string;
80
+ /** The friendly name of the management group. */
81
+ displayName?: string;
82
+ /** The details of a management group. */
83
+ details?: ManagementGroupDetails;
84
+ /** The list of children. */
85
+ children?: ManagementGroupChildInfo[];
84
86
  }
85
87
 
86
- /**
87
- * @interface
88
- * An interface representing Operation.
89
- * Operation supported by the Microsoft.Management resource provider.
90
- *
91
- */
92
- export interface Operation {
93
- /**
94
- * @member {string} [name] Operation name: {provider}/{resource}/{operation}.
95
- * **NOTE: This property will not be serialized. It can only be populated by
96
- * the server.**
97
- */
98
- readonly name?: string;
99
- /**
100
- * @member {OperationDisplayProperties} [display] Display.
101
- */
102
- display?: OperationDisplayProperties;
88
+ /** The details of a management group. */
89
+ export interface ManagementGroupDetails {
90
+ /** The version number of the object. */
91
+ version?: number;
92
+ /** The date and time when this object was last updated. */
93
+ updatedTime?: Date;
94
+ /** The identity of the principal or process that updated the object. */
95
+ updatedBy?: string;
96
+ /** (Optional) The ID of the parent management group. */
97
+ parent?: ParentGroupInfo;
98
+ /** The path from the root to the current group. */
99
+ path?: ManagementGroupPathElement[];
100
+ /** The ancestors of the management group. */
101
+ managementGroupAncestors?: string[];
102
+ /** The ancestors of the management group displayed in reversed order, from immediate parent to the root. */
103
+ managementGroupAncestorsChain?: ManagementGroupPathElement[];
103
104
  }
104
105
 
105
- /**
106
- * @interface
107
- * An interface representing CheckNameAvailabilityResult.
108
- * Describes the result of the request to check management group name
109
- * availability.
110
- *
111
- */
112
- export interface CheckNameAvailabilityResult {
113
- /**
114
- * @member {boolean} [nameAvailable] Required. True indicates name is valid
115
- * and available. False indicates the name is invalid, unavailable, or both.
116
- * **NOTE: This property will not be serialized. It can only be populated by
117
- * the server.**
118
- */
119
- readonly nameAvailable?: boolean;
120
- /**
121
- * @member {Reason} [reason] Required if nameAvailable == false. Invalid
122
- * indicates the name provided does not match the resource provider's naming
123
- * requirements (incorrect length, unsupported characters, etc.)
124
- * AlreadyExists indicates that the name is already in use and is therefore
125
- * unavailable. Possible values include: 'Invalid', 'AlreadyExists'
126
- * **NOTE: This property will not be serialized. It can only be populated by
127
- * the server.**
128
- */
129
- readonly reason?: Reason;
130
- /**
131
- * @member {string} [message] Required if nameAvailable == false. Localized.
132
- * If reason == invalid, provide the user with the reason why the given name
133
- * is invalid, and provide the resource naming requirements so that the user
134
- * can select a valid name. If reason == AlreadyExists, explain that is
135
- * already in use, and direct them to select a different name.
136
- * **NOTE: This property will not be serialized. It can only be populated by
137
- * the server.**
138
- */
139
- readonly message?: string;
106
+ /** (Optional) The ID of the parent management group. */
107
+ export interface ParentGroupInfo {
108
+ /** The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000 */
109
+ id?: string;
110
+ /** The name of the parent management group */
111
+ name?: string;
112
+ /** The friendly name of the parent management group. */
113
+ displayName?: string;
140
114
  }
141
115
 
142
- /**
143
- * @interface
144
- * An interface representing TenantBackfillStatusResult.
145
- * The tenant backfill status
146
- *
147
- */
148
- export interface TenantBackfillStatusResult {
149
- /**
150
- * @member {string} [tenantId] The AAD Tenant ID associated with the
151
- * management group. For example, 00000000-0000-0000-0000-000000000000
152
- * **NOTE: This property will not be serialized. It can only be populated by
153
- * the server.**
154
- */
155
- readonly tenantId?: string;
156
- /**
157
- * @member {Status} [status] The status of the Tenant Backfill. Possible
158
- * values include: 'NotStarted', 'NotStartedButGroupsExist', 'Started',
159
- * 'Failed', 'Cancelled', 'Completed'
160
- * **NOTE: This property will not be serialized. It can only be populated by
161
- * the server.**
162
- */
163
- readonly status?: Status;
116
+ /** A path element of a management group ancestors. */
117
+ export interface ManagementGroupPathElement {
118
+ /** The name of the group. */
119
+ name?: string;
120
+ /** The friendly name of the group. */
121
+ displayName?: string;
164
122
  }
165
123
 
166
- /**
167
- * @interface
168
- * An interface representing ManagementGroupInfo.
169
- * The management group resource.
170
- *
171
- */
172
- export interface ManagementGroupInfo {
124
+ /** The child information of a management group. */
125
+ export interface ManagementGroupChildInfo {
126
+ /** The fully qualified resource type which includes provider namespace (e.g. Microsoft.Management/managementGroups) */
127
+ type?: ManagementGroupChildType;
128
+ /** The fully qualified ID for the child resource (management group or subscription). For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000 */
129
+ id?: string;
130
+ /** The name of the child entity. */
131
+ name?: string;
132
+ /** The friendly name of the child resource. */
133
+ displayName?: string;
134
+ /** The list of children. */
135
+ children?: ManagementGroupChildInfo[];
136
+ }
137
+
138
+ /** Management group creation parameters. */
139
+ export interface CreateManagementGroupRequest {
173
140
  /**
174
- * @member {string} [id] The fully qualified ID for the management group.
175
- * For example,
176
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
177
- * **NOTE: This property will not be serialized. It can only be populated by
178
- * the server.**
141
+ * The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
142
+ * NOTE: This property will not be serialized. It can only be populated by the server.
179
143
  */
180
144
  readonly id?: string;
181
145
  /**
182
- * @member {string} [type] The type of the resource. For example,
183
- * /providers/Microsoft.Management/managementGroups
184
- * **NOTE: This property will not be serialized. It can only be populated by
185
- * the server.**
146
+ * The type of the resource. For example, Microsoft.Management/managementGroups
147
+ * NOTE: This property will not be serialized. It can only be populated by the server.
186
148
  */
187
149
  readonly type?: string;
150
+ /** The name of the management group. For example, 00000000-0000-0000-0000-000000000000 */
151
+ name?: string;
188
152
  /**
189
- * @member {string} [name] The name of the management group. For example,
190
- * 00000000-0000-0000-0000-000000000000
191
- * **NOTE: This property will not be serialized. It can only be populated by
192
- * the server.**
193
- */
194
- readonly name?: string;
195
- /**
196
- * @member {string} [tenantId] The AAD Tenant ID associated with the
197
- * management group. For example, 00000000-0000-0000-0000-000000000000
153
+ * The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000
154
+ * NOTE: This property will not be serialized. It can only be populated by the server.
198
155
  */
199
- tenantId?: string;
156
+ readonly tenantId?: string;
157
+ /** The friendly name of the management group. If no value is passed then this field will be set to the groupId. */
158
+ displayName?: string;
159
+ /** The details of a management group used during creation. */
160
+ details?: CreateManagementGroupDetails;
200
161
  /**
201
- * @member {string} [displayName] The friendly name of the management group.
162
+ * The list of children.
163
+ * NOTE: This property will not be serialized. It can only be populated by the server.
202
164
  */
203
- displayName?: string;
165
+ readonly children?: CreateManagementGroupChildInfo[];
204
166
  }
205
167
 
206
- /**
207
- * @interface
208
- * An interface representing ParentGroupInfo.
209
- * (Optional) The ID of the parent management group.
210
- *
211
- */
212
- export interface ParentGroupInfo {
168
+ /** The details of a management group used during creation. */
169
+ export interface CreateManagementGroupDetails {
213
170
  /**
214
- * @member {string} [id] The fully qualified ID for the parent management
215
- * group. For example,
216
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
171
+ * The version number of the object.
172
+ * NOTE: This property will not be serialized. It can only be populated by the server.
217
173
  */
218
- id?: string;
174
+ readonly version?: number;
219
175
  /**
220
- * @member {string} [name] The name of the parent management group
176
+ * The date and time when this object was last updated.
177
+ * NOTE: This property will not be serialized. It can only be populated by the server.
221
178
  */
222
- name?: string;
179
+ readonly updatedTime?: Date;
223
180
  /**
224
- * @member {string} [displayName] The friendly name of the parent management
225
- * group.
181
+ * The identity of the principal or process that updated the object.
182
+ * NOTE: This property will not be serialized. It can only be populated by the server.
226
183
  */
227
- displayName?: string;
184
+ readonly updatedBy?: string;
185
+ /** (Optional) The ID of the parent management group used during creation. */
186
+ parent?: CreateParentGroupInfo;
228
187
  }
229
188
 
230
- /**
231
- * @interface
232
- * An interface representing ManagementGroupDetails.
233
- * The details of a management group.
234
- *
235
- */
236
- export interface ManagementGroupDetails {
237
- /**
238
- * @member {number} [version] The version number of the object.
239
- */
240
- version?: number;
241
- /**
242
- * @member {Date} [updatedTime] The date and time when this object was last
243
- * updated.
244
- */
245
- updatedTime?: Date;
189
+ /** (Optional) The ID of the parent management group used during creation. */
190
+ export interface CreateParentGroupInfo {
191
+ /** The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000 */
192
+ id?: string;
246
193
  /**
247
- * @member {string} [updatedBy] The identity of the principal or process that
248
- * updated the object.
194
+ * The name of the parent management group
195
+ * NOTE: This property will not be serialized. It can only be populated by the server.
249
196
  */
250
- updatedBy?: string;
197
+ readonly name?: string;
251
198
  /**
252
- * @member {ParentGroupInfo} [parent] Parent.
199
+ * The friendly name of the parent management group.
200
+ * NOTE: This property will not be serialized. It can only be populated by the server.
253
201
  */
254
- parent?: ParentGroupInfo;
202
+ readonly displayName?: string;
255
203
  }
256
204
 
257
- /**
258
- * @interface
259
- * An interface representing ManagementGroupChildInfo.
260
- * The child information of a management group.
261
- *
262
- */
263
- export interface ManagementGroupChildInfo {
264
- /**
265
- * @member {Type1} [type] The type of child resource. The fully qualified
266
- * resource type which includes provider namespace (e.g.
267
- * /providers/Microsoft.Management/managementGroups). Possible values
268
- * include: '/providers/Microsoft.Management/managementGroups',
269
- * '/subscriptions'
270
- */
271
- type?: Type1;
205
+ /** The child information of a management group used during creation. */
206
+ export interface CreateManagementGroupChildInfo {
272
207
  /**
273
- * @member {string} [id] The fully qualified ID for the child resource
274
- * (management group or subscription). For example,
275
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
208
+ * The fully qualified resource type which includes provider namespace (e.g. Microsoft.Management/managementGroups)
209
+ * NOTE: This property will not be serialized. It can only be populated by the server.
276
210
  */
277
- id?: string;
211
+ readonly type?: ManagementGroupChildType;
278
212
  /**
279
- * @member {string} [name] The name of the child entity.
213
+ * The fully qualified ID for the child resource (management group or subscription). For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
214
+ * NOTE: This property will not be serialized. It can only be populated by the server.
280
215
  */
281
- name?: string;
216
+ readonly id?: string;
282
217
  /**
283
- * @member {string} [displayName] The friendly name of the child resource.
218
+ * The name of the child entity.
219
+ * NOTE: This property will not be serialized. It can only be populated by the server.
284
220
  */
285
- displayName?: string;
221
+ readonly name?: string;
286
222
  /**
287
- * @member {string[]} [roles] The roles definitions associated with the
288
- * management group.
223
+ * The friendly name of the child resource.
224
+ * NOTE: This property will not be serialized. It can only be populated by the server.
289
225
  */
290
- roles?: string[];
226
+ readonly displayName?: string;
291
227
  /**
292
- * @member {ManagementGroupChildInfo[]} [children] The list of children.
228
+ * The list of children.
229
+ * NOTE: This property will not be serialized. It can only be populated by the server.
293
230
  */
294
- children?: ManagementGroupChildInfo[];
231
+ readonly children?: CreateManagementGroupChildInfo[];
295
232
  }
296
233
 
297
- /**
298
- * @interface
299
- * An interface representing ManagementGroup.
300
- * The management group details.
301
- *
302
- * @extends BaseResource
303
- */
304
- export interface ManagementGroup extends BaseResource {
234
+ /** The results of Azure-AsyncOperation. */
235
+ export interface AzureAsyncOperationResults {
305
236
  /**
306
- * @member {string} [id] The fully qualified ID for the management group.
307
- * For example,
308
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
309
- * **NOTE: This property will not be serialized. It can only be populated by
310
- * the server.**
237
+ * The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
238
+ * NOTE: This property will not be serialized. It can only be populated by the server.
311
239
  */
312
240
  readonly id?: string;
313
241
  /**
314
- * @member {string} [type] The type of the resource. For example,
315
- * /providers/Microsoft.Management/managementGroups
316
- * **NOTE: This property will not be serialized. It can only be populated by
317
- * the server.**
242
+ * The type of the resource. For example, Microsoft.Management/managementGroups
243
+ * NOTE: This property will not be serialized. It can only be populated by the server.
318
244
  */
319
245
  readonly type?: string;
320
246
  /**
321
- * @member {string} [name] The name of the management group. For example,
322
- * 00000000-0000-0000-0000-000000000000
323
- * **NOTE: This property will not be serialized. It can only be populated by
324
- * the server.**
247
+ * The name of the management group. For example, 00000000-0000-0000-0000-000000000000
248
+ * NOTE: This property will not be serialized. It can only be populated by the server.
325
249
  */
326
250
  readonly name?: string;
327
251
  /**
328
- * @member {string} [tenantId] The AAD Tenant ID associated with the
329
- * management group. For example, 00000000-0000-0000-0000-000000000000
252
+ * The current status of the asynchronous operation performed . For example, Running, Succeeded, Failed
253
+ * NOTE: This property will not be serialized. It can only be populated by the server.
330
254
  */
255
+ readonly status?: string;
256
+ /** The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000 */
331
257
  tenantId?: string;
258
+ /** The friendly name of the management group. */
259
+ displayName?: string;
260
+ }
261
+
262
+ /** Management group patch parameters. */
263
+ export interface PatchManagementGroupRequest {
264
+ /** The friendly name of the management group. */
265
+ displayName?: string;
266
+ /** (Optional) The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000 */
267
+ parentGroupId?: string;
268
+ }
269
+
270
+ /** Describes the result of the request to view descendants. */
271
+ export interface DescendantListResult {
272
+ /** The list of descendants. */
273
+ value?: DescendantInfo[];
332
274
  /**
333
- * @member {string} [displayName] The friendly name of the management group.
275
+ * The URL to use for getting the next set of results.
276
+ * NOTE: This property will not be serialized. It can only be populated by the server.
334
277
  */
335
- displayName?: string;
278
+ readonly nextLink?: string;
279
+ }
280
+
281
+ /** The descendant. */
282
+ export interface DescendantInfo {
336
283
  /**
337
- * @member {string[]} [roles] The role definitions associated with the
338
- * management group.
284
+ * The fully qualified ID for the descendant. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000 or /subscriptions/0000000-0000-0000-0000-000000000000
285
+ * NOTE: This property will not be serialized. It can only be populated by the server.
339
286
  */
340
- roles?: string[];
287
+ readonly id?: string;
341
288
  /**
342
- * @member {ManagementGroupDetails} [details] Details.
289
+ * The type of the resource. For example, Microsoft.Management/managementGroups or /subscriptions
290
+ * NOTE: This property will not be serialized. It can only be populated by the server.
343
291
  */
344
- details?: ManagementGroupDetails;
292
+ readonly type?: string;
345
293
  /**
346
- * @member {ManagementGroupChildInfo[]} [children] The list of children.
294
+ * The name of the descendant. For example, 00000000-0000-0000-0000-000000000000
295
+ * NOTE: This property will not be serialized. It can only be populated by the server.
347
296
  */
348
- children?: ManagementGroupChildInfo[];
297
+ readonly name?: string;
298
+ /** The friendly name of the management group. */
299
+ displayName?: string;
300
+ /** The ID of the parent management group. */
301
+ parent?: DescendantParentGroupInfo;
349
302
  }
350
303
 
351
- /**
352
- * @interface
353
- * An interface representing OperationResults.
354
- * The results of an asynchronous operation.
355
- *
356
- */
357
- export interface OperationResults {
304
+ /** The ID of the parent management group. */
305
+ export interface DescendantParentGroupInfo {
306
+ /** The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000 */
307
+ id?: string;
308
+ }
309
+
310
+ /** The details of subscription under management group. */
311
+ export interface SubscriptionUnderManagementGroup {
358
312
  /**
359
- * @member {string} [id] The fully qualified ID for the management group.
360
- * For example,
361
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
362
- * **NOTE: This property will not be serialized. It can only be populated by
363
- * the server.**
313
+ * The fully qualified ID for the subscription. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/subscriptions/0000000-0000-0000-0000-000000000001
314
+ * NOTE: This property will not be serialized. It can only be populated by the server.
364
315
  */
365
316
  readonly id?: string;
366
317
  /**
367
- * @member {string} [type] The type of the resource. For example,
368
- * /providers/Microsoft.Management/managementGroups
369
- * **NOTE: This property will not be serialized. It can only be populated by
370
- * the server.**
318
+ * The type of the resource. For example, Microsoft.Management/managementGroups/subscriptions
319
+ * NOTE: This property will not be serialized. It can only be populated by the server.
371
320
  */
372
321
  readonly type?: string;
373
322
  /**
374
- * @member {string} [name] The name of the management group. For example,
375
- * 00000000-0000-0000-0000-000000000000
376
- * **NOTE: This property will not be serialized. It can only be populated by
377
- * the server.**
323
+ * The stringified id of the subscription. For example, 00000000-0000-0000-0000-000000000000
324
+ * NOTE: This property will not be serialized. It can only be populated by the server.
378
325
  */
379
326
  readonly name?: string;
327
+ /** The AAD Tenant ID associated with the subscription. For example, 00000000-0000-0000-0000-000000000000 */
328
+ tenant?: string;
329
+ /** The friendly name of the subscription. */
330
+ displayName?: string;
331
+ /** The ID of the parent management group. */
332
+ parent?: DescendantParentGroupInfo;
333
+ /** The state of the subscription. */
334
+ state?: string;
335
+ }
336
+
337
+ /** The details of all subscriptions under management group. */
338
+ export interface ListSubscriptionUnderManagementGroup {
339
+ /** The list of subscriptions. */
340
+ value?: SubscriptionUnderManagementGroup[];
380
341
  /**
381
- * @member {ProvisioningState} [provisioningState] Provisioning State.
382
- * Possible values include: 'Updating'
342
+ * The URL to use for getting the next set of results.
343
+ * NOTE: This property will not be serialized. It can only be populated by the server.
383
344
  */
384
- provisioningState?: ProvisioningState;
345
+ readonly nextLink?: string;
385
346
  }
386
347
 
387
- /**
388
- * @interface
389
- * An interface representing EntityParentGroupInfo.
390
- * (Optional) The ID of the parent management group.
391
- *
392
- */
393
- export interface EntityParentGroupInfo {
348
+ /** Lists all hierarchy settings. */
349
+ export interface HierarchySettingsList {
350
+ /** The list of hierarchy settings. */
351
+ value?: HierarchySettingsInfo[];
394
352
  /**
395
- * @member {string} [id] The fully qualified ID for the parent management
396
- * group. For example,
397
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
353
+ * The URL to use for getting the next set of results.
354
+ * NOTE: This property will not be serialized. It can only be populated by the server.
398
355
  */
399
- id?: string;
356
+ readonly nextLink?: string;
400
357
  }
401
358
 
402
- /**
403
- * @interface
404
- * An interface representing EntityInfo.
405
- * The entity.
406
- *
407
- */
408
- export interface EntityInfo {
359
+ /** The hierarchy settings resource. */
360
+ export interface HierarchySettingsInfo {
409
361
  /**
410
- * @member {string} [id] The fully qualified ID for the entity. For example,
411
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
412
- * **NOTE: This property will not be serialized. It can only be populated by
413
- * the server.**
362
+ * The fully qualified ID for the settings object. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/settings/default.
363
+ * NOTE: This property will not be serialized. It can only be populated by the server.
414
364
  */
415
365
  readonly id?: string;
416
366
  /**
417
- * @member {string} [type] The type of the resource. For example,
418
- * /providers/Microsoft.Management/managementGroups
419
- * **NOTE: This property will not be serialized. It can only be populated by
420
- * the server.**
367
+ * The type of the resource. For example, Microsoft.Management/managementGroups/settings.
368
+ * NOTE: This property will not be serialized. It can only be populated by the server.
421
369
  */
422
370
  readonly type?: string;
423
371
  /**
424
- * @member {string} [name] The name of the entity. For example,
425
- * 00000000-0000-0000-0000-000000000000
426
- * **NOTE: This property will not be serialized. It can only be populated by
427
- * the server.**
372
+ * The name of the object. In this case, default.
373
+ * NOTE: This property will not be serialized. It can only be populated by the server.
428
374
  */
429
375
  readonly name?: string;
376
+ /** The AAD Tenant ID associated with the hierarchy settings. For example, 00000000-0000-0000-0000-000000000000 */
377
+ tenantId?: string;
378
+ /** Indicates whether RBAC access is required upon group creation under the root Management Group. If set to true, user will require Microsoft.Management/managementGroups/write action on the root Management Group scope in order to create new Groups directly under the root. This will prevent new users from creating new Management Groups, unless they are given access. */
379
+ requireAuthorizationForGroupCreation?: boolean;
380
+ /** Settings that sets the default Management Group under which new subscriptions get added in this tenant. For example, /providers/Microsoft.Management/managementGroups/defaultGroup */
381
+ defaultManagementGroup?: string;
382
+ }
383
+
384
+ /** Settings defined at the Management Group scope. */
385
+ export interface HierarchySettings {
430
386
  /**
431
- * @member {string} [tenantId] The AAD Tenant ID associated with the entity.
432
- * For example, 00000000-0000-0000-0000-000000000000
387
+ * The fully qualified ID for the settings object. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000/settings/default.
388
+ * NOTE: This property will not be serialized. It can only be populated by the server.
433
389
  */
434
- tenantId?: string;
390
+ readonly id?: string;
435
391
  /**
436
- * @member {string} [displayName] The friendly name of the management group.
392
+ * The type of the resource. For example, Microsoft.Management/managementGroups/settings.
393
+ * NOTE: This property will not be serialized. It can only be populated by the server.
437
394
  */
438
- displayName?: string;
395
+ readonly type?: string;
439
396
  /**
440
- * @member {EntityParentGroupInfo} [parent] Parent.
397
+ * The name of the object. In this case, default.
398
+ * NOTE: This property will not be serialized. It can only be populated by the server.
441
399
  */
442
- parent?: EntityParentGroupInfo;
400
+ readonly name?: string;
401
+ /** The AAD Tenant ID associated with the hierarchy settings. For example, 00000000-0000-0000-0000-000000000000 */
402
+ tenantId?: string;
403
+ /** Indicates whether RBAC access is required upon group creation under the root Management Group. If set to true, user will require Microsoft.Management/managementGroups/write action on the root Management Group scope in order to create new Groups directly under the root. This will prevent new users from creating new Management Groups, unless they are given access. */
404
+ requireAuthorizationForGroupCreation?: boolean;
405
+ /** Settings that sets the default Management Group under which new subscriptions get added in this tenant. For example, /providers/Microsoft.Management/managementGroups/defaultGroup */
406
+ defaultManagementGroup?: string;
407
+ }
408
+
409
+ /** Parameters for creating or updating Management Group settings */
410
+ export interface CreateOrUpdateSettingsRequest {
411
+ /** Indicates whether RBAC access is required upon group creation under the root Management Group. If set to true, user will require Microsoft.Management/managementGroups/write action on the root Management Group scope in order to create new Groups directly under the root. This will prevent new users from creating new Management Groups, unless they are given access. */
412
+ requireAuthorizationForGroupCreation?: boolean;
413
+ /** Settings that sets the default Management Group under which new subscriptions get added in this tenant. For example, /providers/Microsoft.Management/managementGroups/defaultGroup */
414
+ defaultManagementGroup?: string;
415
+ }
416
+
417
+ /** Describes the result of the request to list Microsoft.Management operations. */
418
+ export interface OperationListResult {
443
419
  /**
444
- * @member {Permissions} [permissions] Permissions. Possible values include:
445
- * 'noaccess', 'view', 'edit', 'delete'
420
+ * List of operations supported by the Microsoft.Management resource provider.
421
+ * NOTE: This property will not be serialized. It can only be populated by the server.
446
422
  */
447
- permissions?: Permissions;
423
+ readonly value?: Operation[];
448
424
  /**
449
- * @member {InheritedPermissions} [inheritedPermissions] Inherited
450
- * Permissions. Possible values include: 'noaccess', 'view', 'edit', 'delete'
425
+ * URL to get the next set of operation list results if there are any.
426
+ * NOTE: This property will not be serialized. It can only be populated by the server.
451
427
  */
452
- inheritedPermissions?: InheritedPermissions;
428
+ readonly nextLink?: string;
429
+ }
430
+
431
+ /** Operation supported by the Microsoft.Management resource provider. */
432
+ export interface Operation {
453
433
  /**
454
- * @member {number} [numberOfDescendants] Number of Descendants.
434
+ * Operation name: {provider}/{resource}/{operation}.
435
+ * NOTE: This property will not be serialized. It can only be populated by the server.
455
436
  */
456
- numberOfDescendants?: number;
437
+ readonly name?: string;
438
+ /** The object that represents the operation. */
439
+ display?: OperationDisplayProperties;
440
+ }
441
+
442
+ /** The object that represents the operation. */
443
+ export interface OperationDisplayProperties {
457
444
  /**
458
- * @member {number} [numberOfChildren] Number of Children. Number of children
459
- * is the number of Groups and Subscriptions that are exactly one level
460
- * underneath the current Group.
445
+ * The name of the provider.
446
+ * NOTE: This property will not be serialized. It can only be populated by the server.
461
447
  */
462
- numberOfChildren?: number;
448
+ readonly provider?: string;
463
449
  /**
464
- * @member {number} [numberOfChildGroups] Number of Child Groups. Number of
465
- * child groups is the number of Groups that are exactly one level underneath
466
- * the current Group.
450
+ * The resource on which the operation is performed.
451
+ * NOTE: This property will not be serialized. It can only be populated by the server.
467
452
  */
468
- numberOfChildGroups?: number;
453
+ readonly resource?: string;
469
454
  /**
470
- * @member {string[]} [parentDisplayNameChain] The parent display name chain
471
- * from the root group to the immediate parent
455
+ * The operation that can be performed.
456
+ * NOTE: This property will not be serialized. It can only be populated by the server.
472
457
  */
473
- parentDisplayNameChain?: string[];
458
+ readonly operation?: string;
474
459
  /**
475
- * @member {string[]} [parentNameChain] The parent name chain from the root
476
- * group to the immediate parent
460
+ * Operation description.
461
+ * NOTE: This property will not be serialized. It can only be populated by the server.
477
462
  */
478
- parentNameChain?: string[];
463
+ readonly description?: string;
479
464
  }
480
465
 
481
- /**
482
- * @interface
483
- * An interface representing EntityHierarchyItem.
484
- * The management group details for the hierarchy view.
485
- *
486
- * @extends BaseResource
487
- */
488
- export interface EntityHierarchyItem extends BaseResource {
489
- /**
490
- * @member {string} [id] The fully qualified ID for the management group.
491
- * For example,
492
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
493
- * **NOTE: This property will not be serialized. It can only be populated by
494
- * the server.**
495
- */
496
- readonly id?: string;
466
+ /** Management group name availability check parameters. */
467
+ export interface CheckNameAvailabilityRequest {
468
+ /** the name to check for availability */
469
+ name?: string;
470
+ /** fully qualified resource type which includes provider namespace */
471
+ type?: "Microsoft.Management/managementGroups";
472
+ }
473
+
474
+ /** Describes the result of the request to check management group name availability. */
475
+ export interface CheckNameAvailabilityResult {
497
476
  /**
498
- * @member {string} [type] The type of the resource. For example,
499
- * /providers/Microsoft.Management/managementGroups
500
- * **NOTE: This property will not be serialized. It can only be populated by
501
- * the server.**
477
+ * Required. True indicates name is valid and available. False indicates the name is invalid, unavailable, or both.
478
+ * NOTE: This property will not be serialized. It can only be populated by the server.
502
479
  */
503
- readonly type?: string;
480
+ readonly nameAvailable?: boolean;
504
481
  /**
505
- * @member {string} [name] The name of the management group. For example,
506
- * 00000000-0000-0000-0000-000000000000
507
- * **NOTE: This property will not be serialized. It can only be populated by
508
- * the server.**
482
+ * Required if nameAvailable == false. Invalid indicates the name provided does not match the resource provider's naming requirements (incorrect length, unsupported characters, etc.) AlreadyExists indicates that the name is already in use and is therefore unavailable.
483
+ * NOTE: This property will not be serialized. It can only be populated by the server.
509
484
  */
510
- readonly name?: string;
485
+ readonly reason?: Reason;
511
486
  /**
512
- * @member {string} [displayName] The friendly name of the management group.
487
+ * Required if nameAvailable == false. Localized. If reason == invalid, provide the user with the reason why the given name is invalid, and provide the resource naming requirements so that the user can select a valid name. If reason == AlreadyExists, explain that is already in use, and direct them to select a different name.
488
+ * NOTE: This property will not be serialized. It can only be populated by the server.
513
489
  */
514
- displayName?: string;
490
+ readonly message?: string;
491
+ }
492
+
493
+ /** Describes the result of the request to view entities. */
494
+ export interface EntityListResult {
495
+ /** The list of entities. */
496
+ value?: EntityInfo[];
515
497
  /**
516
- * @member {Permissions1} [permissions] Permissions. Possible values include:
517
- * 'noaccess', 'view', 'edit', 'delete'
498
+ * Total count of records that match the filter
499
+ * NOTE: This property will not be serialized. It can only be populated by the server.
518
500
  */
519
- permissions?: Permissions1;
501
+ readonly count?: number;
520
502
  /**
521
- * @member {EntityHierarchyItem[]} [children] The list of children.
503
+ * The URL to use for getting the next set of results.
504
+ * NOTE: This property will not be serialized. It can only be populated by the server.
522
505
  */
523
- children?: EntityHierarchyItem[];
506
+ readonly nextLink?: string;
524
507
  }
525
508
 
526
- /**
527
- * @interface
528
- * An interface representing PatchManagementGroupRequest.
529
- * Management group patch parameters.
530
- *
531
- */
532
- export interface PatchManagementGroupRequest {
509
+ /** The entity. */
510
+ export interface EntityInfo {
533
511
  /**
534
- * @member {string} [displayName] The friendly name of the management group.
512
+ * The fully qualified ID for the entity. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
513
+ * NOTE: This property will not be serialized. It can only be populated by the server.
535
514
  */
536
- displayName?: string;
537
- /**
538
- * @member {string} [parentId] (Optional) The fully qualified ID for the
539
- * parent management group. For example,
540
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
541
- */
542
- parentId?: string;
543
- }
544
-
545
- /**
546
- * @interface
547
- * An interface representing CreateParentGroupInfo.
548
- * (Optional) The ID of the parent management group used during creation.
549
- *
550
- */
551
- export interface CreateParentGroupInfo {
515
+ readonly id?: string;
552
516
  /**
553
- * @member {string} [id] The fully qualified ID for the parent management
554
- * group. For example,
555
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
517
+ * The type of the resource. For example, Microsoft.Management/managementGroups
518
+ * NOTE: This property will not be serialized. It can only be populated by the server.
556
519
  */
557
- id?: string;
520
+ readonly type?: string;
558
521
  /**
559
- * @member {string} [name] The name of the parent management group
560
- * **NOTE: This property will not be serialized. It can only be populated by
561
- * the server.**
522
+ * The name of the entity. For example, 00000000-0000-0000-0000-000000000000
523
+ * NOTE: This property will not be serialized. It can only be populated by the server.
562
524
  */
563
525
  readonly name?: string;
564
- /**
565
- * @member {string} [displayName] The friendly name of the parent management
566
- * group.
567
- * **NOTE: This property will not be serialized. It can only be populated by
568
- * the server.**
569
- */
570
- readonly displayName?: string;
526
+ /** The AAD Tenant ID associated with the entity. For example, 00000000-0000-0000-0000-000000000000 */
527
+ tenantId?: string;
528
+ /** The friendly name of the management group. */
529
+ displayName?: string;
530
+ /** (Optional) The ID of the parent management group. */
531
+ parent?: EntityParentGroupInfo;
532
+ /** The users specific permissions to this item. */
533
+ permissions?: Permissions;
534
+ /** The users specific permissions to this item. */
535
+ inheritedPermissions?: Permissions;
536
+ /** Number of Descendants */
537
+ numberOfDescendants?: number;
538
+ /** Number of children is the number of Groups and Subscriptions that are exactly one level underneath the current Group. */
539
+ numberOfChildren?: number;
540
+ /** Number of children is the number of Groups that are exactly one level underneath the current Group. */
541
+ numberOfChildGroups?: number;
542
+ /** The parent display name chain from the root group to the immediate parent */
543
+ parentDisplayNameChain?: string[];
544
+ /** The parent name chain from the root group to the immediate parent */
545
+ parentNameChain?: string[];
571
546
  }
572
547
 
573
- /**
574
- * @interface
575
- * An interface representing CreateManagementGroupDetails.
576
- * The details of a management group used during creation.
577
- *
578
- */
579
- export interface CreateManagementGroupDetails {
580
- /**
581
- * @member {number} [version] The version number of the object.
582
- * **NOTE: This property will not be serialized. It can only be populated by
583
- * the server.**
584
- */
585
- readonly version?: number;
586
- /**
587
- * @member {Date} [updatedTime] The date and time when this object was last
588
- * updated.
589
- * **NOTE: This property will not be serialized. It can only be populated by
590
- * the server.**
591
- */
592
- readonly updatedTime?: Date;
548
+ /** (Optional) The ID of the parent management group. */
549
+ export interface EntityParentGroupInfo {
550
+ /** The fully qualified ID for the parent management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000 */
551
+ id?: string;
552
+ }
553
+
554
+ /** The tenant backfill status */
555
+ export interface TenantBackfillStatusResult {
593
556
  /**
594
- * @member {string} [updatedBy] The identity of the principal or process that
595
- * updated the object.
596
- * **NOTE: This property will not be serialized. It can only be populated by
597
- * the server.**
557
+ * The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000
558
+ * NOTE: This property will not be serialized. It can only be populated by the server.
598
559
  */
599
- readonly updatedBy?: string;
560
+ readonly tenantId?: string;
600
561
  /**
601
- * @member {CreateParentGroupInfo} [parent] Parent.
562
+ * The status of the Tenant Backfill
563
+ * NOTE: This property will not be serialized. It can only be populated by the server.
602
564
  */
603
- parent?: CreateParentGroupInfo;
565
+ readonly status?: Status;
604
566
  }
605
567
 
606
- /**
607
- * @interface
608
- * An interface representing CreateManagementGroupChildInfo.
609
- * The child information of a management group used during creation.
610
- *
611
- */
612
- export interface CreateManagementGroupChildInfo {
613
- /**
614
- * @member {Type2} [type] The type of child resource. The fully qualified
615
- * resource type which includes provider namespace (e.g.
616
- * /providers/Microsoft.Management/managementGroups). Possible values
617
- * include: '/providers/Microsoft.Management/managementGroups',
618
- * '/subscriptions'
619
- * **NOTE: This property will not be serialized. It can only be populated by
620
- * the server.**
621
- */
622
- readonly type?: Type2;
568
+ /** The results of an asynchronous operation. */
569
+ export interface OperationResults {
623
570
  /**
624
- * @member {string} [id] The fully qualified ID for the child resource
625
- * (management group or subscription). For example,
626
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
627
- * **NOTE: This property will not be serialized. It can only be populated by
628
- * the server.**
571
+ * The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
572
+ * NOTE: This property will not be serialized. It can only be populated by the server.
629
573
  */
630
574
  readonly id?: string;
631
575
  /**
632
- * @member {string} [name] The name of the child entity.
633
- * **NOTE: This property will not be serialized. It can only be populated by
634
- * the server.**
576
+ * The type of the resource. For example, Microsoft.Management/managementGroups
577
+ * NOTE: This property will not be serialized. It can only be populated by the server.
635
578
  */
636
- readonly name?: string;
637
- /**
638
- * @member {string} [displayName] The friendly name of the child resource.
639
- * **NOTE: This property will not be serialized. It can only be populated by
640
- * the server.**
641
- */
642
- readonly displayName?: string;
643
- /**
644
- * @member {string[]} [roles] The roles definitions associated with the
645
- * management group.
646
- * **NOTE: This property will not be serialized. It can only be populated by
647
- * the server.**
648
- */
649
- readonly roles?: string[];
579
+ readonly type?: string;
650
580
  /**
651
- * @member {CreateManagementGroupChildInfo[]} [children] The list of
652
- * children.
653
- * **NOTE: This property will not be serialized. It can only be populated by
654
- * the server.**
581
+ * The name of the management group. For example, 00000000-0000-0000-0000-000000000000
582
+ * NOTE: This property will not be serialized. It can only be populated by the server.
655
583
  */
656
- readonly children?: CreateManagementGroupChildInfo[];
584
+ readonly name?: string;
585
+ /** The AAD Tenant ID associated with the management group. For example, 00000000-0000-0000-0000-000000000000 */
586
+ tenantId?: string;
587
+ /** The friendly name of the management group. */
588
+ displayName?: string;
657
589
  }
658
590
 
659
- /**
660
- * @interface
661
- * An interface representing CreateManagementGroupRequest.
662
- * Management group creation parameters.
663
- *
664
- * @extends BaseResource
665
- */
666
- export interface CreateManagementGroupRequest extends BaseResource {
591
+ /** The management group details for the hierarchy view. */
592
+ export interface EntityHierarchyItem {
667
593
  /**
668
- * @member {string} [id] The fully qualified ID for the management group.
669
- * For example,
670
- * /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
671
- * **NOTE: This property will not be serialized. It can only be populated by
672
- * the server.**
594
+ * The fully qualified ID for the management group. For example, /providers/Microsoft.Management/managementGroups/0000000-0000-0000-0000-000000000000
595
+ * NOTE: This property will not be serialized. It can only be populated by the server.
673
596
  */
674
597
  readonly id?: string;
675
598
  /**
676
- * @member {string} [type] The type of the resource. For example,
677
- * /providers/Microsoft.Management/managementGroups
678
- * **NOTE: This property will not be serialized. It can only be populated by
679
- * the server.**
599
+ * The type of the resource. For example, Microsoft.Management/managementGroups
600
+ * NOTE: This property will not be serialized. It can only be populated by the server.
680
601
  */
681
602
  readonly type?: string;
682
603
  /**
683
- * @member {string} [name] The name of the management group. For example,
684
- * 00000000-0000-0000-0000-000000000000
685
- */
686
- name?: string;
687
- /**
688
- * @member {string} [tenantId] The AAD Tenant ID associated with the
689
- * management group. For example, 00000000-0000-0000-0000-000000000000
690
- * **NOTE: This property will not be serialized. It can only be populated by
691
- * the server.**
692
- */
693
- readonly tenantId?: string;
694
- /**
695
- * @member {string} [displayName] The friendly name of the management group.
696
- * If no value is passed then this field will be set to the groupId.
604
+ * The name of the management group. For example, 00000000-0000-0000-0000-000000000000
605
+ * NOTE: This property will not be serialized. It can only be populated by the server.
697
606
  */
607
+ readonly name?: string;
608
+ /** The friendly name of the management group. */
698
609
  displayName?: string;
699
- /**
700
- * @member {string[]} [roles] The roles definitions associated with the
701
- * management group.
702
- * **NOTE: This property will not be serialized. It can only be populated by
703
- * the server.**
704
- */
705
- readonly roles?: string[];
706
- /**
707
- * @member {CreateManagementGroupDetails} [details] Details.
708
- */
709
- details?: CreateManagementGroupDetails;
710
- /**
711
- * @member {CreateManagementGroupChildInfo[]} [children] The list of
712
- * children.
713
- * **NOTE: This property will not be serialized. It can only be populated by
714
- * the server.**
715
- */
716
- readonly children?: CreateManagementGroupChildInfo[];
610
+ /** The users specific permissions to this item. */
611
+ permissions?: Permissions;
612
+ /** The list of children. */
613
+ children?: EntityHierarchyItem[];
717
614
  }
718
615
 
719
- /**
720
- * @interface
721
- * An interface representing CheckNameAvailabilityRequest.
722
- * Management group name availability check parameters.
723
- *
724
- */
725
- export interface CheckNameAvailabilityRequest {
616
+ /** Defines headers for ManagementGroups_createOrUpdate operation. */
617
+ export interface ManagementGroupsCreateOrUpdateHeaders {
726
618
  /**
727
- * @member {string} [name] the name to check for availability
619
+ * URL for determining when an operation has completed. Send a GET request to the URL in Location header.
620
+ * The URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.
621
+ *
622
+ * For more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers
728
623
  */
729
- name?: string;
624
+ location?: string;
730
625
  /**
731
- * @member {Type} [type] fully qualified resource type which includes
732
- * provider namespace. Possible values include:
733
- * '/providers/Microsoft.Management/managementGroups'
626
+ * URL for checking the ongoing status of the operation.
627
+ * To get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.
628
+ *
629
+ * For more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations
734
630
  */
735
- type?: Type;
631
+ azureAsyncOperation?: string;
736
632
  }
737
633
 
738
- /**
739
- * @interface
740
- * An interface representing ManagementGroupsListOptionalParams.
741
- * Optional Parameters.
742
- *
743
- * @extends RequestOptionsBase
744
- */
745
- export interface ManagementGroupsListOptionalParams extends msRest.RequestOptionsBase {
634
+ /** Defines headers for ManagementGroups_delete operation. */
635
+ export interface ManagementGroupsDeleteHeaders {
746
636
  /**
747
- * @member {string} [cacheControl] Indicates that the request shouldn't
748
- * utilize any caches. Default value: 'no-cache' .
637
+ * URL for determining when an operation has completed. Send a GET request to the URL in Location header.
638
+ * The URI should return a 202 until the operation reaches a terminal state and 200 once it reaches a terminal state.
639
+ *
640
+ * For more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#202-accepted-and-location-headers
749
641
  */
750
- cacheControl?: string;
642
+ location?: string;
751
643
  /**
752
- * @member {string} [skiptoken] Page continuation token is only used if a
753
- * previous operation returned a partial result. If a previous response
754
- * contains a nextLink element, the value of the nextLink element will
755
- * include a token parameter that specifies a starting point to use for
756
- * subsequent calls.
644
+ * URL for checking the ongoing status of the operation.
645
+ * To get the status of the asynchronous operation, send a GET request to the URL in Azure-AsyncOperation header value.
646
+ *
647
+ * For more info: https://github.com/Azure/azure-resource-manager-rpc/blob/master/v1.0/Addendum.md#asynchronous-operations
757
648
  */
758
- skiptoken?: string;
649
+ azureAsyncOperation?: string;
759
650
  }
760
651
 
761
- /**
762
- * @interface
763
- * An interface representing ManagementGroupsGetOptionalParams.
764
- * Optional Parameters.
765
- *
766
- * @extends RequestOptionsBase
767
- */
768
- export interface ManagementGroupsGetOptionalParams extends msRest.RequestOptionsBase {
769
- /**
770
- * @member {Expand} [expand] The $expand=children query string parameter
771
- * allows clients to request inclusion of children in the response payload.
772
- * Possible values include: 'children'
773
- */
774
- expand?: Expand;
775
- /**
776
- * @member {boolean} [recurse] The $recurse=true query string parameter
777
- * allows clients to request inclusion of entire hierarchy in the response
778
- * payload. Note that $expand=children must be passed up if $recurse is set
779
- * to true.
780
- */
781
- recurse?: boolean;
782
- /**
783
- * @member {string} [filter] A filter which allows the exclusion of
784
- * subscriptions from results (i.e. '$filter=children.childType ne
785
- * Subscription')
786
- */
787
- filter?: string;
788
- /**
789
- * @member {string} [cacheControl] Indicates that the request shouldn't
790
- * utilize any caches. Default value: 'no-cache' .
791
- */
792
- cacheControl?: string;
652
+ /** Known values of {@link Enum0} that the service accepts. */
653
+ export enum KnownEnum0 {
654
+ Children = "children",
655
+ Path = "path",
656
+ Ancestors = "ancestors"
793
657
  }
794
658
 
795
659
  /**
796
- * @interface
797
- * An interface representing ManagementGroupsCreateOrUpdateOptionalParams.
798
- * Optional Parameters.
799
- *
800
- * @extends RequestOptionsBase
660
+ * Defines values for Enum0. \
661
+ * {@link KnownEnum0} can be used interchangeably with Enum0,
662
+ * this enum contains the known values that the service supports.
663
+ * ### Known values supported by the service
664
+ * **children** \
665
+ * **path** \
666
+ * **ancestors**
801
667
  */
802
- export interface ManagementGroupsCreateOrUpdateOptionalParams extends msRest.RequestOptionsBase {
803
- /**
804
- * @member {string} [cacheControl] Indicates that the request shouldn't
805
- * utilize any caches. Default value: 'no-cache' .
806
- */
807
- cacheControl?: string;
668
+ export type Enum0 = string;
669
+
670
+ /** Known values of {@link ManagementGroupChildType} that the service accepts. */
671
+ export enum KnownManagementGroupChildType {
672
+ MicrosoftManagementManagementGroups = "Microsoft.Management/managementGroups",
673
+ Subscriptions = "/subscriptions"
808
674
  }
809
675
 
810
676
  /**
811
- * @interface
812
- * An interface representing ManagementGroupsUpdateOptionalParams.
813
- * Optional Parameters.
814
- *
815
- * @extends RequestOptionsBase
677
+ * Defines values for ManagementGroupChildType. \
678
+ * {@link KnownManagementGroupChildType} can be used interchangeably with ManagementGroupChildType,
679
+ * this enum contains the known values that the service supports.
680
+ * ### Known values supported by the service
681
+ * **Microsoft.Management\/managementGroups** \
682
+ * **\/subscriptions**
816
683
  */
817
- export interface ManagementGroupsUpdateOptionalParams extends msRest.RequestOptionsBase {
818
- /**
819
- * @member {string} [cacheControl] Indicates that the request shouldn't
820
- * utilize any caches. Default value: 'no-cache' .
821
- */
822
- cacheControl?: string;
684
+ export type ManagementGroupChildType = string;
685
+
686
+ /** Known values of {@link Enum2} that the service accepts. */
687
+ export enum KnownEnum2 {
688
+ AllowedParents = "AllowedParents",
689
+ AllowedChildren = "AllowedChildren",
690
+ ParentAndFirstLevelChildren = "ParentAndFirstLevelChildren",
691
+ ParentOnly = "ParentOnly",
692
+ ChildrenOnly = "ChildrenOnly"
823
693
  }
824
694
 
825
695
  /**
826
- * @interface
827
- * An interface representing ManagementGroupsDeleteMethodOptionalParams.
828
- * Optional Parameters.
829
- *
830
- * @extends RequestOptionsBase
831
- */
832
- export interface ManagementGroupsDeleteMethodOptionalParams extends msRest.RequestOptionsBase {
833
- /**
834
- * @member {string} [cacheControl] Indicates that the request shouldn't
835
- * utilize any caches. Default value: 'no-cache' .
836
- */
837
- cacheControl?: string;
696
+ * Defines values for Enum2. \
697
+ * {@link KnownEnum2} can be used interchangeably with Enum2,
698
+ * this enum contains the known values that the service supports.
699
+ * ### Known values supported by the service
700
+ * **AllowedParents** \
701
+ * **AllowedChildren** \
702
+ * **ParentAndFirstLevelChildren** \
703
+ * **ParentOnly** \
704
+ * **ChildrenOnly**
705
+ */
706
+ export type Enum2 = string;
707
+
708
+ /** Known values of {@link Enum3} that the service accepts. */
709
+ export enum KnownEnum3 {
710
+ FullHierarchy = "FullHierarchy",
711
+ GroupsOnly = "GroupsOnly",
712
+ SubscriptionsOnly = "SubscriptionsOnly",
713
+ Audit = "Audit"
838
714
  }
839
715
 
840
716
  /**
841
- * @interface
842
- * An interface representing ManagementGroupsBeginCreateOrUpdateOptionalParams.
843
- * Optional Parameters.
844
- *
845
- * @extends RequestOptionsBase
717
+ * Defines values for Enum3. \
718
+ * {@link KnownEnum3} can be used interchangeably with Enum3,
719
+ * this enum contains the known values that the service supports.
720
+ * ### Known values supported by the service
721
+ * **FullHierarchy** \
722
+ * **GroupsOnly** \
723
+ * **SubscriptionsOnly** \
724
+ * **Audit**
846
725
  */
847
- export interface ManagementGroupsBeginCreateOrUpdateOptionalParams extends msRest.RequestOptionsBase {
848
- /**
849
- * @member {string} [cacheControl] Indicates that the request shouldn't
850
- * utilize any caches. Default value: 'no-cache' .
851
- */
852
- cacheControl?: string;
726
+ export type Enum3 = string;
727
+
728
+ /** Known values of {@link Permissions} that the service accepts. */
729
+ export enum KnownPermissions {
730
+ Noaccess = "noaccess",
731
+ View = "view",
732
+ Edit = "edit",
733
+ Delete = "delete"
853
734
  }
854
735
 
855
736
  /**
856
- * @interface
857
- * An interface representing ManagementGroupsBeginDeleteMethodOptionalParams.
858
- * Optional Parameters.
859
- *
860
- * @extends RequestOptionsBase
861
- */
862
- export interface ManagementGroupsBeginDeleteMethodOptionalParams extends msRest.RequestOptionsBase {
737
+ * Defines values for Permissions. \
738
+ * {@link KnownPermissions} can be used interchangeably with Permissions,
739
+ * this enum contains the known values that the service supports.
740
+ * ### Known values supported by the service
741
+ * **noaccess** \
742
+ * **view** \
743
+ * **edit** \
744
+ * **delete**
745
+ */
746
+ export type Permissions = string;
747
+ /** Defines values for Reason. */
748
+ export type Reason = "Invalid" | "AlreadyExists";
749
+ /** Defines values for Status. */
750
+ export type Status =
751
+ | "NotStarted"
752
+ | "NotStartedButGroupsExist"
753
+ | "Started"
754
+ | "Failed"
755
+ | "Cancelled"
756
+ | "Completed";
757
+
758
+ /** Optional parameters. */
759
+ export interface ManagementGroupsListOptionalParams
760
+ extends coreClient.OperationOptions {
761
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
762
+ cacheControl?: string;
863
763
  /**
864
- * @member {string} [cacheControl] Indicates that the request shouldn't
865
- * utilize any caches. Default value: 'no-cache' .
764
+ * Page continuation token is only used if a previous operation returned a partial result.
765
+ * If a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.
766
+ *
866
767
  */
768
+ skiptoken?: string;
769
+ }
770
+
771
+ /** Contains response data for the list operation. */
772
+ export type ManagementGroupsListResponse = ManagementGroupListResult;
773
+
774
+ /** Optional parameters. */
775
+ export interface ManagementGroupsGetOptionalParams
776
+ extends coreClient.OperationOptions {
777
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
867
778
  cacheControl?: string;
779
+ /** The $expand=children query string parameter allows clients to request inclusion of children in the response payload. $expand=path includes the path from the root group to the current group. $expand=ancestors includes the ancestor Ids of the current group. */
780
+ expand?: Enum0;
781
+ /** The $recurse=true query string parameter allows clients to request inclusion of entire hierarchy in the response payload. Note that $expand=children must be passed up if $recurse is set to true. */
782
+ recurse?: boolean;
783
+ /** A filter which allows the exclusion of subscriptions from results (i.e. '$filter=children.childType ne Subscription') */
784
+ filter?: string;
868
785
  }
869
786
 
870
- /**
871
- * @interface
872
- * An interface representing ManagementGroupsListNextOptionalParams.
873
- * Optional Parameters.
874
- *
875
- * @extends RequestOptionsBase
876
- */
877
- export interface ManagementGroupsListNextOptionalParams extends msRest.RequestOptionsBase {
878
- /**
879
- * @member {string} [cacheControl] Indicates that the request shouldn't
880
- * utilize any caches. Default value: 'no-cache' .
881
- */
787
+ /** Contains response data for the get operation. */
788
+ export type ManagementGroupsGetResponse = ManagementGroup;
789
+
790
+ /** Optional parameters. */
791
+ export interface ManagementGroupsCreateOrUpdateOptionalParams
792
+ extends coreClient.OperationOptions {
793
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
882
794
  cacheControl?: string;
795
+ /** Delay to wait until next poll, in milliseconds. */
796
+ updateIntervalInMs?: number;
797
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
798
+ resumeFrom?: string;
883
799
  }
884
800
 
885
- /**
886
- * @interface
887
- * An interface representing ManagementGroupSubscriptionsCreateOptionalParams.
888
- * Optional Parameters.
889
- *
890
- * @extends RequestOptionsBase
891
- */
892
- export interface ManagementGroupSubscriptionsCreateOptionalParams extends msRest.RequestOptionsBase {
893
- /**
894
- * @member {string} [cacheControl] Indicates that the request shouldn't
895
- * utilize any caches. Default value: 'no-cache' .
896
- */
801
+ /** Contains response data for the createOrUpdate operation. */
802
+ export type ManagementGroupsCreateOrUpdateResponse = ManagementGroup;
803
+
804
+ /** Optional parameters. */
805
+ export interface ManagementGroupsUpdateOptionalParams
806
+ extends coreClient.OperationOptions {
807
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
897
808
  cacheControl?: string;
898
809
  }
899
810
 
900
- /**
901
- * @interface
902
- * An interface representing ManagementGroupSubscriptionsDeleteMethodOptionalParams.
903
- * Optional Parameters.
904
- *
905
- * @extends RequestOptionsBase
906
- */
907
- export interface ManagementGroupSubscriptionsDeleteMethodOptionalParams extends msRest.RequestOptionsBase {
908
- /**
909
- * @member {string} [cacheControl] Indicates that the request shouldn't
910
- * utilize any caches. Default value: 'no-cache' .
911
- */
811
+ /** Contains response data for the update operation. */
812
+ export type ManagementGroupsUpdateResponse = ManagementGroup;
813
+
814
+ /** Optional parameters. */
815
+ export interface ManagementGroupsDeleteOptionalParams
816
+ extends coreClient.OperationOptions {
817
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
912
818
  cacheControl?: string;
819
+ /** Delay to wait until next poll, in milliseconds. */
820
+ updateIntervalInMs?: number;
821
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
822
+ resumeFrom?: string;
913
823
  }
914
824
 
915
- /**
916
- * @interface
917
- * An interface representing EntitiesListOptionalParams.
918
- * Optional Parameters.
919
- *
920
- * @extends RequestOptionsBase
921
- */
922
- export interface EntitiesListOptionalParams extends msRest.RequestOptionsBase {
825
+ /** Contains response data for the delete operation. */
826
+ export type ManagementGroupsDeleteResponse = ManagementGroupsDeleteHeaders &
827
+ AzureAsyncOperationResults;
828
+
829
+ /** Optional parameters. */
830
+ export interface ManagementGroupsGetDescendantsOptionalParams
831
+ extends coreClient.OperationOptions {
923
832
  /**
924
- * @member {string} [skiptoken] Page continuation token is only used if a
925
- * previous operation returned a partial result. If a previous response
926
- * contains a nextLink element, the value of the nextLink element will
927
- * include a token parameter that specifies a starting point to use for
928
- * subsequent calls.
833
+ * Page continuation token is only used if a previous operation returned a partial result.
834
+ * If a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.
835
+ *
929
836
  */
930
837
  skiptoken?: string;
931
- /**
932
- * @member {number} [skip] Number of entities to skip over when retrieving
933
- * results. Passing this in will override $skipToken.
934
- */
935
- skip?: number;
936
- /**
937
- * @member {number} [top] Number of elements to return when retrieving
938
- * results. Passing this in will override $skipToken.
939
- */
838
+ /** Number of elements to return when retrieving results. Passing this in will override $skipToken. */
940
839
  top?: number;
840
+ }
841
+
842
+ /** Contains response data for the getDescendants operation. */
843
+ export type ManagementGroupsGetDescendantsResponse = DescendantListResult;
844
+
845
+ /** Optional parameters. */
846
+ export interface ManagementGroupsListNextOptionalParams
847
+ extends coreClient.OperationOptions {
848
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
849
+ cacheControl?: string;
941
850
  /**
942
- * @member {string} [select] This parameter specifies the fields to include
943
- * in the response. Can include any combination of
944
- * Name,DisplayName,Type,ParentDisplayNameChain,ParentChain, e.g.
945
- * '$select=Name,DisplayName,Type,ParentDisplayNameChain,ParentNameChain'.
946
- * When specified the $select parameter can override select in $skipToken.
947
- */
948
- select?: string;
949
- /**
950
- * @member {Search} [search] The $search parameter is used in conjunction
951
- * with the $filter parameter to return three different outputs depending on
952
- * the parameter passed in. With $search=AllowedParents the API will return
953
- * the entity info of all groups that the requested entity will be able to
954
- * reparent to as determined by the user's permissions. With
955
- * $search=AllowedChildren the API will return the entity info of all
956
- * entities that can be added as children of the requested entity. With
957
- * $search=ParentAndFirstLevelChildren the API will return the parent and
958
- * first level of children that the user has either direct access to or
959
- * indirect access via one of their descendants. Possible values include:
960
- * 'AllowedParents', 'AllowedChildren', 'ParentAndFirstLevelChildren',
961
- * 'ParentOnly', 'ChildrenOnly'
962
- */
963
- search?: Search;
964
- /**
965
- * @member {string} [filter] The filter parameter allows you to filter on the
966
- * the name or display name fields. You can check for equality on the name
967
- * field (e.g. name eq '{entityName}') and you can check for substrings on
968
- * either the name or display name fields(e.g. contains(name,
969
- * '{substringToSearch}'), contains(displayName, '{substringToSearch')). Note
970
- * that the '{entityName}' and '{substringToSearch}' fields are checked case
971
- * insensitively.
972
- */
973
- filter?: string;
974
- /**
975
- * @member {View} [view] The view parameter allows clients to filter the type
976
- * of data that is returned by the getEntities call. Possible values include:
977
- * 'FullHierarchy', 'GroupsOnly', 'SubscriptionsOnly', 'Audit'
978
- */
979
- view?: View;
980
- /**
981
- * @member {string} [groupName] A filter which allows the get entities call
982
- * to focus on a particular group (i.e. "$filter=name eq 'groupName'")
851
+ * Page continuation token is only used if a previous operation returned a partial result.
852
+ * If a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.
853
+ *
983
854
  */
984
- groupName?: string;
855
+ skiptoken?: string;
856
+ }
857
+
858
+ /** Contains response data for the listNext operation. */
859
+ export type ManagementGroupsListNextResponse = ManagementGroupListResult;
860
+
861
+ /** Optional parameters. */
862
+ export interface ManagementGroupsGetDescendantsNextOptionalParams
863
+ extends coreClient.OperationOptions {
985
864
  /**
986
- * @member {string} [cacheControl] Indicates that the request shouldn't
987
- * utilize any caches. Default value: 'no-cache' .
865
+ * Page continuation token is only used if a previous operation returned a partial result.
866
+ * If a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.
867
+ *
988
868
  */
869
+ skiptoken?: string;
870
+ /** Number of elements to return when retrieving results. Passing this in will override $skipToken. */
871
+ top?: number;
872
+ }
873
+
874
+ /** Contains response data for the getDescendantsNext operation. */
875
+ export type ManagementGroupsGetDescendantsNextResponse = DescendantListResult;
876
+
877
+ /** Optional parameters. */
878
+ export interface ManagementGroupSubscriptionsCreateOptionalParams
879
+ extends coreClient.OperationOptions {
880
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
989
881
  cacheControl?: string;
990
882
  }
991
883
 
992
- /**
993
- * @interface
994
- * An interface representing EntitiesListNextOptionalParams.
995
- * Optional Parameters.
996
- *
997
- * @extends RequestOptionsBase
998
- */
999
- export interface EntitiesListNextOptionalParams extends msRest.RequestOptionsBase {
1000
- /**
1001
- * @member {string} [cacheControl] Indicates that the request shouldn't
1002
- * utilize any caches. Default value: 'no-cache' .
1003
- */
884
+ /** Contains response data for the create operation. */
885
+ export type ManagementGroupSubscriptionsCreateResponse = SubscriptionUnderManagementGroup;
886
+
887
+ /** Optional parameters. */
888
+ export interface ManagementGroupSubscriptionsDeleteOptionalParams
889
+ extends coreClient.OperationOptions {
890
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
1004
891
  cacheControl?: string;
1005
892
  }
1006
893
 
1007
- /**
1008
- * @interface
1009
- * An interface representing ManagementGroupsAPIOptions.
1010
- * @extends AzureServiceClientOptions
1011
- */
1012
- export interface ManagementGroupsAPIOptions extends AzureServiceClientOptions {
1013
- /**
1014
- * @member {string} [baseUri]
1015
- */
1016
- baseUri?: string;
894
+ /** Optional parameters. */
895
+ export interface ManagementGroupSubscriptionsGetSubscriptionOptionalParams
896
+ extends coreClient.OperationOptions {
897
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
898
+ cacheControl?: string;
1017
899
  }
1018
900
 
901
+ /** Contains response data for the getSubscription operation. */
902
+ export type ManagementGroupSubscriptionsGetSubscriptionResponse = SubscriptionUnderManagementGroup;
1019
903
 
1020
- /**
1021
- * @interface
1022
- * An interface representing the ManagementGroupListResult.
1023
- * Describes the result of the request to list management groups.
1024
- *
1025
- * @extends Array<ManagementGroupInfo>
1026
- */
1027
- export interface ManagementGroupListResult extends Array<ManagementGroupInfo> {
904
+ /** Optional parameters. */
905
+ export interface ManagementGroupSubscriptionsGetSubscriptionsUnderManagementGroupOptionalParams
906
+ extends coreClient.OperationOptions {
1028
907
  /**
1029
- * @member {string} [nextLink] The URL to use for getting the next set of
1030
- * results.
1031
- * **NOTE: This property will not be serialized. It can only be populated by
1032
- * the server.**
908
+ * Page continuation token is only used if a previous operation returned a partial result.
909
+ * If a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.
910
+ *
1033
911
  */
1034
- readonly nextLink?: string;
912
+ skiptoken?: string;
1035
913
  }
1036
914
 
1037
- /**
1038
- * @interface
1039
- * An interface representing the OperationListResult.
1040
- * Describes the result of the request to list Microsoft.Management operations.
1041
- *
1042
- * @extends Array<Operation>
1043
- */
1044
- export interface OperationListResult extends Array<Operation> {
1045
- /**
1046
- * @member {string} [nextLink] URL to get the next set of operation list
1047
- * results if there are any.
1048
- * **NOTE: This property will not be serialized. It can only be populated by
1049
- * the server.**
1050
- */
1051
- readonly nextLink?: string;
1052
- }
915
+ /** Contains response data for the getSubscriptionsUnderManagementGroup operation. */
916
+ export type ManagementGroupSubscriptionsGetSubscriptionsUnderManagementGroupResponse = ListSubscriptionUnderManagementGroup;
1053
917
 
1054
- /**
1055
- * @interface
1056
- * An interface representing the EntityListResult.
1057
- * Describes the result of the request to view entities.
1058
- *
1059
- * @extends Array<EntityInfo>
1060
- */
1061
- export interface EntityListResult extends Array<EntityInfo> {
918
+ /** Optional parameters. */
919
+ export interface ManagementGroupSubscriptionsGetSubscriptionsUnderManagementGroupNextOptionalParams
920
+ extends coreClient.OperationOptions {
1062
921
  /**
1063
- * @member {number} [count] Total count of records that match the filter
1064
- * **NOTE: This property will not be serialized. It can only be populated by
1065
- * the server.**
922
+ * Page continuation token is only used if a previous operation returned a partial result.
923
+ * If a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.
924
+ *
1066
925
  */
1067
- readonly count?: number;
1068
- /**
1069
- * @member {string} [nextLink] The URL to use for getting the next set of
1070
- * results.
1071
- * **NOTE: This property will not be serialized. It can only be populated by
1072
- * the server.**
1073
- */
1074
- readonly nextLink?: string;
926
+ skiptoken?: string;
1075
927
  }
1076
928
 
1077
- /**
1078
- * Defines values for Reason.
1079
- * Possible values include: 'Invalid', 'AlreadyExists'
1080
- * @readonly
1081
- * @enum {string}
1082
- */
1083
- export type Reason = 'Invalid' | 'AlreadyExists';
1084
-
1085
- /**
1086
- * Defines values for Status.
1087
- * Possible values include: 'NotStarted', 'NotStartedButGroupsExist', 'Started', 'Failed',
1088
- * 'Cancelled', 'Completed'
1089
- * @readonly
1090
- * @enum {string}
1091
- */
1092
- export type Status = 'NotStarted' | 'NotStartedButGroupsExist' | 'Started' | 'Failed' | 'Cancelled' | 'Completed';
1093
-
1094
- /**
1095
- * Defines values for Type.
1096
- * Possible values include: '/providers/Microsoft.Management/managementGroups'
1097
- * @readonly
1098
- * @enum {string}
1099
- */
1100
- export type Type = '/providers/Microsoft.Management/managementGroups';
929
+ /** Contains response data for the getSubscriptionsUnderManagementGroupNext operation. */
930
+ export type ManagementGroupSubscriptionsGetSubscriptionsUnderManagementGroupNextResponse = ListSubscriptionUnderManagementGroup;
1101
931
 
1102
- /**
1103
- * Defines values for Type1.
1104
- * Possible values include: '/providers/Microsoft.Management/managementGroups', '/subscriptions'
1105
- * @readonly
1106
- * @enum {string}
1107
- */
1108
- export type Type1 = '/providers/Microsoft.Management/managementGroups' | '/subscriptions';
1109
-
1110
- /**
1111
- * Defines values for ProvisioningState.
1112
- * Possible values include: 'Updating'
1113
- * @readonly
1114
- * @enum {string}
1115
- */
1116
- export type ProvisioningState = 'Updating';
932
+ /** Optional parameters. */
933
+ export interface HierarchySettingsListOptionalParams
934
+ extends coreClient.OperationOptions {}
1117
935
 
1118
- /**
1119
- * Defines values for Permissions.
1120
- * Possible values include: 'noaccess', 'view', 'edit', 'delete'
1121
- * @readonly
1122
- * @enum {string}
1123
- */
1124
- export type Permissions = 'noaccess' | 'view' | 'edit' | 'delete';
936
+ /** Contains response data for the list operation. */
937
+ export type HierarchySettingsListResponse = HierarchySettingsList;
1125
938
 
1126
- /**
1127
- * Defines values for InheritedPermissions.
1128
- * Possible values include: 'noaccess', 'view', 'edit', 'delete'
1129
- * @readonly
1130
- * @enum {string}
1131
- */
1132
- export type InheritedPermissions = 'noaccess' | 'view' | 'edit' | 'delete';
939
+ /** Optional parameters. */
940
+ export interface HierarchySettingsGetOptionalParams
941
+ extends coreClient.OperationOptions {}
1133
942
 
1134
- /**
1135
- * Defines values for Permissions1.
1136
- * Possible values include: 'noaccess', 'view', 'edit', 'delete'
1137
- * @readonly
1138
- * @enum {string}
1139
- */
1140
- export type Permissions1 = 'noaccess' | 'view' | 'edit' | 'delete';
943
+ /** Contains response data for the get operation. */
944
+ export type HierarchySettingsGetResponse = HierarchySettings;
1141
945
 
1142
- /**
1143
- * Defines values for Type2.
1144
- * Possible values include: '/providers/Microsoft.Management/managementGroups', '/subscriptions'
1145
- * @readonly
1146
- * @enum {string}
1147
- */
1148
- export type Type2 = '/providers/Microsoft.Management/managementGroups' | '/subscriptions';
946
+ /** Optional parameters. */
947
+ export interface HierarchySettingsCreateOrUpdateOptionalParams
948
+ extends coreClient.OperationOptions {}
1149
949
 
1150
- /**
1151
- * Defines values for Expand.
1152
- * Possible values include: 'children'
1153
- * @readonly
1154
- * @enum {string}
1155
- */
1156
- export type Expand = 'children';
950
+ /** Contains response data for the createOrUpdate operation. */
951
+ export type HierarchySettingsCreateOrUpdateResponse = HierarchySettings;
1157
952
 
1158
- /**
1159
- * Defines values for Search.
1160
- * Possible values include: 'AllowedParents', 'AllowedChildren', 'ParentAndFirstLevelChildren',
1161
- * 'ParentOnly', 'ChildrenOnly'
1162
- * @readonly
1163
- * @enum {string}
1164
- */
1165
- export type Search = 'AllowedParents' | 'AllowedChildren' | 'ParentAndFirstLevelChildren' | 'ParentOnly' | 'ChildrenOnly';
953
+ /** Optional parameters. */
954
+ export interface HierarchySettingsUpdateOptionalParams
955
+ extends coreClient.OperationOptions {}
1166
956
 
1167
- /**
1168
- * Defines values for View.
1169
- * Possible values include: 'FullHierarchy', 'GroupsOnly', 'SubscriptionsOnly', 'Audit'
1170
- * @readonly
1171
- * @enum {string}
1172
- */
1173
- export type View = 'FullHierarchy' | 'GroupsOnly' | 'SubscriptionsOnly' | 'Audit';
957
+ /** Contains response data for the update operation. */
958
+ export type HierarchySettingsUpdateResponse = HierarchySettings;
1174
959
 
1175
- /**
1176
- * Contains response data for the list operation.
1177
- */
1178
- export type ManagementGroupsListResponse = ManagementGroupListResult & {
1179
- /**
1180
- * The underlying HTTP response.
1181
- */
1182
- _response: msRest.HttpResponse & {
1183
- /**
1184
- * The response body as text (string format)
1185
- */
1186
- bodyAsText: string;
1187
- /**
1188
- * The response body as parsed JSON or XML
1189
- */
1190
- parsedBody: ManagementGroupListResult;
1191
- };
1192
- };
960
+ /** Optional parameters. */
961
+ export interface HierarchySettingsDeleteOptionalParams
962
+ extends coreClient.OperationOptions {}
1193
963
 
1194
- /**
1195
- * Contains response data for the get operation.
1196
- */
1197
- export type ManagementGroupsGetResponse = ManagementGroup & {
1198
- /**
1199
- * The underlying HTTP response.
1200
- */
1201
- _response: msRest.HttpResponse & {
1202
- /**
1203
- * The response body as text (string format)
1204
- */
1205
- bodyAsText: string;
1206
- /**
1207
- * The response body as parsed JSON or XML
1208
- */
1209
- parsedBody: ManagementGroup;
1210
- };
1211
- };
964
+ /** Optional parameters. */
965
+ export interface OperationsListOptionalParams
966
+ extends coreClient.OperationOptions {}
1212
967
 
1213
- /**
1214
- * Contains response data for the createOrUpdate operation.
1215
- */
1216
- export type ManagementGroupsCreateOrUpdateResponse = {
1217
- /**
1218
- * The parsed response body.
1219
- */
1220
- body: any;
1221
- /**
1222
- * The underlying HTTP response.
1223
- */
1224
- _response: msRest.HttpResponse & {
1225
- /**
1226
- * The response body as text (string format)
1227
- */
1228
- bodyAsText: string;
1229
- /**
1230
- * The response body as parsed JSON or XML
1231
- */
1232
- parsedBody: any;
1233
- };
1234
- };
968
+ /** Contains response data for the list operation. */
969
+ export type OperationsListResponse = OperationListResult;
1235
970
 
1236
- /**
1237
- * Contains response data for the update operation.
1238
- */
1239
- export type ManagementGroupsUpdateResponse = ManagementGroup & {
1240
- /**
1241
- * The underlying HTTP response.
1242
- */
1243
- _response: msRest.HttpResponse & {
1244
- /**
1245
- * The response body as text (string format)
1246
- */
1247
- bodyAsText: string;
1248
- /**
1249
- * The response body as parsed JSON or XML
1250
- */
1251
- parsedBody: ManagementGroup;
1252
- };
1253
- };
971
+ /** Optional parameters. */
972
+ export interface OperationsListNextOptionalParams
973
+ extends coreClient.OperationOptions {}
1254
974
 
1255
- /**
1256
- * Contains response data for the deleteMethod operation.
1257
- */
1258
- export type ManagementGroupsDeleteMethodResponse = OperationResults & {
1259
- /**
1260
- * The underlying HTTP response.
1261
- */
1262
- _response: msRest.HttpResponse & {
1263
- /**
1264
- * The response body as text (string format)
1265
- */
1266
- bodyAsText: string;
1267
- /**
1268
- * The response body as parsed JSON or XML
1269
- */
1270
- parsedBody: OperationResults;
1271
- };
1272
- };
975
+ /** Contains response data for the listNext operation. */
976
+ export type OperationsListNextResponse = OperationListResult;
1273
977
 
1274
- /**
1275
- * Contains response data for the beginCreateOrUpdate operation.
1276
- */
1277
- export type ManagementGroupsBeginCreateOrUpdateResponse = {
1278
- /**
1279
- * The parsed response body.
1280
- */
1281
- body: any;
1282
- /**
1283
- * The underlying HTTP response.
1284
- */
1285
- _response: msRest.HttpResponse & {
1286
- /**
1287
- * The response body as text (string format)
1288
- */
1289
- bodyAsText: string;
1290
- /**
1291
- * The response body as parsed JSON or XML
1292
- */
1293
- parsedBody: any;
1294
- };
1295
- };
978
+ /** Optional parameters. */
979
+ export interface CheckNameAvailabilityOptionalParams
980
+ extends coreClient.OperationOptions {}
1296
981
 
1297
- /**
1298
- * Contains response data for the beginDeleteMethod operation.
1299
- */
1300
- export type ManagementGroupsBeginDeleteMethodResponse = OperationResults & {
1301
- /**
1302
- * The underlying HTTP response.
1303
- */
1304
- _response: msRest.HttpResponse & {
1305
- /**
1306
- * The response body as text (string format)
1307
- */
1308
- bodyAsText: string;
1309
- /**
1310
- * The response body as parsed JSON or XML
1311
- */
1312
- parsedBody: OperationResults;
1313
- };
1314
- };
982
+ /** Contains response data for the checkNameAvailability operation. */
983
+ export type CheckNameAvailabilityResponse = CheckNameAvailabilityResult;
1315
984
 
1316
- /**
1317
- * Contains response data for the listNext operation.
1318
- */
1319
- export type ManagementGroupsListNextResponse = ManagementGroupListResult & {
1320
- /**
1321
- * The underlying HTTP response.
1322
- */
1323
- _response: msRest.HttpResponse & {
1324
- /**
1325
- * The response body as text (string format)
1326
- */
1327
- bodyAsText: string;
1328
- /**
1329
- * The response body as parsed JSON or XML
1330
- */
1331
- parsedBody: ManagementGroupListResult;
1332
- };
1333
- };
985
+ /** Optional parameters. */
986
+ export interface StartTenantBackfillOptionalParams
987
+ extends coreClient.OperationOptions {}
1334
988
 
1335
- /**
1336
- * Contains response data for the list operation.
1337
- */
1338
- export type OperationsListResponse = OperationListResult & {
1339
- /**
1340
- * The underlying HTTP response.
1341
- */
1342
- _response: msRest.HttpResponse & {
1343
- /**
1344
- * The response body as text (string format)
1345
- */
1346
- bodyAsText: string;
1347
- /**
1348
- * The response body as parsed JSON or XML
1349
- */
1350
- parsedBody: OperationListResult;
1351
- };
1352
- };
989
+ /** Contains response data for the startTenantBackfill operation. */
990
+ export type StartTenantBackfillResponse = TenantBackfillStatusResult;
1353
991
 
1354
- /**
1355
- * Contains response data for the listNext operation.
1356
- */
1357
- export type OperationsListNextResponse = OperationListResult & {
1358
- /**
1359
- * The underlying HTTP response.
1360
- */
1361
- _response: msRest.HttpResponse & {
1362
- /**
1363
- * The response body as text (string format)
1364
- */
1365
- bodyAsText: string;
1366
- /**
1367
- * The response body as parsed JSON or XML
1368
- */
1369
- parsedBody: OperationListResult;
1370
- };
1371
- };
992
+ /** Optional parameters. */
993
+ export interface TenantBackfillStatusOptionalParams
994
+ extends coreClient.OperationOptions {}
1372
995
 
1373
- /**
1374
- * Contains response data for the checkNameAvailability operation.
1375
- */
1376
- export type CheckNameAvailabilityResponse = CheckNameAvailabilityResult & {
1377
- /**
1378
- * The underlying HTTP response.
1379
- */
1380
- _response: msRest.HttpResponse & {
1381
- /**
1382
- * The response body as text (string format)
1383
- */
1384
- bodyAsText: string;
1385
- /**
1386
- * The response body as parsed JSON or XML
1387
- */
1388
- parsedBody: CheckNameAvailabilityResult;
1389
- };
1390
- };
996
+ /** Contains response data for the tenantBackfillStatus operation. */
997
+ export type TenantBackfillStatusResponse = TenantBackfillStatusResult;
1391
998
 
1392
- /**
1393
- * Contains response data for the startTenantBackfill operation.
1394
- */
1395
- export type StartTenantBackfillResponse = TenantBackfillStatusResult & {
1396
- /**
1397
- * The underlying HTTP response.
1398
- */
1399
- _response: msRest.HttpResponse & {
1400
- /**
1401
- * The response body as text (string format)
1402
- */
1403
- bodyAsText: string;
1404
- /**
1405
- * The response body as parsed JSON or XML
1406
- */
1407
- parsedBody: TenantBackfillStatusResult;
1408
- };
1409
- };
999
+ /** Optional parameters. */
1000
+ export interface EntitiesListOptionalParams
1001
+ extends coreClient.OperationOptions {
1002
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
1003
+ cacheControl?: string;
1004
+ /**
1005
+ * Page continuation token is only used if a previous operation returned a partial result.
1006
+ * If a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.
1007
+ *
1008
+ */
1009
+ skiptoken?: string;
1010
+ /** The filter parameter allows you to filter on the the name or display name fields. You can check for equality on the name field (e.g. name eq '{entityName}') and you can check for substrings on either the name or display name fields(e.g. contains(name, '{substringToSearch}'), contains(displayName, '{substringToSearch')). Note that the '{entityName}' and '{substringToSearch}' fields are checked case insensitively. */
1011
+ filter?: string;
1012
+ /** Number of elements to return when retrieving results. Passing this in will override $skipToken. */
1013
+ top?: number;
1014
+ /** Number of entities to skip over when retrieving results. Passing this in will override $skipToken. */
1015
+ skip?: number;
1016
+ /** This parameter specifies the fields to include in the response. Can include any combination of Name,DisplayName,Type,ParentDisplayNameChain,ParentChain, e.g. '$select=Name,DisplayName,Type,ParentDisplayNameChain,ParentNameChain'. When specified the $select parameter can override select in $skipToken. */
1017
+ select?: string;
1018
+ /**
1019
+ * The $search parameter is used in conjunction with the $filter parameter to return three different outputs depending on the parameter passed in.
1020
+ * With $search=AllowedParents the API will return the entity info of all groups that the requested entity will be able to reparent to as determined by the user's permissions.
1021
+ * With $search=AllowedChildren the API will return the entity info of all entities that can be added as children of the requested entity.
1022
+ * With $search=ParentAndFirstLevelChildren the API will return the parent and first level of children that the user has either direct access to or indirect access via one of their descendants.
1023
+ * With $search=ParentOnly the API will return only the group if the user has access to at least one of the descendants of the group.
1024
+ * With $search=ChildrenOnly the API will return only the first level of children of the group entity info specified in $filter. The user must have direct access to the children entities or one of it's descendants for it to show up in the results.
1025
+ */
1026
+ search?: Enum2;
1027
+ /** The view parameter allows clients to filter the type of data that is returned by the getEntities call. */
1028
+ view?: Enum3;
1029
+ /** A filter which allows the get entities call to focus on a particular group (i.e. "$filter=name eq 'groupName'") */
1030
+ groupName?: string;
1031
+ }
1410
1032
 
1411
- /**
1412
- * Contains response data for the tenantBackfillStatus operation.
1413
- */
1414
- export type TenantBackfillStatusResponse = TenantBackfillStatusResult & {
1415
- /**
1416
- * The underlying HTTP response.
1417
- */
1418
- _response: msRest.HttpResponse & {
1419
- /**
1420
- * The response body as text (string format)
1421
- */
1422
- bodyAsText: string;
1423
- /**
1424
- * The response body as parsed JSON or XML
1425
- */
1426
- parsedBody: TenantBackfillStatusResult;
1427
- };
1428
- };
1033
+ /** Contains response data for the list operation. */
1034
+ export type EntitiesListResponse = EntityListResult;
1429
1035
 
1430
- /**
1431
- * Contains response data for the list operation.
1432
- */
1433
- export type EntitiesListResponse = EntityListResult & {
1434
- /**
1435
- * The underlying HTTP response.
1436
- */
1437
- _response: msRest.HttpResponse & {
1438
- /**
1439
- * The response body as text (string format)
1440
- */
1441
- bodyAsText: string;
1442
- /**
1443
- * The response body as parsed JSON or XML
1444
- */
1445
- parsedBody: EntityListResult;
1446
- };
1447
- };
1036
+ /** Optional parameters. */
1037
+ export interface EntitiesListNextOptionalParams
1038
+ extends coreClient.OperationOptions {
1039
+ /** Indicates whether the request should utilize any caches. Populate the header with 'no-cache' value to bypass existing caches. */
1040
+ cacheControl?: string;
1041
+ /**
1042
+ * Page continuation token is only used if a previous operation returned a partial result.
1043
+ * If a previous response contains a nextLink element, the value of the nextLink element will include a token parameter that specifies a starting point to use for subsequent calls.
1044
+ *
1045
+ */
1046
+ skiptoken?: string;
1047
+ /** The filter parameter allows you to filter on the the name or display name fields. You can check for equality on the name field (e.g. name eq '{entityName}') and you can check for substrings on either the name or display name fields(e.g. contains(name, '{substringToSearch}'), contains(displayName, '{substringToSearch')). Note that the '{entityName}' and '{substringToSearch}' fields are checked case insensitively. */
1048
+ filter?: string;
1049
+ /** Number of elements to return when retrieving results. Passing this in will override $skipToken. */
1050
+ top?: number;
1051
+ /** Number of entities to skip over when retrieving results. Passing this in will override $skipToken. */
1052
+ skip?: number;
1053
+ /** This parameter specifies the fields to include in the response. Can include any combination of Name,DisplayName,Type,ParentDisplayNameChain,ParentChain, e.g. '$select=Name,DisplayName,Type,ParentDisplayNameChain,ParentNameChain'. When specified the $select parameter can override select in $skipToken. */
1054
+ select?: string;
1055
+ /**
1056
+ * The $search parameter is used in conjunction with the $filter parameter to return three different outputs depending on the parameter passed in.
1057
+ * With $search=AllowedParents the API will return the entity info of all groups that the requested entity will be able to reparent to as determined by the user's permissions.
1058
+ * With $search=AllowedChildren the API will return the entity info of all entities that can be added as children of the requested entity.
1059
+ * With $search=ParentAndFirstLevelChildren the API will return the parent and first level of children that the user has either direct access to or indirect access via one of their descendants.
1060
+ * With $search=ParentOnly the API will return only the group if the user has access to at least one of the descendants of the group.
1061
+ * With $search=ChildrenOnly the API will return only the first level of children of the group entity info specified in $filter. The user must have direct access to the children entities or one of it's descendants for it to show up in the results.
1062
+ */
1063
+ search?: Enum2;
1064
+ /** The view parameter allows clients to filter the type of data that is returned by the getEntities call. */
1065
+ view?: Enum3;
1066
+ /** A filter which allows the get entities call to focus on a particular group (i.e. "$filter=name eq 'groupName'") */
1067
+ groupName?: string;
1068
+ }
1448
1069
 
1449
- /**
1450
- * Contains response data for the listNext operation.
1451
- */
1452
- export type EntitiesListNextResponse = EntityListResult & {
1453
- /**
1454
- * The underlying HTTP response.
1455
- */
1456
- _response: msRest.HttpResponse & {
1457
- /**
1458
- * The response body as text (string format)
1459
- */
1460
- bodyAsText: string;
1461
- /**
1462
- * The response body as parsed JSON or XML
1463
- */
1464
- parsedBody: EntityListResult;
1465
- };
1466
- };
1070
+ /** Contains response data for the listNext operation. */
1071
+ export type EntitiesListNextResponse = EntityListResult;
1072
+
1073
+ /** Optional parameters. */
1074
+ export interface ManagementGroupsAPIOptionalParams
1075
+ extends coreClient.ServiceClientOptions {
1076
+ /** server parameter */
1077
+ $host?: string;
1078
+ /** Api Version */
1079
+ apiVersion?: string;
1080
+ /** Overrides client endpoint. */
1081
+ endpoint?: string;
1082
+ }