import type { RetrievalResultMetadata } from './retrieval.js'; import type { TaskContextEnvelope } from './task-context-envelope.js'; export interface ContextRequest { query: string; mode: "fast" | "deep"; maxTokens?: number; includeGraph?: boolean; /** Agent-pre-translated English keywords (space-separated). Used when caller is an LLM Agent. */ expandedTerms?: string; /** Session identifier for accuracy tracking */ sessionId?: string; activeSkill?: string; relevantFiles?: string[]; } export interface FileSnippet { path: string; snippet: string; symbols: string[]; score?: number; } export interface ContextResult { files: FileSnippet[]; knowledgeFiles?: FileSnippet[]; graph?: { nodes: import("./graph.js").GraphNode[]; edges: import("./graph.js").GraphEdge[]; }; memory?: { project: Record; user?: Record; }; confidence: number; tokenCount: number; warnings?: string[]; } export interface IndexStatus { totalFiles: number; totalSymbols: number; lastIndexTime: number; indexing: boolean; } export type SymbolKind = "component" | "hook" | "function" | "class" | "api" | "store" | "type" | "interface" | "enum" | "variable" | "unknown"; export interface SymbolEntry { id: string; name: string; kind: SymbolKind; file: string; line: number; column: number; exports: boolean; parentId?: string; metadata?: Record; } export interface FileMeta { path: string; language: string; size: number; } export interface ImportEntry { file: string; imports: { name: string; source: string; isDefault: boolean; isTypeOnly: boolean; }[]; } export interface FileChange { path: string; type: "added" | "modified" | "deleted"; } export interface RiskHint { level: "high" | "medium" | "low"; category: "main_flow" | "config" | "cross_layer" | "global_state" | "api_contract" | "test_coverage"; description: string; affectedFiles: string[]; } export interface NextAction { kind: "workflow" | "graph_query" | "symbol_search" | "knowledge_search" | "plugin_install"; label: string; payload: string; } export interface ContextReasoning { source: "graph_root" | "symbol_match" | "memory" | "knowledge" | "fuzzy_search" | "dependency_trace"; fileGroup: string; explanation: string; } export interface TaskFileGroup { files: string[]; symbols: string[]; reasoning: ContextReasoning[]; } export type TaskType = "debug" | "feature" | "understand" | "review" | "refactor" | "unknown"; export interface TaskContextResult { taskType: TaskType; requiredFiles: TaskFileGroup; optionalFiles: TaskFileGroup; keySymbols: Array<{ name: string; file: string; kind: string; relevance: "direct" | "indirect"; }>; graphSummary: { roots: string[]; traversalDepth: number; relatedNodeCount: number; }; riskHints: RiskHint[]; nextActions: NextAction[]; reasoning: ContextReasoning[]; confidence: number; tokenCount: number; warnings?: string[]; taskEnvelope?: TaskContextEnvelope; } export interface GetProjectContextResult extends TaskContextResult, RetrievalResultMetadata { } export interface EngineSet { data: import("../interfaces/IDataProvider.js").IDataProvider; indexer: import("../interfaces/IIndexer.js").IIndexer; graph: import("../interfaces/IGraphEngine.js").IGraphEngine; memory: import("../interfaces/IMemoryEngine.js").IMemoryEngine; knowledge: import("../interfaces/IKnowledgeEngine.js").IKnowledgeEngine; context: any; workflow: any; } //# sourceMappingURL=context.d.ts.map