UNPKG

ngx-permissions

Version:

Permission and roles based access control for your angular(angular 2,4,5,6,7,8+) applications(AOT, lazy modules compatible)

33 lines (32 loc) 1.47 kB
import { InjectionToken } from '@angular/core'; import { Observable } from 'rxjs'; import { NgxPermission } from '../model/permission.model'; import { ValidationFn } from '../model/permissions-router-data.model'; import { NgxPermissionsStore } from '../store/permissions.store'; import * as i0 from "@angular/core"; export interface NgxPermissionsObject { [name: string]: NgxPermission; } export declare const USE_PERMISSIONS_STORE: InjectionToken<unknown>; export declare class NgxPermissionsService { private isolate; private permissionsStore; private permissionsSource; permissions$: Observable<NgxPermissionsObject>; constructor(isolate: boolean, permissionsStore: NgxPermissionsStore); /** * Remove all permissions from permissions source */ flushPermissions(): void; hasPermission(permission: string | string[]): Promise<boolean>; loadPermissions(permissions: string[], validationFunction?: ValidationFn): void; addPermission(permission: string | string[], validationFunction?: ValidationFn): void; removePermission(permissionName: string): void; getPermission(name: string): NgxPermission | undefined; getPermissions(): NgxPermissionsObject; private reducePermission; private hasArrayPermission; private hasPermissionValidationFunction; static ɵfac: i0.ɵɵFactoryDeclaration<NgxPermissionsService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<NgxPermissionsService>; }