import logging from telebot.handler_backends import BaseMiddleware from telebot.types import Message, CallbackQuery class ExtraArguments(BaseMiddleware): def __init__(self, logger: logging.Logger, i18n): super().__init__() self.logger = logger self.i18n = i18n self.update_types = ["message", "callback_query"] def pre_process(self, obj, data: dict): data["logger"] = self.logger if isinstance(obj, Message): data["t"] = self.i18n.customized_call(message=obj) elif isinstance(obj, CallbackQuery): data["t"] = self.i18n.customized_call(callback=obj) def post_process(self, message, data: dict, exception: BaseException): pass