import * as lsp from 'vscode-languageserver-protocol/node';
import { CommonLspService } from './lsp/server/common';
interface Range {
    start: number;
    end: number;
}
export interface ImpactedLines {
    filePath: string;
    chunks: Range[];
}
export declare class ImpactDetectionService {
    private lspServices;
    private logger;
    private workspace;
    constructor(workspace: string);
    addLspService(service: CommonLspService): void;
    stopAllLspServices(): Promise<void>;
    getDocumentSymbols(filePath: string): Promise<lsp.SymbolInformation[]>;
    static sortAndFilterSymbols(symbols: lsp.SymbolInformation[]): lsp.SymbolInformation[];
    findImpactLinesByDiff(diff: string): Promise<ImpactedLines[]>;
    markImpactedLines(impactedLinesList: ImpactedLines[], prefix?: string): {
        filePath: string;
        content: string;
    }[];
}
export {};
