import { Disposable } from "../../../../../../../base/common/lifecycle.js";
import { IObservable, ISettableObservable } from "../../../../../../../base/common/observable.js";
import { IAccessibilityService } from "../../../../../../../platform/accessibility/common/accessibility.service.js";
import { IInstantiationService } from "../../../../../../../platform/instantiation/common/instantiation.js";
import { IStorageService } from "../../../../../../../platform/storage/common/storage.service.js";
import { IThemeService } from "../../../../../../../platform/theme/common/themeService.service.js";
import { ObservableCodeEditor } from "../../../../../../browser/observableCodeEditor.js";
import { HoverService } from "../../../../../../browser/services/hoverService/hoverService.js";
import { LineRange } from "../../../../../../common/core/lineRange.js";
import { InlineEditHost } from "../inlineEditsModel.js";
import { IInlineEditModel } from "../inlineEditsViewInterface.js";
export declare class InlineEditsGutterIndicator extends Disposable {
    private readonly _editorObs;
    private readonly _originalRange;
    private readonly _verticalOffset;
    private readonly _host;
    private readonly _model;
    private readonly _isHoveringOverInlineEdit;
    private readonly _focusIsInMenu;
    private readonly _hoverService;
    private readonly _instantiationService;
    private readonly _storageService;
    private readonly _accessibilityService;
    private get model();
    private readonly _activeCompletionId;
    private readonly _gutterIndicatorStyles;
    private readonly _isHoveredOverInlineEditDebounced;
    private readonly _newUserAnimationDisposable;
    private readonly _firstToSecondTimeUserDisposable;
    private readonly _secondTimeToActiveUserDisposable;
    private get _newUserType();
    private set _newUserType(value);
    constructor(_editorObs: ObservableCodeEditor, _originalRange: IObservable<LineRange | undefined>, _verticalOffset: IObservable<number>, _host: IObservable<InlineEditHost | undefined>, _model: IObservable<IInlineEditModel | undefined>, _isHoveringOverInlineEdit: IObservable<boolean>, _focusIsInMenu: ISettableObservable<boolean>, _hoverService: HoverService, _instantiationService: IInstantiationService, _storageService: IStorageService, _accessibilityService: IAccessibilityService, themeService: IThemeService);
    private setupNewUserExperience;
    private _triggerAnimation;
    private readonly _originalRangeObs;
    private readonly _state;
    private readonly _stickyScrollController;
    private readonly _stickyScrollHeight;
    private readonly _lineNumberToRender;
    private readonly _layout;
    private readonly _iconRef;
    private readonly _hoverVisible;
    readonly isHoverVisible: IObservable<boolean>;
    private readonly _isHoveredOverIcon;
    private readonly _isHoveredOverIconDebounced;
    private _showHover;
    private readonly _tabAction;
    private readonly _indicator;
}
