import { Value } from '../../cloudformation/Value';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
/**
  The AWS::ElastiCache::SecurityGroupIngress type authorizes ingress to a cache security group from hosts in specified Amazon EC2 security groups. For more information about ElastiCache security group ingress, go to <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_AuthorizeCacheSecurityGroupIngress.html">AuthorizeCacheSecurityGroupIngress</a> in the <em>Amazon ElastiCache API Reference Guide</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html">the AWS Docs</a>
*/
export type SecurityGroupIngress = AwsResource<'AWS::ElastiCache::SecurityGroupIngress', SecurityGroupIngressProperties>;
export declare function securityGroupIngress(securityGroupIngressProps: SecurityGroupIngressProperties): SecurityGroupIngress;
/**
  The AWS::ElastiCache::SecurityGroupIngress type authorizes ingress to a cache security group from hosts in specified Amazon EC2 security groups. For more information about ElastiCache security group ingress, go to <a href="https://docs.aws.amazon.com/AmazonElastiCache/latest/APIReference/API_AuthorizeCacheSecurityGroupIngress.html">AuthorizeCacheSecurityGroupIngress</a> in the <em>Amazon ElastiCache API Reference Guide</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-elasticache-security-group-ingress.html">the AWS Docs</a>
*/
export interface SecurityGroupIngressProperties {
    /** <code>CacheSecurityGroupName</code>  <a name="cfn-elasticache-securitygroupingress-cachesecuritygroupname"></a>
  The name of the Cache Security Group to authorize.<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> */
    cacheSecurityGroupName: Value<string>;
    /** <code>EC2SecurityGroupName</code>  <a name="cfn-elasticache-securitygroupingress-ec2securitygroupname"></a>
  Name of the EC2 Security Group to include in the authorization.<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> */
    eC2SecurityGroupName: Value<string>;
    /** <code>EC2SecurityGroupOwnerId</code>  <a name="cfn-elasticache-securitygroupingress-ec2securitygroupownerid"></a>
  Specifies the Amazon Account ID of the owner of the EC2 security group specified in the EC2SecurityGroupName property. The Amazon access key ID is not an acceptable value.<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> */
    eC2SecurityGroupOwnerId?: Value<string>;
}
