import type { ExtractionData } from '../../contracts/types.js'; import type { SemanticProgramIndex } from './types.js'; export type ProjectSpiToExtractionOptions = { /** Workspace root the SPI was built against. Used to resolve absolute * paths so the produced ExtractionNode.source_file matches the legacy * extractor's path output. */ root: string; /** * Optional full-corpus, collision-safe stems from the legacy extraction * pipeline. Hybrid generation supplies this so SPI-projected source IDs do * not collide with legacy-only files that share a basename. */ fileStemByAbsolutePath?: ReadonlyMap; }; export declare function projectSpiToExtraction(spi: SemanticProgramIndex, opts: ProjectSpiToExtractionOptions): ExtractionData;