"""
Bot utilities package.

This package contains utility modules:
- text_utils: Text processing utilities
- survey_constraints: Survey constraint logic
- typing_utils: Typing indicator utilities
- audio_utils: Audio processing utilities
- error_handling: Error handling utilities
"""

from .text_utils import (
    safe_fill,
    strategy_without_day_blocks,
    extract_day_html,
    is_bad_step
)
from .survey_constraints import (
    uses_social_networks,
    is_sports_technique,
    get_social_constraints_block,
    get_default_step1_for_sport_no_social,
    get_default_step1_generic
)
from .typing_utils import typing_loop, show_typing_with_context
from .audio_utils import (
    download_file_bytes,
    transcribe_bytes_openai,
    get_audio_info
)
from .error_handling import (
    BotError,
    SurveyError,
    StrategyError,
    DatabaseError,
    LLMError,
    handle_errors,
    ErrorHandler
)

__all__ = [
    # Text utilities
    'safe_fill',
    'strategy_without_day_blocks',
    'extract_day_html',
    'is_bad_step',
    
    # Survey constraints
    'uses_social_networks',
    'is_sports_technique',
    'get_social_constraints_block',
    'get_default_step1_for_sport_no_social',
    'get_default_step1_generic',
    
    # Typing utilities
    'typing_loop',
    'show_typing_with_context',
    
    # Audio utilities
    'download_file_bytes',
    'transcribe_bytes_openai',
    'get_audio_info',
    
    # Error handling
    'BotError',
    'SurveyError',
    'StrategyError',
    'DatabaseError',
    'LLMError',
    'handle_errors',
    'ErrorHandler'
]
