clients-protocol/clients_protocol/wishlist.py
Jon Michael Aanes 0447711fb6
Some checks failed
Run Python tests (through Pytest) / Test (push) Failing after 24s
Verify Python project can be installed, loaded and have version checked / Test (push) Failing after 21s
Moving some defintions to a shared library
2025-06-14 00:35:19 +02:00

28 lines
727 B
Python

import logging
from collections.abc import Sequence
import abc
import fin_defs
from typing import Any
import dataclasses
from . import common
logger = logging.getLogger(__name__)
@dataclasses.dataclass(frozen=True)
class WishlistItem:
"""A single wishlished product."""
product_name: str # Name of the game/product
reference_url: str # URL to a reference page for the item.
image_url: str | None = None # URL to the product image
console_name: str | None = None # Gaming platform/console name
reference_price: fin_defs.AssetAmount | None = None # Reference price, if any
class WishlistClient(abc.ABC):
@abc.abstractmethod
def get_wishlist(self) -> Sequence[WishlistItem]:
pass