// Copyright © 2022-2026 Partium, Inc. DBA Partium import { Observable } from 'rxjs'; import { BaseLoginInitService, EventContext, Organization, PartiumConfig, ServiceProvider } from '../../../core'; interface FavoriteEventContext extends EventContext { organizationId?: string; searchSessionId?: string; } export interface FavoriteService { /** * Fetches the list of favorites. * * @returns Observable with an array of Partium part ids that resolves * with the request to the backend. */ getFavoriteList(): Observable>; /** * Adds a part to the list of favorites via the parts Partium-ID * * @param partId the part partId to save as Favorite * @returns Observable with an array of Partium part ids that resolves * with the request to the backend. */ addToFavorites(partId: string, favoriteEventContext?: FavoriteEventContext): Observable>; /** * Removes a part to the list of favorites via the parts Partium-ID * * @param partId the part partId to be removed from the Favorites * @returns Observable with an array of Partium part ids that resolves * with the request to the backend. */ removeFromFavorites(partId: string, favoriteEventContext?: FavoriteEventContext): Observable>; } export declare class FavoriteServiceImpl extends BaseLoginInitService implements FavoriteService { private httpsService; private logService; private maxFavoritesLength; constructor(serviceProvider: ServiceProvider); init(config: PartiumConfig, userEmail: string, currentOrganization$: Observable): Observable; onCreate(): void; private dispatchLogService; getFavoriteList(): Observable>; addToFavorites(partId: string, favoriteEventContext?: FavoriteEventContext): Observable>; removeFromFavorites(partId: string, favoriteEventContext?: FavoriteEventContext): Observable>; } export {};