import { ChildProcess } from "child_process"; import { LspServerConfig, ILspManager } from "../types/index.js"; import { Container } from "../utils/container.js"; interface LspProcess { process: ChildProcess; config: LspServerConfig; language: string; initialized: boolean; requestId: number; pendingRequests: Map void; reject: (reason?: unknown) => void; }>; openedFiles: Set; } export declare class LspManager implements ILspManager { private container; private processes; private workdir; private config; constructor(container: Container); initialize(workdir: string): Promise; registerServer(language: string, config: LspServerConfig): void; private loadConfig; getProcessForFile(filePath: string): Promise; private startServer; private handleMessage; private sendRequest; private sendNotification; execute(args: { operation: string; filePath: string; line: number; character: number; }): Promise<{ success: boolean; content: string; }>; cleanup(): Promise; } export {};