import { Value } from '../../cloudformation/Value';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type SubnetGroupAttributes = {
    ARN: Attribute<string>;
};
export type SubnetGroup = AwsResource<'AWS::MemoryDB::SubnetGroup', SubnetGroupProperties, SubnetGroupAttributes>;
/**
  Specifies a subnet group. A subnet group is a collection of subnets (typically private) that you can designate for your clusters running in an Amazon Virtual Private Cloud (VPC) environment. When you create a cluster in an Amazon VPC, you must specify a subnet group. MemoryDB uses that subnet group to choose a subnet and IP addresses within that subnet to associate with your nodes. For more information, see <a href="https://docs.aws.amazon.com/memorydb/latest/devguide/subnetgroups.html">Subnets and subnet groups</a>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-subnetgroup.html">the AWS Docs</a>
*/
export declare function subnetGroup(subnetGroupProps: SubnetGroupProperties): SubnetGroup;
/**
  Specifies a subnet group. A subnet group is a collection of subnets (typically private) that you can designate for your clusters running in an Amazon Virtual Private Cloud (VPC) environment. When you create a cluster in an Amazon VPC, you must specify a subnet group. MemoryDB uses that subnet group to choose a subnet and IP addresses within that subnet to associate with your nodes. For more information, see <a href="https://docs.aws.amazon.com/memorydb/latest/devguide/subnetgroups.html">Subnets and subnet groups</a>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-memorydb-subnetgroup.html">the AWS Docs</a>
*/
export interface SubnetGroupProperties {
    /** <code>Description</code>  <a name="cfn-memorydb-subnetgroup-description"></a>
  A description of the subnet 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> */
    description?: Value<string>;
    /** <code>SubnetGroupName</code>  <a name="cfn-memorydb-subnetgroup-subnetgroupname"></a>
  The name of the subnet group to be used for the cluster.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    subnetGroupName: Value<string>;
    /** <code>SubnetIds</code>  <a name="cfn-memorydb-subnetgroup-subnetids"></a>
  A list of Amazon VPC subnet IDs for the subnet 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> */
    subnetIds: Value<Value<string>[]>;
    /** <code>Tags</code>  <a name="cfn-memorydb-subnetgroup-tags"></a>
  An array of key-value pairs to apply to this resource.<br />
  For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html">Tag</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> */
    tags?: Tag[];
}
