/*!
 * Copyright (c) Microsoft Corporation and contributors. All rights reserved.
 * Licensed under the MIT License.
 */
import { typeNameSymbol, valueSymbol, } from "../contextuallyTyped";
/**
 * A symbol for extracting target from {@link EditableTree} proxies.
 * Useful for debugging and testing, but not part of the public API.
 * @alpha
 */
export const proxyTargetSymbol = Symbol("editable-tree:proxyTarget");
/**
 * A symbol to get the type of {@link EditableTree} in contexts where string keys are already in use for fields.
 * @alpha
 */
export const typeSymbol = Symbol("editable-tree:type");
/**
 * A symbol to get the function, which returns the field of {@link EditableTree} without unwrapping,
 * in contexts where string keys are already in use for fields.
 * @alpha
 */
export const getField = Symbol("editable-tree:getField()");
/**
 * A symbol to get the function, which creates a new field of {@link EditableTree},
 * in contexts where string keys are already in use for fields.
 * @alpha
 */
export const createField = Symbol("editable-tree:createField()");
/**
 * A symbol to get the function, which replaces a field of {@link EditableTree},
 * in contexts where string keys are already in use for fields.
 * @alpha
 */
export const replaceField = Symbol("editable-tree:replaceField()");
/**
 * A symbol to get information about where an {@link EditableTree} is parented in contexts where string keys are already in use for fields.
 * in contexts where string keys are already in use for fields.
 * @alpha
 */
export const parentField = Symbol("editable-tree:parentField()");
/**
 * A symbol to get a common context of a "forest" of EditableTrees
 * in contexts where string keys are already in use for fields.
 * @alpha
 */
export const contextSymbol = Symbol("editable-tree:context");
/**
 * A symbol for subscribing to events.
 * @alpha
 */
export const on = Symbol("editable-tree:on");
//# sourceMappingURL=editableTreeTypes.js.map