import { Position } from '../models/types';
import * as i0 from "@angular/core";
export declare class ConnectionSegmentInteractionService {
    private workflowState;
    private orthogonalRouter;
    private dragState;
    /**
     * Identifies if a point is near any connection segment
     */
    findSegmentAtPoint(point: Position): {
        connectionId: string;
        segmentIndex: number;
    } | null;
    /**
     * Starts dragging a connection segment
     */
    startDragging(connectionId: string, segmentIndex: number, point: Position): void;
    /**
     * Updates segment position during drag
     */
    updateDragging(point: Position): void;
    /**
     * Completes the drag operation
     */
    finishDragging(): void;
    /**
     * Returns whether a segment is currently being dragged
     */
    isDragging(): boolean;
    /**
     * Gets cursor style based on segment orientation
     */
    getSegmentCursor(connectionId: string, segmentIndex: number): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<ConnectionSegmentInteractionService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ConnectionSegmentInteractionService>;
}
