import type { CodeGraph, SymbolGraphFilePayload, SymbolRef } from "../types.js";
export interface IncrementalUpdateResult {
    filesChanged: number;
    filesRemoved: number;
    symbolsDelta: number;
    edgesDelta: number;
    /** True when the symbol graph is missing, invalid schema version, or needs full rebuild */
    fullRebuildRequired: boolean;
}
/**
 * Incrementally update the persisted symbol graph for a small batch of
 * changed and removed files.
 *
 * Returns `fullRebuildRequired = true` if no meta exists, schemaVersion < 2,
 * or if changed/removed files require cross-file caller re-resolution.
 */
export declare function updateChangedFilesSymbolGraph(projectId: string, _projectPath: string, _fileGraph: CodeGraph, changedRelPaths: string[], removedRelPaths: string[]): Promise<IncrementalUpdateResult>;
export declare function applyRemoval(projectId: string, payload: SymbolGraphFilePayload, getNameShard: (key: string) => Promise<Record<string, SymbolRef[]>>, getReverseShard: (bucket: number) => Promise<Record<string, string[]>>): Promise<void>;
export declare function applyAddition(projectId: string, payload: SymbolGraphFilePayload, getNameShard: (key: string) => Promise<Record<string, SymbolRef[]>>, getReverseShard: (bucket: number) => Promise<Record<string, string[]>>): Promise<void>;
export declare const _internal: {
    applyRemoval: typeof applyRemoval;
    applyAddition: typeof applyAddition;
};
//# sourceMappingURL=symbol-graph-incremental.d.ts.map