import { EventEmitter, OnDestroy } from '@angular/core'; import { PlausibleEvent, PlausibleProps } from 'mealz-shared-analytics'; import { Basket } from '../_models'; import { BasketAction } from '../_types/basket-action'; import { EventTrace } from '../_types/event-trace'; import { ContextRegistryService } from './context-registry.service'; import * as i0 from "@angular/core"; export declare function url(path: string): string; export declare function _onEmit(event: PlausibleEvent): void; export declare class AnalyticsService implements OnDestroy { private contextRegistryService; /** Set to true if we currently are in a mealz dedicated page */ isMealzPage: boolean; eventEmitter: EventEmitter; private subscriptions; private alreadyInitialized$; private queuedEvents; constructor(contextRegistryService: ContextRegistryService); ngOnDestroy(): void; /** * Set the identifier of the ABTest experience if one is running * It will then be added as props to all events sent * @param key A unique identifier for the ABTest experience */ setAbTestKey(key: string): void; init(domain: string): void; sendEvent(name: string, path: string, props: PlausibleProps, journey?: string): void; /** ************************************************* SEND EVENT FOR BASKET ACTIONS ************************************************* **/ sendRemoveRecipesEvents(actions: BasketAction[], journey?: string): void; sendAddRecipesEvents(actions: BasketAction[], journey?: string): void; sendUpdateGuestsEvents(actions: BasketAction[], journey?: string): void; sendEventsOfResetBasket(basket: Basket, eventTrace: EventTrace, journey?: string): void; sendAddProductsEvents(actions: BasketAction[], journey?: string): void; sendRemoveProductsEvents(actions: BasketAction[], journey?: string): void; sendProductsChangeQuantityEvents(actions: BasketAction[], journey?: string): void; private callMethodOrAddToQueue; private executeQueuedEvents; static ɵfac: i0.ɵɵFactoryDef; static ɵprov: i0.ɵɵInjectableDef; } //# sourceMappingURL=analytics.service.d.ts.map