"""Track and Artist domain entities.""" import datetime as dt import uuid from dataclasses import dataclass @dataclass(frozen=True, slots=True) class Artist: id: uuid.UUID name: str created_at: dt.datetime updated_at: dt.datetime @dataclass(frozen=True, slots=True) class Track: id: uuid.UUID title: str artist_id: uuid.UUID album_id: uuid.UUID | None storage_uri: str file_format: str file_size: int source: str source_id: str duration_seconds: int | None genre: str | None year: int | None metadata_status: str metadata_error: str | None enriched_at: dt.datetime | None created_at: dt.datetime updated_at: dt.datetime