import { Value } from '../../../cloudformation/Value';
/**
  Specifies the schema to which you want Kinesis Data Firehose to configure your data before it writes it to Amazon S3. This parameter is required if <code>Enabled</code> is set to true.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-kinesisfirehose-deliverystream-schemaconfiguration.html">the AWS Docs</a>
*/
export interface SchemaConfigurationProps {
    /** <code>VersionId</code>  <a name="cfn-kinesisfirehose-deliverystream-schemaconfiguration-versionid"></a>
  Specifies the table version for the output data schema. If you don’t specify this version ID, or if you set it to <code>LATEST</code>, Kinesis Data Firehose uses the most recent version. This means that any updates to the table are automatically picked up.<br />
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1024</code><br />
  
  Pattern: <code>^\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> */
    versionId?: Value<string>;
    /** <code>TableName</code>  <a name="cfn-kinesisfirehose-deliverystream-schemaconfiguration-tablename"></a>
  Specifies the AWS Glue table that contains the column information that constitutes your data schema.<br />
  If the <code>SchemaConfiguration</code> request parameter is used as part of invoking the <code>CreateDeliveryStream</code> API, then the <code>TableName</code> property is required and its value must be specified.
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1024</code><br />
  
  Pattern: <code>^\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> */
    tableName?: Value<string>;
    /** <code>DatabaseName</code>  <a name="cfn-kinesisfirehose-deliverystream-schemaconfiguration-databasename"></a>
  Specifies the name of the AWS Glue database that contains the schema for the output data.<br />
  If the <code>SchemaConfiguration</code> request parameter is used as part of invoking the <code>CreateDeliveryStream</code> API, then the <code>DatabaseName</code> property is required and its value must be specified.
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1024</code><br />
  
  Pattern: <code>^\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> */
    databaseName?: Value<string>;
    /** <code>Region</code>  <a name="cfn-kinesisfirehose-deliverystream-schemaconfiguration-region"></a>
  If you don’t specify an AWS Region, the default is the current Region.<br />
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1024</code><br />
  
  Pattern: <code>^\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> */
    region?: Value<string>;
    /** <code>CatalogId</code>  <a name="cfn-kinesisfirehose-deliverystream-schemaconfiguration-catalogid"></a>
  The ID of the AWS Glue Data Catalog. If you don’t supply this, the AWS account ID is used by default.<br />
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1024</code><br />
  
  Pattern: <code>^\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> */
    catalogId?: Value<string>;
    /** <code>RoleARN</code>  <a name="cfn-kinesisfirehose-deliverystream-schemaconfiguration-rolearn"></a>
  The role that Kinesis Data Firehose can use to access AWS Glue. This role must be in the same account you use for Kinesis Data Firehose. Cross-account roles aren’t allowed.<br />
  If the <code>SchemaConfiguration</code> request parameter is used as part of invoking the <code>CreateDeliveryStream</code> API, then the <code>RoleARN</code> property is required and its value must be specified.
  
  Required: No<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1024</code><br />
  
  Pattern: <code>^\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> */
    roleARN?: Value<string>;
}
