UNPKG

@benshi.ai/js-sdk

Version:

Benshi SDK

76 lines (67 loc) 1.3 kB
export enum EventType { Identify = 'identify', Page = 'page', Level = 'level', Purchase = 'purchase', View = 'view', Scroll = 'scroll', PushNotification = 'push_notification', Video = 'video', Audio = 'audio', Track = 'track', Click = 'click' } export enum DebugLevel { Debug, Info, Log, Warn, Error, None } export interface BsBrowserOptions { logScroll: boolean; logPage: boolean; logUrlChanges: boolean; flushOnLeave: boolean; } export interface BsLogOptions { flushInterval: number; flushMaxRetries: number; endpoint: string; cacheEventsInLocalstorage: boolean; cacheEventsKey: string; debugLevel: DebugLevel; } export interface BatteryStatus { charging: boolean; chargingTime: number; dischargingTime: number; level: number; } export interface EventContext { browser?: { user_agent: string; languages: string[]; online: boolean; battery?: BatteryStatus } } export interface EventTeaser { user_id: string; type: EventType; name?: string; properties: Record<string, any> } export interface Event extends EventTeaser{ uuid: string; device_time: number; context: EventContext; } export interface QueueItem { uuid: string; event: Event; time: number; retries: number; lastRetry?: number; }