import { IMainThreadDocumentsShape } from '../../../../common/vscode';
import { Uri } from '../../../../common/vscode/ext-types';
import { MirrorTextModel } from './mirror';
import type vscode from 'vscode';
export declare function setWordDefinitionFor(modeId: string, wordDefinition: RegExp | undefined): void;
export declare function getWordDefinitionFor(modeId: string): RegExp | undefined;
export declare function regExpLeadsToEndlessLoop(regexp: RegExp): boolean;
export declare class ExtHostDocumentData extends MirrorTextModel {
    #private;
    private _languageId;
    private _isDirty;
    private _document;
    private _textLines;
    private _isDisposed;
    constructor(proxy: IMainThreadDocumentsShape, uri: Uri, lines: string[], eol: string, languageId: string, versionId: number, isDirty: boolean);
    dispose(): void;
    equalLines(lines: string[]): boolean;
    get document(): vscode.TextDocument;
    _acceptLanguageId(newLanguageId: string): void;
    _getLanguageId(): string;
    _acceptIsDirty(isDirty: boolean): void;
    private _save;
    private _getTextInRange;
    private _lineAt;
    private _offsetAt;
    private _positionAt;
    private _validateRange;
    private _validatePosition;
    private _getWordRangeAtPosition;
}
//# sourceMappingURL=ext-data.host.d.ts.map