/**
 * Unless explicitly stated otherwise all files in this repository are licensed under the Apache-2.0 License.
 * This product includes software developed at Datadog (https://www.datadoghq.com/).
 * Copyright 2020-Present Datadog, Inc.
 */
import { ApplicationSecurityPolicyRuleOverride } from "./ApplicationSecurityPolicyRuleOverride";
import { ApplicationSecurityPolicyRulesetOverride } from "./ApplicationSecurityPolicyRulesetOverride";
import { ApplicationSecurityPolicyScope } from "./ApplicationSecurityPolicyScope";
import { AttributeTypeMap } from "../../datadog-api-client-common/util";
/**
 * A WAF policy.
 */
export declare class ApplicationSecurityPolicyAttributes {
    /**
     * Description of the WAF policy.
     */
    "description": string;
    /**
     * Make this policy the default policy. The default policy is applied to
     * every service not specifically assigned to another policy.
     */
    "isDefault"?: boolean;
    /**
     * The name of the WAF policy.
     */
    "name": string;
    /**
     * Presets enabled on this policy.
     */
    "protectionPresets"?: Array<string>;
    /**
     * Rule overrides applied by the policy.
     */
    "rules"?: Array<ApplicationSecurityPolicyRuleOverride>;
    /**
     * Deprecated: Ruleset overrides. Use `protectionPresets` instead.
     */
    "rulesets"?: Array<ApplicationSecurityPolicyRulesetOverride>;
    /**
     * The scope of the WAF policy.
     */
    "scope"?: Array<ApplicationSecurityPolicyScope>;
    /**
     * Version of the WAF ruleset maintained by Datadog used by this policy. 0 is the default value.
     */
    "version"?: number;
    /**
     * A container for additional, undeclared properties.
     * This is a holder for any undeclared properties as specified with
     * the 'additionalProperties' keyword in the OAS document.
     */
    "additionalProperties"?: {
        [key: string]: any;
    };
    /**
     * @ignore
     */
    "_unparsed"?: boolean;
    /**
     * @ignore
     */
    static readonly attributeTypeMap: AttributeTypeMap;
    /**
     * @ignore
     */
    static getAttributeTypeMap(): AttributeTypeMap;
    constructor();
}
