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

from .services.conferences import ConferencesService
from .services.divisions import DivisionsService
from .services.draft import DraftService
from .services.games import GamesService
from .services.players import PlayersService
from .services.schedule import ScheduleService
from .services.standings import StandingsService
from .services.stats import StatsService
from .services.teams import TeamsService
from .net.environment import Environment


class Nhl:
    def __init__(self, base_url: str = Environment.DEFAULT.value):
        """
        Initializes Nhl the SDK class.
        """
        self.conferences = ConferencesService(base_url=base_url)
        self.divisions = DivisionsService(base_url=base_url)
        self.draft = DraftService(base_url=base_url)
        self.games = GamesService(base_url=base_url)
        self.players = PlayersService(base_url=base_url)
        self.schedule = ScheduleService(base_url=base_url)
        self.standings = StandingsService(base_url=base_url)
        self.stats = StatsService(base_url=base_url)
        self.teams = TeamsService(base_url=base_url)

    def set_base_url(self, base_url):
        """
        Sets the base URL for the entire SDK.
        """
        self.conferences.set_base_url(base_url)
        self.divisions.set_base_url(base_url)
        self.draft.set_base_url(base_url)
        self.games.set_base_url(base_url)
        self.players.set_base_url(base_url)
        self.schedule.set_base_url(base_url)
        self.standings.set_base_url(base_url)
        self.stats.set_base_url(base_url)
        self.teams.set_base_url(base_url)

        return self


# c029837e0e474b76bc487506e8799df5e3335891efe4fb02bda7a1441840310c
