import toml class DiscordConfig: def __init__(self, discord_config: any) -> None: self.token: str = discord_config["token"] class LoggingConfig: def __init__(self, logging_config: any) -> None: self.level: str = logging_config["level"] class RedisConfig: def __init__(self, redis_config: any) -> None: self.host: str = redis_config["host"] self.port: int = redis_config["port"] self.password: str = redis_config["password"] class Config: def __init__(self, config_path: str) -> None: self._config = toml.load(config_path) self.discord = DiscordConfig(self._config["discord"]) self.logging = LoggingConfig(self._config["logging"]) self.redis = RedisConfig(self._config["redis"]) def __str__(self) -> str: return str(self._config)