import { ActivatedRouteSnapshot, Router, RouterStateSnapshot } from '@angular/router'; import { UofxAuthGuardService } from './auth-guard.service'; import * as i0 from "@angular/core"; export declare class AuthGuard { private agService; private router; private loginUrl; constructor(agService: UofxAuthGuardService, router: Router); canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise | boolean; canActivateChild(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise | boolean; /** 路由權限檢查 */ _canActivateRoute(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise | boolean; /** 是否為允許匿名存取 */ _isAllowAnonymous(route: ActivatedRouteSnapshot): boolean; /** 取得 Function Ids */ _getFunctionIds(route: ActivatedRouteSnapshot): Array; /** UnitTest 用 */ _getLocalPathName(): string; /** 檢查路由權限 */ _checkActivate(url: string, functionIds?: Array): Promise; /** 移除 URL Query String (路由權限檢查 support query string) */ _removeURLQueryString(url: string): string; /** 驗證是否有權限 */ _verifyAuth(url: string, functionIds?: Array, haveUser?: boolean): boolean; /** 有使用者但非登入頁面的導頁處理 */ _redirectByNotLoginPageButHaveUser(url: string, haveUser: boolean): void; /** 沒有使用者且非登入頁面的導頁處理 */ _redirectByNotLoginPageAndNotUser(url: string, haveUser: boolean): void; /** 本身是登入頁面處理 */ _redirectByLoginPageIsSelf(url: string): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }