@ohayojp/acl
Version:
24 lines (23 loc) • 910 B
TypeScript
import { ActivatedRouteSnapshot, CanActivate, CanActivateChild, CanLoad, Route, Router, RouterStateSnapshot } from '@angular/router';
import { Observable } from 'rxjs';
import { ACLService } from './acl.service';
/**
* Routing guard prevent unauthorized users visit the page, [ACL Document](https://ohayojp.com/acl).
*
* ```ts
* data: {
* path: 'home',
* canActivate: [ ACLGuard ],
* data: { guard: 'user1' }
* }
* ```
*/
export declare class ACLGuard implements CanActivate, CanActivateChild, CanLoad {
private srv;
private router;
constructor(srv: ACLService, router: Router);
private process;
canLoad(route: Route): Observable<boolean>;
canActivateChild(childRoute: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean>;
canActivate(route: ActivatedRouteSnapshot, _state: RouterStateSnapshot | null): Observable<boolean>;
}