import { Value } from '../../cloudformation/Value';
import { WorkGroupConfigurationProps } from './workgroup/WorkGroupConfigurationProps';
import { Tag } from '../Tag';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type WorkGroupAttributes = {
    CreationTime: Attribute<string>;
    WorkGroupConfiguration_EngineVersion_EffectiveEngineVersion: Attribute<string>;
};
export type WorkGroup = AwsResource<'AWS::Athena::WorkGroup', WorkGroupProperties, WorkGroupAttributes>;
/**
  The AWS::Athena::WorkGroup resource specifies an Amazon Athena workgroup, which contains a name, description, creation time, state, and other configuration, listed under <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html#cfn-athena-workgroup-workgroupconfiguration">WorkGroupConfiguration</a>. Each workgroup enables you to isolate queries for you or your group from other queries in the same account. For more information, see <a href="https://docs.aws.amazon.com/athena/latest/APIReference/API_CreateWorkGroup.html">CreateWorkGroup</a> in the <em>Amazon Athena API Reference</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html">the AWS Docs</a>
*/
export declare function workGroup(workGroupProps: WorkGroupProperties): WorkGroup;
/**
  The AWS::Athena::WorkGroup resource specifies an Amazon Athena workgroup, which contains a name, description, creation time, state, and other configuration, listed under <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html#cfn-athena-workgroup-workgroupconfiguration">WorkGroupConfiguration</a>. Each workgroup enables you to isolate queries for you or your group from other queries in the same account. For more information, see <a href="https://docs.aws.amazon.com/athena/latest/APIReference/API_CreateWorkGroup.html">CreateWorkGroup</a> in the <em>Amazon Athena API Reference</em>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-athena-workgroup.html">the AWS Docs</a>
*/
export interface WorkGroupProperties {
    /** <code>RecursiveDeleteOption</code>  <a name="cfn-athena-workgroup-recursivedeleteoption"></a>
  The option to delete a workgroup and its contents even if the workgroup contains any named queries. The default is false.<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> */
    recursiveDeleteOption?: Value<boolean>;
    /** <code>WorkGroupConfiguration</code>  <a name="cfn-athena-workgroup-workgroupconfiguration"></a>
  The configuration of the workgroup, which includes the location in Amazon S3 where query results are stored, the encryption option, if any, used for query results, whether Amazon CloudWatch Metrics are enabled for the workgroup, and the limit for the amount of bytes scanned (cutoff) per query, if it is specified. The <a href="https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-athena-workgroup-workgroupconfiguration.html#cfn-athena-workgroup-workgroupconfiguration-enforceworkgroupconfiguration">EnforceWorkGroupConfiguration</a> option determines whether workgroup settings override client-side query settings.<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> */
    workGroupConfiguration?: WorkGroupConfigurationProps;
    /** <code>Description</code>  <a name="cfn-athena-workgroup-description"></a>
  The workgroup description.<br />
  
  Required: No<br />
  
  Minimum: <code>0</code><br />
  
  Maximum: <code>1024</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> */
    description?: Value<string>;
    /** <code>State</code>  <a name="cfn-athena-workgroup-state"></a>
  The state of the workgroup: ENABLED or DISABLED.<br />
  
  Required: No<br />
  
  Allowed values: <code>DISABLED | ENABLED</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> */
    state?: Value<'DISABLED' | 'ENABLED'>;
    /** <code>Tags</code>  <a name="cfn-athena-workgroup-tags"></a>
  The tags (key-value pairs) to associate with this resource.<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-athena-workgroup-name"></a>
  The workgroup name.<br />
  
  Required: Yes<br />
  
  Pattern: <code>[a-zA-Z0-9._-]{1,128}</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>;
}
