import { Composer, FilterQuery, Middleware } from 'grammy'; import { Chat } from '@grammyjs/types'; export declare type Filter = T extends [] ? [] : T extends [infer Head, ...infer Tail] ? Head extends F ? Filter : [Head, ...Filter] : []; export declare type StringOrRegexQuery = string | RegExp | string[]; export declare type CommandQuery = 'start' | 'help' | 'settings' | 'admin'; export declare type BotQuery = 'on' | 'command' | 'hears' | 'gameQuery' | 'inlineQuery' | 'callbackQuery'; export declare type ComposerMethodArgs, U extends FilterQuery | StringOrRegexQuery | CommandQuery> = Filter, Middleware>; export declare type ChatTypesEnum = Chat['type'];