import type { ParsedSymbol, ParsedEdge } from '../types.js';
/**
* Regex-based parser for .res files.
* Two-pass: first extract symbol definitions, then extract references.
*
* Handles the dominant patterns in ReScript codebases:
* - @react.component let make = ...
* - let functionName = (...) => { ... }
* - type myType = ...
* - module SubModule = { ... }
* - open ModuleName
* - ModuleName.functionName(...)
* -
* - value->ModuleName.functionName
*/
export interface ResParseResult {
symbols: ParsedSymbol[];
edges: ParsedEdge[];
openedModules: string[];
}
/**
* Parse a .res file and extract symbols and references.
*/
export declare function parseResFile(content: string, filePath: string): ResParseResult;
/**
* Parse all .res files and return combined results.
*/
export declare function parseResFiles(resFiles: string[], codebaseRoot: string): Map;
//# sourceMappingURL=res-parser.d.ts.map