import { FastDomNode } from "../../base/browser/fastDomNode.js"; import { IMouseWheelEvent } from "../../base/browser/mouseEvent.js"; import { IContentWidget, IContentWidgetPosition, IEditorAriaOptions, IGlyphMarginWidget, IGlyphMarginWidgetPosition, IMouseTarget, IOverlayWidget, IOverlayWidgetPosition, IViewZoneChangeAccessor } from "./editorBrowser.js"; import { ICommandDelegate } from "./view/viewController.js"; import { ViewUserInputEvents } from "./view/viewUserInputEvents.js"; import { OverviewRuler } from "./viewParts/overviewRuler/overviewRuler.js"; import { IEditorConfiguration } from "../common/config/editorConfiguration.js"; import { ViewEventHandler } from "../common/viewEventHandler.js"; import * as viewEvents from "../common/viewEvents.js"; import { IViewModel } from "../common/viewModel.js"; import { IInstantiationService } from "../../platform/instantiation/common/instantiation.js"; import { IColorTheme } from "../../platform/theme/common/themeService.js"; import { IClipboardCopyEvent, IClipboardPasteEvent } from "./controller/editContext/clipboardUtils.js"; import { Event } from "../../base/common/event.js"; import { IUserInteractionService } from "../../platform/userInteraction/browser/userInteractionService.service.js"; export interface IContentWidgetData { widget: IContentWidget; position: IContentWidgetPosition | null; } export interface IOverlayWidgetData { widget: IOverlayWidget; position: IOverlayWidgetPosition | null; } export interface IGlyphMarginWidgetData { widget: IGlyphMarginWidget; position: IGlyphMarginWidgetPosition; } export declare class View extends ViewEventHandler { private readonly _instantiationService; private readonly _userInteractionService; private _widgetFocusTracker; private readonly _scrollbar; private readonly _context; private readonly _viewGpuContext?; private _selections; private readonly _viewLines; private readonly _viewLinesGpu?; private readonly _viewZones; private readonly _contentWidgets; private readonly _overlayWidgets; private readonly _glyphMarginWidgets; private readonly _viewCursors; private readonly _viewParts; private readonly _viewController; private _editContextEnabled; private _accessibilitySupport; private _editContext; private readonly _editContextClipboardListeners; private readonly _pointerHandler; private readonly _onWillCopy; readonly onWillCopy: Event; private readonly _onWillCut; readonly onWillCut: Event; private readonly _onWillPaste; readonly onWillPaste: Event; private readonly _linesContent; readonly domNode: FastDomNode; private readonly _overflowGuardContainer; private _shouldRecomputeGlyphMarginLanes; private _renderAnimationFrame; private _ownerID; constructor(editorContainer: HTMLElement, ownerID: string, commandDelegate: ICommandDelegate, configuration: IEditorConfiguration, colorTheme: IColorTheme, model: IViewModel, userInputEvents: ViewUserInputEvents, overflowWidgetsDomNode: HTMLElement | undefined, _instantiationService: IInstantiationService, _userInteractionService: IUserInteractionService); private _instantiateEditContext; private _updateEditContext; private _connectEditContextClipboardEvents; private _computeGlyphMarginLanes; private _createPointerHandlerHelper; private _createTextAreaHandlerHelper; private _applyLayout; private _getEditorClassName; handleEvents(events: viewEvents.ViewEvent[]): void; onConfigurationChanged(e: viewEvents.ViewConfigurationChangedEvent): boolean; onCursorStateChanged(e: viewEvents.ViewCursorStateChangedEvent): boolean; onDecorationsChanged(e: viewEvents.ViewDecorationsChangedEvent): boolean; onFocusChanged(e: viewEvents.ViewFocusChangedEvent): boolean; onThemeChanged(e: viewEvents.ViewThemeChangedEvent): boolean; dispose(): void; private _scheduleRender; private _flushAccumulatedAndRenderNow; private _getViewPartsToRender; private _createCoordinatedRendering; delegateVerticalScrollbarPointerDown(browserEvent: PointerEvent): void; delegateScrollFromMouseWheelEvent(browserEvent: IMouseWheelEvent): void; restoreState(scrollPosition: { scrollLeft: number; scrollTop: number; }): void; getOffsetForColumn(modelLineNumber: number, modelColumn: number): number; getLineWidth(modelLineNumber: number): number; resetLineWidthCaches(): void; getTargetAtClientPoint(clientX: number, clientY: number): IMouseTarget | null; createOverviewRuler(cssClassName: string): OverviewRuler; change(callback: (changeAccessor: IViewZoneChangeAccessor) => unknown): void; render(now: boolean, everything: boolean): void; writeScreenReaderContent(reason: string): void; focus(): void; isFocused(): boolean; isWidgetFocused(): boolean; refreshFocusState(): void; setAriaOptions(options: IEditorAriaOptions): void; addContentWidget(widgetData: IContentWidgetData): void; layoutContentWidget(widgetData: IContentWidgetData): void; removeContentWidget(widgetData: IContentWidgetData): void; addOverlayWidget(widgetData: IOverlayWidgetData): void; layoutOverlayWidget(widgetData: IOverlayWidgetData): void; removeOverlayWidget(widgetData: IOverlayWidgetData): void; addGlyphMarginWidget(widgetData: IGlyphMarginWidgetData): void; layoutGlyphMarginWidget(widgetData: IGlyphMarginWidgetData): void; removeGlyphMarginWidget(widgetData: IGlyphMarginWidgetData): void; }