export type AnalyticsEventName =
  | 'page_view'
  | 'section_view'
  | 'navigation_click'
  | 'locale_change'
  | 'theme_change'
  | 'mobile_nav_open'
  | 'mobile_nav_close'
  | 'product_tour_open'
  | 'product_tour_step'
  | 'product_tour_complete'
  | 'product_tour_close'
  | 'demo_open'
  | 'demo_submit_attempt'
  | 'demo_validation_error'
  | 'demo_submit_success'
  | 'demo_submit_failure'
  | 'demo_close'
  | 'faq_open';
export interface AnalyticsContext {
  routeId: string;
  locale: 'en' | 'fr' | 'ar';
  direction: 'ltr' | 'rtl';
  resolvedTheme: 'light' | 'dark';
  source?: string;
  step?: number;
  errorCode?: string;
}
export interface AnalyticsAdapter {
  consentGranted(): boolean;
  track(name: AnalyticsEventName, context: AnalyticsContext): void;
}
export const forbiddenPayloadKeys = [
  'name',
  'email',
  'company',
  'message',
  'phone',
  'fieldValue',
  'serverResponse',
] as const;
