import { FSMImpl } from "../../fsm/FSMImpl"; import { InteractionBase } from "../InteractionBase"; import { SrcTgtTouchDataImpl } from "../SrcTgtTouchDataImpl"; import type { SrcTgtPointsData } from "../../../api/interaction/SrcTgtPointsData"; import type { TouchData } from "../../../api/interaction/TouchData"; import type { Logger } from "../../../api/logging/Logger"; import type { CancellingState } from "../../fsm/CancellingState"; import type { StdState } from "../../fsm/StdState"; export interface TouchDnDFSMHandler { onTouch(event: TouchEvent): void; onMove(event: TouchEvent): void; onRelease(event: TouchEvent): void; } export declare class TouchDnDFSM extends FSMImpl { protected touchID: number | undefined; protected readonly cancellable: boolean; protected readonly movementRequired: boolean; protected readonly cancelled: CancellingState; protected readonly moved: StdState; protected readonly touched: StdState; constructor(cancellable: boolean, logger: Logger, dataHandler: TouchDnDFSMHandler, movementRequired?: boolean); protected buildFSM(dataHandler: TouchDnDFSMHandler): void; getTouchId(): number | undefined; reinit(): void; } export declare class OneTouchDnDFSM extends TouchDnDFSM { constructor(cancellable: boolean, logger: Logger, dataHandler: TouchDnDFSMHandler); protected buildFSM(dataHandler: TouchDnDFSMHandler): void; } export declare class TouchDnD extends InteractionBase, SrcTgtTouchDataImpl> { constructor(logger: Logger, cancellable: boolean, fsm?: OneTouchDnDFSM, name?: string); private setTgtData; }