UNPKG

@loopkit/javascript

Version:

JavaScript SDK for LoopKit analytics platform

70 lines 1.99 kB
import type { LoopKitConfig, IBrowserFeatures } from '../types/index.js'; import type { Logger } from '../utils/Logger.js'; import type { EventTracker } from './EventTracker.js'; import type { SessionManager } from './SessionManager.js'; import type { QueueManager } from './QueueManager.js'; import type { INetworkManager } from '../types/index.js'; /** * Browser features for auto-tracking and browser-specific functionality */ export declare class BrowserFeatures implements IBrowserFeatures { private config; private logger; private eventTracker; private sessionManager; private queueManager; private networkManager?; private clickHandler?; private errorHandler?; private unloadHandler?; constructor(config: LoopKitConfig, logger: Logger, eventTracker: EventTracker, sessionManager: SessionManager, queueManager: QueueManager); /** * Setup all browser features based on configuration */ setupFeatures(): void; /** * Setup automatic click tracking */ setupAutoClickTracking(): void; /** * Setup automatic page view tracking */ setupAutoPageViews(): void; /** * Setup error tracking */ setupErrorTracking(): void; /** * Setup page unload handling */ setupPageUnloadHandling(): void; /** * Update configuration */ updateConfig(config: LoopKitConfig): void; /** * Set network manager */ setNetworkManager(networkManager: INetworkManager): void; /** * Track a page view */ private trackPageView; /** * Find clickable element by walking up the DOM */ private findClickableElement; /** * Extract click properties from element */ private extractClickProperties; /** * Get element type for analytics */ private getElementType; /** * Get readable text from element */ private getElementText; } //# sourceMappingURL=BrowserFeatures.d.ts.map