/** * Domain Services * * Pure algorithms and business logic with no external dependencies. * These services operate only on domain entities and primitive data. */ export { BM25Index, tokenize, normalizeScore, type BM25Document, type BM25Result, type BM25SerializedData, } from "./bm25"; export { scoreDiscriminativeTerms, DISCRIMINATIVE_CONSTANTS, type DiscriminativeTermResult, } from "./discriminativeTerms"; export { attachMatchScales, compareSearchResultsByRankBy, clamp01, semanticPctFromCosine, } from "./matchScales"; export { extractKeywords, extractPathKeywords, parsePathContext, formatPathContextForEmbedding, COMMON_KEYWORDS, type PathContext, } from "./keywords"; export { cosineSimilarity, euclideanDistance } from "./similarity"; export { detectQueryIntent, extractQueryTerms, calculateFileTypeBoost, isSourceCodeFile, isDocFile, isDataFile, IMPLEMENTATION_TERMS, DOCUMENTATION_TERMS, SOURCE_CODE_EXTENSIONS, DOC_EXTENSIONS, DATA_EXTENSIONS, type QueryIntent, } from "./queryIntent"; export { createLineBasedChunks, createSingleChunk, generateChunkId, DEFAULT_CHUNK_SIZE, DEFAULT_OVERLAP, type TextChunk, type ChunkingOptions, } from "./chunking"; export { parseQueryLiterals } from "./queryLiteralParser"; export { extractLiterals, extractLiteralsWithReferences, extractVocabulary, extractQueryVocabulary, } from "./literalExtractor"; export { calculateLiteralMultiplier, calculateMaxMultiplier, calculateLiteralContribution, calculateVocabularyMatch, applyLiteralBoost, mergeWithLiteralBoost, LITERAL_SCORING_CONSTANTS, type LiteralScoreContribution, type VocabularyMatchResult, type MergeInput, type MergeOutput, } from "./literalScorer"; export { getSynonyms, expandQuery, DEFAULT_LEXICON, EXPANSION_WEIGHTS, DEFAULT_EXPANSION_OPTIONS, } from "./lexicon"; export { extractJsonPaths, extractJsonKeywords } from "./jsonPathExtractor"; export { introspectFile, findNearestReadme, introspectionToKeywords, detectScopeFromName, findProjectForFile, calculateIntrospectionBoost, type IntrospectFileOptions, } from "./introspection"; export { validateConfig, formatValidationIssues, type ValidationIssue, type ValidationResult, } from "./configValidator"; export { calculatePhraseMatch, hasExactPhrase, calculateTokenCoverage, tokenizeForMatching, PHRASE_MATCH_CONSTANTS, type PhraseMatchResult, } from "./phraseMatch"; export { isIdentifierQuery, extractSearchLiteral, findOccurrences, searchFiles, extractIdentifiersFromContent, isSearchableContent, } from "./simpleSearch"; export { prepareChunkForEmbedding, extractPathKeywordsForFileSummary, getPathContextForFileSummary, type ChunkContextOptions, } from "./chunkContext";