from abc import ABC, abstractmethod from datetime import datetime from domain.value_objects import Granularity from domain.entities import ConsumptionPoint class ReadingQueryRepository(ABC): @abstractmethod def get_consumption( self, dev_eui: str, start: datetime, end: datetime, granularity: Granularity, ) -> list[ConsumptionPoint]: ...