import * as React from "react";
export interface MouseLocationIndicatorProps {
    readonly enabled: boolean;
    readonly snap: boolean;
    readonly shouldDisableSnap: (e: React.MouseEvent) => boolean;
    readonly snapTo?: (datum: any) => number | number[];
    readonly onMouseMove: (e: React.MouseEvent, xyValue: number[], moreProps: any) => void;
    readonly onMouseDown: (e: React.MouseEvent, xyValue: number[], moreProps: any) => void;
    readonly onClick: (e: React.MouseEvent, xyValue: number[], moreProps: any) => void;
    readonly r: number;
    readonly stroke: string;
    readonly strokeWidth: number;
    readonly opacity: number;
    readonly disablePan: boolean;
}
export declare class MouseLocationIndicator extends React.Component<MouseLocationIndicatorProps> {
    static defaultProps: {
        onMouseMove: () => void;
        onMouseDown: () => void;
        onClick: () => void;
        shouldDisableSnap: any;
        stroke: string;
        strokeWidth: number;
        opacity: number;
        disablePan: boolean;
    };
    private mutableState;
    render(): JSX.Element;
    private readonly xy;
    private readonly handleClick;
    private readonly handleMouseDown;
    private readonly handleMousePosChange;
    private readonly drawOnCanvas;
}
