import * as React from 'react';
import { IActionFunctions, SelectType } from './GraphContext';
export interface IProps {
    defaultTdomain: [number, number];
    defaultYdomain?: [number, number] | [number, number][];
    /**
     * Optional, allows for external control of the time domain.
     */
    tDomain?: [number, number];
    defaultMouseMode?: SelectType;
    yDomain?: 'Manual' | 'AutoValue' | 'HalfAutoValue';
    hideYAxis?: boolean;
    hideXAxis?: boolean;
    limitZoom?: boolean;
    height: number;
    width: number;
    showGrid?: boolean;
    XAxisType?: 'time' | 'log' | 'value';
    /**
     * Flag to enable all zooming features.
     */
    zoom?: boolean;
    /**
     * Flag to enable zooming on the y-axis.
     */
    yZoom?: boolean;
    /**
     * Flag to enable zooming on the x-axis.
     */
    xZoom?: boolean;
    pan?: boolean;
    Tmin?: number;
    Tmax?: number;
    showBorder?: boolean;
    Tlabel?: string;
    Ylabel?: string | string[];
    holdMenuOpen?: boolean;
    menuLocation?: 'left' | 'right' | 'hide';
    legend?: 'hidden' | 'bottom' | 'right';
    showMouse?: boolean | 'horizontal' | 'vertical' | 'none';
    legendHeight?: number;
    legendWidth?: number;
    useMetricFactors?: boolean;
    showDateOnTimeAxis?: boolean;
    cursorOverride?: string;
    onSelect?: (x: number, y: number[], actions: IActionFunctions) => void;
    onCapture?: (legendHeightRequired: number) => string | undefined;
    onCaptureComplete?: () => void;
    onDataInspect?: (tDomain: [number, number]) => void;
    onTDomainChange?: (tDomain: [number, number]) => void;
    Ymin?: number | number[];
    Ymax?: number | number[];
    snapMouse?: boolean;
    useUTC?: boolean;
}
declare const Plot: (props: React.PropsWithChildren<IProps>) => JSX.Element;
export default Plot;
