import { Value } from '../../cloudformation/Value';
import { CapacityUnitsConfigurationProps } from './index/CapacityUnitsConfigurationProps';
import { ServerSideEncryptionConfigurationProps } from './index/ServerSideEncryptionConfigurationProps';
import { DocumentMetadataConfigurationProps } from './index/DocumentMetadataConfigurationProps';
import { Tag } from '../Tag';
import { UserTokenConfigurationProps } from './index/UserTokenConfigurationProps';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type IndexAttributes = {
    Id: Attribute<string>;
    Arn: Attribute<string>;
};
export type Index = AwsResource<'AWS::Kendra::Index', IndexProperties, IndexAttributes>;
/**
  Creates an Amazon Kendra index
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-index.html">the AWS Docs</a>
*/
export declare function index(indexProps: IndexProperties): Index;
/**
  Creates an Amazon Kendra index
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-kendra-index.html">the AWS Docs</a>
*/
export interface IndexProperties {
    /** <code>Description</code>  <a name="cfn-kendra-index-description"></a>
  A description for the index.<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> */
    description?: Value<string>;
    /** <p> */
    userContextPolicy?: Value<string>;
    /** <code>CapacityUnits</code>  <a name="cfn-kendra-index-capacityunits"></a>
  Property description not available.<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> */
    capacityUnits?: CapacityUnitsConfigurationProps;
    /** <code>ServerSideEncryptionConfiguration</code>  <a name="cfn-kendra-index-serversideencryptionconfiguration"></a>
  The identifier of the AWS KMS customer managed key (CMK) to use to encrypt data indexed by Amazon Kendra. Amazon Kendra doesn’t support asymmetric CMKs.<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> */
    serverSideEncryptionConfiguration?: ServerSideEncryptionConfigurationProps;
    /** <code>DocumentMetadataConfigurations</code>  <a name="cfn-kendra-index-documentmetadataconfigurations"></a>
  Specifies the properties of an index field. You can add either a custom or a built-in field. You can add and remove built-in fields at any time. When a built-in field is removed it’s configuration reverts to the default for the field. Custom fields can’t be removed from an index after they are added.<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> */
    documentMetadataConfigurations?: DocumentMetadataConfigurationProps[];
    /** <code>Tags</code>  <a name="cfn-kendra-index-tags"></a>
  An array of key-value pairs to apply to this resource.<br />
  For more information, see <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-resource-tags.html">Tag</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> */
    tags?: Tag[];
    /** <code>RoleArn</code>  <a name="cfn-kendra-index-rolearn"></a>
  An IAM role that gives Amazon Kendra permissions to access your Amazon CloudWatch logs and metrics. This is also the role used when you use the <a href="https://docs.aws.amazon.com/kendra/latest/dg/BatchPutDocument.html">BatchPutDocument</a> operation to index documents from an Amazon S3 bucket.<br />
  
  Required: Yes<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> */
    roleArn: Value<string>;
    /** <code>Edition</code>  <a name="cfn-kendra-index-edition"></a>
  Indicates whether the index is a Enterprise Edition index or a Developer Edition index. Valid values are <code>DEVELOPER_EDITION</code> and <code>ENTERPRISE_EDITION</code>.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>DEVELOPER_EDITION | ENTERPRISE_EDITION</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> */
    edition: Value<'DEVELOPER_EDITION' | 'ENTERPRISE_EDITION'>;
    /** <code>Name</code>  <a name="cfn-kendra-index-name"></a>
  The name of the index.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1000</code><br />
  
  Pattern: <code>[a-zA-Z0-9][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> */
    name: Value<string>;
    /** <code>UserTokenConfigurations</code>  <a name="cfn-kendra-index-usertokenconfigurations"></a>
  Defines the type of user token used for the index.<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> */
    userTokenConfigurations?: UserTokenConfigurationProps[];
}
