UNPKG

@pulumi/azure-compliance-policies

Version:

This repository contains a growing set of Compliance Policies to validate your infrastructure using Pulumi's Crossguard Policy-as-Code framework.

892 lines 52.2 kB
"use strict";
// Copyright 2016-2024, Pulumi Corporation.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// ------------------------------- WARNING -------------------------------------
// This file was programmatically generated. Do not edit unless you know what
// you're doing.
// ------------------------------- WARNING -------------------------------------
Object.defineProperty(exports, "__esModule", { value: true });
exports.ThroughputPoolAccount = exports.ThroughputPool = exports.TableResourceTable = exports.SqlResourceSqlUserDefinedFunction = exports.SqlResourceSqlTrigger = exports.SqlResourceSqlStoredProcedure = exports.SqlResourceSqlRoleDefinition = exports.SqlResourceSqlRoleAssignment = exports.SqlResourceSqlDatabase = exports.SqlResourceSqlContainer = exports.Service = exports.PrivateEndpointConnection = exports.NotebookWorkspace = exports.MongoDBResourceMongoUserDefinition = exports.MongoDBResourceMongoRoleDefinition = exports.MongoDBResourceMongoDBDatabase = exports.MongoDBResourceMongoDBCollection = exports.MongoClusterFirewallRule = exports.MongoCluster = exports.GremlinResourceGremlinGraph = exports.GremlinResourceGremlinDatabase = exports.GraphResourceGraph = exports.DatabaseAccount = exports.CassandraResourceCassandraView = exports.CassandraResourceCassandraTable = exports.CassandraResourceCassandraKeyspace = exports.CassandraDataCenter = exports.CassandraCluster = void 0;
const policy_1 = require("@pulumi/policy");
const compliance_policy_manager_1 = require("@pulumi/compliance-policy-manager");
const v20240215preview_1 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_2 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_3 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_4 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_5 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_6 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_7 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_8 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_9 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_10 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_11 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_12 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_13 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_14 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_15 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_16 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_17 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_18 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_19 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_20 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_21 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_22 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_23 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_24 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_25 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_26 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_27 = require("@pulumi/azure-native/documentdb/v20240215preview");
const v20240215preview_28 = require("@pulumi/azure-native/documentdb/v20240215preview");
var CassandraCluster;
(function (CassandraCluster) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.CassandraCluster).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    CassandraCluster.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-cassandracluster-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.CassandraCluster).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_1.CassandraCluster, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure CassandraCluster shouldn't use an unstable API (documentdb.v20240215preview.CassandraCluster). A compatible replacement can be found at 'documentdb.CassandraCluster'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(CassandraCluster || (CassandraCluster = {}));
exports.CassandraCluster = CassandraCluster;
var CassandraDataCenter;
(function (CassandraDataCenter) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.CassandraDataCenter).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    CassandraDataCenter.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-cassandradatacenter-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.CassandraDataCenter).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_2.CassandraDataCenter, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure CassandraDataCenter shouldn't use an unstable API (documentdb.v20240215preview.CassandraDataCenter). A compatible replacement can be found at 'documentdb.CassandraDataCenter'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(CassandraDataCenter || (CassandraDataCenter = {}));
exports.CassandraDataCenter = CassandraDataCenter;
var CassandraResourceCassandraKeyspace;
(function (CassandraResourceCassandraKeyspace) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.CassandraResourceCassandraKeyspace).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    CassandraResourceCassandraKeyspace.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-cassandraresourcecassandrakeyspace-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.CassandraResourceCassandraKeyspace).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_3.CassandraResourceCassandraKeyspace, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure CassandraResourceCassandraKeyspace shouldn't use an unstable API (documentdb.v20240215preview.CassandraResourceCassandraKeyspace). A compatible replacement can be found at 'documentdb.CassandraResourceCassandraKeyspace'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(CassandraResourceCassandraKeyspace || (CassandraResourceCassandraKeyspace = {}));
exports.CassandraResourceCassandraKeyspace = CassandraResourceCassandraKeyspace;
var CassandraResourceCassandraTable;
(function (CassandraResourceCassandraTable) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.CassandraResourceCassandraTable).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    CassandraResourceCassandraTable.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-cassandraresourcecassandratable-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.CassandraResourceCassandraTable).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_4.CassandraResourceCassandraTable, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure CassandraResourceCassandraTable shouldn't use an unstable API (documentdb.v20240215preview.CassandraResourceCassandraTable). A compatible replacement can be found at 'documentdb.CassandraResourceCassandraTable'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(CassandraResourceCassandraTable || (CassandraResourceCassandraTable = {}));
exports.CassandraResourceCassandraTable = CassandraResourceCassandraTable;
var CassandraResourceCassandraView;
(function (CassandraResourceCassandraView) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.CassandraResourceCassandraView).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    CassandraResourceCassandraView.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-cassandraresourcecassandraview-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.CassandraResourceCassandraView).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_5.CassandraResourceCassandraView, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure CassandraResourceCassandraView shouldn't use an unstable API (documentdb.v20240215preview.CassandraResourceCassandraView). A compatible replacement can be found at 'documentdb.CassandraResourceCassandraView'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(CassandraResourceCassandraView || (CassandraResourceCassandraView = {}));
exports.CassandraResourceCassandraView = CassandraResourceCassandraView;
var DatabaseAccount;
(function (DatabaseAccount) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.DatabaseAccount).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    DatabaseAccount.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-databaseaccount-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.DatabaseAccount).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_6.DatabaseAccount, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure DatabaseAccount shouldn't use an unstable API (documentdb.v20240215preview.DatabaseAccount). A compatible replacement can be found at 'documentdb.DatabaseAccount'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(DatabaseAccount || (DatabaseAccount = {}));
exports.DatabaseAccount = DatabaseAccount;
var GraphResourceGraph;
(function (GraphResourceGraph) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.GraphResourceGraph).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    GraphResourceGraph.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-graphresourcegraph-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.GraphResourceGraph).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_7.GraphResourceGraph, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure GraphResourceGraph shouldn't use an unstable API (documentdb.v20240215preview.GraphResourceGraph). A compatible replacement can be found at 'documentdb.GraphResourceGraph'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(GraphResourceGraph || (GraphResourceGraph = {}));
exports.GraphResourceGraph = GraphResourceGraph;
var GremlinResourceGremlinDatabase;
(function (GremlinResourceGremlinDatabase) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.GremlinResourceGremlinDatabase).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    GremlinResourceGremlinDatabase.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-gremlinresourcegremlindatabase-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.GremlinResourceGremlinDatabase).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_8.GremlinResourceGremlinDatabase, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure GremlinResourceGremlinDatabase shouldn't use an unstable API (documentdb.v20240215preview.GremlinResourceGremlinDatabase). A compatible replacement can be found at 'documentdb.GremlinResourceGremlinDatabase'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(GremlinResourceGremlinDatabase || (GremlinResourceGremlinDatabase = {}));
exports.GremlinResourceGremlinDatabase = GremlinResourceGremlinDatabase;
var GremlinResourceGremlinGraph;
(function (GremlinResourceGremlinGraph) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.GremlinResourceGremlinGraph).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    GremlinResourceGremlinGraph.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-gremlinresourcegremlingraph-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.GremlinResourceGremlinGraph).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_9.GremlinResourceGremlinGraph, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure GremlinResourceGremlinGraph shouldn't use an unstable API (documentdb.v20240215preview.GremlinResourceGremlinGraph). A compatible replacement can be found at 'documentdb.GremlinResourceGremlinGraph'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(GremlinResourceGremlinGraph || (GremlinResourceGremlinGraph = {}));
exports.GremlinResourceGremlinGraph = GremlinResourceGremlinGraph;
var MongoCluster;
(function (MongoCluster) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoCluster).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    MongoCluster.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-mongocluster-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoCluster).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_10.MongoCluster, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure MongoCluster shouldn't use an unstable API (documentdb.v20240215preview.MongoCluster). A compatible replacement can be found at 'documentdb.MongoCluster'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(MongoCluster || (MongoCluster = {}));
exports.MongoCluster = MongoCluster;
var MongoClusterFirewallRule;
(function (MongoClusterFirewallRule) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoClusterFirewallRule).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    MongoClusterFirewallRule.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-mongoclusterfirewallrule-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoClusterFirewallRule).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_11.MongoClusterFirewallRule, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure MongoClusterFirewallRule shouldn't use an unstable API (documentdb.v20240215preview.MongoClusterFirewallRule). A compatible replacement can be found at 'documentdb.MongoClusterFirewallRule'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(MongoClusterFirewallRule || (MongoClusterFirewallRule = {}));
exports.MongoClusterFirewallRule = MongoClusterFirewallRule;
var MongoDBResourceMongoDBCollection;
(function (MongoDBResourceMongoDBCollection) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoDBResourceMongoDBCollection).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    MongoDBResourceMongoDBCollection.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-mongodbresourcemongodbcollection-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoDBResourceMongoDBCollection).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_12.MongoDBResourceMongoDBCollection, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure MongoDBResourceMongoDBCollection shouldn't use an unstable API (documentdb.v20240215preview.MongoDBResourceMongoDBCollection). A compatible replacement can be found at 'documentdb.MongoDBResourceMongoDBCollection'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(MongoDBResourceMongoDBCollection || (MongoDBResourceMongoDBCollection = {}));
exports.MongoDBResourceMongoDBCollection = MongoDBResourceMongoDBCollection;
var MongoDBResourceMongoDBDatabase;
(function (MongoDBResourceMongoDBDatabase) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoDBResourceMongoDBDatabase).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    MongoDBResourceMongoDBDatabase.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-mongodbresourcemongodbdatabase-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoDBResourceMongoDBDatabase).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_13.MongoDBResourceMongoDBDatabase, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure MongoDBResourceMongoDBDatabase shouldn't use an unstable API (documentdb.v20240215preview.MongoDBResourceMongoDBDatabase). A compatible replacement can be found at 'documentdb.MongoDBResourceMongoDBDatabase'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(MongoDBResourceMongoDBDatabase || (MongoDBResourceMongoDBDatabase = {}));
exports.MongoDBResourceMongoDBDatabase = MongoDBResourceMongoDBDatabase;
var MongoDBResourceMongoRoleDefinition;
(function (MongoDBResourceMongoRoleDefinition) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoDBResourceMongoRoleDefinition).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    MongoDBResourceMongoRoleDefinition.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-mongodbresourcemongoroledefinition-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoDBResourceMongoRoleDefinition).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_14.MongoDBResourceMongoRoleDefinition, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure MongoDBResourceMongoRoleDefinition shouldn't use an unstable API (documentdb.v20240215preview.MongoDBResourceMongoRoleDefinition). A compatible replacement can be found at 'documentdb.MongoDBResourceMongoRoleDefinition'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(MongoDBResourceMongoRoleDefinition || (MongoDBResourceMongoRoleDefinition = {}));
exports.MongoDBResourceMongoRoleDefinition = MongoDBResourceMongoRoleDefinition;
var MongoDBResourceMongoUserDefinition;
(function (MongoDBResourceMongoUserDefinition) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoDBResourceMongoUserDefinition).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    MongoDBResourceMongoUserDefinition.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-mongodbresourcemongouserdefinition-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.MongoDBResourceMongoUserDefinition).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_15.MongoDBResourceMongoUserDefinition, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure MongoDBResourceMongoUserDefinition shouldn't use an unstable API (documentdb.v20240215preview.MongoDBResourceMongoUserDefinition). A compatible replacement can be found at 'documentdb.MongoDBResourceMongoUserDefinition'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(MongoDBResourceMongoUserDefinition || (MongoDBResourceMongoUserDefinition = {}));
exports.MongoDBResourceMongoUserDefinition = MongoDBResourceMongoUserDefinition;
var NotebookWorkspace;
(function (NotebookWorkspace) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.NotebookWorkspace).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    NotebookWorkspace.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-notebookworkspace-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.NotebookWorkspace).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_16.NotebookWorkspace, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure NotebookWorkspace shouldn't use an unstable API (documentdb.v20240215preview.NotebookWorkspace). A compatible replacement can be found at 'documentdb.NotebookWorkspace'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(NotebookWorkspace || (NotebookWorkspace = {}));
exports.NotebookWorkspace = NotebookWorkspace;
var PrivateEndpointConnection;
(function (PrivateEndpointConnection) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.PrivateEndpointConnection).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    PrivateEndpointConnection.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-privateendpointconnection-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.PrivateEndpointConnection).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_17.PrivateEndpointConnection, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure PrivateEndpointConnection shouldn't use an unstable API (documentdb.v20240215preview.PrivateEndpointConnection). A compatible replacement can be found at 'documentdb.PrivateEndpointConnection'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(PrivateEndpointConnection || (PrivateEndpointConnection = {}));
exports.PrivateEndpointConnection = PrivateEndpointConnection;
var Service;
(function (Service) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.Service).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    Service.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-service-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.Service).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_18.Service, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure Service shouldn't use an unstable API (documentdb.v20240215preview.Service). A compatible replacement can be found at 'documentdb.Service'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(Service || (Service = {}));
exports.Service = Service;
var SqlResourceSqlContainer;
(function (SqlResourceSqlContainer) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlContainer).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    SqlResourceSqlContainer.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-sqlresourcesqlcontainer-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlContainer).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_19.SqlResourceSqlContainer, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure SqlResourceSqlContainer shouldn't use an unstable API (documentdb.v20240215preview.SqlResourceSqlContainer). A compatible replacement can be found at 'documentdb.SqlResourceSqlContainer'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(SqlResourceSqlContainer || (SqlResourceSqlContainer = {}));
exports.SqlResourceSqlContainer = SqlResourceSqlContainer;
var SqlResourceSqlDatabase;
(function (SqlResourceSqlDatabase) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlDatabase).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    SqlResourceSqlDatabase.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-sqlresourcesqldatabase-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlDatabase).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_20.SqlResourceSqlDatabase, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure SqlResourceSqlDatabase shouldn't use an unstable API (documentdb.v20240215preview.SqlResourceSqlDatabase). A compatible replacement can be found at 'documentdb.SqlResourceSqlDatabase'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(SqlResourceSqlDatabase || (SqlResourceSqlDatabase = {}));
exports.SqlResourceSqlDatabase = SqlResourceSqlDatabase;
var SqlResourceSqlRoleAssignment;
(function (SqlResourceSqlRoleAssignment) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlRoleAssignment).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    SqlResourceSqlRoleAssignment.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-sqlresourcesqlroleassignment-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlRoleAssignment).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_21.SqlResourceSqlRoleAssignment, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure SqlResourceSqlRoleAssignment shouldn't use an unstable API (documentdb.v20240215preview.SqlResourceSqlRoleAssignment). A compatible replacement can be found at 'documentdb.SqlResourceSqlRoleAssignment'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(SqlResourceSqlRoleAssignment || (SqlResourceSqlRoleAssignment = {}));
exports.SqlResourceSqlRoleAssignment = SqlResourceSqlRoleAssignment;
var SqlResourceSqlRoleDefinition;
(function (SqlResourceSqlRoleDefinition) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlRoleDefinition).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    SqlResourceSqlRoleDefinition.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-sqlresourcesqlroledefinition-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlRoleDefinition).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_22.SqlResourceSqlRoleDefinition, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure SqlResourceSqlRoleDefinition shouldn't use an unstable API (documentdb.v20240215preview.SqlResourceSqlRoleDefinition). A compatible replacement can be found at 'documentdb.SqlResourceSqlRoleDefinition'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(SqlResourceSqlRoleDefinition || (SqlResourceSqlRoleDefinition = {}));
exports.SqlResourceSqlRoleDefinition = SqlResourceSqlRoleDefinition;
var SqlResourceSqlStoredProcedure;
(function (SqlResourceSqlStoredProcedure) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlStoredProcedure).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    SqlResourceSqlStoredProcedure.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-sqlresourcesqlstoredprocedure-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlStoredProcedure).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_23.SqlResourceSqlStoredProcedure, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure SqlResourceSqlStoredProcedure shouldn't use an unstable API (documentdb.v20240215preview.SqlResourceSqlStoredProcedure). A compatible replacement can be found at 'documentdb.SqlResourceSqlStoredProcedure'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(SqlResourceSqlStoredProcedure || (SqlResourceSqlStoredProcedure = {}));
exports.SqlResourceSqlStoredProcedure = SqlResourceSqlStoredProcedure;
var SqlResourceSqlTrigger;
(function (SqlResourceSqlTrigger) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlTrigger).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    SqlResourceSqlTrigger.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-sqlresourcesqltrigger-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlTrigger).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_24.SqlResourceSqlTrigger, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure SqlResourceSqlTrigger shouldn't use an unstable API (documentdb.v20240215preview.SqlResourceSqlTrigger). A compatible replacement can be found at 'documentdb.SqlResourceSqlTrigger'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(SqlResourceSqlTrigger || (SqlResourceSqlTrigger = {}));
exports.SqlResourceSqlTrigger = SqlResourceSqlTrigger;
var SqlResourceSqlUserDefinedFunction;
(function (SqlResourceSqlUserDefinedFunction) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlUserDefinedFunction).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    SqlResourceSqlUserDefinedFunction.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-sqlresourcesqluserdefinedfunction-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.SqlResourceSqlUserDefinedFunction).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_25.SqlResourceSqlUserDefinedFunction, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure SqlResourceSqlUserDefinedFunction shouldn't use an unstable API (documentdb.v20240215preview.SqlResourceSqlUserDefinedFunction). A compatible replacement can be found at 'documentdb.SqlResourceSqlUserDefinedFunction'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(SqlResourceSqlUserDefinedFunction || (SqlResourceSqlUserDefinedFunction = {}));
exports.SqlResourceSqlUserDefinedFunction = SqlResourceSqlUserDefinedFunction;
var TableResourceTable;
(function (TableResourceTable) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.TableResourceTable).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    TableResourceTable.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-tableresourcetable-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.TableResourceTable).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_26.TableResourceTable, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure TableResourceTable shouldn't use an unstable API (documentdb.v20240215preview.TableResourceTable). A compatible replacement can be found at 'documentdb.TableResourceTable'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(TableResourceTable || (TableResourceTable = {}));
exports.TableResourceTable = TableResourceTable;
var ThroughputPool;
(function (ThroughputPool) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.ThroughputPool).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    ThroughputPool.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-throughputpool-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.ThroughputPool).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_27.ThroughputPool, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure ThroughputPool shouldn't use an unstable API (documentdb.v20240215preview.ThroughputPool). A compatible replacement can be found at 'documentdb.ThroughputPool'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(ThroughputPool || (ThroughputPool = {}));
exports.ThroughputPool = ThroughputPool;
var ThroughputPoolAccount;
(function (ThroughputPoolAccount) {
    /**
     * Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.ThroughputPoolAccount).
     *
     * @severity medium
     * @frameworks none
     * @topics api, preview, unstable
     * @link https://learn.microsoft.com/en-us/rest/api/azure/
     */
    ThroughputPoolAccount.disallowPreviewResource = compliance_policy_manager_1.policyManager.registerPolicy({
        resourceValidationPolicy: {
            name: "azurenative-documentdb-v20240215preview-throughputpoolaccount-disallow-preview-resource",
            description: "Disallow the use of non-stable (Preview) Azure resouces (documentdb.v20240215preview.ThroughputPoolAccount).",
            configSchema: compliance_policy_manager_1.policyManager.policyConfigSchema,
            enforcementLevel: "advisory",
            validateResource: (0, policy_1.validateResourceOfType)(v20240215preview_28.ThroughputPoolAccount, (_, args, reportViolation) => {
                if (!compliance_policy_manager_1.policyManager.shouldEvalPolicy(args)) {
                    return;
                }
                reportViolation("Azure ThroughputPoolAccount shouldn't use an unstable API (documentdb.v20240215preview.ThroughputPoolAccount). A compatible replacement can be found at 'documentdb.ThroughputPoolAccount'.");
            }),
        },
        vendors: ["azure"],
        services: ["documentdb"],
        severity: "medium",
        topics: ["api", "unstable", "preview"],
    });
})(ThroughputPoolAccount || (ThroughputPoolAccount = {}));
exports.ThroughputPoolAccount = ThroughputPoolAccount;