import type { FunnelStartedFields, TestStartedFields, UserClickFields, UserEventHandler, ViewContentFields, } from '@xylabs/pixel' import { type EmptyObject } from '@xylabs/sdk-js' import { GoogleCustomEvent } from './CustomEvent.ts' class GoogleUserEventHandler implements UserEventHandler { async funnelStarted(data: FunnelStartedFields | T) { const event = new GoogleCustomEvent('FunnelStarted') return await event.send(data) } async testStarted(data: TestStartedFields | T) { const event = new GoogleCustomEvent('TestStarted') return await event.send(data) } async userClick(data: UserClickFields | T) { const event = new GoogleCustomEvent('UserClick') return await event.send(data) } async viewContent(data: ViewContentFields | T) { const event = new GoogleCustomEvent('ViewContent') return await event.send(data) } } export { GoogleUserEventHandler }