import { FastDomNode } from "../../../../../base/browser/fastDomNode.js";
import { IInstantiationService } from "../../../../../platform/instantiation/common/instantiation.js";
import { ViewConfigurationChangedEvent, ViewCursorStateChangedEvent, ViewDecorationsChangedEvent, ViewFlushedEvent, ViewLinesChangedEvent, ViewLinesDeletedEvent, ViewLinesInsertedEvent, ViewScrollChangedEvent, ViewZonesChangedEvent } from "../../../../common/viewEvents.js";
import { ViewContext } from "../../../../common/viewModel/viewContext.js";
import { RestrictedRenderingContext, RenderingContext } from "../../../view/renderingContext.js";
import { ViewController } from "../../../view/viewController.js";
import { AbstractEditContext } from "../editContext.js";
import { Position } from "../../../../common/core/position.js";
import { IVisibleRangeProvider } from "../textArea/textAreaEditContext.js";
import { IAccessibilityService } from "../../../../../platform/accessibility/common/accessibility.service.js";
import { IEditorAriaOptions } from "../../../editorBrowser.js";
export declare class NativeEditContext extends AbstractEditContext {
    private readonly _visibleRangeProvider;
    private readonly _accessibilityService;
    readonly textArea: FastDomNode<HTMLTextAreaElement>;
    readonly domNode: FastDomNode<HTMLDivElement>;
    private readonly _editContext;
    private readonly _screenReaderSupport;
    private _parent;
    private _decorations;
    private _primarySelection;
    private _textStartPositionWithinEditor;
    private _targetWindowId;
    private _scrollTop;
    private _scrollLeft;
    private readonly _focusTracker;
    private readonly _selectionChangeListener;
    constructor(ownerID: string, context: ViewContext, overflowGuardContainer: FastDomNode<HTMLElement>, viewController: ViewController, _visibleRangeProvider: IVisibleRangeProvider, instantiationService: IInstantiationService, _accessibilityService: IAccessibilityService);
    dispose(): void;
    setAriaOptions(options: IEditorAriaOptions): void;
    getLastRenderData(): Position | null;
    prepareRender(ctx: RenderingContext): void;
    render(ctx: RestrictedRenderingContext): void;
    onCursorStateChanged(e: ViewCursorStateChangedEvent): boolean;
    onConfigurationChanged(e: ViewConfigurationChangedEvent): boolean;
    onDecorationsChanged(e: ViewDecorationsChangedEvent): boolean;
    onFlushed(e: ViewFlushedEvent): boolean;
    onLinesChanged(e: ViewLinesChangedEvent): boolean;
    onLinesDeleted(e: ViewLinesDeletedEvent): boolean;
    onLinesInserted(e: ViewLinesInsertedEvent): boolean;
    onScrollChanged(e: ViewScrollChangedEvent): boolean;
    onZonesChanged(e: ViewZonesChangedEvent): boolean;
    onWillPaste(): void;
    writeScreenReaderContent(): void;
    isFocused(): boolean;
    focus(): void;
    refreshFocusState(): void;
    setEditContextOnDomNode(): void;
    private _updateDomAttributes;
    private _updateEditContext;
    private _emitTypeEvent;
    private _onType;
    private _getNewEditContextState;
    private _handleTextFormatUpdate;
    private _updateSelectionAndControlBounds;
    private _updateCharacterBounds;
    private _ensureClipboardGetsEditorSelection;
    private _setSelectionChangeListener;
}
