import { HttpClient, HttpResponse } from '@angular/common/http'; import { Observable, ConnectableObservable } from 'rxjs'; import { Broadcaster, Logger } from 'ngx-base'; import { User } from './user'; /** * Provides user and user list methods to retrieve current or user list details * * The UserService should be injected at the root of the application to ensure it is a singleton * getUser and getAllUsers return observables that can be subscribed to for information */ export declare class UserService { private http; private logger; private broadcaster; /** * The currently logged in user - please use currentLoggedInUser instead of subscribing * TODO: move this to deprecated */ loggedInUser: ConnectableObservable; /** * The current logged in user - should be always populated after login */ currentLoggedInUser: User; /** * @deprecated since v0.4.4. Use {@link #loggedInUser} instead. */ private userData; /** * @deprecated since v0.4.4. No replacement method is provided. */ private allUserData; private headers; private userUrl; private usersUrl; private searchUrl; constructor(http: HttpClient, logger: Logger, broadcaster: Broadcaster, apiUrl: string); /** * Get the User object for a given user id, or null if no user is found * @param userId the userId to search for */ getUserByUserId(userId: string): Observable; /** * Get the User object for a given username, or null if no user is found * @param username the username to search for */ getUserByUsername(username: string): Observable; /** * Get users by a search string */ getUsersBySearchString(search: string): Observable; /** * @deprecated since v0.4.4. Use {@link #loggedInUser} instead. */ getSavedLoggedInUser(): User; /** * @deprecated since v0.4.4. No replacement is provided. */ getLocallySavedUsers(): User[]; /** * @deprecated since v0.4.4. Use {@link #loggedInUser} instead. * Get currently logged in user * * @returns Observable */ getUser(): Observable; /** * @deprecated since v0.4.4. No replacement is provided. * Get all users * * @returns Observable */ getAllUsers(): Observable; /** * * Filter users by username * * @returns Observable */ filterUsersByUsername(username: string): Observable; /** * Send email verification link to user. */ sendEmailVerificationLink(): Observable>; /** * @deprecated since v0.4.4. No replacement is provided. * */ resetUser(): void; }