import { CustomProperties, EventProperties, InternalEventProperties } from "../utils/zodSchemas.js"; //#region src/events/types.d.ts interface EventRequest { id: string; event_type: string; event_properties?: EventProperties; custom_event_properties?: Record; internal_event_properties?: InternalEventProperties; captured_at: string; } type BaseEvent = { customEventProperties?: Record; tracking?: EventProperties["tracking"]; }; interface IAddProductDetailViewEvent extends BaseEvent { itemId: string; } interface IAddLikeEvent extends BaseEvent { itemId: string; } interface IAddCartaddEvent extends BaseEvent { itemId: string; } interface IAddRateEvent extends BaseEvent { itemId: string; rating: number; } interface IAddOrderEvent extends BaseEvent { orderId: string; paidAmount: number; orderAmount: number; items: { id: string; price: number; quantity?: number; custom_event_properties?: CustomProperties; }[]; } interface IAddCustomEvent extends BaseEvent { eventType: string; eventProperties?: EventProperties; } type IVisitEvent = BaseEvent; type IAddPageVisitEvent = BaseEvent; interface IAddPageViewEvent extends BaseEvent { page: string; } interface IAddSectionViewEvent extends BaseEvent { section: string; } interface IAddInstantImpressionEvent extends BaseEvent { itemId: string; page: string; section: string; position: number; } interface IAddPersistentImpressionEvent extends BaseEvent { itemId: string; page: string; section: string; position: number; } interface IAddSearchEvent extends BaseEvent { searchQuery: string; } interface IAddClickEvent extends BaseEvent { itemId: string; } //#endregion export { EventRequest, IAddCartaddEvent, IAddClickEvent, IAddCustomEvent, IAddInstantImpressionEvent, IAddLikeEvent, IAddOrderEvent, IAddPageViewEvent, IAddPageVisitEvent, IAddPersistentImpressionEvent, IAddProductDetailViewEvent, IAddRateEvent, IAddSearchEvent, IAddSectionViewEvent, IVisitEvent }; //# sourceMappingURL=types.d.ts.map