import { Value } from '../../../cloudformation/Value';
import { PhysicalConnectionRequirementsProps } from './PhysicalConnectionRequirementsProps';
/**
  A structure that is used to specify a connection to create or update.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-glue-connection-connectioninput.html">the AWS Docs</a>
*/
export interface ConnectionInputProps {
    /** <code>Description</code>  <a name="cfn-glue-connection-connectioninput-description"></a>
  The description of the connection.<br />
  
  Required: No<br />
  
  Minimum: <code>0</code><br />
  
  Maximum: <code>2048</code><br />
  
  Pattern: <code>[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\r\n\t]*</code><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>;
    /** <p> */
    connectionType: Value<string>;
    /** <code>MatchCriteria</code>  <a name="cfn-glue-connection-connectioninput-matchcriteria"></a>
  A list of criteria that can be used in selecting this connection.<br />
  
  Required: No<br />
  
  Maximum: <code>10</code><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> */
    matchCriteria?: Value<Value<string>[]>;
    /** <code>PhysicalConnectionRequirements</code>  <a name="cfn-glue-connection-connectioninput-physicalconnectionrequirements"></a>
  A map of physical connection requirements, such as virtual private cloud (VPC) and <code>SecurityGroup</code>, that are needed to successfully make this connection.<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> */
    physicalConnectionRequirements?: PhysicalConnectionRequirementsProps;
    /** <code>ConnectionProperties</code>  <a name="cfn-glue-connection-connectioninput-connectionproperties"></a>
  These key-value pairs define parameters for the connection.<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> */
    connectionProperties?: Value<any>;
    /** <code>Name</code>  <a name="cfn-glue-connection-connectioninput-name"></a>
  The name of the connection. Connection will not function as expected without a name.<br />
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>255</code><br />
  
  Pattern: <code>[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*</code><br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    name?: Value<string>;
}
