(function (global, factory) {
    typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core'), require('@angular/router'), require('@iotize/ionic'), require('@iotize/ionic/auth'), require('@iotize/ionic/config')) :
    typeof define === 'function' && define.amd ? define('@iotize/ionic/default', ['exports', '@angular/core', '@angular/router', '@iotize/ionic', '@iotize/ionic/auth', '@iotize/ionic/config'], factory) :
    (global = global || self, factory((global.iotize = global.iotize || {}, global.iotize.ionic = global.iotize.ionic || {}, global.iotize.ionic.default = {}), global.ng.core, global.ng.router, global.iotize.ionic, global.iotize.ionic.auth, global.iotize.ionic.config));
}(this, (function (exports, core, router, ionic, auth, config) { 'use strict';

    /**
     * @fileoverview added by tsickle
     * Generated from: lib/tap-device-angular.module.ts
     * @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
     */
    var TapDeviceAngularModule = /** @class */ (function () {
        function TapDeviceAngularModule() {
        }
        /**
         * @param {?=} tapAuthGuardConfig
         * @return {?}
         */
        TapDeviceAngularModule.forRoot = /**
         * @param {?=} tapAuthGuardConfig
         * @return {?}
         */
        function (tapAuthGuardConfig) {
            if (tapAuthGuardConfig === void 0) { tapAuthGuardConfig = {
                loginUrl: '/device/login'
            }; }
            return {
                ngModule: TapDeviceAngularModule,
                providers: [
                    {
                        provide: auth.DEVICE_AUTH_GUARD_CONFIG,
                        useValue: tapAuthGuardConfig
                    },
                    {
                        provide: ionic.TAP_INFO_RESOLVER_CONFIG,
                        useValue: config.defaultInfoResolverConfig
                    },
                    ionic.InfoResolverService,
                    ionic.CurrentDeviceService
                ]
            };
        };
        TapDeviceAngularModule.decorators = [
            { type: core.NgModule, args: [{
                        declarations: [],
                        providers: [
                            ionic.ConnectedTapResolver,
                            ionic.TapConnectionService
                        ],
                        imports: [
                            router.RouterModule
                        ],
                        exports: []
                    },] }
        ];
        return TapDeviceAngularModule;
    }());

    exports.TapDeviceAngularModule = TapDeviceAngularModule;

    Object.defineProperty(exports, '__esModule', { value: true });

})));
//# sourceMappingURL=iotize-ionic-default.umd.js.map
