import { Value } from '../../../cloudformation/Value';
import { HeaderMatchPatternProps } from './HeaderMatchPatternProps';
/**
  Inspect all headers in the web request. You can specify the parts of the headers to inspect and you can narrow the set of headers to inspect by including or excluding specific keys.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-rulegroup-headers.html">the AWS Docs</a>
*/
export interface HeadersProps {
    /** <code>MatchScope</code>  <a name="cfn-wafv2-rulegroup-headers-matchscope"></a>
  The parts of the headers to match with the rule inspection criteria. If you specify <code>All</code>, AWS WAF inspects both keys and values.<br />
  
  Required: Yes<br />
  
  Allowed values: <code>ALL | KEY | VALUE</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> */
    matchScope: Value<'ALL' | 'KEY' | 'VALUE'>;
    /** <code>MatchPattern</code>  <a name="cfn-wafv2-rulegroup-headers-matchpattern"></a>
  The filter to use to identify the subset of headers to inspect in a web request.<br />
  You must specify exactly one setting: either <code>All</code>, <code>IncludedHeaders</code>, or <code>ExcludedHeaders</code>.<br />
  Example JSON: <code>&quot;MatchPattern&quot;: { &quot;ExcludedHeaders&quot;: [ &quot;KeyToExclude1&quot;, &quot;KeyToExclude2&quot; ] }</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-no-interrupt">No interruption</a> */
    matchPattern: HeaderMatchPatternProps;
    /** <p> */
    oversizeHandling: Value<string>;
}
