import { Value } from '../../../cloudformation/Value';
import { ConfluenceAttachmentConfigurationProps } from './ConfluenceAttachmentConfigurationProps';
import { ConfluencePageConfigurationProps } from './ConfluencePageConfigurationProps';
import { ConfluenceBlogConfigurationProps } from './ConfluenceBlogConfigurationProps';
import { DataSourceVpcConfigurationProps } from './DataSourceVpcConfigurationProps';
import { ConfluenceSpaceConfigurationProps } from './ConfluenceSpaceConfigurationProps';
/**
  Provides the configuration information to connect to Confluence as your data source.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-confluenceconfiguration.html">the AWS Docs</a>
*/
export interface ConfluenceConfigurationProps {
    /** <code>SecretArn</code>  <a name="cfn-kendra-datasource-confluenceconfiguration-secretarn"></a>
  The Amazon Resource Name (ARN) of an AWS Secrets Manager secret that contains the user name and password required to connect to the Confluence instance. If you use Confluence Cloud, you use a generated API token as the password.<br />
  You can also provide authentication credentials in the form of a personal access token. For more information, see <a href="https://docs.aws.amazon.com/kendra/latest/dg/data-source-confluence.html">Using a Confluence data source</a>.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1284</code><br />
  
  Pattern: <code>arn:[a-z0-9-\.]{1,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[a-z0-9-\.]{0,63}:[^/].{0,1023}</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> */
    secretArn: Value<string>;
    /** <code>AttachmentConfiguration</code>  <a name="cfn-kendra-datasource-confluenceconfiguration-attachmentconfiguration"></a>
  Configuration information for indexing attachments to Confluence blogs and pages.<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> */
    attachmentConfiguration?: ConfluenceAttachmentConfigurationProps;
    /** <code>ServerUrl</code>  <a name="cfn-kendra-datasource-confluenceconfiguration-serverurl"></a>
  The URL of your Confluence instance. Use the full URL of the server. For example,
  https://server.example.com:port/: You can also use an IP address, for example,
  https://192.168.1.113/: br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>2048</code><br />
  
  Pattern: <code>^(https?|ftp|file):\/\/([^\s]*)</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> */
    serverUrl: Value<string>;
    /** <code>PageConfiguration</code>  <a name="cfn-kendra-datasource-confluenceconfiguration-pageconfiguration"></a>
  Configuration information for indexing Confluence pages.<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> */
    pageConfiguration?: ConfluencePageConfigurationProps;
    /** <code>BlogConfiguration</code>  <a name="cfn-kendra-datasource-confluenceconfiguration-blogconfiguration"></a>
  Configuration information for indexing Confluence blogs.<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> */
    blogConfiguration?: ConfluenceBlogConfigurationProps;
    /** <code>Version</code>  <a name="cfn-kendra-datasource-confluenceconfiguration-version"></a>
  The version or the type of Confluence installation to connect to.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>CLOUD | SERVER</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> */
    version: Value<'CLOUD' | 'SERVER'>;
    /** <code>VpcConfiguration</code>  <a name="cfn-kendra-datasource-confluenceconfiguration-vpcconfiguration"></a>
  Configuration information for an Amazon Virtual Private Cloud to connect to your Confluence. For more information, see <a href="https://docs.aws.amazon.com/kendra/latest/dg/vpc-configuration.html">Configuring a VPC</a>.<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> */
    vpcConfiguration?: DataSourceVpcConfigurationProps;
    /** <code>InclusionPatterns</code>  <a name="cfn-kendra-datasource-confluenceconfiguration-inclusionpatterns"></a>
  A list of regular expression patterns to include certain blog posts, pages, spaces, or attachments in your Confluence. Content that matches the patterns are included in the index. Content that doesn’t match the patterns is excluded from the index. If content matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the content isn’t included in the index.<br />
  
  Required: No<br />
  
  Maximum: <code>250</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> */
    inclusionPatterns?: Value<Value<string>[]>;
    /** <code>ExclusionPatterns</code>  <a name="cfn-kendra-datasource-confluenceconfiguration-exclusionpatterns"></a>
  A list of regular expression patterns to exclude certain blog posts, pages, spaces, or attachments in your Confluence. Content that matches the patterns are excluded from the index. Content that doesn’t match the patterns is included in the index. If content matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the content isn’t included in the index.<br />
  
  Required: No<br />
  
  Maximum: <code>250</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> */
    exclusionPatterns?: Value<Value<string>[]>;
    /** <code>SpaceConfiguration</code>  <a name="cfn-kendra-datasource-confluenceconfiguration-spaceconfiguration"></a>
  Configuration information for indexing Confluence spaces.<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> */
    spaceConfiguration?: ConfluenceSpaceConfigurationProps;
}
