"""环境变量配置模块"""

import os
from typing import Optional


def get_api_key(default: str = "") -> str:
    """
    获取 API 密钥环境变量
    
    Args:
        default: 默认值
        
    Returns:
        str: API 密钥
        
    Environment Variables:
        API_KEY: API 密钥
    """
    return os.environ.get("API_KEY", default)


def get_base_url(default: str = "http://localhost:8080") -> str:
    """
    获取后端 API 基础 URL 环境变量
    
    Args:
        default: 默认值
        
    Returns:
        str: 后端 API 基础 URL
        
    Environment Variables:
        BASE_URL: 后端 API 基础 URL
    """
    return os.environ.get("BASE_URL", default)


def get_env_config() -> dict:
    """
    获取所有环境配置
    
    Returns:
        dict: 包含所有配置的字典
    """
    return {
        "api_key": get_api_key(),
        "base_url": get_base_url()
    }


def set_env_variable(key: str, value: str) -> None:
    """
    设置环境变量（仅在当前进程中有效）
    
    Args:
        key: 环境变量名
        value: 环境变量值
    """
    os.environ[key] = value
