import { DocumentId } from '../../../platform/inlineEdits/common/dataTypes/documentId';
import { LintOptions } from '../../../platform/inlineEdits/common/dataTypes/xtabPromptOptions';
import { IXtabHistoryEntry } from '../../../platform/inlineEdits/common/workspaceEditTracker/nesXtabHistoryTracker';
import { ILanguageDiagnosticsService } from '../../../platform/languages/common/languageDiagnosticsService';
import { Diagnostic } from '../../../util/common/test/shims/vscodeTypesShim';
import { CurrentDocument } from './xtabCurrentDocument';
export interface LintDiagnosticsContext {
    readonly diagnostics: readonly Diagnostic[];
    readonly cursorLineNumber: number;
}
export declare class LintErrors {
    private readonly _documentId;
    private readonly _document;
    private readonly _langDiagService;
    private readonly _xtabHistory?;
    private _previousFormttedDiagnostics;
    constructor(_documentId: DocumentId, _document: CurrentDocument, _langDiagService: ILanguageDiagnosticsService, _xtabHistory?: readonly IXtabHistoryEntry[] | undefined);
    private _diagnostics;
    private _getRelevantDiagnostics;
    getFormattedLintErrors(options: LintOptions): string;
    /**
     * Collects URIs of the N most recently edited/viewed files from xtab history,
     * excluding the current document. Files are selected in recency order.
     */
    private _collectRecentFileUris;
    /**
     * Collects diagnostics from recent files, maintaining the file recency order.
     * Within each file, diagnostics are sorted by line number.
     */
    private _getRecentFileDiagnostics;
    lineNumberInPreviousFormattedPrompt(options: LintOptions, lineNumber: number): boolean;
    getData(): string;
}
//# sourceMappingURL=lintErrors.d.ts.map