diff --git a/src/schema/events/discussion/message.json b/src/schema/events/discussion/message.json new file mode 100644 index 0000000..4732597 --- /dev/null +++ b/src/schema/events/discussion/message.json @@ -0,0 +1,24 @@ +{ + "discussion_message": { + "create": { + "type": "object", + "properties": { + "id": { + "type": "number" + } + }, + "required": ["id"], + "additionalProperties": false + }, + "update": { + "type": "object", + "properties": { + "id": { + "type": "number" + } + }, + "required": ["id"], + "additionalProperties": false + } + } +} diff --git a/src/schema/events/discussion/room.json b/src/schema/events/discussion/room.json new file mode 100644 index 0000000..16103bd --- /dev/null +++ b/src/schema/events/discussion/room.json @@ -0,0 +1,34 @@ +{ + "discussion_room": { + "create": { + "type": "object", + "properties": { + "id": { + "type": "number" + } + }, + "required": ["id"], + "additionalProperties": false + }, + "update": { + "type": "object", + "properties": { + "id": { + "type": "number" + } + }, + "required": ["id"], + "additionalProperties": false + }, + "delete": { + "type": "object", + "properties": { + "id": { + "type": "number" + } + }, + "required": ["id"], + "additionalProperties": false + } + } +} diff --git a/src/schema/events/discussion/unreadMessage.json b/src/schema/events/discussion/unreadMessage.json new file mode 100644 index 0000000..1b9618f --- /dev/null +++ b/src/schema/events/discussion/unreadMessage.json @@ -0,0 +1,24 @@ +{ + "discussion_unread_message": { + "create": { + "type": "object", + "properties": { + "id": { + "type": "number" + } + }, + "required": ["id"], + "additionalProperties": false + }, + "update": { + "type": "object", + "properties": { + "id": { + "type": "number" + } + }, + "required": ["id"], + "additionalProperties": false + } + } +} diff --git a/src/schema/events/index.ts b/src/schema/events/index.ts index 4e3a81e..669dcf8 100644 --- a/src/schema/events/index.ts +++ b/src/schema/events/index.ts @@ -7,3 +7,7 @@ export { adminMessage } from "./adminMessage.json"; export { thirdParty } from "./thirdParty.json"; export { accountingEntryLettering } from "./accountingEntryLettering.json"; export { cloudDocument } from "./cloudDocument.json"; + +export { discussion_room } from "./discussion/room.json"; +export { discussion_message } from "./discussion/message.json"; +export { discussion_unread_message } from "./discussion/unreadMessage.json"; diff --git a/src/types/events.ts b/src/types/events.ts index 1a3c767..275ed6a 100644 --- a/src/types/events.ts +++ b/src/types/events.ts @@ -146,8 +146,8 @@ export type DiscussionRoomOperation = Operation[ export type DiscussionRoomScope = PushNotificationScope; -export interface discussionRoom { - name: "room"; +export interface DiscussionRoom { + name: "discussion_room"; scope: DiscussionRoomScope; operation: DiscussionRoomOperation; data: { @@ -155,6 +155,36 @@ export interface discussionRoom { } } +export type DiscussionMessageOperation = Operation[ + keyof Pick +]; + +export type DiscussionMessageScope = PushNotificationScope; + +export interface DiscussionMessage { + name: "discussion_message"; + scope: DiscussionMessageScope; + operation: DiscussionMessageOperation; + data: { + id: number; + } +} + +export type DiscussionUnreadMessageOperation = Operation[ + keyof Pick +]; + +export type DiscussionUnreadMessageScope = PushNotificationScope; + +export interface DiscussionUnreadMessage { + name: "discussion_unread_message"; + scope: DiscussionUnreadMessageScope; + operation: DiscussionUnreadMessageOperation; + data: { + id: number; + } +} + export interface Events { accountingFolder: AccountingFolder; connector: Connector; @@ -165,4 +195,7 @@ export interface Events { thirdParty: ThirdParty; accountingEntryLettering: AccountingEntryLettering; cloudDocument: CloudDocument; + discussionRoom: DiscussionRoom; + discussionMessage: DiscussionMessage; + discussionUnreadMessage: DiscussionUnreadMessage; }