Type Parameters

Hierarchy

Implements

Constructors

Properties

enterHandler: MiddlewareFn<C>
id: string
leaveHandler: MiddlewareFn<C>
steps: Middleware<C>[]
ttl?: number
mount: {
    <Ctx, Filter>(filters: MaybeArray<Filter>, ...fns: NonemptyReadonlyArray<Middleware<FilteredContext<Ctx, Filter>>>): MiddlewareFn<Ctx>;
    <Ctx, Filter>(filters: MaybeArray<Filter>, ...fns: NonemptyReadonlyArray<Middleware<NarrowedContext<Ctx, MountMap[Filter]>>>): MiddlewareFn<Ctx>;
} = Composer.on

Type declaration

    • <Ctx, Filter>(filters: MaybeArray<Filter>, ...fns: NonemptyReadonlyArray<Middleware<FilteredContext<Ctx, Filter>>>): MiddlewareFn<Ctx>
    • Generates middleware for handling provided update types.

      Deprecated

      use Composer.on instead

      Type Parameters

      • Ctx extends Context<Update, Ctx>

      • Filter extends UpdateType | Guard<Ctx["update"], Ctx["update"]>

      Parameters

      • filters: MaybeArray<Filter>
      • Rest ...fns: NonemptyReadonlyArray<Middleware<FilteredContext<Ctx, Filter>>>

      Returns MiddlewareFn<Ctx>

    • <Ctx, Filter>(filters: MaybeArray<Filter>, ...fns: NonemptyReadonlyArray<Middleware<NarrowedContext<Ctx, MountMap[Filter]>>>): MiddlewareFn<Ctx>
    • Generates middleware for handling provided update types.

      Deprecated

      use Composer.on instead

      Type Parameters

      • Ctx extends Context<Update, Ctx>

      • Filter extends "text" | "animation" | "audio" | "document" | "photo" | "sticker" | "video" | "video_note" | "voice" | "callback_query" | "channel_post" | "chat_member" | "chosen_inline_result" | "edited_channel_post" | "edited_message" | "inline_query" | "message" | "my_chat_member" | "pre_checkout_query" | "poll_answer" | "poll" | "shipping_query" | "chat_join_request" | "channel_chat_created" | "chat_shared" | "connected_website" | "delete_chat_photo" | "group_chat_created" | "invoice" | "left_chat_member" | "message_auto_delete_timer_changed" | "migrate_from_chat_id" | "migrate_to_chat_id" | "new_chat_members" | "new_chat_photo" | "new_chat_title" | "passport_data" | "proximity_alert_triggered" | "forum_topic_created" | "forum_topic_closed" | "forum_topic_reopened" | "pinned_message" | "successful_payment" | "supergroup_chat_created" | "user_shared" | "video_chat_scheduled" | "video_chat_started" | "video_chat_ended" | "video_chat_participants_invited" | "web_app_data" | "has_media_spoiler" | "forward_date" | "contact" | "dice" | "location" | "game" | "venue"

      Parameters

      Returns MiddlewareFn<Ctx>

Methods

  • Registers middleware for handling matching callback queries.

    Parameters

    • triggers: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "callback_query">

    Returns WizardScene<C>

  • Parameters

    • cashtag: MaybeArray<string>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns WizardScene<C>

  • Parameters

    • email: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns WizardScene<C>

  • Registers middleware for handling updates matching given type guard function.

    Deprecated

    use Composer::on

    Type Parameters

    • U extends Update

    Parameters

    • guardFn: ((update: Update) => update is U)
        • (update: Update): update is U
        • Parameters

          • update: Update

          Returns update is U

    • Rest ...fns: NonemptyReadonlyArray<Middleware<NarrowedContext<C, U>>>

    Returns WizardScene<C>

  • Parameters

    • hashtag: MaybeArray<string>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns WizardScene<C>

  • Registers middleware for handling matching text messages.

    Parameters

    • triggers: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "text">

    Returns WizardScene<C>

  • Registers middleware for handling matching inline queries.

    Parameters

    • triggers: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "inline_query">

    Returns WizardScene<C>

  • Parameters

    • mention: MaybeArray<string>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns WizardScene<C>

  • Registers middleware for handling updates narrowed by update types or filter queries.

    Type Parameters

    • Filter extends UpdateType | Guard<C["update"], C["update"]>

    Parameters

    • filters: MaybeArray<Filter>
    • Rest ...fns: NonemptyReadonlyArray<Middleware<FilteredContext<C, Filter>>>

    Returns WizardScene<C>

  • Registers middleware for handling updates narrowed by update types or message subtypes.

    Deprecated

    Use filter utils instead. Support for Message subtype in Composer::on will be removed in Telegraf v5.

    Type Parameters

    • Filter extends "text" | "animation" | "audio" | "document" | "photo" | "sticker" | "video" | "video_note" | "voice" | "callback_query" | "channel_post" | "chat_member" | "chosen_inline_result" | "edited_channel_post" | "edited_message" | "inline_query" | "message" | "my_chat_member" | "pre_checkout_query" | "poll_answer" | "poll" | "shipping_query" | "chat_join_request" | "channel_chat_created" | "chat_shared" | "connected_website" | "delete_chat_photo" | "group_chat_created" | "invoice" | "left_chat_member" | "message_auto_delete_timer_changed" | "migrate_from_chat_id" | "migrate_to_chat_id" | "new_chat_members" | "new_chat_photo" | "new_chat_title" | "passport_data" | "proximity_alert_triggered" | "forum_topic_created" | "forum_topic_closed" | "forum_topic_reopened" | "pinned_message" | "successful_payment" | "supergroup_chat_created" | "user_shared" | "video_chat_scheduled" | "video_chat_started" | "video_chat_ended" | "video_chat_participants_invited" | "web_app_data" | "has_media_spoiler" | "forward_date" | "contact" | "dice" | "location" | "game" | "venue"

    Parameters

    Returns WizardScene<C>

  • Parameters

    • number: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns WizardScene<C>

  • Registers a middleware for handling /start

    Parameters

    • Rest ...fns: NonemptyReadonlyArray<Middleware<Context<{
          message: New & NonChannel & TextMessage;
          update_id: number;
      }> & Omit<C, keyof Context<Update>> & {
          startPayload: string;
      }>>

    Returns WizardScene<C>

  • Parameters

    • url: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns WizardScene<C>

  • Generates middleware for handling matching callback queries.

    Type Parameters

    Parameters

    • triggers: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "callback_query">

    Returns MiddlewareFn<C>

  • Type Parameters

    Parameters

    • cashtag: MaybeArray<string>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns MiddlewareFn<C>

  • Generates middleware running only in specified chat types.

    Type Parameters

    Parameters

    • type: MaybeArray<"channel" | "group" | "supergroup" | "private">
    • Rest ...fns: NonemptyReadonlyArray<Middleware<C>>

    Returns MiddlewareFn<C>

  • Type Parameters

    • C extends Context<Update, C>

    • Handlers extends Record<string | number | symbol, Middleware<C>>

    Parameters

    • routeFn: ((ctx: C) => MaybePromise<keyof Handlers>)
        • (ctx: C): MaybePromise<keyof Handlers>
        • Parameters

          • ctx: C

          Returns MaybePromise<keyof Handlers>

    • handlers: Handlers

    Returns Middleware<C>

  • Type Parameters

    Parameters

    • email: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns MiddlewareFn<C>

  • Type Parameters

    Parameters

    • entityType: MaybeArray<string>
    • predicate: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns MiddlewareFn<C>

  • Generates optional middleware based on a predicate that only operates on ctx.update.

    Example:

    import { Composer, Update } from 'telegraf'

    const predicate = (u): u is Update.MessageUpdate => 'message' in u
    const middleware = Composer.guard(predicate, (ctx) => {
    const message = ctx.update.message
    })

    Note that Composer.on('message') is preferred over this.

    See

    Composer.optional for a more generic version of this method that allows the predicate to operate on ctx itself

    Deprecated

    use Composer.on

    Type Parameters

    • C extends Context<Update, C>

    • U extends Update

    Parameters

    • guardFn: ((u: Update) => u is U)

      predicate to decide whether to run the middleware based on the ctx.update object

        • (u: Update): u is U
        • Parameters

          • u: Update

          Returns u is U

    • Rest ...fns: NonemptyReadonlyArray<Middleware<NarrowedContext<C, U>>>

      middleware to run if the predicate returns true

    Returns MiddlewareFn<C>

  • Type Parameters

    Parameters

    • hashtag: MaybeArray<string>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns MiddlewareFn<C>

  • Generates middleware for handling matching text messages.

    Type Parameters

    Parameters

    • triggers: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "text">

    Returns MiddlewareFn<C>

  • Generates middleware for handling matching inline queries.

    Type Parameters

    Parameters

    • triggers: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "inline_query">

    Returns MiddlewareFn<C>

  • Type Parameters

    Parameters

    • mention: MaybeArray<string>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns MiddlewareFn<C>

  • Generates middleware for handling updates narrowed by update types or filter queries.

    Type Parameters

    • Ctx extends Context<Update, Ctx>

    • Filter extends UpdateType | Guard<Ctx["update"], Ctx["update"]>

    Parameters

    • filters: MaybeArray<Filter>
    • Rest ...fns: NonemptyReadonlyArray<Middleware<FilteredContext<Ctx, Filter>>>

    Returns MiddlewareFn<Ctx>

  • Generates middleware for handling updates narrowed by update types or message subtype.

    Deprecated

    Use filter utils instead. Support for Message subtype in Composer.on will be removed in Telegraf v5.

    Type Parameters

    • Ctx extends Context<Update, Ctx>

    • Filter extends "text" | "animation" | "audio" | "document" | "photo" | "sticker" | "video" | "video_note" | "voice" | "callback_query" | "channel_post" | "chat_member" | "chosen_inline_result" | "edited_channel_post" | "edited_message" | "inline_query" | "message" | "my_chat_member" | "pre_checkout_query" | "poll_answer" | "poll" | "shipping_query" | "chat_join_request" | "channel_chat_created" | "chat_shared" | "connected_website" | "delete_chat_photo" | "group_chat_created" | "invoice" | "left_chat_member" | "message_auto_delete_timer_changed" | "migrate_from_chat_id" | "migrate_to_chat_id" | "new_chat_members" | "new_chat_photo" | "new_chat_title" | "passport_data" | "proximity_alert_triggered" | "forum_topic_created" | "forum_topic_closed" | "forum_topic_reopened" | "pinned_message" | "successful_payment" | "supergroup_chat_created" | "user_shared" | "video_chat_scheduled" | "video_chat_started" | "video_chat_ended" | "video_chat_participants_invited" | "web_app_data" | "has_media_spoiler" | "forward_date" | "contact" | "dice" | "location" | "game" | "venue"

    Parameters

    Returns MiddlewareFn<Ctx>

  • Generates optional middleware.

    Type Parameters

    Parameters

    • predicate: Predicate<C> | AsyncPredicate<C>

      predicate to decide on a context object whether to run the middleware

    • Rest ...fns: NonemptyReadonlyArray<Middleware<C>>

    Returns MiddlewareFn<C>

  • Type Parameters

    Parameters

    • number: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns MiddlewareFn<C>

  • Type Parameters

    Parameters

    • url: Triggers<C>
    • Rest ...fns: MatchedMiddleware<C, "channel_post" | "message">

    Returns MiddlewareFn<C>

Generated using TypeDoc