"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.OPERATION = exports.Context = exports.SchemaDefinition = exports.hasFilter = exports.defineTypes = exports.filterChildren = exports.filter = exports.deprecated = exports.type = exports.ReflectionField = exports.ReflectionType = exports.Reflection = exports.dumpChanges = exports.registerType = exports.SetSchema = exports.CollectionSchema = exports.ArraySchema = exports.MapSchema = exports.Schema = void 0;
var Schema_1 = require("./Schema");
Object.defineProperty(exports, "Schema", { enumerable: true, get: function () { return Schema_1.Schema; } });
var MapSchema_1 = require("./types/MapSchema");
Object.defineProperty(exports, "MapSchema", { enumerable: true, get: function () { return MapSchema_1.MapSchema; } });
var ArraySchema_1 = require("./types/ArraySchema");
Object.defineProperty(exports, "ArraySchema", { enumerable: true, get: function () { return ArraySchema_1.ArraySchema; } });
var CollectionSchema_1 = require("./types/CollectionSchema");
Object.defineProperty(exports, "CollectionSchema", { enumerable: true, get: function () { return CollectionSchema_1.CollectionSchema; } });
var SetSchema_1 = require("./types/SetSchema");
Object.defineProperty(exports, "SetSchema", { enumerable: true, get: function () { return SetSchema_1.SetSchema; } });
var types_1 = require("./types");
Object.defineProperty(exports, "registerType", { enumerable: true, get: function () { return types_1.registerType; } });
types_1.registerType("map", { constructor: MapSchema_1.MapSchema, getProxy: MapSchema_1.getMapProxy });
types_1.registerType("array", { constructor: ArraySchema_1.ArraySchema, getProxy: ArraySchema_1.getArrayProxy });
types_1.registerType("set", { constructor: SetSchema_1.SetSchema });
types_1.registerType("collection", { constructor: CollectionSchema_1.CollectionSchema, });
// Utils
var utils_1 = require("./utils");
Object.defineProperty(exports, "dumpChanges", { enumerable: true, get: function () { return utils_1.dumpChanges; } });
// Reflection
var Reflection_1 = require("./Reflection");
Object.defineProperty(exports, "Reflection", { enumerable: true, get: function () { return Reflection_1.Reflection; } });
Object.defineProperty(exports, "ReflectionType", { enumerable: true, get: function () { return Reflection_1.ReflectionType; } });
Object.defineProperty(exports, "ReflectionField", { enumerable: true, get: function () { return Reflection_1.ReflectionField; } });
var annotations_1 = require("./annotations");
// Annotations
Object.defineProperty(exports, "type", { enumerable: true, get: function () { return annotations_1.type; } });
Object.defineProperty(exports, "deprecated", { enumerable: true, get: function () { return annotations_1.deprecated; } });
Object.defineProperty(exports, "filter", { enumerable: true, get: function () { return annotations_1.filter; } });
Object.defineProperty(exports, "filterChildren", { enumerable: true, get: function () { return annotations_1.filterChildren; } });
Object.defineProperty(exports, "defineTypes", { enumerable: true, get: function () { return annotations_1.defineTypes; } });
Object.defineProperty(exports, "hasFilter", { enumerable: true, get: function () { return annotations_1.hasFilter; } });
// Internals
Object.defineProperty(exports, "SchemaDefinition", { enumerable: true, get: function () { return annotations_1.SchemaDefinition; } });
// Types
Object.defineProperty(exports, "Context", { enumerable: true, get: function () { return annotations_1.Context; } });
var spec_1 = require("./spec");
Object.defineProperty(exports, "OPERATION", { enumerable: true, get: function () { return spec_1.OPERATION; } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7O0FBQUEsbUNBQThDO0FBQXJDLGdHQUFBLE1BQU0sT0FBQTtBQUVmLCtDQUEwRDtBQUNqRCwwRkFEQSxxQkFBUyxPQUNBO0FBRWxCLG1EQUFpRTtBQUN4RCw0RkFEQSx5QkFBVyxPQUNBO0FBRXBCLDZEQUE0RDtBQUNuRCxpR0FEQSxtQ0FBZ0IsT0FDQTtBQUV6QiwrQ0FBOEM7QUFDckMsMEZBREEscUJBQVMsT0FDQTtBQUVsQixpQ0FBdUM7QUFDOUIsNkZBREEsb0JBQVksT0FDQTtBQUVyQixvQkFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLFdBQVcsRUFBRSxxQkFBUyxFQUFFLFFBQVEsRUFBRSx1QkFBVyxFQUFFLENBQUMsQ0FBQztBQUN2RSxvQkFBWSxDQUFDLE9BQU8sRUFBRSxFQUFFLFdBQVcsRUFBRSx5QkFBVyxFQUFFLFFBQVEsRUFBRSwyQkFBYSxFQUFFLENBQUMsQ0FBQztBQUM3RSxvQkFBWSxDQUFDLEtBQUssRUFBRSxFQUFFLFdBQVcsRUFBRSxxQkFBUyxFQUFFLENBQUMsQ0FBQztBQUNoRCxvQkFBWSxDQUFDLFlBQVksRUFBRSxFQUFFLFdBQVcsRUFBRSxtQ0FBZ0IsR0FBRyxDQUFDLENBQUM7QUFFL0QsUUFBUTtBQUNSLGlDQUFzQztBQUE3QixvR0FBQSxXQUFXLE9BQUE7QUFLcEIsYUFBYTtBQUNiLDJDQUlzQjtBQUhsQix3R0FBQSxVQUFVLE9BQUE7QUFDViw0R0FBQSxjQUFjLE9BQUE7QUFDZCw2R0FBQSxlQUFlLE9BQUE7QUFHbkIsNkNBa0J1QjtBQWpCbkIsY0FBYztBQUNkLG1HQUFBLElBQUksT0FBQTtBQUNKLHlHQUFBLFVBQVUsT0FBQTtBQUNWLHFHQUFBLE1BQU0sT0FBQTtBQUNOLDZHQUFBLGNBQWMsT0FBQTtBQUNkLDBHQUFBLFdBQVcsT0FBQTtBQUNYLHdHQUFBLFNBQVMsT0FBQTtBQUVULFlBQVk7QUFDWiwrR0FBQSxnQkFBZ0IsT0FBQTtBQUVoQixRQUFRO0FBQ1Isc0dBQUEsT0FBTyxPQUFBO0FBT1gsK0JBQW1DO0FBQTFCLGlHQUFBLFNBQVMsT0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IFNjaGVtYSwgRGF0YUNoYW5nZSB9IGZyb20gXCIuL1NjaGVtYVwiO1xuXG5pbXBvcnQgeyBNYXBTY2hlbWEsIGdldE1hcFByb3h5IH0gZnJvbSBcIi4vdHlwZXMvTWFwU2NoZW1hXCJcbmV4cG9ydCB7IE1hcFNjaGVtYSB9O1xuXG5pbXBvcnQgeyBBcnJheVNjaGVtYSwgZ2V0QXJyYXlQcm94eSB9IGZyb20gXCIuL3R5cGVzL0FycmF5U2NoZW1hXCI7XG5leHBvcnQgeyBBcnJheVNjaGVtYSB9O1xuXG5pbXBvcnQgeyBDb2xsZWN0aW9uU2NoZW1hIH0gZnJvbSBcIi4vdHlwZXMvQ29sbGVjdGlvblNjaGVtYVwiO1xuZXhwb3J0IHsgQ29sbGVjdGlvblNjaGVtYSB9O1xuXG5pbXBvcnQgeyBTZXRTY2hlbWEgfSBmcm9tIFwiLi90eXBlcy9TZXRTY2hlbWFcIjtcbmV4cG9ydCB7IFNldFNjaGVtYSB9O1xuXG5pbXBvcnQgeyByZWdpc3RlclR5cGUgfSBmcm9tIFwiLi90eXBlc1wiO1xuZXhwb3J0IHsgcmVnaXN0ZXJUeXBlIH07XG5cbnJlZ2lzdGVyVHlwZShcIm1hcFwiLCB7IGNvbnN0cnVjdG9yOiBNYXBTY2hlbWEsIGdldFByb3h5OiBnZXRNYXBQcm94eSB9KTtcbnJlZ2lzdGVyVHlwZShcImFycmF5XCIsIHsgY29uc3RydWN0b3I6IEFycmF5U2NoZW1hLCBnZXRQcm94eTogZ2V0QXJyYXlQcm94eSB9KTtcbnJlZ2lzdGVyVHlwZShcInNldFwiLCB7IGNvbnN0cnVjdG9yOiBTZXRTY2hlbWEgfSk7XG5yZWdpc3RlclR5cGUoXCJjb2xsZWN0aW9uXCIsIHsgY29uc3RydWN0b3I6IENvbGxlY3Rpb25TY2hlbWEsIH0pO1xuXG4vLyBVdGlsc1xuZXhwb3J0IHsgZHVtcENoYW5nZXMgfSBmcm9tIFwiLi91dGlsc1wiO1xuXG4vLyBEZWNvZGVyXG5leHBvcnQgeyBJdGVyYXRvciB9IGZyb20gXCIuL2VuY29kaW5nL2RlY29kZVwiO1xuXG4vLyBSZWZsZWN0aW9uXG5leHBvcnQge1xuICAgIFJlZmxlY3Rpb24sXG4gICAgUmVmbGVjdGlvblR5cGUsXG4gICAgUmVmbGVjdGlvbkZpZWxkLFxufSBmcm9tIFwiLi9SZWZsZWN0aW9uXCI7XG5cbmV4cG9ydCB7XG4gICAgLy8gQW5ub3RhdGlvbnNcbiAgICB0eXBlLFxuICAgIGRlcHJlY2F0ZWQsXG4gICAgZmlsdGVyLFxuICAgIGZpbHRlckNoaWxkcmVuLFxuICAgIGRlZmluZVR5cGVzLFxuICAgIGhhc0ZpbHRlcixcblxuICAgIC8vIEludGVybmFsc1xuICAgIFNjaGVtYURlZmluaXRpb24sXG5cbiAgICAvLyBUeXBlc1xuICAgIENvbnRleHQsXG4gICAgUHJpbWl0aXZlVHlwZSxcbiAgICBEZWZpbml0aW9uLFxuICAgIERlZmluaXRpb25UeXBlLFxuICAgIEZpbHRlckNhbGxiYWNrLFxufSBmcm9tIFwiLi9hbm5vdGF0aW9uc1wiO1xuXG5leHBvcnQgeyBPUEVSQVRJT04gfSBmcm9tIFwiLi9zcGVjXCI7Il19