import { PhotoAttachment } from './photos';

// Contact type definitions
export interface ContactInfo {
  id?: number;
  about_text_markdown?: string;
  business_hours?: Record<string, { open: string; close: string }>;
  company_name?: string;
  description_markdown?: string;
  facebook_url?: string;
  favicon_url?: string;
  founded_year?: string;
  google_my_business_url?: string;
  google_reviews_url?: string;
  instagram_url?: string;
  linkedin_url?: string;
  mission_statement_markdown?: string;
  pinterest_url?: string;
  primary_address_line_1?: string;
  primary_address_line_2?: string;
  primary_city?: string;
  primary_country?: string;
  primary_email?: string;
  primary_phone?: string;
  primary_state?: string;
  primary_zip_code?: string;
  sales_email?: string;
  stats_markdown?: string;
  support_email?: string;
  tagline?: string;
  tiktok_url?: string;
  tripadvisor_url?: string;
  twitter_url?: string;
  values_markdown?: string;
  yelp_url?: string;
  youtube_url?: string;
  photo_attachments?: PhotoAttachment[];
}

export interface ContactFormSubmission {
  id: number;
  name: string;
  email: string;
  phone?: string;
  message: string;
  source: string;
  created_at: string;
}

export interface ContactFormData {
  name: string;
  email: string;
  phone?: string;
  message: string;
  source?: string;
}

export type ContactResponse = ContactInfo | null;

export interface ContactFormResponse {
  message: string;
  data: ContactFormSubmission;
}
