"use strict";
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    var desc = Object.getOwnPropertyDescriptor(m, k);
    if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
      desc = { enumerable: true, get: function() { return m[k]; } };
    }
    Object.defineProperty(o, k2, desc);
}) : (function(o, m, k, k2) {
    if (k2 === undefined) k2 = k;
    o[k2] = m[k];
}));
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
    Object.defineProperty(o, "default", { enumerable: true, value: v });
}) : function(o, v) {
    o["default"] = v;
});
var __importStar = (this && this.__importStar) || (function () {
    var ownKeys = function(o) {
        ownKeys = Object.getOwnPropertyNames || function (o) {
            var ar = [];
            for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
            return ar;
        };
        return ownKeys(o);
    };
    return function (mod) {
        if (mod && mod.__esModule) return mod;
        var result = {};
        if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
        __setModuleDefault(result, mod);
        return result;
    };
})();
Object.defineProperty(exports, "__esModule", { value: true });
exports.CreateOpaStrategyNewRequest = exports.CreateOpaStrategyNewRequestScopes = exports.CreateOpaStrategyNewRequestAlarmDetail = exports.CreateOpaStrategyNewRequestAlarmDetailVul = exports.CreateOpaStrategyNewRequestAlarmDetailVulRiskClass = exports.CreateOpaStrategyNewRequestAlarmDetailVulItem = exports.CreateOpaStrategyNewRequestAlarmDetailSensitiveFile = exports.CreateOpaStrategyNewRequestAlarmDetailSensitiveFileItem = exports.CreateOpaStrategyNewRequestAlarmDetailMaliciousFile = exports.CreateOpaStrategyNewRequestAlarmDetailMaliciousFileItem = exports.CreateOpaStrategyNewRequestAlarmDetailBuildRisk = exports.CreateOpaStrategyNewRequestAlarmDetailBuildRiskItem = exports.CreateOpaStrategyNewRequestAlarmDetailBaseline = exports.CreateOpaStrategyNewRequestAlarmDetailBaselineItem = void 0;
// This file is auto-generated, don't edit it
const $dara = __importStar(require("@darabonba/typescript"));
class CreateOpaStrategyNewRequestAlarmDetailBaselineItem extends $dara.Model {
    static names() {
        return {
            id: 'Id',
            name: 'Name',
        };
    }
    static types() {
        return {
            id: 'string',
            name: 'string',
        };
    }
    validate() {
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailBaselineItem = CreateOpaStrategyNewRequestAlarmDetailBaselineItem;
class CreateOpaStrategyNewRequestAlarmDetailBaseline extends $dara.Model {
    static names() {
        return {
            item: 'Item',
            riskLevel: 'RiskLevel',
        };
    }
    static types() {
        return {
            item: { 'type': 'array', 'itemType': CreateOpaStrategyNewRequestAlarmDetailBaselineItem },
            riskLevel: { 'type': 'array', 'itemType': 'string' },
        };
    }
    validate() {
        if (Array.isArray(this.item)) {
            $dara.Model.validateArray(this.item);
        }
        if (Array.isArray(this.riskLevel)) {
            $dara.Model.validateArray(this.riskLevel);
        }
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailBaseline = CreateOpaStrategyNewRequestAlarmDetailBaseline;
class CreateOpaStrategyNewRequestAlarmDetailBuildRiskItem extends $dara.Model {
    static names() {
        return {
            id: 'Id',
            name: 'Name',
        };
    }
    static types() {
        return {
            id: 'string',
            name: 'string',
        };
    }
    validate() {
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailBuildRiskItem = CreateOpaStrategyNewRequestAlarmDetailBuildRiskItem;
class CreateOpaStrategyNewRequestAlarmDetailBuildRisk extends $dara.Model {
    static names() {
        return {
            item: 'Item',
            riskLevel: 'RiskLevel',
        };
    }
    static types() {
        return {
            item: { 'type': 'array', 'itemType': CreateOpaStrategyNewRequestAlarmDetailBuildRiskItem },
            riskLevel: { 'type': 'array', 'itemType': 'string' },
        };
    }
    validate() {
        if (Array.isArray(this.item)) {
            $dara.Model.validateArray(this.item);
        }
        if (Array.isArray(this.riskLevel)) {
            $dara.Model.validateArray(this.riskLevel);
        }
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailBuildRisk = CreateOpaStrategyNewRequestAlarmDetailBuildRisk;
class CreateOpaStrategyNewRequestAlarmDetailMaliciousFileItem extends $dara.Model {
    static names() {
        return {
            id: 'Id',
            name: 'Name',
        };
    }
    static types() {
        return {
            id: 'string',
            name: 'string',
        };
    }
    validate() {
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailMaliciousFileItem = CreateOpaStrategyNewRequestAlarmDetailMaliciousFileItem;
class CreateOpaStrategyNewRequestAlarmDetailMaliciousFile extends $dara.Model {
    static names() {
        return {
            item: 'Item',
            riskLevel: 'RiskLevel',
        };
    }
    static types() {
        return {
            item: { 'type': 'array', 'itemType': CreateOpaStrategyNewRequestAlarmDetailMaliciousFileItem },
            riskLevel: { 'type': 'array', 'itemType': 'string' },
        };
    }
    validate() {
        if (Array.isArray(this.item)) {
            $dara.Model.validateArray(this.item);
        }
        if (Array.isArray(this.riskLevel)) {
            $dara.Model.validateArray(this.riskLevel);
        }
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailMaliciousFile = CreateOpaStrategyNewRequestAlarmDetailMaliciousFile;
class CreateOpaStrategyNewRequestAlarmDetailSensitiveFileItem extends $dara.Model {
    static names() {
        return {
            id: 'Id',
            name: 'Name',
        };
    }
    static types() {
        return {
            id: 'string',
            name: 'string',
        };
    }
    validate() {
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailSensitiveFileItem = CreateOpaStrategyNewRequestAlarmDetailSensitiveFileItem;
class CreateOpaStrategyNewRequestAlarmDetailSensitiveFile extends $dara.Model {
    static names() {
        return {
            item: 'Item',
            riskLevel: 'RiskLevel',
        };
    }
    static types() {
        return {
            item: { 'type': 'array', 'itemType': CreateOpaStrategyNewRequestAlarmDetailSensitiveFileItem },
            riskLevel: { 'type': 'array', 'itemType': 'string' },
        };
    }
    validate() {
        if (Array.isArray(this.item)) {
            $dara.Model.validateArray(this.item);
        }
        if (Array.isArray(this.riskLevel)) {
            $dara.Model.validateArray(this.riskLevel);
        }
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailSensitiveFile = CreateOpaStrategyNewRequestAlarmDetailSensitiveFile;
class CreateOpaStrategyNewRequestAlarmDetailVulItem extends $dara.Model {
    static names() {
        return {
            id: 'Id',
            name: 'Name',
        };
    }
    static types() {
        return {
            id: 'string',
            name: 'string',
        };
    }
    validate() {
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailVulItem = CreateOpaStrategyNewRequestAlarmDetailVulItem;
class CreateOpaStrategyNewRequestAlarmDetailVulRiskClass extends $dara.Model {
    static names() {
        return {
            id: 'Id',
            name: 'Name',
        };
    }
    static types() {
        return {
            id: 'string',
            name: 'string',
        };
    }
    validate() {
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailVulRiskClass = CreateOpaStrategyNewRequestAlarmDetailVulRiskClass;
class CreateOpaStrategyNewRequestAlarmDetailVul extends $dara.Model {
    static names() {
        return {
            item: 'Item',
            riskClass: 'RiskClass',
            riskLevel: 'RiskLevel',
        };
    }
    static types() {
        return {
            item: { 'type': 'array', 'itemType': CreateOpaStrategyNewRequestAlarmDetailVulItem },
            riskClass: { 'type': 'array', 'itemType': CreateOpaStrategyNewRequestAlarmDetailVulRiskClass },
            riskLevel: { 'type': 'array', 'itemType': 'string' },
        };
    }
    validate() {
        if (Array.isArray(this.item)) {
            $dara.Model.validateArray(this.item);
        }
        if (Array.isArray(this.riskClass)) {
            $dara.Model.validateArray(this.riskClass);
        }
        if (Array.isArray(this.riskLevel)) {
            $dara.Model.validateArray(this.riskLevel);
        }
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetailVul = CreateOpaStrategyNewRequestAlarmDetailVul;
class CreateOpaStrategyNewRequestAlarmDetail extends $dara.Model {
    static names() {
        return {
            baseline: 'Baseline',
            buildRisk: 'BuildRisk',
            maliciousFile: 'MaliciousFile',
            sensitiveFile: 'SensitiveFile',
            vul: 'Vul',
        };
    }
    static types() {
        return {
            baseline: CreateOpaStrategyNewRequestAlarmDetailBaseline,
            buildRisk: CreateOpaStrategyNewRequestAlarmDetailBuildRisk,
            maliciousFile: CreateOpaStrategyNewRequestAlarmDetailMaliciousFile,
            sensitiveFile: CreateOpaStrategyNewRequestAlarmDetailSensitiveFile,
            vul: CreateOpaStrategyNewRequestAlarmDetailVul,
        };
    }
    validate() {
        if (this.baseline && typeof this.baseline.validate === 'function') {
            this.baseline.validate();
        }
        if (this.buildRisk && typeof this.buildRisk.validate === 'function') {
            this.buildRisk.validate();
        }
        if (this.maliciousFile && typeof this.maliciousFile.validate === 'function') {
            this.maliciousFile.validate();
        }
        if (this.sensitiveFile && typeof this.sensitiveFile.validate === 'function') {
            this.sensitiveFile.validate();
        }
        if (this.vul && typeof this.vul.validate === 'function') {
            this.vul.validate();
        }
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestAlarmDetail = CreateOpaStrategyNewRequestAlarmDetail;
class CreateOpaStrategyNewRequestScopes extends $dara.Model {
    static names() {
        return {
            ackPolicyInstanceId: 'AckPolicyInstanceId',
            allNamespace: 'AllNamespace',
            clusterId: 'ClusterId',
            namespaceList: 'NamespaceList',
        };
    }
    static types() {
        return {
            ackPolicyInstanceId: 'string',
            allNamespace: 'number',
            clusterId: 'string',
            namespaceList: { 'type': 'array', 'itemType': 'string' },
        };
    }
    validate() {
        if (Array.isArray(this.namespaceList)) {
            $dara.Model.validateArray(this.namespaceList);
        }
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequestScopes = CreateOpaStrategyNewRequestScopes;
class CreateOpaStrategyNewRequest extends $dara.Model {
    static names() {
        return {
            alarmDetail: 'AlarmDetail',
            clusterId: 'ClusterId',
            clusterName: 'ClusterName',
            description: 'Description',
            imageName: 'ImageName',
            label: 'Label',
            maliciousImage: 'MaliciousImage',
            ruleAction: 'RuleAction',
            scopes: 'Scopes',
            strategyId: 'StrategyId',
            strategyName: 'StrategyName',
            strategyTemplateId: 'StrategyTemplateId',
            unScanedImage: 'UnScanedImage',
            whiteList: 'WhiteList',
        };
    }
    static types() {
        return {
            alarmDetail: CreateOpaStrategyNewRequestAlarmDetail,
            clusterId: 'string',
            clusterName: 'string',
            description: 'string',
            imageName: { 'type': 'array', 'itemType': 'string' },
            label: { 'type': 'array', 'itemType': 'string' },
            maliciousImage: 'boolean',
            ruleAction: 'number',
            scopes: { 'type': 'array', 'itemType': CreateOpaStrategyNewRequestScopes },
            strategyId: 'number',
            strategyName: 'string',
            strategyTemplateId: 'number',
            unScanedImage: 'boolean',
            whiteList: { 'type': 'array', 'itemType': 'string' },
        };
    }
    validate() {
        if (this.alarmDetail && typeof this.alarmDetail.validate === 'function') {
            this.alarmDetail.validate();
        }
        if (Array.isArray(this.imageName)) {
            $dara.Model.validateArray(this.imageName);
        }
        if (Array.isArray(this.label)) {
            $dara.Model.validateArray(this.label);
        }
        if (Array.isArray(this.scopes)) {
            $dara.Model.validateArray(this.scopes);
        }
        if (Array.isArray(this.whiteList)) {
            $dara.Model.validateArray(this.whiteList);
        }
        super.validate();
    }
    constructor(map) {
        super(map);
    }
}
exports.CreateOpaStrategyNewRequest = CreateOpaStrategyNewRequest;
//# sourceMappingURL=CreateOpaStrategyNewRequest.js.map