import { StatefulRuleOptionsProps } from './StatefulRuleOptionsProps';
import { ReferenceSetsProps } from './ReferenceSetsProps';
import { RulesSourceProps } from './RulesSourceProps';
import { RuleVariablesProps } from './RuleVariablesProps';
/**
  The object that defines the rules in a rule group.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-networkfirewall-rulegroup-rulegroup.html">the AWS Docs</a>
*/
export interface RuleGroupProps {
    /** <code>StatefulRuleOptions</code>  <a name="cfn-networkfirewall-rulegroup-rulegroup-statefulruleoptions"></a>
  Additional options governing how Network Firewall handles stateful rules. The policies where you use your stateful rule group must have stateful rule options settings that are compatible with these 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> */
    statefulRuleOptions?: StatefulRuleOptionsProps;
    /** <code>ReferenceSets</code>  <a name="cfn-networkfirewall-rulegroup-rulegroup-referencesets"></a>
  The reference sets for the stateful rule group.<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> */
    referenceSets?: ReferenceSetsProps;
    /** <code>RulesSource</code>  <a name="cfn-networkfirewall-rulegroup-rulegroup-rulessource"></a>
  The stateful rules or stateless rules for the rule group.<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> */
    rulesSource: RulesSourceProps;
    /** <code>RuleVariables</code>  <a name="cfn-networkfirewall-rulegroup-rulegroup-rulevariables"></a>
  Settings that are available for use in the rules in the rule group. You can only use these for stateful rule groups.<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> */
    ruleVariables?: RuleVariablesProps;
}
