import { Value } from '../../../cloudformation/Value';
import { HealthCheckConfigProps } from './HealthCheckConfigProps';
/**
  Describes the configuration of a target group.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-vpclattice-targetgroup-targetgroupconfig.html">the AWS Docs</a>
*/
export interface TargetGroupConfigProps {
    /** <code>IpAddressType</code>  <a name="cfn-vpclattice-targetgroup-targetgroupconfig-ipaddresstype"></a>
  The type of IP address used for the target group. Supported only if the target group type is <code>IP</code>. The default is <code>IPV4</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> */
    ipAddressType?: Value<string>;
    /** <code>Port</code>  <a name="cfn-vpclattice-targetgroup-targetgroupconfig-port"></a>
  The port on which the targets are listening. For HTTP, the default is 80. For HTTPS, the default is 443. Not supported if the target group type is <code>LAMBDA</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> */
    port?: Value<number>;
    /** <code>HealthCheck</code>  <a name="cfn-vpclattice-targetgroup-targetgroupconfig-healthcheck"></a>
  The health check configuration. Not supported if the target group type is <code>LAMBDA</code> or <code>ALB</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-no-interrupt">No interruption</a> */
    healthCheck?: HealthCheckConfigProps;
    /** <code>LambdaEventStructureVersion</code>  <a name="cfn-vpclattice-targetgroup-targetgroupconfig-lambdaeventstructureversion"></a>
  The version of the event structure that your Lambda function receives. Supported only if the target group type is <code>LAMBDA</code>. The default is <code>V1</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> */
    lambdaEventStructureVersion?: Value<string>;
    /** <code>VpcIdentifier</code>  <a name="cfn-vpclattice-targetgroup-targetgroupconfig-vpcidentifier"></a>
  The ID of the VPC. Not supported if the target group type is <code>LAMBDA</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> */
    vpcIdentifier?: Value<string>;
    /** <code>Protocol</code>  <a name="cfn-vpclattice-targetgroup-targetgroupconfig-protocol"></a>
  The protocol to use for routing traffic to the targets. The default is the protocol of the target group. Not supported if the target group type is <code>LAMBDA</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> */
    protocol?: Value<string>;
    /** <code>ProtocolVersion</code>  <a name="cfn-vpclattice-targetgroup-targetgroupconfig-protocolversion"></a>
  The protocol version. The default is <code>HTTP1</code>. Not supported if the target group type is <code>LAMBDA</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> */
    protocolVersion?: Value<string>;
}
