@universis/common
Version:
Universis - common directives and services
31 lines (30 loc) • 1.55 kB
TypeScript
import { InjectionToken } from '@angular/core';
import { ActivatedRouteSnapshot, CanActivate, CanActivateChild, Router, RouterStateSnapshot } from '@angular/router';
import { UserService } from '../services/user.service';
import { Observable } from 'rxjs';
import { ErrorService } from '../../error/error.service';
import { ConfigurationService } from '../../shared/services/configuration.service';
import { LocationPermission } from './auth.guard.interfaces';
import * as i0 from "@angular/core";
export declare let APP_LOCATIONS: InjectionToken<unknown>;
export declare const DEFAULT_APP_LOCATIONS: {
privilege: string;
target: {
url: string;
};
mask: number;
}[];
export declare class AuthGuard implements CanActivate, CanActivateChild {
private _router;
private _locations;
private _errorService;
private _configurationService;
private _userService;
constructor(_router: Router, _locations: Array<LocationPermission>, _errorService: ErrorService, _configurationService: ConfigurationService, _userService: UserService);
canActivateLocation(path: string, user: any): LocationPermission | undefined;
canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | boolean;
canActivateChild(childRoute: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean> | Promise<boolean> | boolean;
private _canActivate;
static ɵfac: i0.ɵɵFactoryDeclaration<AuthGuard, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<AuthGuard>;
}