SYMBOL INDEX (32 symbols across 12 files) FILE: bot/__main__.py function main (line 20) | async def main(): FILE: bot/config_reader.py class LoggingRenderer (line 7) | class LoggingRenderer(str, Enum): class LoggingSettings (line 12) | class LoggingSettings(BaseSettings): class BotSettings (line 27) | class BotSettings(BaseSettings): FILE: bot/fluent_helper.py class FluentDispenser (line 6) | class FluentDispenser: method __init__ (line 7) | def __init__(self, locales_dir: Path, default_language: str = "en"): method default_locale (line 31) | def default_locale(self) -> FluentLocalization: method available_languages (line 35) | def available_languages(self) -> list[str]: method get_language (line 38) | def get_language(self, language_code: str): FILE: bot/handlers/add_or_migrate.py function bot_added_to_group (line 21) | async def bot_added_to_group(event: ChatMemberUpdated, bot: Bot, l10n: F... function group_to_supergroup_migration (line 42) | async def group_to_supergroup_migration(message: Message, bot: Bot, l10n... FILE: bot/handlers/commands.py function cmd_start (line 13) | async def cmd_start(message: Message, l10n: FluentLocalization): function cmd_id_pm (line 29) | async def cmd_id_pm(message: Message, l10n: FluentLocalization): function cmd_id_groups (line 48) | async def cmd_id_groups(message: Message, l10n: FluentLocalization): function cmd_help (line 74) | async def cmd_help(message: Message, l10n: FluentLocalization): FILE: bot/handlers/errors.py function handle_errors (line 12) | async def handle_errors(event: ErrorEvent): FILE: bot/handlers/inline_mode.py function inline_mode_handler (line 10) | async def inline_mode_handler(query: InlineQuery, l10n: FluentLocalizati... FILE: bot/handlers/pm.py function get_channel_or_supergroup_id (line 12) | async def get_channel_or_supergroup_id(message: Message, chat_type: str,... function get_user_id_no_privacy (line 29) | async def get_user_id_no_privacy(message: Message, l10n: FluentLocalizat... function get_user_id_with_privacy (line 44) | async def get_user_id_with_privacy(message: Message, l10n: FluentLocaliz... function sticker_in_pm (line 57) | async def sticker_in_pm(message: Message, l10n: FluentLocalization): function other_inline_bot_in_pm (line 70) | async def other_inline_bot_in_pm(message: Message, l10n: FluentLocalizat... function other_in_pm (line 83) | async def other_in_pm(message: Message, l10n: FluentLocalization): FILE: bot/logs.py function get_structlog_config (line 10) | def get_structlog_config(config: LoggingSettings) -> dict: function get_processors (line 19) | def get_processors(config: LoggingSettings) -> list: FILE: bot/middlewares/l10n.py function is_pm (line 10) | def is_pm(event: Update) -> bool: class L10nMiddleware (line 16) | class L10nMiddleware(BaseMiddleware): method __init__ (line 19) | def __init__(self, dispenser: FluentDispenser): method __call__ (line 22) | async def __call__( FILE: bot/middlewares/log_unhandled.py class UnhandledUpdatesLoggerMiddleware (line 12) | class UnhandledUpdatesLoggerMiddleware(BaseMiddleware): method __call__ (line 13) | async def __call__( FILE: bot/ui_commands.py function set_bot_commands (line 8) | async def set_bot_commands(bot: Bot, dispenser: FluentDispenser) -> None: