import { PerformanceType, TrackEvent } from '@jolibox/types'; import { EProject } from '@jolibox/common'; export interface Track { (tag: TrackEvent, info: Record | null, eventType?: number): void; debounce: (tag: TrackEvent, info: Record) => void; } export interface TrackPerformance { (type: PerformanceType, duration: number, extra?: Record): void; debounce: (type: PerformanceType, duration: number) => void; } export type ReportHandler = (event: string, data: { tag: TrackEvent; eventType?: number; data?: Record; }, webviewId?: number) => void; export interface CommonReportConfig { type: EProject; platform: 'native' | 'h5'; jssdk_version: string; mp_id: string; mp_version: string; trace_id?: number; }