import { ActivatedRouteSnapshot, CanActivate, RouterStateSnapshot, UrlTree } from '@angular/router';
import { Observable } from 'rxjs';
import { RedirectService } from '../../routing/redirect-service/redirect.service';
import { UserService } from '../../user/services/user.service';
import { ConfigurationService } from '../../configuration/configuration.service';
import { LoggerService } from '../../logger/services/logger.service';
import { View } from '../../../commons/schema';
import { NextGroupService } from '../../groups/services/next-group.service';
import * as i0 from "@angular/core";
export declare class GroupGuardService implements CanActivate {
    protected _redirectService: RedirectService;
    protected _userService: UserService;
    protected _nextGroupService: NextGroupService;
    protected _configService: ConfigurationService;
    protected _log: LoggerService;
    private readonly _loginUrl;
    constructor(_redirectService: RedirectService, _userService: UserService, _nextGroupService: NextGroupService, _configService: ConfigurationService, _log: LoggerService);
    canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<boolean | UrlTree> | Promise<boolean | UrlTree> | boolean | UrlTree;
    canAccessView(view: View, url: string): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<GroupGuardService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<GroupGuardService>;
}
