from pydantic import BaseModel, Field, HttpUrl, ConfigDict from typing import Optional from enum import Enum class SourceType(str, Enum): GITHUB_RAW = "github_raw" SUBSCRIPTION_BASE64 = "subscription_base64" GENERIC_TEXT = "generic_text" class SourceConfig(BaseModel): model_config = ConfigDict(use_enum_values=True) url: HttpUrl type: SourceType enabled: bool = True selector: Optional[str] = None interval: int = Field(default=3600, gt=0)