import { default as React } from 'react';
import { default as PropTypes } from 'prop-types';
/**
 * This component draws an angled path between a source and target. The
 * source and target are specified as props x1, y1 and x2, y2.
 *
 * The angle of the path is either left aligned (vertical, then horizontal)
 * or right aligned (horizontal, then vertical) as specified by curve
 * direction.  The offset and position prop are used to position the line
 * in relation to the endpoints for bi-directional purposes.

 * An arrow may be added by passing an 'arrow' prop of true and may be
 * customized by supplying arrowWidth and/or arrowHeight. It defaults to
 * being the width*1.5 wide and width*2 long.
 *
 * Stroke color and width can also be supplied.
 */
export class AngledEdge extends React.Component<any, any, any> {
    constructor(props: any);
    handleClick(e: any): void;
    rotateOffset(cx: any, x: any, y: any, a: any): number[];
    render(): import("react/jsx-runtime").JSX.Element;
}
export namespace AngledEdge {
    namespace propTypes {
        let offset: PropTypes.Requireable<number>;
        let width: PropTypes.Requireable<number>;
        let color: PropTypes.Requireable<string>;
        let curveDirection: PropTypes.Requireable<string>;
        let arrow: PropTypes.Requireable<boolean>;
        let position: PropTypes.Requireable<number>;
        let selected: PropTypes.Requireable<boolean>;
        let muted: PropTypes.Requireable<boolean>;
    }
    namespace defaultProps {
        let offset_1: number;
        export { offset_1 as offset };
        let width_1: number;
        export { width_1 as width };
        let color_1: string;
        export { color_1 as color };
        let curveDirection_1: string;
        export { curveDirection_1 as curveDirection };
        let arrow_1: boolean;
        export { arrow_1 as arrow };
        let position_1: number;
        export { position_1 as position };
        let selected_1: boolean;
        export { selected_1 as selected };
        let muted_1: boolean;
        export { muted_1 as muted };
    }
}
