import { SplineType_$type } from "./SplineType";
import { IgrHorizontalAnchoredCategorySeries } from "./igr-horizontal-anchored-category-series";
import { ensureBool, ensureEnum } from "igniteui-react-core";
/**
 * Represents the base class for all IgxDataChartComponent spline series.
*/
export class IgrSplineSeriesBase extends IgrHorizontalAnchoredCategorySeries {
    /**
                                 * @hidden
                                 */
    get i() {
        return this._implementation;
    }
    constructor(props) {
        super(props);
    }
    /**
     * Gets or sets whether to include the spline shape in the axis range requested of the axis.
    */
    get isSplineShapePartOfRange() {
        return this.i.zj;
    }
    set isSplineShapePartOfRange(v) {
        this.i.zj = ensureBool(v);
    }
    /**
     * Gets whether the current series shows an area or line shape.
    */
    get isAreaOrLine() {
        return this.i.d9;
    }
    /**
     * Gets or sets the type of spline to be rendered.
    *
    * ```ts
    * this.series.splineType = SplineType.Clamped;
    * ```
    *
    * ```ts
    *  <IgrDataChart
    *     dataSource={this.state.dataSource} >
    *
    *     <IgrCategoryXAxis name="xAxis" />
    *     <IgrNumericYAxis name="yAxis" />
    *
    *     <IgrSplineAreaSeries
    *      name="series1"
    *      valueMemberPath="value"/>
    *  </IgrDataChart>
    * ```
    */
    get splineType() {
        return this.i.zi;
    }
    set splineType(v) {
        this.i.zi = ensureEnum(SplineType_$type, v);
    }
}
