import { LanguageServicePlugin } from '@volar/language-service'; import * as vscode from 'vscode-languageserver'; import type { ExperimentalFeatures, LanguageServerEnvironment, LanguageServerProject } from './types.js'; export declare function createServerBase(connection: vscode.Connection, env: LanguageServerEnvironment): { initializeParams: vscode.InitializeParams; project: LanguageServerProject; languageServicePlugins: LanguageServicePlugin[]; initialize(params: vscode.InitializeParams, project: LanguageServerProject, languageServicePlugins: LanguageServicePlugin[]): vscode.InitializeResult; initialized(): void; shutdown(): void; configurations: { get: (section: string, scopeUri?: string) => Promise; onDidChange: (cb: vscode.NotificationHandler) => { dispose(): void; }; }; editorFeatures: void; documents: { all: () => import("./utils/snapshotDocument.js").SnapshotDocument[]; onDidChangeContent: vscode.Event>; onDidOpen: vscode.Event>; onDidClose: vscode.Event>; onDidSave: vscode.Event>; get(uri: import("vscode-uri").URI): import("./utils/snapshotDocument.js").SnapshotDocument | undefined; }; workspaceFolders: { readonly all: import("vscode-uri").URI[]; has(uri: import("vscode-uri").URI): boolean; onDidChange: (cb: vscode.NotificationHandler) => { dispose(): void; }; }; fileWatcher: { watchFiles: (patterns: string[]) => Promise; onDidChangeWatchedFiles: (cb: vscode.NotificationHandler) => { dispose: () => void; }; }; languageFeatures: { requestRefresh: (clearDiagnostics: boolean) => Promise; }; fileSystem: { readFile(uri: import("vscode-uri").URI): string | Thenable; stat(uri: import("vscode-uri").URI): import("@volar/language-service").FileStat | Thenable; readDirectory(uri: import("vscode-uri").URI): import("@volar/language-service").ProviderResult<[string, import("@volar/language-service").FileType][]>; install(scheme: string, provider: import("@volar/language-service").FileSystem): void; }; env: LanguageServerEnvironment; connection: vscode.Connection; onInitialize(callback: (serverCapabilities: vscode.ServerCapabilities) => void): void; onInitialized(callback: () => void): void; };