import { StreamProcessor } from "../../basic/StreamProcessor";
import { LineEndRes } from "../../detector/LineEndPointDetector";
import { InteractiveEvent } from "../../../../common";
import { AppEventContext } from "../../../../app";
import { AbsDragLineEndHandler } from "./handler/AbsDragLineEndHandler";
import { ConnectInfo } from "../../../../graphics/base/NodeConnectEndType";
import { AlignWorker } from "../../align/AlignWorker";
import { RelatedGroupBaseWorker } from "../../../../ability/group/RelatedGroupBaseWorker";
import { LineTextWorker } from "../../../../ability/line/LineTextWorker";
interface ConnectEndProp {
    connectInfo: ConnectInfo;
    isStart: boolean;
}
export declare class DragLineEndProcessor extends StreamProcessor {
    res: LineEndRes | null;
    connectEndProp: ConnectEndProp;
    alignWorker: AlignWorker;
    groupBaseWorker: RelatedGroupBaseWorker;
    lineTextWorker: LineTextWorker;
    handlers: AbsDragLineEndHandler[];
    currentHandler: AbsDragLineEndHandler | null;
    selectHandler(): void;
    computeConnectProp(event: InteractiveEvent, ctx: AppEventContext): void;
    onStart(event: InteractiveEvent, ctx: AppEventContext): void;
    onMove(event: InteractiveEvent, ctx: AppEventContext): void;
    onUp(event: InteractiveEvent, ctx: AppEventContext): void;
    private getConnectInfo;
    private computeEndType;
    private addConnectInfoAndSendMsg;
    removeConnectInfoAndSendMsg(_: InteractiveEvent, ctx: AppEventContext): void;
}
export {};
//# sourceMappingURL=DragLineEndProcessor.d.ts.map