// 공통 속성을 가진 기본 인터페이스 정의 export interface IBaseEvent { itemId?: string; timestamp?: number; url?: string; ref?: string; recommendationId?: string; from?: string; userProperties?: Record; eventProperties?: Record; } // 추가로 필요한 속성을 가진 인터페이스 정의 export interface IEventRequest extends IBaseEvent { timestamp: number; eventType: string; eventValue?: string; } export interface IAddProductDetailViewEvent extends IBaseEvent { itemId: string; } export interface IAddLikeEvent extends IBaseEvent { itemId: string; } export interface IAddCartaddEvent extends IBaseEvent { itemId: string; } export interface IAddRateEvent extends IBaseEvent { itemId: string; rating: number; } export interface IAddPurchaseEvent extends IBaseEvent { itemId: string; price: number; } export interface IAddCustomEvent extends IBaseEvent { itemId: string; eventType: string; eventValue?: string; } export interface IAddRecommendationViewEvent extends IBaseEvent {} export interface IAddPageViewEvent extends IBaseEvent { pageType: string; }