import * as React from "react";
export interface EachEquidistantChannelProps {
    readonly startXY: number[];
    readonly endXY: number[];
    readonly dy?: number;
    readonly interactive: boolean;
    readonly selected: boolean;
    readonly hoverText: {
        readonly enable: boolean;
        readonly fontFamily: string;
        readonly fontSize: number;
        readonly fill: string;
        readonly text: string;
        readonly bgFill: string;
        readonly bgOpacity: number;
        readonly bgWidth: number | string;
        readonly bgHeight: number | string;
    };
    readonly appearance: {
        readonly stroke: string;
        readonly strokeWidth: number;
        readonly fill: string;
        readonly edgeStroke: string;
        readonly edgeFill: string;
        readonly edgeFill2: string;
        readonly edgeStrokeWidth: number;
        readonly r: number;
    };
    readonly index?: number;
    readonly onDrag: (e: React.MouseEvent, index: number | undefined, moreProps: any) => void;
    readonly onDragComplete?: (e: React.MouseEvent, moreProps: any) => void;
}
interface EachEquidistantChannelState {
    hover: boolean;
}
export declare class EachEquidistantChannel extends React.Component<EachEquidistantChannelProps, EachEquidistantChannelState> {
    static defaultProps: {
        yDisplayFormat: (d: number) => string;
        interactive: boolean;
        selected: boolean;
        onDrag: () => void;
        hoverText: {
            enable: boolean;
        };
    };
    private dragStart;
    private isHover;
    private saveNodeType;
    constructor(props: EachEquidistantChannelProps);
    render(): JSX.Element;
    private readonly getEdgeCircle;
    private readonly handleChannelHeightChange;
    private readonly handleLine1Edge2Drag;
    private readonly handleLine1Edge1Drag;
    private readonly handleChannelDrag;
    private readonly handleDragStart;
    private readonly handleHover;
}
export {};
