import { Range } from '../model/range'; import { URI } from '../model/uri'; export interface TextEdit { range: Range; newText: string; } export declare abstract class TextEdit { /** * * @param text text on which the textEdit will be applied * @param textEdit * @returns {string} text with the applied textEdit */ static apply(text: string, textEdit: TextEdit): string; static apply(text: string, textEdits: TextEdit[]): string; } /** * A text edit with workspace context, combining a URI location with the edit operation. * * This interface uses composition to pair a text edit with its file location, * providing a self-contained unit for workspace-wide text modifications. */ export interface WorkspaceTextEdit { /** The URI of the file where this edit should be applied */ uri: URI; /** The text edit operation to perform */ edit: TextEdit; } export interface WorkspaceTextEditGroup { uri: URI; edits: TextEdit[]; } export declare abstract class WorkspaceTextEdit { static groupByUri(edits: WorkspaceTextEdit[]): WorkspaceTextEditGroup[]; } //# sourceMappingURL=text-edit.d.ts.map