import { OnDestroy, ViewContainerRef, Injector, ComponentFactoryResolver, AfterContentInit, Renderer2, NgZone } from '@angular/core';
import { DataPieChart } from './DataPieChart';
import { DataPieChartType } from './DataPieChartType';
import { CategoryTransitionInMode } from './CategoryTransitionInMode';
import { TransitionInSpeedType } from './TransitionInSpeedType';
import { DataSeriesType } from "igniteui-angular-core";
import { DomainType } from "./DomainType";
import { IgxDataPieBaseChartComponent } from './igx-data-pie-base-chart-component';
import * as i0 from "@angular/core";
/**
 * Represents a DataPie chart control that can plot DataPie data
*/
export declare class IgxDataPieChartComponent extends IgxDataPieBaseChartComponent implements AfterContentInit, OnDestroy {
    private renderer;
    private _elRef;
    private ngZone;
    private injector;
    private componentFactoryResolver;
    container: Element;
    _dynamicContent: ViewContainerRef;
    private _height;
    private _width;
    set height(value: string);
    get height(): string;
    set width(value: string);
    get width(): string;
    constructor(renderer: Renderer2, _elRef: ViewContainerRef, ngZone: NgZone, injector: Injector, componentFactoryResolver: ComponentFactoryResolver);
    ngOnDestroy(): void;
    private _wrapper;
    protected createImplementation(): DataPieChart;
    get i(): DataPieChart;
    protected createSeriesComponent(type: string): any;
    protected createSeries(type: DataSeriesType): any;
    private _chart;
    private _dataSource;
    set dataSource(value: Array<any>);
    get dataSource(): Array<any>;
    bindData(): void;
    private _defaultTooltips;
    ngAfterContentInit(): void;
    private createTooltip;
    private _ensureTooltipCreated;
    private _createAngleAxis;
    private _createValueAxis;
    private _ensureDefaultTooltip;
    private _onDefaultTooltipsReady;
    /**
 * Gets or sets the duration used for animating series plots when the chart is loading into view
*/
    get transitionInDuration(): number;
    set transitionInDuration(v: number);
    static ngAcceptInputType_transitionInDuration: number | string;
    /**
     * Gets or sets the duration used for animating series plots when the series is leaving view
    */
    get transitionOutDuration(): number;
    set transitionOutDuration(v: number);
    static ngAcceptInputType_transitionOutDuration: number | string;
    /**
     * Gets or sets the easing function used for animating series plots when the chart is loading into view
     * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number.
    */
    get transitionInEasingFunction(): (time: number) => number;
    set transitionInEasingFunction(v: (time: number) => number);
    /**
     * Gets or sets the easing function used for animating series plots when the chart is loading into view
     * This can be set to one of the known values "linear" or "cubic," or it can be set to an easing function which takes a single numeric parameter and returns a number.
    */
    get transitionOutEasingFunction(): (time: number) => number;
    set transitionOutEasingFunction(v: (time: number) => number);
    /**
     * Gets the domain type of this chart
    */
    get domainType(): DomainType;
    static ngAcceptInputType_domainType: DomainType | string;
    /**
     * Gets or sets the type of chart series to generate from the data.
    */
    get chartType(): DataPieChartType;
    set chartType(v: DataPieChartType);
    static ngAcceptInputType_chartType: DataPieChartType | string;
    /**
     * Gets or sets whether animation of series plots is enabled when the chart is loading into view
    */
    get isTransitionInEnabled(): boolean;
    set isTransitionInEnabled(v: boolean);
    static ngAcceptInputType_isTransitionInEnabled: boolean | string;
    /**
     * Gets or sets the method that determines how to animate series plots when the chart is loading into view
    */
    get transitionInMode(): CategoryTransitionInMode;
    set transitionInMode(v: CategoryTransitionInMode);
    static ngAcceptInputType_transitionInMode: CategoryTransitionInMode | string;
    /**
     * Gets or sets the arrival speed used for animating series plots when the chart is loading into view
    */
    get transitionInSpeedType(): TransitionInSpeedType;
    set transitionInSpeedType(v: TransitionInSpeedType);
    static ngAcceptInputType_transitionInSpeedType: TransitionInSpeedType | string;
    /**
 * Export serialized visual data.

*/
    exportSerializedVisualData(): string;
    static ɵfac: i0.ɵɵFactoryDeclaration<IgxDataPieChartComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<IgxDataPieChartComponent, "igx-data-pie-chart", never, { "height": "height"; "width": "width"; "dataSource": "dataSource"; "transitionInDuration": "transitionInDuration"; "transitionOutDuration": "transitionOutDuration"; "transitionInEasingFunction": "transitionInEasingFunction"; "transitionOutEasingFunction": "transitionOutEasingFunction"; "chartType": "chartType"; "isTransitionInEnabled": "isTransitionInEnabled"; "transitionInMode": "transitionInMode"; "transitionInSpeedType": "transitionInSpeedType"; }, {}, never, never>;
}
