import { ApplicationRef, Injector } from '@angular/core'; import { Observable } from 'rxjs'; import { AbstractService } from '../abstract.service'; import { UserDialogData } from '../../layouts/default-layout/user-dialog/user-dialog.component'; import * as i0 from "@angular/core"; declare const available_users: readonly ["USER", "BPM_USER"]; declare type AppUsers = typeof available_users[number]; interface LoginData { login: string; name: string; surName: string; firstName: string; middleName: string; office: string; email: string; position: string; phone: string; workPhone: string; token: string; roles?: AppUsers[]; } export declare class AuthenticationService extends AbstractService { private ref; static test_mode: boolean; USER_NAME_SESSION_ATTRIBUTE_NAME: string; USER_FIRSTNAME_SESSION_ATTRIBUTE_NAME: string; USER_MIDDLENAME_SESSION_ATTRIBUTE_NAME: string; USER_SURNAME_SESSION_ATTRIBUTE_NAME: string; LOGIN_SESSION_ATTRIBUTE_NAME: string; OFFICE_SESSION_ATTRIBUTE_NAME: string; POSITION_SESSION_ATTRIBUTE_NAME: string; PHONE_SESSION_ATTRIBUTE_NAME: string; WORK_PHONE_SESSION_ATTRIBUTE_NAME: string; EMAIL_SESSION_ATTRIBUTE_NAME: string; TOKEN_NAME_SESSION_ATTRIBUTE_NAME: string; ROLES_SESSION_ATTRIBUTE_NAME: string; ACCOUNT_SESSION_ATTRIBUTE_NAME: string; constructor(context: Injector, ref: ApplicationRef); set(key: string, value: string): void; registerSuccessfulLogin(data: LoginData): void; logout(): void; isUserLoggedIn(): boolean; getPersonalData(): UserDialogData; getRoles(): string[]; getToken(): string; getUsername(): string; getLogin(): string; requestToken(): Observable; logIn(login: string, password: string): Observable; getDefaultLink(): string; navigateToDefault(): Promise; getAccount(): string; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; } export {};