import type { SlashCommand } from '@wrongstack/core/types'; import type { DocumentTracker } from '../document-tracker.js'; import type { LSPRegistry } from '../registry.js'; import type { PlugLSPConfig } from '../types.js'; export { installLang, LANGUAGE_SERVERS, SUPPORTED_LANGUAGES } from './install.js'; interface LspContext { registry: LSPRegistry; tracker: DocumentTracker; cfg: PlugLSPConfig; cwd: string; } type LspSubcommand = { type: 'list'; } | { type: 'status'; } | { type: 'install'; language: string; } | { type: 'start'; name?: string | undefined; } | { type: 'stop'; name?: string | undefined; } | { type: 'restart'; name?: string | undefined; } | { type: 'diagnostics'; file?: string | undefined; } | { type: 'remove'; name: string; } | { type: 'enable'; name: string; } | { type: 'disable'; name: string; } | { type: 'help'; }; declare function parseArgs(args: string): LspSubcommand; declare function colorize(text: string, code: string): string; export declare function buildLspCommand(ctx: LspContext): SlashCommand; /** Collect diagnostics from all ready LSP servers, keyed by file path. */ declare function collectServerDiagnostics(registry: LSPRegistry): Map; /** Direct-module test seam; not re-exported by the package barrel. */ export declare const lspCommandCoverage: { colorize: typeof colorize; collectServerDiagnostics: typeof collectServerDiagnostics; parseArgs: typeof parseArgs; }; //# sourceMappingURL=lsp.d.ts.map