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)

38 lines (37 loc) 1.53 kB
import { InjectionToken } from '@angular/core'; import { Observable } from 'rxjs'; import { ValidationFn } from '../model/permissions-router-data.model'; import { NgxRole } from '../model/role.model'; import { NgxRolesStore } from '../store/roles.store'; import { NgxPermissionsService } from './permissions.service'; import * as i0 from "@angular/core"; export declare const USE_ROLES_STORE: InjectionToken<unknown>; export interface NgxRolesObject { [name: string]: NgxRole; } export declare class NgxRolesService { private isolate; private rolesStore; private permissionsService; private rolesSource; roles$: Observable<NgxRolesObject>; constructor(isolate: boolean, rolesStore: NgxRolesStore, permissionsService: NgxPermissionsService); addRole(name: string, validationFunction: ValidationFn | string[]): void; addRoleWithPermissions(name: string, permissions: string[]): void; addRoles(rolesObj: { [name: string]: ValidationFn | string[]; }): void; addRolesWithPermissions(rolesObj: { [name: string]: string[]; }): void; flushRoles(): void; flushRolesAndPermissions(): void; removeRole(roleName: string): void; getRoles(): NgxRolesObject; getRole(name: string): NgxRole | undefined; hasOnlyRoles(names: string | string[]): Promise<boolean>; private hasRoleKey; private hasRolePermission; static ɵfac: i0.ɵɵFactoryDeclaration<NgxRolesService, never>; static ɵprov: i0.ɵɵInjectableDeclaration<NgxRolesService>; }