import { Value } from '../../../cloudformation/Value';
import { S3PathProps } from './S3PathProps';
import { DataSourceVpcConfigurationProps } from './DataSourceVpcConfigurationProps';
import { DataSourceToIndexFieldMappingProps } from './DataSourceToIndexFieldMappingProps';
/**
  Provides the configuration information to connect to Microsoft SharePoint as your data source.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-sharepointconfiguration.html">the AWS Docs</a>
*/
export interface SharePointConfigurationProps {
    /** <code>SecretArn</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-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 SharePoint instance. For more information, see <a href="https://docs.aws.amazon.com/kendra/latest/dg/data-source-sharepoint.html">Microsoft SharePoint</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>DocumentTitleFieldName</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-documenttitlefieldname"></a>
  The Microsoft SharePoint attribute field that contains the title of the document.<br />
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>100</code><br />
  
  Pattern: <code>^[a-zA-Z][a-zA-Z0-9_.]*$</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> */
    documentTitleFieldName?: Value<string>;
    /** <code>SslCertificateS3Path</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-sslcertificates3path"></a>
  Information required to find a specific file in an Amazon S3 bucket.<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> */
    sslCertificateS3Path?: S3PathProps;
    /** <code>DisableLocalGroups</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-disablelocalgroups"></a>
  <code>TRUE</code> to disable local groups information.<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> */
    disableLocalGroups?: Value<boolean>;
    /** <code>CrawlAttachments</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-crawlattachments"></a>
  <code>TRUE</code> to index document attachments.<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> */
    crawlAttachments?: Value<boolean>;
    /** <code>InclusionPatterns</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-inclusionpatterns"></a>
  A list of regular expression patterns to include certain documents in your SharePoint. Documents that match the patterns are included in the index. Documents that don’t match the patterns are excluded from the index. If a document matches both an inclusion and exclusion pattern, the exclusion pattern takes precedence and the document isn’t included in the index.<br />
  The regex applies to the display URL of the SharePoint document.<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>VpcConfiguration</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-vpcconfiguration"></a>
  Provides information for connecting to an Amazon VPC.<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>Urls</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-urls"></a>
  The Microsoft SharePoint site URLs for the documents you want to index.<br />
  
  Required: Yes<br />
  
  Maximum: <code>100</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> */
    urls: Value<Value<string>[]>;
    /** <code>UseChangeLog</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-usechangelog"></a>
  <code>TRUE</code> to use the SharePoint change log to determine which documents require updating in the index. Depending on the change log’s size, it may take longer for Amazon Kendra to use the change log than to scan all of your documents in SharePoint.<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> */
    useChangeLog?: Value<boolean>;
    /** <code>FieldMappings</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-fieldmappings"></a>
  A list of <code>DataSourceToIndexFieldMapping</code> objects that map Microsoft SharePoint attributes or fields to Amazon Kendra index fields. You must first create the index fields using the <a href="https://docs.aws.amazon.com/kendra/latest/dg/API_UpdateIndex.html">UpdateIndex</a> operation before you map SharePoint attributes. For more information, see <a href="https://docs.aws.amazon.com/kendra/latest/dg/field-mapping.html">Mapping Data Source Fields</a>.<br />
  
  Required: No<br />
  
  Maximum: <code>100</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> */
    fieldMappings?: DataSourceToIndexFieldMappingProps[];
    /** <code>ExclusionPatterns</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-exclusionpatterns"></a>
  A list of regular expression patterns. Documents that match the patterns are excluded from the index. Documents that don’t match the patterns are included in the index. If a document matches both an exclusion pattern and an inclusion pattern, the document is not included in the index.<br />
  The regex is applied to the display URL of the SharePoint document.<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>SharePointVersion</code>  <a name="cfn-kendra-datasource-sharepointconfiguration-sharepointversion"></a>
  The version of Microsoft SharePoint that you use.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>SHAREPOINT_2013 | SHAREPOINT_2016 | SHAREPOINT_2019 | SHAREPOINT_ONLINE</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> */
    sharePointVersion: Value<'SHAREPOINT_2013' | 'SHAREPOINT_2016' | 'SHAREPOINT_2019' | 'SHAREPOINT_ONLINE'>;
}
