import { IgrSeries } from "./igr-series";
import { Visibility } from "igniteui-react-core/ES2015/Visibility";
import { IgrAnnotationLayer, IIgrAnnotationLayerProps } from "./igr-annotation-layer";
import { CrosshairLayer } from "./CrosshairLayer";
/**
 * Represents an annotation layer that displays crosshair lines that cross through the closest value of the target series under the cursor.
*/
export declare class IgrCrosshairLayer extends IgrAnnotationLayer<IIgrCrosshairLayerProps> {
    protected createImplementation(): CrosshairLayer;
    readonly i: CrosshairLayer;
    constructor(props: IIgrCrosshairLayerProps);
    /**
     * Gets or sets the color to use for the horizontal line. Leave null for an automatic value.
    */
    horizontalLineStroke: string;
    /**
     * Gets or sets the color to use for vertical line. Leave null for an automatic value.
    */
    verticalLineStroke: string;
    /**
     * Gets or sets the series to target this annotation to. If null, this annotation targets all series simultaneously.
    */
    targetSeries: IgrSeries;
    /**
     * Gets or sets whether to use value interpolation when drawing a line through the best value for the cursor position.
    */
    useInterpolation: boolean;
    /**
     * Gets or sets whether to use value interpolation when drawing a line through the best value for the cursor position.
    */
    isAxisAnnotationEnabled: boolean;
    /**
     * Gets or sets the color to use for the x axis annotation text. Leave unset for an automatic value.
    */
    xAxisAnnotationTextColor: string;
    /**
     * Gets or sets the color to use for the x axis annotation backing. Leave unset for an automatic value.
    */
    xAxisAnnotationBackground: string;
    /**
     * Gets or sets the precision to use displaying values for interpolated crosshair positions.
    */
    xAxisAnnotationInterpolatedValuePrecision: number;
    /**
     * Gets or sets the color to use for the x axis annotation outline. Leave unset for an automatic value.
    */
    xAxisAnnotationOutline: string;
    /**
     * Gets or sets the padding for the x axis annotation backing. Leave unset for an automatic value.
    */
    xAxisAnnotationPadding: number;
    /**
     * Gets or sets the stroke thickness for the x axis annotation backing. Leave unset for an automatic value.
    */
    xAxisAnnotationStrokeThickness: number;
    /**
     * Gets or sets the color to use for the y axis annotation text. Leave unset for an automatic value.
    */
    yAxisAnnotationTextColor: string;
    /**
     * Gets or sets the color to use for the y axis annotation backing. Leave unset for an automatic value.
    */
    yAxisAnnotationBackground: string;
    /**
     * Gets or sets the precision to use displaying values for interpolated crosshair positions.
    */
    yAxisAnnotationInterpolatedValuePrecision: number;
    /**
     * Gets or sets the color to use for the y axis annotation outline. Leave unset for an automatic value.
    */
    yAxisAnnotationOutline: string;
    /**
     * Gets or sets the padding for the y axis annotation backing. Leave unset for an automatic value.
    */
    yAxisAnnotationPadding: number;
    /**
     * Gets or sets the stroke thickness for the y axis annotation backing. Leave unset for an automatic value.
    */
    yAxisAnnotationStrokeThickness: number;
    /**
     * Gets or sets whether to display the vertical line.
    */
    verticalLineVisibility: Visibility;
    /**
     * Gets or sets whether to display the horizontal line.
    */
    horizontalLineVisibility: Visibility;
    /**
     * Gets or sets whether to skip unknown values when searching for series values.
    */
    skipUnknownValues: boolean;
}
export interface IIgrCrosshairLayerProps extends IIgrAnnotationLayerProps {
    /**
     * Gets or sets the color to use for the horizontal line. Leave null for an automatic value.
    */
    horizontalLineStroke?: string;
    /**
     * Gets or sets the color to use for vertical line. Leave null for an automatic value.
    */
    verticalLineStroke?: string;
    /**
     * Gets or sets the series to target this annotation to. If null, this annotation targets all series simultaneously.
    */
    targetSeries?: IgrSeries;
    /**
     * Gets or sets whether to use value interpolation when drawing a line through the best value for the cursor position.
    */
    useInterpolation?: boolean;
    /**
     * Gets or sets whether to use value interpolation when drawing a line through the best value for the cursor position.
    */
    isAxisAnnotationEnabled?: boolean;
    /**
     * Gets or sets the color to use for the x axis annotation text. Leave unset for an automatic value.
    */
    xAxisAnnotationTextColor?: string;
    /**
     * Gets or sets the color to use for the x axis annotation backing. Leave unset for an automatic value.
    */
    xAxisAnnotationBackground?: string;
    /**
     * Gets or sets the precision to use displaying values for interpolated crosshair positions.
    */
    xAxisAnnotationInterpolatedValuePrecision?: number;
    /**
     * Gets or sets the color to use for the x axis annotation outline. Leave unset for an automatic value.
    */
    xAxisAnnotationOutline?: string;
    /**
     * Gets or sets the padding for the x axis annotation backing. Leave unset for an automatic value.
    */
    xAxisAnnotationPadding?: number;
    /**
     * Gets or sets the stroke thickness for the x axis annotation backing. Leave unset for an automatic value.
    */
    xAxisAnnotationStrokeThickness?: number;
    /**
     * Gets or sets the color to use for the y axis annotation text. Leave unset for an automatic value.
    */
    yAxisAnnotationTextColor?: string;
    /**
     * Gets or sets the color to use for the y axis annotation backing. Leave unset for an automatic value.
    */
    yAxisAnnotationBackground?: string;
    /**
     * Gets or sets the precision to use displaying values for interpolated crosshair positions.
    */
    yAxisAnnotationInterpolatedValuePrecision?: number;
    /**
     * Gets or sets the color to use for the y axis annotation outline. Leave unset for an automatic value.
    */
    yAxisAnnotationOutline?: string;
    /**
     * Gets or sets the padding for the y axis annotation backing. Leave unset for an automatic value.
    */
    yAxisAnnotationPadding?: number;
    /**
     * Gets or sets the stroke thickness for the y axis annotation backing. Leave unset for an automatic value.
    */
    yAxisAnnotationStrokeThickness?: number;
    /**
     * Gets or sets whether to display the vertical line.
    */
    verticalLineVisibility?: Visibility;
    /**
     * Gets or sets whether to display the horizontal line.
    */
    horizontalLineVisibility?: Visibility;
    /**
     * Gets or sets whether to skip unknown values when searching for series values.
    */
    skipUnknownValues?: boolean;
}
