UNPKG

@shopana/ga

Version:

Type-safe Google Analytics 4 (GA4) tracking library for React and Next.js with ecommerce support, event batching, and SSR compatibility

169 lines 5.08 kB
export interface PageEventParams extends Record<string, unknown> { measurementId?: string; title?: string; path?: string; location?: string; referrer?: string; language?: string; } export interface EngagementEventParams extends Record<string, unknown> { measurementId?: string; engagementType?: string; value?: number; method?: string; metadata?: Record<string, unknown>; } export interface AuthEventParams extends Record<string, unknown> { measurementId?: string; method: string; } export interface CommerceItemInput extends Record<string, unknown> { item_id: string; item_name?: string; currency?: string; discount?: number; item_variant?: string; price?: number; quantity?: number; [key: string]: unknown; } export interface CommerceItem extends CommerceItemInput { quantity: number; price?: number; } export interface PurchaseEventParams extends Record<string, unknown> { measurementId?: string; transactionId: string; currency?: string; coupon?: string; affiliation?: string; value?: number; tax?: number; shipping?: number; items: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface CartEventParams extends Record<string, unknown> { measurementId?: string; currency?: string; value?: number; items: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface ViewCartEventParams extends Record<string, unknown> { measurementId?: string; currency?: string; value?: number; items: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface CheckoutEventParams extends Record<string, unknown> { measurementId?: string; currency?: string; value?: number; coupon?: string; items: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface PaymentInfoEventParams extends Record<string, unknown> { measurementId?: string; currency?: string; value?: number; coupon?: string; payment_type: string; items: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface ShippingInfoEventParams extends Record<string, unknown> { measurementId?: string; currency?: string; value?: number; coupon?: string; shipping_tier: string; items: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface ViewItemEventParams extends Record<string, unknown> { measurementId?: string; currency?: string; value?: number; items: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface ViewItemListEventParams extends Record<string, unknown> { measurementId?: string; item_list_id?: string; item_list_name?: string; items: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface SelectItemEventParams extends Record<string, unknown> { measurementId?: string; item_list_id?: string; item_list_name?: string; items: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface PromotionEventParams extends Record<string, unknown> { measurementId?: string; promotion_id?: string; promotion_name?: string; creative_name?: string; creative_slot?: string; location_id?: string; items?: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface WishlistEventParams extends Record<string, unknown> { measurementId?: string; currency?: string; value?: number; items: CommerceItemInput[]; extraParams?: Record<string, unknown>; } export interface LeadEventParams extends Record<string, unknown> { measurementId?: string; currency?: string; value?: number; extraParams?: Record<string, unknown>; } export interface SearchEventParams extends Record<string, unknown> { measurementId?: string; search_term: string; number_of_results?: number; search_category?: string; extraParams?: Record<string, unknown>; } export interface ShareEventParams extends Record<string, unknown> { measurementId?: string; content_type: string; content_id: string; method: string; extraParams?: Record<string, unknown>; } export interface VideoEventParams extends Record<string, unknown> { measurementId?: string; video_title: string; video_url: string; video_duration?: number; video_current_time?: number; video_percent?: number; video_provider?: string; visible?: boolean; extraParams?: Record<string, unknown>; } export interface ExceptionEventParams extends Record<string, unknown> { measurementId?: string; description: string; fatal?: boolean; extraParams?: Record<string, unknown>; } export interface TimingEventParams extends Record<string, unknown> { measurementId?: string; name: string; value: number; event_category: string; event_label?: string; extraParams?: Record<string, unknown>; } //# sourceMappingURL=events.d.ts.map