/** * Copyright (c) 2019-present Houfeng * @author Houfeng */ import React from "react"; import { Graph } from "../Graph"; import { IMoveableProps } from "./IMoveableProps"; import { IPoint, Rect } from "vector-helper"; import { HotkeysEvent } from "../Keymaster"; import { ITouchEvent } from "mota-touch"; import { SceneModel } from "../Scene"; import { ShapeUpdateContext } from "../CommandMgr"; export interface ITranslateInfo { translateX: number; translateY: number; } export declare class Moveable extends Graph { model: SceneModel; render(): JSX.Element; onKeyboardMove: (event: KeyboardEvent, info: HotkeysEvent) => void; updateContext: ShapeUpdateContext; protected startPoint: IPoint; protected onMouseDown: (event: ITouchEvent) => void; protected onMouseMove: (event: ITouchEvent) => void; protected onMouseUp: (event: ITouchEvent) => void; protected updateTranslate(event: React.MouseEvent | ITouchEvent): ITranslateInfo; protected updatePosition(): void; protected clientRects: Rect[]; protected activeRect: Rect; protected cacheGuideInfo(): void; protected clearGuideInfo(): void; protected updateGuideLines(translateInfo: ITranslateInfo): void; }