import { Value } from '../../../cloudformation/Value';
/**
  Contains the information required to retrieve an app or cookbook from a repository. For more information, see <a href="https://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-creating.html">Creating Apps</a> or <a href="https://docs.aws.amazon.com/opsworks/latest/userguide/workingcookbook.html">Custom Recipes and Cookbooks</a>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-opsworks-stack-source.html">the AWS Docs</a>
*/
export interface SourceProps {
    /** <p> */
    password?: Value<string>;
    /** <code>Revision</code>  <a name="cfn-opsworks-custcookbooksource-revision"></a>
  The application’s version. AWS OpsWorks Stacks enables you to easily deploy new versions of an application. One of the simplest approaches is to have branches or revisions in your repository that represent different versions that can potentially be deployed.<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> */
    revision?: Value<string>;
    /** <code>SshKey</code>  <a name="cfn-opsworks-custcookbooksource-sshkey"></a>
  The repository’s SSH key. For more information, see <a href="https://docs.aws.amazon.com/opsworks/latest/userguide/workingapps-deploykeys.html">Using Git Repository SSH Keys</a> in the
  AWS OpsWorks User Guide: To pass in an SSH key as a parameter, see the following example:<br />
  <code>&quot;Parameters&quot; : { &quot;GitSSHKey&quot; : { &quot;Description&quot; : &quot;Change SSH key newlines to commas.&quot;, &quot;Type&quot; : &quot;CommaDelimitedList&quot;, &quot;NoEcho&quot; : &quot;true&quot; }, ... &quot;CustomCookbooksSource&quot;: { &quot;Revision&quot; : { &quot;Ref&quot;: &quot;GitRevision&quot;}, &quot;SshKey&quot; : { &quot;Fn::Join&quot; : [ &quot;\n&quot;, { &quot;Ref&quot;: &quot;GitSSHKey&quot;} ] }, &quot;Type&quot;: &quot;git&quot;, &quot;Url&quot;: { &quot;Ref&quot;: &quot;GitURL&quot;} } ...</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> */
    sshKey?: Value<string>;
    /** <code>Type</code>  <a name="cfn-opsworks-custcookbooksource-type"></a>
  The repository type.<br />
  
  Required: No<br />
  
  Allowed values: <code>archive | git | s3 | svn</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> */
    type?: Value<'archive' | 'git' | 's3' | 'svn'>;
    /** <code>Url</code>  <a name="cfn-opsworks-custcookbooksource-url"></a>
  The source URL. The following is an example of an Amazon S3 source URL: <code>https://s3.amazonaws.com/opsworks-demo-bucket/opsworks_cookbook_demo.tar.gz</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> */
    url?: Value<string>;
    /** <p> */
    username?: Value<string>;
}
