import * as tslib_1 from "tslib";
import { Component, forwardRef, ChangeDetectionStrategy } from '@angular/core';
import { IgxStraightNumericAxisBaseComponent } from "./igx-straight-numeric-axis-base-component";
import { IgxNumericAxisBaseComponent } from "./igx-numeric-axis-base-component";
import { IgxAxisComponent } from "./igx-axis-component";
import { NumericYAxis } from "./NumericYAxis";
/**
 * Represents a IgxDataChartComponent numeric Y axis.
*
* The `IgxNumericYAxisComponent` treats the data as continuously varying numerical data items. Labels on this axis are placed along the Y-axis. Location of labels varies according to the value in a data column that is mapped using the `YMemberPath` property for Scatter Series or `ValueMemberPath` property for Category Series.
*
* ```html
* <igx-data-chart
*     [dataSource]="data" >
*     <igx-category-x-axis
*         label="label"
*         #xAxis>
*     </igx-category-x-axis>
*     <igx-numeric-y-axis
*         #yAxis>
*     </igx-numeric-y-axis>
*     <igx-column-series
*         [xAxis]="xAxis"
*         [yAxis]="yAxis"
*         valueMemberPath="value">
*     </igx-column-series>
* </igx-data-chart>
* ```
*/
export var IgxNumericYAxisComponent_PROVIDERS = [{ provide: IgxStraightNumericAxisBaseComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent; }) }, { provide: IgxNumericAxisBaseComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent; }) }, { provide: IgxAxisComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent; }) }];
var IgxNumericYAxisComponent = /** @class */ (function (_super) {
    tslib_1.__extends(IgxNumericYAxisComponent, _super);
    function IgxNumericYAxisComponent() {
        return _super.call(this) || this;
    }
    IgxNumericYAxisComponent_1 = IgxNumericYAxisComponent;
    IgxNumericYAxisComponent.prototype.createImplementation = function () {
        return new NumericYAxis();
    };
    Object.defineProperty(IgxNumericYAxisComponent.prototype, "i", {
        /**
                                     * @hidden
                                     */
        get: function () {
            return this._implementation;
        },
        enumerable: true,
        configurable: true
    });
    Object.defineProperty(IgxNumericYAxisComponent.prototype, "isVertical", {
        /**
         * Gets if the current axis is of vertical axis
        */
        get: function () {
            return this.i.cf;
        },
        enumerable: true,
        configurable: true
    });
    IgxNumericYAxisComponent.prototype.scrollRangeIntoView = function (minimum, maximum) {
        this.i.lv(minimum, maximum);
    };
    var IgxNumericYAxisComponent_1;
    IgxNumericYAxisComponent = IgxNumericYAxisComponent_1 = tslib_1.__decorate([
        Component({
            selector: 'igx-numeric-y-axis',
            template: "",
            providers: [{ provide: IgxStraightNumericAxisBaseComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent_1; }) }, { provide: IgxNumericAxisBaseComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent_1; }) }, { provide: IgxAxisComponent, useExisting: forwardRef(function () { return IgxNumericYAxisComponent_1; }) }],
            changeDetection: ChangeDetectionStrategy.OnPush
        }),
        tslib_1.__metadata("design:paramtypes", [])
    ], IgxNumericYAxisComponent);
    return IgxNumericYAxisComponent;
}(IgxStraightNumericAxisBaseComponent));
export { IgxNumericYAxisComponent };
//# sourceMappingURL=igx-numeric-y-axis-component.js.map