import { ActivatedRouteSnapshot, CanActivate, Router, RouterStateSnapshot } from '@angular/router';
import { VixAuthService } from './auth.service';
import { AuthConfigService } from './auth-config.service';
/**
 * Auth guard will check user groups and app required groups and
 * judge user can view the route or not
 */
export declare class VixAuthGuard implements CanActivate {
    private auth;
    private authConfig;
    private router;
    constructor(auth: VixAuthService, authConfig: AuthConfigService, router: Router);
    /**
     * compare user groups and app required groups by UserGroups.hasPermission()
     * canActive will cache the user groups information by 1 hour.
     */
    canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Promise<boolean>;
}
