@azure/arm-redisenterprisecache 3.1.0-beta.1 → 3.1.0-beta.2

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 (139) hide show
  1. package/CHANGELOG.md +112 -0
  2. package/dist/index.js +1095 -163
  3. package/dist/index.js.map +1 -1
  4. package/dist/index.min.js +1 -1
  5. package/dist/index.min.js.map +1 -1
  6. package/dist-esm/samples-dev/accessPolicyAssignmentCreateUpdateSample.d.ts +2 -0
  7. package/dist-esm/samples-dev/accessPolicyAssignmentCreateUpdateSample.d.ts.map +1 -0
  8. package/dist-esm/samples-dev/accessPolicyAssignmentCreateUpdateSample.js +45 -0
  9. package/dist-esm/samples-dev/accessPolicyAssignmentCreateUpdateSample.js.map +1 -0
  10. package/dist-esm/samples-dev/accessPolicyAssignmentDeleteSample.d.ts +2 -0
  11. package/dist-esm/samples-dev/accessPolicyAssignmentDeleteSample.d.ts.map +1 -0
  12. package/dist-esm/samples-dev/accessPolicyAssignmentDeleteSample.js +41 -0
  13. package/dist-esm/samples-dev/accessPolicyAssignmentDeleteSample.js.map +1 -0
  14. package/dist-esm/samples-dev/accessPolicyAssignmentGetSample.d.ts +2 -0
  15. package/dist-esm/samples-dev/accessPolicyAssignmentGetSample.d.ts.map +1 -0
  16. package/dist-esm/samples-dev/accessPolicyAssignmentGetSample.js +41 -0
  17. package/dist-esm/samples-dev/accessPolicyAssignmentGetSample.js.map +1 -0
  18. package/dist-esm/samples-dev/accessPolicyAssignmentListSample.d.ts +2 -0
  19. package/dist-esm/samples-dev/accessPolicyAssignmentListSample.d.ts.map +1 -0
  20. package/dist-esm/samples-dev/accessPolicyAssignmentListSample.js +56 -0
  21. package/dist-esm/samples-dev/accessPolicyAssignmentListSample.js.map +1 -0
  22. package/dist-esm/samples-dev/databasesCreateSample.js +10 -6
  23. package/dist-esm/samples-dev/databasesCreateSample.js.map +1 -1
  24. package/dist-esm/samples-dev/databasesDeleteSample.js +3 -2
  25. package/dist-esm/samples-dev/databasesDeleteSample.js.map +1 -1
  26. package/dist-esm/samples-dev/databasesExportSample.js +3 -2
  27. package/dist-esm/samples-dev/databasesExportSample.js.map +1 -1
  28. package/dist-esm/samples-dev/databasesFlushSample.js +4 -3
  29. package/dist-esm/samples-dev/databasesFlushSample.js.map +1 -1
  30. package/dist-esm/samples-dev/databasesForceLinkToReplicationGroupSample.js +1 -1
  31. package/dist-esm/samples-dev/databasesForceUnlinkSample.js +4 -3
  32. package/dist-esm/samples-dev/databasesForceUnlinkSample.js.map +1 -1
  33. package/dist-esm/samples-dev/databasesGetSample.js +5 -4
  34. package/dist-esm/samples-dev/databasesGetSample.js.map +1 -1
  35. package/dist-esm/samples-dev/databasesImportSample.js +3 -2
  36. package/dist-esm/samples-dev/databasesImportSample.js.map +1 -1
  37. package/dist-esm/samples-dev/databasesListByClusterSample.js +5 -4
  38. package/dist-esm/samples-dev/databasesListByClusterSample.js.map +1 -1
  39. package/dist-esm/samples-dev/databasesListKeysSample.js +5 -4
  40. package/dist-esm/samples-dev/databasesListKeysSample.js.map +1 -1
  41. package/dist-esm/samples-dev/databasesRegenerateKeySample.js +5 -4
  42. package/dist-esm/samples-dev/databasesRegenerateKeySample.js.map +1 -1
  43. package/dist-esm/samples-dev/databasesUpdateSample.js +4 -2
  44. package/dist-esm/samples-dev/databasesUpdateSample.js.map +1 -1
  45. package/dist-esm/samples-dev/databasesUpgradeDbRedisVersionSample.js +3 -2
  46. package/dist-esm/samples-dev/databasesUpgradeDbRedisVersionSample.js.map +1 -1
  47. package/dist-esm/samples-dev/operationsListSample.js +1 -1
  48. package/dist-esm/samples-dev/operationsStatusGetSample.js +3 -2
  49. package/dist-esm/samples-dev/operationsStatusGetSample.js.map +1 -1
  50. package/dist-esm/samples-dev/privateEndpointConnectionsDeleteSample.js +5 -4
  51. package/dist-esm/samples-dev/privateEndpointConnectionsDeleteSample.js.map +1 -1
  52. package/dist-esm/samples-dev/privateEndpointConnectionsGetSample.js +5 -4
  53. package/dist-esm/samples-dev/privateEndpointConnectionsGetSample.js.map +1 -1
  54. package/dist-esm/samples-dev/privateEndpointConnectionsListSample.js +5 -4
  55. package/dist-esm/samples-dev/privateEndpointConnectionsListSample.js.map +1 -1
  56. package/dist-esm/samples-dev/privateEndpointConnectionsPutSample.js +5 -4
  57. package/dist-esm/samples-dev/privateEndpointConnectionsPutSample.js.map +1 -1
  58. package/dist-esm/samples-dev/privateLinkResourcesListByClusterSample.js +5 -4
  59. package/dist-esm/samples-dev/privateLinkResourcesListByClusterSample.js.map +1 -1
  60. package/dist-esm/samples-dev/redisEnterpriseCreateSample.js +3 -2
  61. package/dist-esm/samples-dev/redisEnterpriseCreateSample.js.map +1 -1
  62. package/dist-esm/samples-dev/redisEnterpriseDeleteSample.js +5 -4
  63. package/dist-esm/samples-dev/redisEnterpriseDeleteSample.js.map +1 -1
  64. package/dist-esm/samples-dev/redisEnterpriseGetSample.js +5 -4
  65. package/dist-esm/samples-dev/redisEnterpriseGetSample.js.map +1 -1
  66. package/dist-esm/samples-dev/redisEnterpriseListByResourceGroupSample.js +5 -4
  67. package/dist-esm/samples-dev/redisEnterpriseListByResourceGroupSample.js.map +1 -1
  68. package/dist-esm/samples-dev/redisEnterpriseListSample.js +5 -4
  69. package/dist-esm/samples-dev/redisEnterpriseListSample.js.map +1 -1
  70. package/dist-esm/samples-dev/redisEnterpriseUpdateSample.js +5 -4
  71. package/dist-esm/samples-dev/redisEnterpriseUpdateSample.js.map +1 -1
  72. package/dist-esm/src/models/index.d.ts +423 -27
  73. package/dist-esm/src/models/index.d.ts.map +1 -1
  74. package/dist-esm/src/models/index.js +134 -2
  75. package/dist-esm/src/models/index.js.map +1 -1
  76. package/dist-esm/src/models/mappers.d.ts +16 -1
  77. package/dist-esm/src/models/mappers.d.ts.map +1 -1
  78. package/dist-esm/src/models/mappers.js +372 -2
  79. package/dist-esm/src/models/mappers.js.map +1 -1
  80. package/dist-esm/src/models/parameters.d.ts +2 -0
  81. package/dist-esm/src/models/parameters.d.ts.map +1 -1
  82. package/dist-esm/src/models/parameters.js +19 -2
  83. package/dist-esm/src/models/parameters.js.map +1 -1
  84. package/dist-esm/src/operations/accessPolicyAssignmentOperations.d.ts +94 -0
  85. package/dist-esm/src/operations/accessPolicyAssignmentOperations.d.ts.map +1 -0
  86. package/dist-esm/src/operations/accessPolicyAssignmentOperations.js +403 -0
  87. package/dist-esm/src/operations/accessPolicyAssignmentOperations.js.map +1 -0
  88. package/dist-esm/src/operations/databases.d.ts +6 -6
  89. package/dist-esm/src/operations/databases.js +6 -6
  90. package/dist-esm/src/operations/index.d.ts +1 -0
  91. package/dist-esm/src/operations/index.d.ts.map +1 -1
  92. package/dist-esm/src/operations/index.js +1 -0
  93. package/dist-esm/src/operations/index.js.map +1 -1
  94. package/dist-esm/src/operations/privateEndpointConnections.d.ts +7 -7
  95. package/dist-esm/src/operations/privateEndpointConnections.js +7 -7
  96. package/dist-esm/src/operations/privateLinkResources.d.ts +2 -2
  97. package/dist-esm/src/operations/privateLinkResources.js +2 -2
  98. package/dist-esm/src/operations/redisEnterprise.d.ts +13 -13
  99. package/dist-esm/src/operations/redisEnterprise.js +13 -13
  100. package/dist-esm/src/operationsInterfaces/accessPolicyAssignmentOperations.d.ts +67 -0
  101. package/dist-esm/src/operationsInterfaces/accessPolicyAssignmentOperations.d.ts.map +1 -0
  102. package/dist-esm/src/operationsInterfaces/accessPolicyAssignmentOperations.js +9 -0
  103. package/dist-esm/src/operationsInterfaces/accessPolicyAssignmentOperations.js.map +1 -0
  104. package/dist-esm/src/operationsInterfaces/databases.d.ts +5 -5
  105. package/dist-esm/src/operationsInterfaces/index.d.ts +1 -0
  106. package/dist-esm/src/operationsInterfaces/index.d.ts.map +1 -1
  107. package/dist-esm/src/operationsInterfaces/index.js +1 -0
  108. package/dist-esm/src/operationsInterfaces/index.js.map +1 -1
  109. package/dist-esm/src/operationsInterfaces/privateEndpointConnections.d.ts +6 -6
  110. package/dist-esm/src/operationsInterfaces/privateLinkResources.d.ts +1 -1
  111. package/dist-esm/src/operationsInterfaces/redisEnterprise.d.ts +11 -11
  112. package/dist-esm/src/redisEnterpriseManagementClient.d.ts +2 -1
  113. package/dist-esm/src/redisEnterpriseManagementClient.d.ts.map +1 -1
  114. package/dist-esm/src/redisEnterpriseManagementClient.js +5 -3
  115. package/dist-esm/src/redisEnterpriseManagementClient.js.map +1 -1
  116. package/dist-esm/test/redisenterprisecache_test.spec.d.ts.map +1 -1
  117. package/dist-esm/test/redisenterprisecache_test.spec.js +5 -1
  118. package/dist-esm/test/redisenterprisecache_test.spec.js.map +1 -1
  119. package/package.json +31 -30
  120. package/review/arm-redisenterprisecache.api.md +239 -2
  121. package/src/lroImpl.ts +1 -1
  122. package/src/models/index.ts +457 -26
  123. package/src/models/mappers.ts +400 -2
  124. package/src/models/parameters.ts +21 -1
  125. package/src/operations/accessPolicyAssignmentOperations.ts +569 -0
  126. package/src/operations/databases.ts +6 -6
  127. package/src/operations/index.ts +1 -0
  128. package/src/operations/privateEndpointConnections.ts +7 -7
  129. package/src/operations/privateLinkResources.ts +2 -2
  130. package/src/operations/redisEnterprise.ts +13 -13
  131. package/src/operationsInterfaces/accessPolicyAssignmentOperations.ts +132 -0
  132. package/src/operationsInterfaces/databases.ts +5 -5
  133. package/src/operationsInterfaces/index.ts +1 -0
  134. package/src/operationsInterfaces/privateEndpointConnections.ts +6 -6
  135. package/src/operationsInterfaces/privateLinkResources.ts +1 -1
  136. package/src/operationsInterfaces/redisEnterprise.ts +11 -11
  137. package/src/redisEnterpriseManagementClient.ts +7 -2
  138. package/types/arm-redisenterprisecache.d.ts +544 -50
  139. package/types/tsdoc-metadata.json +1 -1
@@ -137,11 +137,11 @@ export interface OperationStatus {
137
137
  error?: ErrorResponse;
138
138
  }
139
139
 
140
- /** SKU parameters supplied to the create RedisEnterprise operation. */
140
+ /** SKU parameters supplied to the create Redis Enterprise cluster operation. */
141
141
  export interface Sku {
142
- /** The type of RedisEnterprise cluster to deploy. Possible values: (Enterprise_E10, EnterpriseFlash_F300 etc.) */
142
+ /** The level of Redis Enterprise cluster to deploy. Possible values: ('Balanced_B5', 'MemoryOptimized_M10', 'ComputeOptimized_X5', etc.). For more information on SKUs see the latest pricing documentation. Note that additional SKUs may become supported in the future. */
143
143
  name: SkuName;
144
- /** The size of the RedisEnterprise cluster. Defaults to 2 or 3 depending on SKU. Valid values are (2, 4, 6, ...) for Enterprise SKUs and (3, 9, 15, ...) for Flash SKUs. */
144
+ /** This property is only used with Enterprise and EnterpriseFlash SKUs. Determines the size of the cluster. Valid values are (2, 4, 6, ...) for Enterprise SKUs and (3, 9, 15, ...) for EnterpriseFlash SKUs. */
145
145
  capacity?: number;
146
146
  }
147
147
 
@@ -237,7 +237,7 @@ export interface Resource {
237
237
  readonly type?: string;
238
238
  }
239
239
 
240
- /** A partial update to the RedisEnterprise cluster */
240
+ /** A partial update to the Redis Enterprise cluster */
241
241
  export interface ClusterUpdate {
242
242
  /** The SKU to create, which affects price, performance, and features. */
243
243
  sku?: Sku;
@@ -245,7 +245,9 @@ export interface ClusterUpdate {
245
245
  identity?: ManagedServiceIdentity;
246
246
  /** Resource tags. */
247
247
  tags?: { [propertyName: string]: string };
248
- /** The minimum TLS version for the cluster to support, e.g. '1.2' */
248
+ /** Enabled by default. If highAvailability is disabled, the data set is not replicated. This affects the availability SLA, and increases the risk of data loss. */
249
+ highAvailability?: HighAvailability;
250
+ /** The minimum TLS version for the cluster to support, e.g. '1.2'. Newer versions can be added in the future. Note that TLS 1.0 and TLS 1.1 are now completely obsolete -- you cannot use them. They are mentioned only for the sake of consistency with old API versions. */
249
251
  minimumTlsVersion?: TlsVersion;
250
252
  /** Encryption-at-rest configuration for the cluster. */
251
253
  encryption?: ClusterPropertiesEncryption;
@@ -259,6 +261,11 @@ export interface ClusterUpdate {
259
261
  * NOTE: This property will not be serialized. It can only be populated by the server.
260
262
  */
261
263
  readonly provisioningState?: ProvisioningState;
264
+ /**
265
+ * Explains the current redundancy strategy of the cluster, which affects the expected SLA.
266
+ * NOTE: This property will not be serialized. It can only be populated by the server.
267
+ */
268
+ readonly redundancyMode?: RedundancyMode;
262
269
  /**
263
270
  * Current resource status of the cluster
264
271
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -270,7 +277,7 @@ export interface ClusterUpdate {
270
277
  */
271
278
  readonly redisVersion?: string;
272
279
  /**
273
- * List of private endpoint connections associated with the specified RedisEnterprise cluster
280
+ * List of private endpoint connections associated with the specified Redis Enterprise cluster
274
281
  * NOTE: This property will not be serialized. It can only be populated by the server.
275
282
  */
276
283
  readonly privateEndpointConnections?: PrivateEndpointConnection[];
@@ -298,13 +305,13 @@ export interface DatabaseList {
298
305
  readonly nextLink?: string;
299
306
  }
300
307
 
301
- /** Persistence-related configuration for the RedisEnterprise database */
308
+ /** Persistence-related configuration for the Redis Enterprise database */
302
309
  export interface Persistence {
303
- /** Sets whether AOF is enabled. */
310
+ /** Sets whether AOF is enabled. Note that at most one of AOF or RDB persistence may be enabled. */
304
311
  aofEnabled?: boolean;
305
- /** Sets whether RDB is enabled. */
312
+ /** Sets whether RDB is enabled. Note that at most one of AOF or RDB persistence may be enabled. */
306
313
  rdbEnabled?: boolean;
307
- /** Sets the frequency at which data is written to disk. */
314
+ /** Sets the frequency at which data is written to disk. Defaults to '1s', meaning 'every second'. Note that the 'always' setting is deprecated, because of its performance impact. */
308
315
  aofFrequency?: AofFrequency;
309
316
  /** Sets the frequency at which a snapshot of the database is created. */
310
317
  rdbFrequency?: RdbFrequency;
@@ -342,7 +349,47 @@ export interface LinkedDatabase {
342
349
  readonly state?: LinkState;
343
350
  }
344
351
 
345
- /** A partial update to the RedisEnterprise database */
352
+ /** Common fields that are returned in the response for all Azure Resource Manager resources */
353
+ export interface ResourceAutoGenerated {
354
+ /**
355
+ * Fully qualified resource ID for the resource. Ex - /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}
356
+ * NOTE: This property will not be serialized. It can only be populated by the server.
357
+ */
358
+ readonly id?: string;
359
+ /**
360
+ * The name of the resource
361
+ * NOTE: This property will not be serialized. It can only be populated by the server.
362
+ */
363
+ readonly name?: string;
364
+ /**
365
+ * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
366
+ * NOTE: This property will not be serialized. It can only be populated by the server.
367
+ */
368
+ readonly type?: string;
369
+ /**
370
+ * Azure Resource Manager metadata containing createdBy and modifiedBy information.
371
+ * NOTE: This property will not be serialized. It can only be populated by the server.
372
+ */
373
+ readonly systemData?: SystemData;
374
+ }
375
+
376
+ /** Metadata pertaining to creation and last modification of the resource. */
377
+ export interface SystemData {
378
+ /** The identity that created the resource. */
379
+ createdBy?: string;
380
+ /** The type of identity that created the resource. */
381
+ createdByType?: CreatedByType;
382
+ /** The timestamp of resource creation (UTC). */
383
+ createdAt?: Date;
384
+ /** The identity that last modified the resource. */
385
+ lastModifiedBy?: string;
386
+ /** The type of identity that last modified the resource. */
387
+ lastModifiedByType?: CreatedByType;
388
+ /** The timestamp of resource last modification (UTC) */
389
+ lastModifiedAt?: Date;
390
+ }
391
+
392
+ /** A partial update to the Redis Enterprise database */
346
393
  export interface DatabaseUpdate {
347
394
  /** Specifies whether redis clients can connect using TLS-encrypted or plaintext redis protocols. Default is TLS-encrypted. */
348
395
  clientProtocol?: Protocol;
@@ -358,7 +405,7 @@ export interface DatabaseUpdate {
358
405
  * NOTE: This property will not be serialized. It can only be populated by the server.
359
406
  */
360
407
  readonly resourceState?: ResourceState;
361
- /** Clustering policy - default is OSSCluster. Specified at create time. */
408
+ /** Clustering policy - default is OSSCluster. This property must be chosen at create time, and cannot be changed without deleting the database. */
362
409
  clusteringPolicy?: ClusteringPolicy;
363
410
  /** Redis eviction policy - default is VolatileLRU */
364
411
  evictionPolicy?: EvictionPolicy;
@@ -373,8 +420,10 @@ export interface DatabaseUpdate {
373
420
  * NOTE: This property will not be serialized. It can only be populated by the server.
374
421
  */
375
422
  readonly redisVersion?: string;
376
- /** Option to defer upgrade when newest version is released - default is NotDeferred. Learn more: https://aka.ms/redisversionupgrade */
423
+ /** Option to defer upgrade when newest version is released - default is NotDeferred. Learn more: https://aka.ms/redisversionupgrade */
377
424
  deferUpgrade?: DeferUpgradeSetting;
425
+ /** This property can be Enabled/Disabled to allow or deny access with the current access keys. Can be updated even after database is created. */
426
+ accessKeysAuthentication?: AccessKeysAuthentication;
378
427
  }
379
428
 
380
429
  /** The secret access keys used for authenticating connections to redis */
@@ -409,6 +458,23 @@ export interface ExportClusterParameters {
409
458
  sasUri: string;
410
459
  }
411
460
 
461
+ /** The user associated with the access policy. */
462
+ export interface AccessPolicyAssignmentPropertiesUser {
463
+ /** The object ID of the user. */
464
+ objectId?: string;
465
+ }
466
+
467
+ /** The response of a list-all operation. */
468
+ export interface AccessPolicyAssignmentList {
469
+ /** List of access policy assignments. */
470
+ value?: AccessPolicyAssignment[];
471
+ /**
472
+ * The URI to fetch the next page of results.
473
+ * NOTE: This property will not be serialized. It can only be populated by the server.
474
+ */
475
+ readonly nextLink?: string;
476
+ }
477
+
412
478
  /** List of private endpoint connection associated with the specified storage account */
413
479
  export interface PrivateEndpointConnectionListResult {
414
480
  /** Array of private endpoint connections */
@@ -421,7 +487,7 @@ export interface PrivateLinkResourceListResult {
421
487
  value?: PrivateLinkResource[];
422
488
  }
423
489
 
424
- /** Parameters for a Redis Enterprise Active Geo Replication Force Unlink operation. */
490
+ /** Parameters for a redis enterprise active geo-replication force unlink operation. */
425
491
  export interface ForceUnlinkParameters {
426
492
  /** The resource IDs of the database resources to be unlinked. */
427
493
  ids: string[];
@@ -463,7 +529,7 @@ export interface TrackedResource extends Resource {
463
529
  }
464
530
 
465
531
  /** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */
466
- export interface ProxyResource extends Resource {}
532
+ export interface ProxyResourceAutoGenerated extends Resource {}
467
533
 
468
534
  /** A private link resource */
469
535
  export interface PrivateLinkResource extends Resource {
@@ -481,7 +547,10 @@ export interface PrivateLinkResource extends Resource {
481
547
  requiredZoneNames?: string[];
482
548
  }
483
549
 
484
- /** Describes the RedisEnterprise cluster */
550
+ /** The resource model definition for a Azure Resource Manager proxy resource. It will not have tags and a location */
551
+ export interface ProxyResource extends ResourceAutoGenerated {}
552
+
553
+ /** Describes the Redis Enterprise cluster */
485
554
  export interface Cluster extends TrackedResource {
486
555
  /** The SKU to create, which affects price, performance, and features. */
487
556
  sku: Sku;
@@ -489,7 +558,9 @@ export interface Cluster extends TrackedResource {
489
558
  zones?: string[];
490
559
  /** The identity of the resource. */
491
560
  identity?: ManagedServiceIdentity;
492
- /** The minimum TLS version for the cluster to support, e.g. '1.2' */
561
+ /** Enabled by default. If highAvailability is disabled, the data set is not replicated. This affects the availability SLA, and increases the risk of data loss. */
562
+ highAvailability?: HighAvailability;
563
+ /** The minimum TLS version for the cluster to support, e.g. '1.2'. Newer versions can be added in the future. Note that TLS 1.0 and TLS 1.1 are now completely obsolete -- you cannot use them. They are mentioned only for the sake of consistency with old API versions. */
493
564
  minimumTlsVersion?: TlsVersion;
494
565
  /** Encryption-at-rest configuration for the cluster. */
495
566
  encryption?: ClusterPropertiesEncryption;
@@ -503,6 +574,11 @@ export interface Cluster extends TrackedResource {
503
574
  * NOTE: This property will not be serialized. It can only be populated by the server.
504
575
  */
505
576
  readonly provisioningState?: ProvisioningState;
577
+ /**
578
+ * Explains the current redundancy strategy of the cluster, which affects the expected SLA.
579
+ * NOTE: This property will not be serialized. It can only be populated by the server.
580
+ */
581
+ readonly redundancyMode?: RedundancyMode;
506
582
  /**
507
583
  * Current resource status of the cluster
508
584
  * NOTE: This property will not be serialized. It can only be populated by the server.
@@ -514,13 +590,26 @@ export interface Cluster extends TrackedResource {
514
590
  */
515
591
  readonly redisVersion?: string;
516
592
  /**
517
- * List of private endpoint connections associated with the specified RedisEnterprise cluster
593
+ * List of private endpoint connections associated with the specified Redis Enterprise cluster
518
594
  * NOTE: This property will not be serialized. It can only be populated by the server.
519
595
  */
520
596
  readonly privateEndpointConnections?: PrivateEndpointConnection[];
521
597
  }
522
598
 
523
- /** Describes a database on the RedisEnterprise cluster */
599
+ /** Describes the access policy assignment of Redis Enterprise database */
600
+ export interface AccessPolicyAssignment extends ProxyResourceAutoGenerated {
601
+ /**
602
+ * Current provisioning status of the access policy assignment.
603
+ * NOTE: This property will not be serialized. It can only be populated by the server.
604
+ */
605
+ readonly provisioningState?: ProvisioningState;
606
+ /** Name of access policy under specific access policy assignment. Only "default" policy is supported for now. */
607
+ accessPolicyName?: string;
608
+ /** The user associated with the access policy. */
609
+ user?: AccessPolicyAssignmentPropertiesUser;
610
+ }
611
+
612
+ /** Describes a database on the Redis Enterprise cluster */
524
613
  export interface Database extends ProxyResource {
525
614
  /** Specifies whether redis clients can connect using TLS-encrypted or plaintext redis protocols. Default is TLS-encrypted. */
526
615
  clientProtocol?: Protocol;
@@ -536,7 +625,7 @@ export interface Database extends ProxyResource {
536
625
  * NOTE: This property will not be serialized. It can only be populated by the server.
537
626
  */
538
627
  readonly resourceState?: ResourceState;
539
- /** Clustering policy - default is OSSCluster. Specified at create time. */
628
+ /** Clustering policy - default is OSSCluster. This property must be chosen at create time, and cannot be changed without deleting the database. */
540
629
  clusteringPolicy?: ClusteringPolicy;
541
630
  /** Redis eviction policy - default is VolatileLRU */
542
631
  evictionPolicy?: EvictionPolicy;
@@ -551,8 +640,74 @@ export interface Database extends ProxyResource {
551
640
  * NOTE: This property will not be serialized. It can only be populated by the server.
552
641
  */
553
642
  readonly redisVersion?: string;
554
- /** Option to defer upgrade when newest version is released - default is NotDeferred. Learn more: https://aka.ms/redisversionupgrade */
643
+ /** Option to defer upgrade when newest version is released - default is NotDeferred. Learn more: https://aka.ms/redisversionupgrade */
555
644
  deferUpgrade?: DeferUpgradeSetting;
645
+ /** This property can be Enabled/Disabled to allow or deny access with the current access keys. Can be updated even after database is created. */
646
+ accessKeysAuthentication?: AccessKeysAuthentication;
647
+ }
648
+
649
+ /** Defines headers for RedisEnterprise_update operation. */
650
+ export interface RedisEnterpriseUpdateHeaders {
651
+ /** Location URI to poll for result */
652
+ location?: string;
653
+ /** Azure-AsyncOperation URI to poll for result */
654
+ azureAsyncOperation?: string;
655
+ }
656
+
657
+ /** Defines headers for RedisEnterprise_delete operation. */
658
+ export interface RedisEnterpriseDeleteHeaders {
659
+ /** Location URI to poll for result */
660
+ location?: string;
661
+ /** Azure-AsyncOperation URI to poll for result */
662
+ azureAsyncOperation?: string;
663
+ }
664
+
665
+ /** Defines headers for Databases_update operation. */
666
+ export interface DatabasesUpdateHeaders {
667
+ /** Location URI to poll for result */
668
+ location?: string;
669
+ /** Azure-AsyncOperation URI to poll for result */
670
+ azureAsyncOperation?: string;
671
+ }
672
+
673
+ /** Defines headers for Databases_delete operation. */
674
+ export interface DatabasesDeleteHeaders {
675
+ /** Location URI to poll for result */
676
+ location?: string;
677
+ /** Azure-AsyncOperation URI to poll for result */
678
+ azureAsyncOperation?: string;
679
+ }
680
+
681
+ /** Defines headers for Databases_regenerateKey operation. */
682
+ export interface DatabasesRegenerateKeyHeaders {
683
+ /** Location URI to poll for result */
684
+ location?: string;
685
+ /** Azure-AsyncOperation URI to poll for result */
686
+ azureAsyncOperation?: string;
687
+ }
688
+
689
+ /** Defines headers for Databases_import operation. */
690
+ export interface DatabasesImportHeaders {
691
+ /** Location URI to poll for result */
692
+ location?: string;
693
+ /** Azure-AsyncOperation URI to poll for result */
694
+ azureAsyncOperation?: string;
695
+ }
696
+
697
+ /** Defines headers for Databases_export operation. */
698
+ export interface DatabasesExportHeaders {
699
+ /** Location URI to poll for result */
700
+ location?: string;
701
+ /** Azure-AsyncOperation URI to poll for result */
702
+ azureAsyncOperation?: string;
703
+ }
704
+
705
+ /** Defines headers for Databases_forceUnlink operation. */
706
+ export interface DatabasesForceUnlinkHeaders {
707
+ /** Location URI to poll for result */
708
+ location?: string;
709
+ /** Azure-AsyncOperation URI to poll for result */
710
+ azureAsyncOperation?: string;
556
711
  }
557
712
 
558
713
  /** Defines headers for Databases_forceLinkToReplicationGroup operation. */
@@ -579,6 +734,14 @@ export interface DatabasesUpgradeDBRedisVersionHeaders {
579
734
  azureAsyncOperation?: string;
580
735
  }
581
736
 
737
+ /** Defines headers for AccessPolicyAssignment_delete operation. */
738
+ export interface AccessPolicyAssignmentDeleteHeaders {
739
+ /** Location URI to poll for result */
740
+ location?: string;
741
+ /** Azure-AsyncOperation URI to poll for result */
742
+ azureAsyncOperation?: string;
743
+ }
744
+
582
745
  /** Defines headers for PrivateEndpointConnections_delete operation. */
583
746
  export interface PrivateEndpointConnectionsDeleteHeaders {
584
747
  /** Location URI to poll for result */
@@ -625,6 +788,8 @@ export type ActionType = string;
625
788
 
626
789
  /** Known values of {@link SkuName} that the service accepts. */
627
790
  export enum KnownSkuName {
791
+ /** EnterpriseE1 */
792
+ EnterpriseE1 = "Enterprise_E1",
628
793
  /** EnterpriseE5 */
629
794
  EnterpriseE5 = "Enterprise_E5",
630
795
  /** EnterpriseE10 */
@@ -635,12 +800,104 @@ export enum KnownSkuName {
635
800
  EnterpriseE50 = "Enterprise_E50",
636
801
  /** EnterpriseE100 */
637
802
  EnterpriseE100 = "Enterprise_E100",
803
+ /** EnterpriseE200 */
804
+ EnterpriseE200 = "Enterprise_E200",
805
+ /** EnterpriseE400 */
806
+ EnterpriseE400 = "Enterprise_E400",
638
807
  /** EnterpriseFlashF300 */
639
808
  EnterpriseFlashF300 = "EnterpriseFlash_F300",
640
809
  /** EnterpriseFlashF700 */
641
810
  EnterpriseFlashF700 = "EnterpriseFlash_F700",
642
811
  /** EnterpriseFlashF1500 */
643
812
  EnterpriseFlashF1500 = "EnterpriseFlash_F1500",
813
+ /** BalancedB0 */
814
+ BalancedB0 = "Balanced_B0",
815
+ /** BalancedB1 */
816
+ BalancedB1 = "Balanced_B1",
817
+ /** BalancedB3 */
818
+ BalancedB3 = "Balanced_B3",
819
+ /** BalancedB5 */
820
+ BalancedB5 = "Balanced_B5",
821
+ /** BalancedB10 */
822
+ BalancedB10 = "Balanced_B10",
823
+ /** BalancedB20 */
824
+ BalancedB20 = "Balanced_B20",
825
+ /** BalancedB50 */
826
+ BalancedB50 = "Balanced_B50",
827
+ /** BalancedB100 */
828
+ BalancedB100 = "Balanced_B100",
829
+ /** BalancedB150 */
830
+ BalancedB150 = "Balanced_B150",
831
+ /** BalancedB250 */
832
+ BalancedB250 = "Balanced_B250",
833
+ /** BalancedB350 */
834
+ BalancedB350 = "Balanced_B350",
835
+ /** BalancedB500 */
836
+ BalancedB500 = "Balanced_B500",
837
+ /** BalancedB700 */
838
+ BalancedB700 = "Balanced_B700",
839
+ /** BalancedB1000 */
840
+ BalancedB1000 = "Balanced_B1000",
841
+ /** MemoryOptimizedM10 */
842
+ MemoryOptimizedM10 = "MemoryOptimized_M10",
843
+ /** MemoryOptimizedM20 */
844
+ MemoryOptimizedM20 = "MemoryOptimized_M20",
845
+ /** MemoryOptimizedM50 */
846
+ MemoryOptimizedM50 = "MemoryOptimized_M50",
847
+ /** MemoryOptimizedM100 */
848
+ MemoryOptimizedM100 = "MemoryOptimized_M100",
849
+ /** MemoryOptimizedM150 */
850
+ MemoryOptimizedM150 = "MemoryOptimized_M150",
851
+ /** MemoryOptimizedM250 */
852
+ MemoryOptimizedM250 = "MemoryOptimized_M250",
853
+ /** MemoryOptimizedM350 */
854
+ MemoryOptimizedM350 = "MemoryOptimized_M350",
855
+ /** MemoryOptimizedM500 */
856
+ MemoryOptimizedM500 = "MemoryOptimized_M500",
857
+ /** MemoryOptimizedM700 */
858
+ MemoryOptimizedM700 = "MemoryOptimized_M700",
859
+ /** MemoryOptimizedM1000 */
860
+ MemoryOptimizedM1000 = "MemoryOptimized_M1000",
861
+ /** MemoryOptimizedM1500 */
862
+ MemoryOptimizedM1500 = "MemoryOptimized_M1500",
863
+ /** MemoryOptimizedM2000 */
864
+ MemoryOptimizedM2000 = "MemoryOptimized_M2000",
865
+ /** ComputeOptimizedX3 */
866
+ ComputeOptimizedX3 = "ComputeOptimized_X3",
867
+ /** ComputeOptimizedX5 */
868
+ ComputeOptimizedX5 = "ComputeOptimized_X5",
869
+ /** ComputeOptimizedX10 */
870
+ ComputeOptimizedX10 = "ComputeOptimized_X10",
871
+ /** ComputeOptimizedX20 */
872
+ ComputeOptimizedX20 = "ComputeOptimized_X20",
873
+ /** ComputeOptimizedX50 */
874
+ ComputeOptimizedX50 = "ComputeOptimized_X50",
875
+ /** ComputeOptimizedX100 */
876
+ ComputeOptimizedX100 = "ComputeOptimized_X100",
877
+ /** ComputeOptimizedX150 */
878
+ ComputeOptimizedX150 = "ComputeOptimized_X150",
879
+ /** ComputeOptimizedX250 */
880
+ ComputeOptimizedX250 = "ComputeOptimized_X250",
881
+ /** ComputeOptimizedX350 */
882
+ ComputeOptimizedX350 = "ComputeOptimized_X350",
883
+ /** ComputeOptimizedX500 */
884
+ ComputeOptimizedX500 = "ComputeOptimized_X500",
885
+ /** ComputeOptimizedX700 */
886
+ ComputeOptimizedX700 = "ComputeOptimized_X700",
887
+ /** FlashOptimizedA250 */
888
+ FlashOptimizedA250 = "FlashOptimized_A250",
889
+ /** FlashOptimizedA500 */
890
+ FlashOptimizedA500 = "FlashOptimized_A500",
891
+ /** FlashOptimizedA700 */
892
+ FlashOptimizedA700 = "FlashOptimized_A700",
893
+ /** FlashOptimizedA1000 */
894
+ FlashOptimizedA1000 = "FlashOptimized_A1000",
895
+ /** FlashOptimizedA1500 */
896
+ FlashOptimizedA1500 = "FlashOptimized_A1500",
897
+ /** FlashOptimizedA2000 */
898
+ FlashOptimizedA2000 = "FlashOptimized_A2000",
899
+ /** FlashOptimizedA4500 */
900
+ FlashOptimizedA4500 = "FlashOptimized_A4500",
644
901
  }
645
902
 
646
903
  /**
@@ -648,14 +905,61 @@ export enum KnownSkuName {
648
905
  * {@link KnownSkuName} can be used interchangeably with SkuName,
649
906
  * this enum contains the known values that the service supports.
650
907
  * ### Known values supported by the service
908
+ * **Enterprise_E1** \
651
909
  * **Enterprise_E5** \
652
910
  * **Enterprise_E10** \
653
911
  * **Enterprise_E20** \
654
912
  * **Enterprise_E50** \
655
913
  * **Enterprise_E100** \
914
+ * **Enterprise_E200** \
915
+ * **Enterprise_E400** \
656
916
  * **EnterpriseFlash_F300** \
657
917
  * **EnterpriseFlash_F700** \
658
- * **EnterpriseFlash_F1500**
918
+ * **EnterpriseFlash_F1500** \
919
+ * **Balanced_B0** \
920
+ * **Balanced_B1** \
921
+ * **Balanced_B3** \
922
+ * **Balanced_B5** \
923
+ * **Balanced_B10** \
924
+ * **Balanced_B20** \
925
+ * **Balanced_B50** \
926
+ * **Balanced_B100** \
927
+ * **Balanced_B150** \
928
+ * **Balanced_B250** \
929
+ * **Balanced_B350** \
930
+ * **Balanced_B500** \
931
+ * **Balanced_B700** \
932
+ * **Balanced_B1000** \
933
+ * **MemoryOptimized_M10** \
934
+ * **MemoryOptimized_M20** \
935
+ * **MemoryOptimized_M50** \
936
+ * **MemoryOptimized_M100** \
937
+ * **MemoryOptimized_M150** \
938
+ * **MemoryOptimized_M250** \
939
+ * **MemoryOptimized_M350** \
940
+ * **MemoryOptimized_M500** \
941
+ * **MemoryOptimized_M700** \
942
+ * **MemoryOptimized_M1000** \
943
+ * **MemoryOptimized_M1500** \
944
+ * **MemoryOptimized_M2000** \
945
+ * **ComputeOptimized_X3** \
946
+ * **ComputeOptimized_X5** \
947
+ * **ComputeOptimized_X10** \
948
+ * **ComputeOptimized_X20** \
949
+ * **ComputeOptimized_X50** \
950
+ * **ComputeOptimized_X100** \
951
+ * **ComputeOptimized_X150** \
952
+ * **ComputeOptimized_X250** \
953
+ * **ComputeOptimized_X350** \
954
+ * **ComputeOptimized_X500** \
955
+ * **ComputeOptimized_X700** \
956
+ * **FlashOptimized_A250** \
957
+ * **FlashOptimized_A500** \
958
+ * **FlashOptimized_A700** \
959
+ * **FlashOptimized_A1000** \
960
+ * **FlashOptimized_A1500** \
961
+ * **FlashOptimized_A2000** \
962
+ * **FlashOptimized_A4500**
659
963
  */
660
964
  export type SkuName = string;
661
965
 
@@ -683,6 +987,24 @@ export enum KnownManagedServiceIdentityType {
683
987
  */
684
988
  export type ManagedServiceIdentityType = string;
685
989
 
990
+ /** Known values of {@link HighAvailability} that the service accepts. */
991
+ export enum KnownHighAvailability {
992
+ /** Enabled */
993
+ Enabled = "Enabled",
994
+ /** Disabled */
995
+ Disabled = "Disabled",
996
+ }
997
+
998
+ /**
999
+ * Defines values for HighAvailability. \
1000
+ * {@link KnownHighAvailability} can be used interchangeably with HighAvailability,
1001
+ * this enum contains the known values that the service supports.
1002
+ * ### Known values supported by the service
1003
+ * **Enabled** \
1004
+ * **Disabled**
1005
+ */
1006
+ export type HighAvailability = string;
1007
+
686
1008
  /** Known values of {@link TlsVersion} that the service accepts. */
687
1009
  export enum KnownTlsVersion {
688
1010
  /** One0 */
@@ -752,6 +1074,27 @@ export enum KnownProvisioningState {
752
1074
  */
753
1075
  export type ProvisioningState = string;
754
1076
 
1077
+ /** Known values of {@link RedundancyMode} that the service accepts. */
1078
+ export enum KnownRedundancyMode {
1079
+ /** No redundancy. Availability loss will occur. */
1080
+ None = "None",
1081
+ /** Local redundancy with high availability. */
1082
+ LR = "LR",
1083
+ /** Zone redundant. Higher availability. */
1084
+ ZR = "ZR",
1085
+ }
1086
+
1087
+ /**
1088
+ * Defines values for RedundancyMode. \
1089
+ * {@link KnownRedundancyMode} can be used interchangeably with RedundancyMode,
1090
+ * this enum contains the known values that the service supports.
1091
+ * ### Known values supported by the service
1092
+ * **None**: No redundancy. Availability loss will occur. \
1093
+ * **LR**: Local redundancy with high availability. \
1094
+ * **ZR**: Zone redundant. Higher availability.
1095
+ */
1096
+ export type RedundancyMode = string;
1097
+
755
1098
  /** Known values of {@link ResourceState} that the service accepts. */
756
1099
  export enum KnownResourceState {
757
1100
  /** Running */
@@ -871,9 +1214,9 @@ export type Protocol = string;
871
1214
 
872
1215
  /** Known values of {@link ClusteringPolicy} that the service accepts. */
873
1216
  export enum KnownClusteringPolicy {
874
- /** EnterpriseCluster */
1217
+ /** Enterprise clustering policy uses only the classic redis protocol, which does not support redis cluster commands. */
875
1218
  EnterpriseCluster = "EnterpriseCluster",
876
- /** OSSCluster */
1219
+ /** OSS clustering policy follows the redis cluster specification, and requires all clients to support redis clustering. */
877
1220
  OSSCluster = "OSSCluster",
878
1221
  }
879
1222
 
@@ -882,8 +1225,8 @@ export enum KnownClusteringPolicy {
882
1225
  * {@link KnownClusteringPolicy} can be used interchangeably with ClusteringPolicy,
883
1226
  * this enum contains the known values that the service supports.
884
1227
  * ### Known values supported by the service
885
- * **EnterpriseCluster** \
886
- * **OSSCluster**
1228
+ * **EnterpriseCluster**: Enterprise clustering policy uses only the classic redis protocol, which does not support redis cluster commands. \
1229
+ * **OSSCluster**: OSS clustering policy follows the redis cluster specification, and requires all clients to support redis clustering.
887
1230
  */
888
1231
  export type ClusteringPolicy = string;
889
1232
 
@@ -1006,6 +1349,48 @@ export enum KnownDeferUpgradeSetting {
1006
1349
  * **NotDeferred**
1007
1350
  */
1008
1351
  export type DeferUpgradeSetting = string;
1352
+
1353
+ /** Known values of {@link AccessKeysAuthentication} that the service accepts. */
1354
+ export enum KnownAccessKeysAuthentication {
1355
+ /** Disabled */
1356
+ Disabled = "Disabled",
1357
+ /** Enabled */
1358
+ Enabled = "Enabled",
1359
+ }
1360
+
1361
+ /**
1362
+ * Defines values for AccessKeysAuthentication. \
1363
+ * {@link KnownAccessKeysAuthentication} can be used interchangeably with AccessKeysAuthentication,
1364
+ * this enum contains the known values that the service supports.
1365
+ * ### Known values supported by the service
1366
+ * **Disabled** \
1367
+ * **Enabled**
1368
+ */
1369
+ export type AccessKeysAuthentication = string;
1370
+
1371
+ /** Known values of {@link CreatedByType} that the service accepts. */
1372
+ export enum KnownCreatedByType {
1373
+ /** User */
1374
+ User = "User",
1375
+ /** Application */
1376
+ Application = "Application",
1377
+ /** ManagedIdentity */
1378
+ ManagedIdentity = "ManagedIdentity",
1379
+ /** Key */
1380
+ Key = "Key",
1381
+ }
1382
+
1383
+ /**
1384
+ * Defines values for CreatedByType. \
1385
+ * {@link KnownCreatedByType} can be used interchangeably with CreatedByType,
1386
+ * this enum contains the known values that the service supports.
1387
+ * ### Known values supported by the service
1388
+ * **User** \
1389
+ * **Application** \
1390
+ * **ManagedIdentity** \
1391
+ * **Key**
1392
+ */
1393
+ export type CreatedByType = string;
1009
1394
  /** Defines values for AccessKeyType. */
1010
1395
  export type AccessKeyType = "Primary" | "Secondary";
1011
1396
 
@@ -1233,6 +1618,52 @@ export interface DatabasesListByClusterNextOptionalParams
1233
1618
  /** Contains response data for the listByClusterNext operation. */
1234
1619
  export type DatabasesListByClusterNextResponse = DatabaseList;
1235
1620
 
1621
+ /** Optional parameters. */
1622
+ export interface AccessPolicyAssignmentCreateUpdateOptionalParams
1623
+ extends coreClient.OperationOptions {
1624
+ /** Delay to wait until next poll, in milliseconds. */
1625
+ updateIntervalInMs?: number;
1626
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1627
+ resumeFrom?: string;
1628
+ }
1629
+
1630
+ /** Contains response data for the createUpdate operation. */
1631
+ export type AccessPolicyAssignmentCreateUpdateResponse = AccessPolicyAssignment;
1632
+
1633
+ /** Optional parameters. */
1634
+ export interface AccessPolicyAssignmentGetOptionalParams
1635
+ extends coreClient.OperationOptions {}
1636
+
1637
+ /** Contains response data for the get operation. */
1638
+ export type AccessPolicyAssignmentGetResponse = AccessPolicyAssignment;
1639
+
1640
+ /** Optional parameters. */
1641
+ export interface AccessPolicyAssignmentDeleteOptionalParams
1642
+ extends coreClient.OperationOptions {
1643
+ /** Delay to wait until next poll, in milliseconds. */
1644
+ updateIntervalInMs?: number;
1645
+ /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */
1646
+ resumeFrom?: string;
1647
+ }
1648
+
1649
+ /** Contains response data for the delete operation. */
1650
+ export type AccessPolicyAssignmentDeleteResponse =
1651
+ AccessPolicyAssignmentDeleteHeaders;
1652
+
1653
+ /** Optional parameters. */
1654
+ export interface AccessPolicyAssignmentListOptionalParams
1655
+ extends coreClient.OperationOptions {}
1656
+
1657
+ /** Contains response data for the list operation. */
1658
+ export type AccessPolicyAssignmentListResponse = AccessPolicyAssignmentList;
1659
+
1660
+ /** Optional parameters. */
1661
+ export interface AccessPolicyAssignmentListNextOptionalParams
1662
+ extends coreClient.OperationOptions {}
1663
+
1664
+ /** Contains response data for the listNext operation. */
1665
+ export type AccessPolicyAssignmentListNextResponse = AccessPolicyAssignmentList;
1666
+
1236
1667
  /** Optional parameters. */
1237
1668
  export interface PrivateEndpointConnectionsListOptionalParams
1238
1669
  extends coreClient.OperationOptions {}