export interface HeroContent {
  headline: string;
  description: string;
  ctaButtonText: string;
  helperText: string;
}

export interface FeatureItem {
  iconPath: string;
  title: string;
  description: string;
}

export interface FeaturedAgentItem {
  id?: string;
  name: string;
  role: string;
  rating: string;
  location: string;
  experience: string;
  imageUrl: string;
}

export interface FeaturesContent {
  title: string;
  subtitle: string;
  features: FeatureItem[];
  featuredAgents?: FeaturedAgentItem[];
}

export interface ProfessionalItem {
  id?: string;
  name: string;
  subtitle: string;
  location: string;
  experience: string;
  expertise: string[];
  imageUrl: string;
}

export interface TopProfessionalsContent {
  title: string;
  ctaText: string;
  ctaButtonText: string;
  agents: ProfessionalItem[];
  lenders: ProfessionalItem[];
}

export interface TestimonialItem {
  rating: number;
  title: string;
  content: string;
  author: string;
  role: string;
}

export interface StatItem {
  iconPath: string;
  boldText: string;
  normalText: string;
}

export interface TestimonialsContent {
  title: string;
  subtitle: string;
  ratingInfo: string;
  stats: StatItem[];
  testimonials: TestimonialItem[];
}

export interface AboutHeroContent {
  badge: string;
  headline: string;
  description: string;
  ctaButtonText: string;
  bannerImageUrl: string;
  bannerOverlayText: string;
}

export interface AboutStatItem {
  value: string;
  label: string;
}

export interface AboutStatsContent {
  stats: AboutStatItem[];
}

export interface AboutFeatureItem {
  iconPath: string;
  title: string;
  description: string;
}

export interface AboutFeaturesContent {
  badge: string;
  features: AboutFeatureItem[];
}

export interface AboutTeamCard {
  title: string;
  description: string;
  iconPath: string;
}

export interface AboutTeamContent {
  title: string;
  subtitle: string;
  intro: string;
  cards: AboutTeamCard[];
}

export interface AboutCtaContent {
  title: string;
  description: string;
  buttonText: string;
}

export interface FaqCategoryItem {
  id: string;
  label: string;
}

export interface FaqItem {
  id: number;
  icon: string;
  question: string;
  answer: string;
  category: string;
}

export interface FaqContent {
  pageTitle: string;
  categories: FaqCategoryItem[];
  faqs: FaqItem[];
  supportTitle: string;
  supportDescription: string;
}

export interface CmsContentRecord {
  id: string;
  pageSlug: string;
  sectionKey: string;
  content: unknown;
  isPublished: boolean;
  createdAt: string;
  updatedAt: string;
}
