import { ActionsSubject } from '@ngrx/store'; import { ActionToEventMapping, EventService, MultiCartService, StateEventService } from '@spartacus/core'; import { Observable } from 'rxjs'; import * as i0 from "@angular/core"; export declare class SavedCartEventBuilder { protected actionsSubject: ActionsSubject; protected eventService: EventService; protected stateEventService: StateEventService; protected multiCartService: MultiCartService; constructor(actionsSubject: ActionsSubject, eventService: EventService, stateEventService: StateEventService, multiCartService: MultiCartService); /** * Registers events for the saved cart */ protected register(): void; /** * Registers restore saved cart events */ protected registerRestoreSavedCartEvents(): void; /** * Registers delete saved cart events */ protected registerDeleteSavedCartEvents(): void; /** * Registers save cart events */ protected registerSaveCartEvents(): void; /** * Registers edit saved cart events */ protected registerEditSavedCartEvents(): void; /** * Registers clone saved cart events */ protected registerCloneSavedCartEvents(): void; /** * Builds the restore save cart events from the action and cart * * @param mapping mapping declaration from `action` string type to `event` class type * @param saveTime should the saveTime attribute be added to the event * @returns */ protected buildRestoreSavedCartEvents(mapping: ActionToEventMapping): () => void; /** * Builds save cart event by adding the saveTime from the cart * * @param mapping mapping declaration from `action` string type to `event` class type * @returns events register function */ protected buildSaveCartSuccessEvent(mapping: ActionToEventMapping): () => void; /** * Returns a stream of actions only of a given type(s) * * @param actionType type(s) of actions */ protected getAction(actionType: string | string[]): Observable<{ type: string; payload?: any; }>; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }