import { Disposable } from "../../../../../../base/common/lifecycle.js";
import { IObservable, ISettableObservable } from "../../../../../../base/common/observable.js";
import { IInstantiationService } from "../../../../../../platform/instantiation/common/instantiation.js";
import { ICodeEditor } from "../../../../../browser/editorBrowser.js";
import { InlineEditsGutterIndicator } from "./components/gutterIndicatorView.js";
import { GhostTextIndicator, InlineEditHost, InlineEditModel } from "./inlineEditsModel.js";
import { InlineEditsCollapsedView } from "./inlineEditsViews/inlineEditsCollapsedView.js";
import { InlineEditsDeletionView } from "./inlineEditsViews/inlineEditsDeletionView.js";
import { InlineEditsInsertionView } from "./inlineEditsViews/inlineEditsInsertionView.js";
import { InlineEditsLineReplacementView } from "./inlineEditsViews/inlineEditsLineReplacementView.js";
import { InlineEditsWordReplacementView } from "./inlineEditsViews/inlineEditsWordReplacementView.js";
import { OriginalEditorInlineDiffView } from "./inlineEditsViews/originalEditorInlineDiffView.js";
export declare class InlineEditsView extends Disposable {
    private readonly _editor;
    private readonly _host;
    private readonly _model;
    private readonly _ghostTextIndicator;
    private readonly _focusIsInMenu;
    private readonly _instantiationService;
    private readonly _editorObs;
    private readonly _useCodeShifting;
    private readonly _renderSideBySide;
    private readonly _useMultiLineGhostText;
    private readonly _tabAction;
    private _previousView;
    constructor(_editor: ICodeEditor, _host: IObservable<InlineEditHost | undefined>, _model: IObservable<InlineEditModel | undefined>, _ghostTextIndicator: IObservable<GhostTextIndicator | undefined>, _focusIsInMenu: ISettableObservable<boolean>, _instantiationService: IInstantiationService);
    private readonly _constructorDone;
    private readonly _uiState;
    private readonly _previewTextModel;
    private readonly _indicatorCyclicDependencyCircuitBreaker;
    protected readonly _indicator: IObservable<InlineEditsGutterIndicator | undefined>;
    private readonly _inlineEditsIsHovered;
    private readonly _gutterIndicatorOffset;
    private readonly _sideBySide;
    protected readonly _deletion: InlineEditsDeletionView;
    protected readonly _insertion: InlineEditsInsertionView;
    private readonly _inlineDiffViewState;
    protected readonly _inlineCollapsedView: InlineEditsCollapsedView;
    protected readonly _inlineDiffView: OriginalEditorInlineDiffView;
    protected readonly _wordReplacementViews: IObservable<readonly InlineEditsWordReplacementView[]>;
    protected readonly _lineReplacementView: InlineEditsLineReplacementView;
    private getCacheId;
    private determineView;
    private determineRenderState;
    private _viewHasBeenShownLongerThan;
}
