Files
standardnotes-server/packages/syncing-server/src/Domain/Event/DomainEventFactoryInterface.ts
T
Karol SójkoandGitHub dc3a41e4bb feat(syncing-server): add sending invites via websockets (#804)
* feat(domain-events): add user invited to shared vault event

* feat(syncing-server): add sending invites via websockets
2023-09-01 12:39:38 +02:00

84 lines
2.4 KiB
TypeScript

import {
DuplicateItemSyncedEvent,
EmailRequestedEvent,
ItemDumpedEvent,
ItemRevisionCreationRequestedEvent,
MessageSentToUserEvent,
NotificationAddedForUserEvent,
RevisionsCopyRequestedEvent,
TransitionStatusUpdatedEvent,
UserInvitedToSharedVaultEvent,
WebSocketMessageRequestedEvent,
} from '@standardnotes/domain-events'
export interface DomainEventFactoryInterface {
createWebSocketMessageRequestedEvent(dto: { userUuid: string; message: string }): WebSocketMessageRequestedEvent
createUserInvitedToSharedVaultEvent(dto: {
invite: {
uuid: string
shared_vault_uuid: string
user_uuid: string
sender_uuid: string
encrypted_message: string
permission: string
created_at_timestamp: number
updated_at_timestamp: number
}
}): UserInvitedToSharedVaultEvent
createMessageSentToUserEvent(dto: {
message: {
uuid: string
recipient_uuid: string
sender_uuid: string
encrypted_message: string
replaceability_identifier: string | null
created_at_timestamp: number
updated_at_timestamp: number
}
}): MessageSentToUserEvent
createNotificationAddedForUserEvent(dto: {
notification: {
uuid: string
user_uuid: string
type: string
payload: string
created_at_timestamp: number
updated_at_timestamp: number
}
}): NotificationAddedForUserEvent
createTransitionStatusUpdatedEvent(dto: {
userUuid: string
transitionType: 'items' | 'revisions'
status: 'STARTED' | 'FAILED' | 'FINISHED'
}): TransitionStatusUpdatedEvent
createEmailRequestedEvent(dto: {
userEmail: string
messageIdentifier: string
level: string
body: string
subject: string
sender?: string
attachments?: Array<{
filePath: string
fileName: string
attachmentFileName: string
attachmentContentType: string
}>
}): EmailRequestedEvent
createDuplicateItemSyncedEvent(dto: {
itemUuid: string
userUuid: string
roleNames: string[]
}): DuplicateItemSyncedEvent
createItemRevisionCreationRequested(dto: {
itemUuid: string
userUuid: string
roleNames: string[]
}): ItemRevisionCreationRequestedEvent
createItemDumpedEvent(dto: { fileDumpPath: string; userUuid: string; roleNames: string[] }): ItemDumpedEvent
createRevisionsCopyRequestedEvent(
userUuid: string,
dto: { originalItemUuid: string; newItemUuid: string; roleNames: string[] },
): RevisionsCopyRequestedEvent
}