# This file was generated by liblab | https://liblab.com/

from .services.players import PlayersService
from .services.skaters import SkatersService
from .services.goalies import GoaliesService
from .services.draft import DraftService
from .services.teams import TeamsService
from .services.season import SeasonService
from .services.game import GameService
from .services.miscellaneous import MiscellaneousService
from .net.environment import Environment


class NhlStats:
    def __init__(self, base_url: str = Environment.DEFAULT.value):
        """
        Initializes NhlStats the SDK class.
        """
        self.players = PlayersService(base_url=base_url)
        self.skaters = SkatersService(base_url=base_url)
        self.goalies = GoaliesService(base_url=base_url)
        self.draft = DraftService(base_url=base_url)
        self.teams = TeamsService(base_url=base_url)
        self.season = SeasonService(base_url=base_url)
        self.game = GameService(base_url=base_url)
        self.miscellaneous = MiscellaneousService(base_url=base_url)

    def set_base_url(self, base_url):
        """
        Sets the base URL for the entire SDK.
        """
        self.players.set_base_url(base_url)
        self.skaters.set_base_url(base_url)
        self.goalies.set_base_url(base_url)
        self.draft.set_base_url(base_url)
        self.teams.set_base_url(base_url)
        self.season.set_base_url(base_url)
        self.game.set_base_url(base_url)
        self.miscellaneous.set_base_url(base_url)

        return self


# c029837e0e474b76bc487506e8799df5e3335891efe4fb02bda7a1441840310c
