/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { ValueSchema } from "../../core";
import { TreeFieldSchema } from "../../feature-libraries";
/**
 * Schema for a node which holds a {@link StableNodeKey}.
 * @alpha
 *
 * @privateRemarks
 * This being a leaf may cause issues with leaf unboxing plans.
 * This might need to be changed to be a node holding a string node instead.
 */
export declare const nodeKeyTreeSchema: import("../../feature-libraries").TreeNodeSchema<"com.fluidframework.nodeKey.NodeKey", {
    leafValue: ValueSchema.String;
}>;
/**
 * Key and Field schema for working with {@link LocalNodeKey}s in a shared tree.
 * Node keys are added to object nodes via a field.
 * This object can be expanded into a schema to add the field.
 *
 * Requires including {@link nodeKeySchema}.
 * @alpha
 */
export declare const nodeKeyField: {
    __n_id__: TreeFieldSchema<import("../../feature-libraries").NodeKeyFieldKind, readonly [import("../../feature-libraries").TreeNodeSchema<"com.fluidframework.nodeKey.NodeKey", {
        leafValue: ValueSchema.String;
    }>]>;
};
/**
 * The schema library for working with {@link StableNodeKey}s in a tree.
 * Required to use {@link nodeKeyField}.
 * @alpha
 */
export declare const nodeKeySchema: import("../../feature-libraries").SchemaLibrary;
//# sourceMappingURL=nodeKeySchema.d.ts.map