export enum ProtocolFeatureFlag { /** * Protocol is primarily short-form messaging. * Small chatrooms like IRC, syncplay chat, etc.. */ SHORT_FORM_MESSAGING, /** * Protocol supports images. */ IMAGES, /** * Protocol supports colored messages. */ COLORS, /** * Protocol supports formatted. */ FORMATTING, /** * Protocol supports plain messaging. */ PLAIN, /** * Protocol supports HTML messages. */ HTML, /** * Protocol supports Markdown messages. */ MARKDOWN, /** * Protocol supports custom embeds. */ CUSTOM_EMBEDS, /** * Protocol is entirely one-to-one communication. */ SINGLE_RECIPIENT, /** * Protocol is communication with multiple recipients through one message target. */ SINGLE_TO_MULTI_RECIPIENT, /** * Protocol has optional (end-to-end) encryption. */ OPTIONAL_ENCRYPTION, /** * Protocol is encrypted (use for end-to-end encrypted systems) */ ENCRYPTED, /** * Protocol (natively) supports emoji. */ EMOJI, /** * Protocol supports reactions. */ REACTIONS, /** * Protocol supports mentions. */ MENTION, /** * Protocol supports replying. */ REPLY, /** * Protocol connection manages multiple "servers" */ MULTISERVER, /** * Protocol supports voice chat. */ VOICE, /** * Protocol supports video chat. */ VIDEO, /** * Protocol supports threads. */ THREADS, /** * Protocol supports kicking. */ KICK, /** * Protocol supports banning. */ BAN, /** * Protocol supports muting. */ MUTE, /** * Protocol has a separate method of account verification. */ ACCOUNT_VERIFICATION, EVENT_MESSAGE, EVENT_ROOM_JOIN, EVENT_ROOM_LEAVE, EVENT_ROOM_NAME_CHANGE }