import { AfterViewInit, ChangeDetectorRef, OnInit } from '@angular/core'; import { TabEntity } from '@prutech/components'; import { Lookup, Program, User as IdentityUser, UserService } from '@prutech/identity-client'; import { FormArray, FormBuilder, FormGroup } from '@angular/forms'; import { ActivatedRoute, Router } from '@angular/router'; import { RoleDetailsService } from './services/role-details.service'; import { Observable } from 'rxjs'; import { Role } from './models/role'; import { AbstractComponent } from '../../shared/components/abstract-component'; import { Permission } from './models/permission'; import { MatDialog } from '@angular/material/dialog'; import { LookupModel } from '../../shared/models/lookup-model'; import { ProgramListService } from './services/program-list.service'; import * as i0 from "@angular/core"; export declare class RoleDetailsComponent extends AbstractComponent implements OnInit, AfterViewInit { private route; private roleDetailsService; private userService; private router; private fb; private cdRef; matDialog: MatDialog; programListService: ProgramListService; role: Role; editMode: boolean; loading: Observable; loggedInUser: IdentityUser; primaryTab: TabEntity; roleDetails: FormGroup; permissions: Permission[]; menus: Lookup[]; permissionData: Permission[]; panelOpenState: boolean; roleForm: FormGroup; permissionGroupData: string[]; roleId: string; roleDetailsData: Role; permissionListLoading: Observable; showDeleteButton: boolean; department: 'DEPARTMENT'; departmentLookup: LookupModel; lookupDataLoading: Observable; programLookupData: LookupModel[]; rolePermissions: Permission[]; showPermissions: boolean; constructor(route: ActivatedRoute, roleDetailsService: RoleDetailsService, userService: UserService, router: Router, fb: FormBuilder, cdRef: ChangeDetectorRef, matDialog: MatDialog, programListService: ProgramListService); ngAfterViewInit(): void; getPrograms(value: any): void; ngOnInit(): void; setPermission(permission: Permission[]): Permission[]; get permissionFormArray(): FormArray; initializeForm(): void; patchForm(): void; get permissionControls(): FormGroup[]; get permissionGroups(): string[]; permissionsByGroupName(groupName: string): Permission[]; initializeMenus(): FormGroup[]; get permissionsControls(): FormGroup[]; get menusControls(): FormGroup[]; compareProgram(p1: Program, p2: Program): boolean; submit(): void; deleteRole(): void; exit(): void; afterOnDestroy(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵcmp: i0.ɵɵComponentDeclaration; }