import { ActivatedRouteSnapshot, CanActivate, CanLoad, Route, Router, RouterStateSnapshot, UrlSegment, UrlTree } from '@angular/router'; import { AccessRequirementFacade, MtnaAccessRequirementService } from '@mtna/web-security-angular'; import { RdsApiService, RdsCatalogService } from '@rds/shared-api'; import { Observable } from 'rxjs'; import { MatDialog } from '@angular/material/dialog'; import { MatSnackBar } from '@angular/material/snack-bar'; import * as i0 from "@angular/core"; /** * Ensure the user has completed all the access requirements necessary to access a particular resource in the * application. * * @author Andrew DeCarlo */ export declare class RdsAccessRequirementGuard implements CanLoad, CanActivate { private dialog; private accessRequirementService; private accessRequirementFacade; private catalogService; private rdsApiService; private router; private snackbar; constructor(dialog: MatDialog, accessRequirementService: MtnaAccessRequirementService, accessRequirementFacade: AccessRequirementFacade, catalogService: RdsCatalogService, rdsApiService: RdsApiService, router: Router, snackbar: MatSnackBar); canLoad(route: Route, segments: UrlSegment[]): Observable; /** * This method will evaluate the catalog and data product IDs that are found in the route to determine if there * are outstanding access requirements that must be taken care of before the route can be activated. It will use * the ID's to resolve the data product URI and then use that to interrogate the access service for any necessary * access requirements. * * @param route the route which should contain the catalog and data product IDs */ canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable; private checkAccessRequirements; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }