@rocket.chat/core-typings 6.3.6 → 6.4.0-rc.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.
Files changed (36) hide show
  1. package/CHANGELOG.md +15 -2
  2. package/dist/AppsTokens.d.ts +5 -1
  3. package/dist/IExportOperation.d.ts +2 -2
  4. package/dist/IInquiry.d.ts +11 -11
  5. package/dist/IInquiry.js.map +1 -1
  6. package/dist/IIntegration.d.ts +1 -1
  7. package/dist/ILivechatTrigger.d.ts +2 -1
  8. package/dist/ILivechatTrigger.js +1 -0
  9. package/dist/ILivechatTrigger.js.map +1 -1
  10. package/dist/ILivechatVisitor.d.ts +2 -1
  11. package/dist/ILivechatVisitor.js.map +1 -1
  12. package/dist/IMessage/IMessage.d.ts +6 -6
  13. package/dist/IMessage/MessageAttachment/MessageAttachment.d.ts +2 -2
  14. package/dist/IMessage/MessageAttachment/MessageQuoteAttachment.d.ts +1 -1
  15. package/dist/IModerationReport.d.ts +18 -5
  16. package/dist/IPushNotificationConfig.d.ts +7 -6
  17. package/dist/IReport.d.ts +1 -1
  18. package/dist/IRoom.d.ts +17 -6
  19. package/dist/IRoom.js.map +1 -1
  20. package/dist/ISubscription.d.ts +3 -1
  21. package/dist/IUser.d.ts +2 -1
  22. package/dist/IVideoConference.d.ts +2 -2
  23. package/dist/IVoipConnectorResult.d.ts +1 -1
  24. package/dist/import/IImportRecord.d.ts +2 -2
  25. package/dist/omnichannel/index.d.ts +2 -0
  26. package/dist/omnichannel/index.js +2 -0
  27. package/dist/omnichannel/index.js.map +1 -1
  28. package/dist/omnichannel/queue.d.ts +5 -0
  29. package/dist/omnichannel/queue.js +3 -0
  30. package/dist/omnichannel/queue.js.map +1 -0
  31. package/dist/omnichannel/reports.d.ts +10 -0
  32. package/dist/omnichannel/reports.js +3 -0
  33. package/dist/omnichannel/reports.js.map +1 -0
  34. package/dist/omnichannel/routing.d.ts +23 -0
  35. package/dist/voip/VoipEvents.d.ts +1 -1
  36. package/package.json +7 -7
package/CHANGELOG.md CHANGED
@@ -1,8 +1,21 @@
1
1
  # @rocket.chat/core-typings
2
2
 
3
- ## 6.3.6
3
+ ## 6.4.0-rc.1
4
4
 
5
- ## 6.3.5
5
+ ## 6.4.0-rc.0
6
+
7
+ ### Minor Changes
8
+
9
+ - 239a34e877: new: ring mobile users on direct conference calls
10
+ - 4186eecf05: Introduce the ability to report an user
11
+ - ebab8c4dd8: Added Reports Metrics Dashboard to Omnichannel
12
+
13
+ ### Patch Changes
14
+
15
+ - 203304782f: Fixed `overrideDestinationChannelEnabled` treated as a required param in `integrations.create` and `integration.update` endpoints
16
+ - ba24f3c21f: Fixed `default` field not being returned from the `setDefault` endpoints when setting to false
17
+ - 61128364d6: Fixes a problem where the calculated time for considering the visitor abandonment was the first message from the visitor and not the visitor's reply to the agent.
18
+ - d45365436e: Use group filter when set to LDAP sync process
6
19
 
7
20
  ## 6.3.4
8
21
 
@@ -1,6 +1,10 @@
1
1
  import type { IRocketChatRecord } from './IRocketChatRecord';
2
2
  export interface IAppsTokens extends IRocketChatRecord {
3
- token: string;
3
+ token: {
4
+ apn: string;
5
+ } | {
6
+ gcm: string;
7
+ };
4
8
  authToken: string;
5
9
  appName: string;
6
10
  userId: string | null;
@@ -1,7 +1,7 @@
1
- import type { RoomType } from './RoomType';
2
- import type { IRocketChatRecord } from './IRocketChatRecord';
3
1
  import type { FileProp } from './IMessage/MessageAttachment/Files/FileProp';
2
+ import type { IRocketChatRecord } from './IRocketChatRecord';
4
3
  import type { IUser } from './IUser';
4
+ import type { RoomType } from './RoomType';
5
5
  export interface IExportOperation extends IRocketChatRecord {
6
6
  roomList?: ({
7
7
  roomId: string;
@@ -1,9 +1,10 @@
1
1
  import type { ILivechatPriority } from './ILivechatPriority';
2
- import type { IOmnichannelRoom, OmnichannelSourceType } from './IRoom';
3
- import type { IOmnichannelServiceLevelAgreements } from './IOmnichannelServiceLevelAgreements';
4
- import type { SelectedAgent } from './omnichannel/routing';
2
+ import type { ILivechatVisitor } from './ILivechatVisitor';
5
3
  import type { IMessage } from './IMessage';
4
+ import type { IOmnichannelServiceLevelAgreements } from './IOmnichannelServiceLevelAgreements';
6
5
  import type { IRocketChatRecord } from './IRocketChatRecord';
6
+ import type { IOmnichannelRoom, OmnichannelSourceType } from './IRoom';
7
+ import type { SelectedAgent } from './omnichannel/routing';
7
8
  export interface IInquiry {
8
9
  _id: string;
9
10
  _updatedAt?: Date;
@@ -29,17 +30,19 @@ export interface ILivechatInquiryRecord extends IRocketChatRecord {
29
30
  ts: Date;
30
31
  message: string;
31
32
  status: LivechatInquiryStatus;
32
- v: IVisitor;
33
+ v: Pick<ILivechatVisitor, '_id' | 'username' | 'status' | 'name' | 'token' | 'phone'> & {
34
+ lastMessageTs?: Date;
35
+ };
33
36
  t: 'l';
34
- department: string;
35
- estimatedInactivityCloseTimeAt: Date;
37
+ department?: string;
38
+ estimatedInactivityCloseTimeAt?: Date;
36
39
  locked?: boolean;
37
40
  lockedAt?: Date;
38
41
  lastMessage?: IMessage & {
39
42
  token?: string;
40
43
  };
41
44
  defaultAgent?: SelectedAgent;
42
- source: {
45
+ source?: {
43
46
  type: OmnichannelSourceType;
44
47
  };
45
48
  priorityId?: IOmnichannelRoom['priorityId'];
@@ -49,8 +52,5 @@ export interface ILivechatInquiryRecord extends IRocketChatRecord {
49
52
  }
50
53
  export type InquiryWithAgentInfo = Pick<ILivechatInquiryRecord, '_id' | 'rid' | 'name' | 'ts' | 'status' | 'department' | 'v'> & {
51
54
  position?: number;
52
- defaultAgent?: {
53
- username: string;
54
- agentId: string;
55
- };
55
+ defaultAgent?: SelectedAgent;
56
56
  };
@@ -1 +1 @@
1
- {"version":3,"file":"IInquiry.js","sourceRoot":"","sources":["../src/IInquiry.ts"],"names":[],"mappings":";;;AAaA,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAChC,0CAAiB,CAAA;IACjB,wCAAe,CAAA;IACf,wCAAe,CAAA;IACf,sCAAa,CAAA;AACd,CAAC,EALW,qBAAqB,qCAArB,qBAAqB,QAKhC"}
1
+ {"version":3,"file":"IInquiry.js","sourceRoot":"","sources":["../src/IInquiry.ts"],"names":[],"mappings":";;;AAcA,IAAY,qBAKX;AALD,WAAY,qBAAqB;IAChC,0CAAiB,CAAA;IACjB,wCAAe,CAAA;IACf,wCAAe,CAAA;IACf,sCAAa,CAAA;AACd,CAAC,EALW,qBAAqB,qCAArB,qBAAqB,QAKhC"}
@@ -8,13 +8,13 @@ export interface IIncomingIntegration extends IRocketChatRecord {
8
8
  username: string;
9
9
  channel: string[];
10
10
  token: string;
11
- overrideDestinationChannelEnabled: boolean;
12
11
  scriptEnabled: boolean;
13
12
  script: string;
14
13
  scriptCompiled?: string;
15
14
  scriptError?: Pick<Error, 'name' | 'message' | 'stack'>;
16
15
  name: string;
17
16
  enabled: boolean;
17
+ overrideDestinationChannelEnabled?: boolean;
18
18
  alias?: string;
19
19
  avatar?: string;
20
20
  emoji?: string;
@@ -2,7 +2,8 @@ import type { IRocketChatRecord } from './IRocketChatRecord';
2
2
  export declare enum ILivechatTriggerType {
3
3
  TIME_ON_SITE = "time-on-site",
4
4
  PAGE_URL = "page-url",
5
- CHAT_OPENED_BY_VISITOR = "chat-opened-by-visitor"
5
+ CHAT_OPENED_BY_VISITOR = "chat-opened-by-visitor",
6
+ AFTER_GUEST_REGISTRATION = "after-guest-registration"
6
7
  }
7
8
  export interface ILivechatTriggerCondition {
8
9
  name: ILivechatTriggerType;
@@ -6,5 +6,6 @@ var ILivechatTriggerType;
6
6
  ILivechatTriggerType["TIME_ON_SITE"] = "time-on-site";
7
7
  ILivechatTriggerType["PAGE_URL"] = "page-url";
8
8
  ILivechatTriggerType["CHAT_OPENED_BY_VISITOR"] = "chat-opened-by-visitor";
9
+ ILivechatTriggerType["AFTER_GUEST_REGISTRATION"] = "after-guest-registration";
9
10
  })(ILivechatTriggerType || (exports.ILivechatTriggerType = ILivechatTriggerType = {}));
10
11
  //# sourceMappingURL=ILivechatTrigger.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ILivechatTrigger.js","sourceRoot":"","sources":["../src/ILivechatTrigger.ts"],"names":[],"mappings":";;;AAEA,IAAY,oBAIX;AAJD,WAAY,oBAAoB;IAC/B,qDAA6B,CAAA;IAC7B,6CAAqB,CAAA;IACrB,yEAAiD,CAAA;AAClD,CAAC,EAJW,oBAAoB,oCAApB,oBAAoB,QAI/B"}
1
+ {"version":3,"file":"ILivechatTrigger.js","sourceRoot":"","sources":["../src/ILivechatTrigger.ts"],"names":[],"mappings":";;;AAEA,IAAY,oBAKX;AALD,WAAY,oBAAoB;IAC/B,qDAA6B,CAAA;IAC7B,6CAAqB,CAAA;IACrB,yEAAiD,CAAA;IACjD,6EAAqD,CAAA;AACtD,CAAC,EALW,oBAAoB,oCAApB,oBAAoB,QAK/B"}
@@ -1,4 +1,5 @@
1
1
  import type { IRocketChatRecord } from './IRocketChatRecord';
2
+ import type { UserStatus } from './UserStatus';
2
3
  export interface IVisitorPhone {
3
4
  phoneNumber: string;
4
5
  }
@@ -30,7 +31,7 @@ export interface ILivechatVisitor extends IRocketChatRecord {
30
31
  ip?: string;
31
32
  host?: string;
32
33
  visitorEmails?: IVisitorEmail[];
33
- status?: 'loading' | 'online' | 'busy' | 'away' | 'offline';
34
+ status?: UserStatus;
34
35
  lastAgent?: {
35
36
  username: string;
36
37
  agentId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ILivechatVisitor.js","sourceRoot":"","sources":["../src/ILivechatVisitor.ts"],"names":[],"mappings":";;;AAoEO,MAAM,kBAAkB,GAAG,CAAC,CAAM,EAAyB,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,QAAQ,CAAC;AAArF,QAAA,kBAAkB,sBAAmE"}
1
+ {"version":3,"file":"ILivechatVisitor.js","sourceRoot":"","sources":["../src/ILivechatVisitor.ts"],"names":[],"mappings":";;;AAqEO,MAAM,kBAAkB,GAAG,CAAC,CAAM,EAAyB,EAAE,CAAC,OAAO,CAAC,EAAE,KAAK,KAAK,QAAQ,CAAC;AAArF,QAAA,kBAAkB,sBAAmE"}
@@ -1,16 +1,16 @@
1
1
  /// <reference types="node" />
2
2
  import type { UrlWithStringQuery } from 'url';
3
3
  import type Icons from '@rocket.chat/icons';
4
- import type { MessageSurfaceLayout } from '@rocket.chat/ui-kit';
5
4
  import type { Root } from '@rocket.chat/message-parser';
5
+ import type { MessageSurfaceLayout } from '@rocket.chat/ui-kit';
6
+ import type { ILivechatPriority } from '../ILivechatPriority';
7
+ import type { ILivechatVisitor } from '../ILivechatVisitor';
8
+ import type { IOmnichannelServiceLevelAgreements } from '../IOmnichannelServiceLevelAgreements';
6
9
  import type { IRocketChatRecord } from '../IRocketChatRecord';
7
- import type { IUser } from '../IUser';
8
10
  import type { IRoom, RoomID } from '../IRoom';
9
- import type { MessageAttachment } from './MessageAttachment/MessageAttachment';
11
+ import type { IUser } from '../IUser';
10
12
  import type { FileProp } from './MessageAttachment/Files/FileProp';
11
- import type { ILivechatVisitor } from '../ILivechatVisitor';
12
- import type { IOmnichannelServiceLevelAgreements } from '../IOmnichannelServiceLevelAgreements';
13
- import type { ILivechatPriority } from '../ILivechatPriority';
13
+ import type { MessageAttachment } from './MessageAttachment/MessageAttachment';
14
14
  type MentionType = 'user' | 'team';
15
15
  type MessageUrl = {
16
16
  url: string;
@@ -1,5 +1,5 @@
1
- import type { MessageAttachmentDefault } from './MessageAttachmentDefault';
2
1
  import type { FileAttachmentProps } from './Files/FileAttachmentProps';
3
- import type { MessageQuoteAttachment } from './MessageQuoteAttachment';
4
2
  import type { MessageAttachmentAction } from './MessageAttachmentAction';
3
+ import type { MessageAttachmentDefault } from './MessageAttachmentDefault';
4
+ import type { MessageQuoteAttachment } from './MessageQuoteAttachment';
5
5
  export type MessageAttachment = MessageAttachmentAction | MessageAttachmentDefault | FileAttachmentProps | MessageQuoteAttachment;
@@ -1,6 +1,6 @@
1
1
  import type { Root } from '@rocket.chat/message-parser';
2
- import type { MessageAttachmentBase } from './MessageAttachmentBase';
3
2
  import type { MessageAttachment } from './MessageAttachment';
3
+ import type { MessageAttachmentBase } from './MessageAttachmentBase';
4
4
  export type MessageQuoteAttachment = {
5
5
  author_name: string;
6
6
  author_link: string;
@@ -1,7 +1,12 @@
1
- import type { IRocketChatRecord } from './IRocketChatRecord';
2
1
  import type { IMessage } from './IMessage/IMessage';
3
- import type { IUser } from './IUser';
2
+ import type { IRocketChatRecord } from './IRocketChatRecord';
4
3
  import type { IRoom } from './IRoom';
4
+ import type { IUser } from './IUser';
5
+ /**
6
+ * Right now we're assuming neither Room Info or User Info changes.
7
+ * There's no update method referencing reports as of now (6.3.0-develop).
8
+ * This means that a possible user or room change will not be reflected in the report.
9
+ */
5
10
  export interface IModerationInfo {
6
11
  moderatedBy: IUser['_id'];
7
12
  hiddenAt: Date;
@@ -9,14 +14,22 @@ export interface IModerationInfo {
9
14
  reason: string;
10
15
  }
11
16
  export interface IModerationReport extends IRocketChatRecord {
12
- message: IMessage;
17
+ message?: IMessage;
18
+ room?: Pick<IRoom, '_id' | 'name' | 'fname' | 't' | 'federated' | 'prid'>;
19
+ reportedUser?: Pick<IUser, '_id' | 'username' | 'name' | 'emails' | 'createdAt'>;
13
20
  description: string;
14
21
  ts: Date | string;
15
- room: Pick<IRoom, '_id' | 'name' | 'fname' | 't' | 'federated' | 'prid'>;
16
22
  reportedBy: Pick<IUser, '_id' | 'username' | 'name' | 'createdAt'>;
17
23
  moderationInfo?: IModerationInfo;
18
24
  _hidden?: boolean;
19
25
  }
26
+ export type MessageReport = Omit<IModerationReport, 'reportedUser'> & {
27
+ room: Exclude<IModerationReport['room'], undefined>;
28
+ message: Exclude<IModerationReport['message'], undefined>;
29
+ };
30
+ export type UserReport = Omit<IModerationReport, 'message' | 'room'> & {
31
+ reportedUser: Exclude<IModerationReport['reportedUser'], undefined>;
32
+ };
20
33
  export interface IModerationAudit {
21
34
  userId: IUser['_id'];
22
35
  username: IUser['username'];
@@ -25,7 +38,7 @@ export interface IModerationAudit {
25
38
  msgId: IMessage['_id'];
26
39
  roomIds: IRoom['_id'][];
27
40
  ts: IModerationReport['ts'];
28
- rooms: IModerationReport['room'][];
41
+ rooms: MessageReport['room'][];
29
42
  count: number;
30
43
  isUserDeleted: boolean;
31
44
  }
@@ -1,18 +1,19 @@
1
1
  export interface IPushNotificationConfig {
2
2
  from: string;
3
- badge: number;
4
- sound: string;
5
- priority: number;
3
+ badge?: number;
4
+ sound?: string;
5
+ priority?: number;
6
6
  title: string;
7
7
  text: string;
8
- payload: Record<string, any>;
8
+ payload?: Record<string, any>;
9
9
  userId: string;
10
- notId: number;
11
- gcm: {
10
+ notId?: number;
11
+ gcm?: {
12
12
  style: string;
13
13
  image: string;
14
14
  };
15
15
  apn?: {
16
16
  category: string;
17
+ topicSuffix?: string;
17
18
  };
18
19
  }
package/dist/IReport.d.ts CHANGED
@@ -1,5 +1,5 @@
1
- import type { IRocketChatRecord } from './IRocketChatRecord';
2
1
  import type { IMessage } from './IMessage/IMessage';
2
+ import type { IRocketChatRecord } from './IRocketChatRecord';
3
3
  export interface IReport extends IRocketChatRecord {
4
4
  message: IMessage;
5
5
  description: string;
package/dist/IRoom.d.ts CHANGED
@@ -1,10 +1,10 @@
1
1
  import type { ILivechatPriority } from './ILivechatPriority';
2
+ import type { ILivechatVisitor } from './ILivechatVisitor';
3
+ import type { IMessage, MessageTypesValues } from './IMessage';
2
4
  import type { IOmnichannelServiceLevelAgreements } from './IOmnichannelServiceLevelAgreements';
3
5
  import type { IRocketChatRecord } from './IRocketChatRecord';
4
- import type { IMessage, MessageTypesValues } from './IMessage';
5
6
  import type { IUser, Username } from './IUser';
6
7
  import type { RoomType } from './RoomType';
7
- import type { IVisitor } from './IInquiry';
8
8
  type CallStatus = 'ringing' | 'ended' | 'declined' | 'ongoing';
9
9
  export type RoomID = string;
10
10
  export type ChannelName = string;
@@ -20,7 +20,7 @@ export interface IRoom extends IRocketChatRecord {
20
20
  name?: string;
21
21
  fname?: string;
22
22
  msgs: number;
23
- default?: true;
23
+ default?: boolean;
24
24
  broadcast?: true;
25
25
  featured?: true;
26
26
  announcement?: string;
@@ -120,7 +120,10 @@ export declare enum OmnichannelSourceType {
120
120
  }
121
121
  export interface IOmnichannelGenericRoom extends Omit<IRoom, 'default' | 'featured' | 'broadcast' | ''> {
122
122
  t: 'l' | 'v';
123
- v: IVisitor;
123
+ v: Pick<ILivechatVisitor, '_id' | 'username' | 'status' | 'name' | 'token'> & {
124
+ lastMessageTs?: Date;
125
+ phone?: string;
126
+ };
124
127
  email?: {
125
128
  inbox: string;
126
129
  thread: string[];
@@ -152,7 +155,12 @@ export interface IOmnichannelGenericRoom extends Omit<IRoom, 'default' | 'featur
152
155
  serviceTimeDuration?: number;
153
156
  };
154
157
  waitingResponse: any;
155
- responseBy: any;
158
+ responseBy?: {
159
+ _id: string;
160
+ username: string;
161
+ firstResponseTs: Date;
162
+ lastMessageTs: Date;
163
+ };
156
164
  livechatData: any;
157
165
  queuedAt?: Date;
158
166
  status?: 'queued' | 'taken' | 'ready';
@@ -207,7 +215,10 @@ export interface IVoipRoom extends IOmnichannelGenericRoom {
207
215
  callTotalHoldTime?: number;
208
216
  queue: string;
209
217
  callUniqueId?: string;
210
- v: IVisitor;
218
+ v: Pick<ILivechatVisitor, '_id' | 'username' | 'status' | 'name' | 'token'> & {
219
+ lastMessageTs?: Date;
220
+ phone?: string;
221
+ };
211
222
  direction: 'inbound' | 'outbound';
212
223
  }
213
224
  export interface IOmnichannelRoomFromAppSource extends IOmnichannelRoom {
package/dist/IRoom.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"IRoom.js","sourceRoot":"","sources":["../src/IRoom.ts"],"names":[],"mappings":";;;AAmGO,MAAM,kBAAkB,GAAG,CAAC,IAAoB,EAA6B,EAAE,CACrF,kBAAkB,IAAI,IAAI,IAAK,IAAY,CAAC,gBAAgB,KAAK,IAAI,CAAC;AAD1D,QAAA,kBAAkB,sBACwC;AAWhE,MAAM,eAAe,GAAG,CAAC,IAAoB,EAA0B,EAAE,CAAC,WAAW,IAAI,IAAI,IAAK,IAAY,CAAC,SAAS,KAAK,IAAI,CAAC;AAA5H,QAAA,eAAe,mBAA6G;AAWlI,MAAM,UAAU,GAAG,CAAC,IAAoB,EAAqB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;AAA1E,QAAA,UAAU,cAAgE;AAChF,MAAM,iBAAiB,GAAG,CAAC,IAAoB,EAAqB,EAAE,CAAC,IAAA,kBAAU,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAApG,QAAA,iBAAiB,qBAAmF;AAC1G,MAAM,gBAAgB,GAAG,CAAC,IAAoB,EAAqB,EAAE,CAAC,IAAA,kBAAU,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAnG,QAAA,gBAAgB,oBAAmF;AAEzG,MAAM,YAAY,GAAG,CAAC,IAAoB,EAAiB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AAApE,QAAA,YAAY,gBAAwD;AAC1E,MAAM,mBAAmB,GAAG,CAAC,IAAoB,EAAiB,EAAE,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAApG,QAAA,mBAAmB,uBAAiF;AAC1G,MAAM,kBAAkB,GAAG,CAAC,IAAoB,EAAiB,EAAE,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAnG,QAAA,kBAAkB,sBAAiF;AAEzG,MAAM,YAAY,GAAG,CAAC,IAAoB,EAAiB,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAvE,QAAA,YAAY,gBAA2D;AAQ7E,MAAM,mBAAmB,GAAG,CAAC,IAAyC,EAA8B,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAhH,QAAA,mBAAmB,uBAA6F;AACtH,MAAM,2BAA2B,GAAG,CAAC,IAAgC,EAA8B,EAAE,CAC3G,IAAA,2BAAmB,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AADtC,QAAA,2BAA2B,+BACW;AAEnD,IAAY,qBAOX;AAPD,WAAY,qBAAqB;IAChC,0CAAiB,CAAA;IACjB,wCAAe,CAAA;IACf,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,wCAAe,CAAA;AAChB,CAAC,EAPW,qBAAqB,qCAArB,qBAAqB,QAOhC;AA2JM,MAAM,iBAAiB,GAAG,CAAC,IAAsB,EAAoC,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAjG,QAAA,iBAAiB,qBAAgF;AAEvG,MAAM,UAAU,GAAG,CAAC,IAAW,EAA6B,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAxE,QAAA,UAAU,cAA8D;AAE9E,MAAM,8BAA8B,GAAG,CAAC,IAAW,EAAyC,EAAE;IACpG,IAAI,CAAC,IAAA,yBAAiB,EAAC,IAAI,CAAC,EAAE;QAC7B,OAAO,KAAK,CAAC;KACb;IAED,OAAO,IAAI,CAAC,MAAM,EAAE,IAAI,KAAK,qBAAqB,CAAC,GAAG,CAAC;AACxD,CAAC,CAAC;AANW,QAAA,8BAA8B,kCAMzC"}
1
+ {"version":3,"file":"IRoom.js","sourceRoot":"","sources":["../src/IRoom.ts"],"names":[],"mappings":";;;AAmGO,MAAM,kBAAkB,GAAG,CAAC,IAAoB,EAA6B,EAAE,CACrF,kBAAkB,IAAI,IAAI,IAAK,IAAY,CAAC,gBAAgB,KAAK,IAAI,CAAC;AAD1D,QAAA,kBAAkB,sBACwC;AAWhE,MAAM,eAAe,GAAG,CAAC,IAAoB,EAA0B,EAAE,CAAC,WAAW,IAAI,IAAI,IAAK,IAAY,CAAC,SAAS,KAAK,IAAI,CAAC;AAA5H,QAAA,eAAe,mBAA6G;AAWlI,MAAM,UAAU,GAAG,CAAC,IAAoB,EAAqB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;AAA1E,QAAA,UAAU,cAAgE;AAChF,MAAM,iBAAiB,GAAG,CAAC,IAAoB,EAAqB,EAAE,CAAC,IAAA,kBAAU,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAApG,QAAA,iBAAiB,qBAAmF;AAC1G,MAAM,gBAAgB,GAAG,CAAC,IAAoB,EAAqB,EAAE,CAAC,IAAA,kBAAU,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAnG,QAAA,gBAAgB,oBAAmF;AAEzG,MAAM,YAAY,GAAG,CAAC,IAAoB,EAAiB,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AAApE,QAAA,YAAY,gBAAwD;AAC1E,MAAM,mBAAmB,GAAG,CAAC,IAAoB,EAAiB,EAAE,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAApG,QAAA,mBAAmB,uBAAiF;AAC1G,MAAM,kBAAkB,GAAG,CAAC,IAAoB,EAAiB,EAAE,CAAC,IAAA,oBAAY,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAnG,QAAA,kBAAkB,sBAAiF;AAEzG,MAAM,YAAY,GAAG,CAAC,IAAoB,EAAiB,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAvE,QAAA,YAAY,gBAA2D;AAQ7E,MAAM,mBAAmB,GAAG,CAAC,IAAyC,EAA8B,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAhH,QAAA,mBAAmB,uBAA6F;AACtH,MAAM,2BAA2B,GAAG,CAAC,IAAgC,EAA8B,EAAE,CAC3G,IAAA,2BAAmB,EAAC,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;AADtC,QAAA,2BAA2B,+BACW;AAEnD,IAAY,qBAOX;AAPD,WAAY,qBAAqB;IAChC,0CAAiB,CAAA;IACjB,wCAAe,CAAA;IACf,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,oCAAW,CAAA;IACX,wCAAe,CAAA;AAChB,CAAC,EAPW,qBAAqB,qCAArB,qBAAqB,QAOhC;AA2KM,MAAM,iBAAiB,GAAG,CAAC,IAAsB,EAAoC,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAjG,QAAA,iBAAiB,qBAAgF;AAEvG,MAAM,UAAU,GAAG,CAAC,IAAW,EAA6B,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AAAxE,QAAA,UAAU,cAA8D;AAE9E,MAAM,8BAA8B,GAAG,CAAC,IAAW,EAAyC,EAAE;IACpG,IAAI,CAAC,IAAA,yBAAiB,EAAC,IAAI,CAAC,EAAE;QAC7B,OAAO,KAAK,CAAC;KACb;IAED,OAAO,IAAI,CAAC,MAAM,EAAE,IAAI,KAAK,qBAAqB,CAAC,GAAG,CAAC;AACxD,CAAC,CAAC;AANW,QAAA,8BAA8B,kCAMzC"}
@@ -5,7 +5,9 @@ import type { RoomType } from './RoomType';
5
5
  type RoomID = string;
6
6
  export interface ISubscription extends IRocketChatRecord {
7
7
  u: Pick<IUser, '_id' | 'username' | 'name'>;
8
- v?: Pick<IUser, '_id' | 'username' | 'name'>;
8
+ v?: Pick<IUser, '_id' | 'username' | 'name' | 'status'> & {
9
+ token?: string;
10
+ };
9
11
  rid: RoomID;
10
12
  open: boolean;
11
13
  ts: Date;
package/dist/IUser.d.ts CHANGED
@@ -1,6 +1,6 @@
1
- import type { UserStatus } from './UserStatus';
2
1
  import type { IRocketChatRecord } from './IRocketChatRecord';
3
2
  import type { IRole } from './IRole';
3
+ import type { UserStatus } from './UserStatus';
4
4
  export interface ILoginToken {
5
5
  hashedToken: string;
6
6
  twoFactorAuthorizedUntil?: Date;
@@ -194,6 +194,7 @@ export type AvatarServiceObject = {
194
194
  blob: Blob;
195
195
  contentType: string;
196
196
  service: string;
197
+ url: string;
197
198
  };
198
199
  export type AvatarObject = AvatarReset | AvatarUrlObj | FormData | AvatarServiceObject;
199
200
  export {};
@@ -1,8 +1,8 @@
1
- import type { AtLeast } from './utils';
1
+ import type { IMessage } from './IMessage';
2
2
  import type { IRocketChatRecord } from './IRocketChatRecord';
3
3
  import type { IRoom } from './IRoom';
4
4
  import type { IUser } from './IUser';
5
- import type { IMessage } from './IMessage';
5
+ import type { AtLeast } from './utils';
6
6
  export declare enum VideoConferenceStatus {
7
7
  CALLING = 0,
8
8
  STARTED = 1,
@@ -1,5 +1,5 @@
1
- import type { IVoipExtensionConfig, IVoipExtensionBase, IQueueMembershipDetails, IQueueMembershipSubscription } from './IVoipExtension';
2
1
  import type { IQueueDetails, IQueueSummary } from './ACDQueues';
2
+ import type { IVoipExtensionConfig, IVoipExtensionBase, IQueueMembershipDetails, IQueueMembershipSubscription } from './IVoipExtension';
3
3
  import type { IRegistrationInfo } from './voip';
4
4
  export interface IVoipConnectorResult {
5
5
  result: IVoipExtensionConfig | IVoipExtensionBase[] | IQueueSummary[] | IQueueDetails | IQueueMembershipDetails | IQueueMembershipSubscription | IRegistrationInfo | undefined;
@@ -1,13 +1,13 @@
1
- import type { IImportUser } from './IImportUser';
2
1
  import type { IImportChannel } from './IImportChannel';
3
2
  import type { IImportMessage } from './IImportMessage';
3
+ import type { IImportUser } from './IImportUser';
4
4
  export type IImportRecordType = 'user' | 'channel' | 'message';
5
5
  export type IImportData = IImportUser | IImportChannel | IImportMessage;
6
6
  export interface IImportRecord {
7
7
  data: IImportData;
8
8
  dataType: IImportRecordType;
9
9
  _id: string;
10
- options?: Record<string, unknown>;
10
+ options?: Record<string, any>;
11
11
  errors?: Array<{
12
12
  message: string;
13
13
  stack?: string;
@@ -1,2 +1,4 @@
1
1
  export * from './sms';
2
2
  export * from './routing';
3
+ export * from './queue';
4
+ export * from './reports';
@@ -16,4 +16,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./sms"), exports);
18
18
  __exportStar(require("./routing"), exports);
19
+ __exportStar(require("./queue"), exports);
20
+ __exportStar(require("./reports"), exports);
19
21
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/omnichannel/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,4CAA0B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/omnichannel/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,wCAAsB;AACtB,4CAA0B;AAC1B,0CAAwB;AACxB,4CAA0B"}
@@ -0,0 +1,5 @@
1
+ export interface IOmnichannelQueue {
2
+ start(): Promise<void>;
3
+ shouldStart(): void;
4
+ stop(): Promise<void>;
5
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=queue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queue.js","sourceRoot":"","sources":["../../src/omnichannel/queue.ts"],"names":[],"mappings":""}
@@ -0,0 +1,10 @@
1
+ export type ReportResult = {
2
+ total: number;
3
+ data: {
4
+ label: string;
5
+ value: number;
6
+ }[];
7
+ };
8
+ export type ReportWithUnmatchingElements = ReportResult & {
9
+ unspecified: number;
10
+ };
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=reports.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reports.js","sourceRoot":"","sources":["../../src/omnichannel/reports.ts"],"names":[],"mappings":""}
@@ -1,3 +1,4 @@
1
+ import type { ILivechatDepartment } from '../ILivechatDepartment';
1
2
  export interface IRoutingMethodConstructor {
2
3
  new (): IRoutingMethod;
3
4
  }
@@ -18,3 +19,25 @@ export interface IRoutingMethod {
18
19
  getNextAgent(departmentId?: string, ignoreAgentId?: string): Promise<SelectedAgent | null | undefined>;
19
20
  config?: RoutingMethodConfig;
20
21
  }
22
+ export type TransferData = {
23
+ userId: string;
24
+ departmentId?: string;
25
+ department?: Pick<ILivechatDepartment, '_id' | 'name'>;
26
+ transferredBy: {
27
+ _id: string;
28
+ username?: string;
29
+ };
30
+ transferredTo?: {
31
+ username?: string;
32
+ name?: string;
33
+ };
34
+ clientAction?: boolean;
35
+ scope: 'agent' | 'department' | 'queue' | 'autoTransferUnansweredChatsToAgent' | 'autoTransferUnansweredChatsToQueue';
36
+ comment?: string;
37
+ };
38
+ export type TransferByData = {
39
+ _id: string;
40
+ username?: string;
41
+ name?: string;
42
+ userType?: 'agent' | 'user' | 'visitor';
43
+ };
@@ -1,5 +1,5 @@
1
- import type { ICallerInfo } from './ICallerInfo';
2
1
  import type { ICallDetails } from './ICallDetails';
2
+ import type { ICallerInfo } from './ICallerInfo';
3
3
  export type VoipEvents = {
4
4
  registered: undefined;
5
5
  registrationerror: unknown;
package/package.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "@rocket.chat/core-typings",
3
- "version": "6.3.6",
3
+ "version": "6.4.0-rc.1",
4
4
  "devDependencies": {
5
- "@rocket.chat/eslint-config": "^0.5.0",
6
- "eslint": "~8.43.0",
5
+ "@rocket.chat/eslint-config": "^0.6.0-rc.0",
6
+ "eslint": "~8.45.0",
7
7
  "mongodb": "^4.12.1",
8
8
  "prettier": "~2.8.8",
9
- "typescript": "~5.1.3"
9
+ "typescript": "~5.2.2"
10
10
  },
11
11
  "scripts": {
12
12
  "lint": "eslint --ext .js,.jsx,.ts,.tsx .",
@@ -21,9 +21,9 @@
21
21
  "/dist"
22
22
  ],
23
23
  "dependencies": {
24
- "@rocket.chat/apps-engine": "1.40.0",
25
- "@rocket.chat/icons": "0.31.24",
26
- "@rocket.chat/message-parser": "0.31.24",
24
+ "@rocket.chat/apps-engine": "1.41.0-alpha.290",
25
+ "@rocket.chat/icons": "next",
26
+ "@rocket.chat/message-parser": "next",
27
27
  "@rocket.chat/ui-kit": "next"
28
28
  },
29
29
  "volta": {