# retoor <retoor@molodetz.nl>

from dataclasses import dataclass, field


@dataclass
class ImageCandidate:
    url: str
    alt_text: str = ""
    phash: str = ""
    width: int = 0
    height: int = 0
    is_placeholder: bool = True


@dataclass
class ArticleGrade:
    ai_grade: int | None
    effective_score: int
    has_unique_image: bool
    image_url: str
    valid: bool
    reject_reason: str
    candidates: list[ImageCandidate] = field(default_factory=list)
