• Filter service messages by action type

    Type Parameters

    • T extends
          | "call"
          | "chat_created"
          | "channel_created"
          | "chat_migrate_to"
          | "channel_migrate_from"
          | "message_pinned"
          | "history_cleared"
          | "game_score"
          | "contact_joined"
          | "title_changed"
          | "photo_changed"
          | "photo_deleted"
          | "users_added"
          | "user_left"
          | "user_removed"
          | "user_joined_link"
          | "user_joined_approved"
          | "payment_received"
          | "payment_sent"
          | "screenshot_taken"
          | "bot_allowed"
          | "geo_proximity"
          | "group_call_started"
          | "group_call_ended"
          | "group_call_scheduled"
          | "group_call_invite"
          | "ttl_changed"
          | "topic_created"
          | "topic_edited"
          | "custom"
          | "theme_changed"
          | "webview_sent"
          | "webview_received"
          | "premium_gifted"
          | "photo_suggested"
          | "peer_sent"
          | "peer_chosen"
          | "wallpaper_changed"
          | "gift_code"
          | "giveaway_started"
          | "giveaway_ended"
          | "boost_apply"
          | "payment_refunded"
          | "stars_gifted"
          | "stars_prize"
          | "stars_gift"

    Parameters

    Returns UpdateFilter<Message, {
        action: Extract<MessageAction, {
            type: T;
        }>;
        sender: T extends
                | "user_joined_link"
                | "user_removed"
                | "history_cleared"
                | "contact_joined"
                | "bot_allowed"
            ? User
            : Peer;
    }>