import type { DealImage } from "./deal/DealImage.ts"

import type { DealVote } from "./deal/DealVote.ts"
import type { User } from "./User"
import type { Seller } from "./seller/Seller.ts"

export type Deal = {
  id: number
  title: string
  description?: string
  url?: string
  price?: number

  score: number
  status: "PENDING" | "ACTIVE" | "EXPIRED" | "REJECTED"
  saleType: "ONLINE" | "OFFLINE" | "CODE"
  affiliateType: "AFFILIATE" | "NON_AFFILIATE" | "USER_AFFILIATE"


  sellerName: string

  createdAt: string
  updatedAt: string

  // ilişkiler
  user?: Pick<User, "id" | "username" | "avatarUrl">
  company?: Pick<Seller, "id" | "name">
  images?: DealImage[]
  votes?: DealVote[]
  comments?: Comment[]
}
