import { AfterViewInit, ElementRef, OnChanges } from '@angular/core';
import { IBarChartOptions, TBarChartData } from '../../interfaces/bar-chart.interface';
import { IChartInputChanges } from '../../interfaces/chart-component.interface';
import { ID3ChartFactory } from '../../providers/d3-chart-factory.provider';
import { AppD3ChartBase } from '../_base/chart.base';
import * as i0 from "@angular/core";
type TBarData = TBarChartData;
type TBarOptions = Partial<IBarChartOptions>;
/** The bar chart component. */
export declare class AppBarChartComponent extends AppD3ChartBase<TBarData, TBarOptions> implements AfterViewInit, OnChanges {
    private readonly doc;
    private readonly d3Factory;
    /** The chart id. */
    chartId: string;
    /** The chart data. */
    data: TBarData;
    /** The chart options. */
    options: TBarOptions;
    /** D3 chart view child reference. */
    readonly container?: ElementRef<HTMLDivElement>;
    /**
     * @param doc The web page's Document object.
     * @param d3Factory D3 chart factory.
     */
    constructor(doc: Document, d3Factory: ID3ChartFactory);
    /** The chart options constructor. */
    protected chartOptions(): TBarOptions;
    /** Draws the chart. */
    protected drawChart(): void;
    /** Actually draws the chart after the component view is initialized. */
    ngAfterViewInit(): void;
    /** Redraws the chart on changes. */
    ngOnChanges(changes: IChartInputChanges): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AppBarChartComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AppBarChartComponent, "app-bar-chart", never, { "chartId": { "alias": "chartId"; "required": false; }; "data": { "alias": "data"; "required": false; }; "options": { "alias": "options"; "required": false; }; }, {}, never, never, false, never>;
}
export {};
