import * as React from "react";
interface EquidistantChannelProps {
    readonly enabled: boolean;
    readonly onStart: () => void;
    readonly onComplete: (e: React.MouseEvent, newChannels: any[], moreProps: any) => void;
    readonly onSelect: (e: React.MouseEvent, interactives: any[], moreProps: any) => void;
    readonly currentPositionStroke?: string;
    readonly currentPositionStrokeWidth?: number;
    readonly currentPositionOpacity?: number;
    readonly currentPositionRadius?: number;
    readonly hoverText: object;
    readonly channels: any[];
    readonly appearance: {
        readonly stroke: string;
        readonly strokeOpacity: number;
        readonly strokeWidth: number;
        readonly fill: string;
        readonly fillOpacity: number;
        readonly edgeStroke: string;
        readonly edgeFill: string;
        readonly edgeFill2: string;
        readonly edgeStrokeWidth: number;
        readonly r: number;
    };
}
interface EquidistantChannelState {
    current?: any;
    override?: any;
}
export declare class EquidistantChannel extends React.Component<EquidistantChannelProps, EquidistantChannelState> {
    static defaultProps: {
        onSelect: () => void;
        currentPositionStroke: string;
        currentPositionOpacity: number;
        currentPositionStrokeWidth: number;
        currentPositionRadius: number;
        hoverText: {
            enable: boolean;
            bgHeight: number;
            bgWidth: number;
            text: string;
            fontFamily: string;
            fontSize: number;
            fill: string;
            bgFill: string;
            bgOpacity: number;
        };
        channels: never[];
        appearance: {
            stroke: string;
            strokeOpacity: number;
            strokeWidth: number;
            fill: string;
            fillOpacity: number;
            edgeStroke: string;
            edgeFill: string;
            edgeFill2: string;
            edgeStrokeWidth: number;
            r: number;
        };
    };
    private terminate;
    private saveNodeType;
    private getSelectionState;
    private mouseMoved;
    constructor(props: EquidistantChannelProps);
    render(): JSX.Element;
    private readonly handleDragChannel;
    private readonly handleDragChannelComplete;
    private readonly handleStart;
    private readonly handleEnd;
    private readonly handleDrawChannel;
}
export {};
