import { FirewallRuleProps } from './firewallrulegroup/FirewallRuleProps';
import { Tag } from '../Tag';
import { Value } from '../../cloudformation/Value';
import { Attribute } from '../../cloudformation/Attribute';
import { AwsResource } from '../../cloudformation/resources/AwsResource';
export type FirewallRuleGroupAttributes = {
    RuleCount: Attribute<number>;
    Status: Attribute<string>;
    OwnerId: Attribute<string>;
    CreationTime: Attribute<string>;
    ShareStatus: Attribute<string>;
    ModificationTime: Attribute<string>;
    Id: Attribute<string>;
    Arn: Attribute<string>;
    CreatorRequestId: Attribute<string>;
    StatusMessage: Attribute<string>;
};
export type FirewallRuleGroup = AwsResource<'AWS::Route53Resolver::FirewallRuleGroup', FirewallRuleGroupProperties, FirewallRuleGroupAttributes>;
/**
  High-level information for a firewall rule group. A firewall rule group is a collection of rules that DNS Firewall uses to filter DNS network traffic for a VPC. To retrieve the rules for the rule group, call <a href="https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_ListFirewallRules.html">ListFirewallRules</a>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewallrulegroup.html">the AWS Docs</a>
*/
export declare function firewallRuleGroup(firewallRuleGroupProps?: FirewallRuleGroupProperties): FirewallRuleGroup;
/**
  High-level information for a firewall rule group. A firewall rule group is a collection of rules that DNS Firewall uses to filter DNS network traffic for a VPC. To retrieve the rules for the rule group, call <a href="https://docs.aws.amazon.com/Route53/latest/APIReference/API_route53resolver_ListFirewallRules.html">ListFirewallRules</a>.
  For full documentation go to <a href="http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-route53resolver-firewallrulegroup.html">the AWS Docs</a>
*/
export interface FirewallRuleGroupProperties {
    /** <code>FirewallRules</code>  <a name="cfn-route53resolver-firewallrulegroup-firewallrules"></a>
  A list of the rules that you have defined.<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> */
    firewallRules?: FirewallRuleProps[];
    /** <code>Tags</code>  <a name="cfn-route53resolver-firewallrulegroup-tags"></a>
  A list of the tag keys and values that you want to associate with the rule group.<br />
  
  Required: No<br />
  
  Maximum: <code>200</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> */
    tags?: Tag[];
    /** <code>Name</code>  <a name="cfn-route53resolver-firewallrulegroup-name"></a>
  The name of the rule group.<br />
  
  Required: No<br />
  
  Maximum: <code>64</code><br />
  
  Pattern: <code>(?!^[0-9]+$)([a-zA-Z0-9\-_' ']+)</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>;
}
