import type { PointerEventState } from '@blockeditor/block-std'; import type { EdgelessTool as EdgelessTool } from '../../../../_common/utils/index.js'; import type { EdgelessPageBlockComponent } from '../../edgeless-page-block.js'; import type { EdgelessPageService } from '../../edgeless-page-service.js'; import type { SelectionArea } from '../../services/tools-manager.js'; import type { EdgelessBlockModel } from '../../type.js'; export declare abstract class EdgelessToolController { protected readonly _edgeless: EdgelessPageBlockComponent; protected _draggingArea: SelectionArea | null; protected _service: EdgelessPageService; enableHover: boolean; constructor(edgeless: EdgelessPageBlockComponent, service: EdgelessPageService); get draggingArea(): SelectionArea | null; protected get _surface(): import("../../../../index.js").SurfaceBlockComponent; protected get _page(): import("@blockeditor/store").Page; protected get _blocks(): EdgelessBlockModel[]; abstract tool: Tool; abstract onContainerPointerDown(e: PointerEventState): void; abstract onContainerDragStart(e: PointerEventState): void; abstract onContainerDragMove(e: PointerEventState): void; abstract onContainerDragEnd(e: PointerEventState): void; abstract onContainerClick(e: PointerEventState): void; abstract onContainerDblClick(e: PointerEventState): void; abstract onContainerTripleClick(e: PointerEventState): void; abstract onContainerMouseMove(e: PointerEventState): void; abstract onContainerMouseOut(e: PointerEventState): void; abstract onContainerContextMenu(e: PointerEventState): void; abstract onPressShiftKey(pressed: boolean): void; abstract beforeModeSwitch(prevMode: Tool): void; abstract afterModeSwitch(newMode: Tool): void; } //# sourceMappingURL=index.d.ts.map