import { VirtualGatewayListenerTlsValidationContextProps } from './VirtualGatewayListenerTlsValidationContextProps';
import { Value } from '../../../cloudformation/Value';
import { VirtualGatewayListenerTlsCertificateProps } from './VirtualGatewayListenerTlsCertificateProps';
/**
  An object that represents the Transport Layer Security (TLS) properties for a listener.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-appmesh-virtualgateway-virtualgatewaylistenertls.html">the AWS Docs</a>
*/
export interface VirtualGatewayListenerTlsProps {
    /** <code>Validation</code>  <a name="cfn-appmesh-virtualgateway-virtualgatewaylistenertls-validation"></a>
  A reference to an object that represents a virtual gateway’s listener’s Transport Layer Security (TLS) validation context.<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> */
    validation?: VirtualGatewayListenerTlsValidationContextProps;
    /** <p> */
    mode: Value<string>;
    /** <code>Certificate</code>  <a name="cfn-appmesh-virtualgateway-virtualgatewaylistenertls-certificate"></a>
  An object that represents a Transport Layer Security (TLS) certificate.<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> */
    certificate: VirtualGatewayListenerTlsCertificateProps;
}
