import { Pagination } from "../article/types";

export interface Banner {
  id: number;
  title: string;
  subtitle: string;
  imageUrl: string;
  imageMobileUrl: string;
  linkUrl: string;
  linkTarget: string;
  position: string;
  displayOrder: number;
}

export interface LoadBannerResponse {
  banners: Banner[];
  pagination: Pagination;
}

export interface Review {
  id: number;
  customerName: string;
  avatarUrl: string;
  rating: number;
  reviewContent: string;
  destination: string;
  isFeatured: boolean;
  createdDate: string;
}

export interface LoadReviewResponse {
  reviews: Review[];
  pagination: Pagination;
}

export interface FaqCategory {
  id: number;
  categoryName: string;
  categorySlug: string;
  description: string;
  iconUrl: string;
  displayOrder: number;
}

export interface Faq {
  id: number;
  question: string;
  answer: string;
  categoryId: number;
  viewCount: number;
  isFeatured: boolean;
}

export interface LoadFaqCategoryResponse {
  categories: FaqCategory[];
  pagination: Pagination;
}

export interface LoadFaqResponse {
  faqs: Faq[];
  pagination: Pagination;
}

export interface DeviceMeta {
  brand: string;
  deviceCount: number;
  popularCount: number;
  devices: DeviceInfo[];
}

export interface DeviceInfo {
  id: number;
  modelName: string;
  category: string;
  isPopular: boolean;
  displayOrder: number;
  modelNameEn: string;
  modelNameLo: string;
  notes: string;
  notesEn: string;
  notesLo: string;
}

export interface LoadDeviceMetaResponse {
  brands: DeviceMeta[];
}
