import { RepositoryProps } from './environmentec2/RepositoryProps';
import { Value } from '../../cloudformation/Value';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type EnvironmentEC2Attributes = {
    Arn: Attribute<string>;
    Name: Attribute<string>;
};
export type EnvironmentEC2 = AwsResource<'AWS::Cloud9::EnvironmentEC2', EnvironmentEC2Properties, EnvironmentEC2Attributes>;
/**
  The <code>AWS::Cloud9::EnvironmentEC2</code> resource creates an Amazon EC2 development environment in AWS Cloud9. For more information, see <a href="https://docs.aws.amazon.com/cloud9/latest/user-guide/create-environment.html">Creating an Environment</a> in the <em>AWS Cloud9 User Guide</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html">the AWS Docs</a>
*/
export declare function environmentEC2(environmentEC2Props: EnvironmentEC2Properties): EnvironmentEC2;
/**
  The <code>AWS::Cloud9::EnvironmentEC2</code> resource creates an Amazon EC2 development environment in AWS Cloud9. For more information, see <a href="https://docs.aws.amazon.com/cloud9/latest/user-guide/create-environment.html">Creating an Environment</a> in the <em>AWS Cloud9 User Guide</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cloud9-environmentec2.html">the AWS Docs</a>
*/
export interface EnvironmentEC2Properties {
    /** <code>Repositories</code>  <a name="cfn-cloud9-environmentec2-repositories"></a>
  Any AWS CodeCommit source code repositories to be cloned into the development environment.<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> */
    repositories?: RepositoryProps[];
    /** <code>OwnerArn</code>  <a name="cfn-cloud9-environmentec2-ownerarn"></a>
  The Amazon Resource Name (ARN) of the environment owner. This ARN can be the ARN of any AWS Identity and Access Management principal. If this value is not specified, the ARN defaults to this environment’s creator.<br />
  
  Required: No<br />
  
  Pattern: <code>^arn:(aws|aws-cn|aws-us-gov|aws-iso|aws-iso-b):(iam|sts)::\d+:(root|(user\/[\w+=/:,.@-]{1,64}|federated-user\/[\w+=/:,.@-]{2,32}|assumed-role\/[\w+=:,.@-]{1,64}\/[\w+=,.@-]{1,64}))$</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> */
    ownerArn?: Value<string>;
    /** <code>Description</code>  <a name="cfn-cloud9-environmentec2-description"></a>
  The description of the environment to create.<br />
  
  Required: No<br />
  
  Maximum: <code>200</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>;
    /** <code>ConnectionType</code>  <a name="cfn-cloud9-environmentec2-connectiontype"></a>
  The connection type used for connecting to an Amazon EC2 environment. Valid values are <code>CONNECT_SSH</code> (default) and <code>CONNECT_SSM</code> (connected through AWS Systems Manager).<br />
  
  Required: No<br />
  
  Allowed values: <code>CONNECT_SSH | CONNECT_SSM</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> */
    connectionType?: Value<'CONNECT_SSH' | 'CONNECT_SSM'>;
    /** <code>AutomaticStopTimeMinutes</code>  <a name="cfn-cloud9-environmentec2-automaticstoptimeminutes"></a>
  The number of minutes until the running instance is shut down after the environment was last used.<br />
  
  Required: No<br />
  
  Minimum: <code>0</code><br />
  
  Maximum: <code>20160</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> */
    automaticStopTimeMinutes?: Value<number>;
    /** <p> */
    imageId?: Value<string>;
    /** <code>SubnetId</code>  <a name="cfn-cloud9-environmentec2-subnetid"></a>
  The ID of the subnet in Amazon Virtual Private Cloud (Amazon VPC) that AWS Cloud9 will use to communicate with the Amazon Elastic Compute Cloud (Amazon EC2) instance.<br />
  
  Required: No<br />
  
  Minimum: <code>15</code><br />
  
  Maximum: <code>24</code><br />
  
  Pattern: <code>^(subnet-[0-9a-f]{8}|subnet-[0-9a-f]{17})$</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> */
    subnetId?: Value<string>;
    /** <code>InstanceType</code>  <a name="cfn-cloud9-environmentec2-instancetype"></a>
  The type of instance to connect to the environment (for example, <code>t2.micro</code>).<br />
  
  Required: Yes<br />
  
  Minimum: <code>5</code><br />
  
  Maximum: <code>20</code><br />
  
  Pattern: <code>^[a-z]+[1-9][.][a-z0-9]+$</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> */
    instanceType: Value<string>;
    /** <code>Tags</code>  <a name="cfn-cloud9-environmentec2-tags"></a>
  An array of key-value pairs that will be associated with the new AWS Cloud9 development environment.<br />
  
  Required: No<br />
  
  Maximum: <code>200</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> */
    tags?: Tag[];
    /** <code>Name</code>  <a name="cfn-cloud9-environmentec2-name"></a>
  The name of the environment.<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> */
    name?: Value<string>;
}
