"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.sharedSecurityConfigSchema = exports.SriOptionsSchema = void 0;
const utils_1 = require("../utils");
exports.SriOptionsSchema = utils_1.z.partialObj({
    hashFuncNames: utils_1.z.array(utils_1.z.string()).min(1),
    enabled: utils_1.z.literals(['auto', true, false]),
    hashLoading: utils_1.z.literals(['eager', 'lazy']),
});
exports.sharedSecurityConfigSchema = utils_1.z.partialObj({
    nonce: utils_1.z.string(),
    checkSyntax: utils_1.z.union([
        utils_1.z.boolean(),
        utils_1.z.object({
            targets: utils_1.z.array(utils_1.z.string()),
            exclude: utils_1.z.optional(utils_1.z.union([utils_1.z.instanceof(RegExp), utils_1.z.array(utils_1.z.instanceof(RegExp))])),
        }),
    ]),
});
// eslint-disable-next-line @typescript-eslint/no-unused-vars
const _schema = exports.sharedSecurityConfigSchema;
