import { ChangeAnnotation, TextEdit, WorkspaceEdit } from 'vscode-languageserver'; import { AnalyzerService } from '../analyzer/service'; import { FileEditAction, FileEditActions, TextEditAction } from '../common/editAction'; import { EditableProgram, SourceFileInfo } from './extensibility'; import { ReadOnlyFileSystem } from './fileSystem'; import { TextRange } from './textRange'; import { TextRangeCollection } from './textRangeCollection'; import { Uri } from './uri/uri'; export declare function convertToTextEdits(editActions: TextEditAction[]): TextEdit[]; export declare function convertToFileTextEdits(fileUri: Uri, editActions: TextEditAction[]): FileEditAction[]; export declare function convertToWorkspaceEdit(fs: ReadOnlyFileSystem, edits: FileEditAction[]): WorkspaceEdit; export declare function convertToWorkspaceEdit(fs: ReadOnlyFileSystem, edits: FileEditActions): WorkspaceEdit; export declare function convertToWorkspaceEdit(fs: ReadOnlyFileSystem, edits: FileEditActions, changeAnnotations: { [id: string]: ChangeAnnotation; }, defaultAnnotationId: string): WorkspaceEdit; export declare function appendToWorkspaceEdit(fs: ReadOnlyFileSystem, edits: FileEditAction[], workspaceEdit: WorkspaceEdit): void; export declare function applyTextEditsToString(edits: TextEditAction[], lines: TextRangeCollection, originalText: string): string; export declare function applyWorkspaceEdit(program: EditableProgram, edits: WorkspaceEdit, filesChanged: Map): void; export declare function applyDocumentChanges(program: EditableProgram, fileInfo: SourceFileInfo, edits: TextEdit[]): void; export declare function generateWorkspaceEdit(fs: ReadOnlyFileSystem, originalService: AnalyzerService, clonedService: AnalyzerService, filesChanged: Map): WorkspaceEdit;