import { Value } from '../../cloudformation/Value';
import { RegistryProps } from './schema/RegistryProps';
import { Tag } from '../Tag';
import { SchemaVersionProps } from './schema/SchemaVersionProps';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type SchemaAttributes = {
    InitialSchemaVersionId: Attribute<string>;
    Arn: Attribute<string>;
};
export type Schema = AwsResource<'AWS::Glue::Schema', SchemaProperties, SchemaAttributes>;
/**
  The <code>AWS::Glue::Schema</code> is an AWS Glue resource type that manages schemas in the AWS Glue Schema Registry.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html">the AWS Docs</a>
*/
export declare function schema(schemaProps: SchemaProperties): Schema;
/**
  The <code>AWS::Glue::Schema</code> is an AWS Glue resource type that manages schemas in the AWS Glue Schema Registry.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-glue-schema.html">the AWS Docs</a>
*/
export interface SchemaProperties {
    /** <code>SchemaDefinition</code>  <a name="cfn-glue-schema-schemadefinition"></a>
  The schema definition using the <code>DataFormat</code> setting for <code>SchemaName</code>.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    schemaDefinition: Value<string>;
    /** <code>Description</code>  <a name="cfn-glue-schema-description"></a>
  A description of the schema if specified when created.<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>;
    /** <code>DataFormat</code>  <a name="cfn-glue-schema-dataformat"></a>
  The data format of the schema definition. Currently only <code>AVRO</code> is supported.<br />
  
  Required: Yes<br />
  
  Update requires: <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/using-cfn-updating-stacks-update-behaviors.html#update-replacement">Replacement</a> */
    dataFormat: Value<string>;
    /** <code>Registry</code>  <a name="cfn-glue-schema-registry"></a>
  The registry where a schema is stored.<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> */
    registry?: RegistryProps;
    /** <code>Compatibility</code>  <a name="cfn-glue-schema-compatibility"></a>
  The compatibility mode of the schema.<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> */
    compatibility: Value<string>;
    /** <code>Tags</code>  <a name="cfn-glue-schema-tags"></a>
  AWS tags that contain a key value pair and may be searched by console, command line, or API.<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>Name</code>  <a name="cfn-glue-schema-name"></a>
  Name of the schema to be created of max length of 255, and may only contain letters, numbers, hyphen, underscore, dollar sign, or hash mark. No whitespace.<br />
  
  Required: Yes<br />
  
  Minimum: <code>1</code><br />
  
  Maximum: <code>1024</code><br />
  
  Pattern: <code>[\u0020-\uD7FF\uE000-\uFFFD\uD800\uDC00-\uDBFF\uDFFF\t]*</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> */
    name: Value<string>;
    /** <code>CheckpointVersion</code>  <a name="cfn-glue-schema-checkpointversion"></a>
  Specify the <code>VersionNumber</code> or the <code>IsLatest</code> for setting the checkpoint for the schema. This is only required for updating a checkpoint.<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> */
    checkpointVersion?: SchemaVersionProps;
}
