blob: 0f73258c46b2a775fffa148cfe6fa90234acee0a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
|
import { ExtensibleEvent } from "./ExtensibleEvent";
import { IPartialEvent } from "../IPartialEvent";
import { Optional } from "../types";
import { IMessageRendering, M_MESSAGE_EVENT_CONTENT } from "./message_types";
import { EventType } from "../utility/events";
/**
* Represents a message event. Message events are the simplest form of event with
* just text (optionally of different mimetypes, like HTML).
*
* Message events can additionally be an Emote or Notice, though typically those
* are represented as EmoteEvent and NoticeEvent respectively.
*/
export declare class MessageEvent extends ExtensibleEvent<M_MESSAGE_EVENT_CONTENT> {
/**
* The default text for the event.
*/
readonly text: string;
/**
* The default HTML for the event, if provided.
*/
readonly html: Optional<string>;
/**
* All the different renderings of the message. Note that this is the same
* format as an m.message body but may contain elements not found directly
* in the event content: this is because this is interpreted based off the
* other information available in the event.
*/
readonly renderings: IMessageRendering[];
/**
* Creates a new MessageEvent from a pure format. Note that the event is
* *not* parsed here: it will be treated as a literal m.message primary
* typed event.
* @param {IPartialEvent<M_MESSAGE_EVENT_CONTENT>} wireFormat The event.
*/
constructor(wireFormat: IPartialEvent<M_MESSAGE_EVENT_CONTENT>);
/**
* Gets whether this message is considered an "emote". Note that a message
* might be an emote and notice at the same time: while technically possible,
* the event should be interpreted as one or the other.
*/
get isEmote(): boolean;
/**
* Gets whether this message is considered a "notice". Note that a message
* might be an emote and notice at the same time: while technically possible,
* the event should be interpreted as one or the other.
*/
get isNotice(): boolean;
isEquivalentTo(primaryEventType: EventType): boolean;
protected serializeMMessageOnly(): M_MESSAGE_EVENT_CONTENT;
serialize(): IPartialEvent<object>;
/**
* Creates a new MessageEvent from text and HTML.
* @param {string} text The text.
* @param {string} html Optional HTML.
* @returns {MessageEvent} The representative message event.
*/
static from(text: string, html?: string): MessageEvent;
}
|