#!/usr/bin/env python3
"""
Track Info data class shared across the iPod transfer pipeline.
"""

from typing import Optional
from dataclasses import dataclass


@dataclass
class TrackInfo:
    """Data class to store track information."""
    source_id: str
    title: str
    artist: str
    album: str
    thumbnail_url: str
    duration: int
    track_number: Optional[int] = None
    playlist_title: Optional[str] = None
    download_path: Optional[str] = None
    genre: Optional[str] = None
    album_artist: Optional[str] = None
    cover_path: Optional[str] = None
    play_count: int = 0
    rating: int = 0
    last_played: int = 0
    skip_count: int = 0
