import { type CallbackQuery, type ChatMemberUpdated, type Context, type Filter, type InlineQuery } from "@yaebal/core"; /** * filters over non-message updates: callback queries, inline queries, edits, * chat-member transitions. for plain routing `on("callback_query")` is enough — * these earn their keep inside `and`/`or` combinations and when they stage data. */ /** callback query whose data equals `trigger`; narrows `ctx.callbackQuery`. */ export declare function callbackData(trigger: string): Filter; /** callback query whose data matches `re`; stages `ctx.match`. */ export declare function callbackData(trigger: RegExp): Filter; /** any inline query; stages it as `ctx.inlineQuery`. */ export declare function inlineQuery(): Filter; /** inline query whose text equals `trigger`. */ export declare function inlineQuery(trigger: string): Filter; /** inline query whose text matches `re`; also stages `ctx.match`. */ export declare function inlineQuery(trigger: RegExp): Filter; /** update is an edit (message, channel post or business message). */ export declare const edited: Filter; /** chat-member statuses (the generated schema keeps `status` a plain string). */ export type ChatMemberStatus = "creator" | "administrator" | "member" | "restricted" | "left" | "kicked"; export interface ChatMemberChange { /** accepted previous status(es) — any, when omitted. */ from?: ChatMemberStatus | readonly ChatMemberStatus[]; /** accepted new status(es) — any, when omitted. */ to?: ChatMemberStatus | readonly ChatMemberStatus[]; } /** * a `chat_member`/`my_chat_member` transition, optionally constrained by the * old and/or new status; stages the payload as `ctx.chatMember`. * * bot.filter(chatMemberStatus({ to: ["member", "administrator"] }), welcome); */ export declare function chatMemberStatus(change?: ChatMemberChange): Filter; //# sourceMappingURL=update.d.ts.map