import type { NodeJSON } from '../types/base'; export declare const AI_CONNECTION_TYPES: readonly ["ai_languageModel", "ai_memory", "ai_tool", "ai_outputParser", "ai_embedding", "ai_vectorStore", "ai_retriever", "ai_document", "ai_textSplitter", "ai_reranker"]; export type AiConnectionType = (typeof AI_CONNECTION_TYPES)[number]; export interface SubnodeConnection { connectionType: AiConnectionType; subnodeName: string; index: number; } export interface SemanticConnection { target: string; targetInputSlot: string; } export interface SourceInfo { from: string; outputSlot: string; } export interface NodeAnnotations { isTrigger: boolean; isCycleTarget: boolean; isConvergencePoint: boolean; } export interface SemanticNode { name: string; type: string; json: NodeJSON; outputs: Map; inputSources: Map; subnodes: SubnodeConnection[]; annotations: NodeAnnotations; } export interface SemanticGraph { nodes: Map; roots: string[]; cycleEdges: Map; } export interface ExpressionValue { expression: string; resolvedValue: unknown; nodeType?: string; parameterPath?: string; }