@2l/ewa-analytics-web-sdk
Version:
A lightweight TypeScript SDK for tracking user events and analytics data in web applications. Provides real-time event tracking with support for both WebSocket and HTTP transport methods.
73 lines • 2.16 kB
TypeScript
export type OnboardingPayloadSubtype = 'visited' | 'nextTapped' | 'select' | 'backTapped' | 'appStoreTapped' | 'gplayTapped' | 'toTariffsTapped' | 'tapped' | 'learnTapped' | 'storeTapped' | 'addTapped' | 'deleteTapped';
export interface RawPayload {
channel: 'analytics:sessions' | 'analytics:events';
eventData: Record<string, any>;
}
export declare enum EwaAnalyticsChannels {
SESSIONS = "analytics:sessions",
EVENTS = "analytics:events"
}
export declare enum EwaSessionSubtype {
INITIAL = "initial",
LOCATED = "located",
ATTRIBUTED = "attributed"
}
export interface EwaAnalyticsCommonPayload {
random_user_id: string;
app_id: string;
platform: string;
event_name: string;
session_id?: number;
customer_user_id?: string;
app_version?: string;
event_subtype?: OnboardingPayloadSubtype | EwaSessionSubtype;
web_uuid?: string;
web_hwid?: string;
language?: string;
os_name?: string;
os_version?: string;
country?: string;
timezone?: string;
event_value?: string;
device_name?: string;
device_type?: string;
created_at_milli?: number;
browser?: string;
browser_version?: string;
}
export interface Session extends EwaAnalyticsCommonPayload {
ip_address?: string;
store?: string;
tracker?: string;
tracker_name?: string;
network_name?: string;
campaign_name?: string;
adgroup_name?: string;
creative_name?: string;
connection_type?: string;
adjust_tracker_id?: string;
user_agent?: string;
environment?: string;
att_status?: number;
}
export interface EwaAnalyticsEvent extends EwaAnalyticsCommonPayload {
event_id: string;
event?: string;
event_type?: string;
native_language?: string;
learning_language?: string;
sdk_version?: string;
}
export interface NavigatorExtended extends Navigator {
connection?: {
effectiveType: string;
};
mozConnection?: {
effectiveType: string;
};
webkitConnection?: {
effectiveType: string;
};
}
export type EwaAnalyticsPayload = EwaAnalyticsEvent | Session;
//# sourceMappingURL=types.d.ts.map