/**
 * Email Service Types
 *
 * Shared type definitions for email templates and services.
 */

// =============================================================================
// Core Types
// =============================================================================

export interface EmailTemplate {
  subject: string;
  html: string;
  text: string;
}

export type Language = 'ar' | 'en';
export type OtpPurpose = 'login' | 'signup' | 'reset';

// =============================================================================
// Interview Types
// =============================================================================

export interface InterviewDetails {
  applicantName: string;
  jobTitle: string;
  jobTitleAr: string;
  confirmedDate: string;
  confirmedTime: string;
  timezone: string;
  meetingLink?: string;
  meetingPlatform?: 'zoom' | 'google_meet' | 'teams' | 'other';
  meetingId?: string;
  meetingPassword?: string;
  preparationInstructions?: string;
  language: 'ar' | 'en';
}

// =============================================================================
// Contact Form Types
// =============================================================================

export interface StaffContactNotificationData {
  submissionId: string;
  name: string;
  email: string;
  phone?: string;
  company?: string | null;
  topic: string;
  message: string;
  preferredLanguage: 'ar' | 'en';
}
