/*
THIS INFRAGISTICS ULTIMATE SOFTWARE LICENSE  AGREEMENT ("AGREEMENT") LOCATED HERE:
https://www.infragistics.com/legal/license/igultimate-la
https://www.infragistics.com/legal/license/igultimate-eula
GOVERNS THE LICENSING, INSTALLATION AND USE OF INFRAGISTICS SOFTWARE. BY DOWNLOADING AND/OR INSTALLING AND USING INFRAGISTICS SOFTWARE:  you are indicating that you have read and understand this Agreement, and agree to be legally bound by it on behalf of the yourself and your company.
*/
import { __extends } from "tslib";
import { NativeUIComponent } from "./NativeUIComponent";
import { NativeUIInputDisplayType_$type } from "./NativeUIInputDisplayType";
import { enumGetBox, EnumUtil, markType } from "./type";
import { NativeUIDisplayDensity_$type } from "./NativeUIDisplayDensity";
import { NativeUIInputType_$type } from "./NativeUIInputType";
import { NativeUIComponentHorizontalAlignment_$type } from "./NativeUIComponentHorizontalAlignment";
/**
 * @hidden
 */
var NativeUIInput = /** @class */ /*@__PURE__*/ (function (_super) {
    __extends(NativeUIInput, _super);
    function NativeUIInput() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.bk = null;
        _this.bg = null;
        return _this;
    }
    Object.defineProperty(NativeUIInput.prototype, "bh", {
        get: function () {
            return this.d;
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(NativeUIInput.prototype, "bm", {
        get: function () {
            var a = this.ae(0);
            return a == null ? 1 : EnumUtil.getEnumValue(NativeUIInputDisplayType_$type, a);
        },
        set: function (a) {
            this.a0(0, enumGetBox(NativeUIInputDisplayType_$type, a));
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(NativeUIInput.prototype, "bj", {
        get: function () {
            var a = this.ae(1);
            return a == null ? 1 : EnumUtil.getEnumValue(NativeUIDisplayDensity_$type, a);
        },
        set: function (a) {
            this.a0(1, enumGetBox(NativeUIDisplayDensity_$type, a));
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(NativeUIInput.prototype, "bq", {
        get: function () {
            var a = this.ae(2);
            return a;
        },
        set: function (a) {
            this.a0(2, a);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(NativeUIInput.prototype, "bl", {
        get: function () {
            return this.bk;
        },
        set: function (a) {
            var b = this.bk;
            this.bk = a;
            if (this.bk != null) {
                this.an(0, this.bk);
            }
            else {
                this.ay(0, b);
            }
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(NativeUIInput.prototype, "bn", {
        get: function () {
            var a = this.ae(19);
            return a == null ? 0 : EnumUtil.getEnumValue(NativeUIInputType_$type, a);
        },
        set: function (a) {
            this.a0(19, enumGetBox(NativeUIInputType_$type, a));
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(NativeUIInput.prototype, "bi", {
        get: function () {
            var a = this.ae(20);
            return a == null ? 0 : EnumUtil.getEnumValue(NativeUIComponentHorizontalAlignment_$type, a);
        },
        set: function (a) {
            this.a0(20, enumGetBox(NativeUIComponentHorizontalAlignment_$type, a));
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(NativeUIInput.prototype, "bt", {
        get: function () {
            var a = this.ae(33);
            return a == null ? null : a;
        },
        set: function (a) {
            this.a0(33, a);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(NativeUIInput.prototype, "bp", {
        get: function () {
            var a = this.ae(21);
            return a == null ? false : a;
        },
        set: function (a) {
            this.a0(21, a);
        },
        enumerable: false,
        configurable: true
    });
    Object.defineProperty(NativeUIInput.prototype, "bo", {
        get: function () {
            var a = this.ae(32);
            return a == null ? false : a;
        },
        set: function (a) {
            this.a0(32, a);
        },
        enumerable: false,
        configurable: true
    });
    NativeUIInput.prototype.br = function () {
        this.bh.select(this.ak);
    };
    NativeUIInput.prototype.bs = function (a, b) {
        this.bh.setSelectionRange(this.ak, a, b);
    };
    NativeUIInput.$t = markType(NativeUIInput, 'NativeUIInput', NativeUIComponent.$);
    return NativeUIInput;
}(NativeUIComponent));
export { NativeUIInput };
