export interface StrapiImageType {
  id: number;
  documentId: string;
  url: string;
  alternativeText: string;
}
interface StrapiSharedCTA {
  id: number;
  label: string;
  link: string;
  isExternal: boolean;
}
export interface StrapiBaseResponse {
  data: unknown;
  error: {
    status: number;
    message: string;
  };
}

export interface StrapiFileUploadResponse {
  id: string;
  name: string;
  documentId: string;
  url: string;
}

export interface StrapiCollectionMeta {
  pagination: {
    page: number;
    pageSize: number;
    pageCount: number;
    total: number;
  };
}

export interface ResortBookingCTA {
  __component: "resort-components.booking-cta";
  description: string;
  cta: { label: string; link: string; isExternal: boolean };
  backgroundImage: {
    url: string;
    alternativeText: string;
  };
}

export interface ResortPropertyType {
  __component: "resort-components.property-type";
  id: number;
  name: string;
  description: string;
  images: StrapiImageType[];
  type: "accommodation" | "residence";
  units: {
    id: number;
    unitCode: string;
    unitName: string;
    unitPrice: number;
    unitPoints: number;
    numberOfBeds: number;
    numberOfBedrooms: number;
    maximumGuests: number;
    description: string;
    featuredImage: StrapiImageType;
    images: StrapiImageType[];
    amenities: {
      id: number;
      type: string;
    }[];
  }[];
}
export interface ResortCuisine {
  __component: "resort-components.cuisine";
  description: string;
  variations: {
    id: number;
    name: string;
    description: string;
    menus: {
      id: number;
      label: string;
      attachment: {
        id: number;
        url: string;
      };
    }[];
    media: StrapiImageType[];
    bookTable: {
      id: string;
      label: string;
      link: string;
      isExternal: boolean;
    };
  }[];
}
export interface ResortFacilities {
  __component: "resort-components.facilities";
  description: string;
  variations: {
    id: number;
    name: string;
    description: string;
    cta: StrapiSharedCTA;
    media: StrapiImageType[];
  }[];
}
export interface ResortSpa {
  __component: "resort-components.spa";
  description: string;
  variations: {
    id: number;
    name: string;
    description: string;
    bookingOptions: StrapiSharedCTA[];
    menu: {
      label: string;
      attachment: {
        id: string;
        url: string;
      };
    };
    media: StrapiImageType[];
  }[];
}
export interface ResortWedding {
  __component: "resort-components.wedding";
  description: string;
  brochure: {
    id: number;
    label: string;
    attachment: {
      id: number;
      url: string;
    };
  };
  options: {
    id: number;
    name: string;
    description: string;
    media: StrapiImageType[];
    downloadOption: StrapiSharedCTA;
  }[];
}
export interface ResortGuide {
  __component: "resort-components.resort-guide";
  guideURL: string;
  guideBrochure: {
    id: string;
    url: string;
  };
}
export interface SocialPlatforms {
  __component: "resort-components.social-platforms";
  instagram?: string;
  twitter?: string;
  youtube?: string;
  tripAdvisor?: string;
  gmail?: string;
  whatsapp?: string;
}
export interface Gallery {
  __component: "shared.gallery";
  gallery: StrapiImageType[];
  title: string;
  description?: string;
  darkBackground?: boolean;
}
export interface FloatingImages {
  __component: "shared.floating-images";
  images: StrapiImageType[];
  heading: string;
  description?: string;
}

export interface StrapiResortType {
  id: number;
  documentId: string;
  resortCode: string;
  name: string;
  slug: string;
  isFeatured: boolean;
  gallery: StrapiImageType[];
  description: string;
  shortDescription: string;
  displayAddress: string;
  zipcode: string;
  province: string;
  country: {
    country: string;
  };
  longitude: number;
  latitude: number;
  mapImage: StrapiImageType;
  mobileBanner: StrapiImageType;
  thumbnail: StrapiImageType;
  isFavorite: boolean;
  favouriteAffinityID?: number | null;
  featuredImage?: StrapiImageType;
  primaryBookingCTA: StrapiSharedCTA | null;
  terms?: {
    terms: string;
    helperText: string;
  };
  accommodation: {
    units: {
      id: string;
      name: string;
      code: string;
      description: string;
      images: StrapiImageType[];
      featuredImage: StrapiImageType;
    }[];
  };
  itineraryList: {
    itinerary: {
      id: number;
      note: string;
      title: string;
      uuid: string;
    }[];
  };
  layout?:
    | ResortBookingCTA
    | ResortPropertyType
    | ResortCuisine
    | ResortFacilities
    | ResortSpa
    | ResortWedding
    | ResortGuide
    | SocialPlatforms
    | Gallery[];
}

export interface TextField {
  __component: "shared.text-field";
  id: number;
  textField: string;
}

export interface RichText {
  __component: "shared.rich-text";
  id: number;
  richtext: string;
  darkBackground?: boolean;
}

export interface StrapiMomentsActionSection {
  __component: "sections.moment-actions-section";
  actions: StrapiBasicCardType[];
}

export interface StrapiImageComponentType {
  __component: "shared.image";
  desktopImage: StrapiImageType;
  mobileImage?: StrapiImageType;
}

export interface StrapiIconRichTextBlockType {
  __component: "shared.icon-richtext-block";
  image: StrapiImageType;
  info: string;
  title?: string;
}

export interface Reciprocals {
  documentId: string;
  name: string;
  slug: string;
  content: string;
  exploreRedirectionURL: string;
  thumbnail: StrapiImageType;
  banner: StrapiImageType;
  logo: StrapiImageType;
  inclusions?: string;
  bookings?: string;
  city?: string;
  country?: string;
}

export interface StrapiIconRichTextGridType {
  __component: "shared.icon-richtext-grid";
  infoBlock: StrapiIconRichTextBlockType[];
}

export interface StrapiManagementChargeType {
  __component: "shared.management-charge";
  infoGrid: StrapiIconRichTextGridType[];
  title: string;
  backgroundImage: StrapiImageType;
}

export interface StrapiCuratedExperienceSharedSectionType {
  __component: "shared.curated-experences";
  title: string;
  description: string;
  experiences: {
    events: StrapiCuratedExperienceType[];
  };
}

export interface StrapiDestinationsSharedSectionType {
  __component: "shared.destinations";
  title: string;
  description: string;
  resorts: StrapiResortType[];
}

export interface StrapiReciprocalsSharedSectionType {
  __component: "shared.reciprocal-partners-sections";
  title: string;
  description: string;
  reciprocals: Reciprocals[];
}

export interface StrapiCommunitySharedSectionType {
  __component: "shared.communities-section";
  title: string;
  description: string;
  communityArticles: StrapiCommunityArticlesType[];
}

export interface StrapiPressFeaturesSectionType {
  __component: "article-components.press-features";
  title: string;
  description: string;
  articles: StrapiCommunityArticlesType[];
}

export interface StrapiMemberOffersSharedSectionType {
  __component: "sections.member-offers";
  id: number;
  offers: {
    id: number;
    title: string;
    cards: StrapiBasicCardType[];
  };
}

export interface StrapiExternalPartnersSharedSectionType {
  __component: "sections.external-partners";
  id: number;
  externalPartners: {
    id: number;
    title: string;
    cards: StrapiBasicCardType[];
  };
}

export interface StrapiHomePagePrivilegeSectionType {
  __component: "home-page-components.privileges";
  id: number;
  title: string;
  description: string;
  subtitle?: string;
  images: StrapiImageType[];
}

export interface StrapiAboutPageTimelineEventsType {
  id: number;
  year: string;
  title: string;
  description: string;
  event_image: StrapiImageType;
}

export interface StrapiAboutPageTimelineSectionType {
  __component: "about-components.timeline";
  events: StrapiAboutPageTimelineEventsType[];
}

export interface StrapiAboutPageWhoWeAreSectionType {
  __component: "about-components.who-we-are-section";
  id: number;
  title: string;
  description?: string;
  image1: StrapiImageType;
  image2?: StrapiImageType;
}

export interface StrapiKarmaCaresType {
  id: number;
  documentId: string;
  title: string;
  subtitle?: string;
  eventDate: string;
  slug: string;
  createdAt: string;
  updatedAt: string;
  publishedAt: string;
  thumbnail: StrapiImageType;
  layout?: (RichText | FloatingImages)[];
  relatedKarmaCares?: StrapiKarmaCaresType[];
  bannerImage?: StrapiImageComponentType;
  description?: string;
  redirectUrl?: string;
}

export interface StrapiKarmaCaresSectionType {
  __component: "sections.karma-cares-section";
  id: number;
  title: string;
  description?: string;
  cares: {
    id: number;
    karmaCares: StrapiKarmaCaresType[];
  };
}

export interface StrapiAboutMomentsSection {
  __component: "about-components.about-moments-section";
  id: number;
  title: string;
  description: string;
  image: StrapiImageType;
}

export interface StrapiTitleWithRichTextTypes {
  id: number;
  title: string;
  description: string;
  icon: StrapiImageType;
}

export interface StrapiKarmaBoutiqueType {
  id: number;
  documentId: string;
  name: string;
  shortDescription: string;
  longDescription: string;
  createdAt: string;
  updatedAt: string;
  publishedAt: string;
  slug: string;
  thumbnail: StrapiImageType;
  image1: StrapiImageType;
  image2: StrapiImageType;
  moreInformation?: StrapiTitleWithRichTextTypes[];
}

export interface StrapiKarmaBoutiqueSectionsType {
  __component: "sections.karma-boutique-section";
  id: number;
  title: string;
  description?: string;
  boutiques: {
    id: number;
    karmaBoutiques: StrapiKarmaBoutiqueType[];
  };
}

export interface StrapiVideoSectionType {
  __component: "shared.video-link";
  id: number;
  title: string;
  description?: string;
  link: string;
  cta: {
    id: number;
    label: string;
    link: string;
    isExternal: boolean;
    icon: StrapiImageType;
  };
}

export interface StrapiTitleWithRichTextSection {
  __component: "sections.title-with-richtext-section";
  id: number;
  title?: string;
  description?: string;
  cards: StrapiTitleWithRichTextTypes[];
  image?: StrapiImageType;
}

export interface StrapiTextBlockSection {
  __component: "sections.text-block-section";
  id: number;
  title?: string;
  description: string;
  textBlock: {
    id: number;
    title: string;
    description: string;
  }[];
}

export interface StrapiTextBlock {
  __component: "shared.text-block";
  id: number;
  title?: string;
  description?: string;
}

export interface StrapiFormSection {
  __component: "form-components.form-section";
  id: number;
  title?: string;
  description?: string;
}

export interface StrapiPartnersListingSection {
  __component: "reciprocal-partnerships-components.partners-listing-section";
  id: number;
  title?: string;
  description?: string;
}

export interface StrapiStrategicPartnersSection {
  __component: "reciprocal-partnerships-components.strategic-partners";
  id: number;
  title?: string;
  description?: string;
  partners: {
    id: number;
    label?: string;
    link: string;
    isExternal: boolean;
    icon: StrapiImageType;
  }[];
}

export interface StrapiGetInTouchSection {
  __component: "sections.lets-connect-section";
  id: number;
  title: string;
  description?: string;
  subtitle?: string;
  backgroundImage: StrapiImageComponentType;
  contactButtons: {
    id: number;
    textField: string;
  }[];
}

export interface StrapiFaqSectionType {
  __component: "faqs-components.faqs";
  id: number;
  faqs: {
    id: number;
    question: string;
    answer: string;
  }[];
}

export interface StrapiMembershipBenefitsType {
  __component: "membership-page-components.membership-benefits";
  id: number;
  title: string;
  description: string;
  image: StrapiImageType;
  cards: {
    id: number;
    text: string;
    image: StrapiImageType;
  }[];
}

export type StrapiPageSectionsType = (
  | TextField
  | RichText
  | Gallery
  | StrapiSharedBasicCardType
  | StrapiBannerType
  | FloatingImages
  | StrapiMomentsActionSection
  | StrapiSliderType
  | StrapiMomentVideoType
  | StrapiImageComponentType
  | StrapiManagementChargeType
  | StrapiCuratedExperienceSharedSectionType
  | StrapiDestinationsSharedSectionType
  | StrapiReciprocalsSharedSectionType
  | StrapiCommunitySharedSectionType
  | StrapiMemberOffersSharedSectionType
  | StrapiExternalPartnersSharedSectionType
  | StrapiBasicCardType
  | StrapiHomePagePrivilegeSectionType
  | StrapiAboutPageTimelineSectionType
  | StrapiAboutPageWhoWeAreSectionType
  | StrapiKarmaCaresSectionType
  | StrapiAboutMomentsSection
  | StrapiKarmaBoutiqueSectionsType
  | StrapiVideoSectionType
  | StrapiTitleWithRichTextSection
  | StrapiTextBlockSection
  | StrapiIconRichTextGridType
  | StrapiPressFeaturesSectionType
  | StrapiTextBlock
  | StrapiFormSection
  | StrapiPartnersListingSection
  | StrapiStrategicPartnersSection
  | StrapiGetInTouchSection
  | StrapiFaqSectionType
  | StrapiMembershipBenefitsType
)[];

export interface StrapiSeoType {
  id: number;
  metaTitle: string;
  metaDescription: string;
  shareImage?: StrapiImageType;
  metaSocial?: {
    id: number;
    socialNetwork: string;
    title: string;
    description: string;
    image?: StrapiImageType;
  }[];
}

export interface StrapiPageType {
  id: number;
  documentId: string;
  title: string;
  slug: string;
  sections: StrapiPageSectionsType;
  seo?: StrapiSeoType;
}

export interface CommunityArticlesCategoryType {
  id: string;
  documentId: string;
  categoryName: string;
}

export interface StrapiLinkType {
  label: string;
  pageSlug: string;
}

export interface StrapiSocialLinksType {
  id: number;
  label?: string;
  link: string;
  icon: StrapiImageType;
}
export interface StrapiShareArticleType {
  id: number;
  documentId: string;
  title: string;
  socialLinks: StrapiSocialLinksType[];
}

export interface StrapiVideoTypes {
  id: number;
  __component: "shared.video";
  video: StrapiImageType;
  thumbnail: StrapiImageType;
}

export interface StrapiCommunityArticlesType {
  id: number;
  documentId: string;
  description: string;
  heading: string;
  slug: string;
  isFeatured: boolean;
  thumbnail: StrapiImageType;
  banner?: {
    id: number;
    desktopImage: StrapiImageType;
    mobileImage?: StrapiImageType;
  };
  layout?: (
    | RichText
    | StrapiCommunityQuizTypes
    | StrapiCommunityRecipeTypes
    | FloatingImages
  )[];
  communityArticleCategories: CommunityArticlesCategoryType[];
  relatedArticles?: StrapiCommunityArticlesType[];
  publishedAt?: string;
  date?: string;
}
export interface StrapiExperienceCategory {
  id: number;
  documentId: string;
  categoryName: string;
  categoryLogo: StrapiImageType;
}

export interface StrapiFeatureExperience {
  __component: "event-components.featured-event";
  featureImage: StrapiImageType;
  featureNote: string;
}

export interface StrapiItinerary {
  __component: "event-components.itinerary";
  id: number;
  date: string;
  description: string;
}

export interface StrapiSubRating {
  id: number;
  title: string;
  icon: StrapiImageType;
  ratingList: { rating: number; title: string }[];
}

export interface StrapiExperienceSurvey {
  __component: "event-components.survey";
  id: number;
  title: string;
  maxStar: number;
  enableUserFeedback: boolean | null;
  stopSurveySubmission: boolean;
  subRating?: StrapiSubRating[] | undefined;
  callbackConsent?:
    | {
        id: number;
        title: string;
        subTitle: string;
      }
      | undefined;
}

export interface StrapiExperienceAccommodation {
  __component: "event-components.event-accommodation";
  id: number;
  startingAccommodationPrice: number;
  currency: string;
  resort: StrapiResortType;
  helperText?: string;
}

export interface StrapiGallerySupportEmails {
  __component: "event-components.gallery-support-emails";
  id: number;
  memberIndia: string[];
  memberNonIndia: string[];
}

export interface StrapiContact {
  __component: "event-components.contact";
  id: number;
  contactList: {
    type: string;
    contactNumber: string;
  }[];
}

export interface StrapiCuratedExperienceType {
  id: number;
  documentId: string;
  name: string;
  slug: string;
  eventStartDate: string;
  eventEndDate: string;
  finalSpots: boolean;
  soldOut: boolean;
  thumbnail: StrapiImageType;
  description: string;
  terms: string;
  slots: number;
  isActive: boolean;
  country: string;
  perHeadPrice: number;
  fullAddress: string;
  latitude: number;
  longitude: number;
  contactNumber: string;
  ticketCurrency: string;
  guestCount: number;
  displayAddress: string;
  maxTicketPerHead: number;
  isFeature: boolean;
  gallery: StrapiImageType[];
  banner: StrapiImageType;
  bannerVideo?: {
    url: string;
  };
  resortLogo: StrapiImageType;
  mapImage: StrapiImageType;
  event_categories?: StrapiExperienceCategory[];
  sections?: (
    | StrapiItinerary
    | StrapiFeatureExperience
    | StrapiExperienceAccommodation
    | StrapiExperienceSurvey
  )[];
  mobileBanner: StrapiImageType;
  locationURL: string;
  longDescription: string;
  interestAffinityID?: number | null;
  favouriteAffinityID?: number | null;
  bookingCTA?: StrapiSharedCTA | null;
}

export interface StrapiMemberFavoriteCollection {
  id: number;
  documentId: string;
  contact_id: string;
  experiences: StrapiCuratedExperienceType[];
  resort: StrapiResortType[];
}

export interface StrapiMemberInterestCollection {
  id: number;
  documentId: string;
  contact_id: string;
  experiences: StrapiCuratedExperienceType[];
}

export interface StrapiCommunityPostcard {
  documentId: string;
  name: string;
  image: StrapiImageType;
}

export interface NomadTextIconBlockType {
  id: number;
  label: string;
  icon: StrapiImageType;
}

export interface NomadVehiclesType {
  id: number;
  documentId: string;
  title: string;
  slug: string;
  length: string;
  width: string;
  height: string;
  interiorHeight: string;
  sleepingCapacity: string;
  description: string;
  shortDescription?: string;
  bookingOptions: string;
  beds?: string;
  bedDimensions?: string;
  isFeatured: boolean;
  seatbeltsDriversCab: number;
  seatbeltsMainCab: number;
  fridge?: string;
  microwave: boolean;
  gasStove: boolean;
  portableGasStove: boolean;
  sink: boolean;
  hotPressurisedWater: boolean;
  coldPressurisedWater: boolean;
  drinkingWaterFilter: boolean;
  freshWater: string;
  wasteWater: string;
  shower: boolean;
  toilet: boolean;
  powerSupply?: string;
  entertainment?: string;
  airCondDriversCab: boolean;
  airCondMainCab?: string;
  heatingDriversCab: boolean;
  heatingMainCab?: string;
  flyScreens?: string;
  internalWalkThrough: boolean;
  awning?: string;
  gasBottle: string;
  childAndBoosterSeatFittings: string;
  extras?: string;
  engineSpecifications: string;
  fuelTankCapacity: string;
  totalNumberOfBeds?: number;
  thumbnail: StrapiImageType;
  bannerImage: StrapiImageType;
  galleryImages: StrapiImageType[];
  numberOfAdultBeds?: number;
  numberOfChildBeds?: number;
  keySpecifications: NomadTextIconBlockType[];
  vehicleBrand?: NomadTextIconBlockType[];
  viewSpecification: StrapiImageType;
}

export interface NomadRouteActivityType {
  id: number;
  documentId: string;
  day: number;
  distance: string;
  drivingTime: string;
  description: string;
  image: StrapiImageType;
  title: string;
}

export interface NomadRoutesType {
  id: number;
  documentId: string;
  title: string;
  slug: string;
  thumbnail: StrapiImageType;
  bannerImage: StrapiImageType;
  highlights: string;
  tripDays: number;
  subtitle?: string;
  description: string;
  country: string;
  cardMap: StrapiImageType;
  mainMap: StrapiImageType;
  moreDetails: {
    id: number;
    country: string;
    travelTime: string;
    route: string;
    totalDistance: string;
    tripAvailability: string;
  };
  routeActivities: NomadRouteActivityType[];
  managementCharge: StrapiManagementChargeType;
  seo?: StrapiSeoType;
}

export interface NomadRecipeType {
  id: number;
  documentId: string;
  title: string;
  slug: string;
  thumbnail: StrapiImageType;
  bannerImage: StrapiImageType;
  ingredients: TextField[];
  methods: string;
  equipments: TextField[];
  longDescription: string;
  shortDescription: string;
  cookingTime: string;
  servings: string;
  recipeGuide: {
    label: string;
    attachment: StrapiImageType;
  };
  managementCharge: StrapiManagementChargeType;
  seo?: StrapiSeoType;
}

export interface StrapiMoment {
  documentId: string;
  category: "Video Testimonial" | "Karma Ambassador" | "Good Karma";
  video: {
    title: string;
    description: string;
    thumbnail: StrapiImageType;
    sourceURL: string;
  };
  shareMoment?: StrapiSocialLinksType[];
  slug: string;
}

export interface StrapiBannerType {
  id: number;
  __component: "shared.banner";
  title: string;
  description: string;
  slug: string;
  image: {
    id: number;
    desktopImage: StrapiImageType;
    mobileImage: StrapiImageType;
  };
  notice?: string;
}

export interface StrapiBasicCardType {
  __component: "shared.link-card";
  id: number;
  title: string;
  description: string;
  target: string;
  url: string;
  image: StrapiImageType;
  subtitle?: string;
  ctaLabel?: string;
}

export interface StrapiSharedBasicCardType {
  id: number;
  __component: "sections.link-cards";
  cards: StrapiBasicCardType[];
  title?: string;
  description?: string;
}

export interface StrapiCommunityQuizTypes {
  __component: "community-components.quiz";
  id: number;
  question: string;
  option1: string;
  option2: string;
  option3: string;
  option4: string;
  correctAnswer: number;
  questionMedia?: StrapiImageType;
}

export interface MenuType {
  id: number;
  label: string;
  attachment: StrapiImageType;
}
export interface StrapiCommunityRecipeTypes {
  __component: "community-components.recipe";
  id: number;
  cookTime: string;
  serving: string;
  method: string;
  ingredients: TextField[];
  recipeGuide?: MenuType;
}
export interface StrapiExperienceTokenType {
  id: number;
  documentId: string;
  info: string;
  equivalentPrice: number;
  currencyType: string;
  bundle: number;
  equivalentPoint: number;
  terms: string;
}

export interface StrapiSliderType {
  id: number;
  __component: "shared.slider";
  slides: StrapiBannerType[];
}

export interface StrapiMomentVideoType {
  id: number;
  __component: "moment-components.moment-video";
  title: string;
  description: string;
  sourceURL: string;
  thumbnail: StrapiImageType;
  subtitle?: string;
}

export interface StrapiCtaButtonType {
  __component: "shared.cta-button";
  id: number;
  label: string;
  link: string;
  isExternal: boolean;
  icon: StrapiImageType;
  darkBackground?: boolean;
}

export interface StrapiSectionTitleType {
  __component: "chronicles-components.section-title";
  title: string;
  darkBackground?: boolean;
}

export type StrapiChroniclesLayoutType = (
  | RichText
  | StrapiVideoTypes
  | FloatingImages
  | StrapiImageComponentType
  | StrapiCtaButtonType
  | Gallery
  | StrapiSectionTitleType
  | StrapiAwardsSectionsType
  | StrapiMemberOffersSharedSectionType
  | StrapiBannerType
)[];

export interface StrapiChroniclesType {
  id: number;
  documentId: string;
  heading: string;
  slug: string;
  description: string;
  createdAt: string;
  updatedAt: string;
  publishedAt: string;
  thumbnail: StrapiImageType;
  bannerImage: StrapiImageComponentType;
  layout: StrapiChroniclesLayoutType;
}

export interface StrapiAwardsType {
  id: number;
  documentId: string;
  awardTitle: string;
  awardCategory: string;
  winnerName: string;
  organization?: string;
  winningPosition?: string;
  createdAt: string;
  updatedAt: string;
  publishedAt: string;
  winningYear: string;
  thumbnail: StrapiImageType;
  bannerImage?: StrapiImageType;
}

export interface StrapiAwardsSectionsType {
  __component: "awards-components.awards-section";
  id: number;
  title?: string;
  description?: string;
  awards?: StrapiAwardsType[];
}

export interface StrapiJobCategory {
  id: number;
  documentId: string;
  categoryName: string;
  createdAt: string;
  updatedAt: string;
  publishedAt: string;
}

export interface StrapiJobLocationType {
  id: number;
  documentId: string;
  locationName: string;
  createdAt: string;
  updatedAt: string;
  publishedAt: string;
}
export interface StrapiJobType {
  id: number;
  documentId: string;
  title: string;
  jobDescription: string;
  isActive: boolean;
  createdAt: string;
  updatedAt: string;
  publishedAt: string;
  organization: string;
  aboutOrganization: string;
  organizationImage: StrapiImageType;
  jobCategories: StrapiJobCategory[];
  jobLocations: StrapiJobLocationType[];
  jobType: string;
}
