import { TemplateRef, EventEmitter, OnInit } from '@angular/core';
import { IgRect } from "igniteui-angular-core";
import { HorizontalAlignment } from "igniteui-angular-core";
import { UnknownValuePlotting } from "igniteui-angular-core";
import { TrendLineType } from "igniteui-angular-core";
import { IgxChartSeriesEventArgs } from './igx-chart-series-event-args';
import { DomainChart } from "./DomainChart";
import { IgxDomainChartSeriesPointerEventArgs } from './igx-domain-chart-series-pointer-event-args';
import { IgxMarkerTypeCollection } from './igx-marker-type-collection';
import { ToolTipType } from "./ToolTipType";
import { CrosshairsDisplayMode } from "./CrosshairsDisplayMode";
import { IgxCalloutStyleUpdatingEventArgs } from "./igx-callout-style-updating-event-args";
export declare const IgxDomainChartComponent_PROVIDERS: any[];
export declare abstract class IgxDomainChartComponent implements OnInit {
    protected createImplementation(): DomainChart;
    ngOnInit(): void;
    protected _implementation: any;
    readonly i: DomainChart;
    protected onImplementationCreated(): void;
    constructor();
    /**
    * Sets or gets the template reference to use for tooltips for all the series.
    *
    *
    */
    tooltipTemplate: TemplateRef<any>;
    /**
    * Sets or gets the template references to use for tooltips for all the series, in order.
    *
    *
    */
    tooltipTemplates: TemplateRef<any>[];
    legend: any;
    private _calloutsDataSource;
    calloutsDataSource: Array<any>;
    bindCalloutsData(): void;
    /**
 * Gets or sets the scaling value used to affect the pixel density of the control.
 * A higher scaling ratio will produce crisper visuals at the expense of memory.  Lower values will cause the control
 * to appear blurry.
*/
    pixelScalingRatio: number;
    /**
     * Gets or sets the left margin of chart title
    *
    *  Use `titleLeftMargin` property for the left margin of chart title.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    * 	titleLeftMargin= 10>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.titleLeftMargin = 10;
    * ```
    */
    titleLeftMargin: number;
    /**
     * Gets or sets the right margin of chart title
    *
    *  Use `titleLeftMargin` property for the right margin of chart title.
    *
    * ```html
    * <igx-category-chart
    * 		yAxisMinimumValue="0"
    * 		[dataSource]="data"
    * 		titleRightMargin= 10>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.titleRightMargin = 10;
    * ```
    */
    titleRightMargin: number;
    /**
     * Gets or sets the top margin of chart title
    *
    *  Use `titleTopMargin` property for the top margin of chart title.
    *
    * ```html
    * <igx-category-chart
    *      yAxisMinimumValue="0"
    *      [dataSource]="data"
    *      title="Countries"
    *      titleTopMargin=10 >
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.titleTopMargin = 10;
    * ```
    */
    titleTopMargin: number;
    /**
     * Gets or sets the bottom margin of chart title
    *
    *  Use `titleBottomMargin` property for the bottom margin of chart title.
    *
    * ```html
    * <igx-category-chart
    *    yAxisMinimumValue="0"
    *    [dataSource]="data"
    *    titleBottomMargin= 10 >
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  this.chart.titleBottomMargin = 5;
    * ```
    */
    titleBottomMargin: number;
    /**
     * Gets or sets the left margin of chart subtitle
    *
    * Use `subtitleLeftMargin` property for the left margin of chart subtitle.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     subtitleLeftMargin= 20>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.subtitleLeftMargin = 20 ;
    * ```
    */
    subtitleLeftMargin: number;
    /**
     * Gets or sets the top margin of chart subtitle
    *
    * Use `subtitleTopMargin` property for the top margin of chart subtitle.
    *
    * ```html
    *    <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       subtitle= "This is a subtitle"
    *       subtitleTopMargin=10>
    *     </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.subtitleTopMargin = 10;
    * ```
    */
    subtitleTopMargin: number;
    /**
     * Gets or sets the right margin of chart subtitle
    *
    * Use `subtitleRightMargin` property for the right margin of chart subtitle.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     subtitleRightMargin= 10>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  this.chart.subtitleRightMargin = 20 ;
    * ```
    */
    subtitleRightMargin: number;
    /**
     * Gets or sets the bottom margin of chart subtitle
    *
    * Use `subtitleBottomMargin` property for the bottom margin of chart subtitle.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    * 	subtitleBottomMargin=10>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.subtitleBottomMargin = 10 ;
    * ```
    */
    subtitleBottomMargin: number;
    /**
     * Gets or sets color of chart subtitle
    *
    * Use `subtitleTextColor` property to color the subtitle.
    *
    * ```html
    *  <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       subtitle= "This is a subtitle"
    *       subtitleTextColor= 'blue'>
    *     </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.subtitleTextColor = "#ff0000" ;
    * ```
    */
    subtitleTextColor: string;
    /**
     * Gets or sets color of chart title
    *
    *  Use `titleTextColor` property to color the chart title
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       titleTextColor= "red">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  this.chart.titleTextColor="red" ;
    * ```
    */
    titleTextColor: string;
    /**
     * Gets or sets the left margin of the chart content.
    *
    * Use the 'leftMargin' property for the left margin of the chart content.
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       leftMargin=20>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  this.chart.leftMargin = 20;
    * ```
    */
    leftMargin: number;
    /**
     * Gets or sets the top margin of the chart content.
    *
    * Use `topMargin` property for the margin of the chart content.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     topMargin= 20>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.topMargin=20;
    * ```
    */
    topMargin: number;
    /**
     * Gets or sets the right margin of the chart content.
    *
    * Use `rightMargin` property for the right margin of the chart content.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     rightMargin=20>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *   this.chart.rightMargin = 20 ;
    * ```
    */
    rightMargin: number;
    /**
     * Gets or sets the bottom margin around the chart content.
    *
    * Use the `bottomMargin` property for the bottom margin around the chart content.
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       bottomMargin= 20>
    *     </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.bottomMargin=20;
    * ```
    */
    bottomMargin: number;
    /**
     * Gets or sets the duration used for animating series plots when the data is changing
    *
    * Use the `transitionDuration` property to animating between data values.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     transitionDuration="500">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.transitionDuratio= 500;
    * ```
    */
    transitionDuration: number;
    /**
     * Gets or sets the easing function used for animating series plots when the data is changing.
     * 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.
    *
    * The 'transitionInEasingFunction' property used for easing function for animating series plots when the chart is loading into view.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     transitionInEasingFunction= "cubic">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.transitionInEasingFunction=  this.cubicFunc;
    *
    * cubicFunc(time: number) : number
    *   {
    *     return time;
    *   }
    * ```
    */
    transitionEasingFunction: (time: number) => number;
    /**
     * Gets or sets CSS font property for the chart subtitle
    *
    * Use `subtitleTextStyle` property for the CSS font of the chart subtitle.
    *
    * ```html
    *  <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       subtitle= "This is a subtitle"
    *       subtitleTextStyle ="16pt Verdona">
    *     </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.subtitleTextStyle= "16pt Verdona";
    * ```
    */
    subtitleTextStyle: string;
    /**
     * Gets or sets CSS font property for the chart title
    *
    * Use `titleTextStyle` property for the CSS font property of the chart title
    *
    * ```html
    *  <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       titleTextStyle= "24pt Verdona">
    *     </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.xAxisTitleTextStyle = "24pt Verdona";
    * ```
    */
    titleTextStyle: string;
    /**
     * Gets or sets a set of property paths that should be included for consideration by the category chart, leaving the remainder excluded. If null, all properties will be considered.
    *
    * The `includedProperties` property used to include the properties for the consideration of the category chart.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     includedProperties="ProductName,Cost" >
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.includedProperties = ["ProductName", "Cost"];
    * ```
    */
    includedProperties: string[];
    /**
     * Gets or sets a set of property paths that should be excluded from consideration by the category chart.
    *
    * The `excludedProperties` property used for the property paths that should be excluded from consideration by the category chart.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     excludedProperties="ID">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.excludedProperties = ["ID", "Discount"];
    * ```
    */
    excludedProperties: string[];
    /**
     * Gets or sets the palette of brushes to use for coloring the chart series.
     * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection
    *
    * Use the `brushes` property to  set the brushes.
    *
    * ```html
    *  <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       Brushes="#ff0000, #cc0000, #aa0000">
    *     </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.brushes = ["#ff0000","#00ff00"];
    * ```
    */
    brushes: string[];
    /**
     * Gets or sets the palette of brushes to use for outlines on the chart series.
     * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection
    *
    *  Use the `outlines` property to sets the palette of brushes to use for outlines on the chart series
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     outlines="#ff0000, #cc0000, #aa0000">
    * </igx-category-chart>
    * ```
    */
    outlines: string[];
    /**
     * Gets or sets whether the chart can be horizontally zoomed through user interactions.
    *
    * Use the `isHorizontalZoomEnabled` property to allow chart horizontally zoomed .
    *
    * ```html
    *  <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       isHorizontalZoomEnabled=true>
    *   </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.isHorizontalZoomEnabled = true;
    * ```
    */
    isHorizontalZoomEnabled: boolean;
    /**
     * Gets or sets whether the chart can be vertically zoomed through user interactions.
    *
    * Use the `isVerticalZoomEnabled` property to allow chart zoom vertically.
    *
    * ```html
    *  <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       isVerticalZoomEnabled=true>
    *     </igx-category-chart>
    * ```
    *
    * ```ts
    *  this.chart.isVerticalZoomEnabled = true;
    * ```
    */
    isVerticalZoomEnabled: boolean;
    /**
     * Gets or sets whether the chart can highlight series through user interactions.
     * This property applies to Category Chart and Financial Chart controls.
    */
    isSeriesHighlightingEnabled: boolean;
    /**
     * Gets or sets the rectangle representing the current scroll and zoom state of the chart.
     * WindowRect is expressed as a Rectangle with coordinates and sizes between 0 and 1.
    *
    * Use `windowRect` property representing the current scroll and zoom state of the chart.
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       WindowRect=[0,0,1,1]>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.windowRect =[0,0,1,1];
    * ```
    */
    windowRect: IgRect;
    /**
     * Gets a rectangle representing the bounds of the plot area.
    *
    * `viewport` property representing the bounds of the plot area.
    *
    * ```ts
    * let viewport:Rect =  this.chart.viewport;
    * ```
    */
    readonly viewport: IgRect;
    /**
     * Gets or sets text to display above the plot area.
    *
    * Use the `chartTitle` property to display the text above the plot area.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     title="This is a Title">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  this.chart.title= "This is a Title";
    * ```
    */
    chartTitle: string;
    /**
     * Gets or sets text to display below the Title, above the plot area.
    *
    * Use the `subtitle` property to display the text below  and above the plot area.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     subtitle= "This is a subtitle">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  this.chart.subtitle ="CategoryChart Subtitle" ;
    * ```
    */
    subtitle: string;
    /**
     * Gets or sets horizontal alignment which determines the title position, relative to the left and right edges of the control.
    *
    * Use the `titleAlignment` property for the horizontal alignment of the title.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     titleAlignment= "center">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.titleAlignment = HorizontalAlignment.Center;
    * ```
    */
    titleAlignment: HorizontalAlignment;
    /**
     * Gets or sets horizontal alignment which determines the subtitle position, relative to the left and right edges of the control.
    *
    * Use the `subtitleAlignment` property to Gets or sets horizontal alignment.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     subtitleAlignment= "center">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.subtitleAlignment = HorizontalAlignment.Right;
    * ```
    */
    subtitleAlignment: HorizontalAlignment;
    /**
     * Gets or sets the behavior that determines how unknown values will be plotted on the chart.
     * Null and Double.NaN are two examples of unknown values.
    *
    * Use the `unknownValuePlotting` property to determines the behavior that how unknown values will be plotted on the chart.
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       unknownValuePlotting= "dontPlot">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.unknownValuePlotting =UnknownValuePlotting.DontPlot;
    * ```
    */
    unknownValuePlotting: UnknownValuePlotting;
    /**
     * Gets or sets the rendering resolution for all series in this chart.
     * Where n = Resolution, for every n horizontal pixels, combine all items into a single datapoint.  When Resolution = 0, all datapoints will be rendered as graphical objects.  Charts with a higher resolution will have faster performance.
    *
    * Use the `resolution` property if the callouts should be display.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     resolution= 2>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *   this.chart.resolution = 2 ;
    * ```
    */
    resolution: number;
    /**
     * Gets or sets the thickness for all series in this chart. Depending on the ChartType, this can be the main brush used, or just the outline.
    *
    * Use the `thickness` property for the thickness of all the series in this chart.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     thickness=5>
    * </igx-category-chart>
    * ```
    */
    thickness: number;
    private _markerTypes;
    /**
     * Gets or sets the marker shapes used for indicating location of data points in this chart.
     * This property applies only to these chart types: point, line, spline, bubble, and polygon
    */
    markerTypes: IgxMarkerTypeCollection;
    /**
     * Gets or sets the palette of brushes used for rendering fill area of data point markers.
     * This property applies only to these chart types: point, line, spline, bubble, and polygon
    *
    * `markerBrushes` property used for rendering fill area of data point markers.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     markerBrushes="#ff0000, #cc0000, #aa0000">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  this.chart.markerBrushes=[ "#ff0000", "#ffff00", "#00ffff" ];
    * ```
    */
    markerBrushes: string[];
    /**
     * Gets or sets the palette of brushes used for rendering outlines of data point markers.
     * This property applies only to these chart types: point, line, spline, bubble, and polygon
    *
    * `markerOutlines` property used for rendering outlines of data point markers.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     markerOutlines="#ff0000, #cc0000, #aa0000">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.markerOutlines= ["#ff0000", "#ffff00", "#00ffff"] ;
    * ```
    */
    markerOutlines: string[];
    /**
     * Gets or sets the maximum number of markers displyed in the plot area of the chart.
    *
    * `markerMaxCount` property used to display maximum number of markers in the plot area of the chart.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     markerMaxCount=100 >
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  this.chart.markerMaxCount = 100 ;
    * ```
    */
    markerMaxCount: number;
    /**
     * Gets or sets whether the series animations should be allowed when a range change has been detected on an axis.
    */
    animateSeriesWhenAxisRangeChanges: boolean;
    /**
     * Gets or sets the palette of brushes to used for coloring trend lines in this chart.
     * The value provided should be an array of CSS color strings or JavaScript objects defining gradients. Optionally the first element can be a string reading "RGB" or "HSV" to specify the interpolation mode of the collection
    *
    * Use the `trendLineBrushes` property for coloring trend lines in the chart.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     trendLineBrushes="#ff0000,#aa0000">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.trendLineBrushes=["#ff0000", "#ffff00", "#00ffff"]	;
    * ```
    */
    trendLineBrushes: string[];
    /**
     * Gets or sets the formula used for calculating trend lines in this chart.
     * This property applies only to these chart types: point, line, spline, and bubble
    *
    * Use the `trendLineType` property for calculating trend lines.
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       trendLineType= "cubicFit">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.trendLineType = TrendLineType.CubicFit;
    * ```
    */
    trendLineType: TrendLineType;
    /**
     * Gets or sets the thickness of the trend lines in this chart.
     * This property applies only to these chart types: point, line, spline, and bubble
    *
    * Use the `trendLineThickness` property for the thickness of the trend lines in the chart.
    *
    * ```html
    * <igx-category-chart
    *     yAxisMinimumValue="0"
    *     [dataSource]="data"
    *     trendLineThickness= 2>
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * this.chart.trendLineThickness=2;
    * ```
    */
    trendLineThickness: number;
    /**
     * Gets or sets a value indicating whether grid and tick lines are aligned to device pixels.
    *
    * Use `alignsGridLinesToPixels` propert to indicat whether grid and tick lines are aligned to device pixels.
    *
    * ```html
    * <igx-category-chart
    *     [dataSource]="data"
    *     AlignsGridLinesToPixels="true">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  this.chart.alignsGridLinesToPixels= true;
    * ```
    */
    alignsGridLinesToPixels: boolean;
    trendLinePeriod: number;
    /**
     * Gets or sets the style of tooltip to be displayed.
    */
    toolTipType: ToolTipType;
    /**
     * Gets or sets the crosshairs to be displayed.
    */
    crosshairsDisplayMode: CrosshairsDisplayMode;
    /**
     * Gets or sets whether crosshairs will snap to the nearest data point.
    */
    crosshairsSnapToData: boolean;
    /**
     * Gets or sets whether annotations are shown along the axis for crosshair values
    */
    crosshairsAnnotationEnabled: boolean;
    /**
     * Gets or sets whether annotations for the final value of each series is displayed on the axis.
    */
    finalValueAnnotationsVisible: boolean;
    /**
     * Gets or sets if callouts should be displayed.
    */
    calloutsVisible: boolean;
    /**
     * Gets or sets if event annotations should be displayed.
    */
    calloutStyleUpdatingEventEnabled: boolean;
    /**
     * Gets or sets the member path of the X data for the callouts.
    */
    calloutsXMemberPath: string;
    /**
     * Gets or sets the member path of the Y data for the callouts.
    */
    calloutsYMemberPath: string;
    /**
     * Gets or sets the member path of the label data for the callouts.
    */
    calloutsLabelMemberPath: string;
    /**
     * Gets or sets the member path of the content data for the callouts.
    */
    calloutsContentMemberPath: string;
    protected __p: string;
    protected _hasUserValues: Set<string>;
    protected readonly hasUserValues: Set<string>;
    protected __m(propertyName: string): void;
    protected _stylingContainer: any;
    protected _stylingParent: any;
    protected _inStyling: boolean;
    protected _styling(container: any, component: any, parent?: any): void;
    /**
 * Provides a container for this control

*
* `provideContainer` method provide container for the control.
*
* ```ts
*     this.chart.provideContainer("Container");
* ```
*/
    provideContainer(container: any): void;
    /**
     * Destroy this control
    
    *
    * Use the `destroy` property to destroy the chart.
    *
    * ```ts
    * this.chart.destroy();
    * ```
    */
    destroy(): void;
    /**
     * Called when the control has been resized.
    
    *
    * `notifyResized` method Called when the control has been resized.
    *
    * ```ts
    * this.chart.notifyResized();
    * ```
    */
    notifyResized(): void;
    notifyVisualPropertiesChanged(): void;
    /**
     * Forces any pending refresh to the chart to be finished.
    
    *
    * Method `flush` used to Forces any pending deferred work to render on the chart before continuing.
    *
    * ```ts
    * this.chart.flush();
    * ```
    */
    flush(): void;
    /**
     * Hides the active main tooltip, if displayed.
    
    *
    * Use the `hideToolTip` method to hide the active tooltip.
    *
    * ```ts
    * this.chart.hideToolTip();
    * ```
    */
    hideToolTip(): void;
    notifySetItem(source_: any, index: number, oldItem: any, newItem: any): void;
    /**
     * Used to manually notify the chart that the data source has reset or cleared its items.
    
    *
    * Use `notifyClearItems` method to notifies the chart that the items have been cleared from an associated data source.
    *
    * ```ts
    * this.chart.notifyClearItems(this.data);
    * ```
    */
    notifyClearItems(source_: any): void;
    notifyInsertItem(source_: any, index: number, newItem: any): void;
    notifyRemoveItem(source_: any, index: number, oldItem: any): void;
    private _seriesAdded;
    /**
     * Event raised when a series is initialized and added to this chart.
    *
    * `SeriesAdded` event raised when a series is initialized and added to this chart.
    *
    * ```html
    *  <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       (seriesAdded)="CategoryChart_SeriesAdded()"
    *      >
    * </igx-category-chart>
    * ```
    */
    readonly seriesAdded: EventEmitter<{
        sender: any;
        args: IgxChartSeriesEventArgs;
    }>;
    private _seriesRemoved;
    /**
     * Event raised when a series is removed from this chart.
    *
    * `SeriesRemoved` event raised when a series is removed from this chart.
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       (seriesRemoved)="CategoryChart_seriesRemoved()">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  CategoryChart_seriesRemoved(sender: any , aregs: ChartSeriesEventArgs)
    *   {
    *
    *   }
    * ```
    */
    readonly seriesRemoved: EventEmitter<{
        sender: any;
        args: IgxChartSeriesEventArgs;
    }>;
    private _seriesPointerEnter;
    /**
     * Occurs when the pointer enters a Series.
    *
    * `SeriesPointerEnter` event raised when the pointer enters a Series.
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       (seriesPointerEnter)="CategoryChart_seriesPointerEnter()" >
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * CategoryChart_seriesPointerEnter(sender: any , aregs: ChartSeriesEventArgs)
    *   {
    *
    *   }
    * ```
    */
    readonly seriesPointerEnter: EventEmitter<{
        sender: any;
        args: IgxDomainChartSeriesPointerEventArgs;
    }>;
    private _seriesPointerLeave;
    /**
     * Occurs when the pointer leaves a Series.
    *
    * `SeriesPointerLeave` event raised when the pointer leaves a Series.
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       (seriesPointerLeave)= "CategoryChart_seriesPointerLeave()" >
    * </igx-category-chart>
    * ```
    *
    * ```ts
    * CategoryChart_seriesPointerLeave(sender: any , aregs: ChartSeriesEventArgs)
    *   {
    *
    *   }
    * ```
    */
    readonly seriesPointerLeave: EventEmitter<{
        sender: any;
        args: IgxDomainChartSeriesPointerEventArgs;
    }>;
    private _seriesPointerMove;
    /**
     * Occurs when the pointer moves over a Series.
    *
    * `SeriesPointerMove` event raised when the pointer moves over a Series.
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *        (seriesPointerMove)="CategoryChart_seriesPointerMove()">
    * </igx-category-chart>
    * ```
    *
    * ```ts
    *  CategoryChart_seriesPointerMove(sender: any , aregs: ChartSeriesEventArgs)
    *   {
    *
    *   }
    * ```
    */
    readonly seriesPointerMove: EventEmitter<{
        sender: any;
        args: IgxDomainChartSeriesPointerEventArgs;
    }>;
    private _seriesPointerDown;
    /**
     * Occurs when the pointer is pressed down over a Series.
    *
    * `SeriesPointerDown` event raised when the pointer is pressed down over a Series
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       (seriesPointerDown)="CategoryChart_seriesPointerDown()" >
    * </igx-category-chart>
    * ```
    */
    readonly seriesPointerDown: EventEmitter<{
        sender: any;
        args: IgxDomainChartSeriesPointerEventArgs;
    }>;
    private _seriesPointerUp;
    /**
     * Occurs when the pointer is released over a Series.
    *
    * `SeriesPointerUp` event raised when the pointer is released over a Series.
    *
    * ```ts
    *  CategoryChart_seriesPointerUp(sender: any , aregs: ChartSeriesEventArgs)
    *   {
    *
    *   }
    * ```
    *
    * ```html
    * <igx-category-chart
    *       yAxisMinimumValue="0"
    *       [dataSource]="data"
    *       (seriesPointerUp)="CategoryChart_seriesPointerUp()" >
    * </igx-category-chart>
    * ```
    */
    readonly seriesPointerUp: EventEmitter<{
        sender: any;
        args: IgxDomainChartSeriesPointerEventArgs;
    }>;
    private _calloutStyleUpdating;
    /**
     * Occurs when the style of a callout is updated.
    */
    readonly calloutStyleUpdating: EventEmitter<{
        sender: any;
        args: IgxCalloutStyleUpdatingEventArgs;
    }>;
    protected _zoneRunner: (act: () => void) => void;
    protected _runInZone(act: () => void): void;
}
