import * as ts from 'typescript/lib/tsserverlibrary'; import { RouteContext } from './RouteContext'; declare type LanguageServiceMethodWrapper = (delegate: ts.LanguageService[K], info?: ts.server.PluginCreateInfo) => ts.LanguageService[K]; export declare abstract class LanguageService { private readonly _wrappers; decorate(languageService: ts.LanguageService): any; wrap(name: K, wrapper: LanguageServiceMethodWrapper): this; translateTextSpan(context: RouteContext, span: ts.TextSpan): ts.TextSpan; translateDefinitionInfo(context: RouteContext, definition: ts.DefinitionInfo): ts.DefinitionInfo; } export {};