/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { type MapTree, type TreeFieldStoredSchema, Multiplicity, type SchemaAndPolicy } from "../../core/index.js";
export declare const enum SchemaValidationErrors {
    NoError = 0,
    Field_KindNotInSchemaPolicy = 1,
    Field_IncorrectMultiplicity = 2,
    Field_NodeTypeNotAllowed = 3,
    LeafNode_InvalidValue = 4,
    LeafNode_FieldsNotAllowed = 5,
    ObjectNode_FieldNotInSchema = 6,
    NonLeafNode_ValueNotAllowed = 7,
    Node_MissingSchema = 8,
    UnknownError = 9
}
export declare function isNodeInSchema(node: MapTree, schemaAndPolicy: SchemaAndPolicy): SchemaValidationErrors;
export declare function isFieldInSchema(childNodes: readonly MapTree[], schema: TreeFieldStoredSchema, schemaAndPolicy: SchemaAndPolicy): SchemaValidationErrors;
/**
 * Validates that a given number of items complies with the specified {@link Multiplicity | multiplicity}.
 * @param numberOfItems - Number of items.
 * @param multiplicity - Kind of multiplicity to validate against.
 * @returns `true` if the specified number of items complies with the specified multiplicity; otherwise, `false`.
 */
export declare function compliesWithMultiplicity(numberOfItems: number, multiplicity: Multiplicity): boolean;
//# sourceMappingURL=schemaChecker.d.ts.map