import { ComparedProduct, ContinueBrowsingState, FavoriteItem, RecentlyViewedItem, SavedSearch } from '../models/user-experience.model';

export interface UserExperienceRepository {
  getWishlist(): FavoriteItem[];
  saveWishlist(items: FavoriteItem[]): void;

  getComparedProducts(): ComparedProduct[];
  saveComparedProducts(items: ComparedProduct[]): void;

  getRecentlyViewed(): RecentlyViewedItem[];
  saveRecentlyViewed(items: RecentlyViewedItem[]): void;

  getSavedSearches(): SavedSearch[];
  saveSavedSearches(items: SavedSearch[]): void;

  getContinueBrowsing(routeKey: string): ContinueBrowsingState | null;
  saveContinueBrowsing(state: ContinueBrowsingState): void;
  clearContinueBrowsing(routeKey: string): void;
}
