import { Chart } from 'chart.js';
import { SmzChart } from '../../modules/smz-charts/models/chart';
import { ChartType } from './models/chart-type';
import { LegendBuilder } from './secondary/legend-builder';
import { TitleBuilder } from './secondary/title-builder';
import { TooltipBuilder } from './secondary/tooltip-builder';
export declare class BaseChartBuilder<TFactory extends BaseChartBuilder<TFactory, TData>, TData> {
    private _originalData;
    protected that: TFactory;
    _chart: Chart;
    constructor(_originalData: TData[]);
    ofType(type: ChartType): TFactory;
    withTitle(title: string): TitleBuilder<TFactory, TData>;
    withTooltips(): TooltipBuilder<TFactory, TData>;
    withLegend(): LegendBuilder<TFactory, TData>;
    padding(left: number, right: number, top: number, bottom: number): TFactory;
    aspectRatio(ratio: number): TFactory;
    allowEmpty(): TFactory;
    responsive(): TFactory;
    build(debug?: boolean): SmzChart;
}
