import { Store } from '@ngrx/store'; import { Profile, User, UserService as UserServiceClass } from 'ngx-login-client'; import { ConnectableObservable, Observable } from 'rxjs'; import { AppState } from './../states/app.state'; import { Mapper, MapTree, modelService, modelUI } from './common.model'; export interface UserService extends modelService { attributes?: Profile; links?: { self?: string; related?: string; }; } export interface UserUI extends modelUI { avatar: string; username: string; currentUser: boolean; } export declare class UserMapper implements Mapper { serviceToUiMapTree: MapTree; uiToServiceMapTree: MapTree; toUIModel(arg: UserService): UserUI; toServiceModel(arg: UserUI): UserService; } export declare class UserQuery { private store; private userService; constructor(store: Store, userService: UserServiceClass); private plannerSelector; private userSelector; private userSource; private collaboratorIdsSelector; private collaboratorSelector; private collaboratorSource; getUserObservableById(id: string): Observable; getUserObservablesByIds(ids?: string[]): Observable; getCollaborators(): Observable; /** * getCollaboratorAndLoggedInUserIds this function returns an * array of all the collaborators IDs and loggedIn user IDs */ readonly getCollaboratorIds: Observable; /** * This function returns the loggedInUser subject */ readonly getLoggedInUser: ConnectableObservable; }