import type { ExtendedTSLanguageService, TypeScript } from '../contracts/TypeScript';
import { CodeFixService } from '../features/CodeFixService';
import { CompletionsService } from '../features/CompletionsService';
import { DefinitionService } from '../features/DefinitionService';
import { DiagnosticsService } from '../features/DiagnosticsService';
import { FoldingRangeService } from '../features/FoldingRangeService';
import { ImplementationService } from '../features/ImplementationService';
import { QuickInfoService } from '../features/QuickInfoService';
import { RefactorService } from '../features/RefactorService';
import { ReferencesService } from '../features/ReferencesService';
import { RenameService } from '../features/RenameService';
import { SignatureHelpService } from '../features/SignatureHelpService';
import { EncodedClassificationsService } from './EncodedClassificationsService';
import { FilesystemService } from './FilesystemService';
import { IPCService } from './IPCService';
import { TypescriptContextService } from './TypescriptContextService';
export declare class TypescriptPluginService implements Partial<ExtendedTSLanguageService> {
    #private;
    private readonly fs;
    private readonly diagnostics;
    private readonly quickInfo;
    private readonly definitions;
    private readonly completions;
    private readonly references;
    private readonly rename;
    private readonly classifications;
    private readonly codeFix;
    private readonly refactor;
    private readonly folding;
    private readonly signature;
    private readonly implementation;
    private readonly ts;
    private readonly ipc;
    private readonly logger;
    constructor(fs: FilesystemService, diagnostics: DiagnosticsService, quickInfo: QuickInfoService, definitions: DefinitionService, completions: CompletionsService, references: ReferencesService, rename: RenameService, classifications: EncodedClassificationsService, codeFix: CodeFixService, refactor: RefactorService, folding: FoldingRangeService, signature: SignatureHelpService, implementation: ImplementationService, ts: TypescriptContextService, ipc: IPCService);
    get isVueProject(): boolean;
    getScriptFileNames(all: string[]): string[];
    getExternalFiles(): string[];
    toLineColumnOffset(fileName: string, position: number): TypeScript.LineAndCharacter;
    getCompilerOptionsDiagnostics(): TypeScript.Diagnostic[];
    getSemanticDiagnostics(fileName: string): TypeScript.Diagnostic[];
    getSyntacticDiagnostics(fileName: string): TypeScript.DiagnosticWithLocation[];
    getSuggestionDiagnostics(fileName: string): TypeScript.DiagnosticWithLocation[];
    getDefinitionAtPosition(fileName: string, position: number): readonly TypeScript.DefinitionInfo[] | undefined;
    getTypeDefinitionAtPosition(fileName: string, position: number): readonly TypeScript.DefinitionInfo[] | undefined;
    getDefinitionAndBoundSpan(fileName: string, position: number): TypeScript.DefinitionInfoAndBoundSpan | undefined;
    getQuickInfoAtPosition(fileName: string, position: number): TypeScript.QuickInfo | undefined;
    getCompletionsAtPosition(fileName: string, position: number, options: TypeScript.GetCompletionsAtPositionOptions | undefined): TypeScript.WithMetadata<TypeScript.CompletionInfo> | undefined;
    getCompletionEntryDetails(fileName: string, position: number, entryName: string, formatOptions: TypeScript.FormatCodeOptions | TypeScript.FormatCodeSettings | undefined, source: string | undefined, preferences: TypeScript.UserPreferences | undefined, data: TypeScript.CompletionEntryData | undefined): TypeScript.CompletionEntryDetails | undefined;
    getCompletionEntrySymbol(fileName: string, position: number, name: string, source: string | undefined): TypeScript.Symbol | undefined;
    getDocCommentTemplateAtPosition(fileName: string, position: number, options?: TypeScript.DocCommentTemplateOptions): TypeScript.TextInsertion | undefined;
    getJsxClosingTagAtPosition(fileName: string, position: number): TypeScript.JsxClosingTagInfo | undefined;
    getEncodedSyntacticClassifications(fileName: string, span: TypeScript.TextSpan): TypeScript.Classifications;
    getEncodedSemanticClassifications(fileName: string, span: TypeScript.TextSpan, format?: TypeScript.SemanticClassificationFormat): TypeScript.Classifications;
    getReferencesAtPosition(fileName: string, position: number): TypeScript.ReferenceEntry[] | undefined;
    findReferences(fileName: string, position: number): TypeScript.ReferencedSymbol[] | undefined;
    getFileReferences(fileName: string): TypeScript.ReferenceEntry[];
    getImplementationAtPosition(fileName: string, position: number): readonly TypeScript.ImplementationLocation[] | undefined;
    getApplicableRefactors(fileName: string, positionOrRange: number | TypeScript.TextRange, preferences: TypeScript.UserPreferences | undefined, triggerReason?: TypeScript.RefactorTriggerReason, kind?: string): TypeScript.ApplicableRefactorInfo[];
    getEditsForRefactor(fileName: string, formatOptions: TypeScript.FormatCodeSettings, positionOrRange: number | TypeScript.TextRange, refactorName: string, actionName: string, preferences: TypeScript.UserPreferences | undefined): TypeScript.RefactorEditInfo | undefined;
    organizeImports(args: TypeScript.OrganizeImportsArgs, formatOptions: TypeScript.FormatCodeSettings, preferences: TypeScript.UserPreferences | undefined): readonly TypeScript.FileTextChanges[];
    toggleLineComment(fileName: string, textRange: TypeScript.TextRange): TypeScript.TextChange[];
    toggleMultilineComment(fileName: string, textRange: TypeScript.TextRange): TypeScript.TextChange[];
    commentSelection(fileName: string, textRange: TypeScript.TextRange): TypeScript.TextChange[];
    uncommentSelection(fileName: string, textRange: TypeScript.TextRange): TypeScript.TextChange[];
    getRenameInfo(fileName: string, position: number, preferences: TypeScript.UserPreferences): TypeScript.RenameInfo;
    findRenameLocations(fileName: string, position: number, findInStrings: boolean, findInComments: boolean, providePrefixAndSuffixTextForRename?: boolean): readonly TypeScript.RenameLocation[] | undefined;
    getEditsForFileRename(oldFilePath: string, newFilePath: string, formatOptions: TypeScript.FormatCodeSettings, preferences: TypeScript.UserPreferences | undefined): readonly TypeScript.FileTextChanges[];
    getCodeFixesAtPosition(fileName: string, start: number, end: number, errorCodes: readonly number[], formatOptions: TypeScript.FormatCodeSettings, preferences: TypeScript.UserPreferences): readonly TypeScript.CodeFixAction[];
    getCombinedCodeFix(scope: TypeScript.CombinedCodeFixScope, fixId: {}, formatOptions: TypeScript.FormatCodeSettings, preferences: TypeScript.UserPreferences): TypeScript.CombinedCodeActions;
    getOutliningSpans(fileName: string): TypeScript.OutliningSpan[];
    getFormattingEditsAfterKeystroke(fileName: string, position: number, key: string, options: TypeScript.FormatCodeOptions | TypeScript.FormatCodeSettings): TypeScript.TextChange[];
    getFormattingEditsForDocument(fileName: string, options: TypeScript.FormatCodeOptions | TypeScript.FormatCodeSettings): TypeScript.TextChange[];
    getFormattingEditsForRange(fileName: string, start: number, end: number, options: TypeScript.FormatCodeOptions | TypeScript.FormatCodeSettings): TypeScript.TextChange[];
    getSignatureHelpItems(fileName: string, position: number, options: TypeScript.SignatureHelpItemsOptions): TypeScript.SignatureHelpItems | undefined;
    prepareCallHierarchy(fileName: string, position: number): TypeScript.CallHierarchyItem | TypeScript.CallHierarchyItem[] | undefined;
    provideCallHierarchyIncomingCalls(fileName: string, position: number): TypeScript.CallHierarchyIncomingCall[];
    provideCallHierarchyOutgoingCalls(fileName: string, position: number): TypeScript.CallHierarchyOutgoingCall[];
    getBraceMatchingAtPosition(fileName: string, position: number): TypeScript.TextSpan[];
    isValidBraceCompletionAtPosition(fileName: string, position: number, openingBrace: number): boolean;
    getNameOrDottedNameSpan(fileName: string, startPos: number, endPos: number): TypeScript.TextSpan | undefined;
    getDocumentHighlights(fileName: string, position: number, filesToSearch: string[]): TypeScript.DocumentHighlights[] | undefined;
    getEmitOutput(fileName: string, emitOnlyDtsFiles?: boolean, forceDtsEmit?: boolean): TypeScript.EmitOutput;
    getIndentationAtPosition(fileName: string, position: number, options: TypeScript.EditorOptions | TypeScript.EditorSettings): number;
    getNavigateToItems(searchValue: string, maxResultCount?: number, fileName?: string, excludeDtsFiles?: boolean): TypeScript.NavigateToItem[];
    getNavigationBarItems(fileName: string): TypeScript.NavigationBarItem[];
    getNavigationTree(fileName: string): TypeScript.NavigationTree;
    getSmartSelectionRange(fileName: string, position: number): TypeScript.SelectionRange;
    getSpanOfEnclosingComment(fileName: string, position: number, onlyMultiLine: boolean): TypeScript.TextSpan | undefined;
    getTodoComments(fileName: string, descriptors: TypeScript.TodoCommentDescriptor[]): TypeScript.TodoComment[];
    onDispose(callback: () => void): void;
    dispose(): void;
    private pick;
}
//# sourceMappingURL=TypescriptPluginService.d.ts.map