import type { Image } from "../image"
import type { AllRequestResponse } from "./utils/all"
import type { EdgesWithTotalCount } from "./utils/edges"

type AppDownload = {
  href: string
  imageConnection: EdgesWithTotalCount<Image>
}

export type Link = {
  href: string
  title: string
}

export type NavigationItem = {
  links: Link[]
  title: string
}

type SocialMedium = {
  href: string
  title: string
}

export type Footer = {
  title: string
  about: {
    title: string
    text: string
  }
  app_downloads: {
    title: string
    app_store: AppDownload
    google_play: AppDownload
  }
  logoConnection: EdgesWithTotalCount<Image>
  navigation: NavigationItem[]
  social_media: {
    title: string
    facebook: SocialMedium
    instagram: SocialMedium
    twitter: SocialMedium
  }
  trip_advisor: {
    title: string
    logoConnection: EdgesWithTotalCount<Image>
  }
}

export type GetFooterData = {
  all_footer: AllRequestResponse<Footer>
}
