import { VirtualNodeConnectionPoolProps } from './VirtualNodeConnectionPoolProps';
import { ListenerTimeoutProps } from './ListenerTimeoutProps';
import { HealthCheckProps } from './HealthCheckProps';
import { ListenerTlsProps } from './ListenerTlsProps';
import { PortMappingProps } from './PortMappingProps';
import { OutlierDetectionProps } from './OutlierDetectionProps';
/**
  An object that represents a listener for a virtual node.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualnode-listener.html">the AWS Docs</a>
*/
export interface ListenerProps {
    /** <code>ConnectionPool</code>  <a name="cfn-appmesh-virtualnode-listener-connectionpool"></a>
  The connection pool information for the listener.<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> */
    connectionPool?: VirtualNodeConnectionPoolProps;
    /** <code>Timeout</code>  <a name="cfn-appmesh-virtualnode-listener-timeout"></a>
  An object that represents timeouts for different protocols.<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> */
    timeout?: ListenerTimeoutProps;
    /** <code>HealthCheck</code>  <a name="cfn-appmesh-virtualnode-listener-healthcheck"></a>
  The health check information for the listener.<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?: HealthCheckProps;
    /** <code>TLS</code>  <a name="cfn-appmesh-virtualnode-listener-tls"></a>
  A reference to an object that represents the Transport Layer Security (TLS) properties for a listener.<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> */
    tLS?: ListenerTlsProps;
    /** <code>PortMapping</code>  <a name="cfn-appmesh-virtualnode-listener-portmapping"></a>
  The port mapping information for the listener.<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> */
    portMapping: PortMappingProps;
    /** <code>OutlierDetection</code>  <a name="cfn-appmesh-virtualnode-listener-outlierdetection"></a>
  The outlier detection information for the listener.<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> */
    outlierDetection?: OutlierDetectionProps;
}
