import { ɵɵdefineNgModule, ɵɵdefineInjector, ɵɵsetNgModuleScope, ɵsetClassMetadata, NgModule } from '@angular/core';
import { RouterModule } from '@angular/router';
import { TAP_INFO_RESOLVER_CONFIG, InfoResolverService, CurrentDeviceService, ConnectedTapResolver, TapConnectionService } from '@iotize/ionic';
import { DEVICE_AUTH_GUARD_CONFIG } from '@iotize/ionic/auth';
import { defaultInfoResolverConfig } from '@iotize/ionic/config';

class TapDeviceAngularModule {
    static forRoot(tapAuthGuardConfig = {
        loginUrl: '/device/login',
    }) {
        return {
            ngModule: TapDeviceAngularModule,
            providers: [
                {
                    provide: DEVICE_AUTH_GUARD_CONFIG,
                    useValue: tapAuthGuardConfig,
                },
                {
                    provide: TAP_INFO_RESOLVER_CONFIG,
                    useValue: defaultInfoResolverConfig,
                },
                InfoResolverService,
                CurrentDeviceService,
            ],
        };
    }
}
/** @nocollapse */ TapDeviceAngularModule.ɵfac = function TapDeviceAngularModule_Factory(t) { return new (t || TapDeviceAngularModule)(); };
/** @nocollapse */ TapDeviceAngularModule.ɵmod = ɵɵdefineNgModule({ type: TapDeviceAngularModule });
/** @nocollapse */ TapDeviceAngularModule.ɵinj = ɵɵdefineInjector({ providers: [ConnectedTapResolver, TapConnectionService], imports: [[RouterModule]] });
(function () { (typeof ngJitMode === "undefined" || ngJitMode) && ɵɵsetNgModuleScope(TapDeviceAngularModule, { imports: [RouterModule] }); })();
(function () { (typeof ngDevMode === "undefined" || ngDevMode) && ɵsetClassMetadata(TapDeviceAngularModule, [{
        type: NgModule,
        args: [{
                declarations: [],
                providers: [ConnectedTapResolver, TapConnectionService],
                imports: [RouterModule],
                exports: [],
            }]
    }], null, null); })();

/**
 * Generated bundle index. Do not edit.
 */

export { TapDeviceAngularModule };
//# sourceMappingURL=iotize-ionic-default.js.map
