import type { TSXResult } from '@astrojs/compiler/types'; import { CancellationToken, CodeAction, CodeActionContext, CompletionContext, DefinitionLink, Diagnostic, FoldingRange, Hover, InlayHint, Location, Position, Range, ReferenceContext, SemanticTokens, SignatureHelp, SignatureHelpContext, SymbolInformation, TextDocumentContentChangeEvent, WorkspaceEdit } from 'vscode-languageserver'; import type { ConfigManager } from '../../core/config'; import type { AstroDocument } from '../../core/documents'; import type { AppCompletionItem, AppCompletionList, OnWatchFileChangesParam, Plugin } from '../interfaces'; import { CompletionItemData } from './features/CompletionsProvider'; import type { LanguageServiceManager } from './LanguageServiceManager'; export declare class TypeScriptPlugin implements Plugin { __name: string; private configManager; private readonly languageServiceManager; private readonly codeActionsProvider; private readonly completionProvider; private readonly hoverProvider; private readonly fileReferencesProvider; private readonly definitionsProvider; private readonly typeDefinitionsProvider; private readonly implementationsProvider; private readonly referencesProvider; private readonly signatureHelpProvider; private readonly diagnosticsProvider; private readonly documentSymbolsProvider; private readonly inlayHintsProvider; private readonly semanticTokensProvider; private readonly foldingRangesProvider; private readonly renameProvider; private readonly ts; constructor(configManager: ConfigManager, languageServiceManager: LanguageServiceManager); doHover(document: AstroDocument, position: Position): Promise; prepareRename(document: AstroDocument, position: Position): Promise; rename(document: AstroDocument, position: Position, newName: string): Promise; getFoldingRanges(document: AstroDocument): Promise; getSemanticTokens(document: AstroDocument, range?: Range, cancellationToken?: CancellationToken): Promise; getDocumentSymbols(document: AstroDocument): Promise; getCodeActions(document: AstroDocument, range: Range, context: CodeActionContext, cancellationToken?: CancellationToken): Promise; getCompletions(document: AstroDocument, position: Position, completionContext?: CompletionContext, cancellationToken?: CancellationToken): Promise | null>; resolveCompletion(document: AstroDocument, completionItem: AppCompletionItem, cancellationToken?: CancellationToken): Promise>; getInlayHints(document: AstroDocument, range: Range): Promise; fileReferences(document: AstroDocument): Promise; getDefinitions(document: AstroDocument, position: Position): Promise; getTypeDefinitions(document: AstroDocument, position: Position): Promise; getImplementation(document: AstroDocument, position: Position): Promise; findReferences(document: AstroDocument, position: Position, context: ReferenceContext): Promise; getDiagnostics(document: AstroDocument, cancellationToken?: CancellationToken): Promise; onWatchFileChanges(onWatchFileChangesParas: OnWatchFileChangesParam[]): Promise; updateNonAstroFile(fileName: string, changes: TextDocumentContentChangeEvent[], text?: string): Promise; getSignatureHelp(document: AstroDocument, position: Position, context: SignatureHelpContext | undefined, cancellationToken?: CancellationToken): Promise; getTSXForDocument(document: AstroDocument): TSXResult; /** * @internal Public for tests only */ getSnapshotManager(fileName: string): Promise; private featureEnabled; }