import * as React from 'react';
import { IgRect } from "igniteui-react-core";
import { IgPoint } from "igniteui-react-core";
import { IgDataTemplate } from "igniteui-react-core";
import { Visibility } from "igniteui-react-core";
import { MarkerType } from "./MarkerType";
import { IgrPropertyUpdatedEventArgs } from "igniteui-react-core";
import { StackedFragmentSeries } from "./StackedFragmentSeries";
import { SeriesOutlineMode } from './SeriesOutlineMode';
/**
 * Represents a non-visual child of StackedSeriesBase.
*/
export declare class IgrStackedFragmentSeries<P extends IIgrStackedFragmentSeriesProps = IIgrStackedFragmentSeriesProps> extends React.Component<P, {}> {
    protected createImplementation(): StackedFragmentSeries;
    private onImplementationCreated;
    constructor(props: P);
    componentDidMount(): void;
    shouldComponentUpdate(nextProps: any, nextState: any): boolean;
    render(): any;
    private provideRenderer;
    protected _implementation: any;
    /**
     * @hidden
     */
    readonly i: StackedFragmentSeries; /**
                                 * @hidden
                                 */
    static _createFromInternal(internal: any): IgrStackedFragmentSeries;
    /**
 * Gets or sets the ItemsSource property for the current series object. Normally you will want to provide data to the parent series instead.
 * But if you have data as individual columns, it can be assigned here. The data must be aligned and have the same number of items for each fragment.
*/
    dataSource: any[];
    /**
     * Gets or sets the brush of the stacked fragment.
    */
    brush: string;
    /**
     * Gets the actual brush used by the series.
    */
    actualBrush: string;
    /**
     * Gets or sets whether drop shadow should be enabled for this series.
    */
    isDropShadowEnabled: boolean;
    /**
     * Gets whether drop shadow is actually enabled for this series.
    */
    actualIsDropShadowEnabled: boolean;
    /**
     * Gets or sets the shadow blur.
     * This property is ignored when StackedFragmentSeries.UseSingleShadow is set to true.
    */
    shadowBlur: number;
    /**
     * Gets the actual shadow blur used by the series.
    */
    actualShadowBlur: number;
    /**
     * Gets or sets the drop shadow color.
    */
    shadowColor: string;
    /**
     * Gets actual the drop shadow color used by the series.
    */
    actualShadowColor: string;
    /**
     * Gets or sets whether drop shadow is applied to the whole StackedFragmentSeries visual or to each of the individual shapes forming the StackedFragmentSeries.
     * When this property is set to true, no StackedFragmentSeries.ShadowBlur is applied.
    */
    useSingleShadow: boolean;
    /**
     * Gets whether drop shadow is actually applied to the whole StackedFragmentSeries visual or to each of the individual shapes forming the StackedFragmentSeries.
    */
    actualUseSingleShadow: boolean;
    /**
     * Gets or sets the drop shadow x-offset.
    */
    shadowOffsetX: number;
    /**
     * Gets the actual drop shadow x-offset applied to the series.
    */
    actualShadowOffsetX: number;
    /**
     * Gets or sets the drop shadow y-offset.
    */
    shadowOffsetY: number;
    /**
     * Gets the actual drop shadow y-offset applied to the series.
    */
    actualShadowOffsetY: number;
    /**
     * Gets or sets the LegendItemBadgeTemplate property.
     * The legend item badge is created according to the LegendItemBadgeTemplate on-demand by
     * the series object itself.
    */
    legendItemBadgeTemplate: IgDataTemplate;
    /**
     * Gets the actual legend item badge template used by the series.
    */
    actualLegendItemBadgeTemplate: IgDataTemplate;
    /**
     * Gets or sets the LegendItemTemplate property.
     * The legend item control content is created according to the LegendItemTemplate on-demand by
     * the series object itself.
    */
    legendItemTemplate: IgDataTemplate;
    /**
     * Gets the actual legend item template used by the series.
    */
    actualLegendItemTemplate: IgDataTemplate;
    /**
     * Gets or sets the legend item visibility for the current series object.
    */
    legendItemVisibility: Visibility;
    /**
     * Gets the actual visibility of the legend items in the series.
    */
    actualLegendItemVisibility: Visibility;
    /**
     * Gets or sets the brush that specifies how the current series object's marker interiors are painted.
    */
    markerBrush: string;
    /**
     * Gets the actual marker brush of the series.
    */
    actualMarkerBrush: string;
    /**
     * Gets or sets the brush that specifies how the current series object's marker outlines are painted.
    */
    markerOutline: string;
    /**
     * Gets the actual marker outline of the series.
    */
    actualMarkerOutline: string;
    /**
     * Gets or sets the MarkerTemplate for the current series object.
    */
    markerTemplate: IgDataTemplate;
    /**
     * Gets the actual marker template used by the series.
    */
    actualMarkerTemplate: IgDataTemplate;
    /**
     * Gets or sets the marker type for the current series object.
     * If the MarkerTemplate property is set, the setting of the MarkerType property will be ignored.
    */
    markerType: MarkerType;
    /**
     * Gets the actual marker type set used in the series.
    */
    actualMarkerType: MarkerType;
    /**
     * Gets or sets the Name of the stacked fragment.
    */
    name: string;
    /**
     * Gets or sets the Opacity of the stacked fragment.
    */
    opacity: number;
    /**
     * Gets the series opacity.
    */
    actualOpacity: number;
    /**
     * Gets or sets the brush to use for the outline of the series.
     * Some series types, such as LineSeries, do not display outlines.  Therefore, this property does not affect some charts.
    */
    outline: string;
    /**
     * Gets the series outline.
    */
    actualOutline: string;
    /**
     * Gets or sets the AreaFillOpacity of the stacked fragment. This property only applies for area-like series.
    */
    areaFillOpacity: number;
    /**
     * Gets the series ActualAreaFillOpacity.  This property only applies for area-like series.
    */
    actualAreaFillOpacity: number;
    /**
     * Gets or sets the opacity to use for the marker fills.
    */
    markerFillOpacity: number;
    /**
     * Gets the actual opacity to use for hte marker fills.
    */
    actualMarkerFillOpacity: number;
    /**
     * Gets or sets the outline mode to use for the fragment.
    */
    outlineMode: SeriesOutlineMode;
    /**
     * Gets the actual outline mode to use for the fragment.
    */
    actualOutlineMode: SeriesOutlineMode;
    /**
     * Gets or sets the target opacity to fade to for fade style highlighting.
    */
    highlightingFadeOpacity: number;
    /**
     * Gets the actual target opacity to fade to for fade style highlighting.
    */
    actualHighlightingFadeOpacity: number;
    /**
     * Gets or sets the x-radius of the ellipse that is used to round the corners of the column. This only applies to Bar and Column series.
    */
    radiusX: number;
    /**
     * Gets the actual corner radius of the series
    */
    actualRadiusX: number;
    /**
     * Gets or sets the y-radius of the ellipse that is used to round the corners of the column. This only applies to Bar and Column series.
    */
    radiusY: number;
    /**
     * Gets the actual corner radius of the series
    */
    actualRadiusY: number;
    /**
     * Gets or sets the width of the current series object's line thickness.
    */
    thickness: number;
    /**
     * Gets or sets the thickness of this stacked fragment.
    */
    actualThickness: number;
    /**
     * Gets or sets the width of the current series object's marker thickness.
    */
    markerThickness: number;
    /**
     * Gets actual marker thickness of this stacked fragment.
    */
    actualMarkerThickness: number;
    /**
     * Gets or sets the Title property.
     * The legend item control is created according to the Title on-demand by
     * the series object itself.
    */
    title: any;
    /**
     * Gets or sets the value mapping property for the current series object.
    */
    valueMemberPath: string;
    /**
     * Gets or sets the Visibility of the stacked fragment.
    */
    visibility: Visibility;
    /**
     * Gets the actual visibility of the stacked fragment.
    */
    actualVisibility: Visibility;
    /**
     * Gets the resolved brush used between the local series and the parent series.
    */
    parentOrLocalBrush: string;
    findByName(name: string): any;
    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;
    /**
 * Gets the item item index associated with the specified world position

*/
    getItemIndex(world: IgPoint): number;
    /**
     * Gets the item that is the best match for the specified world coordinates.
    
    * @param world  * The world coordinates to use.
    */
    getItem(world: IgPoint): any;
    getPreviousOrExactIndex(world: IgPoint, skipUnknowns: boolean): number;
    getNextOrExactIndex(world: IgPoint, skipUnknowns: boolean): number;
    getSeriesValue(world: IgPoint, useInterpolation: boolean, skipUnknowns: boolean): number;
    getSeriesValuePosition(world: IgPoint, useInterpolation: boolean, skipUnknowns: boolean): IgPoint;
    /**
     * If possible, will return the best available value bounding box within the series that has the best value match for the world position provided.
    
    * @param world  * The world coordinate for which to get a value bounding box for
    */
    getSeriesValueBoundingBox(world: IgPoint): IgRect;
    /**
     * If possible, will return the best available value marker bounding box within the series that has the best value match for the world position provided.
    
    * @param world  * The world coordinates for which to get a value marker bounding box for
    */
    getSeriesValueMarkerBoundingBox(world: IgPoint): IgRect;
    getSeriesHighValue(world: IgPoint, useInterpolation: boolean, skipUnknowns: boolean): number;
    getSeriesHighValuePosition(world: IgPoint, useInterpolation: boolean, skipUnknowns: boolean): IgPoint;
    getSeriesLowValue(world: IgPoint, useInterpolation: boolean, skipUnknowns: boolean): number;
    getSeriesLowValuePosition(world: IgPoint, useInterpolation: boolean, skipUnknowns: boolean): IgPoint;
    getSeriesValuePositionFromSeriesPixel(mouse: IgPoint, useInterpolation: boolean, skipUnknowns: boolean): IgPoint;
    getSeriesValueFromSeriesPixel(mouse: IgPoint, useInterpolation: boolean, skipUnknowns: boolean): number;
    /**
     * For a category plotted series, returns the current width of the items within the categories. This only returns a value if the items have some form of width (e.g. columns, bars, etc.) otherwise 0 is returned.
    
    */
    getItemSpan(): number;
    /**
     * Converts a point from coordinates within the series plot area to a world position within axis space.
    
    * @param seriesPoint  * The pixel location within the plot area of the series.
    */
    toWorldPosition(seriesPoint: IgPoint): IgPoint;
    /**
     * Converts a point from world coordinates to coordinates within the viewport of the series.
    
    * @param world  * The world position from which to convert.
    */
    fromWorldPosition(world: IgPoint): IgPoint;
    /**
     * Requests that the provided item should be brought into view if possible.
    
    * @param item  * The item to attempt to bring into view.
    */
    scrollIntoView(item: any): boolean;
    /**
     * Gets the effective viewport, adjusted to account for margins and other factors.
    
    */
    getEffectiveViewport(): IgRect;
    /**
     * Notifies the series that a visual property has changed, requiring a visual update.
    
    */
    notifyVisualPropertiesChanged(): void;
    /**
     * Simulates a pointer hover over the series surface.
    
    * @param point  * The pointer position relative to the series viewport over which to hover.
    */
    simulateHover(point: IgPoint): void;
    /**
     * Moves the cursor point to the provided world position. Some series may react to the current cursor position.
    
    * @param point  * The cursor point, in world coordinates.
    */
    moveCursorPoint(point: IgPoint): void;
    private _propertyUpdated;
    private _propertyUpdated_wrapped;
    /**
     * Event raised when a property (including "effective" and non-dependency property) value changes.
    */
    propertyUpdated: (s: IgrStackedFragmentSeries, e: IgrPropertyUpdatedEventArgs) => void;
}
export interface IIgrStackedFragmentSeriesProps {
    /**
 * Gets or sets the ItemsSource property for the current series object. Normally you will want to provide data to the parent series instead.
 * But if you have data as individual columns, it can be assigned here. The data must be aligned and have the same number of items for each fragment.
*/
    dataSource?: any[];
    /**
     * Gets or sets the brush of the stacked fragment.
    */
    brush?: string;
    /**
     * Gets the actual brush used by the series.
    */
    actualBrush?: string;
    /**
     * Gets or sets whether drop shadow should be enabled for this series.
    */
    isDropShadowEnabled?: boolean | string;
    /**
     * Gets whether drop shadow is actually enabled for this series.
    */
    actualIsDropShadowEnabled?: boolean | string;
    /**
     * Gets or sets the shadow blur.
     * This property is ignored when StackedFragmentSeries.UseSingleShadow is set to true.
    */
    shadowBlur?: number | string;
    /**
     * Gets the actual shadow blur used by the series.
    */
    actualShadowBlur?: number | string;
    /**
     * Gets or sets the drop shadow color.
    */
    shadowColor?: string;
    /**
     * Gets actual the drop shadow color used by the series.
    */
    actualShadowColor?: string;
    /**
     * Gets or sets whether drop shadow is applied to the whole StackedFragmentSeries visual or to each of the individual shapes forming the StackedFragmentSeries.
     * When this property is set to true, no StackedFragmentSeries.ShadowBlur is applied.
    */
    useSingleShadow?: boolean | string;
    /**
     * Gets whether drop shadow is actually applied to the whole StackedFragmentSeries visual or to each of the individual shapes forming the StackedFragmentSeries.
    */
    actualUseSingleShadow?: boolean | string;
    /**
     * Gets or sets the drop shadow x-offset.
    */
    shadowOffsetX?: number | string;
    /**
     * Gets the actual drop shadow x-offset applied to the series.
    */
    actualShadowOffsetX?: number | string;
    /**
     * Gets or sets the drop shadow y-offset.
    */
    shadowOffsetY?: number | string;
    /**
     * Gets the actual drop shadow y-offset applied to the series.
    */
    actualShadowOffsetY?: number | string;
    /**
     * Gets or sets the LegendItemBadgeTemplate property.
     * The legend item badge is created according to the LegendItemBadgeTemplate on-demand by
     * the series object itself.
    */
    legendItemBadgeTemplate?: IgDataTemplate;
    /**
     * Gets the actual legend item badge template used by the series.
    */
    actualLegendItemBadgeTemplate?: IgDataTemplate;
    /**
     * Gets or sets the LegendItemTemplate property.
     * The legend item control content is created according to the LegendItemTemplate on-demand by
     * the series object itself.
    */
    legendItemTemplate?: IgDataTemplate;
    /**
     * Gets the actual legend item template used by the series.
    */
    actualLegendItemTemplate?: IgDataTemplate;
    /**
     * Gets or sets the legend item visibility for the current series object.
    */
    legendItemVisibility?: Visibility | string;
    /**
     * Gets the actual visibility of the legend items in the series.
    */
    actualLegendItemVisibility?: Visibility | string;
    /**
     * Gets or sets the brush that specifies how the current series object's marker interiors are painted.
    */
    markerBrush?: string;
    /**
     * Gets the actual marker brush of the series.
    */
    actualMarkerBrush?: string;
    /**
     * Gets or sets the brush that specifies how the current series object's marker outlines are painted.
    */
    markerOutline?: string;
    /**
     * Gets the actual marker outline of the series.
    */
    actualMarkerOutline?: string;
    /**
     * Gets or sets the MarkerTemplate for the current series object.
    */
    markerTemplate?: IgDataTemplate;
    /**
     * Gets the actual marker template used by the series.
    */
    actualMarkerTemplate?: IgDataTemplate;
    /**
     * Gets or sets the marker type for the current series object.
     * If the MarkerTemplate property is set, the setting of the MarkerType property will be ignored.
    */
    markerType?: MarkerType | string;
    /**
     * Gets the actual marker type set used in the series.
    */
    actualMarkerType?: MarkerType | string;
    /**
     * Gets or sets the Name of the stacked fragment.
    */
    name?: string;
    /**
     * Gets or sets the Opacity of the stacked fragment.
    */
    opacity?: number | string;
    /**
     * Gets the series opacity.
    */
    actualOpacity?: number | string;
    /**
     * Gets or sets the brush to use for the outline of the series.
     * Some series types, such as LineSeries, do not display outlines.  Therefore, this property does not affect some charts.
    */
    outline?: string;
    /**
     * Gets the series outline.
    */
    actualOutline?: string;
    /**
     * Gets or sets the AreaFillOpacity of the stacked fragment. This property only applies for area-like series.
    */
    areaFillOpacity?: number | string;
    /**
     * Gets the series ActualAreaFillOpacity.  This property only applies for area-like series.
    */
    actualAreaFillOpacity?: number | string;
    /**
     * Gets or sets the opacity to use for the marker fills.
    */
    markerFillOpacity?: number | string;
    /**
     * Gets the actual opacity to use for hte marker fills.
    */
    actualMarkerFillOpacity?: number | string;
    /**
     * Gets or sets the outline mode to use for the fragment.
    */
    outlineMode?: SeriesOutlineMode | string;
    /**
     * Gets the actual outline mode to use for the fragment.
    */
    actualOutlineMode?: SeriesOutlineMode | string;
    /**
     * Gets or sets the target opacity to fade to for fade style highlighting.
    */
    highlightingFadeOpacity?: number | string;
    /**
     * Gets the actual target opacity to fade to for fade style highlighting.
    */
    actualHighlightingFadeOpacity?: number | string;
    /**
     * Gets or sets the x-radius of the ellipse that is used to round the corners of the column. This only applies to Bar and Column series.
    */
    radiusX?: number | string;
    /**
     * Gets the actual corner radius of the series
    */
    actualRadiusX?: number | string;
    /**
     * Gets or sets the y-radius of the ellipse that is used to round the corners of the column. This only applies to Bar and Column series.
    */
    radiusY?: number | string;
    /**
     * Gets the actual corner radius of the series
    */
    actualRadiusY?: number | string;
    /**
     * Gets or sets the width of the current series object's line thickness.
    */
    thickness?: number | string;
    /**
     * Gets or sets the thickness of this stacked fragment.
    */
    actualThickness?: number | string;
    /**
     * Gets or sets the width of the current series object's marker thickness.
    */
    markerThickness?: number | string;
    /**
     * Gets actual marker thickness of this stacked fragment.
    */
    actualMarkerThickness?: number | string;
    /**
     * Gets or sets the Title property.
     * The legend item control is created according to the Title on-demand by
     * the series object itself.
    */
    title?: any;
    /**
     * Gets or sets the value mapping property for the current series object.
    */
    valueMemberPath?: string;
    /**
     * Gets or sets the Visibility of the stacked fragment.
    */
    visibility?: Visibility | string;
    /**
     * Gets the actual visibility of the stacked fragment.
    */
    actualVisibility?: Visibility | string;
    /**
     * Gets the resolved brush used between the local series and the parent series.
    */
    parentOrLocalBrush?: string;
    /**
 * Event raised when a property (including "effective" and non-dependency property) value changes.
*/
    propertyUpdated?: (s: IgrStackedFragmentSeries, e: IgrPropertyUpdatedEventArgs) => void;
}
