/** * Embedding Types * * Types for the semantic embedding and vector search system. * * @see TRL-18 */ export type ChunkType = 'issue_title' | 'issue_desc' | 'milestone_msg' | 'decision_rationale' | 'summary_md' | 'code_entity' | 'doc_comment' | 'markdown'; export interface ChunkMeta { /** Unique chunk ID, e.g. "issue:TRL-5:title", "file:src/engine.ts:chunk:0" */ id: string; /** EAV entity ID this chunk belongs to */ entityId: string; /** Original text content */ content: string; /** Chunk classification */ chunkType: ChunkType; /** Source file path (nullable for non-file entities) */ filePath?: string; /** When this chunk was last updated */ updatedAt: string; } export interface EmbeddingRecord extends ChunkMeta { /** 384-dimensional embedding vector */ embedding: Float32Array; } export interface SearchResult { /** Chunk metadata */ chunk: ChunkMeta; /** Cosine similarity score (0..1) */ score: number; } export interface SearchOptions { /** Max results to return (default: 10) */ limit?: number; /** Filter by chunk type(s) */ types?: ChunkType[]; /** Filter by file path prefix */ filePrefix?: string; /** Minimum similarity threshold (default: 0.0) */ minScore?: number; } export interface EmbeddingModelConfig { /** Model name for transformers.js (default: "Xenova/all-MiniLM-L6-v2") */ modelName: string; /** Embedding dimension (default: 384) */ dimension: number; /** Cache directory for model files */ cacheDir?: string; } export declare const DEFAULT_MODEL_CONFIG: EmbeddingModelConfig; /** New chunk types for generic graph entities */ export type GraphChunkType = ChunkType | 'entity_summary' | 'entity_fact' | 'entity_link'; //# sourceMappingURL=types.d.ts.map