# Copyright (c) 2012-2024, Mark Peek <mark@peek.org>
# All rights reserved.
#
# See LICENSE file for full license.
#
# *** Do not modify - this file is autogenerated ***
from . import AWSObject, AWSProperty, PropsDictType, Tags
from .validators import boolean, double, integer
[docs]class DocumentAttributeValue(AWSProperty):
"""
`DocumentAttributeValue <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-documentattributevalue.html>`__
"""
props: PropsDictType = {
"DateValue": (str, False),
"LongValue": (integer, False),
"StringListValue": ([str], False),
"StringValue": (str, False),
}
[docs]class DocumentAttributeCondition(AWSProperty):
"""
`DocumentAttributeCondition <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-documentattributecondition.html>`__
"""
props: PropsDictType = {
"ConditionDocumentAttributeKey": (str, True),
"ConditionOnValue": (DocumentAttributeValue, False),
"Operator": (str, True),
}
[docs]class HookConfiguration(AWSProperty):
"""
`HookConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-hookconfiguration.html>`__
"""
props: PropsDictType = {
"InvocationCondition": (DocumentAttributeCondition, False),
"LambdaArn": (str, True),
"S3Bucket": (str, True),
}
[docs]class DocumentAttributeTarget(AWSProperty):
"""
`DocumentAttributeTarget <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-documentattributetarget.html>`__
"""
props: PropsDictType = {
"TargetDocumentAttributeKey": (str, True),
"TargetDocumentAttributeValue": (DocumentAttributeValue, False),
"TargetDocumentAttributeValueDeletion": (boolean, False),
}
[docs]class InlineCustomDocumentEnrichmentConfiguration(AWSProperty):
"""
`InlineCustomDocumentEnrichmentConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-inlinecustomdocumentenrichmentconfiguration.html>`__
"""
props: PropsDictType = {
"Condition": (DocumentAttributeCondition, False),
"DocumentContentDeletion": (boolean, False),
"Target": (DocumentAttributeTarget, False),
}
[docs]class CustomDocumentEnrichmentConfiguration(AWSProperty):
"""
`CustomDocumentEnrichmentConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-customdocumentenrichmentconfiguration.html>`__
"""
props: PropsDictType = {
"InlineConfigurations": ([InlineCustomDocumentEnrichmentConfiguration], False),
"PostExtractionHookConfiguration": (HookConfiguration, False),
"PreExtractionHookConfiguration": (HookConfiguration, False),
"RoleArn": (str, False),
}
[docs]class ConfluenceAttachmentToIndexFieldMapping(AWSProperty):
"""
`ConfluenceAttachmentToIndexFieldMapping <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-confluenceattachmenttoindexfieldmapping.html>`__
"""
props: PropsDictType = {
"DataSourceFieldName": (str, True),
"DateFieldFormat": (str, False),
"IndexFieldName": (str, True),
}
[docs]class ConfluenceAttachmentConfiguration(AWSProperty):
"""
`ConfluenceAttachmentConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-confluenceattachmentconfiguration.html>`__
"""
props: PropsDictType = {
"AttachmentFieldMappings": ([ConfluenceAttachmentToIndexFieldMapping], False),
"CrawlAttachments": (boolean, False),
}
[docs]class ConfluenceBlogToIndexFieldMapping(AWSProperty):
"""
`ConfluenceBlogToIndexFieldMapping <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-confluenceblogtoindexfieldmapping.html>`__
"""
props: PropsDictType = {
"DataSourceFieldName": (str, True),
"DateFieldFormat": (str, False),
"IndexFieldName": (str, True),
}
[docs]class ConfluenceBlogConfiguration(AWSProperty):
"""
`ConfluenceBlogConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-confluenceblogconfiguration.html>`__
"""
props: PropsDictType = {
"BlogFieldMappings": ([ConfluenceBlogToIndexFieldMapping], False),
}
[docs]class ConfluencePageToIndexFieldMapping(AWSProperty):
"""
`ConfluencePageToIndexFieldMapping <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-confluencepagetoindexfieldmapping.html>`__
"""
props: PropsDictType = {
"DataSourceFieldName": (str, True),
"DateFieldFormat": (str, False),
"IndexFieldName": (str, True),
}
[docs]class ConfluencePageConfiguration(AWSProperty):
"""
`ConfluencePageConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-confluencepageconfiguration.html>`__
"""
props: PropsDictType = {
"PageFieldMappings": ([ConfluencePageToIndexFieldMapping], False),
}
[docs]class ConfluenceSpaceToIndexFieldMapping(AWSProperty):
"""
`ConfluenceSpaceToIndexFieldMapping <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-confluencespacetoindexfieldmapping.html>`__
"""
props: PropsDictType = {
"DataSourceFieldName": (str, True),
"DateFieldFormat": (str, False),
"IndexFieldName": (str, True),
}
[docs]class ConfluenceSpaceConfiguration(AWSProperty):
"""
`ConfluenceSpaceConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-confluencespaceconfiguration.html>`__
"""
props: PropsDictType = {
"CrawlArchivedSpaces": (boolean, False),
"CrawlPersonalSpaces": (boolean, False),
"ExcludeSpaces": ([str], False),
"IncludeSpaces": ([str], False),
"SpaceFieldMappings": ([ConfluenceSpaceToIndexFieldMapping], False),
}
[docs]class DataSourceVpcConfiguration(AWSProperty):
"""
`DataSourceVpcConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-datasourcevpcconfiguration.html>`__
"""
props: PropsDictType = {
"SecurityGroupIds": ([str], True),
"SubnetIds": ([str], True),
}
[docs]class ConfluenceConfiguration(AWSProperty):
"""
`ConfluenceConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-confluenceconfiguration.html>`__
"""
props: PropsDictType = {
"AttachmentConfiguration": (ConfluenceAttachmentConfiguration, False),
"BlogConfiguration": (ConfluenceBlogConfiguration, False),
"ExclusionPatterns": ([str], False),
"InclusionPatterns": ([str], False),
"PageConfiguration": (ConfluencePageConfiguration, False),
"SecretArn": (str, True),
"ServerUrl": (str, True),
"SpaceConfiguration": (ConfluenceSpaceConfiguration, False),
"Version": (str, True),
"VpcConfiguration": (DataSourceVpcConfiguration, False),
}
[docs]class AclConfiguration(AWSProperty):
"""
`AclConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-aclconfiguration.html>`__
"""
props: PropsDictType = {
"AllowedGroupsColumnName": (str, True),
}
[docs]class DataSourceToIndexFieldMapping(AWSProperty):
"""
`DataSourceToIndexFieldMapping <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-datasourcetoindexfieldmapping.html>`__
"""
props: PropsDictType = {
"DataSourceFieldName": (str, True),
"DateFieldFormat": (str, False),
"IndexFieldName": (str, True),
}
[docs]class ColumnConfiguration(AWSProperty):
"""
`ColumnConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-columnconfiguration.html>`__
"""
props: PropsDictType = {
"ChangeDetectingColumns": ([str], True),
"DocumentDataColumnName": (str, True),
"DocumentIdColumnName": (str, True),
"DocumentTitleColumnName": (str, False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
}
[docs]class ConnectionConfiguration(AWSProperty):
"""
`ConnectionConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-connectionconfiguration.html>`__
"""
props: PropsDictType = {
"DatabaseHost": (str, True),
"DatabaseName": (str, True),
"DatabasePort": (integer, True),
"SecretArn": (str, True),
"TableName": (str, True),
}
[docs]class SqlConfiguration(AWSProperty):
"""
`SqlConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-sqlconfiguration.html>`__
"""
props: PropsDictType = {
"QueryIdentifiersEnclosingOption": (str, False),
}
[docs]class DatabaseConfiguration(AWSProperty):
"""
`DatabaseConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-databaseconfiguration.html>`__
"""
props: PropsDictType = {
"AclConfiguration": (AclConfiguration, False),
"ColumnConfiguration": (ColumnConfiguration, True),
"ConnectionConfiguration": (ConnectionConfiguration, True),
"DatabaseEngineType": (str, True),
"SqlConfiguration": (SqlConfiguration, False),
"VpcConfiguration": (DataSourceVpcConfiguration, False),
}
[docs]class GoogleDriveConfiguration(AWSProperty):
"""
`GoogleDriveConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-googledriveconfiguration.html>`__
"""
props: PropsDictType = {
"ExcludeMimeTypes": ([str], False),
"ExcludeSharedDrives": ([str], False),
"ExcludeUserAccounts": ([str], False),
"ExclusionPatterns": ([str], False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
"InclusionPatterns": ([str], False),
"SecretArn": (str, True),
}
[docs]class S3Path(AWSProperty):
"""
`S3Path <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-faq-s3path.html>`__
"""
props: PropsDictType = {
"Bucket": (str, True),
"Key": (str, True),
}
[docs]class OneDriveUsers(AWSProperty):
"""
`OneDriveUsers <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-onedriveusers.html>`__
"""
props: PropsDictType = {
"OneDriveUserList": ([str], False),
"OneDriveUserS3Path": (S3Path, False),
}
[docs]class OneDriveConfiguration(AWSProperty):
"""
`OneDriveConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-onedriveconfiguration.html>`__
"""
props: PropsDictType = {
"DisableLocalGroups": (boolean, False),
"ExclusionPatterns": ([str], False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
"InclusionPatterns": ([str], False),
"OneDriveUsers": (OneDriveUsers, True),
"SecretArn": (str, True),
"TenantDomain": (str, True),
}
[docs]class AccessControlListConfiguration(AWSProperty):
"""
`AccessControlListConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-accesscontrollistconfiguration.html>`__
"""
props: PropsDictType = {
"KeyPath": (str, False),
}
[docs]class S3DataSourceConfiguration(AWSProperty):
"""
`S3DataSourceConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-s3datasourceconfiguration.html>`__
"""
props: PropsDictType = {
"AccessControlListConfiguration": (AccessControlListConfiguration, False),
"BucketName": (str, True),
"DocumentsMetadataConfiguration": (DocumentsMetadataConfiguration, False),
"ExclusionPatterns": ([str], False),
"InclusionPatterns": ([str], False),
"InclusionPrefixes": ([str], False),
}
[docs]class SalesforceChatterFeedConfiguration(AWSProperty):
"""
`SalesforceChatterFeedConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-salesforcechatterfeedconfiguration.html>`__
"""
props: PropsDictType = {
"DocumentDataFieldName": (str, True),
"DocumentTitleFieldName": (str, False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
"IncludeFilterTypes": ([str], False),
}
[docs]class SalesforceCustomKnowledgeArticleTypeConfiguration(AWSProperty):
"""
`SalesforceCustomKnowledgeArticleTypeConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-salesforcecustomknowledgearticletypeconfiguration.html>`__
"""
props: PropsDictType = {
"DocumentDataFieldName": (str, True),
"DocumentTitleFieldName": (str, False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
"Name": (str, True),
}
[docs]class SalesforceStandardKnowledgeArticleTypeConfiguration(AWSProperty):
"""
`SalesforceStandardKnowledgeArticleTypeConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-salesforcestandardknowledgearticletypeconfiguration.html>`__
"""
props: PropsDictType = {
"DocumentDataFieldName": (str, True),
"DocumentTitleFieldName": (str, False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
}
[docs]class SalesforceKnowledgeArticleConfiguration(AWSProperty):
"""
`SalesforceKnowledgeArticleConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-salesforceknowledgearticleconfiguration.html>`__
"""
props: PropsDictType = {
"CustomKnowledgeArticleTypeConfigurations": (
[SalesforceCustomKnowledgeArticleTypeConfiguration],
False,
),
"IncludedStates": ([str], True),
"StandardKnowledgeArticleTypeConfiguration": (
SalesforceStandardKnowledgeArticleTypeConfiguration,
False,
),
}
[docs]class SalesforceStandardObjectAttachmentConfiguration(AWSProperty):
"""
`SalesforceStandardObjectAttachmentConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-salesforcestandardobjectattachmentconfiguration.html>`__
"""
props: PropsDictType = {
"DocumentTitleFieldName": (str, False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
}
[docs]class SalesforceStandardObjectConfiguration(AWSProperty):
"""
`SalesforceStandardObjectConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-salesforcestandardobjectconfiguration.html>`__
"""
props: PropsDictType = {
"DocumentDataFieldName": (str, True),
"DocumentTitleFieldName": (str, False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
"Name": (str, True),
}
[docs]class SalesforceConfiguration(AWSProperty):
"""
`SalesforceConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-salesforceconfiguration.html>`__
"""
props: PropsDictType = {
"ChatterFeedConfiguration": (SalesforceChatterFeedConfiguration, False),
"CrawlAttachments": (boolean, False),
"ExcludeAttachmentFilePatterns": ([str], False),
"IncludeAttachmentFilePatterns": ([str], False),
"KnowledgeArticleConfiguration": (
SalesforceKnowledgeArticleConfiguration,
False,
),
"SecretArn": (str, True),
"ServerUrl": (str, True),
"StandardObjectAttachmentConfiguration": (
SalesforceStandardObjectAttachmentConfiguration,
False,
),
"StandardObjectConfigurations": (
[SalesforceStandardObjectConfiguration],
False,
),
}
[docs]class ServiceNowKnowledgeArticleConfiguration(AWSProperty):
"""
`ServiceNowKnowledgeArticleConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-servicenowknowledgearticleconfiguration.html>`__
"""
props: PropsDictType = {
"CrawlAttachments": (boolean, False),
"DocumentDataFieldName": (str, True),
"DocumentTitleFieldName": (str, False),
"ExcludeAttachmentFilePatterns": ([str], False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
"FilterQuery": (str, False),
"IncludeAttachmentFilePatterns": ([str], False),
}
[docs]class ServiceNowServiceCatalogConfiguration(AWSProperty):
"""
`ServiceNowServiceCatalogConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-servicenowservicecatalogconfiguration.html>`__
"""
props: PropsDictType = {
"CrawlAttachments": (boolean, False),
"DocumentDataFieldName": (str, True),
"DocumentTitleFieldName": (str, False),
"ExcludeAttachmentFilePatterns": ([str], False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
"IncludeAttachmentFilePatterns": ([str], False),
}
[docs]class ServiceNowConfiguration(AWSProperty):
"""
`ServiceNowConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-servicenowconfiguration.html>`__
"""
props: PropsDictType = {
"AuthenticationType": (str, False),
"HostUrl": (str, True),
"KnowledgeArticleConfiguration": (
ServiceNowKnowledgeArticleConfiguration,
False,
),
"SecretArn": (str, True),
"ServiceCatalogConfiguration": (ServiceNowServiceCatalogConfiguration, False),
"ServiceNowBuildVersion": (str, True),
}
[docs]class SharePointConfiguration(AWSProperty):
"""
`SharePointConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-sharepointconfiguration.html>`__
"""
props: PropsDictType = {
"CrawlAttachments": (boolean, False),
"DisableLocalGroups": (boolean, False),
"DocumentTitleFieldName": (str, False),
"ExclusionPatterns": ([str], False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
"InclusionPatterns": ([str], False),
"SecretArn": (str, True),
"SharePointVersion": (str, True),
"SslCertificateS3Path": (S3Path, False),
"Urls": ([str], True),
"UseChangeLog": (boolean, False),
"VpcConfiguration": (DataSourceVpcConfiguration, False),
}
[docs]class ProxyConfiguration(AWSProperty):
"""
`ProxyConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-proxyconfiguration.html>`__
"""
props: PropsDictType = {
"Credentials": (str, False),
"Host": (str, True),
"Port": (integer, True),
}
[docs]class WebCrawlerBasicAuthentication(AWSProperty):
"""
`WebCrawlerBasicAuthentication <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-webcrawlerbasicauthentication.html>`__
"""
props: PropsDictType = {
"Credentials": (str, True),
"Host": (str, True),
"Port": (integer, True),
}
[docs]class WebCrawlerAuthenticationConfiguration(AWSProperty):
"""
`WebCrawlerAuthenticationConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-webcrawlerauthenticationconfiguration.html>`__
"""
props: PropsDictType = {
"BasicAuthentication": ([WebCrawlerBasicAuthentication], False),
}
[docs]class WebCrawlerSeedUrlConfiguration(AWSProperty):
"""
`WebCrawlerSeedUrlConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-webcrawlerseedurlconfiguration.html>`__
"""
props: PropsDictType = {
"SeedUrls": ([str], True),
"WebCrawlerMode": (str, False),
}
[docs]class WebCrawlerSiteMapsConfiguration(AWSProperty):
"""
`WebCrawlerSiteMapsConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-webcrawlersitemapsconfiguration.html>`__
"""
props: PropsDictType = {
"SiteMaps": ([str], True),
}
[docs]class WebCrawlerUrls(AWSProperty):
"""
`WebCrawlerUrls <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-webcrawlerurls.html>`__
"""
props: PropsDictType = {
"SeedUrlConfiguration": (WebCrawlerSeedUrlConfiguration, False),
"SiteMapsConfiguration": (WebCrawlerSiteMapsConfiguration, False),
}
[docs]class WebCrawlerConfiguration(AWSProperty):
"""
`WebCrawlerConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-webcrawlerconfiguration.html>`__
"""
props: PropsDictType = {
"AuthenticationConfiguration": (WebCrawlerAuthenticationConfiguration, False),
"CrawlDepth": (integer, False),
"MaxContentSizePerPageInMegaBytes": (double, False),
"MaxLinksPerPage": (integer, False),
"MaxUrlsPerMinuteCrawlRate": (integer, False),
"ProxyConfiguration": (ProxyConfiguration, False),
"UrlExclusionPatterns": ([str], False),
"UrlInclusionPatterns": ([str], False),
"Urls": (WebCrawlerUrls, True),
}
[docs]class WorkDocsConfiguration(AWSProperty):
"""
`WorkDocsConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-workdocsconfiguration.html>`__
"""
props: PropsDictType = {
"CrawlComments": (boolean, False),
"ExclusionPatterns": ([str], False),
"FieldMappings": ([DataSourceToIndexFieldMapping], False),
"InclusionPatterns": ([str], False),
"OrganizationId": (str, True),
"UseChangeLog": (boolean, False),
}
[docs]class DataSourceConfiguration(AWSProperty):
"""
`DataSourceConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-datasource-datasourceconfiguration.html>`__
"""
props: PropsDictType = {
"ConfluenceConfiguration": (ConfluenceConfiguration, False),
"DatabaseConfiguration": (DatabaseConfiguration, False),
"GoogleDriveConfiguration": (GoogleDriveConfiguration, False),
"OneDriveConfiguration": (OneDriveConfiguration, False),
"S3Configuration": (S3DataSourceConfiguration, False),
"SalesforceConfiguration": (SalesforceConfiguration, False),
"ServiceNowConfiguration": (ServiceNowConfiguration, False),
"SharePointConfiguration": (SharePointConfiguration, False),
"WebCrawlerConfiguration": (WebCrawlerConfiguration, False),
"WorkDocsConfiguration": (WorkDocsConfiguration, False),
}
[docs]class DataSource(AWSObject):
"""
`DataSource <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-datasource.html>`__
"""
resource_type = "AWS::Kendra::DataSource"
props: PropsDictType = {
"CustomDocumentEnrichmentConfiguration": (
CustomDocumentEnrichmentConfiguration,
False,
),
"DataSourceConfiguration": (DataSourceConfiguration, False),
"Description": (str, False),
"IndexId": (str, True),
"LanguageCode": (str, False),
"Name": (str, True),
"RoleArn": (str, False),
"Schedule": (str, False),
"Tags": (Tags, False),
"Type": (str, True),
}
[docs]class Faq(AWSObject):
"""
`Faq <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-faq.html>`__
"""
resource_type = "AWS::Kendra::Faq"
props: PropsDictType = {
"Description": (str, False),
"FileFormat": (str, False),
"IndexId": (str, True),
"LanguageCode": (str, False),
"Name": (str, True),
"RoleArn": (str, True),
"S3Path": (S3Path, True),
"Tags": (Tags, False),
}
[docs]class CapacityUnitsConfiguration(AWSProperty):
"""
`CapacityUnitsConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-index-capacityunitsconfiguration.html>`__
"""
props: PropsDictType = {
"QueryCapacityUnits": (integer, True),
"StorageCapacityUnits": (integer, True),
}
[docs]class ValueImportanceItem(AWSProperty):
"""
`ValueImportanceItem <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-index-valueimportanceitem.html>`__
"""
props: PropsDictType = {
"Key": (str, False),
"Value": (integer, False),
}
[docs]class Relevance(AWSProperty):
"""
`Relevance <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-index-relevance.html>`__
"""
props: PropsDictType = {
"Duration": (str, False),
"Freshness": (boolean, False),
"Importance": (integer, False),
"RankOrder": (str, False),
"ValueImportanceItems": ([ValueImportanceItem], False),
}
[docs]class Search(AWSProperty):
"""
`Search <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-index-search.html>`__
"""
props: PropsDictType = {
"Displayable": (boolean, False),
"Facetable": (boolean, False),
"Searchable": (boolean, False),
"Sortable": (boolean, False),
}
[docs]class ServerSideEncryptionConfiguration(AWSProperty):
"""
`ServerSideEncryptionConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-index-serversideencryptionconfiguration.html>`__
"""
props: PropsDictType = {
"KmsKeyId": (str, False),
}
[docs]class JsonTokenTypeConfiguration(AWSProperty):
"""
`JsonTokenTypeConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-index-jsontokentypeconfiguration.html>`__
"""
props: PropsDictType = {
"GroupAttributeField": (str, True),
"UserNameAttributeField": (str, True),
}
[docs]class JwtTokenTypeConfiguration(AWSProperty):
"""
`JwtTokenTypeConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-index-jwttokentypeconfiguration.html>`__
"""
props: PropsDictType = {
"ClaimRegex": (str, False),
"GroupAttributeField": (str, False),
"Issuer": (str, False),
"KeyLocation": (str, True),
"SecretManagerArn": (str, False),
"URL": (str, False),
"UserNameAttributeField": (str, False),
}
[docs]class UserTokenConfiguration(AWSProperty):
"""
`UserTokenConfiguration <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kendra-index-usertokenconfiguration.html>`__
"""
props: PropsDictType = {
"JsonTokenTypeConfiguration": (JsonTokenTypeConfiguration, False),
"JwtTokenTypeConfiguration": (JwtTokenTypeConfiguration, False),
}
[docs]class Index(AWSObject):
"""
`Index <http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-index.html>`__
"""
resource_type = "AWS::Kendra::Index"
props: PropsDictType = {
"CapacityUnits": (CapacityUnitsConfiguration, False),
"Description": (str, False),
"DocumentMetadataConfigurations": ([DocumentMetadataConfiguration], False),
"Edition": (str, True),
"Name": (str, True),
"RoleArn": (str, True),
"ServerSideEncryptionConfiguration": (ServerSideEncryptionConfiguration, False),
"Tags": (Tags, False),
"UserContextPolicy": (str, False),
"UserTokenConfigurations": ([UserTokenConfiguration], False),
}