import type { SurfaceSelection } from '@blockeditor/block-std'; import { type UIEventDispatcher } from '@blockeditor/block-std'; import { DisposableGroup, Slot } from '@blockeditor/global/utils'; import { type EdgelessTool } from '../../../_common/utils/index.js'; import type { Bound } from '../../../surface-block/utils/bound.js'; import type { EdgelessToolController } from '../controllers/tools/index.js'; import type { EdgelessPageBlockComponent } from '../edgeless-page-block.js'; import type { EdgelessPageService } from '../edgeless-page-service.js'; import type { EdgelessModel } from '../type.js'; import type { EdgelessSelectionState } from './selection-manager.js'; export interface EdgelessHoverState { rect: Bound; content: EdgelessModel; } export interface SelectionArea { start: DOMPoint; end: DOMPoint; } export declare class EdgelessToolsManager { readonly container: EdgelessPageBlockComponent; protected readonly dispatcher: UIEventDispatcher; private _edgelessTool; private _controllers; /** Latest mouse position in view coords */ private _lastMousePos; private _rightClickTimer; private _shiftKey; private _dragging; edgelessToolUpdated: Slot; get dragging(): boolean; get selection(): import("./selection-manager.js").EdgelessSelectionManager; get lastMousePos(): { x: number; y: number; }; get edgelessTool(): EdgelessTool; set edgelessTool(mode: EdgelessTool); get currentController(): EdgelessToolController; get draggingArea(): DOMRect | null; get shiftKey(): boolean; set shiftKey(pressed: boolean); get page(): import("@blockeditor/store").Page; get service(): EdgelessPageService; protected readonly _disposables: DisposableGroup; constructor(container: EdgelessPageBlockComponent, dispatcher: UIEventDispatcher); private _updateLastMousePos; private _initMouseAndWheelEvents; private _add; private _onContainerDragStart; private _onContainerDragMove; private _onContainerDragEnd; private _onContainerClick; private _onContainerDblClick; private _onContainerTripleClick; private _onContainerPointerMove; private _onContainerPointerOut; private _onContainerContextMenu; private _onContainerPointerDown; private _onContainerPointerUp; getHoverState(): EdgelessHoverState | null; setEdgelessTool: (edgelessTool: EdgelessTool, state?: EdgelessSelectionState | SurfaceSelection[]) => void; switchToDefaultMode(state: EdgelessSelectionState): void; clear(): void; dispose(): void; } //# sourceMappingURL=tools-manager.d.ts.map