from __future__ import annotations

from dataclasses import dataclass, field


@dataclass
class UpdateItem:
    """Ein verfügbares Update aus einer Quelle (pacman/AUR/flatpak/fwupd)."""
    source: str             # 'pacman', 'aur', 'flatpak', 'fwupd'
    name: str               # Paket- oder Geräte-Name
    current_version: str    # aktuelle Version
    new_version: str        # Ziel-Version
    size_bytes: int = 0     # Download-Grösse falls bekannt
    extra: dict[str, str] = field(default_factory=dict)
