import { UserProvidedData, UserProperties } from '../track/gtag.cjs'; import { Platform, Environment } from '../track/types.cjs'; type VisitorProperties = Record, string | number | boolean | null>; interface Visitor { id: string; device_id: string; platform: Platform; environment: Environment; properties: VisitorProperties; } interface UpdateVisitorDTO { user_id?: string; distinct_id?: string; data?: UserProvidedData; properties?: UserProperties; } type ThirdPartyUserSetter = (dto: UpdateVisitorDTO) => void; export type { ThirdPartyUserSetter, UpdateVisitorDTO, Visitor, VisitorProperties };