/** * CppHeaderResolver — maps C++ #include directives to implementation files. * * In C++ a caller in main.cpp that does `#include "engine.h"` effectively * has access to all symbols defined in engine.cpp (the paired implementation). * This module builds that header→impl mapping so that the call graph resolver * can prefer the correct .cpp file when resolving cross-file calls. */ export interface CppInclude { headerPath: string; isRelative: boolean; isSystem: boolean; } /** Parse #include directives from a C++ source file. */ export declare function parseCppIncludes(filePath: string, content: string, _allFilePaths: string[]): CppInclude[]; /** * Build a map from header path → implementation file path. * Convention: foo.h and foo.cpp (or .cc) in the same directory are paired. */ export declare function buildHeaderToImplMap(allFilePaths: string[]): Map; /** * Build a map from C++ source file → Set of implementation files reachable * via its #include directives. Used during call resolution to prefer the * implementation file that matches an #include in the caller. */ export declare function buildCppImportMap(files: Array<{ path: string; content: string; }>, allFilePaths: string[]): Map>; //# sourceMappingURL=cpp-header-resolver.d.ts.map