@ngx-security/permissions
Version:
Angular Security Permissions Module
33 lines (32 loc) • 1.53 kB
TypeScript
import { OnDestroy } from '@angular/core';
import { Subject, SubjectDetails, SubjectService } from '@ngx-security/core';
import { Observable } from 'rxjs';
import * as i0 from "@angular/core";
export declare abstract class SubjectPermissionsProvider {
private trie;
abstract permissions$: Observable<string[]>;
abstract getPermissions(): string[];
protected constructor();
apply(): void;
isPermittedAsync(permission: string): Observable<boolean>;
isPermitted(permission: string): boolean;
protected _isPermitted(permission: string): boolean;
}
export declare class StandardSubjectPermissionsProvider<D extends SubjectDetails, S extends Subject<D>> extends SubjectPermissionsProvider {
private subject;
permissions$: Observable<string[]>;
constructor(subject: SubjectService<D, S>);
getPermissions(): string[];
static ɵfac: i0.ɵɵFactoryDeclaration<StandardSubjectPermissionsProvider<any, any>, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<StandardSubjectPermissionsProvider<any, any>>;
}
export declare class UpdatableSubjectPermissionsProvider extends SubjectPermissionsProvider implements OnDestroy {
private permissions;
permissions$: Observable<string[]>;
constructor();
ngOnDestroy(): void;
getPermissions(): string[];
update(permissions: string[]): void;
static ɵfac: i0.ɵɵFactoryDeclaration<UpdatableSubjectPermissionsProvider, never>;
static ɵprov: i0.ɵɵInjectableDeclaration<UpdatableSubjectPermissionsProvider>;
}