@azure/arm-maps 3.0.0 → 3.1.0-beta.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 (104) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/README.md +12 -1
  3. package/dist/index.js +426 -40
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.min.js +1 -1
  6. package/dist/index.min.js.map +1 -1
  7. package/dist-esm/samples-dev/accountsCreateOrUpdateSample.d.ts +2 -0
  8. package/dist-esm/samples-dev/accountsCreateOrUpdateSample.d.ts.map +1 -0
  9. package/dist-esm/samples-dev/accountsCreateOrUpdateSample.js +130 -0
  10. package/dist-esm/samples-dev/accountsCreateOrUpdateSample.js.map +1 -0
  11. package/dist-esm/samples-dev/accountsDeleteSample.d.ts +2 -0
  12. package/dist-esm/samples-dev/accountsDeleteSample.d.ts.map +1 -0
  13. package/dist-esm/samples-dev/accountsDeleteSample.js +31 -0
  14. package/dist-esm/samples-dev/accountsDeleteSample.js.map +1 -0
  15. package/dist-esm/samples-dev/accountsGetSample.d.ts +2 -0
  16. package/dist-esm/samples-dev/accountsGetSample.d.ts.map +1 -0
  17. package/dist-esm/samples-dev/accountsGetSample.js +31 -0
  18. package/dist-esm/samples-dev/accountsGetSample.js.map +1 -0
  19. package/dist-esm/samples-dev/accountsListByResourceGroupSample.d.ts +2 -0
  20. package/dist-esm/samples-dev/accountsListByResourceGroupSample.d.ts.map +1 -0
  21. package/dist-esm/samples-dev/accountsListByResourceGroupSample.js +44 -0
  22. package/dist-esm/samples-dev/accountsListByResourceGroupSample.js.map +1 -0
  23. package/dist-esm/samples-dev/accountsListBySubscriptionSample.d.ts +2 -0
  24. package/dist-esm/samples-dev/accountsListBySubscriptionSample.d.ts.map +1 -0
  25. package/dist-esm/samples-dev/accountsListBySubscriptionSample.js +43 -0
  26. package/dist-esm/samples-dev/accountsListBySubscriptionSample.js.map +1 -0
  27. package/dist-esm/samples-dev/accountsListKeysSample.d.ts +2 -0
  28. package/dist-esm/samples-dev/accountsListKeysSample.d.ts.map +1 -0
  29. package/dist-esm/samples-dev/accountsListKeysSample.js +31 -0
  30. package/dist-esm/samples-dev/accountsListKeysSample.js.map +1 -0
  31. package/dist-esm/samples-dev/accountsListSasSample.d.ts +2 -0
  32. package/dist-esm/samples-dev/accountsListSasSample.d.ts.map +1 -0
  33. package/dist-esm/samples-dev/accountsListSasSample.js +47 -0
  34. package/dist-esm/samples-dev/accountsListSasSample.js.map +1 -0
  35. package/dist-esm/samples-dev/accountsRegenerateKeysSample.d.ts +2 -0
  36. package/dist-esm/samples-dev/accountsRegenerateKeysSample.d.ts.map +1 -0
  37. package/dist-esm/samples-dev/accountsRegenerateKeysSample.js +32 -0
  38. package/dist-esm/samples-dev/accountsRegenerateKeysSample.js.map +1 -0
  39. package/dist-esm/samples-dev/accountsUpdateSample.d.ts +2 -0
  40. package/dist-esm/samples-dev/accountsUpdateSample.d.ts.map +1 -0
  41. package/dist-esm/samples-dev/accountsUpdateSample.js +112 -0
  42. package/dist-esm/samples-dev/accountsUpdateSample.js.map +1 -0
  43. package/dist-esm/samples-dev/creatorsCreateOrUpdateSample.d.ts +2 -0
  44. package/dist-esm/samples-dev/creatorsCreateOrUpdateSample.d.ts.map +1 -0
  45. package/dist-esm/samples-dev/creatorsCreateOrUpdateSample.js +37 -0
  46. package/dist-esm/samples-dev/creatorsCreateOrUpdateSample.js.map +1 -0
  47. package/dist-esm/samples-dev/creatorsDeleteSample.d.ts +2 -0
  48. package/dist-esm/samples-dev/creatorsDeleteSample.d.ts.map +1 -0
  49. package/dist-esm/samples-dev/creatorsDeleteSample.js +32 -0
  50. package/dist-esm/samples-dev/creatorsDeleteSample.js.map +1 -0
  51. package/dist-esm/samples-dev/creatorsGetSample.d.ts +2 -0
  52. package/dist-esm/samples-dev/creatorsGetSample.d.ts.map +1 -0
  53. package/dist-esm/samples-dev/creatorsGetSample.js +32 -0
  54. package/dist-esm/samples-dev/creatorsGetSample.js.map +1 -0
  55. package/dist-esm/samples-dev/creatorsListByAccountSample.d.ts +2 -0
  56. package/dist-esm/samples-dev/creatorsListByAccountSample.d.ts.map +1 -0
  57. package/dist-esm/samples-dev/creatorsListByAccountSample.js +45 -0
  58. package/dist-esm/samples-dev/creatorsListByAccountSample.js.map +1 -0
  59. package/dist-esm/samples-dev/creatorsUpdateSample.d.ts +2 -0
  60. package/dist-esm/samples-dev/creatorsUpdateSample.d.ts.map +1 -0
  61. package/dist-esm/samples-dev/creatorsUpdateSample.js +36 -0
  62. package/dist-esm/samples-dev/creatorsUpdateSample.js.map +1 -0
  63. package/dist-esm/samples-dev/mapsListOperationsSample.d.ts +2 -0
  64. package/dist-esm/samples-dev/mapsListOperationsSample.d.ts.map +1 -0
  65. package/dist-esm/samples-dev/mapsListOperationsSample.js +43 -0
  66. package/dist-esm/samples-dev/mapsListOperationsSample.js.map +1 -0
  67. package/dist-esm/samples-dev/mapsListSubscriptionOperationsSample.d.ts +2 -0
  68. package/dist-esm/samples-dev/mapsListSubscriptionOperationsSample.d.ts.map +1 -0
  69. package/dist-esm/samples-dev/mapsListSubscriptionOperationsSample.js +43 -0
  70. package/dist-esm/samples-dev/mapsListSubscriptionOperationsSample.js.map +1 -0
  71. package/dist-esm/src/azureMapsManagementClient.d.ts.map +1 -1
  72. package/dist-esm/src/azureMapsManagementClient.js +21 -3
  73. package/dist-esm/src/azureMapsManagementClient.js.map +1 -1
  74. package/dist-esm/src/models/index.d.ts +115 -2
  75. package/dist-esm/src/models/index.d.ts.map +1 -1
  76. package/dist-esm/src/models/index.js +6 -0
  77. package/dist-esm/src/models/index.js.map +1 -1
  78. package/dist-esm/src/models/mappers.d.ts +7 -0
  79. package/dist-esm/src/models/mappers.d.ts.map +1 -1
  80. package/dist-esm/src/models/mappers.js +282 -0
  81. package/dist-esm/src/models/mappers.js.map +1 -1
  82. package/dist-esm/src/models/parameters.d.ts +1 -0
  83. package/dist-esm/src/models/parameters.d.ts.map +1 -1
  84. package/dist-esm/src/models/parameters.js +6 -2
  85. package/dist-esm/src/models/parameters.js.map +1 -1
  86. package/dist-esm/src/operations/accounts.d.ts +16 -1
  87. package/dist-esm/src/operations/accounts.d.ts.map +1 -1
  88. package/dist-esm/src/operations/accounts.js +40 -0
  89. package/dist-esm/src/operations/accounts.js.map +1 -1
  90. package/dist-esm/src/operationsInterfaces/accounts.d.ts +16 -1
  91. package/dist-esm/src/operationsInterfaces/accounts.d.ts.map +1 -1
  92. package/package.json +36 -15
  93. package/review/arm-maps.api.md +78 -0
  94. package/rollup.config.js +6 -72
  95. package/src/azureMapsManagementClient.ts +28 -3
  96. package/src/models/index.ts +130 -2
  97. package/src/models/mappers.ts +293 -0
  98. package/src/models/parameters.ts +7 -1
  99. package/src/operations/accounts.ts +53 -0
  100. package/src/operationsInterfaces/accounts.ts +23 -0
  101. package/tsconfig.json +19 -5
  102. package/types/arm-maps.d.ts +142 -2
  103. package/types/tsdoc-metadata.json +1 -1
  104. package/LICENSE.txt +0 -21
package/package.json CHANGED
@@ -3,29 +3,37 @@
3
3
  "sdk-type": "mgmt",
4
4
  "author": "Microsoft Corporation",
5
5
  "description": "A generated SDK for AzureMapsManagementClient.",
6
- "version": "3.0.0",
7
- "engines": { "node": ">=12.0.0" },
6
+ "version": "3.1.0-beta.1",
7
+ "engines": {
8
+ "node": ">=12.0.0"
9
+ },
8
10
  "dependencies": {
9
11
  "@azure/core-paging": "^1.2.0",
10
- "@azure/core-client": "^1.0.0",
12
+ "@azure/core-client": "^1.5.0",
11
13
  "@azure/core-auth": "^1.3.0",
12
- "@azure/core-rest-pipeline": "^1.1.0",
14
+ "@azure/core-rest-pipeline": "^1.8.0",
13
15
  "tslib": "^2.2.0"
14
16
  },
15
- "keywords": ["node", "azure", "typescript", "browser", "isomorphic"],
17
+ "keywords": [
18
+ "node",
19
+ "azure",
20
+ "typescript",
21
+ "browser",
22
+ "isomorphic"
23
+ ],
16
24
  "license": "MIT",
17
25
  "main": "./dist/index.js",
18
26
  "module": "./dist-esm/src/index.js",
19
27
  "types": "./types/arm-maps.d.ts",
20
28
  "devDependencies": {
21
- "@microsoft/api-extractor": "^7.18.11",
22
- "@rollup/plugin-commonjs": "11.0.2",
23
- "@rollup/plugin-json": "^4.0.0",
24
- "@rollup/plugin-multi-entry": "^3.0.0",
25
- "@rollup/plugin-node-resolve": "^8.0.0",
29
+ "@microsoft/api-extractor": "7.18.11",
30
+ "@rollup/plugin-commonjs": "^21.0.1",
31
+ "@rollup/plugin-json": "^4.1.0",
32
+ "@rollup/plugin-multi-entry": "^4.1.0",
33
+ "@rollup/plugin-node-resolve": "^13.1.3",
26
34
  "mkdirp": "^1.0.4",
27
- "rollup": "^1.16.3",
28
- "rollup-plugin-sourcemaps": "^0.4.2",
35
+ "rollup": "^2.66.1",
36
+ "rollup-plugin-sourcemaps": "^0.6.3",
29
37
  "typescript": "~4.2.0",
30
38
  "uglify-js": "^3.4.9",
31
39
  "rimraf": "^3.0.0",
@@ -39,7 +47,9 @@
39
47
  "type": "git",
40
48
  "url": "https://github.com/Azure/azure-sdk-for-js.git"
41
49
  },
42
- "bugs": { "url": "https://github.com/Azure/azure-sdk-for-js/issues" },
50
+ "bugs": {
51
+ "url": "https://github.com/Azure/azure-sdk-for-js/issues"
52
+ },
43
53
  "files": [
44
54
  "dist/**/*.js",
45
55
  "dist/**/*.js.map",
@@ -88,8 +98,19 @@
88
98
  "sideEffects": false,
89
99
  "//metadata": {
90
100
  "constantPaths": [
91
- { "path": "src/AzureMapsManagementClient.ts", "prefix": "packageDetails" }
101
+ {
102
+ "path": "src/azureMapsManagementClient.ts",
103
+ "prefix": "packageDetails"
104
+ }
92
105
  ]
93
106
  },
94
- "autoPublish": true
107
+ "autoPublish": true,
108
+ "//sampleConfiguration": {
109
+ "productName": "",
110
+ "productSlugs": [
111
+ "azure"
112
+ ],
113
+ "disableDocsMs": true,
114
+ "apiRefLink": "https://docs.microsoft.com/javascript/api/@azure/arm-maps?view=azure-node-preview"
115
+ }
95
116
  }
@@ -16,10 +16,21 @@ export interface Accounts {
16
16
  listByResourceGroup(resourceGroupName: string, options?: AccountsListByResourceGroupOptionalParams): PagedAsyncIterableIterator<MapsAccount>;
17
17
  listBySubscription(options?: AccountsListBySubscriptionOptionalParams): PagedAsyncIterableIterator<MapsAccount>;
18
18
  listKeys(resourceGroupName: string, accountName: string, options?: AccountsListKeysOptionalParams): Promise<AccountsListKeysResponse>;
19
+ listSas(resourceGroupName: string, accountName: string, mapsAccountSasParameters: AccountSasParameters, options?: AccountsListSasOptionalParams): Promise<AccountsListSasResponse>;
19
20
  regenerateKeys(resourceGroupName: string, accountName: string, keySpecification: MapsKeySpecification, options?: AccountsRegenerateKeysOptionalParams): Promise<AccountsRegenerateKeysResponse>;
20
21
  update(resourceGroupName: string, accountName: string, mapsAccountUpdateParameters: MapsAccountUpdateParameters, options?: AccountsUpdateOptionalParams): Promise<AccountsUpdateResponse>;
21
22
  }
22
23
 
24
+ // @public
25
+ export interface AccountSasParameters {
26
+ expiry: string;
27
+ maxRatePerSecond: number;
28
+ principalId: string;
29
+ regions?: string[];
30
+ signingKey: SigningKey;
31
+ start: string;
32
+ }
33
+
23
34
  // @public
24
35
  export interface AccountsCreateOrUpdateOptionalParams extends coreClient.OperationOptions {
25
36
  }
@@ -73,6 +84,13 @@ export interface AccountsListKeysOptionalParams extends coreClient.OperationOpti
73
84
  // @public
74
85
  export type AccountsListKeysResponse = MapsAccountKeys;
75
86
 
87
+ // @public
88
+ export interface AccountsListSasOptionalParams extends coreClient.OperationOptions {
89
+ }
90
+
91
+ // @public
92
+ export type AccountsListSasResponse = MapsAccountSasToken;
93
+
76
94
  // @public
77
95
  export interface AccountsRegenerateKeysOptionalParams extends coreClient.OperationOptions {
78
96
  }
@@ -111,12 +129,29 @@ export interface AzureMapsManagementClientOptionalParams extends coreClient.Serv
111
129
  endpoint?: string;
112
130
  }
113
131
 
132
+ // @public (undocumented)
133
+ export interface Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties {
134
+ readonly clientId?: string;
135
+ readonly principalId?: string;
136
+ }
137
+
138
+ // @public
139
+ export interface CorsRule {
140
+ allowedOrigins: string[];
141
+ }
142
+
143
+ // @public
144
+ export interface CorsRules {
145
+ corsRules?: CorsRule[];
146
+ }
147
+
114
148
  // @public
115
149
  export type CreatedByType = string;
116
150
 
117
151
  // @public
118
152
  export type Creator = TrackedResource & {
119
153
  properties: CreatorProperties;
154
+ readonly systemData?: SystemData;
120
155
  };
121
156
 
122
157
  // @public
@@ -263,6 +298,30 @@ export enum KnownName {
263
298
  S1 = "S1"
264
299
  }
265
300
 
301
+ // @public
302
+ export enum KnownSigningKey {
303
+ // (undocumented)
304
+ PrimaryKey = "primaryKey",
305
+ // (undocumented)
306
+ SecondaryKey = "secondaryKey"
307
+ }
308
+
309
+ // @public
310
+ export interface LinkedResource {
311
+ id: string;
312
+ uniqueName: string;
313
+ }
314
+
315
+ // @public
316
+ export interface ManagedServiceIdentity {
317
+ readonly principalId?: string;
318
+ readonly tenantId?: string;
319
+ type?: ResourceIdentityType;
320
+ userAssignedIdentities?: {
321
+ [propertyName: string]: Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties;
322
+ };
323
+ }
324
+
266
325
  // @public
267
326
  export interface Maps {
268
327
  listOperations(options?: MapsListOperationsOptionalParams): PagedAsyncIterableIterator<OperationDetail>;
@@ -274,6 +333,7 @@ export type MapsAccount = TrackedResource & {
274
333
  sku: Sku;
275
334
  kind?: Kind;
276
335
  readonly systemData?: SystemData;
336
+ identity?: ManagedServiceIdentity;
277
337
  properties?: MapsAccountProperties;
278
338
  };
279
339
 
@@ -287,7 +347,9 @@ export interface MapsAccountKeys {
287
347
 
288
348
  // @public
289
349
  export interface MapsAccountProperties {
350
+ cors?: CorsRules;
290
351
  disableLocalAuth?: boolean;
352
+ linkedResources?: LinkedResource[];
291
353
  readonly provisioningState?: string;
292
354
  readonly uniqueId?: string;
293
355
  }
@@ -298,10 +360,18 @@ export interface MapsAccounts {
298
360
  readonly value?: MapsAccount[];
299
361
  }
300
362
 
363
+ // @public
364
+ export interface MapsAccountSasToken {
365
+ readonly accountSasToken?: string;
366
+ }
367
+
301
368
  // @public
302
369
  export interface MapsAccountUpdateParameters {
370
+ cors?: CorsRules;
303
371
  disableLocalAuth?: boolean;
372
+ identity?: ManagedServiceIdentity;
304
373
  kind?: Kind;
374
+ linkedResources?: LinkedResource[];
305
375
  readonly provisioningState?: string;
306
376
  sku?: Sku;
307
377
  tags?: {
@@ -357,8 +427,10 @@ export interface MetricSpecification {
357
427
  displayDescription?: string;
358
428
  displayName?: string;
359
429
  fillGapWithZero?: boolean;
430
+ internalMetricName?: string;
360
431
  name?: string;
361
432
  resourceIdDimensionNameOverride?: string;
433
+ sourceMdmAccount?: string;
362
434
  unit?: string;
363
435
  }
364
436
 
@@ -389,11 +461,17 @@ export interface Resource {
389
461
  readonly type?: string;
390
462
  }
391
463
 
464
+ // @public
465
+ export type ResourceIdentityType = "SystemAssigned" | "UserAssigned" | "SystemAssigned, UserAssigned" | "None";
466
+
392
467
  // @public
393
468
  export interface ServiceSpecification {
394
469
  metricSpecifications?: MetricSpecification[];
395
470
  }
396
471
 
472
+ // @public
473
+ export type SigningKey = string;
474
+
397
475
  // @public
398
476
  export interface Sku {
399
477
  name: Name;
package/rollup.config.js CHANGED
@@ -14,62 +14,14 @@ import json from "@rollup/plugin-json";
14
14
 
15
15
  import nodeBuiltins from "builtin-modules";
16
16
 
17
- /**
18
- * Gets the proper configuration needed for rollup's commonJS plugin for @opentelemetry/api.
19
- *
20
- * NOTE: this manual configuration is only needed because OpenTelemetry uses an
21
- * __exportStar downleveled helper function to declare its exports which confuses
22
- * rollup's automatic discovery mechanism.
23
- *
24
- * @returns an object reference that can be `...`'d into your cjs() configuration.
25
- */
26
- export function openTelemetryCommonJs() {
27
- const namedExports = {};
28
-
29
- for (const key of [
30
- "@opentelemetry/api",
31
- "@azure/core-tracing/node_modules/@opentelemetry/api"
32
- ]) {
33
- namedExports[key] = [
34
- "SpanKind",
35
- "TraceFlags",
36
- "getSpan",
37
- "setSpan",
38
- "SpanStatusCode",
39
- "getSpanContext",
40
- "setSpanContext"
41
- ];
42
- }
43
-
44
- const releasedOpenTelemetryVersions = ["0.10.2", "1.0.0-rc.0"];
45
-
46
- for (const version of releasedOpenTelemetryVersions) {
47
- namedExports[
48
- // working around a limitation in the rollup common.js plugin - it's not able to resolve these modules so the named exports listed above will not get applied. We have to drill down to the actual path.
49
- `../../../common/temp/node_modules/.pnpm/@opentelemetry/api@${version}/node_modules/@opentelemetry/api/build/src/index.js`
50
- ] = [
51
- "SpanKind",
52
- "TraceFlags",
53
- "getSpan",
54
- "setSpan",
55
- "StatusCode",
56
- "CanonicalCode",
57
- "getSpanContext",
58
- "setSpanContext"
59
- ];
60
- }
61
-
62
- return namedExports;
63
- }
64
-
65
17
  // #region Warning Handler
66
18
 
67
19
  /**
68
- * A function that can determine whether a rollupwarning should be ignored. If
20
+ * A function that can determine whether a rollup warning should be ignored. If
69
21
  * the function returns `true`, then the warning will not be displayed.
70
22
  */
71
23
 
72
- function ignoreNiseSinonEvalWarnings(warning) {
24
+ function ignoreNiseSinonEval(warning) {
73
25
  return (
74
26
  warning.code === "EVAL" &&
75
27
  warning.id &&
@@ -78,17 +30,14 @@ function ignoreNiseSinonEvalWarnings(warning) {
78
30
  );
79
31
  }
80
32
 
81
- function ignoreChaiCircularDependencyWarnings(warning) {
33
+ function ignoreChaiCircularDependency(warning) {
82
34
  return (
83
35
  warning.code === "CIRCULAR_DEPENDENCY" &&
84
36
  warning.importer && warning.importer.includes("node_modules/chai") === true
85
37
  );
86
38
  }
87
39
 
88
- const warningInhibitors = [
89
- ignoreChaiCircularDependencyWarnings,
90
- ignoreNiseSinonEvalWarnings
91
- ];
40
+ const warningInhibitors = [ignoreChaiCircularDependency, ignoreNiseSinonEval];
92
41
 
93
42
  /**
94
43
  * Construct a warning handler for the shared rollup configuration
@@ -122,22 +71,7 @@ function makeBrowserTestConfig() {
122
71
  nodeResolve({
123
72
  mainFields: ["module", "browser"]
124
73
  }),
125
- cjs({
126
- namedExports: {
127
- // Chai's strange internal architecture makes it impossible to statically
128
- // analyze its exports.
129
- chai: [
130
- "version",
131
- "use",
132
- "util",
133
- "config",
134
- "expect",
135
- "should",
136
- "assert"
137
- ],
138
- ...openTelemetryCommonJs()
139
- }
140
- }),
74
+ cjs(),
141
75
  json(),
142
76
  sourcemaps()
143
77
  //viz({ filename: "dist-test/browser-stats.html", sourcemap: true })
@@ -173,7 +107,7 @@ export function makeConfig(pkg, options) {
173
107
  ],
174
108
  output: { file: "dist/index.js", format: "cjs", sourcemap: true },
175
109
  preserveSymlinks: false,
176
- plugins: [sourcemaps(), nodeResolve(), cjs()]
110
+ plugins: [sourcemaps(), nodeResolve()]
177
111
  };
178
112
 
179
113
  const config = [baseConfig];
@@ -7,6 +7,7 @@
7
7
  */
8
8
 
9
9
  import * as coreClient from "@azure/core-client";
10
+ import * as coreRestPipeline from "@azure/core-rest-pipeline";
10
11
  import * as coreAuth from "@azure/core-auth";
11
12
  import { AccountsImpl, MapsImpl, CreatorsImpl } from "./operations";
12
13
  import { Accounts, Maps, Creators } from "./operationsInterfaces";
@@ -44,7 +45,7 @@ export class AzureMapsManagementClient extends coreClient.ServiceClient {
44
45
  credential: credentials
45
46
  };
46
47
 
47
- const packageDetails = `azsdk-js-arm-maps/3.0.0`;
48
+ const packageDetails = `azsdk-js-arm-maps/3.1.0-beta.1`;
48
49
  const userAgentPrefix =
49
50
  options.userAgentOptions && options.userAgentOptions.userAgentPrefix
50
51
  ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`
@@ -59,15 +60,39 @@ export class AzureMapsManagementClient extends coreClient.ServiceClient {
59
60
  userAgentOptions: {
60
61
  userAgentPrefix
61
62
  },
62
- baseUri: options.endpoint || "https://management.azure.com"
63
+ baseUri:
64
+ options.endpoint ?? options.baseUri ?? "https://management.azure.com"
63
65
  };
64
66
  super(optionsWithDefaults);
67
+
68
+ if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) {
69
+ const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies();
70
+ const bearerTokenAuthenticationPolicyFound = pipelinePolicies.some(
71
+ (pipelinePolicy) =>
72
+ pipelinePolicy.name ===
73
+ coreRestPipeline.bearerTokenAuthenticationPolicyName
74
+ );
75
+ if (!bearerTokenAuthenticationPolicyFound) {
76
+ this.pipeline.removePolicy({
77
+ name: coreRestPipeline.bearerTokenAuthenticationPolicyName
78
+ });
79
+ this.pipeline.addPolicy(
80
+ coreRestPipeline.bearerTokenAuthenticationPolicy({
81
+ scopes: `${optionsWithDefaults.baseUri}/.default`,
82
+ challengeCallbacks: {
83
+ authorizeRequestOnChallenge:
84
+ coreClient.authorizeRequestOnClaimChallenge
85
+ }
86
+ })
87
+ );
88
+ }
89
+ }
65
90
  // Parameter assignments
66
91
  this.subscriptionId = subscriptionId;
67
92
 
68
93
  // Assigning values to Constant parameters
69
94
  this.$host = options.$host || "https://management.azure.com";
70
- this.apiVersion = options.apiVersion || "2021-02-01";
95
+ this.apiVersion = options.apiVersion || "2021-12-01-preview";
71
96
  this.accounts = new AccountsImpl(this);
72
97
  this.maps = new MapsImpl(this);
73
98
  this.creators = new CreatorsImpl(this);
@@ -35,6 +35,39 @@ export interface SystemData {
35
35
  lastModifiedAt?: Date;
36
36
  }
37
37
 
38
+ /** Identity for the resource. */
39
+ export interface ManagedServiceIdentity {
40
+ /**
41
+ * The principal ID of resource identity.
42
+ * NOTE: This property will not be serialized. It can only be populated by the server.
43
+ */
44
+ readonly principalId?: string;
45
+ /**
46
+ * The tenant ID of resource.
47
+ * NOTE: This property will not be serialized. It can only be populated by the server.
48
+ */
49
+ readonly tenantId?: string;
50
+ /** The identity type. */
51
+ type?: ResourceIdentityType;
52
+ /** The list of user identities associated with the resource. The user identity dictionary key references will be ARM resource ids in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}'. */
53
+ userAssignedIdentities?: {
54
+ [propertyName: string]: Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties;
55
+ };
56
+ }
57
+
58
+ export interface Components1Jq1T4ISchemasManagedserviceidentityPropertiesUserassignedidentitiesAdditionalproperties {
59
+ /**
60
+ * The principal id of user assigned identity.
61
+ * NOTE: This property will not be serialized. It can only be populated by the server.
62
+ */
63
+ readonly principalId?: string;
64
+ /**
65
+ * The client id of user assigned identity.
66
+ * NOTE: This property will not be serialized. It can only be populated by the server.
67
+ */
68
+ readonly clientId?: string;
69
+ }
70
+
38
71
  /** Additional Map account properties */
39
72
  export interface MapsAccountProperties {
40
73
  /**
@@ -45,10 +78,34 @@ export interface MapsAccountProperties {
45
78
  /** Allows toggle functionality on Azure Policy to disable Azure Maps local authentication support. This will disable Shared Keys authentication from any usage. */
46
79
  disableLocalAuth?: boolean;
47
80
  /**
48
- * the state of the provisioning.
81
+ * The provisioning state of the Map account resource.
49
82
  * NOTE: This property will not be serialized. It can only be populated by the server.
50
83
  */
51
84
  readonly provisioningState?: string;
85
+ /** Sets the resources to be used for Managed Identities based operations for the Map account resource. */
86
+ linkedResources?: LinkedResource[];
87
+ /** Specifies CORS rules for the Blob service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Blob service. */
88
+ cors?: CorsRules;
89
+ }
90
+
91
+ /** Linked resource is reference to a resource deployed in an Azure subscription, add the linked resource `uniqueName` value as an optional parameter for operations on Azure Maps Geospatial REST APIs. */
92
+ export interface LinkedResource {
93
+ /** A provided name which uniquely identifies the linked resource. */
94
+ uniqueName: string;
95
+ /** ARM resource id in the form: '/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Storage/accounts/{storageName}'. */
96
+ id: string;
97
+ }
98
+
99
+ /** Sets the CORS rules. You can include up to five CorsRule elements in the request. */
100
+ export interface CorsRules {
101
+ /** The list of CORS rules. You can include up to five CorsRule elements in the request. */
102
+ corsRules?: CorsRule[];
103
+ }
104
+
105
+ /** Specifies a CORS rule for the Map Account. */
106
+ export interface CorsRule {
107
+ /** Required if CorsRule element is present. A list of origin domains that will be allowed via CORS, or "*" to allow all domains */
108
+ allowedOrigins: string[];
52
109
  }
53
110
 
54
111
  /** Common fields that are returned in the response for all Azure Resource Manager resources */
@@ -127,6 +184,8 @@ export interface MapsAccountUpdateParameters {
127
184
  kind?: Kind;
128
185
  /** The SKU of this account. */
129
186
  sku?: Sku;
187
+ /** Sets the identity property for maps account. */
188
+ identity?: ManagedServiceIdentity;
130
189
  /**
131
190
  * A unique identifier for the maps account
132
191
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -135,10 +194,14 @@ export interface MapsAccountUpdateParameters {
135
194
  /** Allows toggle functionality on Azure Policy to disable Azure Maps local authentication support. This will disable Shared Keys authentication from any usage. */
136
195
  disableLocalAuth?: boolean;
137
196
  /**
138
- * the state of the provisioning.
197
+ * The provisioning state of the Map account resource.
139
198
  * NOTE: This property will not be serialized. It can only be populated by the server.
140
199
  */
141
200
  readonly provisioningState?: string;
201
+ /** Sets the resources to be used for Managed Identities based operations for the Map account resource. */
202
+ linkedResources?: LinkedResource[];
203
+ /** Specifies CORS rules for the Blob service. You can include up to five CorsRule elements in the request. If no CorsRule elements are included in the request body, all CORS rules will be deleted, and CORS will be disabled for the Blob service. */
204
+ cors?: CorsRules;
142
205
  }
143
206
 
144
207
  /** A list of Maps Accounts. */
@@ -155,6 +218,31 @@ export interface MapsAccounts {
155
218
  nextLink?: string;
156
219
  }
157
220
 
221
+ /** Parameters used to create an account Shared Access Signature (SAS) token. The REST API access control is provided by Azure Maps Role Based Access (RBAC) identity and access. */
222
+ export interface AccountSasParameters {
223
+ /** The Map account key to use for signing. */
224
+ signingKey: SigningKey;
225
+ /** The principal Id also known as the object Id of a User Assigned Managed Identity currently assigned to the Map Account. To assign a Managed Identity of the account, use operation Create or Update an assign a User Assigned Identity resource Id. */
226
+ principalId: string;
227
+ /** Optional, allows control of which region locations are permitted access to Azure Maps REST APIs with the SAS token. Example: "eastus", "westus2". Omitting this parameter will allow all region locations to be accessible. */
228
+ regions?: string[];
229
+ /** Required parameter which represents the desired maximum request per second to allowed for the given SAS token. This does not guarantee perfect accuracy in measurements but provides application safe guards of abuse with eventual enforcement. */
230
+ maxRatePerSecond: number;
231
+ /** The date time offset of when the token validity begins. For example "2017-05-24T10:42:03.1567373Z". */
232
+ start: string;
233
+ /** The date time offset of when the token validity expires. For example "2017-05-24T10:42:03.1567373Z" */
234
+ expiry: string;
235
+ }
236
+
237
+ /** A new Sas token which can be used to access the Maps REST APIs and is controlled by the specified Managed identity permissions on Azure (IAM) Role Based Access Control. */
238
+ export interface MapsAccountSasToken {
239
+ /**
240
+ * The shared access signature access token.
241
+ * NOTE: This property will not be serialized. It can only be populated by the server.
242
+ */
243
+ readonly accountSasToken?: string;
244
+ }
245
+
158
246
  /** The set of keys which can be used to access the Maps REST APIs. Two keys are provided for key rotation without interruption. */
159
247
  export interface MapsAccountKeys {
160
248
  /**
@@ -251,6 +339,10 @@ export interface MetricSpecification {
251
339
  category?: string;
252
340
  /** Account Resource Id. */
253
341
  resourceIdDimensionNameOverride?: string;
342
+ /** Source metrics account. */
343
+ sourceMdmAccount?: string;
344
+ /** Internal metric name. */
345
+ internalMetricName?: string;
254
346
  }
255
347
 
256
348
  /** Dimension of map account, for example API Category, Api Name, Result Type, and Response Code. */
@@ -326,6 +418,8 @@ export type MapsAccount = TrackedResource & {
326
418
  * NOTE: This property will not be serialized. It can only be populated by the server.
327
419
  */
328
420
  readonly systemData?: SystemData;
421
+ /** Sets the identity property for maps account. */
422
+ identity?: ManagedServiceIdentity;
329
423
  /** The map account properties. */
330
424
  properties?: MapsAccountProperties;
331
425
  };
@@ -334,6 +428,11 @@ export type MapsAccount = TrackedResource & {
334
428
  export type Creator = TrackedResource & {
335
429
  /** The Creator resource properties. */
336
430
  properties: CreatorProperties;
431
+ /**
432
+ * The system meta data relating to this resource.
433
+ * NOTE: This property will not be serialized. It can only be populated by the server.
434
+ */
435
+ readonly systemData?: SystemData;
337
436
  };
338
437
 
339
438
  /** Known values of {@link Name} that the service accepts. */
@@ -390,6 +489,22 @@ export enum KnownCreatedByType {
390
489
  */
391
490
  export type CreatedByType = string;
392
491
 
492
+ /** Known values of {@link SigningKey} that the service accepts. */
493
+ export enum KnownSigningKey {
494
+ PrimaryKey = "primaryKey",
495
+ SecondaryKey = "secondaryKey"
496
+ }
497
+
498
+ /**
499
+ * Defines values for SigningKey. \
500
+ * {@link KnownSigningKey} can be used interchangeably with SigningKey,
501
+ * this enum contains the known values that the service supports.
502
+ * ### Known values supported by the service
503
+ * **primaryKey** \
504
+ * **secondaryKey**
505
+ */
506
+ export type SigningKey = string;
507
+
393
508
  /** Known values of {@link KeyType} that the service accepts. */
394
509
  export enum KnownKeyType {
395
510
  Primary = "primary",
@@ -405,6 +520,12 @@ export enum KnownKeyType {
405
520
  * **secondary**
406
521
  */
407
522
  export type KeyType = string;
523
+ /** Defines values for ResourceIdentityType. */
524
+ export type ResourceIdentityType =
525
+ | "SystemAssigned"
526
+ | "UserAssigned"
527
+ | "SystemAssigned, UserAssigned"
528
+ | "None";
408
529
 
409
530
  /** Optional parameters. */
410
531
  export interface AccountsCreateOrUpdateOptionalParams
@@ -445,6 +566,13 @@ export interface AccountsListBySubscriptionOptionalParams
445
566
  /** Contains response data for the listBySubscription operation. */
446
567
  export type AccountsListBySubscriptionResponse = MapsAccounts;
447
568
 
569
+ /** Optional parameters. */
570
+ export interface AccountsListSasOptionalParams
571
+ extends coreClient.OperationOptions {}
572
+
573
+ /** Contains response data for the listSas operation. */
574
+ export type AccountsListSasResponse = MapsAccountSasToken;
575
+
448
576
  /** Optional parameters. */
449
577
  export interface AccountsListKeysOptionalParams
450
578
  extends coreClient.OperationOptions {}