import { OnInit } from '@angular/core';
import { ActivatedRoute } from '@angular/router';
import { AlertService, CredentialsService, ErrorHandlerService, HttpService } from '../../core';
import { Role } from '../role.model';
import { Permission } from './permission.model';
import { MultiUserConfig, UserConfigService } from '../../user-config';
import { FormBuilder, FormGroup } from '@angular/forms';
import * as i0 from "@angular/core";
/**
 * Role Permissions management controller
 *
 * @author Joshua Kissoon
 * @since 20161013
 */
export declare class PermissionsManagementComponent implements OnInit {
    private http;
    private alertService;
    private route;
    private credentialsService;
    private errorHandler;
    userConfigService: UserConfigService;
    private fb;
    roles: Role[];
    permissions: Permission[];
    filteredPermissions: Permission[];
    moduleCode: string;
    clientId: number;
    config: MultiUserConfig;
    filterForm: FormGroup;
    constructor(http: HttpService, alertService: AlertService, route: ActivatedRoute, credentialsService: CredentialsService, errorHandler: ErrorHandlerService, userConfigService: UserConfigService, fb: FormBuilder);
    setFilteredPermissions(): void;
    ngOnInit(): void;
    isDisabled(isGlobal: boolean, isEditable: boolean): boolean;
    loadPermissions(): void;
    /**
     * Load the Roles from the DB
     */
    private loadRoles;
    updateRolePermission(role: Role, permission: Permission): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<PermissionsManagementComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<PermissionsManagementComponent, "role-permissions-management", never, { "clientId": { "alias": "clientId"; "required": false; }; }, {}, never, never, false, never>;
}
