// src/models/tour.ts

// Ilovada foydalaniladigan barcha modellar
export type TicketAmenity = {
  name: string;
  icon_name: string; // Misol uchun: "wifi", "pool"
};

export type IncludedService = {
  image: string;
  title: string;
  description: string;
};

export type HotelMeal = {
  image: string;
  name: string;
  description: string;
};

export type HotelData = {
  name: string; // Joylashadigan manzil nomi
  rating: number; // Yulduz
  meal_plan: string; // Ovqatlanish rejasi
  // Bu malumotlar API orqali keladi deb faraz qilinadi
  hotel_type_id: number;
  hotel_amenity_ids: number[];
  hotel_feature_ids: number[];
};

export type TourFormData = {
  // Etap 1: Asosiy Tur Ma'lumotlari
  title: string;
  price: number;
  departure: string;
  destination: string;
  departure_time: string;
  travel_time: string;
  passenger_count: number;
  languages: string;
  duration_days: number;
  hotel_meals_option: string; // 'nonushta', 'yarmpansion'
  tariff: string; // 'econom', 'business'
  badge: string; // 'hot', 'new'
  visa_required: boolean;
  banner_image: File[];
  transport: string; // 'airplane', 'bus'

  // Qo'shimcha Modellar
  tickets_images: string[]; // Bilet rasmlari URL massivi
  tickets_amenities: TicketAmenity[];
  tickets_included_services: IncludedService[];
  tickets_hotel_meals: HotelMeal[];

  // Etap 2: Mehmonxona Ma'lumotlari (yoki uni qismi)
  hotel_info: string; // Asosiy matn
  hotel_data: HotelData;
};

// Forma holatini boshqarish uchun boshlang'ich qiymat
export const initialTourData: TourFormData = {
  title: "",
  price: 0,
  departure: "",
  destination: "",
  departure_time: "",
  travel_time: "",
  passenger_count: 1,
  languages: "O'zbek, Rus",
  duration_days: 1,
  hotel_meals_option: "Nonushta",
  tariff: "Econom",
  badge: "New",
  visa_required: false,
  banner_image: [],
  transport: "Samolyot",
  tickets_images: [],
  tickets_amenities: [{ name: "Wi-Fi", icon_name: "Wifi" }],
  tickets_included_services: [],
  tickets_hotel_meals: [],
  hotel_info: "",
  hotel_data: {
    name: "",
    rating: 5,
    meal_plan: "Nonushta",
    hotel_type_id: 1,
    hotel_amenity_ids: [],
    hotel_feature_ids: [],
  },
};
