import { ChartDisplayType } from '../../Types/ChartDisplayType';
import { ChartLegendPosition } from '../../Types/ChartLegendPosition';
import { ChartStackType } from '../../Types/ChartStackType';
import { Fit } from '../../Types/Fit';
import { ChartBaseElement } from './Abstracts/ChartBaseElement';
import type { IChartElementProps } from './IChartElementProps';
declare const ChartElement_base: (abstract new (...args: Array<any>) => import("../../../Controls/Behaviors/Themeable").IThemeableProps) & typeof ChartBaseElement & import("../../../Controls/Behaviors/Themeable").IThemeableCtor;
/**
 * Chart - A component for displaying charts.
 *
 * @description
 * The Chart component is designed for rendering various types of charts, such as bar charts, line charts,
 * and pie charts. It provides customizable options for data visualization and integrates with different charting
 * libraries to create interactive and informative charts.
 *
 * @name Chart
 * @element mosaik-chart
 * @category Data Visualization
 *
 * @csspart chart - The part of the Chart that contains the chart rendering area.
 *
 * @cssprop {unknown} --chart-background-color
 * @cssprop {unknown} --chart-font-family
 * @cssprop {unknown} --chart-font-letter-spacing
 * @cssprop {unknown} --chart-font-line-height
 * @cssprop {unknown} --chart-font-size
 * @cssprop {unknown} --chart-font-text-decoration
 * @cssprop {unknown} --chart-font-text-transform
 * @cssprop {unknown} --chart-font-weight
 * @cssprop {unknown} --chart-foreground-color
 *
 * @example
 * ```html
 * <mosaik-chart></mosaik-chart>
 * ```
 *
 * @public
 */
export declare class ChartElement extends ChartElement_base implements IChartElementProps {
    private readonly _defaultOptions;
    private _host;
    private _display;
    private _isLegendVisible;
    private _legendPosition;
    private _isXAxisVisible;
    private _isYAxisVisible;
    private _stacked;
    private _stackType;
    private _chart;
    private _annotations;
    private _colors;
    private _dataLabels;
    private _series;
    private _stroke;
    private _labels;
    private _legend;
    private _markers;
    private _noData;
    private _fill;
    private _tooltip;
    private _plotOptions;
    private _responsive;
    private _xAxis;
    private _yAxis;
    private _grid;
    private _states;
    private _theme;
    /**
     * @public
     */
    constructor();
    /**
     * Returns the `{@link is}` property.
     * The `{@link is}` property represents natural name of this element.
     *
     * @public
     * @static
     * @readonly
     */
    static get is(): string;
    /**
     * Gets or sets the `display` property.
     *
     * @public
     * @attr
     */
    get display(): ChartDisplayType;
    set display(value: ChartDisplayType);
    /**
     * Gets or sets the `stacked` property.
     *
     * @public
     * @attr
     */
    get stacked(): boolean;
    set stacked(value: boolean);
    /**
     * Gets or sets the `stackType` property.
     *
     * @public
     * @attr
     */
    get stackType(): ChartStackType;
    set stackType(value: ChartStackType);
    /**
     * Gets or sets the `isLegendVisible` property.
     *
     * @public
     * @attr
     */
    get isLegendVisible(): boolean;
    set isLegendVisible(value: boolean);
    /**
     * Gets or sets the `legendPosition` property.
     *
     * @public
     * @attr
     */
    get legendPosition(): ChartLegendPosition;
    set legendPosition(value: ChartLegendPosition);
    /**
     * Gets or sets the `isXAxisVisible` property.
     *
     * @public
     * @attr
     */
    get isXAxisVisible(): boolean;
    set isXAxisVisible(value: boolean);
    /**
     * Gets or sets the `isYAxisVisible` property.
     *
     * @public
     * @attr
     */
    get isYAxisVisible(): boolean;
    set isYAxisVisible(value: boolean);
    /**
     * Gets or sets the `chart` property.
     *
     * @public
     */
    get chart(): ApexChart | null;
    set chart(value: ApexChart | null);
    /**
     * Gets or sets the `annotations` property.
     *
     * @public
     */
    get annotations(): ApexAnnotations | null;
    set annotations(value: ApexAnnotations | null);
    /**
     * Gets or sets the `colors` property.
     *
     * @public
     */
    get colors(): Array<any> | null;
    set colors(value: Array<any> | null);
    /**
     * Gets or sets the `dataLabels` property.
     *
     * @public
     */
    get dataLabels(): ApexDataLabels | null;
    set dataLabels(value: ApexDataLabels | null);
    /**
     * Gets or sets the `series` property.
     *
     * @public
     */
    get series(): ApexAxisChartSeries | ApexNonAxisChartSeries | null;
    set series(value: ApexAxisChartSeries | ApexNonAxisChartSeries | null);
    /**
     * Gets or sets the `stroke` property.
     *
     * @public
     */
    get stroke(): ApexStroke | null;
    set stroke(value: ApexStroke | null);
    /**
     * Gets or sets the `labels` property.
     *
     * @public
     */
    get labels(): Array<string> | null;
    set labels(value: Array<string> | null);
    /**
     * Gets or sets the `legend` property.
     *
     * @public
     */
    get legend(): ApexLegend | null;
    set legend(value: ApexLegend | null);
    /**
     * Gets or sets the `markers` property.
     *
     * @public
     */
    get markers(): ApexMarkers | null;
    set markers(value: ApexMarkers | null);
    /**
     * Gets or sets the `noData` property.
     *
     * @public
     */
    get noData(): ApexNoData | null;
    set noData(value: ApexNoData | null);
    /**
     * Gets or sets the `fill` property.
     *
     * @public
     */
    get fill(): ApexFill | null;
    set fill(value: ApexFill | null);
    /**
     * Gets or sets the `tooltip` property.
     *
     * @public
     */
    get tooltip(): ApexTooltip | null;
    set tooltip(value: ApexTooltip | null);
    /**
     * Gets or sets the `plotOptions` property.
     *
     * @public
     */
    get plotOptions(): ApexPlotOptions | null;
    set plotOptions(value: ApexPlotOptions | null);
    /**
     * Gets or sets the `responsive` property.
     *
     * @public
     */
    get responsive(): Array<ApexResponsive> | null;
    set responsive(value: Array<ApexResponsive> | null);
    /**
     * Gets or sets the `xAxis` property.
     *
     * @public
     */
    get xAxis(): ApexXAxis | null;
    set xAxis(value: ApexXAxis | null);
    /**
     * Gets or sets the `yAxis` property.
     *
     * @public
     */
    get yAxis(): ApexYAxis | Array<ApexYAxis> | null;
    set yAxis(value: ApexYAxis | Array<ApexYAxis> | null);
    /**
     * Gets or sets the `grid` property.
     *
     * @public
     */
    get grid(): ApexGrid | null;
    set grid(value: ApexGrid | null);
    /**
     * Gets or sets the `states` property.
     *
     * @public
     */
    get states(): ApexStates | null;
    set states(value: ApexStates | null);
    /**
     * Gets or sets the `theme` property.
     *
     * @public
     */
    get theme(): ApexTheme | null;
    set theme(value: ApexTheme | null);
    /**
     * @protected
     * @overload
     */
    protected createRenderRoot(): HTMLElement;
    /**
     * @protected
     * @override
     */
    protected onApplyTemplate(): void;
    /**
     * @protected
     * @override
     */
    protected update(changes: Map<keyof this, unknown>): void;
    protected onFitPropertyChanged(oldValue?: Fit, newValue?: Fit): void;
    /**
     * @private
     */
    private updateSize;
    /**
     * @private
     */
    private computedOptions;
}
/**
 * @public
 */
export declare namespace ChartElement {
    type Props = IChartElementProps;
}
/**
 * @public
 */
declare global {
    interface HTMLElementTagNameMap {
        'mosaik-chart': ChartElement;
    }
}
export {};
//# sourceMappingURL=ChartElement.d.ts.map