Class Message

Message Class

Hierarchy

  • Message

Constructors

Properties

#collection: MessageCollection
id: string

Accessors

  • get animatedAvatarURL(): undefined | string
  • Get the animated avatar URL for this message

    Returns undefined | string

  • get authorId(): undefined | string
  • Id of user or webhook this message was sent by

    Returns undefined | string

  • get avatarURL(): undefined | string
  • Get the avatar URL for this message

    Returns undefined | string

  • get editedAt(): undefined | Date
  • Time at which this message was edited

    Returns undefined | Date

  • get interactions(): undefined | {
        reactions?: null | string[];
        restrict_reactions?: boolean;
    }
  • Interactions

    Returns undefined | {
        reactions?: null | string[];
        restrict_reactions?: boolean;
    }

  • get isSuppressed(): boolean
  • Whether this message has suppressed desktop/push notifications

    Returns boolean

  • get masquerade(): undefined | {
        avatar?: null | string;
        colour?: null | string;
        name?: null | string;
    }
  • Masquerade

    Returns undefined | {
        avatar?: null | string;
        colour?: null | string;
        name?: null | string;
    }

  • get masqueradeAvatarURL(): undefined | string
  • Avatar URL from the masquerade

    Returns undefined | string

  • get mentionIds(): undefined | string[]
  • IDs of users this message mentions

    Returns undefined | string[]

  • get mentioned(): undefined | boolean
  • Whether this message mentions us

    Returns undefined | boolean

  • get reactions(): ReactiveMap<string, ReactiveSet<string>>
  • Reactions

    Returns ReactiveMap<string, ReactiveSet<string>>

  • get replyIds(): undefined | string[]
  • IDs of messages this message replies to

    Returns undefined | string[]

  • get roleColour(): undefined | null | string
  • Get the role colour for this message

    Returns undefined | null | string

  • get username(): undefined | string
  • Get the username for this message

    Returns undefined | string

Methods

  • Clear all reactions from this message

    Returns Promise<undefined>

  • Edit a message

    Parameters

    • data: {
          content?: null | string;
          embeds?: null | {
              colour?: null | string;
              description?: null | string;
              icon_url?: null | string;
              media?: null | string;
              title?: null | string;
              url?: null | string;
          }[];
      }

      Message edit route data

      • Optional content?: null | string

        Description

        New message content

      • Optional embeds?: null | {
            colour?: null | string;
            description?: null | string;
            icon_url?: null | string;
            media?: null | string;
            title?: null | string;
            url?: null | string;
        }[]

        Description

        Embeds to include in the message

    Returns Promise<{
        _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: "Channel" | "Video" | "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[];
        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: "None" | "User" | "Friend" | "Outgoing" | "Incoming" | "Blocked" | "BlockedOther";
            }[];
            relationship: "None" | "User" | "Friend" | "Outgoing" | "Incoming" | "Blocked" | "BlockedOther";
            status?: null | {
                presence?: null | "Invisible" | "Online" | "Idle" | "Focus" | "Busy";
                text?: null | string;
            };
            username: string;
        };
        webhook?: null | {
            avatar?: null | string;
            name: string;
        };
    }>

  • React to a message

    Parameters

    • emoji: string

      Unicode or emoji ID

    Returns Promise<undefined>

  • Reply to Message

    Parameters

    • data: string | Omit<{
          attachments?: null | string[];
          content?: null | string;
          embeds?: null | {
              colour?: null | string;
              description?: null | string;
              icon_url?: null | string;
              media?: null | string;
              title?: null | string;
              url?: null | string;
          }[];
          flags?: null | number;
          interactions?: null | {
              reactions?: null | string[];
              restrict_reactions?: boolean;
          };
          masquerade?: null | {
              avatar?: null | string;
              colour?: null | string;
              name?: null | string;
          };
          nonce?: null | string;
          replies?: null | {
              id: string;
              mention: boolean;
          }[];
      }, "nonce"> & {
          nonce?: string;
      }
    • mention: boolean = true

    Returns undefined | Promise<Message>

  • Un-react from a message

    Parameters

    • emoji: string

      Unicode or emoji ID

    Returns Promise<undefined>

Generated using TypeDoc