@jeongsu816/matrix-bot-sdk 0.0.0-stage → 0.8.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +50 -2
- package/lib/AdminApis.d.ts +52 -0
- package/lib/AdminApis.js +29 -0
- package/lib/AdminApis.js.map +1 -0
- package/lib/DMs.d.ts +48 -0
- package/lib/DMs.js +160 -0
- package/lib/DMs.js.map +1 -0
- package/lib/IFilter.d.ts +7 -0
- package/lib/IFilter.js +3 -0
- package/lib/IFilter.js.map +1 -0
- package/lib/MatrixAuth.d.ts +45 -0
- package/lib/MatrixAuth.js +125 -0
- package/lib/MatrixAuth.js.map +1 -0
- package/lib/MatrixClient.d.ts +834 -0
- package/lib/MatrixClient.js +2268 -0
- package/lib/MatrixClient.js.map +1 -0
- package/lib/PantalaimonClient.d.ts +42 -0
- package/lib/PantalaimonClient.js +44 -0
- package/lib/PantalaimonClient.js.map +1 -0
- package/lib/SynapseAdminApis.d.ts +350 -0
- package/lib/SynapseAdminApis.js +244 -0
- package/lib/SynapseAdminApis.js.map +1 -0
- package/lib/SynchronousMatrixClient.d.ts +82 -0
- package/lib/SynchronousMatrixClient.js +130 -0
- package/lib/SynchronousMatrixClient.js.map +1 -0
- package/lib/UnstableApis.d.ts +43 -0
- package/lib/UnstableApis.js +74 -0
- package/lib/UnstableApis.js.map +1 -0
- package/lib/appservice/Appservice.d.ts +328 -0
- package/lib/appservice/Appservice.js +803 -0
- package/lib/appservice/Appservice.js.map +1 -0
- package/lib/appservice/Intent.d.ts +113 -0
- package/lib/appservice/Intent.js +363 -0
- package/lib/appservice/Intent.js.map +1 -0
- package/lib/appservice/MatrixBridge.d.ts +85 -0
- package/lib/appservice/MatrixBridge.js +111 -0
- package/lib/appservice/MatrixBridge.js.map +1 -0
- package/lib/appservice/UnstableAppserviceApis.d.ts +41 -0
- package/lib/appservice/UnstableAppserviceApis.js +62 -0
- package/lib/appservice/UnstableAppserviceApis.js.map +1 -0
- package/lib/appservice/http_responses.d.ts +77 -0
- package/lib/appservice/http_responses.js +3 -0
- package/lib/appservice/http_responses.js.map +1 -0
- package/lib/b64.d.ts +42 -0
- package/lib/b64.js +68 -0
- package/lib/b64.js.map +1 -0
- package/lib/e2ee/CrossSigningBootstrap.d.ts +73 -0
- package/lib/e2ee/CrossSigningBootstrap.js +86 -0
- package/lib/e2ee/CrossSigningBootstrap.js.map +1 -0
- package/lib/e2ee/CryptoClient.d.ts +163 -0
- package/lib/e2ee/CryptoClient.js +382 -0
- package/lib/e2ee/CryptoClient.js.map +1 -0
- package/lib/e2ee/ICryptoRoomInformation.d.ts +8 -0
- package/lib/e2ee/ICryptoRoomInformation.js +3 -0
- package/lib/e2ee/ICryptoRoomInformation.js.map +1 -0
- package/lib/e2ee/RoomTracker.d.ts +41 -0
- package/lib/e2ee/RoomTracker.js +96 -0
- package/lib/e2ee/RoomTracker.js.map +1 -0
- package/lib/e2ee/RustEngine.d.ts +149 -0
- package/lib/e2ee/RustEngine.js +467 -0
- package/lib/e2ee/RustEngine.js.map +1 -0
- package/lib/e2ee/decorators.d.ts +10 -0
- package/lib/e2ee/decorators.js +37 -0
- package/lib/e2ee/decorators.js.map +1 -0
- package/lib/helpers/MatrixEntity.d.ts +37 -0
- package/lib/helpers/MatrixEntity.js +67 -0
- package/lib/helpers/MatrixEntity.js.map +1 -0
- package/lib/helpers/MatrixGlob.d.ts +22 -0
- package/lib/helpers/MatrixGlob.js +35 -0
- package/lib/helpers/MatrixGlob.js.map +1 -0
- package/lib/helpers/MentionPill.d.ts +40 -0
- package/lib/helpers/MentionPill.js +91 -0
- package/lib/helpers/MentionPill.js.map +1 -0
- package/lib/helpers/Permalinks.d.ts +58 -0
- package/lib/helpers/Permalinks.js +73 -0
- package/lib/helpers/Permalinks.js.map +1 -0
- package/lib/helpers/ProfileCache.d.ts +48 -0
- package/lib/helpers/ProfileCache.js +114 -0
- package/lib/helpers/ProfileCache.js.map +1 -0
- package/lib/helpers/RichReply.d.ts +17 -0
- package/lib/helpers/RichReply.js +47 -0
- package/lib/helpers/RichReply.js.map +1 -0
- package/lib/helpers/UnpaddedBase64.d.ts +31 -0
- package/lib/helpers/UnpaddedBase64.js +45 -0
- package/lib/helpers/UnpaddedBase64.js.map +1 -0
- package/lib/http.d.ts +17 -0
- package/lib/http.js +147 -0
- package/lib/http.js.map +1 -0
- package/lib/identity/IdentityClient.d.ts +93 -0
- package/lib/identity/IdentityClient.js +248 -0
- package/lib/identity/IdentityClient.js.map +1 -0
- package/lib/index.d.ts +91 -0
- package/lib/index.js +125 -0
- package/lib/index.js.map +1 -0
- package/lib/logging/ConsoleLogger.d.ts +12 -0
- package/lib/logging/ConsoleLogger.js +28 -0
- package/lib/logging/ConsoleLogger.js.map +1 -0
- package/lib/logging/ILogger.d.ts +36 -0
- package/lib/logging/ILogger.js +3 -0
- package/lib/logging/ILogger.js.map +1 -0
- package/lib/logging/LogService.d.ts +100 -0
- package/lib/logging/LogService.js +169 -0
- package/lib/logging/LogService.js.map +1 -0
- package/lib/logging/RichConsoleLogger.d.ts +20 -0
- package/lib/logging/RichConsoleLogger.js +41 -0
- package/lib/logging/RichConsoleLogger.js.map +1 -0
- package/lib/metrics/IMetricListener.d.ts +52 -0
- package/lib/metrics/IMetricListener.js +3 -0
- package/lib/metrics/IMetricListener.js.map +1 -0
- package/lib/metrics/Metrics.d.ts +66 -0
- package/lib/metrics/Metrics.js +128 -0
- package/lib/metrics/Metrics.js.map +1 -0
- package/lib/metrics/contexts.d.ts +51 -0
- package/lib/metrics/contexts.js +3 -0
- package/lib/metrics/contexts.js.map +1 -0
- package/lib/metrics/decorators.d.ts +15 -0
- package/lib/metrics/decorators.js +92 -0
- package/lib/metrics/decorators.js.map +1 -0
- package/lib/metrics/names.d.ts +45 -0
- package/lib/metrics/names.js +49 -0
- package/lib/metrics/names.js.map +1 -0
- package/lib/mixins/AutojoinRoomsMixin.d.ts +10 -0
- package/lib/mixins/AutojoinRoomsMixin.js +25 -0
- package/lib/mixins/AutojoinRoomsMixin.js.map +1 -0
- package/lib/mixins/AutojoinUpgradedRoomsMixin.d.ts +10 -0
- package/lib/mixins/AutojoinUpgradedRoomsMixin.js +40 -0
- package/lib/mixins/AutojoinUpgradedRoomsMixin.js.map +1 -0
- package/lib/models/Account.d.ts +8 -0
- package/lib/models/Account.js +3 -0
- package/lib/models/Account.js.map +1 -0
- package/lib/models/CreateRoom.d.ts +125 -0
- package/lib/models/CreateRoom.js +3 -0
- package/lib/models/CreateRoom.js.map +1 -0
- package/lib/models/Crypto.d.ts +167 -0
- package/lib/models/Crypto.js +31 -0
- package/lib/models/Crypto.js.map +1 -0
- package/lib/models/EventContext.d.ts +19 -0
- package/lib/models/EventContext.js +3 -0
- package/lib/models/EventContext.js.map +1 -0
- package/lib/models/IdentityServerModels.d.ts +20 -0
- package/lib/models/IdentityServerModels.js +3 -0
- package/lib/models/IdentityServerModels.js.map +1 -0
- package/lib/models/MSC2176.d.ts +42 -0
- package/lib/models/MSC2176.js +3 -0
- package/lib/models/MSC2176.js.map +1 -0
- package/lib/models/MatrixError.d.ts +38 -0
- package/lib/models/MatrixError.js +30 -0
- package/lib/models/MatrixError.js.map +1 -0
- package/lib/models/MatrixProfile.d.ts +43 -0
- package/lib/models/MatrixProfile.js +43 -0
- package/lib/models/MatrixProfile.js.map +1 -0
- package/lib/models/OpenIDConnect.d.ts +10 -0
- package/lib/models/OpenIDConnect.js +3 -0
- package/lib/models/OpenIDConnect.js.map +1 -0
- package/lib/models/Policies.d.ts +25 -0
- package/lib/models/Policies.js +3 -0
- package/lib/models/Policies.js.map +1 -0
- package/lib/models/PowerLevelAction.d.ts +27 -0
- package/lib/models/PowerLevelAction.js +32 -0
- package/lib/models/PowerLevelAction.js.map +1 -0
- package/lib/models/PowerLevelBounds.d.ts +15 -0
- package/lib/models/PowerLevelBounds.js +3 -0
- package/lib/models/PowerLevelBounds.js.map +1 -0
- package/lib/models/Presence.d.ts +25 -0
- package/lib/models/Presence.js +38 -0
- package/lib/models/Presence.js.map +1 -0
- package/lib/models/ServerVersions.d.ts +8 -0
- package/lib/models/ServerVersions.js +3 -0
- package/lib/models/ServerVersions.js.map +1 -0
- package/lib/models/Spaces.d.ts +116 -0
- package/lib/models/Spaces.js +91 -0
- package/lib/models/Spaces.js.map +1 -0
- package/lib/models/Threepid.d.ts +8 -0
- package/lib/models/Threepid.js +3 -0
- package/lib/models/Threepid.js.map +1 -0
- package/lib/models/events/AliasesEvent.d.ts +27 -0
- package/lib/models/events/AliasesEvent.js +27 -0
- package/lib/models/events/AliasesEvent.js.map +1 -0
- package/lib/models/events/CanonicalAliasEvent.d.ts +23 -0
- package/lib/models/events/CanonicalAliasEvent.js +21 -0
- package/lib/models/events/CanonicalAliasEvent.js.map +1 -0
- package/lib/models/events/CreateEvent.d.ts +63 -0
- package/lib/models/events/CreateEvent.js +33 -0
- package/lib/models/events/CreateEvent.js.map +1 -0
- package/lib/models/events/EncryptedRoomEvent.d.ts +42 -0
- package/lib/models/events/EncryptedRoomEvent.js +28 -0
- package/lib/models/events/EncryptedRoomEvent.js.map +1 -0
- package/lib/models/events/EncryptionEvent.d.ts +47 -0
- package/lib/models/events/EncryptionEvent.js +42 -0
- package/lib/models/events/EncryptionEvent.js.map +1 -0
- package/lib/models/events/Event.d.ts +26 -0
- package/lib/models/events/Event.js +40 -0
- package/lib/models/events/Event.js.map +1 -0
- package/lib/models/events/EventKind.d.ts +15 -0
- package/lib/models/events/EventKind.js +20 -0
- package/lib/models/events/EventKind.js.map +1 -0
- package/lib/models/events/InvalidEventError.d.ts +14 -0
- package/lib/models/events/InvalidEventError.js +24 -0
- package/lib/models/events/InvalidEventError.js.map +1 -0
- package/lib/models/events/JoinRulesEvent.d.ts +29 -0
- package/lib/models/events/JoinRulesEvent.js +21 -0
- package/lib/models/events/JoinRulesEvent.js.map +1 -0
- package/lib/models/events/MembershipEvent.d.ts +54 -0
- package/lib/models/events/MembershipEvent.js +49 -0
- package/lib/models/events/MembershipEvent.js.map +1 -0
- package/lib/models/events/MessageEvent.d.ts +233 -0
- package/lib/models/events/MessageEvent.js +49 -0
- package/lib/models/events/MessageEvent.js.map +1 -0
- package/lib/models/events/PinnedEventsEvent.d.ts +23 -0
- package/lib/models/events/PinnedEventsEvent.js +21 -0
- package/lib/models/events/PinnedEventsEvent.js.map +1 -0
- package/lib/models/events/PowerLevelsEvent.d.ts +96 -0
- package/lib/models/events/PowerLevelsEvent.js +70 -0
- package/lib/models/events/PowerLevelsEvent.js.map +1 -0
- package/lib/models/events/PresenceEvent.d.ts +56 -0
- package/lib/models/events/PresenceEvent.js +21 -0
- package/lib/models/events/PresenceEvent.js.map +1 -0
- package/lib/models/events/RedactionEvent.d.ts +28 -0
- package/lib/models/events/RedactionEvent.js +36 -0
- package/lib/models/events/RedactionEvent.js.map +1 -0
- package/lib/models/events/RoomAvatarEvent.d.ts +28 -0
- package/lib/models/events/RoomAvatarEvent.js +21 -0
- package/lib/models/events/RoomAvatarEvent.js.map +1 -0
- package/lib/models/events/RoomEvent.d.ts +58 -0
- package/lib/models/events/RoomEvent.js +57 -0
- package/lib/models/events/RoomEvent.js.map +1 -0
- package/lib/models/events/RoomNameEvent.d.ts +20 -0
- package/lib/models/events/RoomNameEvent.js +21 -0
- package/lib/models/events/RoomNameEvent.js.map +1 -0
- package/lib/models/events/RoomTopicEvent.d.ts +20 -0
- package/lib/models/events/RoomTopicEvent.js +21 -0
- package/lib/models/events/RoomTopicEvent.js.map +1 -0
- package/lib/models/events/SpaceChildEvent.d.ts +53 -0
- package/lib/models/events/SpaceChildEvent.js +49 -0
- package/lib/models/events/SpaceChildEvent.js.map +1 -0
- package/lib/models/events/converter.d.ts +8 -0
- package/lib/models/events/converter.js +50 -0
- package/lib/models/events/converter.js.map +1 -0
- package/lib/models/unstable/MediaInfo.d.ts +16 -0
- package/lib/models/unstable/MediaInfo.js +3 -0
- package/lib/models/unstable/MediaInfo.js.map +1 -0
- package/lib/preprocessors/IPreprocessor.d.ts +22 -0
- package/lib/preprocessors/IPreprocessor.js +3 -0
- package/lib/preprocessors/IPreprocessor.js.map +1 -0
- package/lib/preprocessors/RichRepliesPreprocessor.d.ts +67 -0
- package/lib/preprocessors/RichRepliesPreprocessor.js +112 -0
- package/lib/preprocessors/RichRepliesPreprocessor.js.map +1 -0
- package/lib/request.d.ts +13 -0
- package/lib/request.js +23 -0
- package/lib/request.js.map +1 -0
- package/lib/simple-validation.d.ts +10 -0
- package/lib/simple-validation.js +30 -0
- package/lib/simple-validation.js.map +1 -0
- package/lib/storage/IAppserviceStorageProvider.d.ts +48 -0
- package/lib/storage/IAppserviceStorageProvider.js +3 -0
- package/lib/storage/IAppserviceStorageProvider.js.map +1 -0
- package/lib/storage/ICryptoStorageProvider.d.ts +32 -0
- package/lib/storage/ICryptoStorageProvider.js +3 -0
- package/lib/storage/ICryptoStorageProvider.js.map +1 -0
- package/lib/storage/IStorageProvider.d.ts +47 -0
- package/lib/storage/IStorageProvider.js +3 -0
- package/lib/storage/IStorageProvider.js.map +1 -0
- package/lib/storage/MemoryStorageProvider.d.ts +26 -0
- package/lib/storage/MemoryStorageProvider.js +55 -0
- package/lib/storage/MemoryStorageProvider.js.map +1 -0
- package/lib/storage/RustSdkCryptoStorageProvider.d.ts +38 -0
- package/lib/storage/RustSdkCryptoStorageProvider.js +69 -0
- package/lib/storage/RustSdkCryptoStorageProvider.js.map +1 -0
- package/lib/storage/SimpleFsStorageProvider.d.ts +31 -0
- package/lib/storage/SimpleFsStorageProvider.js +122 -0
- package/lib/storage/SimpleFsStorageProvider.js.map +1 -0
- package/lib/storage/SimplePostgresStorageProvider.d.ts +32 -0
- package/lib/storage/SimplePostgresStorageProvider.js +148 -0
- package/lib/storage/SimplePostgresStorageProvider.js.map +1 -0
- package/lib/strategies/AppserviceJoinRoomStrategy.d.ts +14 -0
- package/lib/strategies/AppserviceJoinRoomStrategy.js +54 -0
- package/lib/strategies/AppserviceJoinRoomStrategy.js.map +1 -0
- package/lib/strategies/JoinRoomStrategy.d.ts +11 -0
- package/lib/strategies/JoinRoomStrategy.js +44 -0
- package/lib/strategies/JoinRoomStrategy.js.map +1 -0
- package/package.json +136 -4
- package/src/AdminApis.ts +60 -0
- package/src/DMs.ts +164 -0
- package/src/IFilter.ts +7 -0
- package/src/MatrixAuth.ts +129 -0
- package/src/MatrixClient.ts +2046 -0
- package/src/PantalaimonClient.ts +62 -0
- package/src/SynapseAdminApis.ts +482 -0
- package/src/SynchronousMatrixClient.ts +129 -0
- package/src/UnstableApis.ts +75 -0
- package/src/appservice/Appservice.ts +1089 -0
- package/src/appservice/Intent.ts +342 -0
- package/src/appservice/MatrixBridge.ts +139 -0
- package/src/appservice/UnstableAppserviceApis.ts +63 -0
- package/src/appservice/http_responses.ts +77 -0
- package/src/b64.ts +63 -0
- package/src/e2ee/CrossSigningBootstrap.ts +141 -0
- package/src/e2ee/CryptoClient.ts +378 -0
- package/src/e2ee/ICryptoRoomInformation.ts +9 -0
- package/src/e2ee/RoomTracker.ts +99 -0
- package/src/e2ee/RustEngine.ts +580 -0
- package/src/e2ee/decorators.ts +38 -0
- package/src/helpers/MatrixEntity.ts +65 -0
- package/src/helpers/MatrixGlob.ts +38 -0
- package/src/helpers/MentionPill.ts +95 -0
- package/src/helpers/Permalinks.ts +101 -0
- package/src/helpers/ProfileCache.ts +119 -0
- package/src/helpers/RichReply.ts +46 -0
- package/src/helpers/UnpaddedBase64.ts +44 -0
- package/src/http.ts +166 -0
- package/src/identity/IdentityClient.ts +225 -0
- package/src/index.ts +125 -0
- package/src/logging/ConsoleLogger.ts +31 -0
- package/src/logging/ILogger.ts +40 -0
- package/src/logging/LogService.ts +167 -0
- package/src/logging/RichConsoleLogger.ts +70 -0
- package/src/metrics/IMetricListener.ts +57 -0
- package/src/metrics/Metrics.ts +134 -0
- package/src/metrics/contexts.ts +56 -0
- package/src/metrics/decorators.ts +94 -0
- package/src/metrics/names.ts +53 -0
- package/src/mixins/AutojoinRoomsMixin.ts +24 -0
- package/src/mixins/AutojoinUpgradedRoomsMixin.ts +37 -0
- package/src/models/Account.ts +8 -0
- package/src/models/CreateRoom.ts +144 -0
- package/src/models/Crypto.ts +188 -0
- package/src/models/EventContext.ts +23 -0
- package/src/models/IdentityServerModels.ts +18 -0
- package/src/models/MSC2176.ts +47 -0
- package/src/models/MatrixError.ts +39 -0
- package/src/models/MatrixProfile.ts +55 -0
- package/src/models/OpenIDConnect.ts +10 -0
- package/src/models/Policies.ts +28 -0
- package/src/models/PowerLevelAction.ts +31 -0
- package/src/models/PowerLevelBounds.ts +16 -0
- package/src/models/Presence.ts +38 -0
- package/src/models/ServerVersions.ts +8 -0
- package/src/models/Spaces.ts +167 -0
- package/src/models/Threepid.ts +8 -0
- package/src/models/events/AliasesEvent.ts +37 -0
- package/src/models/events/CanonicalAliasEvent.ts +30 -0
- package/src/models/events/CreateEvent.ts +82 -0
- package/src/models/events/EncryptedRoomEvent.ts +58 -0
- package/src/models/events/EncryptionEvent.ts +63 -0
- package/src/models/events/Event.ts +38 -0
- package/src/models/events/EventKind.ts +16 -0
- package/src/models/events/InvalidEventError.ts +19 -0
- package/src/models/events/JoinRulesEvent.ts +37 -0
- package/src/models/events/MembershipEvent.ts +77 -0
- package/src/models/events/MessageEvent.ts +292 -0
- package/src/models/events/PinnedEventsEvent.ts +30 -0
- package/src/models/events/PowerLevelsEvent.ts +135 -0
- package/src/models/events/PresenceEvent.ts +69 -0
- package/src/models/events/RedactionEvent.ts +44 -0
- package/src/models/events/RoomAvatarEvent.ts +36 -0
- package/src/models/events/RoomEvent.ts +83 -0
- package/src/models/events/RoomNameEvent.ts +27 -0
- package/src/models/events/RoomTopicEvent.ts +27 -0
- package/src/models/events/SpaceChildEvent.ts +74 -0
- package/src/models/events/_MissingEvents.md +35 -0
- package/src/models/events/converter.ts +47 -0
- package/src/models/unstable/MediaInfo.ts +16 -0
- package/src/preprocessors/IPreprocessor.ts +24 -0
- package/src/preprocessors/RichRepliesPreprocessor.ts +159 -0
- package/src/request.ts +21 -0
- package/src/simple-validation.ts +30 -0
- package/src/storage/IAppserviceStorageProvider.ts +54 -0
- package/src/storage/ICryptoStorageProvider.ts +36 -0
- package/src/storage/IStorageProvider.ts +53 -0
- package/src/storage/MemoryStorageProvider.ts +65 -0
- package/src/storage/RustSdkCryptoStorageProvider.ts +81 -0
- package/src/storage/SimpleFsStorageProvider.ts +142 -0
- package/src/storage/SimplePostgresStorageProvider.ts +168 -0
- package/src/strategies/AppserviceJoinRoomStrategy.ts +47 -0
- package/src/strategies/JoinRoomStrategy.ts +45 -0
- package/tsconfig.json +22 -0
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EncryptedRoomEvent = void 0;
|
|
4
|
+
const RoomEvent_1 = require("./RoomEvent");
|
|
5
|
+
/**
|
|
6
|
+
* Represents an m.room.encrypted room event
|
|
7
|
+
* @category Matrix events
|
|
8
|
+
*/
|
|
9
|
+
class EncryptedRoomEvent extends RoomEvent_1.RoomEvent {
|
|
10
|
+
constructor(event) {
|
|
11
|
+
super(event);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* The encryption algorithm used on the event. Should match the m.room.encryption
|
|
15
|
+
* state config.
|
|
16
|
+
*/
|
|
17
|
+
get algorithm() {
|
|
18
|
+
return this.content.algorithm;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* The Megolm encrypted payload information.
|
|
22
|
+
*/
|
|
23
|
+
get megolmProperties() {
|
|
24
|
+
return this.content;
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
exports.EncryptedRoomEvent = EncryptedRoomEvent;
|
|
28
|
+
//# sourceMappingURL=EncryptedRoomEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EncryptedRoomEvent.js","sourceRoot":"","sources":["../../../src/models/events/EncryptedRoomEvent.ts"],"names":[],"mappings":";;;AAAA,2CAAwC;AAkCxC;;;GAGG;AACH,MAAa,kBAAmB,SAAQ,qBAAoC;IACxE,YAAY,KAAU;QAClB,KAAK,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED;;;OAGG;IACH,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,OAA2B,CAAC;IAC5C,CAAC;CACJ;AAnBD,gDAmBC"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { StateEvent } from "./RoomEvent";
|
|
2
|
+
/**
|
|
3
|
+
* The kinds of room encryption algorithms allowed by the spec.
|
|
4
|
+
* @category Models
|
|
5
|
+
* @see EncryptionEvent
|
|
6
|
+
*/
|
|
7
|
+
export declare enum RoomEncryptionAlgorithm {
|
|
8
|
+
MegolmV1AesSha2 = "m.megolm.v1.aes-sha2"
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The content definition for m.room.encryption events
|
|
12
|
+
* @category Matrix event contents
|
|
13
|
+
* @see EncryptionEvent
|
|
14
|
+
*/
|
|
15
|
+
export interface EncryptionEventContent {
|
|
16
|
+
/**
|
|
17
|
+
* The encryption algorithm for the room.
|
|
18
|
+
*/
|
|
19
|
+
algorithm: string | RoomEncryptionAlgorithm;
|
|
20
|
+
/**
|
|
21
|
+
* How long a session should be used before changing it.
|
|
22
|
+
*/
|
|
23
|
+
rotation_period_ms?: number;
|
|
24
|
+
/**
|
|
25
|
+
* How many messages should be sent before changing the session.
|
|
26
|
+
*/
|
|
27
|
+
rotation_period_msgs?: number;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Represents an m.room.encryption state event
|
|
31
|
+
* @category Matrix events
|
|
32
|
+
*/
|
|
33
|
+
export declare class EncryptionEvent extends StateEvent<EncryptionEventContent> {
|
|
34
|
+
constructor(event: any);
|
|
35
|
+
/**
|
|
36
|
+
* The encryption algorithm for the room.
|
|
37
|
+
*/
|
|
38
|
+
get algorithm(): string | RoomEncryptionAlgorithm;
|
|
39
|
+
/**
|
|
40
|
+
* How long a session should be used before changing it. Defaults to a week.
|
|
41
|
+
*/
|
|
42
|
+
get rotationPeriodMs(): number;
|
|
43
|
+
/**
|
|
44
|
+
* How many messages should be sent before a session changes. Defaults to 100.
|
|
45
|
+
*/
|
|
46
|
+
get rotationPeriodMessages(): number;
|
|
47
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EncryptionEvent = exports.RoomEncryptionAlgorithm = void 0;
|
|
4
|
+
const RoomEvent_1 = require("./RoomEvent");
|
|
5
|
+
/**
|
|
6
|
+
* The kinds of room encryption algorithms allowed by the spec.
|
|
7
|
+
* @category Models
|
|
8
|
+
* @see EncryptionEvent
|
|
9
|
+
*/
|
|
10
|
+
var RoomEncryptionAlgorithm;
|
|
11
|
+
(function (RoomEncryptionAlgorithm) {
|
|
12
|
+
RoomEncryptionAlgorithm["MegolmV1AesSha2"] = "m.megolm.v1.aes-sha2";
|
|
13
|
+
})(RoomEncryptionAlgorithm || (exports.RoomEncryptionAlgorithm = RoomEncryptionAlgorithm = {}));
|
|
14
|
+
/**
|
|
15
|
+
* Represents an m.room.encryption state event
|
|
16
|
+
* @category Matrix events
|
|
17
|
+
*/
|
|
18
|
+
class EncryptionEvent extends RoomEvent_1.StateEvent {
|
|
19
|
+
constructor(event) {
|
|
20
|
+
super(event);
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The encryption algorithm for the room.
|
|
24
|
+
*/
|
|
25
|
+
get algorithm() {
|
|
26
|
+
return this.content.algorithm;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* How long a session should be used before changing it. Defaults to a week.
|
|
30
|
+
*/
|
|
31
|
+
get rotationPeriodMs() {
|
|
32
|
+
return this.content.rotation_period_ms ?? 604800000; // 1 week
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* How many messages should be sent before a session changes. Defaults to 100.
|
|
36
|
+
*/
|
|
37
|
+
get rotationPeriodMessages() {
|
|
38
|
+
return this.content.rotation_period_msgs ?? 100;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
exports.EncryptionEvent = EncryptionEvent;
|
|
42
|
+
//# sourceMappingURL=EncryptionEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EncryptionEvent.js","sourceRoot":"","sources":["../../../src/models/events/EncryptionEvent.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AAEzC;;;;GAIG;AACH,IAAY,uBAEX;AAFD,WAAY,uBAAuB;IAC/B,mEAAwC,CAAA;AAC5C,CAAC,EAFW,uBAAuB,uCAAvB,uBAAuB,QAElC;AAwBD;;;GAGG;AACH,MAAa,eAAgB,SAAQ,sBAAkC;IACnE,YAAY,KAAU;QAClB,KAAK,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,IAAW,SAAS;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IAClC,CAAC;IAED;;OAEG;IACH,IAAW,gBAAgB;QACvB,OAAO,IAAI,CAAC,OAAO,CAAC,kBAAkB,IAAI,SAAS,CAAC,CAAC,SAAS;IAClE,CAAC;IAED;;OAEG;IACH,IAAW,sBAAsB;QAC7B,OAAO,IAAI,CAAC,OAAO,CAAC,oBAAoB,IAAI,GAAG,CAAC;IACpD,CAAC;CACJ;AAzBD,0CAyBC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A Matrix event.
|
|
3
|
+
* @category Matrix events
|
|
4
|
+
*/
|
|
5
|
+
export declare class MatrixEvent<T extends (Object | unknown) = unknown> {
|
|
6
|
+
protected event: any;
|
|
7
|
+
constructor(event: any);
|
|
8
|
+
/**
|
|
9
|
+
* The user ID who sent this event.
|
|
10
|
+
*/
|
|
11
|
+
get sender(): string;
|
|
12
|
+
/**
|
|
13
|
+
* The type of this event.
|
|
14
|
+
*/
|
|
15
|
+
get type(): string;
|
|
16
|
+
/**
|
|
17
|
+
* The content for this event. May have no properties.
|
|
18
|
+
*/
|
|
19
|
+
get content(): T;
|
|
20
|
+
/**
|
|
21
|
+
* Gets the raw event that this MatrixEvent is using.
|
|
22
|
+
* Note that there's no guarantees on formats here - it is the exact
|
|
23
|
+
* same input to the constructor.
|
|
24
|
+
*/
|
|
25
|
+
get raw(): any;
|
|
26
|
+
}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MatrixEvent = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* A Matrix event.
|
|
6
|
+
* @category Matrix events
|
|
7
|
+
*/
|
|
8
|
+
class MatrixEvent {
|
|
9
|
+
constructor(event) {
|
|
10
|
+
this.event = event;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* The user ID who sent this event.
|
|
14
|
+
*/
|
|
15
|
+
get sender() {
|
|
16
|
+
return this.event['sender'];
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* The type of this event.
|
|
20
|
+
*/
|
|
21
|
+
get type() {
|
|
22
|
+
return this.event['type'];
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* The content for this event. May have no properties.
|
|
26
|
+
*/
|
|
27
|
+
get content() {
|
|
28
|
+
return this.event['content'] || {};
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Gets the raw event that this MatrixEvent is using.
|
|
32
|
+
* Note that there's no guarantees on formats here - it is the exact
|
|
33
|
+
* same input to the constructor.
|
|
34
|
+
*/
|
|
35
|
+
get raw() {
|
|
36
|
+
return this.event;
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
exports.MatrixEvent = MatrixEvent;
|
|
40
|
+
//# sourceMappingURL=Event.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Event.js","sourceRoot":"","sources":["../../../src/models/events/Event.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,MAAa,WAAW;IACpB,YAAsB,KAAU;QAAV,UAAK,GAAL,KAAK,CAAK;IAChC,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,IAAW,OAAO;QACd,OAAO,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC;IACvC,CAAC;IAED;;;;OAIG;IACH,IAAW,GAAG;QACV,OAAO,IAAI,CAAC,KAAK,CAAC;IACtB,CAAC;CACJ;AAjCD,kCAiCC"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Represents the different kinds of events a bot/appservice might see.
|
|
3
|
+
* @category Matrix events
|
|
4
|
+
*/
|
|
5
|
+
export declare enum EventKind {
|
|
6
|
+
/**
|
|
7
|
+
* A room event. This could be a message event or a state event, and is associated with
|
|
8
|
+
* a room.
|
|
9
|
+
*/
|
|
10
|
+
RoomEvent = "room",
|
|
11
|
+
/**
|
|
12
|
+
* An ephemeral event, such as typing notifications or presence.
|
|
13
|
+
*/
|
|
14
|
+
EphemeralEvent = "ephemeral"
|
|
15
|
+
}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EventKind = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Represents the different kinds of events a bot/appservice might see.
|
|
6
|
+
* @category Matrix events
|
|
7
|
+
*/
|
|
8
|
+
var EventKind;
|
|
9
|
+
(function (EventKind) {
|
|
10
|
+
/**
|
|
11
|
+
* A room event. This could be a message event or a state event, and is associated with
|
|
12
|
+
* a room.
|
|
13
|
+
*/
|
|
14
|
+
EventKind["RoomEvent"] = "room";
|
|
15
|
+
/**
|
|
16
|
+
* An ephemeral event, such as typing notifications or presence.
|
|
17
|
+
*/
|
|
18
|
+
EventKind["EphemeralEvent"] = "ephemeral";
|
|
19
|
+
})(EventKind || (exports.EventKind = EventKind = {}));
|
|
20
|
+
//# sourceMappingURL=EventKind.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventKind.js","sourceRoot":"","sources":["../../../src/models/events/EventKind.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,IAAY,SAWX;AAXD,WAAY,SAAS;IACjB;;;OAGG;IACH,+BAAkB,CAAA;IAElB;;OAEG;IACH,yCAA4B,CAAA;AAChC,CAAC,EAXW,SAAS,yBAAT,SAAS,QAWpB"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thrown when an event is invalid.
|
|
3
|
+
* @category Matrix events
|
|
4
|
+
*/
|
|
5
|
+
export declare class InvalidEventError extends Error {
|
|
6
|
+
constructor(message?: string);
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Thrown when an event is redacted.
|
|
10
|
+
* @category Matrix events
|
|
11
|
+
*/
|
|
12
|
+
export declare class EventRedactedError extends InvalidEventError {
|
|
13
|
+
constructor(message?: string);
|
|
14
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.EventRedactedError = exports.InvalidEventError = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Thrown when an event is invalid.
|
|
6
|
+
* @category Matrix events
|
|
7
|
+
*/
|
|
8
|
+
class InvalidEventError extends Error {
|
|
9
|
+
constructor(message = null) {
|
|
10
|
+
super(message);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
exports.InvalidEventError = InvalidEventError;
|
|
14
|
+
/**
|
|
15
|
+
* Thrown when an event is redacted.
|
|
16
|
+
* @category Matrix events
|
|
17
|
+
*/
|
|
18
|
+
class EventRedactedError extends InvalidEventError {
|
|
19
|
+
constructor(message = null) {
|
|
20
|
+
super(message);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
exports.EventRedactedError = EventRedactedError;
|
|
24
|
+
//# sourceMappingURL=InvalidEventError.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"InvalidEventError.js","sourceRoot":"","sources":["../../../src/models/events/InvalidEventError.ts"],"names":[],"mappings":";;;AAAA;;;GAGG;AACH,MAAa,iBAAkB,SAAQ,KAAK;IACxC,YAAY,UAAkB,IAAI;QAC9B,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;CACJ;AAJD,8CAIC;AAED;;;GAGG;AACH,MAAa,kBAAmB,SAAQ,iBAAiB;IACrD,YAAY,UAAkB,IAAI;QAC9B,KAAK,CAAC,OAAO,CAAC,CAAC;IACnB,CAAC;CACJ;AAJD,gDAIC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { StateEvent } from "./RoomEvent";
|
|
2
|
+
/**
|
|
3
|
+
* The types of join rules that are valid in Matrix.
|
|
4
|
+
* @category Matrix event info
|
|
5
|
+
* @see JoinRulesEventContent
|
|
6
|
+
*/
|
|
7
|
+
export type JoinRule = "public" | "knock" | "invite" | "private";
|
|
8
|
+
/**
|
|
9
|
+
* The content definition for m.room.join_rules events
|
|
10
|
+
* @category Matrix event contents
|
|
11
|
+
* @see JoinRulesEvent
|
|
12
|
+
*/
|
|
13
|
+
export interface JoinRulesEventContent {
|
|
14
|
+
/**
|
|
15
|
+
* The join rule for the room.
|
|
16
|
+
*/
|
|
17
|
+
join_rule: JoinRule;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Represents an m.room.join_rules state event
|
|
21
|
+
* @category Matrix events
|
|
22
|
+
*/
|
|
23
|
+
export declare class JoinRulesEvent extends StateEvent<JoinRulesEventContent> {
|
|
24
|
+
constructor(event: any);
|
|
25
|
+
/**
|
|
26
|
+
* The join rule for the room.
|
|
27
|
+
*/
|
|
28
|
+
get rule(): JoinRule;
|
|
29
|
+
}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.JoinRulesEvent = void 0;
|
|
4
|
+
const RoomEvent_1 = require("./RoomEvent");
|
|
5
|
+
/**
|
|
6
|
+
* Represents an m.room.join_rules state event
|
|
7
|
+
* @category Matrix events
|
|
8
|
+
*/
|
|
9
|
+
class JoinRulesEvent extends RoomEvent_1.StateEvent {
|
|
10
|
+
constructor(event) {
|
|
11
|
+
super(event);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* The join rule for the room.
|
|
15
|
+
*/
|
|
16
|
+
get rule() {
|
|
17
|
+
return this.content.join_rule;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
exports.JoinRulesEvent = JoinRulesEvent;
|
|
21
|
+
//# sourceMappingURL=JoinRulesEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"JoinRulesEvent.js","sourceRoot":"","sources":["../../../src/models/events/JoinRulesEvent.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AAqBzC;;;GAGG;AACH,MAAa,cAAe,SAAQ,sBAAiC;IACjE,YAAY,KAAU;QAClB,KAAK,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED;;OAEG;IACH,IAAW,IAAI;QACX,OAAO,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC;IAClC,CAAC;CACJ;AAXD,wCAWC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
import { StateEvent } from "./RoomEvent";
|
|
2
|
+
/**
|
|
3
|
+
* The types of membership that are valid in Matrix.
|
|
4
|
+
* @category Matrix event info
|
|
5
|
+
* @see MembershipEventContent
|
|
6
|
+
*/
|
|
7
|
+
export type Membership = "join" | "leave" | "ban" | "invite";
|
|
8
|
+
/**
|
|
9
|
+
* The effective membership states a user can be in.
|
|
10
|
+
* @category Matrix event info
|
|
11
|
+
* @see MembershipEventContent
|
|
12
|
+
*/
|
|
13
|
+
export type EffectiveMembership = "join" | "leave" | "invite";
|
|
14
|
+
/**
|
|
15
|
+
* The content definition for m.room.member events
|
|
16
|
+
* @category Matrix event contents
|
|
17
|
+
* @see MembershipEvent
|
|
18
|
+
*/
|
|
19
|
+
export interface MembershipEventContent {
|
|
20
|
+
avatar_url?: string;
|
|
21
|
+
displayname?: string;
|
|
22
|
+
membership: Membership;
|
|
23
|
+
is_direct?: boolean;
|
|
24
|
+
unsigned?: any;
|
|
25
|
+
third_party_invite?: {
|
|
26
|
+
display_name: string;
|
|
27
|
+
signed: any;
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Represents an m.room.member state event
|
|
32
|
+
* @category Matrix events
|
|
33
|
+
*/
|
|
34
|
+
export declare class MembershipEvent extends StateEvent<MembershipEventContent> {
|
|
35
|
+
constructor(event: any);
|
|
36
|
+
/**
|
|
37
|
+
* True if the membership event targets the sender. False otherwise.
|
|
38
|
+
*
|
|
39
|
+
* This will typically by false for kicks and bans.
|
|
40
|
+
*/
|
|
41
|
+
get ownMembership(): boolean;
|
|
42
|
+
/**
|
|
43
|
+
* The user ID the membership affects.
|
|
44
|
+
*/
|
|
45
|
+
get membershipFor(): string;
|
|
46
|
+
/**
|
|
47
|
+
* The user's membership.
|
|
48
|
+
*/
|
|
49
|
+
get membership(): Membership;
|
|
50
|
+
/**
|
|
51
|
+
* The user's effective membership.
|
|
52
|
+
*/
|
|
53
|
+
get effectiveMembership(): EffectiveMembership;
|
|
54
|
+
}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.MembershipEvent = void 0;
|
|
4
|
+
const RoomEvent_1 = require("./RoomEvent");
|
|
5
|
+
const InvalidEventError_1 = require("./InvalidEventError");
|
|
6
|
+
/**
|
|
7
|
+
* Represents an m.room.member state event
|
|
8
|
+
* @category Matrix events
|
|
9
|
+
*/
|
|
10
|
+
class MembershipEvent extends RoomEvent_1.StateEvent {
|
|
11
|
+
constructor(event) {
|
|
12
|
+
super(event);
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* True if the membership event targets the sender. False otherwise.
|
|
16
|
+
*
|
|
17
|
+
* This will typically by false for kicks and bans.
|
|
18
|
+
*/
|
|
19
|
+
get ownMembership() {
|
|
20
|
+
return this.membershipFor === this.sender;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The user ID the membership affects.
|
|
24
|
+
*/
|
|
25
|
+
get membershipFor() {
|
|
26
|
+
return this.stateKey;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* The user's membership.
|
|
30
|
+
*/
|
|
31
|
+
get membership() {
|
|
32
|
+
const membership = this.content.membership;
|
|
33
|
+
if (!membership)
|
|
34
|
+
throw new InvalidEventError_1.InvalidEventError("no membership field in content");
|
|
35
|
+
return membership;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* The user's effective membership.
|
|
39
|
+
*/
|
|
40
|
+
get effectiveMembership() {
|
|
41
|
+
if (this.membership === "join")
|
|
42
|
+
return "join";
|
|
43
|
+
if (this.membership === "invite")
|
|
44
|
+
return "invite";
|
|
45
|
+
return "leave";
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
exports.MembershipEvent = MembershipEvent;
|
|
49
|
+
//# sourceMappingURL=MembershipEvent.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MembershipEvent.js","sourceRoot":"","sources":["../../../src/models/events/MembershipEvent.ts"],"names":[],"mappings":";;;AAAA,2CAAyC;AACzC,2DAAwD;AAiCxD;;;GAGG;AACH,MAAa,eAAgB,SAAQ,sBAAkC;IACnE,YAAY,KAAU;QAClB,KAAK,CAAC,KAAK,CAAC,CAAC;IACjB,CAAC;IAED;;;;OAIG;IACH,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,aAAa,KAAK,IAAI,CAAC,MAAM,CAAC;IAC9C,CAAC;IAED;;OAEG;IACH,IAAW,aAAa;QACpB,OAAO,IAAI,CAAC,QAAQ,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,IAAW,UAAU;QACjB,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC;QAC3C,IAAI,CAAC,UAAU;YAAE,MAAM,IAAI,qCAAiB,CAAC,gCAAgC,CAAC,CAAC;QAC/E,OAAO,UAAU,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,IAAW,mBAAmB;QAC1B,IAAI,IAAI,CAAC,UAAU,KAAK,MAAM;YAAE,OAAO,MAAM,CAAC;QAC9C,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ;YAAE,OAAO,QAAQ,CAAC;QAClD,OAAO,OAAO,CAAC;IACnB,CAAC;CACJ;AAtCD,0CAsCC"}
|
|
@@ -0,0 +1,233 @@
|
|
|
1
|
+
import { RoomEvent } from "./RoomEvent";
|
|
2
|
+
/**
|
|
3
|
+
* The types of messages that are valid in Matrix.
|
|
4
|
+
* @category Matrix event info
|
|
5
|
+
* @see MessageEventContent
|
|
6
|
+
*/
|
|
7
|
+
export type MessageType = "m.text" | "m.emote" | "m.notice" | "m.image" | "m.file" | "m.audio" | "m.location" | "m.video" | string;
|
|
8
|
+
/**
|
|
9
|
+
* Information about a file in Matrix
|
|
10
|
+
* @category Matrix event info
|
|
11
|
+
* @see MessageEventContent
|
|
12
|
+
*/
|
|
13
|
+
export interface FileInfo {
|
|
14
|
+
/**
|
|
15
|
+
* The size of the file in bytes.
|
|
16
|
+
*/
|
|
17
|
+
size?: number;
|
|
18
|
+
/**
|
|
19
|
+
* The type of file.
|
|
20
|
+
*/
|
|
21
|
+
mimetype?: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Information about a thumbnail in Matrix
|
|
25
|
+
* @category Matrix event info
|
|
26
|
+
* @see MessageEventContent
|
|
27
|
+
*/
|
|
28
|
+
export interface ThumbnailInfo {
|
|
29
|
+
/**
|
|
30
|
+
* The size of the thumbnail in bytes.
|
|
31
|
+
*/
|
|
32
|
+
size?: number;
|
|
33
|
+
/**
|
|
34
|
+
* The type of thumbnail.
|
|
35
|
+
*/
|
|
36
|
+
mimetype?: string;
|
|
37
|
+
/**
|
|
38
|
+
* The intended height of the thumbnail in pixels.
|
|
39
|
+
*/
|
|
40
|
+
h: number;
|
|
41
|
+
/**
|
|
42
|
+
* The intended width of the thumbnail in pixels.
|
|
43
|
+
*/
|
|
44
|
+
w: number;
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Information about a file's thumbnail.
|
|
48
|
+
* @category Matrix event info
|
|
49
|
+
* @see MessageEventContent
|
|
50
|
+
*/
|
|
51
|
+
export interface ThumbnailedFileInfo {
|
|
52
|
+
/**
|
|
53
|
+
* A URL to a thumbnail for the file, if unencrypted.
|
|
54
|
+
*/
|
|
55
|
+
thumbnail_url?: string;
|
|
56
|
+
/**
|
|
57
|
+
* The encrypted thumbnail file information, if encrypted.
|
|
58
|
+
*/
|
|
59
|
+
thumbnail_file?: EncryptedFile;
|
|
60
|
+
/**
|
|
61
|
+
* Information about the thumbnail. Optionally included if a thumbnail_url is specified.
|
|
62
|
+
*/
|
|
63
|
+
thumbnail_info?: ThumbnailInfo;
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Information about a file that has a thumbnail
|
|
67
|
+
* @category Matrix event info
|
|
68
|
+
* @see MessageEventContent
|
|
69
|
+
*/
|
|
70
|
+
export interface FileWithThumbnailInfo extends FileInfo, ThumbnailedFileInfo {
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* Information about a file that has a width and height.
|
|
74
|
+
* @category Matrix event info
|
|
75
|
+
* @see MessageEventContent
|
|
76
|
+
*/
|
|
77
|
+
export interface DimensionalFileInfo extends FileWithThumbnailInfo {
|
|
78
|
+
/**
|
|
79
|
+
* The intended height of the media in pixels.
|
|
80
|
+
*/
|
|
81
|
+
h: number;
|
|
82
|
+
/**
|
|
83
|
+
* The intended width of the media in pixels.
|
|
84
|
+
*/
|
|
85
|
+
w: number;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* Information about a file that has a time dimension.
|
|
89
|
+
* @category Matrix event info
|
|
90
|
+
* @see MessageEventContent
|
|
91
|
+
*/
|
|
92
|
+
export interface TimedFileInfo extends FileInfo {
|
|
93
|
+
/**
|
|
94
|
+
* The duration of the media in milliseconds.
|
|
95
|
+
*/
|
|
96
|
+
duration: number;
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Information about a video file.
|
|
100
|
+
* @category Matrix event info
|
|
101
|
+
* @see MessageEventContent
|
|
102
|
+
*/
|
|
103
|
+
export interface VideoFileInfo extends DimensionalFileInfo, TimedFileInfo {
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* The content definition for m.room.message events with a type of m.audio
|
|
107
|
+
* @category Matrix event contents
|
|
108
|
+
* @see MessageEvent
|
|
109
|
+
*/
|
|
110
|
+
export interface AudioMessageEventContent extends FileMessageEventContent {
|
|
111
|
+
/**
|
|
112
|
+
* Information about the file.
|
|
113
|
+
*/
|
|
114
|
+
info?: TimedFileInfo;
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* The content definition for m.room.message events with a type of m.video
|
|
118
|
+
* @category Matrix event contents
|
|
119
|
+
* @see MessageEvent
|
|
120
|
+
*/
|
|
121
|
+
export interface VideoMessageEventContent extends FileMessageEventContent {
|
|
122
|
+
/**
|
|
123
|
+
* Information about the file.
|
|
124
|
+
*/
|
|
125
|
+
info?: VideoFileInfo;
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* The content definition for m.room.message events with a type of m.image
|
|
129
|
+
* @category Matrix event contents
|
|
130
|
+
* @see MessageEvent
|
|
131
|
+
*/
|
|
132
|
+
export interface ImageMessageEventContent extends FileMessageEventContent {
|
|
133
|
+
/**
|
|
134
|
+
* Information about the file.
|
|
135
|
+
*/
|
|
136
|
+
info?: DimensionalFileInfo;
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* The content definition for m.room.message events with a type of m.file
|
|
140
|
+
* @category Matrix event contents
|
|
141
|
+
* @see MessageEvent
|
|
142
|
+
*/
|
|
143
|
+
export interface FileMessageEventContent extends MessageEventContent {
|
|
144
|
+
/**
|
|
145
|
+
* Information about the file.
|
|
146
|
+
*/
|
|
147
|
+
info?: FileWithThumbnailInfo;
|
|
148
|
+
/**
|
|
149
|
+
* URL to the file, if unencrypted.
|
|
150
|
+
*/
|
|
151
|
+
url: string;
|
|
152
|
+
/**
|
|
153
|
+
* The encrypted file, if encrypted.
|
|
154
|
+
*/
|
|
155
|
+
file: EncryptedFile;
|
|
156
|
+
}
|
|
157
|
+
/**
|
|
158
|
+
* An encrypted file.
|
|
159
|
+
* @category Matrix event contents
|
|
160
|
+
* @see MessageEvent
|
|
161
|
+
*/
|
|
162
|
+
export interface EncryptedFile {
|
|
163
|
+
url: string;
|
|
164
|
+
key: {
|
|
165
|
+
kty: "oct";
|
|
166
|
+
key_ops: string[];
|
|
167
|
+
alg: "A256CTR";
|
|
168
|
+
k: string;
|
|
169
|
+
ext: true;
|
|
170
|
+
};
|
|
171
|
+
iv: string;
|
|
172
|
+
hashes: {
|
|
173
|
+
sha256: string;
|
|
174
|
+
};
|
|
175
|
+
v: "v2";
|
|
176
|
+
}
|
|
177
|
+
/**
|
|
178
|
+
* The content definition for m.room.message events with a type of m.location
|
|
179
|
+
* @category Matrix event contents
|
|
180
|
+
* @see MessageEvent
|
|
181
|
+
*/
|
|
182
|
+
export interface LocationMessageEventContent extends MessageEventContent {
|
|
183
|
+
/**
|
|
184
|
+
* Information about the location.
|
|
185
|
+
*/
|
|
186
|
+
info?: ThumbnailedFileInfo;
|
|
187
|
+
/**
|
|
188
|
+
* A geo URI of the location.
|
|
189
|
+
*/
|
|
190
|
+
geo_uri?: string;
|
|
191
|
+
}
|
|
192
|
+
/**
|
|
193
|
+
* The content definition for m.room.message events with types of m.text, m.emote, and m.notice
|
|
194
|
+
* @category Matrix event contents
|
|
195
|
+
* @see MessageEvent
|
|
196
|
+
*/
|
|
197
|
+
export interface TextualMessageEventContent extends MessageEventContent {
|
|
198
|
+
format?: string;
|
|
199
|
+
formatted_body?: string;
|
|
200
|
+
}
|
|
201
|
+
/**
|
|
202
|
+
* The content definition for m.room.message events
|
|
203
|
+
* @category Matrix event contents
|
|
204
|
+
* @see MessageEvent
|
|
205
|
+
*/
|
|
206
|
+
export interface MessageEventContent {
|
|
207
|
+
body: string;
|
|
208
|
+
msgtype: MessageType;
|
|
209
|
+
external_url?: string;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Represents an m.room.message room event
|
|
213
|
+
* @category Matrix events
|
|
214
|
+
*/
|
|
215
|
+
export declare class MessageEvent<T extends MessageEventContent> extends RoomEvent<T> {
|
|
216
|
+
constructor(event: any);
|
|
217
|
+
/**
|
|
218
|
+
* Whether or not the event is redacted (or looked redacted).
|
|
219
|
+
*/
|
|
220
|
+
get isRedacted(): boolean;
|
|
221
|
+
/**
|
|
222
|
+
* The message's type.
|
|
223
|
+
*/
|
|
224
|
+
get messageType(): MessageType;
|
|
225
|
+
/**
|
|
226
|
+
* The `body` of the message.
|
|
227
|
+
*/
|
|
228
|
+
get textBody(): string;
|
|
229
|
+
/**
|
|
230
|
+
* The `external_url` of the message, if it exists
|
|
231
|
+
*/
|
|
232
|
+
get externalUrl(): string | undefined;
|
|
233
|
+
}
|