import type { HospitalsPageHeroSectionData } from "@/components/dashboard/hospitals-page/HospitalsPageHeroSection"
import type { HospitalsPageFiltersSectionData } from "@/components/dashboard/hospitals-page/HospitalsPageFiltersSection"
import type { HospitalsPageAccreditationSectionData } from "@/components/dashboard/hospitals-page/HospitalsPageAccreditationSection"
import type { HospitalsPageWhySectionData } from "@/components/dashboard/hospitals-page/HospitalsPageWhySection"
import type { HospitalsPageFAQSectionData } from "@/components/dashboard/hospitals-page/HospitalsPageFAQSection"
import type { HospitalsPageCTASectionData } from "@/components/dashboard/hospitals-page/HospitalsPageCTASection"

export interface HospitalsPageFormStateShape {
  hero: HospitalsPageHeroSectionData
  filters: HospitalsPageFiltersSectionData
  accreditation: HospitalsPageAccreditationSectionData
  why: HospitalsPageWhySectionData
  faq: HospitalsPageFAQSectionData
  cta: HospitalsPageCTASectionData
}

export function createEmptyHospitalsPageFormState(): HospitalsPageFormStateShape {
  return {
    hero: {
      icon: "",
      eyebrow: "",
      title: "",
      description: "",
      image: "",
      imagePublicId: "",
      statistics: [],
      certifications: [],
    },
    filters: {
      filters: [],
      sortOptions: [],
    },
    accreditation: {
      title: "",
      subTitle: "",
      accreditationItems: [],
    },
    why: {
      title: "",
      subTitle: "",
      features: [],
    },
    faq: {
      title: "",
      faqs: [],
    },
    cta: {
      eyebrow: "",
      title: "",
      subtitle: "",
      primaryButtonIcon: "",
      primaryButtonText: "",
      primaryButtonLink: "",
      secondaryButtonIcon: "",
      secondaryButtonText: "",
      secondaryButtonLink: "",
    },
  }
}
