from datetime import datetime from abc import ABC, abstractmethod class BaseClient(ABC): @abstractmethod def get_document(self, collection_name: str, record_id: str, created_at: datetime) -> dict or None: """ Get data from cache. Args: collection_name: Collection name. record_id: Record ID. created_at: Record created_at timestamp. Returns: Cached data or None. """ @abstractmethod def save_document(self, collection_name: str, record_id: str, created_at: datetime, data: dict): """Save data to cache. Args: collection_name: Collection name. record_id: Record ID. created_at: Records created_at datetime. data: Data with new image URLs. """