import type { SerializedLexicalNode, Spread } from 'lexical'; import type { ContextItem, ContextItemFile, ContextItemOpenCtx, ContextItemRepository, ContextItemSource, ContextItemSymbol, ContextItemTree } from '../codebase-context/messages'; export declare const CONTEXT_ITEM_MENTION_NODE_TYPE = "contextItemMention"; export declare const TEMPLATE_INPUT_NODE_TYPE = "templateInput"; /** * The subset of {@link ContextItem} fields that we need to store to identify and display context * item mentions. */ export type SerializedContextItem = { uri: string; title?: string; content?: undefined; source?: ContextItemSource; } & (Omit | Omit | Omit | Omit | Omit); export type SerializedTemplateInput = { placeholder: string; }; export type SerializedContextItemMentionNode = Spread<{ type: typeof CONTEXT_ITEM_MENTION_NODE_TYPE; contextItem: SerializedContextItem; isFromInitialContext: boolean; text: string; }, SerializedLexicalNode>; export type SerializedTemplateInputNode = Spread<{ type: typeof TEMPLATE_INPUT_NODE_TYPE; templateInput: SerializedTemplateInput; }, SerializedLexicalNode>; export declare function serializeContextItem(contextItem: ContextItem | SerializedContextItem): SerializedContextItem; export declare function deserializeContextItem(contextItem: SerializedContextItem): ContextItem; export declare function isSerializedContextItemMentionNode(node: SerializedLexicalNode | null | undefined): node is SerializedContextItemMentionNode; export declare function isSerializedTemplateInputNode(node: SerializedLexicalNode | null | undefined): node is SerializedTemplateInputNode; export declare function contextItemMentionNodeDisplayText(contextItem: SerializedContextItem): string; export declare function templateInputNodeDisplayText(templateInput: SerializedTemplateInputNode): string; //# sourceMappingURL=nodes.d.ts.map