import { MessageBus, ObjMap } from '@tangential/core'; import { FirebaseProvider } from '@tangential/firebase-util'; import { DataSnapshot } from 'firebase/database'; import { Observable } from 'rxjs'; import { AuthPermission } from '../../media-type/cdm/auth-permission'; import { AuthRole } from '../../media-type/cdm/auth-role'; import { AuthUser } from '../../media-type/cdm/auth-user'; import { AuthUserDm, AuthUserKey } from '../../media-type/doc-model/auth-user'; import { AuthSettingsService } from '../settings-service/settings-service'; import { UserService } from './user-service'; import * as i0 from "@angular/core"; export declare class FirebaseUserService implements UserService { private fb; private bus; private authSettingsService; userPermissionsFromUserRolesMapping: (snap: DataSnapshot) => Promise>; private authSettingsRef; private effectivePermissionsRef; private grantedPermissionsRef; private grantedRolesRef; private ref; private snapMapToValue; private snapToValue; constructor(fb: FirebaseProvider, bus: MessageBus, authSettingsService: AuthSettingsService); getRolePermissionsFor(userKey: AuthUserKey): Promise>; getUser(key: AuthUserKey): Promise; getUserFragment(key: AuthUserKey): Promise; awaitUsers$(): Observable; effectivePermissionsFor(userKey: AuthUserKey): Promise>; grantedPermissionsFor(userKey: AuthUserKey): Promise>; grantedRolesFor(userKey: AuthUserKey): Promise>; private authSettings$; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }