import * as tslib_1 from "tslib";
import { forwardRef, Input } from '@angular/core';
import { IgxFinancialSeriesComponent } from "./igx-financial-series-component";
import { IgxSeriesComponent } from "./igx-series-component";
/**
 * Represents the base functionality for a IgxDataChartComponent financial overlay series.
 * The difference between a FinancialIndicator and a FinancialOverlay is small.
 * Overlays are usually drawn against the same axes as the price, but they don't
 * have to be. Overlays mostly display multiple values, but not all of them, and so
 * so some indicators.
*
* The `IgxFinancialOverlayComponent` class represents the base functionality for a IgxDataChartComponent financial overlay series.
*
* ```html
* <igx-data-chart
* #chart
* [dataSource]="data" >
* <igx-ordinal-time-x-axis
* dateTimeMemberPath="TimeStamp"
* #xAxis
* >
* </igx-ordinal-time-x-axis>
* <igx-numeric-y-axis
*     minimumValue="0"
*     #yAxis>
* </igx-numeric-y-axis>
* <igx-bollinger-bands-overlay
* [xAxis]="xAxis"
*     [yAxis]="yAxis"
*     openMemberPath="open"
*     highMemberPath="high"
*     lowMemberPath="low"
*     closeMemberPath="close"
*     volumeMemberPath="volume">
* </igx-bollinger-bands-overlay>
* </igx-data-chart>
* ```
*
* ```ts
* let series = new IgxBollingerBandsOverlayComponent();
* series.xAxis = this.xAxis;
* series.yAxis = this.yAxis;
* series.openMemberPath = "open";
* series.highMemberPath = "high";
* series.lowMemberPath = "low";
* series.closeMemberPath = "close";
* series.volumeMemberPath="volume";
* this.chart.series.add(series);
* ```
*/
export var IgxFinancialOverlayComponent_PROVIDERS = [{ provide: IgxFinancialSeriesComponent, useExisting: forwardRef(function () { return IgxFinancialOverlayComponent; }) }, { provide: IgxSeriesComponent, useExisting: forwardRef(function () { return IgxFinancialOverlayComponent; }) }];
var IgxFinancialOverlayComponent = /** @class */ (function (_super) {
    tslib_1.__extends(IgxFinancialOverlayComponent, _super);
    function IgxFinancialOverlayComponent() {
        return _super.call(this) || this;
    }
    Object.defineProperty(IgxFinancialOverlayComponent.prototype, "i", {
        /**
                                     * @hidden
                                     */
        get: function () {
            return this._implementation;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgxFinancialOverlayComponent.prototype, "ignoreFirst", {
        /**
         * Gets or sets the number of values to hide at the beginning of the indicator.
        *
        * Use the `ignoreFirst` property to sets the number of values to hide at the beginning of the indicator.
        *
        * ```ts
        *  series.ignoreFirst=2;
        * ```
        *
        * ```html
        *    <igx-data-chart
        *    #chart
        *        [dataSource]="data" >
        *  <igx-category-x-axis
        *        label="label"
        *        #xAxis>
        *        </igx-category-x-axis>
        * <igx-numeric-y-axis
        *        minimumValue="0"
        *        #yAxis>
        * </igx-numeric-y-axis>
        * <igx-bollinger-bands-overlay
        *    [xAxis]="xAxis"
        *      [yAxis]="yAxis"
        *      openMemberPath="open"
        *      highMemberPath="high"
        *      lowMemberPath="low"
        *      closeMemberPath="close"
        *      volumeMemberPath="volume"
        * 	  ignoreFirst="2">
        * </igx-bollinger-bands-overlay>
        *  </igx-data-chart>
        * ```
        */
        get: function () {
            return this.i.pj;
        },
        set: function (v) {
            this.i.pj = +v;
        },
        enumerable: true,
        configurable: true
    });
    /**
     * Scrolls the series to display the item for the specified data item.
     * The series is scrolled by the minimum amount required to place the specified data item within
     * the central 80% of the visible axis.
    
    * @param item  * The data item (item) to scroll to.
    *
    * Use the `scrollIntoView` method to scrolls the series to display the item for the specified data item.
    */
    IgxFinancialOverlayComponent.prototype.scrollIntoView = function (item) {
        var iv = this.i.c9(item);
        return (iv);
    };
    tslib_1.__decorate([
        Input(),
        tslib_1.__metadata("design:type", Number),
        tslib_1.__metadata("design:paramtypes", [Number])
    ], IgxFinancialOverlayComponent.prototype, "ignoreFirst", null);
    return IgxFinancialOverlayComponent;
}(IgxFinancialSeriesComponent));
export { IgxFinancialOverlayComponent };
//# sourceMappingURL=igx-financial-overlay-component.js.map