TgToFileSystem/configParse.py
2024-05-19 12:56:57 +08:00

31 lines
757 B
Python

import toml
import functools
from pydantic import BaseModel
class TgToFileSystemParameter(BaseModel):
class BaseParameter(BaseModel):
salt: str
port: int
timeit_enable: bool
base: BaseParameter
class ApiParameter(BaseModel):
api_id: int
api_hash: str
tgApi: ApiParameter
class TgProxyParameter(BaseModel):
enable: bool
proxy_type: str
addr: str
port: int
proxy: TgProxyParameter
@functools.lru_cache
def get_TgToFileSystemParameter(path: str = "./config.toml", force_reload: bool = False) -> TgToFileSystemParameter:
if force_reload:
get_TgToFileSystemParameter.cache_clear()
return TgToFileSystemParameter.model_validate(toml.load(path))