import { LSPClient } from "./client.ts";
export declare class LSPService {
    private servers;
    ensureServer(filePath: string): Promise<LSPClient | null>;
    openFile(filePath: string): Promise<LSPClient | null>;
    hover(filePath: string, line: number, column: number): Promise<{
        contents: string;
    } | null>;
    definition(filePath: string, line: number, column: number): Promise<Array<{
        uri: string;
        line: number;
        column: number;
    }> | null>;
    references(filePath: string, line: number, column: number): Promise<Array<{
        uri: string;
        line: number;
        column: number;
    }> | null>;
    documentSymbols(filePath: string): Promise<Array<{
        name: string;
        kind: number;
        line: number;
    }> | null>;
    shutdownAll(): void;
}
export declare function getLSPService(): LSPService;
export declare function shutdownLSPServers(): void;
//# sourceMappingURL=index.d.ts.map