from app.storage.repositories import Repository class Budget: def __init__(self, repo: Repository, max_tasks: int): self.repo = repo self.max_tasks = max_tasks def remaining(self) -> int: return max(0, self.max_tasks - self.repo.count_budgeted_tasks()) def can_create_task(self) -> bool: return self.remaining() > 0