"use strict";
/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
Object.defineProperty(exports, "__esModule", { value: true });
exports.customizeSchemaTypingUnsafe = void 0;
/**
 * {@link Unenforced} version of {@link customizeSchemaTyping} for use with recursive schema types.
 *
 * @remarks
 * When using this API to modify a schema derived type such that the type is no longer recursive,
 * or uses an externally defined type (which can be recursive), {@link customizeSchemaTyping} should be used instead for an improved developer experience.
 * Additionally, in this case, none of the "unsafe" type variants should be needed: the whole schema (with runtime but not schema derived type recursion)
 * should use the normal (not unsafe/recursive) APIs.
 * @alpha
 */
function customizeSchemaTypingUnsafe(schema) {
    // This function just does type branding, and duplicating the typing here to avoid any would just make it harder to maintain not easier:
    const f = () => schema;
    return { simplified: f, simplifiedUnrestricted: f, custom: f };
}
exports.customizeSchemaTypingUnsafe = customizeSchemaTypingUnsafe;
/* eslint-enable @typescript-eslint/no-explicit-any */
//# sourceMappingURL=typesUnsafe.js.map