import { Chat, ChatMember, ChatMemberUpdated, Context, Filter, User } from "./deps.js"; export type MaybePromise = T | Promise; export type Predicate = (ctx: C) => MaybePromise; type UserType = { from: User; }; export type UserContext = C & UserType; type SenderChatType = { senderChat: Chat; }; export type SenderChatContext = C & SenderChatType; type MyChatMemberType = { myChatMember: ChatMemberUpdated & { new_chat_member: { status: T; }; }; }; export type MyChatMemberContext = C & MyChatMemberType; type ChatMemberType = { chatMember: ChatMemberUpdated & { new_chat_member: { status: T; }; }; }; export type ChatMemberContext = C & ChatMemberType; export type UserSharedContext = Filter; export type ChatSharedContext = Filter; export {};