"""
MiniMax Client Library

A Python client library for MiniMax AI models using Hugging Face Inference Client.
This package provides modular components for environment validation, client initialization,
chat completion, configuration management, comprehensive error handling, and CLI tools.
"""

__version__ = "1.0.0"
__author__ = "MiniMax Client Team"
__email__ = "support@traycer.ai"

# Import main components for easy access
from .config import Configuration
from .environment import check_environment
from .client import initialize_client
from .chat import create_chat_completion
from .main import main

# Import exception handling
from .exceptions import (
    MiniMaxClientError,
    ConfigurationError,
    AuthenticationError,
    NetworkError,
    ModelError,
    APIError,
    FileOperationError,
    ValidationError,
    RetryableError,
    RateLimitError,
    ServiceUnavailableError,
    TimeoutError
)

# Import retry mechanisms
from .retry import (
    RetryConfig,
    with_retry,
    DEFAULT_RETRY_CONFIG,
    NETWORK_RETRY_CONFIG
)

# Import CLI commands (temporarily disabled due to UI import issues)
# from .commands import CommandRouter, BaseCommand

# Define what gets imported with "from minimax_client import *"
__all__ = [
    # Core functionality
    "Configuration",
    "check_environment",
    "initialize_client",
    "create_chat_completion",
    "main",
    
    # Exception handling
    "MiniMaxClientError",
    "ConfigurationError", 
    "AuthenticationError",
    "NetworkError",
    "ModelError",
    "APIError",
    "FileOperationError",
    "ValidationError",
    "RetryableError",
    "RateLimitError",
    "ServiceUnavailableError",
    "TimeoutError",
    
    # Retry mechanisms
    "RetryConfig",
    "with_retry",
    "DEFAULT_RETRY_CONFIG",
    "NETWORK_RETRY_CONFIG",
    
    # CLI commands
    "CommandRouter",
    "BaseCommand",
    
    # Metadata
    "__version__",
]

# Package metadata
__title__ = "minimax_client"
__description__ = "A client library for MiniMax AI models"
__url__ = "https://github.com/traycerai/MiniMax"
__license__ = "MIT"