import type { ContextDiffReport, DiffImpactReport, FileCallChainDiffRecord, ImpactWeights, JSON_ROOT } from "./types";
import type { QualityAssessmentConfig, QualityAssessmentReport, QualityBenchmarkCase } from "./types";
import type { ParseProjectOptions } from "./types/parsers/types";
import { queryFuncChainsBySnapshot } from "./queryFuncChainsBySnapshot";
import type { IncrementalDiffResult } from "./types/incrementalSnapshotFragment";
declare function parseProjectSnapshot(projectRoot: string, options: ParseProjectOptions): Promise<JSON_ROOT>;
declare function incrementalParseProjectSnapshot(projectRoot: string, prevSnapshot: JSON_ROOT, options: ParseProjectOptions): Promise<JSON_ROOT>;
declare function funcCallChainDiff(oldSnapshot: JSON_ROOT, newSnapshot: JSON_ROOT): FileCallChainDiffRecord[];
declare function analyzeImpact(oldSnapshot: JSON_ROOT, newSnapshot: JSON_ROOT): DiffImpactReport;
declare function analyzeImpactWithWeights(oldSnapshot: JSON_ROOT, newSnapshot: JSON_ROOT, weights?: Partial<ImpactWeights>): DiffImpactReport;
declare function jsonFieldsChanged(oldSnapshot: JSON_ROOT, newSnapshot: JSON_ROOT): ContextDiffReport;
declare function getIncrementalDiffResult(oldSnapshot: JSON_ROOT, newSnapshot: JSON_ROOT): IncrementalDiffResult;
declare function updateOldSnapshot(baseSnapshot: JSON_ROOT, patch: IncrementalDiffResult): JSON_ROOT;
declare function evaluateQualityBaseline(benchmarkCases: QualityBenchmarkCase[], previousReport?: QualityAssessmentReport, config?: QualityAssessmentConfig): QualityAssessmentReport;
export { parseProjectSnapshot, incrementalParseProjectSnapshot, funcCallChainDiff, analyzeImpact, analyzeImpactWithWeights, jsonFieldsChanged, evaluateQualityBaseline, getIncrementalDiffResult, updateOldSnapshot, queryFuncChainsBySnapshot, };
