import { CancellationToken, WorkspaceEdit } from 'vscode-languageserver'; import { ProgramView } from '../common/extensibility'; import { Position, Range } from '../common/textRange'; import { Uri } from '../common/uri/uri'; import { ReferencesResult } from '../languageService/referencesProvider'; export declare class RenameProvider { private _program; private _fileUri; private _position; private _token; private readonly _parseResults; constructor(_program: ProgramView, _fileUri: Uri, _position: Position, _token: CancellationToken); canRenameSymbol(isDefaultWorkspace: boolean, isUntitled: boolean): Range | null; renameSymbol(newName: string, isDefaultWorkspace: boolean, isUntitled: boolean): WorkspaceEdit | null; static getRenameSymbolMode(program: ProgramView, fileUri: Uri, referencesResult: ReferencesResult, isDefaultWorkspace: boolean, isUntitled: boolean): "none" | "singleFileMode" | "multiFileMode"; private _getReferenceResult; }