import { EventEmitter } from '@angular/core';
import { IgPoint } from "igniteui-angular-core";
import { ValueLayerValueMode } from "./ValueLayerValueMode";
import { IgxSeriesComponent } from "./igx-series-component";
import { IgxAxisComponent } from "./igx-axis-component";
import { OverlayTextLocation } from "./OverlayTextLocation";
import { AnnotationAppearanceMode } from "./AnnotationAppearanceMode";
import { IgxOverlayTextUpdatingEventArgs } from "./igx-overlay-text-updating-event-args";
import { IgxAnnotationLayerComponent } from "./igx-annotation-layer-component";
import { ValueLayer } from "./ValueLayer";
import * as i0 from "@angular/core";
/**
 * Represents an annotation layer that displays crosshair lines that cross through the closest value of the target series under the cursor.
*/
export declare class IgxValueLayerComponent extends IgxAnnotationLayerComponent {
    protected createImplementation(): ValueLayer;
    /**
                                 * @hidden
                                 */
    get i(): ValueLayer;
    constructor();
    /**
     * Gets whether the series is an crosshair annotation layer.
    */
    get isAnnotationValueLayer(): boolean;
    static ngAcceptInputType_isAnnotationValueLayer: boolean | string;
    /**
     * Gets or sets the value mode for the overlay.
    */
    get valueMode(): ValueLayerValueMode;
    set valueMode(v: ValueLayerValueMode);
    static ngAcceptInputType_valueMode: ValueLayerValueMode | string;
    /**
     * Gets or sets the color to use for the horizontal line. Leave null for an automatic value.
    */
    get horizontalLineStroke(): string;
    set horizontalLineStroke(v: string);
    /**
     * Gets or sets the color to use for vertical line. Leave null for an automatic value.
    */
    get verticalLineStroke(): string;
    set verticalLineStroke(v: string);
    /**
     * Gets or sets the series to target this annotation to. If null, this annotation targets all series simultaneously.
    */
    get targetSeries(): IgxSeriesComponent;
    set targetSeries(v: IgxSeriesComponent);
    /**
     * Gets or sets the axis to target this annotation to. If null, this annotation targets all value axis simultaneously.
    */
    get targetAxis(): IgxAxisComponent;
    set targetAxis(v: IgxAxisComponent);
    /**
     * Gets or sets whether to use value interpolation when drawing a line through the best value for the cursor position.
    */
    get useInterpolation(): boolean;
    set useInterpolation(v: boolean);
    static ngAcceptInputType_useInterpolation: boolean | string;
    /**
     * Gets or sets whether to draw annotations over the axes where the crosshair meets with them.
    */
    get isAxisAnnotationEnabled(): boolean;
    set isAxisAnnotationEnabled(v: boolean);
    static ngAcceptInputType_isAxisAnnotationEnabled: boolean | string;
    /**
     * Sets or gets a function which takes an object that produces a formatted label for the x axis annotation.
    */
    get xAxisAnnotationFormatLabel(): (item: any) => string;
    set xAxisAnnotationFormatLabel(v: (item: any) => string);
    /**
     * Sets or gets a function which takes an object that produces a formatted label for the y axis annotation.
    */
    get yAxisAnnotationFormatLabel(): (item: any) => string;
    set yAxisAnnotationFormatLabel(v: (item: any) => string);
    /**
     * Gets or sets the color to use for the x axis annotation text. Leave unset for an automatic value.
    */
    get xAxisAnnotationTextColor(): string;
    set xAxisAnnotationTextColor(v: string);
    /**
     * Gets or sets the color to use for the x axis annotation backing. Leave unset for an automatic value.
    */
    get xAxisAnnotationBackground(): string;
    set xAxisAnnotationBackground(v: string);
    /**
     * Gets or sets the corner radius to use for the x axis annotation backing. Leave unset for an automatic value.
    */
    get xAxisAnnotationBackgroundCornerRadius(): number;
    set xAxisAnnotationBackgroundCornerRadius(v: number);
    static ngAcceptInputType_xAxisAnnotationBackgroundCornerRadius: number | string;
    /**
     * Gets or sets the precision to use displaying values for interpolated crosshair positions.
    */
    get xAxisAnnotationInterpolatedValuePrecision(): number;
    set xAxisAnnotationInterpolatedValuePrecision(v: number);
    static ngAcceptInputType_xAxisAnnotationInterpolatedValuePrecision: number | string;
    /**
     * Gets or sets the color to use for the x axis annotation outline. Leave unset for an automatic value.
    */
    get xAxisAnnotationOutline(): string;
    set xAxisAnnotationOutline(v: string);
    /**
     * Gets or sets the padding to use withing the axis annotation callout. Leaving this NaN will use an automatic value related to the axis label margins.
    */
    get xAxisAnnotationPaddingLeft(): number;
    set xAxisAnnotationPaddingLeft(v: number);
    static ngAcceptInputType_xAxisAnnotationPaddingLeft: number | string;
    /**
     * Gets or sets the padding to use withing the axis annotation callout. Leaving this NaN will use an automatic value related to the axis label margins.
    */
    get xAxisAnnotationPaddingTop(): number;
    set xAxisAnnotationPaddingTop(v: number);
    static ngAcceptInputType_xAxisAnnotationPaddingTop: number | string;
    /**
     * Gets or sets the padding to use withing the axis annotation callout. Leaving this NaN will use an automatic value related to the axis label margins.
    */
    get xAxisAnnotationPaddingRight(): number;
    set xAxisAnnotationPaddingRight(v: number);
    static ngAcceptInputType_xAxisAnnotationPaddingRight: number | string;
    /**
     * Gets or sets the padding to use withing the axis annotation callout. Leaving this NaN will use an automatic value related to the axis label margins.
    */
    get xAxisAnnotationPaddingBottom(): number;
    set xAxisAnnotationPaddingBottom(v: number);
    static ngAcceptInputType_xAxisAnnotationPaddingBottom: number | string;
    /**
     * Gets or sets the padding to use withing the axis annotation callout. Leaving this NaN will use an automatic value related to the axis label margins.
    */
    get yAxisAnnotationPaddingLeft(): number;
    set yAxisAnnotationPaddingLeft(v: number);
    static ngAcceptInputType_yAxisAnnotationPaddingLeft: number | string;
    /**
     * Gets or sets the padding to use withing the axis annotation callout. Leaving this NaN will use an automatic value related to the axis label margins.
    */
    get yAxisAnnotationPaddingTop(): number;
    set yAxisAnnotationPaddingTop(v: number);
    static ngAcceptInputType_yAxisAnnotationPaddingTop: number | string;
    /**
     * Gets or sets the padding to use withing the axis annotation callout. Leaving this NaN will use an automatic value related to the axis label margins.
    */
    get yAxisAnnotationPaddingRight(): number;
    set yAxisAnnotationPaddingRight(v: number);
    static ngAcceptInputType_yAxisAnnotationPaddingRight: number | string;
    /**
     * Gets or sets the padding to use withing the axis annotation callout. Leaving this NaN will use an automatic value related to the axis label margins.
    */
    get yAxisAnnotationPaddingBottom(): number;
    set yAxisAnnotationPaddingBottom(v: number);
    static ngAcceptInputType_yAxisAnnotationPaddingBottom: number | string;
    /**
     * Gets or sets the stroke thickness for the x axis annotation backing. Leave unset for an automatic value.
    */
    get xAxisAnnotationStrokeThickness(): number;
    set xAxisAnnotationStrokeThickness(v: number);
    static ngAcceptInputType_xAxisAnnotationStrokeThickness: number | string;
    /**
     * Gets or sets the color to use for the y axis annotation text. Leave unset for an automatic value.
    */
    get yAxisAnnotationTextColor(): string;
    set yAxisAnnotationTextColor(v: string);
    /**
     * Gets or sets the color to use for the y axis annotation backing. Leave unset for an automatic value.
    */
    get yAxisAnnotationBackground(): string;
    set yAxisAnnotationBackground(v: string);
    /**
     * Gets or sets the corner radius to use for the y axis annotation backing. Leave unset for an automatic value.
    */
    get yAxisAnnotationBackgroundCornerRadius(): number;
    set yAxisAnnotationBackgroundCornerRadius(v: number);
    static ngAcceptInputType_yAxisAnnotationBackgroundCornerRadius: number | string;
    /**
     * Gets or sets the precision to use displaying values for interpolated crosshair positions.
    */
    get yAxisAnnotationInterpolatedValuePrecision(): number;
    set yAxisAnnotationInterpolatedValuePrecision(v: number);
    static ngAcceptInputType_yAxisAnnotationInterpolatedValuePrecision: number | string;
    /**
     * Gets or sets the color to use for the y axis annotation outline. Leave unset for an automatic value.
    */
    get yAxisAnnotationOutline(): string;
    set yAxisAnnotationOutline(v: string);
    /**
     * Gets or sets the stroke thickness for the y axis annotation backing. Leave unset for an automatic value.
    */
    get yAxisAnnotationStrokeThickness(): number;
    set yAxisAnnotationStrokeThickness(v: number);
    static ngAcceptInputType_yAxisAnnotationStrokeThickness: number | string;
    /**
     * Gets or sets whether to skip unknown values when searching for series values.
    */
    get skipUnknownValues(): boolean;
    set skipUnknownValues(v: boolean);
    static ngAcceptInputType_skipUnknownValues: boolean | string;
    /**
     * Gets or sets location of the overlay text in relation to shape of data annotation.
    */
    get overlayTextLocation(): OverlayTextLocation;
    set overlayTextLocation(v: OverlayTextLocation);
    static ngAcceptInputType_overlayTextLocation: OverlayTextLocation | string;
    /**
     * Gets or sets the horizontal margin of the overlay text in relation to shape of data annotation.
    */
    get overlayTextHorizontalMargin(): number;
    set overlayTextHorizontalMargin(v: number);
    static ngAcceptInputType_overlayTextHorizontalMargin: number | string;
    /**
     * Gets or sets the vertical margin of the overlay text in relation to shape of data annotation.
    */
    get overlayTextVerticalMargin(): number;
    set overlayTextVerticalMargin(v: number);
    static ngAcceptInputType_overlayTextVerticalMargin: number | string;
    /**
     * Gets or sets the horizontal padding of the overlay text in relation to shape of data annotation.
    */
    get overlayTextHorizontalPadding(): number;
    set overlayTextHorizontalPadding(v: number);
    static ngAcceptInputType_overlayTextHorizontalPadding: number | string;
    /**
     * Gets or sets the vertical padding of the overlay text in relation to shape of data annotation.
    */
    get overlayTextVerticalPadding(): number;
    set overlayTextVerticalPadding(v: number);
    static ngAcceptInputType_overlayTextVerticalPadding: number | string;
    /**
     * Gets or sets the angle rotation (in degrees) of the overlay text in relation to shape of data annotation.
    */
    get overlayTextAngle(): number;
    set overlayTextAngle(v: number);
    static ngAcceptInputType_overlayTextAngle: number | string;
    /**
     * Gets or sets the color the overlay text.
    */
    get overlayTextColor(): string;
    set overlayTextColor(v: string);
    /**
     * Gets or sets the background the overlay text.
    */
    get overlayTextBackground(): string;
    set overlayTextBackground(v: string);
    /**
     * Gets or sets the border stroke of the overlay text.
    */
    get overlayTextBorderColor(): string;
    set overlayTextBorderColor(v: string);
    /**
     * Gets or sets the border corner of the overlay text.
    */
    get overlayTextBorderRadius(): number;
    set overlayTextBorderRadius(v: number);
    static ngAcceptInputType_overlayTextBorderRadius: number | string;
    /**
     * Gets or sets the border thickness of the overlay text.
    */
    get overlayTextBorderThickness(): number;
    set overlayTextBorderThickness(v: number);
    static ngAcceptInputType_overlayTextBorderThickness: number | string;
    /**
     * Gets or sets whether the overlay text is visible in shape of data annotation
    */
    get overlayTextVisible(): boolean;
    set overlayTextVisible(v: boolean);
    static ngAcceptInputType_overlayTextVisible: boolean | string;
    /**
     * Gets or sets the text that will be displayed as the overlay annotation.
    */
    get overlayText(): string;
    set overlayText(v: string);
    /**
     * Gets or sets the shift of the overlay text color based on OverlayTextColorMode. Value must range between -1.0 to 1.0, where 0 means no color shift.
    */
    get overlayTextColorShift(): number;
    set overlayTextColorShift(v: number);
    static ngAcceptInputType_overlayTextColorShift: number | string;
    /**
     * Gets or sets the mode used for shifting the background of overlay text based on the target series.
    */
    get overlayTextColorMode(): AnnotationAppearanceMode;
    set overlayTextColorMode(v: AnnotationAppearanceMode);
    static ngAcceptInputType_overlayTextColorMode: AnnotationAppearanceMode | string;
    /**
     * Gets or sets whether the overlay text color matches brush of the layer
    */
    get overlayTextColorMatchLayer(): boolean;
    set overlayTextColorMatchLayer(v: boolean);
    static ngAcceptInputType_overlayTextColorMatchLayer: boolean | string;
    /**
     * Gets or sets the shift of the overlay background based on OverlayTextBackgroundMode. Value must range between -1.0 to 1.0, where 0 means no color shift.
    */
    get overlayTextBackgroundShift(): number;
    set overlayTextBackgroundShift(v: number);
    static ngAcceptInputType_overlayTextBackgroundShift: number | string;
    /**
     * Gets or sets the mode used for shifting the background of overlay text based on the target series.
    */
    get overlayTextBackgroundMode(): AnnotationAppearanceMode;
    set overlayTextBackgroundMode(v: AnnotationAppearanceMode);
    static ngAcceptInputType_overlayTextBackgroundMode: AnnotationAppearanceMode | string;
    /**
     * Gets or sets whether the overlay text background matches brush of the layer
    */
    get overlayTextBackgroundMatchLayer(): boolean;
    set overlayTextBackgroundMatchLayer(v: boolean);
    static ngAcceptInputType_overlayTextBackgroundMatchLayer: boolean | string;
    /**
     * Gets or sets the shift of the overlay border based on OverlayTextBorderMode. Value must range between -1.0 to 1.0, where 0 means no color shift.
    */
    get overlayTextBorderShift(): number;
    set overlayTextBorderShift(v: number);
    static ngAcceptInputType_overlayTextBorderShift: number | string;
    /**
     * Gets or sets the mode used for shifting the border of overlay text based on the target series.
    */
    get overlayTextBorderMode(): AnnotationAppearanceMode;
    set overlayTextBorderMode(v: AnnotationAppearanceMode);
    static ngAcceptInputType_overlayTextBorderMode: AnnotationAppearanceMode | string;
    /**
     * Gets or sets whether the overlay text border matches brush of the layer
    */
    get overlayTextBorderMatchLayer(): boolean;
    set overlayTextBorderMatchLayer(v: boolean);
    static ngAcceptInputType_overlayTextBorderMatchLayer: boolean | string;
    /**
     * Gets or Sets the style to use for the display text.
    */
    get overlayTextStyle(): string;
    set overlayTextStyle(v: string);
    /**
     * Gets the effective brush for the current value layer. Can be null for value
     * modes that target multiple series.
    */
    get actualValueLayerBrush(): string;
    set actualValueLayerBrush(v: string);
    get isSummarizationSupported(): boolean;
    static ngAcceptInputType_isSummarizationSupported: boolean | string;
    findByName(name: string): any;
    protected _styling(container: any, component: any, parent?: any): void;
    getSeriesValue(world: IgPoint, useInterpolation: boolean, skipUnknowns: boolean): number;
    private _stylingOverlayText;
    /**
     * Event raised when updating style of overlay text
    */
    get stylingOverlayText(): EventEmitter<{
        sender: any;
        args: IgxOverlayTextUpdatingEventArgs;
    }>;
    static ɵfac: i0.ɵɵFactoryDeclaration<IgxValueLayerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<IgxValueLayerComponent, "igx-value-layer", never, { "valueMode": "valueMode"; "horizontalLineStroke": "horizontalLineStroke"; "verticalLineStroke": "verticalLineStroke"; "targetSeries": "targetSeries"; "targetAxis": "targetAxis"; "useInterpolation": "useInterpolation"; "isAxisAnnotationEnabled": "isAxisAnnotationEnabled"; "xAxisAnnotationFormatLabel": "xAxisAnnotationFormatLabel"; "yAxisAnnotationFormatLabel": "yAxisAnnotationFormatLabel"; "xAxisAnnotationTextColor": "xAxisAnnotationTextColor"; "xAxisAnnotationBackground": "xAxisAnnotationBackground"; "xAxisAnnotationBackgroundCornerRadius": "xAxisAnnotationBackgroundCornerRadius"; "xAxisAnnotationInterpolatedValuePrecision": "xAxisAnnotationInterpolatedValuePrecision"; "xAxisAnnotationOutline": "xAxisAnnotationOutline"; "xAxisAnnotationPaddingLeft": "xAxisAnnotationPaddingLeft"; "xAxisAnnotationPaddingTop": "xAxisAnnotationPaddingTop"; "xAxisAnnotationPaddingRight": "xAxisAnnotationPaddingRight"; "xAxisAnnotationPaddingBottom": "xAxisAnnotationPaddingBottom"; "yAxisAnnotationPaddingLeft": "yAxisAnnotationPaddingLeft"; "yAxisAnnotationPaddingTop": "yAxisAnnotationPaddingTop"; "yAxisAnnotationPaddingRight": "yAxisAnnotationPaddingRight"; "yAxisAnnotationPaddingBottom": "yAxisAnnotationPaddingBottom"; "xAxisAnnotationStrokeThickness": "xAxisAnnotationStrokeThickness"; "yAxisAnnotationTextColor": "yAxisAnnotationTextColor"; "yAxisAnnotationBackground": "yAxisAnnotationBackground"; "yAxisAnnotationBackgroundCornerRadius": "yAxisAnnotationBackgroundCornerRadius"; "yAxisAnnotationInterpolatedValuePrecision": "yAxisAnnotationInterpolatedValuePrecision"; "yAxisAnnotationOutline": "yAxisAnnotationOutline"; "yAxisAnnotationStrokeThickness": "yAxisAnnotationStrokeThickness"; "skipUnknownValues": "skipUnknownValues"; "overlayTextLocation": "overlayTextLocation"; "overlayTextHorizontalMargin": "overlayTextHorizontalMargin"; "overlayTextVerticalMargin": "overlayTextVerticalMargin"; "overlayTextHorizontalPadding": "overlayTextHorizontalPadding"; "overlayTextVerticalPadding": "overlayTextVerticalPadding"; "overlayTextAngle": "overlayTextAngle"; "overlayTextColor": "overlayTextColor"; "overlayTextBackground": "overlayTextBackground"; "overlayTextBorderColor": "overlayTextBorderColor"; "overlayTextBorderRadius": "overlayTextBorderRadius"; "overlayTextBorderThickness": "overlayTextBorderThickness"; "overlayTextVisible": "overlayTextVisible"; "overlayText": "overlayText"; "overlayTextColorShift": "overlayTextColorShift"; "overlayTextColorMode": "overlayTextColorMode"; "overlayTextColorMatchLayer": "overlayTextColorMatchLayer"; "overlayTextBackgroundShift": "overlayTextBackgroundShift"; "overlayTextBackgroundMode": "overlayTextBackgroundMode"; "overlayTextBackgroundMatchLayer": "overlayTextBackgroundMatchLayer"; "overlayTextBorderShift": "overlayTextBorderShift"; "overlayTextBorderMode": "overlayTextBorderMode"; "overlayTextBorderMatchLayer": "overlayTextBorderMatchLayer"; "overlayTextStyle": "overlayTextStyle"; "actualValueLayerBrush": "actualValueLayerBrush"; }, { "stylingOverlayText": "stylingOverlayText"; }, never, never>;
}
