import { EChartsType } from 'echarts';
import { TooltipProps } from '@material-ui/core';
export type BrushEndEvent = {
    areas: [
        {
            brushType: 'rect';
            coordRange: [[xMin: number, xMax: number], [yMin: number, yMax: number]];
        }
    ];
    type: 'brushend';
};
export type DataZoomEvent = {
    start?: number;
    end?: number;
    type: 'datazoom';
    batch?: {
        start?: number;
        end?: number;
        startValue?: number;
        endValue?: number;
        type: 'datazoom';
    }[];
};
export type AxisRange = {
    x: {
        start: number;
        end: number;
    };
    y: {
        start: number;
        end: number;
    };
};
export interface ChartWrapperProps {
    containerClassName?: string;
    customToolboxContainerClass?: string;
    onDataZoom?: (newRange: AxisRange) => void;
    toolboxProps?: Pick<ToolboxProps, 'customToolboxContainerClass' | 'controls'>;
}
export type ToolboxProps = {
    handleTogglePane: (isEnabled: boolean) => void;
    isPaneEnabled: boolean;
    handleToggleBrush: (isEnabled: boolean) => void;
    isBrushEnabled: boolean;
    isZoomed: boolean;
    chart: EChartsType;
    customToolboxContainerClass?: string;
    handleZoomReset: () => void;
    handleZoomOut: () => void;
    handleZoomIn: () => void;
    controls?: {
        zoomOut?: {
            disabled?: boolean;
        };
        zoomIn?: {
            disabled?: boolean;
        };
        pane?: {
            disabled?: boolean;
        };
        brush?: {
            disabled?: boolean;
        };
        resetZoom?: {
            disabled?: boolean;
        };
    };
};
export type ToolboxButtonProps = {
    title: string;
    icon: JSX.Element;
    onClick: () => void;
    disabled?: boolean;
    placement?: TooltipProps['placement'];
    className?: string;
};
export type SeriesDataItem = {
    x: number;
    y: number;
} | [x: number, y: number];
//# sourceMappingURL=types.d.ts.map