revbot.js
    Preparing search index...

    Class MessageManager

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    cache: Map<string, MessageStruct> = ...

    Insertion ordered cache of items this manager holds.

    defaultMaxSize: number = -1

    Shared default max size for all managers (can be changed globally).

    Methods

    • Parameters

      • message: MessageResolvable

        The message to unreact. Can be a Message object or a message ID.

      • emoji: string | Emoji

        the emoji to unreact with. Can be a string or an Emoji object.

      • Optionaluser_id: string

        The user ID to remove the reaction for. If not provided, removes the reaction for the current user.

      • remove_all: boolean = false

        Whether to remove all of the specified reaction for the message. Defaults to false.

      Returns Promise<void>

      Promise that resolves when the reaction is removed

    • Parameters

      • resolvable:
            | string
            | {
                _id: string;
                attachments?: | null
                | {
                    _id: string;
                    content_type: string;
                    deleted?: null
                    | boolean;
                    filename: string;
                    message_id?: null | string;
                    metadata:
                        | { type: "File" }
                        | { type: "Text" }
                        | { height: number; type: "Image"; width: number }
                        | { height: number; type: "Video"; width: number }
                        | { type: "Audio" };
                    object_id?: null | string;
                    reported?: null | boolean;
                    server_id?: null | string;
                    size: number;
                    tag: string;
                    user_id?: null | string;
                }[];
                author: string;
                channel: string;
                content?: null
                | string;
                edited?: null | string;
                embeds?:
                    | null
                    | (
                        | {
                            colour?: null
                            | string;
                            description?: null | string;
                            icon_url?: null | string;
                            image?:
                                | null
                                | {
                                    height: number;
                                    size: "Large"
                                    | "Preview";
                                    url: string;
                                    width: number;
                                };
                            original_url?: null
                            | string;
                            site_name?: null | string;
                            special?:
                                | null
                                | { type: "None" }
                                | { type: "GIF" }
                                | { id: string; timestamp?: null | string; type: "YouTube" }
                                | { content_type: "Channel"; id: string; type: "Lightspeed" }
                                | {
                                    content_type: "Video" | "Channel" | "Clip";
                                    id: string;
                                    type: "Twitch";
                                }
                                | { content_type: string; id: string; type: "Spotify" }
                                | { type: "Soundcloud" }
                                | { content_type: "Album" | "Track"; id: string; type: "Bandcamp" }
                                | { album_id: string; track_id?: null | string; type: "AppleMusic" }
                                | { id: string; type: "Streamable" };
                            title?: null | string;
                            type: "Website";
                            url?: null | string;
                            video?: null | { height: number; url: string; width: number };
                        }
                        | {
                            height: number;
                            size: "Large"
                            | "Preview";
                            type: "Image";
                            url: string;
                            width: number;
                        }
                        | { height: number; type: "Video"; url: string; width: number }
                        | {
                            colour?: null | string;
                            description?: null | string;
                            icon_url?: null | string;
                            media?:
                                | null
                                | {
                                    _id: string;
                                    content_type: string;
                                    deleted?: null
                                    | boolean;
                                    filename: string;
                                    message_id?: null | string;
                                    metadata:
                                        | { type: "File" }
                                        | { type: "Text" }
                                        | { height: number; type: "Image"; width: number }
                                        | { height: number; type: "Video"; width: number }
                                        | { type: "Audio" };
                                    object_id?: null | string;
                                    reported?: null | boolean;
                                    server_id?: null | string;
                                    size: number;
                                    tag: string;
                                    user_id?: null | string;
                                };
                            title?: null
                            | string;
                            type: "Text";
                            url?: null | string;
                        }
                        | { type: "None" }
                    )[];
                flags?: number;
                interactions?: {
                    reactions?: null | string[];
                    restrict_reactions?: boolean;
                };
                masquerade?: | null
                | { avatar?: null
                | string; colour?: null | string; name?: null | string };
                member?:
                    | null
                    | {
                        _id: { server: string; user: string };
                        avatar?:
                            | null
                            | {
                                _id: string;
                                content_type: string;
                                deleted?: null
                                | boolean;
                                filename: string;
                                message_id?: null | string;
                                metadata:
                                    | { type: "File" }
                                    | { type: "Text" }
                                    | { height: number; type: "Image"; width: number }
                                    | { height: number; type: "Video"; width: number }
                                    | { type: "Audio" };
                                object_id?: null | string;
                                reported?: null | boolean;
                                server_id?: null | string;
                                size: number;
                                tag: string;
                                user_id?: null | string;
                            };
                        joined_at: string;
                        nickname?: null
                        | string;
                        roles?: string[];
                        timeout?: null | string;
                    };
                mentions?: null
                | string[];
                nonce?: null | string;
                pinned?: null | boolean;
                reactions?: { [key: string]: string[] };
                replies?: null | string[];
                role_mentions?: null | string[];
                system?:
                    | null
                    | { content: string; type: "text" }
                    | { by: string; id: string; type: "user_added" }
                    | { by: string; id: string; type: "user_remove" }
                    | { id: string; type: "user_joined" }
                    | { id: string; type: "user_left" }
                    | { id: string; type: "user_kicked" }
                    | { id: string; type: "user_banned" }
                    | { by: string; name: string; type: "channel_renamed" }
                    | { by: string; type: "channel_description_changed" }
                    | { by: string; type: "channel_icon_changed" }
                    | { from: string; to: string; type: "channel_ownership_changed" }
                    | { by: string; id: string; type: "message_pinned" }
                    | { by: string; id: string; type: "message_unpinned" };
                user?:
                    | null
                    | {
                        _id: string;
                        avatar?: | null
                        | {
                            _id: string;
                            content_type: string;
                            deleted?: null
                            | boolean;
                            filename: string;
                            message_id?: null | string;
                            metadata:
                                | { type: "File" }
                                | { type: "Text" }
                                | { height: number; type: "Image"; width: number }
                                | { height: number; type: "Video"; width: number }
                                | { type: "Audio" };
                            object_id?: null | string;
                            reported?: null | boolean;
                            server_id?: null | string;
                            size: number;
                            tag: string;
                            user_id?: null | string;
                        };
                        badges?: number;
                        bot?: null
                        | { owner: string };
                        discriminator: string;
                        display_name?: null | string;
                        flags?: number;
                        online: boolean;
                        privileged?: boolean;
                        relations?: {
                            _id: string;
                            status:
                                | "User"
                                | "None"
                                | "Friend"
                                | "Outgoing"
                                | "Incoming"
                                | "Blocked"
                                | "BlockedOther";
                        }[];
                        relationship: | "User"
                        | "None"
                        | "Friend"
                        | "Outgoing"
                        | "Incoming"
                        | "Blocked"
                        | "BlockedOther";
                        status?: | null
                        | {
                            presence?: null
                            | "Online"
                            | "Idle"
                            | "Focus"
                            | "Busy"
                            | "Invisible";
                            text?: null | string;
                        };
                        username: string;
                    };
                webhook?: null
                | { avatar?: null | string; name: string };
            }
        • string
        • {
              _id: string;
              attachments?:
                  | null
                  | {
                      _id: string;
                      content_type: string;
                      deleted?: null
                      | boolean;
                      filename: string;
                      message_id?: null | string;
                      metadata:
                          | { type: "File" }
                          | { type: "Text" }
                          | { height: number; type: "Image"; width: number }
                          | { height: number; type: "Video"; width: number }
                          | { type: "Audio" };
                      object_id?: null | string;
                      reported?: null | boolean;
                      server_id?: null | string;
                      size: number;
                      tag: string;
                      user_id?: null | string;
                  }[];
              author: string;
              channel: string;
              content?: null
              | string;
              edited?: null | string;
              embeds?:
                  | null
                  | (
                      | {
                          colour?: null
                          | string;
                          description?: null | string;
                          icon_url?: null | string;
                          image?:
                              | null
                              | {
                                  height: number;
                                  size: "Large"
                                  | "Preview";
                                  url: string;
                                  width: number;
                              };
                          original_url?: null
                          | string;
                          site_name?: null | string;
                          special?:
                              | null
                              | { type: "None" }
                              | { type: "GIF" }
                              | { id: string; timestamp?: null | string; type: "YouTube" }
                              | { content_type: "Channel"; id: string; type: "Lightspeed" }
                              | {
                                  content_type: "Video" | "Channel" | "Clip";
                                  id: string;
                                  type: "Twitch";
                              }
                              | { content_type: string; id: string; type: "Spotify" }
                              | { type: "Soundcloud" }
                              | { content_type: "Album" | "Track"; id: string; type: "Bandcamp" }
                              | { album_id: string; track_id?: null | string; type: "AppleMusic" }
                              | { id: string; type: "Streamable" };
                          title?: null | string;
                          type: "Website";
                          url?: null | string;
                          video?: null | { height: number; url: string; width: number };
                      }
                      | {
                          height: number;
                          size: "Large"
                          | "Preview";
                          type: "Image";
                          url: string;
                          width: number;
                      }
                      | { height: number; type: "Video"; url: string; width: number }
                      | {
                          colour?: null | string;
                          description?: null | string;
                          icon_url?: null | string;
                          media?:
                              | null
                              | {
                                  _id: string;
                                  content_type: string;
                                  deleted?: null
                                  | boolean;
                                  filename: string;
                                  message_id?: null | string;
                                  metadata:
                                      | { type: "File" }
                                      | { type: "Text" }
                                      | { height: number; type: "Image"; width: number }
                                      | { height: number; type: "Video"; width: number }
                                      | { type: "Audio" };
                                  object_id?: null | string;
                                  reported?: null | boolean;
                                  server_id?: null | string;
                                  size: number;
                                  tag: string;
                                  user_id?: null | string;
                              };
                          title?: null
                          | string;
                          type: "Text";
                          url?: null | string;
                      }
                      | { type: "None" }
                  )[];
              flags?: number;
              interactions?: {
                  reactions?: null | string[];
                  restrict_reactions?: boolean;
              };
              masquerade?: | null
              | { avatar?: null
              | string; colour?: null | string; name?: null | string };
              member?:
                  | null
                  | {
                      _id: { server: string; user: string };
                      avatar?:
                          | null
                          | {
                              _id: string;
                              content_type: string;
                              deleted?: null
                              | boolean;
                              filename: string;
                              message_id?: null | string;
                              metadata:
                                  | { type: "File" }
                                  | { type: "Text" }
                                  | { height: number; type: "Image"; width: number }
                                  | { height: number; type: "Video"; width: number }
                                  | { type: "Audio" };
                              object_id?: null | string;
                              reported?: null | boolean;
                              server_id?: null | string;
                              size: number;
                              tag: string;
                              user_id?: null | string;
                          };
                      joined_at: string;
                      nickname?: null
                      | string;
                      roles?: string[];
                      timeout?: null | string;
                  };
              mentions?: null
              | string[];
              nonce?: null | string;
              pinned?: null | boolean;
              reactions?: { [key: string]: string[] };
              replies?: null | string[];
              role_mentions?: null | string[];
              system?:
                  | null
                  | { content: string; type: "text" }
                  | { by: string; id: string; type: "user_added" }
                  | { by: string; id: string; type: "user_remove" }
                  | { id: string; type: "user_joined" }
                  | { id: string; type: "user_left" }
                  | { id: string; type: "user_kicked" }
                  | { id: string; type: "user_banned" }
                  | { by: string; name: string; type: "channel_renamed" }
                  | { by: string; type: "channel_description_changed" }
                  | { by: string; type: "channel_icon_changed" }
                  | { from: string; to: string; type: "channel_ownership_changed" }
                  | { by: string; id: string; type: "message_pinned" }
                  | { by: string; id: string; type: "message_unpinned" };
              user?:
                  | null
                  | {
                      _id: string;
                      avatar?: | null
                      | {
                          _id: string;
                          content_type: string;
                          deleted?: null
                          | boolean;
                          filename: string;
                          message_id?: null | string;
                          metadata:
                              | { type: "File" }
                              | { type: "Text" }
                              | { height: number; type: "Image"; width: number }
                              | { height: number; type: "Video"; width: number }
                              | { type: "Audio" };
                          object_id?: null | string;
                          reported?: null | boolean;
                          server_id?: null | string;
                          size: number;
                          tag: string;
                          user_id?: null | string;
                      };
                      badges?: number;
                      bot?: null
                      | { owner: string };
                      discriminator: string;
                      display_name?: null | string;
                      flags?: number;
                      online: boolean;
                      privileged?: boolean;
                      relations?: {
                          _id: string;
                          status:
                              | "User"
                              | "None"
                              | "Friend"
                              | "Outgoing"
                              | "Incoming"
                              | "Blocked"
                              | "BlockedOther";
                      }[];
                      relationship: | "User"
                      | "None"
                      | "Friend"
                      | "Outgoing"
                      | "Incoming"
                      | "Blocked"
                      | "BlockedOther";
                      status?: | null
                      | {
                          presence?: null
                          | "Online"
                          | "Idle"
                          | "Focus"
                          | "Busy"
                          | "Invisible";
                          text?: null | string;
                      };
                      username: string;
                  };
              webhook?: null
              | { avatar?: null | string; name: string };
          }
          • _id: string

            Unique Id

          • Optionalattachments?:
                | null
                | {
                    _id: string;
                    content_type: string;
                    deleted?: null
                    | boolean;
                    filename: string;
                    message_id?: null | string;
                    metadata:
                        | { type: "File" }
                        | { type: "Text" }
                        | { height: number; type: "Image"; width: number }
                        | { height: number; type: "Video"; width: number }
                        | { type: "Audio" };
                    object_id?: null | string;
                    reported?: null | boolean;
                    server_id?: null | string;
                    size: number;
                    tag: string;
                    user_id?: null | string;
                }[]

            Array of attachments

          • author: string

            Id of the user or webhook that sent this message

          • channel: string

            Id of the channel this message was sent in

          • Optionalcontent?: null | string

            Message content

          • Optionaledited?: null | string

            Time at which this message was last edited

          • Optionalembeds?:
                | null
                | (
                    | {
                        colour?: null
                        | string;
                        description?: null | string;
                        icon_url?: null | string;
                        image?:
                            | null
                            | {
                                height: number;
                                size: "Large"
                                | "Preview";
                                url: string;
                                width: number;
                            };
                        original_url?: null
                        | string;
                        site_name?: null | string;
                        special?:
                            | null
                            | { type: "None" }
                            | { type: "GIF" }
                            | { id: string; timestamp?: null | string; type: "YouTube" }
                            | { content_type: "Channel"; id: string; type: "Lightspeed" }
                            | {
                                content_type: "Video" | "Channel" | "Clip";
                                id: string;
                                type: "Twitch";
                            }
                            | { content_type: string; id: string; type: "Spotify" }
                            | { type: "Soundcloud" }
                            | { content_type: "Album" | "Track"; id: string; type: "Bandcamp" }
                            | { album_id: string; track_id?: null | string; type: "AppleMusic" }
                            | { id: string; type: "Streamable" };
                        title?: null | string;
                        type: "Website";
                        url?: null | string;
                        video?: null | { height: number; url: string; width: number };
                    }
                    | {
                        height: number;
                        size: "Large"
                        | "Preview";
                        type: "Image";
                        url: string;
                        width: number;
                    }
                    | { height: number; type: "Video"; url: string; width: number }
                    | {
                        colour?: null | string;
                        description?: null | string;
                        icon_url?: null | string;
                        media?:
                            | null
                            | {
                                _id: string;
                                content_type: string;
                                deleted?: null
                                | boolean;
                                filename: string;
                                message_id?: null | string;
                                metadata:
                                    | { type: "File" }
                                    | { type: "Text" }
                                    | { height: number; type: "Image"; width: number }
                                    | { height: number; type: "Video"; width: number }
                                    | { type: "Audio" };
                                object_id?: null | string;
                                reported?: null | boolean;
                                server_id?: null | string;
                                size: number;
                                tag: string;
                                user_id?: null | string;
                            };
                        title?: null
                        | string;
                        type: "Text";
                        url?: null | string;
                    }
                    | { type: "None" }
                )[]

            Attached embeds to this message

          • Optionalflags?: number

            Format: uint32

          • Optionalinteractions?: { reactions?: null | string[]; restrict_reactions?: boolean }

            Information about how this message should be interacted with

            • Optionalreactions?: null | string[]

              Reactions which should always appear and be distinct

            • Optionalrestrict_reactions?: boolean

              Whether reactions should be restricted to the given list

              Can only be set to true if reactions list is of at least length 1

          • Optionalmasquerade?: null | { avatar?: null | string; colour?: null | string; name?: null | string }

            Name and / or avatar overrides for this message

          • Optionalmember?:
                | null
                | {
                    _id: { server: string; user: string };
                    avatar?:
                        | null
                        | {
                            _id: string;
                            content_type: string;
                            deleted?: null
                            | boolean;
                            filename: string;
                            message_id?: null | string;
                            metadata:
                                | { type: "File" }
                                | { type: "Text" }
                                | { height: number; type: "Image"; width: number }
                                | { height: number; type: "Video"; width: number }
                                | { type: "Audio" };
                            object_id?: null | string;
                            reported?: null | boolean;
                            server_id?: null | string;
                            size: number;
                            tag: string;
                            user_id?: null | string;
                        };
                    joined_at: string;
                    nickname?: null
                    | string;
                    roles?: string[];
                    timeout?: null | string;
                }

            The member that sent this message

          • Optionalmentions?: null | string[]

            Array of user ids mentioned in this message

          • Optionalnonce?: null | string

            Unique value generated by client sending this message

          • Optionalpinned?: null | boolean

            Whether or not the message in pinned

          • Optionalreactions?: { [key: string]: string[] }

            Hashmap of emoji IDs to array of user IDs

          • Optionalreplies?: null | string[]

            Array of message ids this message is replying to

          • Optionalrole_mentions?: null | string[]

            Array of role ids mentioned in this message

          • Optionalsystem?:
                | null
                | { content: string; type: "text" }
                | { by: string; id: string; type: "user_added" }
                | { by: string; id: string; type: "user_remove" }
                | { id: string; type: "user_joined" }
                | { id: string; type: "user_left" }
                | { id: string; type: "user_kicked" }
                | { id: string; type: "user_banned" }
                | { by: string; name: string; type: "channel_renamed" }
                | { by: string; type: "channel_description_changed" }
                | { by: string; type: "channel_icon_changed" }
                | { from: string; to: string; type: "channel_ownership_changed" }
                | { by: string; id: string; type: "message_pinned" }
                | { by: string; id: string; type: "message_unpinned" }

            System message

          • Optionaluser?:
                | null
                | {
                    _id: string;
                    avatar?: | null
                    | {
                        _id: string;
                        content_type: string;
                        deleted?: null
                        | boolean;
                        filename: string;
                        message_id?: null | string;
                        metadata:
                            | { type: "File" }
                            | { type: "Text" }
                            | { height: number; type: "Image"; width: number }
                            | { height: number; type: "Video"; width: number }
                            | { type: "Audio" };
                        object_id?: null | string;
                        reported?: null | boolean;
                        server_id?: null | string;
                        size: number;
                        tag: string;
                        user_id?: null | string;
                    };
                    badges?: number;
                    bot?: null
                    | { owner: string };
                    discriminator: string;
                    display_name?: null | string;
                    flags?: number;
                    online: boolean;
                    privileged?: boolean;
                    relations?: {
                        _id: string;
                        status:
                            | "User"
                            | "None"
                            | "Friend"
                            | "Outgoing"
                            | "Incoming"
                            | "Blocked"
                            | "BlockedOther";
                    }[];
                    relationship: | "User"
                    | "None"
                    | "Friend"
                    | "Outgoing"
                    | "Incoming"
                    | "Blocked"
                    | "BlockedOther";
                    status?: | null
                    | {
                        presence?: null
                        | "Online"
                        | "Idle"
                        | "Focus"
                        | "Busy"
                        | "Invisible";
                        text?: null | string;
                    };
                    username: string;
                }

            The user that sent this message

          • Optionalwebhook?: null | { avatar?: null | string; name: string }

            The webhook that sent this message

      Returns null | MessageStruct

    • Parameters

      • resolvable:
            | string
            | MessageStruct
            | {
                _id: string;
                attachments?: | null
                | {
                    _id: string;
                    content_type: string;
                    deleted?: null
                    | boolean;
                    filename: string;
                    message_id?: null | string;
                    metadata:
                        | { type: "File" }
                        | { type: "Text" }
                        | { height: number; type: "Image"; width: number }
                        | { height: number; type: "Video"; width: number }
                        | { type: "Audio" };
                    object_id?: null | string;
                    reported?: null | boolean;
                    server_id?: null | string;
                    size: number;
                    tag: string;
                    user_id?: null | string;
                }[];
                author: string;
                channel: string;
                content?: null
                | string;
                edited?: null | string;
                embeds?:
                    | null
                    | (
                        | {
                            colour?: null
                            | string;
                            description?: null | string;
                            icon_url?: null | string;
                            image?:
                                | null
                                | {
                                    height: number;
                                    size: "Large"
                                    | "Preview";
                                    url: string;
                                    width: number;
                                };
                            original_url?: null
                            | string;
                            site_name?: null | string;
                            special?:
                                | null
                                | { type: "None" }
                                | { type: "GIF" }
                                | { id: string; timestamp?: null | string; type: "YouTube" }
                                | { content_type: "Channel"; id: string; type: "Lightspeed" }
                                | {
                                    content_type: "Video" | "Channel" | "Clip";
                                    id: string;
                                    type: "Twitch";
                                }
                                | { content_type: string; id: string; type: "Spotify" }
                                | { type: "Soundcloud" }
                                | { content_type: "Album" | "Track"; id: string; type: "Bandcamp" }
                                | { album_id: string; track_id?: null | string; type: "AppleMusic" }
                                | { id: string; type: "Streamable" };
                            title?: null | string;
                            type: "Website";
                            url?: null | string;
                            video?: null | { height: number; url: string; width: number };
                        }
                        | {
                            height: number;
                            size: "Large"
                            | "Preview";
                            type: "Image";
                            url: string;
                            width: number;
                        }
                        | { height: number; type: "Video"; url: string; width: number }
                        | {
                            colour?: null | string;
                            description?: null | string;
                            icon_url?: null | string;
                            media?:
                                | null
                                | {
                                    _id: string;
                                    content_type: string;
                                    deleted?: null
                                    | boolean;
                                    filename: string;
                                    message_id?: null | string;
                                    metadata:
                                        | { type: "File" }
                                        | { type: "Text" }
                                        | { height: number; type: "Image"; width: number }
                                        | { height: number; type: "Video"; width: number }
                                        | { type: "Audio" };
                                    object_id?: null | string;
                                    reported?: null | boolean;
                                    server_id?: null | string;
                                    size: number;
                                    tag: string;
                                    user_id?: null | string;
                                };
                            title?: null
                            | string;
                            type: "Text";
                            url?: null | string;
                        }
                        | { type: "None" }
                    )[];
                flags?: number;
                interactions?: {
                    reactions?: null | string[];
                    restrict_reactions?: boolean;
                };
                masquerade?: | null
                | { avatar?: null
                | string; colour?: null | string; name?: null | string };
                member?:
                    | null
                    | {
                        _id: { server: string; user: string };
                        avatar?:
                            | null
                            | {
                                _id: string;
                                content_type: string;
                                deleted?: null
                                | boolean;
                                filename: string;
                                message_id?: null | string;
                                metadata:
                                    | { type: "File" }
                                    | { type: "Text" }
                                    | { height: number; type: "Image"; width: number }
                                    | { height: number; type: "Video"; width: number }
                                    | { type: "Audio" };
                                object_id?: null | string;
                                reported?: null | boolean;
                                server_id?: null | string;
                                size: number;
                                tag: string;
                                user_id?: null | string;
                            };
                        joined_at: string;
                        nickname?: null
                        | string;
                        roles?: string[];
                        timeout?: null | string;
                    };
                mentions?: null
                | string[];
                nonce?: null | string;
                pinned?: null | boolean;
                reactions?: { [key: string]: string[] };
                replies?: null | string[];
                role_mentions?: null | string[];
                system?:
                    | null
                    | { content: string; type: "text" }
                    | { by: string; id: string; type: "user_added" }
                    | { by: string; id: string; type: "user_remove" }
                    | { id: string; type: "user_joined" }
                    | { id: string; type: "user_left" }
                    | { id: string; type: "user_kicked" }
                    | { id: string; type: "user_banned" }
                    | { by: string; name: string; type: "channel_renamed" }
                    | { by: string; type: "channel_description_changed" }
                    | { by: string; type: "channel_icon_changed" }
                    | { from: string; to: string; type: "channel_ownership_changed" }
                    | { by: string; id: string; type: "message_pinned" }
                    | { by: string; id: string; type: "message_unpinned" };
                user?:
                    | null
                    | {
                        _id: string;
                        avatar?: | null
                        | {
                            _id: string;
                            content_type: string;
                            deleted?: null
                            | boolean;
                            filename: string;
                            message_id?: null | string;
                            metadata:
                                | { type: "File" }
                                | { type: "Text" }
                                | { height: number; type: "Image"; width: number }
                                | { height: number; type: "Video"; width: number }
                                | { type: "Audio" };
                            object_id?: null | string;
                            reported?: null | boolean;
                            server_id?: null | string;
                            size: number;
                            tag: string;
                            user_id?: null | string;
                        };
                        badges?: number;
                        bot?: null
                        | { owner: string };
                        discriminator: string;
                        display_name?: null | string;
                        flags?: number;
                        online: boolean;
                        privileged?: boolean;
                        relations?: {
                            _id: string;
                            status:
                                | "User"
                                | "None"
                                | "Friend"
                                | "Outgoing"
                                | "Incoming"
                                | "Blocked"
                                | "BlockedOther";
                        }[];
                        relationship: | "User"
                        | "None"
                        | "Friend"
                        | "Outgoing"
                        | "Incoming"
                        | "Blocked"
                        | "BlockedOther";
                        status?: | null
                        | {
                            presence?: null
                            | "Online"
                            | "Idle"
                            | "Focus"
                            | "Busy"
                            | "Invisible";
                            text?: null | string;
                        };
                        username: string;
                    };
                webhook?: null
                | { avatar?: null | string; name: string };
            }
        • string
        • MessageStruct
        • {
              _id: string;
              attachments?:
                  | null
                  | {
                      _id: string;
                      content_type: string;
                      deleted?: null
                      | boolean;
                      filename: string;
                      message_id?: null | string;
                      metadata:
                          | { type: "File" }
                          | { type: "Text" }
                          | { height: number; type: "Image"; width: number }
                          | { height: number; type: "Video"; width: number }
                          | { type: "Audio" };
                      object_id?: null | string;
                      reported?: null | boolean;
                      server_id?: null | string;
                      size: number;
                      tag: string;
                      user_id?: null | string;
                  }[];
              author: string;
              channel: string;
              content?: null
              | string;
              edited?: null | string;
              embeds?:
                  | null
                  | (
                      | {
                          colour?: null
                          | string;
                          description?: null | string;
                          icon_url?: null | string;
                          image?:
                              | null
                              | {
                                  height: number;
                                  size: "Large"
                                  | "Preview";
                                  url: string;
                                  width: number;
                              };
                          original_url?: null
                          | string;
                          site_name?: null | string;
                          special?:
                              | null
                              | { type: "None" }
                              | { type: "GIF" }
                              | { id: string; timestamp?: null | string; type: "YouTube" }
                              | { content_type: "Channel"; id: string; type: "Lightspeed" }
                              | {
                                  content_type: "Video" | "Channel" | "Clip";
                                  id: string;
                                  type: "Twitch";
                              }
                              | { content_type: string; id: string; type: "Spotify" }
                              | { type: "Soundcloud" }
                              | { content_type: "Album" | "Track"; id: string; type: "Bandcamp" }
                              | { album_id: string; track_id?: null | string; type: "AppleMusic" }
                              | { id: string; type: "Streamable" };
                          title?: null | string;
                          type: "Website";
                          url?: null | string;
                          video?: null | { height: number; url: string; width: number };
                      }
                      | {
                          height: number;
                          size: "Large"
                          | "Preview";
                          type: "Image";
                          url: string;
                          width: number;
                      }
                      | { height: number; type: "Video"; url: string; width: number }
                      | {
                          colour?: null | string;
                          description?: null | string;
                          icon_url?: null | string;
                          media?:
                              | null
                              | {
                                  _id: string;
                                  content_type: string;
                                  deleted?: null
                                  | boolean;
                                  filename: string;
                                  message_id?: null | string;
                                  metadata:
                                      | { type: "File" }
                                      | { type: "Text" }
                                      | { height: number; type: "Image"; width: number }
                                      | { height: number; type: "Video"; width: number }
                                      | { type: "Audio" };
                                  object_id?: null | string;
                                  reported?: null | boolean;
                                  server_id?: null | string;
                                  size: number;
                                  tag: string;
                                  user_id?: null | string;
                              };
                          title?: null
                          | string;
                          type: "Text";
                          url?: null | string;
                      }
                      | { type: "None" }
                  )[];
              flags?: number;
              interactions?: {
                  reactions?: null | string[];
                  restrict_reactions?: boolean;
              };
              masquerade?: | null
              | { avatar?: null
              | string; colour?: null | string; name?: null | string };
              member?:
                  | null
                  | {
                      _id: { server: string; user: string };
                      avatar?:
                          | null
                          | {
                              _id: string;
                              content_type: string;
                              deleted?: null
                              | boolean;
                              filename: string;
                              message_id?: null | string;
                              metadata:
                                  | { type: "File" }
                                  | { type: "Text" }
                                  | { height: number; type: "Image"; width: number }
                                  | { height: number; type: "Video"; width: number }
                                  | { type: "Audio" };
                              object_id?: null | string;
                              reported?: null | boolean;
                              server_id?: null | string;
                              size: number;
                              tag: string;
                              user_id?: null | string;
                          };
                      joined_at: string;
                      nickname?: null
                      | string;
                      roles?: string[];
                      timeout?: null | string;
                  };
              mentions?: null
              | string[];
              nonce?: null | string;
              pinned?: null | boolean;
              reactions?: { [key: string]: string[] };
              replies?: null | string[];
              role_mentions?: null | string[];
              system?:
                  | null
                  | { content: string; type: "text" }
                  | { by: string; id: string; type: "user_added" }
                  | { by: string; id: string; type: "user_remove" }
                  | { id: string; type: "user_joined" }
                  | { id: string; type: "user_left" }
                  | { id: string; type: "user_kicked" }
                  | { id: string; type: "user_banned" }
                  | { by: string; name: string; type: "channel_renamed" }
                  | { by: string; type: "channel_description_changed" }
                  | { by: string; type: "channel_icon_changed" }
                  | { from: string; to: string; type: "channel_ownership_changed" }
                  | { by: string; id: string; type: "message_pinned" }
                  | { by: string; id: string; type: "message_unpinned" };
              user?:
                  | null
                  | {
                      _id: string;
                      avatar?: | null
                      | {
                          _id: string;
                          content_type: string;
                          deleted?: null
                          | boolean;
                          filename: string;
                          message_id?: null | string;
                          metadata:
                              | { type: "File" }
                              | { type: "Text" }
                              | { height: number; type: "Image"; width: number }
                              | { height: number; type: "Video"; width: number }
                              | { type: "Audio" };
                          object_id?: null | string;
                          reported?: null | boolean;
                          server_id?: null | string;
                          size: number;
                          tag: string;
                          user_id?: null | string;
                      };
                      badges?: number;
                      bot?: null
                      | { owner: string };
                      discriminator: string;
                      display_name?: null | string;
                      flags?: number;
                      online: boolean;
                      privileged?: boolean;
                      relations?: {
                          _id: string;
                          status:
                              | "User"
                              | "None"
                              | "Friend"
                              | "Outgoing"
                              | "Incoming"
                              | "Blocked"
                              | "BlockedOther";
                      }[];
                      relationship: | "User"
                      | "None"
                      | "Friend"
                      | "Outgoing"
                      | "Incoming"
                      | "Blocked"
                      | "BlockedOther";
                      status?: | null
                      | {
                          presence?: null
                          | "Online"
                          | "Idle"
                          | "Focus"
                          | "Busy"
                          | "Invisible";
                          text?: null | string;
                      };
                      username: string;
                  };
              webhook?: null
              | { avatar?: null | string; name: string };
          }
          • _id: string

            Unique Id

          • Optionalattachments?:
                | null
                | {
                    _id: string;
                    content_type: string;
                    deleted?: null
                    | boolean;
                    filename: string;
                    message_id?: null | string;
                    metadata:
                        | { type: "File" }
                        | { type: "Text" }
                        | { height: number; type: "Image"; width: number }
                        | { height: number; type: "Video"; width: number }
                        | { type: "Audio" };
                    object_id?: null | string;
                    reported?: null | boolean;
                    server_id?: null | string;
                    size: number;
                    tag: string;
                    user_id?: null | string;
                }[]

            Array of attachments

          • author: string

            Id of the user or webhook that sent this message

          • channel: string

            Id of the channel this message was sent in

          • Optionalcontent?: null | string

            Message content

          • Optionaledited?: null | string

            Time at which this message was last edited

          • Optionalembeds?:
                | null
                | (
                    | {
                        colour?: null
                        | string;
                        description?: null | string;
                        icon_url?: null | string;
                        image?:
                            | null
                            | {
                                height: number;
                                size: "Large"
                                | "Preview";
                                url: string;
                                width: number;
                            };
                        original_url?: null
                        | string;
                        site_name?: null | string;
                        special?:
                            | null
                            | { type: "None" }
                            | { type: "GIF" }
                            | { id: string; timestamp?: null | string; type: "YouTube" }
                            | { content_type: "Channel"; id: string; type: "Lightspeed" }
                            | {
                                content_type: "Video" | "Channel" | "Clip";
                                id: string;
                                type: "Twitch";
                            }
                            | { content_type: string; id: string; type: "Spotify" }
                            | { type: "Soundcloud" }
                            | { content_type: "Album" | "Track"; id: string; type: "Bandcamp" }
                            | { album_id: string; track_id?: null | string; type: "AppleMusic" }
                            | { id: string; type: "Streamable" };
                        title?: null | string;
                        type: "Website";
                        url?: null | string;
                        video?: null | { height: number; url: string; width: number };
                    }
                    | {
                        height: number;
                        size: "Large"
                        | "Preview";
                        type: "Image";
                        url: string;
                        width: number;
                    }
                    | { height: number; type: "Video"; url: string; width: number }
                    | {
                        colour?: null | string;
                        description?: null | string;
                        icon_url?: null | string;
                        media?:
                            | null
                            | {
                                _id: string;
                                content_type: string;
                                deleted?: null
                                | boolean;
                                filename: string;
                                message_id?: null | string;
                                metadata:
                                    | { type: "File" }
                                    | { type: "Text" }
                                    | { height: number; type: "Image"; width: number }
                                    | { height: number; type: "Video"; width: number }
                                    | { type: "Audio" };
                                object_id?: null | string;
                                reported?: null | boolean;
                                server_id?: null | string;
                                size: number;
                                tag: string;
                                user_id?: null | string;
                            };
                        title?: null
                        | string;
                        type: "Text";
                        url?: null | string;
                    }
                    | { type: "None" }
                )[]

            Attached embeds to this message

          • Optionalflags?: number

            Format: uint32

          • Optionalinteractions?: { reactions?: null | string[]; restrict_reactions?: boolean }

            Information about how this message should be interacted with

            • Optionalreactions?: null | string[]

              Reactions which should always appear and be distinct

            • Optionalrestrict_reactions?: boolean

              Whether reactions should be restricted to the given list

              Can only be set to true if reactions list is of at least length 1

          • Optionalmasquerade?: null | { avatar?: null | string; colour?: null | string; name?: null | string }

            Name and / or avatar overrides for this message

          • Optionalmember?:
                | null
                | {
                    _id: { server: string; user: string };
                    avatar?:
                        | null
                        | {
                            _id: string;
                            content_type: string;
                            deleted?: null
                            | boolean;
                            filename: string;
                            message_id?: null | string;
                            metadata:
                                | { type: "File" }
                                | { type: "Text" }
                                | { height: number; type: "Image"; width: number }
                                | { height: number; type: "Video"; width: number }
                                | { type: "Audio" };
                            object_id?: null | string;
                            reported?: null | boolean;
                            server_id?: null | string;
                            size: number;
                            tag: string;
                            user_id?: null | string;
                        };
                    joined_at: string;
                    nickname?: null
                    | string;
                    roles?: string[];
                    timeout?: null | string;
                }

            The member that sent this message

          • Optionalmentions?: null | string[]

            Array of user ids mentioned in this message

          • Optionalnonce?: null | string

            Unique value generated by client sending this message

          • Optionalpinned?: null | boolean

            Whether or not the message in pinned

          • Optionalreactions?: { [key: string]: string[] }

            Hashmap of emoji IDs to array of user IDs

          • Optionalreplies?: null | string[]

            Array of message ids this message is replying to

          • Optionalrole_mentions?: null | string[]

            Array of role ids mentioned in this message

          • Optionalsystem?:
                | null
                | { content: string; type: "text" }
                | { by: string; id: string; type: "user_added" }
                | { by: string; id: string; type: "user_remove" }
                | { id: string; type: "user_joined" }
                | { id: string; type: "user_left" }
                | { id: string; type: "user_kicked" }
                | { id: string; type: "user_banned" }
                | { by: string; name: string; type: "channel_renamed" }
                | { by: string; type: "channel_description_changed" }
                | { by: string; type: "channel_icon_changed" }
                | { from: string; to: string; type: "channel_ownership_changed" }
                | { by: string; id: string; type: "message_pinned" }
                | { by: string; id: string; type: "message_unpinned" }

            System message

          • Optionaluser?:
                | null
                | {
                    _id: string;
                    avatar?: | null
                    | {
                        _id: string;
                        content_type: string;
                        deleted?: null
                        | boolean;
                        filename: string;
                        message_id?: null | string;
                        metadata:
                            | { type: "File" }
                            | { type: "Text" }
                            | { height: number; type: "Image"; width: number }
                            | { height: number; type: "Video"; width: number }
                            | { type: "Audio" };
                        object_id?: null | string;
                        reported?: null | boolean;
                        server_id?: null | string;
                        size: number;
                        tag: string;
                        user_id?: null | string;
                    };
                    badges?: number;
                    bot?: null
                    | { owner: string };
                    discriminator: string;
                    display_name?: null | string;
                    flags?: number;
                    online: boolean;
                    privileged?: boolean;
                    relations?: {
                        _id: string;
                        status:
                            | "User"
                            | "None"
                            | "Friend"
                            | "Outgoing"
                            | "Incoming"
                            | "Blocked"
                            | "BlockedOther";
                    }[];
                    relationship: | "User"
                    | "None"
                    | "Friend"
                    | "Outgoing"
                    | "Incoming"
                    | "Blocked"
                    | "BlockedOther";
                    status?: | null
                    | {
                        presence?: null
                        | "Online"
                        | "Idle"
                        | "Focus"
                        | "Busy"
                        | "Invisible";
                        text?: null | string;
                    };
                    username: string;
                }

            The user that sent this message

          • Optionalwebhook?: null | { avatar?: null | string; name: string }

            The webhook that sent this message

      Returns null | MessageStruct

    • Parameters

      • resolvable:
            | string
            | MessageStruct
            | {
                _id: string;
                attachments?: | null
                | {
                    _id: string;
                    content_type: string;
                    deleted?: null
                    | boolean;
                    filename: string;
                    message_id?: null | string;
                    metadata:
                        | { type: "File" }
                        | { type: "Text" }
                        | { height: number; type: "Image"; width: number }
                        | { height: number; type: "Video"; width: number }
                        | { type: "Audio" };
                    object_id?: null | string;
                    reported?: null | boolean;
                    server_id?: null | string;
                    size: number;
                    tag: string;
                    user_id?: null | string;
                }[];
                author: string;
                channel: string;
                content?: null
                | string;
                edited?: null | string;
                embeds?:
                    | null
                    | (
                        | {
                            colour?: null
                            | string;
                            description?: null | string;
                            icon_url?: null | string;
                            image?:
                                | null
                                | {
                                    height: number;
                                    size: "Large"
                                    | "Preview";
                                    url: string;
                                    width: number;
                                };
                            original_url?: null
                            | string;
                            site_name?: null | string;
                            special?:
                                | null
                                | { type: "None" }
                                | { type: "GIF" }
                                | { id: string; timestamp?: null | string; type: "YouTube" }
                                | { content_type: "Channel"; id: string; type: "Lightspeed" }
                                | {
                                    content_type: "Video" | "Channel" | "Clip";
                                    id: string;
                                    type: "Twitch";
                                }
                                | { content_type: string; id: string; type: "Spotify" }
                                | { type: "Soundcloud" }
                                | { content_type: "Album" | "Track"; id: string; type: "Bandcamp" }
                                | { album_id: string; track_id?: null | string; type: "AppleMusic" }
                                | { id: string; type: "Streamable" };
                            title?: null | string;
                            type: "Website";
                            url?: null | string;
                            video?: null | { height: number; url: string; width: number };
                        }
                        | {
                            height: number;
                            size: "Large"
                            | "Preview";
                            type: "Image";
                            url: string;
                            width: number;
                        }
                        | { height: number; type: "Video"; url: string; width: number }
                        | {
                            colour?: null | string;
                            description?: null | string;
                            icon_url?: null | string;
                            media?:
                                | null
                                | {
                                    _id: string;
                                    content_type: string;
                                    deleted?: null
                                    | boolean;
                                    filename: string;
                                    message_id?: null | string;
                                    metadata:
                                        | { type: "File" }
                                        | { type: "Text" }
                                        | { height: number; type: "Image"; width: number }
                                        | { height: number; type: "Video"; width: number }
                                        | { type: "Audio" };
                                    object_id?: null | string;
                                    reported?: null | boolean;
                                    server_id?: null | string;
                                    size: number;
                                    tag: string;
                                    user_id?: null | string;
                                };
                            title?: null
                            | string;
                            type: "Text";
                            url?: null | string;
                        }
                        | { type: "None" }
                    )[];
                flags?: number;
                interactions?: {
                    reactions?: null | string[];
                    restrict_reactions?: boolean;
                };
                masquerade?: | null
                | { avatar?: null
                | string; colour?: null | string; name?: null | string };
                member?:
                    | null
                    | {
                        _id: { server: string; user: string };
                        avatar?:
                            | null
                            | {
                                _id: string;
                                content_type: string;
                                deleted?: null
                                | boolean;
                                filename: string;
                                message_id?: null | string;
                                metadata:
                                    | { type: "File" }
                                    | { type: "Text" }
                                    | { height: number; type: "Image"; width: number }
                                    | { height: number; type: "Video"; width: number }
                                    | { type: "Audio" };
                                object_id?: null | string;
                                reported?: null | boolean;
                                server_id?: null | string;
                                size: number;
                                tag: string;
                                user_id?: null | string;
                            };
                        joined_at: string;
                        nickname?: null
                        | string;
                        roles?: string[];
                        timeout?: null | string;
                    };
                mentions?: null
                | string[];
                nonce?: null | string;
                pinned?: null | boolean;
                reactions?: { [key: string]: string[] };
                replies?: null | string[];
                role_mentions?: null | string[];
                system?:
                    | null
                    | { content: string; type: "text" }
                    | { by: string; id: string; type: "user_added" }
                    | { by: string; id: string; type: "user_remove" }
                    | { id: string; type: "user_joined" }
                    | { id: string; type: "user_left" }
                    | { id: string; type: "user_kicked" }
                    | { id: string; type: "user_banned" }
                    | { by: string; name: string; type: "channel_renamed" }
                    | { by: string; type: "channel_description_changed" }
                    | { by: string; type: "channel_icon_changed" }
                    | { from: string; to: string; type: "channel_ownership_changed" }
                    | { by: string; id: string; type: "message_pinned" }
                    | { by: string; id: string; type: "message_unpinned" };
                user?:
                    | null
                    | {
                        _id: string;
                        avatar?: | null
                        | {
                            _id: string;
                            content_type: string;
                            deleted?: null
                            | boolean;
                            filename: string;
                            message_id?: null | string;
                            metadata:
                                | { type: "File" }
                                | { type: "Text" }
                                | { height: number; type: "Image"; width: number }
                                | { height: number; type: "Video"; width: number }
                                | { type: "Audio" };
                            object_id?: null | string;
                            reported?: null | boolean;
                            server_id?: null | string;
                            size: number;
                            tag: string;
                            user_id?: null | string;
                        };
                        badges?: number;
                        bot?: null
                        | { owner: string };
                        discriminator: string;
                        display_name?: null | string;
                        flags?: number;
                        online: boolean;
                        privileged?: boolean;
                        relations?: {
                            _id: string;
                            status:
                                | "User"
                                | "None"
                                | "Friend"
                                | "Outgoing"
                                | "Incoming"
                                | "Blocked"
                                | "BlockedOther";
                        }[];
                        relationship: | "User"
                        | "None"
                        | "Friend"
                        | "Outgoing"
                        | "Incoming"
                        | "Blocked"
                        | "BlockedOther";
                        status?: | null
                        | {
                            presence?: null
                            | "Online"
                            | "Idle"
                            | "Focus"
                            | "Busy"
                            | "Invisible";
                            text?: null | string;
                        };
                        username: string;
                    };
                webhook?: null
                | { avatar?: null | string; name: string };
            }
        • string
        • MessageStruct
        • {
              _id: string;
              attachments?:
                  | null
                  | {
                      _id: string;
                      content_type: string;
                      deleted?: null
                      | boolean;
                      filename: string;
                      message_id?: null | string;
                      metadata:
                          | { type: "File" }
                          | { type: "Text" }
                          | { height: number; type: "Image"; width: number }
                          | { height: number; type: "Video"; width: number }
                          | { type: "Audio" };
                      object_id?: null | string;
                      reported?: null | boolean;
                      server_id?: null | string;
                      size: number;
                      tag: string;
                      user_id?: null | string;
                  }[];
              author: string;
              channel: string;
              content?: null
              | string;
              edited?: null | string;
              embeds?:
                  | null
                  | (
                      | {
                          colour?: null
                          | string;
                          description?: null | string;
                          icon_url?: null | string;
                          image?:
                              | null
                              | {
                                  height: number;
                                  size: "Large"
                                  | "Preview";
                                  url: string;
                                  width: number;
                              };
                          original_url?: null
                          | string;
                          site_name?: null | string;
                          special?:
                              | null
                              | { type: "None" }
                              | { type: "GIF" }
                              | { id: string; timestamp?: null | string; type: "YouTube" }
                              | { content_type: "Channel"; id: string; type: "Lightspeed" }
                              | {
                                  content_type: "Video" | "Channel" | "Clip";
                                  id: string;
                                  type: "Twitch";
                              }
                              | { content_type: string; id: string; type: "Spotify" }
                              | { type: "Soundcloud" }
                              | { content_type: "Album" | "Track"; id: string; type: "Bandcamp" }
                              | { album_id: string; track_id?: null | string; type: "AppleMusic" }
                              | { id: string; type: "Streamable" };
                          title?: null | string;
                          type: "Website";
                          url?: null | string;
                          video?: null | { height: number; url: string; width: number };
                      }
                      | {
                          height: number;
                          size: "Large"
                          | "Preview";
                          type: "Image";
                          url: string;
                          width: number;
                      }
                      | { height: number; type: "Video"; url: string; width: number }
                      | {
                          colour?: null | string;
                          description?: null | string;
                          icon_url?: null | string;
                          media?:
                              | null
                              | {
                                  _id: string;
                                  content_type: string;
                                  deleted?: null
                                  | boolean;
                                  filename: string;
                                  message_id?: null | string;
                                  metadata:
                                      | { type: "File" }
                                      | { type: "Text" }
                                      | { height: number; type: "Image"; width: number }
                                      | { height: number; type: "Video"; width: number }
                                      | { type: "Audio" };
                                  object_id?: null | string;
                                  reported?: null | boolean;
                                  server_id?: null | string;
                                  size: number;
                                  tag: string;
                                  user_id?: null | string;
                              };
                          title?: null
                          | string;
                          type: "Text";
                          url?: null | string;
                      }
                      | { type: "None" }
                  )[];
              flags?: number;
              interactions?: {
                  reactions?: null | string[];
                  restrict_reactions?: boolean;
              };
              masquerade?: | null
              | { avatar?: null
              | string; colour?: null | string; name?: null | string };
              member?:
                  | null
                  | {
                      _id: { server: string; user: string };
                      avatar?:
                          | null
                          | {
                              _id: string;
                              content_type: string;
                              deleted?: null
                              | boolean;
                              filename: string;
                              message_id?: null | string;
                              metadata:
                                  | { type: "File" }
                                  | { type: "Text" }
                                  | { height: number; type: "Image"; width: number }
                                  | { height: number; type: "Video"; width: number }
                                  | { type: "Audio" };
                              object_id?: null | string;
                              reported?: null | boolean;
                              server_id?: null | string;
                              size: number;
                              tag: string;
                              user_id?: null | string;
                          };
                      joined_at: string;
                      nickname?: null
                      | string;
                      roles?: string[];
                      timeout?: null | string;
                  };
              mentions?: null
              | string[];
              nonce?: null | string;
              pinned?: null | boolean;
              reactions?: { [key: string]: string[] };
              replies?: null | string[];
              role_mentions?: null | string[];
              system?:
                  | null
                  | { content: string; type: "text" }
                  | { by: string; id: string; type: "user_added" }
                  | { by: string; id: string; type: "user_remove" }
                  | { id: string; type: "user_joined" }
                  | { id: string; type: "user_left" }
                  | { id: string; type: "user_kicked" }
                  | { id: string; type: "user_banned" }
                  | { by: string; name: string; type: "channel_renamed" }
                  | { by: string; type: "channel_description_changed" }
                  | { by: string; type: "channel_icon_changed" }
                  | { from: string; to: string; type: "channel_ownership_changed" }
                  | { by: string; id: string; type: "message_pinned" }
                  | { by: string; id: string; type: "message_unpinned" };
              user?:
                  | null
                  | {
                      _id: string;
                      avatar?: | null
                      | {
                          _id: string;
                          content_type: string;
                          deleted?: null
                          | boolean;
                          filename: string;
                          message_id?: null | string;
                          metadata:
                              | { type: "File" }
                              | { type: "Text" }
                              | { height: number; type: "Image"; width: number }
                              | { height: number; type: "Video"; width: number }
                              | { type: "Audio" };
                          object_id?: null | string;
                          reported?: null | boolean;
                          server_id?: null | string;
                          size: number;
                          tag: string;
                          user_id?: null | string;
                      };
                      badges?: number;
                      bot?: null
                      | { owner: string };
                      discriminator: string;
                      display_name?: null | string;
                      flags?: number;
                      online: boolean;
                      privileged?: boolean;
                      relations?: {
                          _id: string;
                          status:
                              | "User"
                              | "None"
                              | "Friend"
                              | "Outgoing"
                              | "Incoming"
                              | "Blocked"
                              | "BlockedOther";
                      }[];
                      relationship: | "User"
                      | "None"
                      | "Friend"
                      | "Outgoing"
                      | "Incoming"
                      | "Blocked"
                      | "BlockedOther";
                      status?: | null
                      | {
                          presence?: null
                          | "Online"
                          | "Idle"
                          | "Focus"
                          | "Busy"
                          | "Invisible";
                          text?: null | string;
                      };
                      username: string;
                  };
              webhook?: null
              | { avatar?: null | string; name: string };
          }
          • _id: string

            Unique Id

          • Optionalattachments?:
                | null
                | {
                    _id: string;
                    content_type: string;
                    deleted?: null
                    | boolean;
                    filename: string;
                    message_id?: null | string;
                    metadata:
                        | { type: "File" }
                        | { type: "Text" }
                        | { height: number; type: "Image"; width: number }
                        | { height: number; type: "Video"; width: number }
                        | { type: "Audio" };
                    object_id?: null | string;
                    reported?: null | boolean;
                    server_id?: null | string;
                    size: number;
                    tag: string;
                    user_id?: null | string;
                }[]

            Array of attachments

          • author: string

            Id of the user or webhook that sent this message

          • channel: string

            Id of the channel this message was sent in

          • Optionalcontent?: null | string

            Message content

          • Optionaledited?: null | string

            Time at which this message was last edited

          • Optionalembeds?:
                | null
                | (
                    | {
                        colour?: null
                        | string;
                        description?: null | string;
                        icon_url?: null | string;
                        image?:
                            | null
                            | {
                                height: number;
                                size: "Large"
                                | "Preview";
                                url: string;
                                width: number;
                            };
                        original_url?: null
                        | string;
                        site_name?: null | string;
                        special?:
                            | null
                            | { type: "None" }
                            | { type: "GIF" }
                            | { id: string; timestamp?: null | string; type: "YouTube" }
                            | { content_type: "Channel"; id: string; type: "Lightspeed" }
                            | {
                                content_type: "Video" | "Channel" | "Clip";
                                id: string;
                                type: "Twitch";
                            }
                            | { content_type: string; id: string; type: "Spotify" }
                            | { type: "Soundcloud" }
                            | { content_type: "Album" | "Track"; id: string; type: "Bandcamp" }
                            | { album_id: string; track_id?: null | string; type: "AppleMusic" }
                            | { id: string; type: "Streamable" };
                        title?: null | string;
                        type: "Website";
                        url?: null | string;
                        video?: null | { height: number; url: string; width: number };
                    }
                    | {
                        height: number;
                        size: "Large"
                        | "Preview";
                        type: "Image";
                        url: string;
                        width: number;
                    }
                    | { height: number; type: "Video"; url: string; width: number }
                    | {
                        colour?: null | string;
                        description?: null | string;
                        icon_url?: null | string;
                        media?:
                            | null
                            | {
                                _id: string;
                                content_type: string;
                                deleted?: null
                                | boolean;
                                filename: string;
                                message_id?: null | string;
                                metadata:
                                    | { type: "File" }
                                    | { type: "Text" }
                                    | { height: number; type: "Image"; width: number }
                                    | { height: number; type: "Video"; width: number }
                                    | { type: "Audio" };
                                object_id?: null | string;
                                reported?: null | boolean;
                                server_id?: null | string;
                                size: number;
                                tag: string;
                                user_id?: null | string;
                            };
                        title?: null
                        | string;
                        type: "Text";
                        url?: null | string;
                    }
                    | { type: "None" }
                )[]

            Attached embeds to this message

          • Optionalflags?: number

            Format: uint32

          • Optionalinteractions?: { reactions?: null | string[]; restrict_reactions?: boolean }

            Information about how this message should be interacted with

            • Optionalreactions?: null | string[]

              Reactions which should always appear and be distinct

            • Optionalrestrict_reactions?: boolean

              Whether reactions should be restricted to the given list

              Can only be set to true if reactions list is of at least length 1

          • Optionalmasquerade?: null | { avatar?: null | string; colour?: null | string; name?: null | string }

            Name and / or avatar overrides for this message

          • Optionalmember?:
                | null
                | {
                    _id: { server: string; user: string };
                    avatar?:
                        | null
                        | {
                            _id: string;
                            content_type: string;
                            deleted?: null
                            | boolean;
                            filename: string;
                            message_id?: null | string;
                            metadata:
                                | { type: "File" }
                                | { type: "Text" }
                                | { height: number; type: "Image"; width: number }
                                | { height: number; type: "Video"; width: number }
                                | { type: "Audio" };
                            object_id?: null | string;
                            reported?: null | boolean;
                            server_id?: null | string;
                            size: number;
                            tag: string;
                            user_id?: null | string;
                        };
                    joined_at: string;
                    nickname?: null
                    | string;
                    roles?: string[];
                    timeout?: null | string;
                }

            The member that sent this message

          • Optionalmentions?: null | string[]

            Array of user ids mentioned in this message

          • Optionalnonce?: null | string

            Unique value generated by client sending this message

          • Optionalpinned?: null | boolean

            Whether or not the message in pinned

          • Optionalreactions?: { [key: string]: string[] }

            Hashmap of emoji IDs to array of user IDs

          • Optionalreplies?: null | string[]

            Array of message ids this message is replying to

          • Optionalrole_mentions?: null | string[]

            Array of role ids mentioned in this message

          • Optionalsystem?:
                | null
                | { content: string; type: "text" }
                | { by: string; id: string; type: "user_added" }
                | { by: string; id: string; type: "user_remove" }
                | { id: string; type: "user_joined" }
                | { id: string; type: "user_left" }
                | { id: string; type: "user_kicked" }
                | { id: string; type: "user_banned" }
                | { by: string; name: string; type: "channel_renamed" }
                | { by: string; type: "channel_description_changed" }
                | { by: string; type: "channel_icon_changed" }
                | { from: string; to: string; type: "channel_ownership_changed" }
                | { by: string; id: string; type: "message_pinned" }
                | { by: string; id: string; type: "message_unpinned" }

            System message

          • Optionaluser?:
                | null
                | {
                    _id: string;
                    avatar?: | null
                    | {
                        _id: string;
                        content_type: string;
                        deleted?: null
                        | boolean;
                        filename: string;
                        message_id?: null | string;
                        metadata:
                            | { type: "File" }
                            | { type: "Text" }
                            | { height: number; type: "Image"; width: number }
                            | { height: number; type: "Video"; width: number }
                            | { type: "Audio" };
                        object_id?: null | string;
                        reported?: null | boolean;
                        server_id?: null | string;
                        size: number;
                        tag: string;
                        user_id?: null | string;
                    };
                    badges?: number;
                    bot?: null
                    | { owner: string };
                    discriminator: string;
                    display_name?: null | string;
                    flags?: number;
                    online: boolean;
                    privileged?: boolean;
                    relations?: {
                        _id: string;
                        status:
                            | "User"
                            | "None"
                            | "Friend"
                            | "Outgoing"
                            | "Incoming"
                            | "Blocked"
                            | "BlockedOther";
                    }[];
                    relationship: | "User"
                    | "None"
                    | "Friend"
                    | "Outgoing"
                    | "Incoming"
                    | "Blocked"
                    | "BlockedOther";
                    status?: | null
                    | {
                        presence?: null
                        | "Online"
                        | "Idle"
                        | "Focus"
                        | "Busy"
                        | "Invisible";
                        text?: null | string;
                    };
                    username: string;
                }

            The user that sent this message

          • Optionalwebhook?: null | { avatar?: null | string; name: string }

            The webhook that sent this message

      Returns null | string