import { Disposable } from "../../../../base/common/lifecycle.js"; import { IObservable, ITransaction } from "../../../../base/common/observable.js"; import { URI } from "../../../../base/common/uri.js"; import { ContextKeyValue } from "../../../../platform/contextkey/common/contextkey.js"; import { IInstantiationService } from "../../../../platform/instantiation/common/instantiation.js"; import { Selection } from "../../../common/core/selection.js"; import { IDiffEditorViewModel } from "../../../common/editorCommon.js"; import { IModelService } from "../../../common/services/model.service.js"; import { RefCounted } from "../diffEditor/utils.js"; import { IDocumentDiffItem, IMultiDiffEditorModel } from "./model.js"; export declare class MultiDiffEditorViewModel extends Disposable { readonly model: IMultiDiffEditorModel; private readonly _instantiationService; private readonly _documents; private readonly _documentsArr; readonly isLoading: import("../../../../base/common/observable.js").IObservableWithChange; readonly items: IObservable; readonly focusedDiffItem: import("../../../../base/common/observable.js").IObservableWithChange; readonly activeDiffItem: IObservable & { clearCache(transaction: ITransaction): void; setCache(newValue: DocumentDiffItemViewModel | undefined, tx: ITransaction | undefined): void; }; waitForDiffs(): Promise; collapseAll(): void; expandAll(): void; get contextKeys(): Record | undefined; constructor(model: IMultiDiffEditorModel, _instantiationService: IInstantiationService); } export declare class DocumentDiffItemViewModel extends Disposable { private readonly _editorViewModel; private readonly _instantiationService; private readonly _modelService; /** * The diff editor view model keeps its inner objects alive. */ readonly diffEditorViewModelRef: RefCounted; get diffEditorViewModel(): IDiffEditorViewModel; readonly collapsed: import("../../../../base/common/observable.js").ISettableObservable; readonly lastTemplateData: import("../../../../base/common/observable.js").ISettableObservable<{ contentHeight: number; selections: Selection[] | undefined; }, void>; get originalUri(): URI | undefined; get modifiedUri(): URI | undefined; readonly isActive: IObservable; private readonly _isFocusedSource; readonly isFocused: import("../../../../base/common/observable.js").IObservableWithChange; setIsFocused(source: IObservable, tx: ITransaction | undefined): void; private readonly documentDiffItemRef; get documentDiffItem(): IDocumentDiffItem; readonly isAlive: import("../../../../base/common/observable.js").ISettableObservable; constructor(documentDiffItem: RefCounted, _editorViewModel: MultiDiffEditorViewModel, _instantiationService: IInstantiationService, _modelService: IModelService); getKey(): string; }