from auth.jwt_auth import verify_token


class ResolveSalonIdUseCase:
    """Resolve salon ID from a NestJS salon login JWT."""

    def execute(self, token: str) -> str:
        payload = verify_token(token)

        if payload.get("role") != "salon":
            raise ValueError("Token is not a salon token")

        salon_id = payload.get("id")
        if not salon_id:
            raise ValueError("Salon ID missing from token")

        return str(salon_id)
