import {AnalyticsClient, PreparedEvent} from './analytics'; import { AnyEventResponse, SearchEventResponse, ClickEventResponse, CustomEventResponse, VisitResponse, HealthResponse, ViewEventResponse, EventType, PreparedSearchEventRequest, SearchEventRequest, ClickEventRequest, CustomEventRequest, PreparedClickEventRequest, PreparedCustomEventRequest, PreparedViewEventRequest, ViewEventRequest, } from '../events'; import {libVersion} from '../version'; import {NoopRuntime} from './runtimeEnvironment'; export class NoopAnalytics implements AnalyticsClient { getPayload(): Promise { return Promise.resolve(); } getParameters(): Promise { return Promise.resolve(); } makeEvent( eventType: EventType | string, ): Promise> { return Promise.resolve({eventType: eventType as EventType, payload: null, log: () => Promise.resolve()}); } sendEvent(): Promise { return Promise.resolve(); } makeSearchEvent() { return this.makeEvent(EventType.search); } sendSearchEvent(): Promise { return Promise.resolve(); } makeClickEvent() { return this.makeEvent(EventType.click); } sendClickEvent(): Promise { return Promise.resolve(); } makeCustomEvent() { return this.makeEvent(EventType.custom); } sendCustomEvent(): Promise { return Promise.resolve(); } makeViewEvent() { return this.makeEvent(EventType.view); } sendViewEvent(): Promise { return Promise.resolve(); } getVisit(): Promise { return Promise.resolve({id: '', visitorId: ''}); } getHealth(): Promise { return Promise.resolve({status: ''}); } registerBeforeSendEventHook(): void {} registerAfterSendEventHook(): void {} addEventTypeMapping(): void {} runtime = new NoopRuntime(); public get version(): string { return libVersion; } currentVisitorId = ''; }