from __future__ import annotations

from abc import ABC, abstractmethod

from domain.addresses.user_address import UserAddress


class UserAddressRepository(ABC):
    @abstractmethod
    def load_batch(self, s3_uri: str) -> list[UserAddress]: ...

    @abstractmethod
    def save_batch(self, addresses: list[UserAddress], path_prefix: str) -> str: ...
