import { QueryCapture, Language } from 'web-tree-sitter';
import { LanguageDefinition } from '../languages/registry.js';
import '../types.js';

declare const PROJECT_ROOT: string;
declare function loadLanguage(langDef: LanguageDefinition): Promise<Language>;
interface ParsedCaptures {
    symbols: Map<string, QueryCapture[]>;
    references: Map<string, QueryCapture[]>;
    nameByNodeId: Map<number, string>;
    scopeByNodeId: Map<number, string>;
}
declare function parseWithQueries(source: string, language: Language, symbolsQuery: string, referencesQuery: string): Promise<ParsedCaptures>;
declare function loadQueryFile(queryPath: string): Promise<string>;

export { PROJECT_ROOT, type ParsedCaptures, loadLanguage, loadQueryFile, parseWithQueries };
