"use strict";
/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.FormatCommon = exports.ForestFormatVersion = void 0;
const typebox_1 = require("@sinclair/typebox");
const index_js_1 = require("../../codec/index.js");
const index_js_2 = require("../../core/index.js");
const index_js_3 = require("../../util/index.js");
/**
 * The format version for the forest.
 */
exports.ForestFormatVersion = (0, index_js_3.strictEnum)("ForestFormatVersion", {
    v1: 1,
    /** This format is the same as v1, and was added at the same time as incremental encoding for reasons that no longer apply */
    v2: 2,
});
/**
 * Format used by {@link ForestFormatVersion.v1} and {@link ForestFormatVersion.v2}.
 */
exports.FormatCommon = typebox_1.Type.Object({
    ...index_js_1.versionField,
    keys: typebox_1.Type.Array(index_js_2.schemaFormatV1.FieldKeySchema),
    fields: index_js_3.JsonCompatibleReadOnlySchema, // Uses field batch codec
}, { additionalProperties: false });
//# sourceMappingURL=formatCommon.js.map