Custom Type Hints

A list of type aliases when no separate class is defined for some types of values. Types for user-facing values (display names, descriptions, message text, etc.) are not otherwise defined.

Most of types listed here are defined under the “NewType” syntax in order to clarify some ambiguous values not covered by simple type checking. This is only useful if you are using static type checking in your development. If you are not using type checking of any kind, you can simply ignore values in this module.


Chat ID from slave channel or middleware, applicable to both chat and chat members.


Command name of additional features, in the format of ^[A-Za-z][A-Za-z0-9_]{0,19}$.


Instance ID of a module.


Message ID from slave channel or middleware.


Module ID, including instance ID after # if available.


Canonical representation of a reaction, usually an emoji.


Reactions to a message.

alias of Mapping[NewType.<locals>.new_type, Collection[ChatMember]]