UNPKG

tracker-api

Version:

A comprehensive JavaScript/TypeScript library for user behavior tracking and analytics

51 lines 1.98 kB
import { BaseClient } from "./base-client"; import { EventData, EventQuery, TrackingResponse, APIResponse } from "./types"; export declare class TrackingClient extends BaseClient { private eventQueue; private batchTimer; private batchSize; private batchTimeout; visitorId: string | null; constructor(options?: any); /** * Track a single event */ trackEvent(eventData: EventData, immediate?: boolean): Promise<TrackingResponse>; /** * Track multiple events at once */ trackBatch(events: EventData[]): Promise<TrackingResponse>; /** * Flush the event queue */ flush(): Promise<TrackingResponse>; /** * Check tracking health */ healthCheck(): Promise<APIResponse>; /** * Get events by date range */ getEvents(token: string, query: EventQuery): Promise<APIResponse>; /** * Get events by user */ getEventsByUser(token: string, userId: string): Promise<APIResponse>; /** * Get events by session */ getEventsBySession(token: string, sessionId: string): Promise<APIResponse>; /** * Get daily event statistics */ getDailyStats(token: string, date: string, websiteId?: string): Promise<APIResponse>; /** * Get top pages */ getTopPages(token: string, websiteId?: string, limit?: number): Promise<APIResponse>; trackPageView(pageUrl: string, sessionId?: string, metadata?: Record<string, any>): Promise<TrackingResponse>; trackClick(elementType: string, pageUrl: string, elementId?: string, sessionId?: string, metadata?: Record<string, any>): Promise<TrackingResponse>; trackScroll(pageUrl: string, scrollPercentage: number, sessionId?: string, metadata?: Record<string, any>): Promise<TrackingResponse>; trackCustomEvent(eventType: string, pageUrl: string, sessionId?: string, metadata?: Record<string, any>): Promise<TrackingResponse>; } //# sourceMappingURL=tracking-client.d.ts.map