import { FileAdapter } from '../utils/io'; export declare abstract class SymbolExtractor { abstract getSymbolReferences(filePath: string): string[]; } export declare abstract class SymbolResolver { protected symbolPath: string; protected dbPath: string; protected fileAdapter: FileAdapter; constructor(symbolPath: string, dbPath: string, fileAdapter?: FileAdapter); abstract resolveSymbol(symbolRef: string): Promise; } export declare class SnapSymbolExtractor extends SymbolExtractor { getSymbolReferences(filePath: string): string[]; } export declare class SnapSymbolResolver extends SymbolResolver { resolveSymbol(symbolRef: string): Promise; } export declare class Grid3SymbolExtractor extends SymbolExtractor { getSymbolReferences(filePath: string): string[]; } export declare class Grid3SymbolResolver extends SymbolResolver { resolveSymbol(symbolRef: string): Promise; } export declare class TouchChatSymbolExtractor extends SymbolExtractor { getSymbolReferences(_filePath: string): string[]; } export declare class TouchChatSymbolResolver extends SymbolResolver { resolveSymbol(symbolRef: string): Promise; } export declare function resolveSymbol(label: string, symbolDir: string, fileAdapter?: FileAdapter): Promise;