import { Value } from '../../cloudformation/Value';
import { LogDeliveryConfigurationRequestProps } from './replicationgroup/LogDeliveryConfigurationRequestProps';
import { NodeGroupConfigurationProps } from './replicationgroup/NodeGroupConfigurationProps';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type ReplicationGroupAttributes = {
    ConfigurationEndPoint_Address: Attribute<string>;
    ConfigurationEndPoint_Port: Attribute<string>;
    PrimaryEndPoint_Address: Attribute<string>;
    PrimaryEndPoint_Port: Attribute<string>;
    ReadEndPoint_Addresses: Attribute<string>;
    ReadEndPoint_Addresses_List: Attribute<string[]>;
    ReadEndPoint_Ports: Attribute<string>;
    ReadEndPoint_Ports_List: Attribute<string[]>;
    ReaderEndPoint_Address: Attribute<string>;
    ReaderEndPoint_Port: Attribute<string>;
};
export type ReplicationGroup = AwsResource<'AWS::ElastiCache::ReplicationGroup', ReplicationGroupProperties, ReplicationGroupAttributes>;
/**
  The <code>AWS::ElastiCache::ReplicationGroup</code> resource creates an Amazon ElastiCache Redis replication group. A Redis (cluster mode disabled) replication group is a collection of cache clusters, where one of the clusters is a primary read-write cluster and the others are read-only replicas.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html">the AWS Docs</a>
*/
export declare function replicationGroup(replicationGroupProps: ReplicationGroupProperties): ReplicationGroup;
/**
  The <code>AWS::ElastiCache::ReplicationGroup</code> resource creates an Amazon ElastiCache Redis replication group. A Redis (cluster mode disabled) replication group is a collection of cache clusters, where one of the clusters is a primary read-write cluster and the others are read-only replicas.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-elasticache-replicationgroup.html">the AWS Docs</a>
*/
export interface ReplicationGroupProperties {
    /** <code>AtRestEncryptionEnabled</code>  <a name="cfn-elasticache-replicationgroup-atrestencryptionenabled"></a>
  A flag that enables encryption at rest when set to <code>true</code>.<br />
  You cannot modify the value of <code>AtRestEncryptionEnabled</code> after the replication group is created. To enable encryption at rest on a replication group you must set <code>AtRestEncryptionEnabled</code> to <code>true</code> when you create the replication group.<br />
  <strong>Required:</strong> Only available when creating a replication group in an Amazon VPC using redis version <code>3.2.6</code> or <code>4.x</code> onward.<br />
  Default: <code>false</code><br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    atRestEncryptionEnabled?: Value<boolean>;
    /** <p> */
    authToken?: Value<string>;
    /** <code>AutoMinorVersionUpgrade</code>  <a name="cfn-elasticache-replicationgroup-autominorversionupgrade"></a>
  If you are running Redis engine version 6.0 or later, set this parameter to yes if you want to opt-in to the next minor version upgrade campaign. This parameter is disabled for previous versions.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    autoMinorVersionUpgrade?: Value<boolean>;
    /** <code>AutomaticFailoverEnabled</code>  <a name="cfn-elasticache-replicationgroup-automaticfailoverenabled"></a>
  Specifies whether a read-only replica is automatically promoted to read/write primary if the existing primary fails.<br />
  <code>AutomaticFailoverEnabled</code> must be enabled for Redis (cluster mode enabled) replication groups.<br />
  Default: false<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    automaticFailoverEnabled?: Value<boolean>;
    /** <p> */
    cacheNodeType?: Value<string>;
    /** <p> */
    cacheParameterGroupName?: Value<string>;
    /** <code>CacheSecurityGroupNames</code>  <a name="cfn-elasticache-replicationgroup-cachesecuritygroupnames"></a>
  A list of cache security group names to associate with this replication group.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    cacheSecurityGroupNames?: Value<Value<string>[]>;
    /** <code>CacheSubnetGroupName</code>  <a name="cfn-elasticache-replicationgroup-cachesubnetgroupname"></a>
  The name of the cache subnet group to be used for the replication group.<br />
  If you’re going to launch your cluster in an Amazon VPC, you need to create a subnet group before you start creating a cluster. For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-subnetgroup.html">AWS::ElastiCache::SubnetGroup</a>.
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    cacheSubnetGroupName?: Value<string>;
    /** <code>ClusterMode</code>  <a name="cfn-elasticache-replicationgroup-clustermode"></a>
  Enabled or Disabled. To modify cluster mode from Disabled to Enabled, you must first set the cluster mode to Compatible. Compatible mode allows your Redis clients to connect using both cluster mode enabled and cluster mode disabled. After you migrate all Redis clients to use cluster mode enabled, you can then complete cluster mode configuration and set the cluster mode to Enabled. For more information, see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/modify-cluster-mode.html">Modify cluster mode</a>.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    clusterMode?: Value<string>;
    /** <code>DataTieringEnabled</code>  <a name="cfn-elasticache-replicationgroup-datatieringenabled"></a>
  Enables data tiering. Data tiering is only supported for replication groups using the r6gd node type. This parameter must be set to true when using r6gd nodes. For more information, see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/data-tiering.html">Data tiering</a>.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    dataTieringEnabled?: Value<boolean>;
    /** <code>Engine</code>  <a name="cfn-elasticache-replicationgroup-engine"></a>
  The name of the cache engine to be used for the clusters in this replication group. The value must be set to <code>Redis</code>.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    engine?: Value<string>;
    /** <code>EngineVersion</code>  <a name="cfn-elasticache-replicationgroup-engineversion"></a>
  The version number of the cache engine to be used for the clusters in this replication group. To view the supported cache engine versions, use the <code>DescribeCacheEngineVersions</code> operation.<br />
  <strong>Important:</strong> You can upgrade to a newer engine version (see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/SelectEngine.html#VersionManagement">Selecting a Cache Engine and Version</a>) in the
  ElastiCache User Guide: but you cannot downgrade to an earlier engine version. If you want to use an earlier engine version, you must delete the existing cluster or replication group and create it anew with the earlier engine version.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    engineVersion?: Value<string>;
    /** <code>GlobalReplicationGroupId</code>  <a name="cfn-elasticache-replicationgroup-globalreplicationgroupid"></a>
  The name of the Global datastore<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    globalReplicationGroupId?: Value<string>;
    /** <code>IpDiscovery</code>  <a name="cfn-elasticache-replicationgroup-ipdiscovery"></a>
  The network type you choose when creating a replication group, either <code>ipv4</code> | <code>ipv6</code>. IPv6 is supported for workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the <a href="http://aws.amazon.com/ec2/nitro/">Nitro system</a>.<br />
  
  Required: No<br />
  
  Allowed values: <code>ipv4 | ipv6</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    ipDiscovery?: Value<'ipv4' | 'ipv6'>;
    /** <code>KmsKeyId</code>  <a name="cfn-elasticache-replicationgroup-kmskeyid"></a>
  The ID of the KMS key used to encrypt the disk on the cluster.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    kmsKeyId?: Value<string>;
    /** <code>LogDeliveryConfigurations</code>  <a name="cfn-elasticache-replicationgroup-logdeliveryconfigurations"></a>
  Specifies the destination, format and type of the logs.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    logDeliveryConfigurations?: LogDeliveryConfigurationRequestProps[];
    /** <code>MultiAZEnabled</code>  <a name="cfn-elasticache-replicationgroup-multiazenabled"></a>
  A flag indicating if you have Multi-AZ enabled to enhance fault tolerance. For more information, see <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/red-ug/AutoFailover.html">Minimizing Downtime: Multi-AZ</a>.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    multiAZEnabled?: Value<boolean>;
    /** <code>NetworkType</code>  <a name="cfn-elasticache-replicationgroup-networktype"></a>
  Must be either <code>ipv4</code> | <code>ipv6</code> | <code>dual_stack</code>. IPv6 is supported for workloads using Redis engine version 6.2 onward or Memcached engine version 1.6.6 on all instances built on the <a href="http://aws.amazon.com/ec2/nitro/">Nitro system</a>.<br />
  
  Required: No<br />
  
  Allowed values: <code>dual_stack | ipv4 | ipv6</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    networkType?: Value<'dual_stack' | 'ipv4' | 'ipv6'>;
    /** <code>NodeGroupConfiguration</code>  <a name="cfn-elasticache-replicationgroup-nodegroupconfiguration"></a>
  <code>NodeGroupConfiguration </code> is a property of the <code>AWS::ElastiCache::ReplicationGroup</code> resource that configures an Amazon ElastiCache (ElastiCache) Redis cluster node group.<br />
  If you set <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html#cfn-attributes-updatepolicy-useonlineresharding">UseOnlineResharding</a> to <code>true</code>, you can update <code>NodeGroupConfiguration</code> without interruption. When <code>UseOnlineResharding</code> is set to <code>false</code>, or is not specified, updating <code>NodeGroupConfiguration</code> results in <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">replacement</a>.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-some-interrupt">Some interruptions</a> */
    nodeGroupConfiguration?: NodeGroupConfigurationProps[];
    /** <code>NotificationTopicArn</code>  <a name="cfn-elasticache-replicationgroup-notificationtopicarn"></a>
  The Amazon Resource Name (ARN) of the Amazon Simple Notification Service (SNS) topic to which notifications are sent.<br />
  The Amazon SNS topic owner must be the same as the cluster owner.
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    notificationTopicArn?: Value<string>;
    /** <code>NumCacheClusters</code>  <a name="cfn-elasticache-replicationgroup-numcacheclusters"></a>
  The number of clusters this replication group initially has.<br />
  This parameter is not used if there is more than one node group (shard). You should use <code>ReplicasPerNodeGroup</code> instead.<br />
  If <code>AutomaticFailoverEnabled</code> is <code>true</code>, the value of this parameter must be at least 2. If <code>AutomaticFailoverEnabled</code> is <code>false</code> you can omit this parameter (it will default to 1), or you can explicitly set it to a value between 2 and 6.<br />
  The maximum permitted value for <code>NumCacheClusters</code> is 6 (1 primary plus 5 replicas).<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    numCacheClusters?: Value<number>;
    /** <code>NumNodeGroups</code>  <a name="cfn-elasticache-replicationgroup-numnodegroups"></a>
  An optional parameter that specifies the number of node groups (shards) for this Redis (cluster mode enabled) replication group. For Redis (cluster mode disabled) either omit this parameter or set it to 1.<br />
  If you set <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html#cfn-attributes-updatepolicy-useonlineresharding">UseOnlineResharding</a> to <code>true</code>, you can update <code>NumNodeGroups</code> without interruption. When <code>UseOnlineResharding</code> is set to <code>false</code>, or is not specified, updating <code>NumNodeGroups</code> results in <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">replacement</a>.<br />
  Default: 1<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-some-interrupt">Some interruptions</a> */
    numNodeGroups?: Value<number>;
    /** <code>Port</code>  <a name="cfn-elasticache-replicationgroup-port"></a>
  The port number on which each member of the replication group accepts connections.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    port?: Value<number>;
    /** <code>PreferredCacheClusterAZs</code>  <a name="cfn-elasticache-replicationgroup-preferredcacheclusterazs"></a>
  A list of EC2 Availability Zones in which the replication group’s clusters are created. The order of the Availability Zones in the list is the order in which clusters are allocated. The primary cluster is created in the first AZ in the list.<br />
  This parameter is not used if there is more than one node group (shard). You should use <code>NodeGroupConfiguration</code> instead.<br />
  If you are creating your replication group in an Amazon VPC (recommended), you can only locate clusters in Availability Zones associated with the subnets in the selected subnet group.<br />
  The number of Availability Zones listed must equal the value of <code>NumCacheClusters</code>.
  Default: system chosen Availability Zones.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    preferredCacheClusterAZs?: Value<Value<string>[]>;
    /** <p> */
    preferredMaintenanceWindow?: Value<string>;
    /** <code>PrimaryClusterId</code>  <a name="cfn-elasticache-replicationgroup-primaryclusterid"></a>
  The identifier of the cluster that serves as the primary for this replication group. This cluster must already exist and have a status of <code>available</code>.<br />
  This parameter is not required if <code>NumCacheClusters</code>, <code>NumNodeGroups</code>, or <code>ReplicasPerNodeGroup</code> is specified.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    primaryClusterId?: Value<string>;
    /** <code>ReplicasPerNodeGroup</code>  <a name="cfn-elasticache-replicationgroup-replicaspernodegroup"></a>
  An optional parameter that specifies the number of replica nodes in each node group (shard). Valid values are 0 to 5.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    replicasPerNodeGroup?: Value<number>;
    /** <code>ReplicationGroupDescription</code>  <a name="cfn-elasticache-replicationgroup-replicationgroupdescription"></a>
  A user-created description for the replication group.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    replicationGroupDescription: Value<string>;
    /** <p> */
    replicationGroupId?: Value<string>;
    /** <code>SecurityGroupIds</code>  <a name="cfn-elasticache-replicationgroup-securitygroupids"></a>
  One or more Amazon VPC security groups associated with this replication group.<br />
  Use this parameter only when you are creating a replication group in an Amazon Virtual Private Cloud (Amazon VPC).<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    securityGroupIds?: Value<Value<string>[]>;
    /** <code>SnapshotArns</code>  <a name="cfn-elasticache-replicationgroup-snapshotarns"></a>
  A list of Amazon Resource Names (ARN) that uniquely identify the Redis RDB snapshot files stored in Amazon S3. The snapshot files are used to populate the new replication group. The Amazon S3 object name in the ARN cannot contain any commas. The new replication group will have the number of node groups (console: shards) specified by the parameter
  NumNodeGroups: r the number of node groups configured by
  NodeGroupConfiguration: egardless of the number of ARNs specified here.<br />
  Example of an Amazon S3 ARN: <code>arn:aws:s3:::my_bucket/snapshot1.rdb</code><br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    snapshotArns?: Value<Value<string>[]>;
    /** <code>SnapshotName</code>  <a name="cfn-elasticache-replicationgroup-snapshotname"></a>
  The name of a snapshot from which to restore data into the new replication group. The snapshot status changes to <code>restoring</code> while the new replication group is being created.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    snapshotName?: Value<string>;
    /** <code>SnapshotRetentionLimit</code>  <a name="cfn-elasticache-replicationgroup-snapshotretentionlimit"></a>
  The number of days for which ElastiCache retains automatic snapshots before deleting them. For example, if you set <code>SnapshotRetentionLimit</code> to 5, a snapshot that was taken today is retained for 5 days before being deleted.<br />
  Default: 0 (i.e., automatic backups are disabled for this cluster).<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    snapshotRetentionLimit?: Value<number>;
    /** <code>SnapshotWindow</code>  <a name="cfn-elasticache-replicationgroup-snapshotwindow"></a>
  The daily time range (in UTC) during which ElastiCache begins taking a daily snapshot of your node group (shard).<br />
  Example: <code>05:00-09:00</code><br />
  If you do not specify this parameter, ElastiCache automatically chooses an appropriate time range.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    snapshotWindow?: Value<string>;
    /** <code>SnapshottingClusterId</code>  <a name="cfn-elasticache-replicationgroup-snapshottingclusterid"></a>
  The cluster ID that is used as the daily snapshot source for the replication group. This parameter cannot be set for Redis (cluster mode enabled) replication groups.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    snapshottingClusterId?: Value<string>;
    /** <code>Tags</code>  <a name="cfn-elasticache-replicationgroup-tags"></a>
  A list of tags to be added to this resource. Tags are comma-separated key,value pairs (e.g. Key=<code>myKey</code>, Value=<code>myKeyValue</code>. You can include multiple tags as shown following: Key=<code>myKey</code>, Value=<code>myKeyValue</code> Key=<code>mySecondKey</code>, Value=<code>mySecondKeyValue</code>. Tags on replication groups will be replicated to all nodes.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    tags?: Tag[];
    /** <code>TransitEncryptionEnabled</code>  <a name="cfn-elasticache-replicationgroup-transitencryptionenabled"></a>
  A flag that enables in-transit encryption when set to <code>true</code>.<br />
  You cannot modify the value of <code>TransitEncryptionEnabled</code> after the cluster is created. To enable in-transit encryption on a cluster you must set <code>TransitEncryptionEnabled</code> to <code>true</code> when you create a cluster.<br />
  This parameter is valid only if the <code>Engine</code> parameter is <code>redis</code>, the <code>EngineVersion</code> parameter is <code>3.2.6</code> or <code>4.x</code> onward, and the cluster is being created in an Amazon VPC.<br />
  If you enable in-transit encryption, you must also specify a value for <code>CacheSubnetGroup</code>.<br />
  <strong>Required:</strong> Only available when creating a replication group in an Amazon VPC using redis version <code>3.2.6</code> or <code>4.x</code> onward.<br />
  Default: <code>false</code><br />
  For HIPAA compliance, you must specify <code>TransitEncryptionEnabled</code> as <code>true</code>, an <code>AuthToken</code>, and a <code>CacheSubnetGroup</code>.
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    transitEncryptionEnabled?: Value<boolean>;
    /** <code>TransitEncryptionMode</code>  <a name="cfn-elasticache-replicationgroup-transitencryptionmode"></a>
  A setting that allows you to migrate your clients to use in-transit encryption, with no downtime.<br />
  When setting <code>TransitEncryptionEnabled</code> to <code>true</code>, you can set your <code>TransitEncryptionMode</code> to <code>preferred</code> in the same request, to allow both encrypted and unencrypted connections at the same time. Once you migrate all your Redis clients to use encrypted connections you can modify the value to <code>required</code> to allow encrypted connections only.<br />
  Setting <code>TransitEncryptionMode</code> to <code>required</code> is a two-step process that requires you to first set the <code>TransitEncryptionMode</code> to <code>preferred</code>, after that you can set <code>TransitEncryptionMode</code> to <code>required</code>.<br />
  This process will not trigger the replacement of the replication group.<br />
  
  Required: No<br />
  
  Allowed values: <code>preferred | required</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    transitEncryptionMode?: Value<'preferred' | 'required'>;
    /** <code>UserGroupIds</code>  <a name="cfn-elasticache-replicationgroup-usergroupids"></a>
  The ID of user group to associate with the replication group.<br />
  
  Required: No<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-no-interrupt">No interruption</a> */
    userGroupIds?: Value<Value<string>[]>;
}
