export type EventName = "PAGE_VIEW" | "ADD_COMPONENT" | "DELETE_COMPONENT" | "RESIZE_COMPONENT" export type Gender = "MALE" | "FEMALE" export interface User { userId: string name: string email: string gender: Gender } class AnalyticsUtil { static initializeHotjar(id: string, sv: string) { (function init(h: any, o: any, t: any, j: any, a?: any, r?: any) { h.hj = h.hj || function() { (h.hj.q = h.hj.q || []).push(arguments); }; h._hjSettings = { hjid: id, hjsv: sv }; a = o.getElementsByTagName('head')[0]; r = o.createElement('script'); r.async = 1; r.src = t + h._hjSettings.hjid + j + h._hjSettings.hjsv; a.appendChild(r); })(window, document, '//static.hotjar.com/c/hotjar-', '.js?sv='); }; static initializeSegment() { (function init(window: any){ var analytics=window.analytics=window.analytics||[]; if(!analytics.initialize) { if(analytics.invoked) { window.console&&console.error&&console.error("Segment snippet included twice."); } else { analytics.invoked=!0;analytics.methods=["trackSubmit","trackClick","trackLink","trackForm","pageview","identify","reset","group","track","ready","alias","debug","page","once","off","on"]; analytics.factory=function(t: any){return function(){var e=Array.prototype.slice.call(arguments);e.unshift(t);analytics.push(e);return analytics} }; } for(var t: any=0;t