import * as React from 'react';
import './EchartsConfig';
import ReactEChartsCore from 'echarts-for-react/lib/core';
import { CategorizedChartProps } from './CategorizedChartProps';
import { IconId } from '../icon/Icon';
import { IncrementLabelType } from '../../propTypes/IncrementLabel';
export declare const lineChartYAxisPositions: readonly ["left", "right"];
type LineChartYAxisPosition = (typeof lineChartYAxisPositions)[number];
export type LineChartProps = CategorizedChartProps & {
    /**
     * The series to display in the chart.
     */
    series: {
        /**
         * The name of the series.
         */
        name: string;
        comparisonName?: string;
        /**
         * The values to display in the chart for this series.
         * The values must be in the same order and quantity as the categories.
         */
        data: {
            /**
             * The main value to display in the chart for this serie.
             */
            value: number;
            /**
             * The value as text to be shown in tooltip
             */
            tooltipValue: string;
            /**
             * The category label to be shown in tooltip. If not supplied, it will use the X axis label
             */
            tooltipCategoryLabel?: string;
            /**
             * The type of increment to format the styles of increment in tooltip
             */
            tooltipIncrementType?: IncrementLabelType;
            /**
             * The label to be used as increment in tooltip
             */
            tooltipIncrementLabel?: string;
            /**
             * The comparison value to be used in this series. It will display a second line with dashed style.
             */
            comparisonValue?: number;
            /**
             * The value as text for comparison value to be shown in tooltip
             */
            tooltipComparisonValue?: string;
        }[];
        /**
         * The color to use for the main serie.
         */
        color: string;
        /**
         * The identifier and text of the group for this serie to be used in tooltip
         */
        tooltipGroupTitle?: string;
        tooltipIconId?: IconId;
        /**
         * The yAxis for this serie
         */
        yAxisIndex: number;
        /**
         * The area color. With color will be a solid color. With startColor and endColor will be gradient color.
         */
        areaColor?: {
            color: string;
            startColor?: never;
            endColor?: never;
        } | {
            color?: never;
            startColor: {
                offset: number;
                color: string;
            };
            endColor: {
                offset: number;
                color: string;
            };
        };
    }[];
    /**
     * Option to disable the display of series names.
     */
    disableSeriesNames?: boolean;
    /**
     * Option to disable the display of axes.
     */
    disableAxes?: boolean;
    /**
     * Option to disable split lines on X axe.
     */
    disableSplitLine?: boolean;
    /**
     * Font size to format the label of the Y axis.
     */
    axisFontSize?: string;
    /**
     * Color to format the label of the Y axis.
     */
    axisFontColor?: string;
    /**
     * Option to set the position of the Y axis when there is only one.
     */
    yAxisPosition?: LineChartYAxisPosition;
    /**
     * Rotation angle in degrees for X-axis labels to prevent overlapping.
     * Positive values rotate to the right, negative values rotate to the left.
     */
    xAxisLabelRotationDegrees?: number;
    /**
     * If true, all labels will be displayed
     * @default false
     */
    forceAllXLabels?: boolean;
    /**
     * Margin to add between labels and x axis. It will be in px
     */
    xAxisMargin?: number;
    /**
     * Margin to add between labels and Y axis. It will be in px
     */
    yAxisMargin?: number;
    /**
     * If true, the chart stretches to use the full width,
     * even when it has only a few values.
     * @default false
     */
    stretch?: boolean;
    /**
     * Reference to chart component
     */
    chartRef?: React.RefObject<ReactEChartsCore>;
    /**
     * Set grid internal margin
     */
    gridMargin?: {
        left?: number;
        top?: number;
        bottom?: number;
        right?: number;
    };
};
/**
 * A line chart component to display numeric data grouped by categories and series.
 * Commonly, categories use to be sorted dates.
 */
declare const LineChart: ({ style, isLoading, series, categories, yAxisLabelFormatter, ySecondaryAxisLabelFormatter, onClick, disableSeriesNames, disableAxes, disableSplitLine, axisFontSize, axisFontColor, yAxisPosition, xAxisLabelRotationDegrees, xAxisMargin, yAxisMargin, stretch, forceAllXLabels, chartRef, gridMargin }: LineChartProps) => import("react/jsx-runtime").JSX.Element;
export default LineChart;
