import { _WafAction, _UnmarshalledWafAction } from "./_WafAction"; import { _ActivatedRule, _UnmarshalledActivatedRule } from "./_ActivatedRule"; /** *

Contains the Rules that identify the requests that you want to allow, block, or count. In a WebACL, you also specify a default action (ALLOW or BLOCK), and the action for each Rule that you add to a WebACL, for example, block requests from specified IP addresses or block requests from specified referrers. You also associate the WebACL with a CloudFront distribution to identify the requests that you want AWS WAF to filter. If you add more than one Rule to a WebACL, a request needs to match only one of the specifications to be allowed, blocked, or counted. For more information, see UpdateWebACL.

*/ export interface _WebACL { /** *

A unique identifier for a WebACL. You use WebACLId to get information about a WebACL (see GetWebACL), update a WebACL (see UpdateWebACL), and delete a WebACL from AWS WAF (see DeleteWebACL).

WebACLId is returned by CreateWebACL and by ListWebACLs.

*/ WebACLId: string; /** *

A friendly name or description of the WebACL. You can't change the name of a WebACL after you create it.

*/ Name?: string; /** *

A friendly name or description for the metrics for this WebACL. The name can contain only alphanumeric characters (A-Z, a-z, 0-9), with maximum length 128 and minimum length one. It can't contain whitespace or metric names reserved for AWS WAF, including "All" and "Default_Action." You can't change MetricName after you create the WebACL.

*/ MetricName?: string; /** *

The action to perform if none of the Rules contained in the WebACL match. The action is specified by the WafAction object.

*/ DefaultAction: _WafAction; /** *

An array that contains the action for each Rule in a WebACL, the priority of the Rule, and the ID of the Rule.

*/ Rules: Array<_ActivatedRule> | Iterable<_ActivatedRule>; /** *

Tha Amazon Resource Name (ARN) of the web ACL.

*/ WebACLArn?: string; } export interface _UnmarshalledWebACL extends _WebACL { /** *

The action to perform if none of the Rules contained in the WebACL match. The action is specified by the WafAction object.

*/ DefaultAction: _UnmarshalledWafAction; /** *

An array that contains the action for each Rule in a WebACL, the priority of the Rule, and the ID of the Rule.

*/ Rules: Array<_UnmarshalledActivatedRule>; }