Files
blap/packages/module-api/src/models/event.ts
T
2026-04-13 09:18:23 +01:00

49 lines
1.3 KiB
TypeScript

/*
Copyright 2025 New Vector Ltd.
SPDX-License-Identifier: AGPL-3.0-only OR LicenseRef-Element-Commercial
Please see LICENSE files in the repository root for full details.
*/
/**
* Representation of a Matrix event, as specified by the client server specification.
* @alpha Subject to change.
* @see https://spec.matrix.org/v1.14/client-server-api/#room-event-format
*/
export interface MatrixEvent {
/**
* The event ID of this event.
*/
eventId: string;
/**
* The room ID which contains this event.
*/
roomId: string;
/**
* The Matrix ID of the user who sent this event.
*/
sender: string;
/**
* The content of the event.
* If the event was encrypted, this is the decrypted content.
*/
content: Record<string, unknown>;
/**
* Contains optional extra information about the event.
*/
unsigned: Record<string, unknown>;
/**
* The type of the event.
*/
type: string;
/**
* The state key of the event.
* If this key is set, including `""` then the event is a state event.
*/
stateKey?: string;
/**
* Timestamp (in milliseconds since the unix epoch) on originating homeserver when this event was sent.
*/
originServerTs: number;
}