avi-analytics-sdk
Version:
An analytics SDK for capturing user interactions
46 lines (45 loc) • 1.07 kB
TypeScript
import { EventType } from "../enums/events";
export interface AnalyticsOptions {
apiKey: string;
endpoint?: string;
}
export interface EventData {
event_type: EventType;
element_id: string | null;
css_selector: string | null;
x_position: number | null;
y_position: number | null;
timestamp: string;
metadata?: Record<string, any>;
}
export interface EventPayload {
api_key: string;
session_id: string;
events: EventData[];
timestamp: string;
page_url: string;
viewport_width: number;
viewport_height: number;
}
export interface RecordingOptions {
apiKey: string;
endpoint?: string;
}
export interface RrwebEvent {
type: number;
data: any;
timestamp: number;
}
export interface RecordingPayload {
api_key: string;
session_id: string;
rrwebEvents: {
event_type: "dom_snapshot" | "mutation" | "interaction";
rrweb_data: any;
timestamp: string;
}[];
timestamp: string;
page_url: string;
viewport_width: number;
viewport_height: number;
}