from decouple import config

class Settings:
    # Application
    service_name: str = "notification-service"
    version: str = "1.0.0"
    debug: bool = config('DEBUG', default=False, cast=bool)
    
    # MongoDB
    mongodb_url: str = config('MONGODB_URL', default='mongodb://localhost:27017')
    db_name: str = config('DB_NAME', default='mana_pige_db')
    
    # Kafka
    kafka_bootstrap_servers: str = config('KAFKA_BOOTSTRAP_SERVERS', default='localhost:9092')
    kafka_group_id: str = "notification-service-group"
    
    # SMTP Email Configuration
    smtp_host: str = config('SMTP_HOST', default='smtp.gmail.com')
    smtp_port: int = config('SMTP_PORT', default=587, cast=int)
    smtp_username: str = config('SMTP_USERNAME', default='')
    smtp_password: str = config('SMTP_PASSWORD', default='')
    smtp_use_tls: bool = config('SMTP_USE_TLS', default=True, cast=bool)
    smtp_use_ssl: bool = config('SMTP_USE_SSL', default=False, cast=bool)
    
    # Email Settings
    email_from: str = config('EMAIL_FROM', default='noreply@manapige.com')
    email_from_name: str = config('EMAIL_FROM_NAME', default='Mana Pige')
    base_url: str = config('BASE_URL', default='http://localhost:3000')
    
    # Service URLs
    auth_service_url: str = config('AUTH_SERVICE_URL', default='http://auth-service:8000')

settings = Settings()
