ngx-permissions
Version:
Permission and roles based access control for your angular(angular 2,4,5,6,7,8+) applications(AOT, lazy modules compatible)
49 lines (48 loc) • 3.79 kB
TypeScript
import { EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges, TemplateRef } from '@angular/core';
import { StrategyFunction } from '../service/configuration.service';
import * as i0 from "@angular/core";
export declare class NgxPermissionsDirective implements OnInit, OnDestroy, OnChanges {
ngxPermissionsOnly: string | string[];
ngxPermissionsOnlyThen: TemplateRef<any>;
ngxPermissionsOnlyElse: TemplateRef<any>;
ngxPermissionsExcept: string | string[];
ngxPermissionsExceptElse: TemplateRef<any>;
ngxPermissionsExceptThen: TemplateRef<any>;
ngxPermissionsThen: TemplateRef<any>;
ngxPermissionsElse: TemplateRef<any>;
ngxPermissionsOnlyAuthorisedStrategy: string | StrategyFunction;
ngxPermissionsOnlyUnauthorisedStrategy: string | StrategyFunction;
ngxPermissionsExceptUnauthorisedStrategy: string | StrategyFunction;
ngxPermissionsExceptAuthorisedStrategy: string | StrategyFunction;
ngxPermissionsUnauthorisedStrategy: string | StrategyFunction;
ngxPermissionsAuthorisedStrategy: string | StrategyFunction;
permissionsAuthorized: EventEmitter<any>;
permissionsUnauthorized: EventEmitter<any>;
private initPermissionSubscription;
private firstMergeUnusedRun;
private currentAuthorizedState;
private readonly permissionsService;
private readonly configurationService;
private readonly rolesService;
private readonly viewContainer;
private readonly changeDetector;
private readonly templateRef;
ngOnInit(): void;
ngOnChanges(changes: SimpleChanges): void;
ngOnDestroy(): void;
private validateExceptOnlyPermissions;
private validateExceptAndOnlyPermissions;
private validateOnlyPermissions;
private handleUnauthorisedPermission;
private handleAuthorisedPermission;
private applyStrategyAccordingToStrategyType;
private showTemplateBlockInView;
private getAuthorisedTemplates;
private elseBlockDefined;
private thenBlockDefined;
private getAuthorizedStrategyInput;
private getUnAuthorizedStrategyInput;
private applyStrategy;
static ɵfac: i0.ɵɵFactoryDeclaration<NgxPermissionsDirective, never>;
static ɵdir: i0.ɵɵDirectiveDeclaration<NgxPermissionsDirective, "[ngxPermissionsOnly],[ngxPermissionsExcept]", never, { "ngxPermissionsOnly": { "alias": "ngxPermissionsOnly"; "required": false; }; "ngxPermissionsOnlyThen": { "alias": "ngxPermissionsOnlyThen"; "required": false; }; "ngxPermissionsOnlyElse": { "alias": "ngxPermissionsOnlyElse"; "required": false; }; "ngxPermissionsExcept": { "alias": "ngxPermissionsExcept"; "required": false; }; "ngxPermissionsExceptElse": { "alias": "ngxPermissionsExceptElse"; "required": false; }; "ngxPermissionsExceptThen": { "alias": "ngxPermissionsExceptThen"; "required": false; }; "ngxPermissionsThen": { "alias": "ngxPermissionsThen"; "required": false; }; "ngxPermissionsElse": { "alias": "ngxPermissionsElse"; "required": false; }; "ngxPermissionsOnlyAuthorisedStrategy": { "alias": "ngxPermissionsOnlyAuthorisedStrategy"; "required": false; }; "ngxPermissionsOnlyUnauthorisedStrategy": { "alias": "ngxPermissionsOnlyUnauthorisedStrategy"; "required": false; }; "ngxPermissionsExceptUnauthorisedStrategy": { "alias": "ngxPermissionsExceptUnauthorisedStrategy"; "required": false; }; "ngxPermissionsExceptAuthorisedStrategy": { "alias": "ngxPermissionsExceptAuthorisedStrategy"; "required": false; }; "ngxPermissionsUnauthorisedStrategy": { "alias": "ngxPermissionsUnauthorisedStrategy"; "required": false; }; "ngxPermissionsAuthorisedStrategy": { "alias": "ngxPermissionsAuthorisedStrategy"; "required": false; }; }, { "permissionsAuthorized": "permissionsAuthorized"; "permissionsUnauthorized": "permissionsUnauthorized"; }, never, never, false, never>;
}