import type { ShortlistStatus } from './enums'

export interface ShortlistItem {
  resultId: string
  resultType: string
  title: string
  matchScore: number
  confidenceScore?: number
  dataQualityScore?: number
  sourceLabel?: string
  addedAt: string
  addedBy: string
  note?: string
  propertyId?: string
}

export interface ShortlistItemInput {
  resultId: string
  resultType: string
  title: string
  matchScore: number
  confidenceScore?: number
  dataQualityScore?: number
  sourceLabel?: string
  addedBy: string
  note?: string
  propertyId?: string
}

export interface Shortlist {
  id: string
  title: string
  description?: string
  needId?: string
  ownerUserId?: string
  decisionBriefId?: string
  items: ShortlistItem[]
  status: ShortlistStatus
  createdBy: string
  organizationId?: string
  sharedWith?: string[]
  createdAt: string
  updatedAt: string
}

export type CreateShortlistInput = Omit<Shortlist, 'id' | 'createdAt' | 'updatedAt'>
export type UpdateShortlistInput = Partial<CreateShortlistInput>
