import * as i0 from '@angular/core';
import { 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 */ /** @nocollapse */ TapDeviceAngularModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TapDeviceAngularModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
/** @nocollapse */ /** @nocollapse */ TapDeviceAngularModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TapDeviceAngularModule, imports: [RouterModule] });
/** @nocollapse */ /** @nocollapse */ TapDeviceAngularModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TapDeviceAngularModule, providers: [ConnectedTapResolver, TapConnectionService], imports: [[RouterModule]] });
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.2", ngImport: i0, type: TapDeviceAngularModule, decorators: [{
            type: NgModule,
            args: [{
                    declarations: [],
                    providers: [ConnectedTapResolver, TapConnectionService],
                    imports: [RouterModule],
                    exports: [],
                }]
        }] });

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

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