import * as vscode from 'vscode'; import { TypeScriptServiceConfiguration } from '../configuration/configuration'; import { DiagnosticLanguage } from '../configuration/languageDescription'; import { TelemetryReporter } from '../logging/telemetry'; import { DiagnosticPerformanceData as TsDiagnosticPerformanceData } from '../tsServer/protocol/protocol'; import { Disposable } from '../utils/dispose'; export declare const enum DiagnosticKind { Syntax = 0, Semantic = 1, Suggestion = 2, RegionSemantic = 3 } interface DiagnosticPerformanceData extends TsDiagnosticPerformanceData { fileLineCount?: number; } export declare class DiagnosticsManager extends Disposable { private readonly _diagnostics; private readonly _settings; private readonly _currentDiagnostics; private readonly _pendingUpdates; private readonly _updateDelay; private readonly _diagnosticsTelemetryManager; constructor(owner: string, configuration: TypeScriptServiceConfiguration, telemetryReporter: TelemetryReporter, onCaseInsensitiveFileSystem: boolean); dispose(): void; reInitialize(): void; setValidate(language: DiagnosticLanguage, value: boolean): void; setEnableSuggestions(language: DiagnosticLanguage, value: boolean): void; updateDiagnostics(file: vscode.Uri, language: DiagnosticLanguage, kind: DiagnosticKind, diagnostics: ReadonlyArray, ranges: ReadonlyArray | undefined): void; configFileDiagnosticsReceived(file: vscode.Uri, diagnostics: ReadonlyArray): void; deleteAllDiagnosticsInFile(resource: vscode.Uri): void; deleteDiagnostic(resource: vscode.Uri, diagnostic: vscode.Diagnostic): void; getDiagnostics(file: vscode.Uri): ReadonlyArray; logDiagnosticsPerformanceTelemetry(performanceData: DiagnosticPerformanceData[]): void; private scheduleDiagnosticsUpdate; private updateCurrentDiagnostics; private rebuildAll; private rebuildFile; } export {}; //# sourceMappingURL=diagnostics.d.ts.map