"""
Dexorder Trading Platform Python Client

Provides high-level APIs for:
- Historical OHLC data retrieval with smart caching
- Async request/response via relay
- Iceberg data warehouse queries
- User container event publishing
- Container lifecycle management
"""

__version__ = "0.1.0"

# Suppress the protobuf warning - it's handled at import time
import warnings
warnings.filterwarnings('ignore', message='Warning: Protobuf files not found')

from .ohlc_client import OHLCClient
from .iceberg_client import IcebergClient
from .history_client import HistoryClient
from .lifecycle_manager import (
    LifecycleManager,
    get_lifecycle_manager,
    start_lifecycle_manager,
)

# Event system
from .events import (
    EventPublisher,
    EventType,
    Priority,
    ChannelType,
    DeliverySpec,
    UserEvent,
)

__all__ = [
    # Data clients
    'OHLCClient',
    'IcebergClient',
    'HistoryClient',
    # Lifecycle management
    'LifecycleManager',
    'get_lifecycle_manager',
    'start_lifecycle_manager',
    # Event system
    'EventPublisher',
    'EventType',
    'Priority',
    'ChannelType',
    'DeliverySpec',
    'UserEvent',
]
