import type { IErrorRenderableSeries } from "../IErrorRenderableSeries";
import type { SCRTLineDrawingParams, TSciChart } from "../../../../types/TSciChart";
import type { WebGlRenderContext2D } from "../../../Drawing/WebGlRenderContext2D";
import type { RenderPassData } from "../../../Services/RenderPassData";
import type { TDpiChangedEventArgs } from "../../TextureManager/DpiHelper";
import { BaseSeriesDrawingProvider } from "./BaseSeriesDrawingProvider";
/**
 * Used internally - a drawing provider performs drawing for a {@link BaseBandRenderableSeries} using
 * our WebAssembly WebGL rendering engine
 */
export declare class ErrorSeriesDrawingProvider extends BaseSeriesDrawingProvider<IErrorRenderableSeries> {
    private linesPenCache;
    private nativeDrawingProvider;
    protected args: SCRTLineDrawingParams;
    private tempXVec;
    private tempYVec;
    /**
     * Creates an instance of the {@link BandSeriesDrawingProvider}
     * @param webAssemblyContext The {@link TSciChart | SciChart 2D WebAssembly Context} containing native methods and
     * access to our WebGL2 Engine and WebAssembly numerical methods
     * @param parentSeries the parent {@link BaseBandRenderableSeries} which this drawing provider is attached to
     */
    constructor(webAssemblyContext: TSciChart, parentSeries: IErrorRenderableSeries);
    /**
     * @inheritDoc
     */
    onAttachSeries(): void;
    /**
     * @inheritDoc
     */
    onDetachSeries(): void;
    /**
     * @inheritDoc
     */
    delete(): void;
    /**
     * @inheritDoc
     */
    draw(renderContext: WebGlRenderContext2D, renderPassData: RenderPassData): void;
    /**
     * @inheritDoc
     */
    onDpiChanged(args: TDpiChangedEventArgs): void;
    /**
     * @inheritDoc
     */
    onSeriesPropertyChange(propertyName: string): void;
    /**
     * To remove this and prepareTempMedianVectors() we need to update native SCRTLineSegmentDrawingProvider to support
     * input of three vectors xVals, yVals, x1Vals where x1Vals are treated as length of the line segment in X direction centered in x,y
     */
    private prepareTempCapVectors;
    private drawCaps;
    private addLineVertices;
}
