matrix-js-sdk
Version:
Matrix Client-Server SDK for Javascript
38 lines • 1.59 kB
TypeScript
import { ExtensibleEventType, IPartialEvent } from "../@types/extensible_events";
/**
* Represents an Extensible Event in Matrix.
*/
export declare abstract class ExtensibleEvent<TContent extends object = object> {
readonly wireFormat: IPartialEvent<TContent>;
protected constructor(wireFormat: IPartialEvent<TContent>);
/**
* Shortcut to wireFormat.content
*/
get wireContent(): TContent;
/**
* Serializes the event into a format which can be used to send the
* event to the room.
* @returns The serialized event.
*/
abstract serialize(): IPartialEvent<object>;
/**
* Determines if this event is equivalent to the provided event type.
* This is recommended over `instanceof` checks due to issues in the JS
* runtime (and layering of dependencies in some projects).
*
* Implementations should pass this check off to their super classes
* if their own checks fail. Some primary implementations do not extend
* fallback classes given they support the primary type first. Thus,
* those classes may return false if asked about their fallback
* representation.
*
* Note that this only checks primary event types: legacy events, like
* m.room.message, should/will fail this check.
* @param primaryEventType - The (potentially namespaced) event
* type.
* @returns True if this event *could* be represented as the
* given type.
*/
abstract isEquivalentTo(primaryEventType: ExtensibleEventType): boolean;
}
//# sourceMappingURL=ExtensibleEvent.d.ts.map