type MobilePromptBannerParams = { matchedUserAgentString: string; }; type ShowParams = MobilePromptBannerParams & { matchedUserAgentString: string; mobileEventBrowserName: string; mobileEventClientOsName: string; }; //define the event key to payload mappings export type GrowthEventParameters = { 'growth.show_mobile_prompt_banner': ShowParams; 'growth.dismissed_mobile_prompt_banner': MobilePromptBannerParams; 'growth.opened_mobile_project_suggest_modal': MobilePromptBannerParams; 'growth.clicked_mobile_prompt_setup_project': MobilePromptBannerParams; 'growth.clicked_mobile_prompt_ask_teammate': MobilePromptBannerParams; 'growth.submitted_mobile_prompt_ask_teammate': MobilePromptBannerParams; 'growth.demo_click_get_started': {}; 'growth.demo_click_docs': {}; 'growth.demo_click_request_demo': {}; }; type GrowthAnalyticsKey = keyof GrowthEventParameters; export const growthEventMap: Record = { 'growth.show_mobile_prompt_banner': 'Growth: Show Mobile Prompt Banner', 'growth.dismissed_mobile_prompt_banner': 'Growth: Dismissed Mobile Prompt Banner', 'growth.opened_mobile_project_suggest_modal': 'Growth: Open Mobile Project Suggest Modal', 'growth.clicked_mobile_prompt_setup_project': 'Growth: Clicked Mobile Prompt Setup Project', 'growth.clicked_mobile_prompt_ask_teammate': 'Growth: Clicked Mobile Prompt Ask Teammate', 'growth.submitted_mobile_prompt_ask_teammate': 'Growth: Submitted Mobile Prompt Ask Teammate', 'growth.demo_click_get_started': 'Growth: Demo Click Get Started', 'growth.demo_click_docs': 'Growth: Demo Click Docs', 'growth.demo_click_request_demo': 'Growth: Demo Click Request Demo', };