/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { Type } from "@sinclair/typebox";
// Many of the return types in this module are intentionally derived, rather than explicitly specified.
/* eslint-disable @typescript-eslint/explicit-function-return-type */
/**
 * Note: TS doesn't easily support extracting a generic function's return type until 4.7:
 * https://github.com/microsoft/TypeScript/pull/47607
 * This type is a workaround and can be removed once we're on a version of typescript which
 * supports expressions more like:
 * `Static<ReturnType<typeof EncodedGenericChange<Schema>>>`
 */
class Wrapper {
    encodedGenericChange(e) {
        return EncodedGenericChange(e);
    }
    encodedGenericChangeset(e) {
        return EncodedGenericChangeset(e);
    }
}
export const EncodedGenericChange = (tNodeChangeset) => Type.Tuple([Type.Number({ minimum: 0, multipleOf: 1 }), tNodeChangeset]);
export const EncodedGenericChangeset = (tNodeChangeset) => Type.Array(EncodedGenericChange(tNodeChangeset));
/* eslint-enable @typescript-eslint/explicit-function-return-type */
//# sourceMappingURL=genericFieldKindFormat.js.map