import { Type, EventEmitter } from '@angular/core';
import { IgxNumericXAxisComponent } from "./igx-numeric-x-axis-component";
import { IgxNumericYAxisComponent } from "./igx-numeric-y-axis-component";
import { IgxTriangulationStatusEventArgs } from "igniteui-angular-core";
import { IgxSeriesComponent } from "./igx-series-component";
import { ScatterTriangulationSeries } from "./ScatterTriangulationSeries";
/**
 * Base class for series which triangulate XY data prior to rendering.
*/
export declare const IgxScatterTriangulationSeriesComponent_PROVIDERS: {
    provide: typeof IgxSeriesComponent;
    useExisting: Type<any>;
}[];
export declare abstract class IgxScatterTriangulationSeriesComponent extends IgxSeriesComponent {
    /**
                                 * @hidden
                                 */
    readonly i: ScatterTriangulationSeries;
    constructor();
    /**
     * The name of the property from which to extract the X-coordinate for each item in the ItemsSource.
    */
    xMemberPath: string;
    /**
     * The name of the property from which to extract the Y-coordinate for each item in the ItemsSource.
    */
    yMemberPath: string;
    /**
     * The X-Axis for this series.
    */
    xAxis: IgxNumericXAxisComponent;
    /**
     * The Y-Axis for this series.
    */
    yAxis: IgxNumericYAxisComponent;
    /**
     * The source of triangulation data.
     * This property is optional.  If it is left as null, the triangulation will be created based on the items in the ItemsSource.  Triangulation is a demanding operation, so the runtime performance will be better when specifying a TriangulationSource, especially when a large number of data items are present.
    */
    trianglesSource: any[];
    /**
     * The name of the property of the TrianglesSource items which, for each triangle, contains the index of the first vertex point in the ItemsSource.
    */
    triangleVertexMemberPath1: string;
    /**
     * The name of the property of the TrianglesSource items which, for each triangle, contains the index of the second vertex point in the ItemsSource.
    */
    triangleVertexMemberPath2: string;
    /**
     * The name of the property of the TrianglesSource items which, for each triangle, contains the index of the third vertex point in the ItemsSource.
    */
    triangleVertexMemberPath3: string;
    /**
     * Gets whether or not this series is a shape series
    */
    readonly isShape: boolean;
    protected _styling(container: any, component: any, parent?: any): void;
    getItemValue(item: any, memberPathName: string): any;
    /**
     * Determine if object can be used as YAxis
    
    * @param axis  * The object to check
    */
    canUseAsYAxis(axis: any): boolean;
    /**
     * Determine if object can be used as XAxis
    
    * @param axis  * The object to check
    */
    canUseAsXAxis(axis: any): boolean;
    private _triangulationStatusChanged;
    /**
     * Raised when the status of an ongoing Triangulation has changed.
    */
    readonly triangulationStatusChanged: EventEmitter<{
        sender: any;
        args: IgxTriangulationStatusEventArgs;
    }>;
}
