import os from typing import Optional from pydantic_settings import BaseSettings, SettingsConfigDict class Settings(BaseSettings): # Telegram Bot BOT_TOKEN: str ADMIN_ID: int = 0 # AI Service GEMINI_API_KEY: str # Database MONGO_HOST: str = "mongodb://localhost:27017" DB_NAME: str = "my_bot_db" # S3 Storage (Minio) MINIO_ENDPOINT: str = "http://localhost:9000" MINIO_ACCESS_KEY: str = "minioadmin" MINIO_SECRET_KEY: str = "minioadmin" MINIO_BUCKET: str = "ai-char" # External API EXTERNAL_API_SECRET: Optional[str] = None # JWT Security SECRET_KEY: str = "CHANGE_ME_TO_A_SUPER_SECRET_KEY" ALGORITHM: str = "HS256" ACCESS_TOKEN_EXPIRE_MINUTES: int = 30 * 24 * 60 # 30 days model_config = SettingsConfigDict( env_file=os.getenv("ENV_FILE", ".env"), env_file_encoding="utf-8", extra="ignore" ) settings = Settings()