@react-financial-charts/interactive
Version:
Interactive features for react-financial-charts
58 lines (57 loc) • 2.22 kB
TypeScript
import { strokeDashTypes } from "@react-financial-charts/core";
import * as React from "react";
export interface StraightLineProps {
readonly x1Value: any;
readonly x2Value: any;
readonly y1Value: any;
readonly y2Value: any;
readonly interactiveCursorClass?: string;
readonly strokeStyle: string;
readonly strokeWidth?: number;
readonly strokeDasharray?: strokeDashTypes;
readonly type: "XLINE" | "RAY" | "LINE";
readonly onEdge1Drag?: any;
readonly onEdge2Drag?: any;
readonly onDragStart?: (e: React.MouseEvent, moreProps: any) => void;
readonly onDrag?: (e: React.MouseEvent, moreProps: any) => void;
readonly onDragComplete?: (e: React.MouseEvent, moreProps: any) => void;
readonly onHover?: (e: React.MouseEvent, moreProps: any) => void;
readonly onUnHover?: (e: React.MouseEvent, moreProps: any) => void;
readonly defaultClassName?: string;
readonly r?: number;
readonly edgeFill?: string;
readonly edgeStroke?: string;
readonly edgeStrokeWidth?: number;
readonly withEdge?: boolean;
readonly tolerance?: number;
readonly selected?: boolean;
}
export declare class InteractiveStraightLine extends React.Component<StraightLineProps> {
static defaultProps: {
onEdge1Drag: () => void;
onEdge2Drag: () => void;
edgeStrokeWidth: number;
edgeStroke: string;
edgeFill: string;
r: number;
withEdge: boolean;
strokeWidth: number;
strokeDasharray: string;
children: () => void;
tolerance: number;
selected: boolean;
};
render(): JSX.Element;
private readonly isHover;
private readonly drawOnCanvas;
}
export declare function isHovering2(start: any, end: any, [mouseX, mouseY]: any, tolerance: any): boolean;
export declare function isHovering({ x1Value, y1Value, x2Value, y2Value, mouseXY, type, tolerance, xScale, yScale }: any): boolean;
export declare function getSlope(start: any, end: any): number | undefined;
export declare function getYIntercept(m: any, end: any): any;
export declare function generateLine({ type, start, end, xScale, yScale }: any): {
x1: any;
y1: any;
x2: any;
y2: any;
};