@trii/types 2.10.764 → 2.10.766

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 (111) hide show
  1. package/dist/Automations/Events/Event.d.ts +3 -3
  2. package/dist/Common/Messages/Message.d.ts +1 -0
  3. package/dist/Common/index.js +7 -17
  4. package/dist/Contacts/CommunicationEndpoint.d.ts +8 -8
  5. package/dist/Conversations/Classifications/ConversationClassificationEvents.d.ts +2 -2
  6. package/dist/Conversations/Conversation.d.ts +11 -11
  7. package/dist/Conversations/InboxMongo.d.ts +12 -12
  8. package/dist/Conversations/InboxQueries.d.ts +73 -3
  9. package/dist/Conversations/Routing.d.ts +10 -10
  10. package/dist/Conversations/index.js +7 -17
  11. package/dist/Events/DomainEventTypes.d.ts +23 -23
  12. package/dist/Spaces/spaces.d.ts +2 -2
  13. package/dist/Tickets/Automation.d.ts +2 -0
  14. package/dist/Tickets/Automation.js +2 -0
  15. package/dist/Tickets/Routing.d.ts +9 -0
  16. package/dist/Tickets/Workflow.d.ts +3 -1
  17. package/dist/Tickets/Workflow.js +2 -0
  18. package/dist/index.js +7 -17
  19. package/dist/src/Automations/Capabilities/Capability.d.ts +81 -0
  20. package/dist/src/Automations/Capabilities/Capability.js +23 -0
  21. package/dist/src/Automations/Capabilities/index.d.ts +1 -0
  22. package/dist/src/Automations/Capabilities/index.js +17 -0
  23. package/dist/src/Automations/Common.d.ts +94 -0
  24. package/dist/src/Automations/Common.js +40 -0
  25. package/dist/src/Automations/Events/Event.d.ts +69 -0
  26. package/dist/src/Automations/Events/Event.js +14 -0
  27. package/dist/src/Automations/Events/index.d.ts +1 -0
  28. package/dist/src/Automations/Events/index.js +17 -0
  29. package/dist/src/Automations/Executions/Execution.d.ts +254 -0
  30. package/dist/src/Automations/Executions/Execution.js +62 -0
  31. package/dist/src/Automations/Executions/Testing.d.ts +166 -0
  32. package/dist/src/Automations/Executions/Testing.js +54 -0
  33. package/dist/src/Automations/Executions/index.d.ts +2 -0
  34. package/dist/src/Automations/Executions/index.js +18 -0
  35. package/dist/src/Automations/Flows/Canvas.d.ts +103 -0
  36. package/dist/src/Automations/Flows/Canvas.js +38 -0
  37. package/dist/src/Automations/Flows/Flow.d.ts +147 -0
  38. package/dist/src/Automations/Flows/Flow.js +58 -0
  39. package/dist/src/Automations/Flows/Requests.d.ts +71 -0
  40. package/dist/src/Automations/Flows/Validation.d.ts +28 -0
  41. package/dist/src/Automations/Flows/Validation.js +9 -0
  42. package/dist/src/Automations/Flows/index.d.ts +4 -0
  43. package/dist/src/Automations/Flows/index.js +20 -0
  44. package/dist/src/Automations/Nodes/Node.d.ts +113 -0
  45. package/dist/src/Automations/Nodes/Node.js +27 -0
  46. package/dist/src/Automations/Nodes/index.d.ts +1 -0
  47. package/dist/src/Automations/Nodes/index.js +17 -0
  48. package/dist/src/Automations/index.d.ts +6 -0
  49. package/dist/src/Automations/index.js +22 -0
  50. package/dist/src/Chats/Chat.d.ts +61 -0
  51. package/dist/src/Chats/Chat.js +28 -0
  52. package/dist/src/Common/Channels/Channel.d.ts +28 -1
  53. package/dist/src/Contacts/contacts.d.ts +2 -2
  54. package/dist/src/Conversations/Assignment.d.ts +81 -0
  55. package/dist/src/Conversations/Assignment.js +4 -0
  56. package/dist/src/Conversations/Conversation.d.ts +331 -48
  57. package/dist/src/Conversations/Conversation.js +14 -34
  58. package/dist/src/Conversations/DashBoard/dashboard.d.ts +2 -2
  59. package/dist/src/Conversations/Flows/Workflows/Workflow.d.ts +280 -123
  60. package/dist/src/Conversations/Flows/Workflows/Workflow.js +85 -35
  61. package/dist/src/Conversations/Groups/Group.d.ts +2 -8
  62. package/dist/src/Conversations/Groups/Group.js +0 -6
  63. package/dist/src/Conversations/InboxMongo.d.ts +154 -0
  64. package/dist/src/Conversations/InboxMongo.js +128 -0
  65. package/dist/src/Conversations/InboxProjection.d.ts +162 -0
  66. package/dist/src/Conversations/InboxProjection.js +2 -0
  67. package/dist/src/Conversations/Label.d.ts +1 -1
  68. package/dist/src/Conversations/Outbox.d.ts +24 -0
  69. package/dist/src/Conversations/Outbox.js +4 -0
  70. package/dist/src/Conversations/Queue.d.ts +107 -0
  71. package/dist/src/Conversations/Queue.js +4 -0
  72. package/dist/src/Conversations/Routing.d.ts +164 -0
  73. package/dist/src/Conversations/Routing.js +2 -0
  74. package/dist/src/Conversations/Sla.d.ts +227 -0
  75. package/dist/src/Conversations/Sla.js +6 -0
  76. package/dist/src/Conversations/Transfer.d.ts +73 -0
  77. package/dist/src/Conversations/Transfer.js +2 -0
  78. package/dist/src/Conversations/WebHook.d.ts +1 -1
  79. package/dist/src/Conversations/index.d.ts +9 -1
  80. package/dist/src/Conversations/index.js +9 -1
  81. package/dist/src/Forms/API.d.ts +53 -0
  82. package/dist/src/Forms/API.js +2 -0
  83. package/dist/src/Forms/SubmittedForm.d.ts +56 -0
  84. package/dist/src/Forms/SubmittedForm.js +9 -0
  85. package/dist/src/Forms/index.d.ts +2 -0
  86. package/dist/src/Forms/index.js +18 -0
  87. package/dist/src/Presence/AgentPause.d.ts +24 -0
  88. package/dist/src/Presence/AgentPause.js +19 -0
  89. package/dist/src/Presence/QueueParticipation.d.ts +17 -0
  90. package/dist/src/Presence/QueueParticipation.js +2 -0
  91. package/dist/src/Presence/QueueRoutingState.d.ts +27 -0
  92. package/dist/src/Presence/QueueRoutingState.js +9 -0
  93. package/dist/src/Presence/index.d.ts +3 -0
  94. package/dist/src/Presence/index.js +19 -0
  95. package/dist/src/Tickets/Category.d.ts +18 -0
  96. package/dist/src/Tickets/Dashboard.d.ts +78 -0
  97. package/dist/src/Tickets/Dashboard.js +13 -1
  98. package/dist/src/Tickets/Fields.d.ts +1 -0
  99. package/dist/src/Tickets/Layouts.d.ts +3 -1
  100. package/dist/src/Tickets/Workflow.d.ts +20 -0
  101. package/dist/src/Users/UserTrii.d.ts +10 -0
  102. package/dist/src/Users/UserTrii.js +8 -1
  103. package/dist/src/index.d.ts +3 -0
  104. package/dist/src/index.js +4 -1
  105. package/package.json +5 -2
  106. package/dist/Conversations/DashBoard/dashboardForms.d.ts +0 -44
  107. package/dist/Conversations/DashBoard/dashboardForms.js +0 -24
  108. package/dist/Conversations/InboxCounters.d.ts +0 -18
  109. package/dist/src/Conversations/DashBoard/dashboardForms.d.ts +0 -44
  110. package/dist/src/Conversations/DashBoard/dashboardForms.js +0 -24
  111. /package/dist/{Conversations/InboxCounters.js → src/Automations/Flows/Requests.js} +0 -0
@@ -0,0 +1,71 @@
1
+ import { AutomationPageRequest } from '../Common';
2
+ import { AutomationFlowDefinition, AutomationFlowKind, AutomationFlowStatus, AutomationFlowVersion, AutomationFlowVersionStatus, AutomationFlowCanvas, FlowEntryPoint } from './Flow';
3
+ import { AutomationFlowValidationResult } from './Validation';
4
+ export interface CreateAutomationFlowRequest {
5
+ name: string;
6
+ description?: string | null;
7
+ kind: AutomationFlowKind;
8
+ ownerId?: string | null;
9
+ tags: string[];
10
+ initialCanvas?: AutomationFlowCanvas | null;
11
+ entryPoints: FlowEntryPoint[];
12
+ }
13
+ export interface UpdateAutomationFlowRequest {
14
+ name: string;
15
+ description?: string | null;
16
+ kind: AutomationFlowKind;
17
+ ownerId?: string | null;
18
+ tags: string[];
19
+ }
20
+ export interface AutomationFlowSummary {
21
+ id: string;
22
+ name: string;
23
+ description?: string | null;
24
+ kind: AutomationFlowKind;
25
+ status: AutomationFlowStatus;
26
+ ownerId?: string | null;
27
+ tags: string[];
28
+ draftVersionId?: string | null;
29
+ activeVersionId?: string | null;
30
+ updatedAt?: string | null;
31
+ }
32
+ export interface AutomationFlowDetails {
33
+ definition: AutomationFlowDefinition;
34
+ draftVersion?: AutomationFlowVersion | null;
35
+ activeVersion?: AutomationFlowVersion | null;
36
+ }
37
+ export interface CreateAutomationFlowVersionRequest {
38
+ sourceVersionId?: string | null;
39
+ schemaVersion: number;
40
+ canvas?: AutomationFlowCanvas | null;
41
+ entryPoints?: FlowEntryPoint[] | null;
42
+ }
43
+ export interface UpdateAutomationFlowDraftRequest {
44
+ expectedRevision: number;
45
+ status: AutomationFlowVersionStatus;
46
+ schemaVersion: number;
47
+ canvas: AutomationFlowCanvas;
48
+ entryPoints: FlowEntryPoint[];
49
+ }
50
+ export interface PublishAutomationFlowVersionRequest {
51
+ expectedRevision: number;
52
+ validateOnly: boolean;
53
+ }
54
+ export interface PublishAutomationFlowVersionResult {
55
+ definition: AutomationFlowDefinition;
56
+ version: AutomationFlowVersion;
57
+ validation: AutomationFlowValidationResult;
58
+ published: boolean;
59
+ }
60
+ export interface ReplaceFlowEntryPointsRequest {
61
+ expectedRevision: number;
62
+ entryPoints: FlowEntryPoint[];
63
+ }
64
+ export interface AutomationFlowQuery extends AutomationPageRequest {
65
+ search?: string | null;
66
+ kinds?: AutomationFlowKind[] | null;
67
+ statuses?: AutomationFlowStatus[] | null;
68
+ ownerId?: string | null;
69
+ tags?: string[] | null;
70
+ includeArchived: boolean;
71
+ }
@@ -0,0 +1,28 @@
1
+ import { AutomationJsonObject } from '../Common';
2
+ export declare enum AutomationValidationSeverity {
3
+ INFO = "info",
4
+ WARNING = "warning",
5
+ ERROR = "error"
6
+ }
7
+ export interface AutomationValidationIssue {
8
+ code: string;
9
+ severity: AutomationValidationSeverity;
10
+ message: string;
11
+ path?: string | null;
12
+ nodeId?: string | null;
13
+ entryPointId?: string | null;
14
+ details?: AutomationJsonObject | null;
15
+ }
16
+ export interface AutomationFlowValidationResult {
17
+ flowId: string;
18
+ flowVersionId: string;
19
+ valid: boolean;
20
+ issues: AutomationValidationIssue[];
21
+ validatedAt: string;
22
+ }
23
+ export interface FlowEntryPointOverlap {
24
+ firstEntryPointId: string;
25
+ secondEntryPointId: string;
26
+ reason: string;
27
+ allowsMultipleExecutions: boolean;
28
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AutomationValidationSeverity = void 0;
4
+ var AutomationValidationSeverity;
5
+ (function (AutomationValidationSeverity) {
6
+ AutomationValidationSeverity["INFO"] = "info";
7
+ AutomationValidationSeverity["WARNING"] = "warning";
8
+ AutomationValidationSeverity["ERROR"] = "error";
9
+ })(AutomationValidationSeverity || (exports.AutomationValidationSeverity = AutomationValidationSeverity = {}));
@@ -0,0 +1,4 @@
1
+ export * from './Flow';
2
+ export * from './Canvas';
3
+ export * from './Requests';
4
+ export * from './Validation';
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Flow"), exports);
18
+ __exportStar(require("./Canvas"), exports);
19
+ __exportStar(require("./Requests"), exports);
20
+ __exportStar(require("./Validation"), exports);
@@ -0,0 +1,113 @@
1
+ import { AutomationJsonObject, AutomationJsonSchema, AutomationJsonValue, AutomationPageRequest, AutomationSourceApplication } from '../Common';
2
+ import { AutomationCapabilityReference } from '../Capabilities';
3
+ import { AutomationNodeHandle, AutomationNodeKind } from '../Flows';
4
+ export declare enum AutomationNodePropertyEditor {
5
+ STRING = "string",
6
+ NUMBER = "number",
7
+ BOOLEAN = "boolean",
8
+ PASSWORD = "password",
9
+ JSON = "json",
10
+ DATE = "date",
11
+ FILE = "file",
12
+ CODE = "code",
13
+ OPTIONS = "options",
14
+ MULTI_OPTIONS = "multiOptions",
15
+ ASYNC_OPTIONS = "asyncOptions",
16
+ ASYNC_MULTI_OPTIONS = "asyncMultiOptions"
17
+ }
18
+ export declare enum AutomationNodeVisibilityLogicalOperator {
19
+ ALL = "all",
20
+ ANY = "any"
21
+ }
22
+ export declare enum AutomationNodeConditionOperator {
23
+ EQUALS = "equals"
24
+ }
25
+ export interface AutomationNodeCondition {
26
+ propertyId: string;
27
+ operator: AutomationNodeConditionOperator;
28
+ value?: AutomationJsonValue;
29
+ }
30
+ export interface AutomationNodeVisibilityRule {
31
+ logicalOperator: AutomationNodeVisibilityLogicalOperator;
32
+ conditions: AutomationNodeCondition[];
33
+ }
34
+ export interface AutomationNodePropertyUi {
35
+ tabId: string;
36
+ tabLabel: string;
37
+ order: number;
38
+ labelKey?: string | null;
39
+ placeholder?: string | null;
40
+ rows?: number | null;
41
+ numberMin?: number | null;
42
+ numberMax?: number | null;
43
+ step?: number | null;
44
+ acceptVariable?: boolean | null;
45
+ acceptEmojis?: boolean | null;
46
+ allowMaximizeInput?: boolean | null;
47
+ itemProperties: AutomationNodePropertyDefinition[];
48
+ }
49
+ export interface AutomationNodeDefinition {
50
+ code: string;
51
+ version: number;
52
+ kind: AutomationNodeKind;
53
+ sourceApplication: AutomationSourceApplication;
54
+ name: string;
55
+ description?: string | null;
56
+ icon?: string | null;
57
+ color?: string | null;
58
+ tags: string[];
59
+ requiredPermissions: string[];
60
+ capability?: AutomationCapabilityReference | null;
61
+ inputs: AutomationNodeHandle[];
62
+ outputs: AutomationNodeHandle[];
63
+ properties: AutomationNodePropertyDefinition[];
64
+ inputSchema?: AutomationJsonSchema | null;
65
+ outputSchema?: AutomationJsonSchema | null;
66
+ enabled: boolean;
67
+ }
68
+ export interface AutomationNodePropertyDefinition {
69
+ id: string;
70
+ label: string;
71
+ description?: string | null;
72
+ editor: AutomationNodePropertyEditor;
73
+ required: boolean;
74
+ defaultValue?: AutomationJsonValue;
75
+ schema?: AutomationJsonSchema | null;
76
+ options: AutomationNodeOption[];
77
+ optionsCapabilityCode?: string | null;
78
+ ui: AutomationNodePropertyUi;
79
+ showWhen?: AutomationNodeVisibilityRule | null;
80
+ hideWhen?: AutomationNodeVisibilityRule | null;
81
+ }
82
+ export interface AutomationNodeOption {
83
+ id: string;
84
+ label: string;
85
+ description?: string | null;
86
+ imageUrl?: string | null;
87
+ metadata?: AutomationJsonObject | null;
88
+ }
89
+ export interface AutomationNodeDefinitionQuery extends AutomationPageRequest {
90
+ search?: string | null;
91
+ kinds?: AutomationNodeKind[] | null;
92
+ sourceApplications?: AutomationSourceApplication[] | null;
93
+ tags?: string[] | null;
94
+ enabledOnly: boolean;
95
+ }
96
+ export interface AutomationNodeOptionsRequest {
97
+ definitionCode: string;
98
+ definitionVersion: number;
99
+ propertyId: string;
100
+ currentValues: AutomationJsonObject;
101
+ context: AutomationJsonObject;
102
+ /** Optional provider-defined, case-insensitive text search. */
103
+ search?: string | null;
104
+ /** Opaque cursor returned by the previous response. */
105
+ continuationToken?: string | null;
106
+ /** Preferred page size. The API clamps it to the supported range (1-200). */
107
+ limit?: number;
108
+ }
109
+ export interface AutomationNodeOptionsResult {
110
+ options: AutomationNodeOption[];
111
+ /** Opaque cursor for the next page; null or omitted means the last page. */
112
+ continuationToken?: string | null;
113
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.AutomationNodeConditionOperator = exports.AutomationNodeVisibilityLogicalOperator = exports.AutomationNodePropertyEditor = void 0;
4
+ var AutomationNodePropertyEditor;
5
+ (function (AutomationNodePropertyEditor) {
6
+ AutomationNodePropertyEditor["STRING"] = "string";
7
+ AutomationNodePropertyEditor["NUMBER"] = "number";
8
+ AutomationNodePropertyEditor["BOOLEAN"] = "boolean";
9
+ AutomationNodePropertyEditor["PASSWORD"] = "password";
10
+ AutomationNodePropertyEditor["JSON"] = "json";
11
+ AutomationNodePropertyEditor["DATE"] = "date";
12
+ AutomationNodePropertyEditor["FILE"] = "file";
13
+ AutomationNodePropertyEditor["CODE"] = "code";
14
+ AutomationNodePropertyEditor["OPTIONS"] = "options";
15
+ AutomationNodePropertyEditor["MULTI_OPTIONS"] = "multiOptions";
16
+ AutomationNodePropertyEditor["ASYNC_OPTIONS"] = "asyncOptions";
17
+ AutomationNodePropertyEditor["ASYNC_MULTI_OPTIONS"] = "asyncMultiOptions";
18
+ })(AutomationNodePropertyEditor || (exports.AutomationNodePropertyEditor = AutomationNodePropertyEditor = {}));
19
+ var AutomationNodeVisibilityLogicalOperator;
20
+ (function (AutomationNodeVisibilityLogicalOperator) {
21
+ AutomationNodeVisibilityLogicalOperator["ALL"] = "all";
22
+ AutomationNodeVisibilityLogicalOperator["ANY"] = "any";
23
+ })(AutomationNodeVisibilityLogicalOperator || (exports.AutomationNodeVisibilityLogicalOperator = AutomationNodeVisibilityLogicalOperator = {}));
24
+ var AutomationNodeConditionOperator;
25
+ (function (AutomationNodeConditionOperator) {
26
+ AutomationNodeConditionOperator["EQUALS"] = "equals";
27
+ })(AutomationNodeConditionOperator || (exports.AutomationNodeConditionOperator = AutomationNodeConditionOperator = {}));
@@ -0,0 +1 @@
1
+ export * from './Node';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Node"), exports);
@@ -0,0 +1,6 @@
1
+ export * from './Common';
2
+ export * from './Flows';
3
+ export * from './Capabilities';
4
+ export * from './Executions';
5
+ export * from './Nodes';
6
+ export * from './Events';
@@ -0,0 +1,22 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./Common"), exports);
18
+ __exportStar(require("./Flows"), exports);
19
+ __exportStar(require("./Capabilities"), exports);
20
+ __exportStar(require("./Executions"), exports);
21
+ __exportStar(require("./Nodes"), exports);
22
+ __exportStar(require("./Events"), exports);
@@ -0,0 +1,61 @@
1
+ import { UserInfo } from "../Users/UserTrii";
2
+ export interface Chat {
3
+ id: string;
4
+ spaceId: string;
5
+ type: ChatType;
6
+ ownerId: string;
7
+ chatName: string;
8
+ chatImage: string;
9
+ chatMembers: IChatMemeber[];
10
+ chatMembersCount: number;
11
+ remoteAddress: string;
12
+ remoteAddressId: string;
13
+ lastMessage: string;
14
+ lastMessageId?: string;
15
+ newMessagesCount: number;
16
+ newMessagesUnread: boolean;
17
+ pinned: boolean;
18
+ status: ConversationSatus;
19
+ archived: boolean;
20
+ /** Domain objects discussed or served by this conversation. */
21
+ contextReferences?: ContextReference[];
22
+ finalizedAt: Date;
23
+ finalizedBy?: string;
24
+ createdAt: Date;
25
+ updatedAt: Date;
26
+ }
27
+ export interface ContextReference {
28
+ entityType: ContextType;
29
+ entityId: string;
30
+ role?: string;
31
+ linkedAt: Date;
32
+ linkedBy?: string;
33
+ }
34
+ export declare enum ContextType {
35
+ TICKET = "TICKET",
36
+ CONVERSATION = "CONVERSATION",
37
+ LEAD = "LEAD",
38
+ DEBT = "DEBT"
39
+ }
40
+ export declare enum ChatType {
41
+ /**messages between two users */
42
+ DIRECT = 1,
43
+ /**messages between multiple users */
44
+ GROUP = 2,
45
+ /**Messages to discuss a conversation */
46
+ DISCUSS_CONVERSATION = 11,
47
+ /**Messages to discuss a ticket */
48
+ DISCUSS_TICKET = 12
49
+ }
50
+ export interface IChatMemeber {
51
+ joinTimeStamp: Date;
52
+ isAdmin: boolean;
53
+ userId: string;
54
+ user: UserInfo;
55
+ }
56
+ export declare enum ConversationSatus {
57
+ NEW = 1,
58
+ ACTIVE = 2,
59
+ FINALIZED = 3,
60
+ ARCHIVED = 4
61
+ }
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ConversationSatus = exports.ChatType = exports.ContextType = void 0;
4
+ var ContextType;
5
+ (function (ContextType) {
6
+ ContextType["TICKET"] = "TICKET";
7
+ ContextType["CONVERSATION"] = "CONVERSATION";
8
+ ContextType["LEAD"] = "LEAD";
9
+ ContextType["DEBT"] = "DEBT";
10
+ })(ContextType || (exports.ContextType = ContextType = {}));
11
+ var ChatType;
12
+ (function (ChatType) {
13
+ /**messages between two users */
14
+ ChatType[ChatType["DIRECT"] = 1] = "DIRECT";
15
+ /**messages between multiple users */
16
+ ChatType[ChatType["GROUP"] = 2] = "GROUP";
17
+ /**Messages to discuss a conversation */
18
+ ChatType[ChatType["DISCUSS_CONVERSATION"] = 11] = "DISCUSS_CONVERSATION";
19
+ /**Messages to discuss a ticket */
20
+ ChatType[ChatType["DISCUSS_TICKET"] = 12] = "DISCUSS_TICKET";
21
+ })(ChatType || (exports.ChatType = ChatType = {}));
22
+ var ConversationSatus;
23
+ (function (ConversationSatus) {
24
+ ConversationSatus[ConversationSatus["NEW"] = 1] = "NEW";
25
+ ConversationSatus[ConversationSatus["ACTIVE"] = 2] = "ACTIVE";
26
+ ConversationSatus[ConversationSatus["FINALIZED"] = 3] = "FINALIZED";
27
+ ConversationSatus[ConversationSatus["ARCHIVED"] = 4] = "ARCHIVED";
28
+ })(ConversationSatus || (exports.ConversationSatus = ConversationSatus = {}));
@@ -37,6 +37,16 @@ interface IChannelInfo {
37
37
  */
38
38
  status?: string;
39
39
  }
40
+ /**
41
+ * Fallback routing used only when no published Flow entry point matches the
42
+ * channel, or when the selected Flow cannot produce a valid disposition.
43
+ *
44
+ * Flow-to-channel bindings remain authoritative in FlowEntryPoint.
45
+ */
46
+ interface ChannelConversationRoutingConfig {
47
+ /** Stable id of a ConversationQueue in the same space as the channel. */
48
+ defaultQueueId: string;
49
+ }
40
50
  interface IChannel {
41
51
  id?: string | null;
42
52
  spaceId?: string | null;
@@ -44,13 +54,30 @@ interface IChannel {
44
54
  description?: string | null;
45
55
  type?: ChannelType | null;
46
56
  permissions?: Permission[] | null;
57
+ /**
58
+ * @deprecated Legacy channel assignment configuration. Use
59
+ * ChannelConversationRoutingConfig; Flow bindings live in FlowEntryPoint.
60
+ */
47
61
  assignTo?: ConversationAssigned;
62
+ /**
63
+ * @deprecated Legacy channel assignment configuration. Use
64
+ * ChannelConversationRoutingConfig; QueueRoutingPolicy controls agent
65
+ * distribution only after a Queue has been selected.
66
+ */
48
67
  assignMethod: AssignMethod;
68
+ /**
69
+ * @deprecated Ownership is produced by the routing decision.
70
+ */
49
71
  assignToOwner?: boolean;
50
72
  /**
51
73
  * habilita la creacion de conversaciones para este canal, si esta en false, los mensajes entrantes no generaran conversaciones
52
74
  */
53
75
  conversationsEnabled: boolean | false;
76
+ /**
77
+ * Default Queue for newly-created conversations that are not handled by a
78
+ * Flow. Store only the Queue id;
79
+ */
80
+ conversationRouting?: ChannelConversationRoutingConfig | null;
54
81
  /**
55
82
  * Gets or sets a value indicating whether webhook notifications are enabled.
56
83
  * Redirects incoming messages to the specified webhook URL when set to true.
@@ -96,4 +123,4 @@ declare enum channelStatus {
96
123
  SUSPENDED = 7,
97
124
  CONFIGURATION_PENDING = 9
98
125
  }
99
- export { IChannel, IChannelInfo, channelStatus, MessagingAvailability };
126
+ export { IChannel, IChannelInfo, ChannelConversationRoutingConfig, channelStatus, MessagingAvailability };
@@ -14,7 +14,7 @@ export interface IBusiness {
14
14
  counters?: ICounters;
15
15
  name: string;
16
16
  imageUrl: string;
17
- owner?: string;
17
+ ownerUserId?: string;
18
18
  membersId: string[];
19
19
  members: IContactInfo[];
20
20
  phones: IContactAddress[];
@@ -54,7 +54,7 @@ export interface IContact {
54
54
  lastName: string;
55
55
  imageUrl: string;
56
56
  birthDate?: Date | null;
57
- owner?: string;
57
+ ownerUserId?: string;
58
58
  businessId?: string;
59
59
  businessName?: string;
60
60
  phones: IContactAddress[];
@@ -0,0 +1,81 @@
1
+ import { ID } from './Conversation';
2
+ export declare const CONVERSATION_ASSIGNMENT_EVENTS_COLLECTION = "conversation_assignment_events";
3
+ export type ConversationAssignmentEventType = 'enqueued' | 'routing_started' | 'offered' | 'assigned' | 'accepted' | 'transferred' | 'released' | 'timed_out' | 'requeued';
4
+ export type ConversationAssignmentReason = 'conversation_created' | 'routing_selected' | 'manual_assignment' | 'manual_transfer' | 'flow_routing' | 'offer_timeout' | 'assignment_timeout' | 'agent_accepted' | 'agent_released' | 'supervisor_released' | 'capacity_rebalance' | 'sla_escalation' | 'system_recovery';
5
+ export type AssignmentOwnerReference = {
6
+ type: 'none';
7
+ id?: never;
8
+ } | {
9
+ type: 'user' | 'bot' | 'flow';
10
+ id: ID;
11
+ };
12
+ export type AssignmentStateReference = {
13
+ status: 'unrouted';
14
+ assignmentId?: never;
15
+ queueId?: never;
16
+ owner: {
17
+ type: 'none';
18
+ id?: never;
19
+ } | {
20
+ type: 'bot' | 'flow';
21
+ id: ID;
22
+ };
23
+ } | {
24
+ status: 'queued' | 'routing';
25
+ assignmentId: ID;
26
+ queueId: ID;
27
+ owner: {
28
+ type: 'none';
29
+ id?: never;
30
+ };
31
+ } | {
32
+ status: 'offered' | 'assigned' | 'accepted';
33
+ assignmentId: ID;
34
+ queueId: ID;
35
+ owner: {
36
+ type: 'user';
37
+ id: ID;
38
+ };
39
+ };
40
+ export type AssignmentActorReference = {
41
+ type: 'system';
42
+ id?: never;
43
+ } | {
44
+ type: 'user' | 'bot' | 'flow';
45
+ id: ID;
46
+ };
47
+ /**
48
+ * Immutable domain event stored in conversation_assignment_events.
49
+ *
50
+ * Events must only be inserted. Corrections are represented by a new event.
51
+ */
52
+ export interface ConversationAssignmentEvent {
53
+ id: ID;
54
+ spaceId: ID;
55
+ conversationId: ID;
56
+ /**
57
+ * Monotonic order within a conversation.
58
+ */
59
+ sequence: number;
60
+ eventType: ConversationAssignmentEventType;
61
+ reason: ConversationAssignmentReason;
62
+ /**
63
+ * Undefined only when no previous assignment state existed.
64
+ */
65
+ previous?: AssignmentStateReference;
66
+ current: AssignmentStateReference;
67
+ actor: AssignmentActorReference;
68
+ routingDecisionId?: ID;
69
+ /**
70
+ * Version of conversations after applying the transition.
71
+ */
72
+ conversationVersion: number;
73
+ correlationId?: ID;
74
+ causationId?: ID;
75
+ idempotencyKey: string;
76
+ /**
77
+ * Domain time and persistence time, respectively.
78
+ */
79
+ occurredAt: Date;
80
+ recordedAt: Date;
81
+ }
@@ -0,0 +1,4 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CONVERSATION_ASSIGNMENT_EVENTS_COLLECTION = void 0;
4
+ exports.CONVERSATION_ASSIGNMENT_EVENTS_COLLECTION = 'conversation_assignment_events';