import type { GradientParams } from "../../../../Core/GradientParams";
import { ESeriesType } from "../../../../types/SeriesType";
import type { SciChartSurface } from "../../SciChartSurface";
import type { TSciChart } from "../../../../types/TSciChart";
import type { ILineRenderableSeries } from "../ILineRenderableSeries";
import { ELineType } from "../types/ELineType";
import { BaseMountainRenderableSeries } from "../BaseMountainRenderableSeries";
import type { IMountainRenderableSeriesOptions } from "../FastMountainRenderableSeries";
import type { IHitTestProvider } from "../HitTest/IHitTestProvider";
import type { IPolarBandRenderableSeries } from "./PolarBandRenderableSeries";
import type { IPolarLineRenderableSeriesOptions } from "./PolarLineRenderableSeries";
/**
 * Options passed to a {@link PolarMountainRenderableSeries} at construction time
 */
export interface IPolarMountainRenderableSeriesOptions extends IMountainRenderableSeriesOptions {
    /**
     * Sets the interpolation flag for line segments. If False each line segment draws normally. If True each line segments draws as an arc.
     */
    interpolateLine?: boolean;
}
/**
 * Defines a polar mountain/area series or JavaScript polar mountain chart type in the SciChart's High Performance Real-time
 * {@link https://www.scichart.com/javascript-chart-features | JavaScript Charts}
 * @remarks
 * To add a polar mountain series to a {@link SciChartPolarSurface} you need to declare both the {@link PolarMountainRenderableSeries | RenderableSeries}
 * and a {@link XyDataSeries | DataSeries}. Simplified code sample below:
 *
 * ```ts
 * const { sciChartSurface, wasmContext } = SciChartPolarSurface.create(rootId);
 *
 * // Create the renderableSeries
 * const polarMountainSeries = new PolarMountainRenderableSeries(wasmContext, {
 *      dataSeries: new XyDataSeries(wasmContext, {
 *          xValues: [1, 2, 3, 4],
 *          yValues: [3, 2, 4, 1],
 *      }),
 *      fill: "#FFFFFF88"
 * });
 * // append to the SciChartSurface
 * sciChartPolarSurface.renderableSeries.add(polarMountainSeries);
 * ```
 *
 * ---
 * 📚 Docs: {@link https://www.scichart.com/documentation/js/v4/2d-charts/chart-types/polar-mountain-renderable-series/}
 */
export declare class PolarMountainRenderableSeries extends BaseMountainRenderableSeries implements ILineRenderableSeries, IPolarBandRenderableSeries {
    readonly isPolar: boolean;
    readonly type = ESeriesType.PolarMountainSeries;
    readonly lineType: ELineType;
    private fillY1Property;
    private fillLinearGradient1Property;
    private interpolateLineProperty;
    /**
     * Creates an instance of the {@link PolarMountainRenderableSeries}
     * @param webAssemblyContext The {@link TSciChart | SciChart WebAssembly Context} containing
     * native methods and access to our WebGL2 WebAssembly Drawing Engine
     * @param options optional parameters of type {@link IPolarMountainRenderableSeriesOptions} applied when constructing the series type
     *
     * ---
     * 📚 Docs: {@link https://www.scichart.com/documentation/js/v4/2d-charts/chart-types/polar-mountain-renderable-series/}
     */
    constructor(webAssemblyContext: TSciChart, options?: IPolarMountainRenderableSeriesOptions);
    /** @inheritDoc */
    get isDigitalLine(): boolean;
    /** @inheritDoc */
    onAttach(scs: SciChartSurface): void;
    /**
     * Gets or sets the interpolation flag for line segments. If False each line segment draws normally.
     * If True each line segment draws as an arc.
     */
    get interpolateLine(): boolean;
    set interpolateLine(value: boolean);
    /**
     * Gets or sets the fill color for the region below the zero line as an HTML Color code
     */
    get fillY1(): string;
    set fillY1(htmlColorCode: string);
    /**
     * Gets or sets the fill for the region below the zero line as a gradient brush
     */
    get fillLinearGradient1(): GradientParams;
    set fillLinear1Gradient(gradientBrushParams: GradientParams);
    /** @inheritDoc */
    get zeroLineY(): number;
    /** @inheritDoc */
    toJSON(excludeData?: boolean): import("../../../..").TSeriesDefinition;
    /** @inheritDoc */
    protected addDrawingProviders(webAssemblyContext: TSciChart, options?: IPolarLineRenderableSeriesOptions): void;
    /** @inheritDoc */
    protected newHitTestProvider(): IHitTestProvider;
}
