import type { Connection } from 'vscode-languageserver'; import type { InjectionToken } from '../../di/inject.js'; import type { ModuleMetadata } from '../../di/module.js'; import { createRuntimeApplication, type RuntimeApplication } from '../../di/runtime/index.js'; import { createLanguageServerFeature } from './language-server-feature.js'; export interface LanguageServerApplicationFactories { createRuntimeApplication?: typeof createRuntimeApplication; createLanguageServerFeature?: typeof createLanguageServerFeature; } export interface LanguageServerApplicationOptions { connection: Connection; modules: ModuleMetadata[]; overrides?: Iterable<[InjectionToken, unknown]>; factories?: LanguageServerApplicationFactories; } /** * Creates the runtime application responsible for hosting the language server services. */ export declare function createLanguageServerApplication(options: LanguageServerApplicationOptions): RuntimeApplication;