import * as React from 'react';
import { SlotComponentProps } from '@mui/base/utils';
import { HighlightScope } from '../context/HighlightProvider';
export interface LineElementClasses {
    /** Styles applied to the root element. */
    root: string;
    /** Styles applied to the root element when higlighted. */
    highlighted: string;
    /** Styles applied to the root element when faded. */
    faded: string;
}
export type LineElementClassKey = keyof LineElementClasses;
interface LineElementOwnerState {
    id: string;
    color: string;
    isFaded: boolean;
    isHighlighted: boolean;
    classes?: Partial<LineElementClasses>;
}
export declare function getLineElementUtilityClass(slot: string): string;
export declare const lineElementClasses: LineElementClasses;
export declare const LineElementPath: import("@emotion/styled").StyledComponent<import("@mui/system").MUIStyledCommonProps<import("@mui/material/styles").Theme> & {
    ownerState: LineElementOwnerState;
}, Pick<React.SVGProps<SVGPathElement>, keyof React.SVGProps<SVGPathElement>>, {}>;
export type LineElementProps = Omit<LineElementOwnerState, 'isFaded' | 'isHighlighted'> & React.ComponentPropsWithoutRef<'path'> & {
    highlightScope?: Partial<HighlightScope>;
    /**
     * The props used for each component slot.
     * @default {}
     */
    slotProps?: {
        line?: SlotComponentProps<'path', {}, LineElementOwnerState>;
    };
    /**
     * Overridable component slots.
     * @default {}
     */
    slots?: {
        /**
         * The component that renders the root.
         * @default LineElementPath
         */
        line?: React.ElementType;
    };
};
/**
 * Demos:
 *
 * - [Lines](https://mui.com/x/react-charts/lines/)
 * - [Line demonstration](https://mui.com/x/react-charts/line-demo/)
 *
 * API:
 *
 * - [LineElement API](https://mui.com/x/api/charts/line-element/)
 */
declare function LineElement(props: LineElementProps): React.JSX.Element;
declare namespace LineElement {
    var propTypes: any;
}
export { LineElement };
