import { KeycloakService } from 'keycloak-angular'; import { NGXLogger } from 'ngx-logger'; import { Observable } from 'rxjs'; import { PermissionContext, PermissionRequest } from '../models'; import { PermissionApiService } from './permission-api.service'; import * as i0 from "@angular/core"; export declare class PermissionService { private readonly keyCloakService; private readonly logger; private readonly permissionApiService; private readonly QUEUE_COLLECTION_PERIOD_MS; private _cachedResolvedPermissions; private _pendingPermissions; private _permissionRequestQueue; private _permissionQueueSubscription; private _clearCacheSubscription; constructor(keyCloakService: KeycloakService, logger: NGXLogger, permissionApiService: PermissionApiService); requestPermission(permissionRequest: PermissionRequest, context?: PermissionContext): Observable; private queuePermission; private openQueueSubscription; private cacheResolvedPermissions; private openClearCacheSubscription; private emptyQueue; private clearCache; private clearPending; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }