"use strict";
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = function(target, all) {
    for(var name in all)__defProp(target, name, {
        get: all[name],
        enumerable: true
    });
};
var __copyProps = function(to, from, except, desc) {
    if (from && typeof from === "object" || typeof from === "function") {
        var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = undefined;
        try {
            var _loop = function() {
                var key = _step.value;
                if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
                    get: function() {
                        return from[key];
                    },
                    enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
                });
            };
            for(var _iterator = __getOwnPropNames(from)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true)_loop();
        } catch (err) {
            _didIteratorError = true;
            _iteratorError = err;
        } finally{
            try {
                if (!_iteratorNormalCompletion && _iterator.return != null) {
                    _iterator.return();
                }
            } finally{
                if (_didIteratorError) {
                    throw _iteratorError;
                }
            }
        }
    }
    return to;
};
var __toCommonJS = function(mod) {
    return __copyProps(__defProp({}, "__esModule", {
        value: true
    }), mod);
};
// test/e2e/optimize.2.ts
var optimize_2_exports = {};
__export(optimize_2_exports, {
    input: function() {
        return input;
    }
});
module.exports = __toCommonJS(optimize_2_exports);
var input = {
    definitions: {
        a: {
            type: "string",
            additionalProperties: false
        },
        b: {
            type: "object"
        },
        c: {
            type: "object"
        }
    },
    properties: {
        a: {
            anyOf: [
                {
                    type: "string",
                    additionalProperties: false
                },
                {
                    $ref: "#/definitions/a"
                }
            ]
        },
        b: {
            anyOf: [
                {
                    type: "object"
                },
                {
                    type: "object"
                },
                {
                    $ref: "#/definitions/b"
                }
            ]
        },
        c: {
            anyOf: [
                {
                    type: "object"
                },
                {
                    $ref: "#/definitions/b"
                },
                {
                    $ref: "#/definitions/b"
                },
                {
                    $ref: "#/definitions/c"
                }
            ]
        },
        d: {
            allOf: [
                {
                    type: "object"
                },
                {
                    type: "object"
                }
            ]
        },
        e: {
            oneOf: [
                {
                    type: "object"
                },
                {
                    allOf: [
                        {
                            type: "object"
                        },
                        {
                            type: "object"
                        }
                    ]
                }
            ]
        }
    },
    required: [
        "a",
        "b",
        "c",
        "d",
        "e"
    ],
    title: "Optimizable Schema 2",
    type: "object",
    additionalProperties: false
};
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
    input: input
});
