@trii/types 2.10.731 → 2.10.732
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/dist/Common/index.js +7 -17
- package/dist/Conversations/Conversation.d.ts +19 -4
- package/dist/Conversations/index.js +7 -17
- package/dist/index.js +7 -17
- package/dist/src/Automations/Capabilities/Capability.d.ts +33 -0
- package/dist/src/Automations/Capabilities/Capability.js +15 -1
- package/dist/src/Automations/Common.d.ts +47 -0
- package/dist/src/Automations/Common.js +22 -0
- package/dist/src/Automations/Events/Event.d.ts +31 -3
- package/dist/src/Automations/Events/Event.js +12 -0
- package/dist/src/Automations/Executions/Execution.d.ts +144 -4
- package/dist/src/Automations/Executions/Execution.js +40 -1
- package/dist/src/Automations/Executions/Testing.d.ts +166 -0
- package/dist/src/Automations/Executions/Testing.js +54 -0
- package/dist/src/Automations/Executions/index.d.ts +1 -0
- package/dist/src/Automations/Executions/index.js +1 -0
- package/dist/src/Automations/Flows/Canvas.d.ts +21 -4
- package/dist/src/Automations/Flows/Canvas.js +5 -1
- package/dist/src/Automations/Flows/Flow.d.ts +48 -3
- package/dist/src/Automations/Flows/Flow.js +25 -1
- package/dist/src/Automations/Nodes/Node.d.ts +41 -3
- package/dist/src/Automations/Nodes/Node.js +10 -1
- package/dist/src/Common/Channels/Channel.d.ts +6 -4
- package/dist/src/Conversations/Conversation.d.ts +90 -0
- package/dist/src/Tickets/Dashboard.d.ts +1 -0
- package/package.json +5 -2
- package/dist/AI/MapPolygon.d.ts +0 -22
- package/dist/AI/MapPolygon.js +0 -2
- package/dist/Conversations/DashBoard/dashboardForms.d.ts +0 -44
- package/dist/Conversations/DashBoard/dashboardForms.js +0 -24
- package/dist/Conversations/Flows/Nodes/NodeAIChatBot.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeAIChatBot.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeApi.d.ts +0 -2
- package/dist/Conversations/Flows/Nodes/NodeApi.js +0 -183
- package/dist/Conversations/Flows/Nodes/NodeBotIA.d.ts +0 -15
- package/dist/Conversations/Flows/Nodes/NodeBotIA.js +0 -6
- package/dist/Conversations/Flows/Nodes/NodeChatBotIA.d.ts +0 -15
- package/dist/Conversations/Flows/Nodes/NodeChatBotIA.js +0 -6
- package/dist/Conversations/Flows/Nodes/NodeConditional.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeConditional.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeContactSearch.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeContactSearch.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeContactUpdate.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeContactUpdate.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeConversationAssignTo.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeConversationAssignTo.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeConversationFinalize.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeConversationFinalize.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeConversationUpdate.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeConversationUpdate.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeFillForm.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeFillForm.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeFillTicket.d.ts +0 -1
- package/dist/Conversations/Flows/Nodes/NodeFillTicket.js +0 -9
- package/dist/Conversations/Flows/Nodes/NodeGoogleCalendar.d.ts +0 -20
- package/dist/Conversations/Flows/Nodes/NodeGoogleCalendar.js +0 -2
- package/dist/Conversations/Flows/Nodes/NodeGoogleMaps copy.d.ts +0 -12
- package/dist/Conversations/Flows/Nodes/NodeGoogleMaps copy.js +0 -6
- package/dist/Conversations/Flows/Nodes/NodeGoogleMaps.d.ts +0 -15
- package/dist/Conversations/Flows/Nodes/NodeGoogleMaps.js +0 -2
- package/dist/Conversations/Flows/Nodes/NodeMsgReply.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeMsgReply.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeMsgSend.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeMsgSend.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeMsgText.d.ts +0 -1
- package/dist/Conversations/Flows/Nodes/NodeMsgText.js +0 -27
- package/dist/Conversations/Flows/Nodes/NodeMsgWaitResponse.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeMsgWaitResponse.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeRedirect.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeRedirect.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeSendEmail.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeSendEmail.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeSqlQuery.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeSqlQuery.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeStart.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeStart.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeTimeScheduleControl.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeTimeScheduleControl.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeTimeTimer.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeTimeTimer.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeTimeWaitUntil.d.ts +0 -0
- package/dist/Conversations/Flows/Nodes/NodeTimeWaitUntil.js +0 -0
- package/dist/Conversations/Flows/Nodes/NodeToolCalculator.d.ts +0 -2
- package/dist/Conversations/Flows/Nodes/NodeToolCalculator.js +0 -37
- package/dist/Conversations/Flows/Nodes/NodeToolContacts.d.ts +0 -2
- package/dist/Conversations/Flows/Nodes/NodeToolContacts.js +0 -59
- package/dist/Conversations/Flows/Nodes/NodeToolFunction.d.ts +0 -2
- package/dist/Conversations/Flows/Nodes/NodeToolFunction.js +0 -45
- package/dist/Conversations/Flows/Nodes/NodeToolGoogleCalendar.d.ts +0 -2
- package/dist/Conversations/Flows/Nodes/NodeToolGoogleCalendar.js +0 -87
- package/dist/Conversations/Flows/Nodes/NodeToolGoogleMaps.d.ts +0 -1
- package/dist/Conversations/Flows/Nodes/NodeToolGoogleMaps.js +0 -2
- package/dist/Conversations/Flows/Nodes/NodeToolKnowledge.d.ts +0 -2
- package/dist/Conversations/Flows/Nodes/NodeToolKnowledge.js +0 -52
- package/dist/Conversations/Flows/Nodes/NodeToolMapsCheckPolygon.d.ts +0 -2
- package/dist/Conversations/Flows/Nodes/NodeToolMapsCheckPolygon.js +0 -59
- package/dist/Conversations/Flows/Nodes/NodeToolMcpClient.d.ts +0 -2
- package/dist/Conversations/Flows/Nodes/NodeToolMcpClient.js +0 -45
- package/dist/Conversations/Flows/Nodes/NodeToolShoppingCart.d.ts +0 -2
- package/dist/Conversations/Flows/Nodes/NodeToolShoppingCart.js +0 -81
- package/dist/Conversations/Flows/Nodes/index.d.ts +0 -24
- package/dist/Conversations/Flows/Nodes/index.js +0 -40
- package/dist/Conversations/InboxCounters.d.ts +0 -18
- package/dist/Conversations/InboxCounters.js +0 -2
- package/dist/Presence/ChannelRoutingState.d.ts +0 -17
- package/dist/Presence/ChannelRoutingState.js +0 -9
- package/dist/Tickets/AccessLevel.d.ts +0 -5
- package/dist/Tickets/AccessLevel.js +0 -9
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AutomationExecutionStepStatus = exports.AutomationExecutionStatus = void 0;
|
|
3
|
+
exports.AutomationExecutionEffectDecision = exports.AutomationExecutionLineageOperation = exports.AutomationExecutionSourceKind = exports.AutomationExecutionScopeKind = exports.AutomationExecutionEffectMode = exports.AutomationExecutionPurpose = exports.AutomationExecutionStepStatus = exports.AutomationExecutionStatus = void 0;
|
|
4
4
|
var AutomationExecutionStatus;
|
|
5
5
|
(function (AutomationExecutionStatus) {
|
|
6
6
|
AutomationExecutionStatus["QUEUED"] = "queued";
|
|
@@ -21,3 +21,42 @@ var AutomationExecutionStepStatus;
|
|
|
21
21
|
AutomationExecutionStepStatus["SKIPPED"] = "skipped";
|
|
22
22
|
AutomationExecutionStepStatus["CANCELLED"] = "cancelled";
|
|
23
23
|
})(AutomationExecutionStepStatus || (exports.AutomationExecutionStepStatus = AutomationExecutionStepStatus = {}));
|
|
24
|
+
var AutomationExecutionPurpose;
|
|
25
|
+
(function (AutomationExecutionPurpose) {
|
|
26
|
+
AutomationExecutionPurpose["PRODUCTION"] = "production";
|
|
27
|
+
AutomationExecutionPurpose["TEST"] = "test";
|
|
28
|
+
})(AutomationExecutionPurpose || (exports.AutomationExecutionPurpose = AutomationExecutionPurpose = {}));
|
|
29
|
+
var AutomationExecutionEffectMode;
|
|
30
|
+
(function (AutomationExecutionEffectMode) {
|
|
31
|
+
AutomationExecutionEffectMode["SIMULATE"] = "simulate";
|
|
32
|
+
AutomationExecutionEffectMode["TEST_TARGETS"] = "testTargets";
|
|
33
|
+
AutomationExecutionEffectMode["REAL"] = "real";
|
|
34
|
+
})(AutomationExecutionEffectMode || (exports.AutomationExecutionEffectMode = AutomationExecutionEffectMode = {}));
|
|
35
|
+
var AutomationExecutionScopeKind;
|
|
36
|
+
(function (AutomationExecutionScopeKind) {
|
|
37
|
+
AutomationExecutionScopeKind["FULL"] = "full";
|
|
38
|
+
AutomationExecutionScopeKind["UNTIL_NODE"] = "untilNode";
|
|
39
|
+
AutomationExecutionScopeKind["FROM_NODE"] = "fromNode";
|
|
40
|
+
AutomationExecutionScopeKind["NODE_ONLY"] = "nodeOnly";
|
|
41
|
+
})(AutomationExecutionScopeKind || (exports.AutomationExecutionScopeKind = AutomationExecutionScopeKind = {}));
|
|
42
|
+
var AutomationExecutionSourceKind;
|
|
43
|
+
(function (AutomationExecutionSourceKind) {
|
|
44
|
+
AutomationExecutionSourceKind["MANUAL"] = "manual";
|
|
45
|
+
AutomationExecutionSourceKind["FIXTURE"] = "fixture";
|
|
46
|
+
AutomationExecutionSourceKind["CAPTURED_EVENT"] = "capturedEvent";
|
|
47
|
+
AutomationExecutionSourceKind["EXECUTION"] = "execution";
|
|
48
|
+
AutomationExecutionSourceKind["STEP_OUTPUT"] = "stepOutput";
|
|
49
|
+
})(AutomationExecutionSourceKind || (exports.AutomationExecutionSourceKind = AutomationExecutionSourceKind = {}));
|
|
50
|
+
var AutomationExecutionLineageOperation;
|
|
51
|
+
(function (AutomationExecutionLineageOperation) {
|
|
52
|
+
AutomationExecutionLineageOperation["NEW"] = "new";
|
|
53
|
+
AutomationExecutionLineageOperation["REPLAY"] = "replay";
|
|
54
|
+
AutomationExecutionLineageOperation["RETRY"] = "retry";
|
|
55
|
+
})(AutomationExecutionLineageOperation || (exports.AutomationExecutionLineageOperation = AutomationExecutionLineageOperation = {}));
|
|
56
|
+
var AutomationExecutionEffectDecision;
|
|
57
|
+
(function (AutomationExecutionEffectDecision) {
|
|
58
|
+
AutomationExecutionEffectDecision["EXECUTED"] = "executed";
|
|
59
|
+
AutomationExecutionEffectDecision["SIMULATED"] = "simulated";
|
|
60
|
+
AutomationExecutionEffectDecision["REDIRECTED"] = "redirected";
|
|
61
|
+
AutomationExecutionEffectDecision["BLOCKED"] = "blocked";
|
|
62
|
+
})(AutomationExecutionEffectDecision || (exports.AutomationExecutionEffectDecision = AutomationExecutionEffectDecision = {}));
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { AutomationCustomer, AutomationJsonObject, AutomationJsonSchema, AutomationJsonValue, AutomationResourceReference } from '../Common';
|
|
2
|
+
import { AutomationCapabilityEffectClass } from '../Capabilities';
|
|
3
|
+
import { AutomationExecutionContextInput, AutomationExecutionEffectMode, AutomationExecutionScope, AutomationExecutionSource, AutomationFlowSnapshotReference } from './Execution';
|
|
4
|
+
export declare enum AutomationArtifactStatus {
|
|
5
|
+
UPLOADING = "uploading",
|
|
6
|
+
SCANNING = "scanning",
|
|
7
|
+
AVAILABLE = "available",
|
|
8
|
+
REJECTED = "rejected",
|
|
9
|
+
EXPIRED = "expired"
|
|
10
|
+
}
|
|
11
|
+
export declare enum AutomationArtifactOrigin {
|
|
12
|
+
UPLOAD = "upload",
|
|
13
|
+
CAPTURED_EVENT = "capturedEvent",
|
|
14
|
+
EXECUTION = "execution",
|
|
15
|
+
GENERATED = "generated"
|
|
16
|
+
}
|
|
17
|
+
export interface AutomationArtifactReference {
|
|
18
|
+
id: string;
|
|
19
|
+
name: string;
|
|
20
|
+
mimeType: string;
|
|
21
|
+
size: number;
|
|
22
|
+
origin: AutomationArtifactOrigin;
|
|
23
|
+
status: AutomationArtifactStatus;
|
|
24
|
+
checksum?: string | null;
|
|
25
|
+
expiresAt?: string | null;
|
|
26
|
+
owner?: AutomationResourceReference | null;
|
|
27
|
+
}
|
|
28
|
+
export declare enum AutomationTestCaseVisibility {
|
|
29
|
+
PRIVATE = "private",
|
|
30
|
+
SHARED = "shared"
|
|
31
|
+
}
|
|
32
|
+
export declare enum AutomationTestAssertionKind {
|
|
33
|
+
EXECUTION_STATUS = "executionStatus",
|
|
34
|
+
NODE_REACHED = "nodeReached",
|
|
35
|
+
NODE_NOT_REACHED = "nodeNotReached",
|
|
36
|
+
PATH_EXISTS = "pathExists",
|
|
37
|
+
PATH_TYPE = "pathType",
|
|
38
|
+
PATH_VALUE = "pathValue",
|
|
39
|
+
ERROR_CODE = "errorCode",
|
|
40
|
+
MAX_DURATION = "maxDuration",
|
|
41
|
+
MAX_COST = "maxCost"
|
|
42
|
+
}
|
|
43
|
+
export declare enum AutomationTestAssertionStatus {
|
|
44
|
+
PENDING = "pending",
|
|
45
|
+
PASSED = "passed",
|
|
46
|
+
FAILED = "failed",
|
|
47
|
+
SKIPPED = "skipped"
|
|
48
|
+
}
|
|
49
|
+
export interface AutomationTestAssertion {
|
|
50
|
+
id: string;
|
|
51
|
+
kind: AutomationTestAssertionKind;
|
|
52
|
+
nodeId?: string | null;
|
|
53
|
+
path?: string | null;
|
|
54
|
+
expected?: AutomationJsonValue;
|
|
55
|
+
configuration?: AutomationJsonObject | null;
|
|
56
|
+
}
|
|
57
|
+
export interface AutomationTestAssertionResult {
|
|
58
|
+
assertionId: string;
|
|
59
|
+
status: AutomationTestAssertionStatus;
|
|
60
|
+
message?: string | null;
|
|
61
|
+
actual?: AutomationJsonValue;
|
|
62
|
+
}
|
|
63
|
+
/** Configuración común utilizada por preflight e inicio de una prueba. */
|
|
64
|
+
export interface AutomationTestConfiguration {
|
|
65
|
+
flowId: string;
|
|
66
|
+
flowVersionId?: string | null;
|
|
67
|
+
draftRevision?: number | null;
|
|
68
|
+
entryPointId: string;
|
|
69
|
+
scope: AutomationExecutionScope;
|
|
70
|
+
requestedEffectMode: AutomationExecutionEffectMode;
|
|
71
|
+
source: AutomationExecutionSource;
|
|
72
|
+
customer?: AutomationCustomer | null;
|
|
73
|
+
input?: AutomationJsonObject | null;
|
|
74
|
+
context?: AutomationExecutionContextInput | null;
|
|
75
|
+
nodeInputOverrides?: Record<string, AutomationJsonObject> | null;
|
|
76
|
+
artifactIds?: string[] | null;
|
|
77
|
+
testTargetOverrides?: AutomationJsonObject | null;
|
|
78
|
+
}
|
|
79
|
+
export interface StartAutomationTestRequest extends AutomationTestConfiguration {
|
|
80
|
+
idempotencyKey: string;
|
|
81
|
+
correlationId?: string | null;
|
|
82
|
+
testCaseId?: string | null;
|
|
83
|
+
testCaseRevision?: number | null;
|
|
84
|
+
preflightToken?: string | null;
|
|
85
|
+
}
|
|
86
|
+
export interface AutomationTestPreflightRequest extends AutomationTestConfiguration {
|
|
87
|
+
}
|
|
88
|
+
export declare enum AutomationTestPreflightStatus {
|
|
89
|
+
READY = "ready",
|
|
90
|
+
WARNING = "warning",
|
|
91
|
+
BLOCKED = "blocked"
|
|
92
|
+
}
|
|
93
|
+
export declare enum AutomationTestPreflightIssueSeverity {
|
|
94
|
+
INFO = "info",
|
|
95
|
+
WARNING = "warning",
|
|
96
|
+
BLOCKER = "blocker"
|
|
97
|
+
}
|
|
98
|
+
export interface AutomationTestPreflightIssue {
|
|
99
|
+
code: string;
|
|
100
|
+
severity: AutomationTestPreflightIssueSeverity;
|
|
101
|
+
message: string;
|
|
102
|
+
nodeId?: string | null;
|
|
103
|
+
details?: AutomationJsonObject | null;
|
|
104
|
+
}
|
|
105
|
+
export interface AutomationTestPreflightNode {
|
|
106
|
+
nodeId: string;
|
|
107
|
+
nodeDefinitionCode: string;
|
|
108
|
+
nodeDefinitionVersion: number;
|
|
109
|
+
reachable: boolean;
|
|
110
|
+
executable: boolean;
|
|
111
|
+
issues: AutomationTestPreflightIssue[];
|
|
112
|
+
}
|
|
113
|
+
export interface AutomationTestPreflightEffect {
|
|
114
|
+
nodeId: string;
|
|
115
|
+
effectClass: AutomationCapabilityEffectClass;
|
|
116
|
+
action: string;
|
|
117
|
+
description?: string | null;
|
|
118
|
+
originalTarget?: AutomationResourceReference | null;
|
|
119
|
+
effectiveTarget?: AutomationResourceReference | null;
|
|
120
|
+
estimatedItems?: number | null;
|
|
121
|
+
}
|
|
122
|
+
export interface AutomationTestPreflightLimits {
|
|
123
|
+
maxDurationMs?: number | null;
|
|
124
|
+
maxSteps?: number | null;
|
|
125
|
+
maxIterations?: number | null;
|
|
126
|
+
maxItems?: number | null;
|
|
127
|
+
estimatedCost?: number | null;
|
|
128
|
+
currency?: string | null;
|
|
129
|
+
}
|
|
130
|
+
export interface AutomationTestPreflightResult {
|
|
131
|
+
status: AutomationTestPreflightStatus;
|
|
132
|
+
snapshot: AutomationFlowSnapshotReference;
|
|
133
|
+
requestedEffectMode: AutomationExecutionEffectMode;
|
|
134
|
+
effectiveEffectMode: AutomationExecutionEffectMode;
|
|
135
|
+
nodes: AutomationTestPreflightNode[];
|
|
136
|
+
effects: AutomationTestPreflightEffect[];
|
|
137
|
+
issues: AutomationTestPreflightIssue[];
|
|
138
|
+
limits: AutomationTestPreflightLimits;
|
|
139
|
+
requiresConfirmation: boolean;
|
|
140
|
+
preflightToken: string;
|
|
141
|
+
expiresAt: string;
|
|
142
|
+
}
|
|
143
|
+
export interface AutomationTestCase {
|
|
144
|
+
id: string;
|
|
145
|
+
spaceId: string;
|
|
146
|
+
flowId: string;
|
|
147
|
+
name: string;
|
|
148
|
+
description?: string | null;
|
|
149
|
+
revision: number;
|
|
150
|
+
visibility: AutomationTestCaseVisibility;
|
|
151
|
+
configuration: AutomationTestConfiguration;
|
|
152
|
+
assertions: AutomationTestAssertion[];
|
|
153
|
+
createdBy: string;
|
|
154
|
+
createdAt: string;
|
|
155
|
+
updatedBy?: string | null;
|
|
156
|
+
updatedAt?: string | null;
|
|
157
|
+
}
|
|
158
|
+
/** Schema opcional para que el Estudio genere un simulador por Entry Point. */
|
|
159
|
+
export interface AutomationEntryPointTestSchema {
|
|
160
|
+
entryPointId: string;
|
|
161
|
+
inputSchema?: AutomationJsonSchema | null;
|
|
162
|
+
contextSchema?: AutomationJsonSchema | null;
|
|
163
|
+
allowedArtifactMimeTypes?: string[] | null;
|
|
164
|
+
maxArtifactSize?: number | null;
|
|
165
|
+
maxArtifacts?: number | null;
|
|
166
|
+
}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.AutomationTestPreflightIssueSeverity = exports.AutomationTestPreflightStatus = exports.AutomationTestAssertionStatus = exports.AutomationTestAssertionKind = exports.AutomationTestCaseVisibility = exports.AutomationArtifactOrigin = exports.AutomationArtifactStatus = void 0;
|
|
4
|
+
var AutomationArtifactStatus;
|
|
5
|
+
(function (AutomationArtifactStatus) {
|
|
6
|
+
AutomationArtifactStatus["UPLOADING"] = "uploading";
|
|
7
|
+
AutomationArtifactStatus["SCANNING"] = "scanning";
|
|
8
|
+
AutomationArtifactStatus["AVAILABLE"] = "available";
|
|
9
|
+
AutomationArtifactStatus["REJECTED"] = "rejected";
|
|
10
|
+
AutomationArtifactStatus["EXPIRED"] = "expired";
|
|
11
|
+
})(AutomationArtifactStatus || (exports.AutomationArtifactStatus = AutomationArtifactStatus = {}));
|
|
12
|
+
var AutomationArtifactOrigin;
|
|
13
|
+
(function (AutomationArtifactOrigin) {
|
|
14
|
+
AutomationArtifactOrigin["UPLOAD"] = "upload";
|
|
15
|
+
AutomationArtifactOrigin["CAPTURED_EVENT"] = "capturedEvent";
|
|
16
|
+
AutomationArtifactOrigin["EXECUTION"] = "execution";
|
|
17
|
+
AutomationArtifactOrigin["GENERATED"] = "generated";
|
|
18
|
+
})(AutomationArtifactOrigin || (exports.AutomationArtifactOrigin = AutomationArtifactOrigin = {}));
|
|
19
|
+
var AutomationTestCaseVisibility;
|
|
20
|
+
(function (AutomationTestCaseVisibility) {
|
|
21
|
+
AutomationTestCaseVisibility["PRIVATE"] = "private";
|
|
22
|
+
AutomationTestCaseVisibility["SHARED"] = "shared";
|
|
23
|
+
})(AutomationTestCaseVisibility || (exports.AutomationTestCaseVisibility = AutomationTestCaseVisibility = {}));
|
|
24
|
+
var AutomationTestAssertionKind;
|
|
25
|
+
(function (AutomationTestAssertionKind) {
|
|
26
|
+
AutomationTestAssertionKind["EXECUTION_STATUS"] = "executionStatus";
|
|
27
|
+
AutomationTestAssertionKind["NODE_REACHED"] = "nodeReached";
|
|
28
|
+
AutomationTestAssertionKind["NODE_NOT_REACHED"] = "nodeNotReached";
|
|
29
|
+
AutomationTestAssertionKind["PATH_EXISTS"] = "pathExists";
|
|
30
|
+
AutomationTestAssertionKind["PATH_TYPE"] = "pathType";
|
|
31
|
+
AutomationTestAssertionKind["PATH_VALUE"] = "pathValue";
|
|
32
|
+
AutomationTestAssertionKind["ERROR_CODE"] = "errorCode";
|
|
33
|
+
AutomationTestAssertionKind["MAX_DURATION"] = "maxDuration";
|
|
34
|
+
AutomationTestAssertionKind["MAX_COST"] = "maxCost";
|
|
35
|
+
})(AutomationTestAssertionKind || (exports.AutomationTestAssertionKind = AutomationTestAssertionKind = {}));
|
|
36
|
+
var AutomationTestAssertionStatus;
|
|
37
|
+
(function (AutomationTestAssertionStatus) {
|
|
38
|
+
AutomationTestAssertionStatus["PENDING"] = "pending";
|
|
39
|
+
AutomationTestAssertionStatus["PASSED"] = "passed";
|
|
40
|
+
AutomationTestAssertionStatus["FAILED"] = "failed";
|
|
41
|
+
AutomationTestAssertionStatus["SKIPPED"] = "skipped";
|
|
42
|
+
})(AutomationTestAssertionStatus || (exports.AutomationTestAssertionStatus = AutomationTestAssertionStatus = {}));
|
|
43
|
+
var AutomationTestPreflightStatus;
|
|
44
|
+
(function (AutomationTestPreflightStatus) {
|
|
45
|
+
AutomationTestPreflightStatus["READY"] = "ready";
|
|
46
|
+
AutomationTestPreflightStatus["WARNING"] = "warning";
|
|
47
|
+
AutomationTestPreflightStatus["BLOCKED"] = "blocked";
|
|
48
|
+
})(AutomationTestPreflightStatus || (exports.AutomationTestPreflightStatus = AutomationTestPreflightStatus = {}));
|
|
49
|
+
var AutomationTestPreflightIssueSeverity;
|
|
50
|
+
(function (AutomationTestPreflightIssueSeverity) {
|
|
51
|
+
AutomationTestPreflightIssueSeverity["INFO"] = "info";
|
|
52
|
+
AutomationTestPreflightIssueSeverity["WARNING"] = "warning";
|
|
53
|
+
AutomationTestPreflightIssueSeverity["BLOCKER"] = "blocker";
|
|
54
|
+
})(AutomationTestPreflightIssueSeverity || (exports.AutomationTestPreflightIssueSeverity = AutomationTestPreflightIssueSeverity = {}));
|
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { AutomationJsonObject, AutomationJsonValue } from '../Common';
|
|
1
|
+
import { AutomationJsonObject, AutomationJsonSchema, AutomationJsonValue } from '../Common';
|
|
2
|
+
import type { AutomationNodeVisibilityRule } from '../Nodes';
|
|
2
3
|
export declare enum AutomationFlowVariableType {
|
|
3
4
|
STRING = "string",
|
|
4
5
|
NUMBER = "number",
|
|
@@ -32,7 +33,8 @@ export interface AutomationFlowVariable {
|
|
|
32
33
|
type: AutomationFlowVariableType;
|
|
33
34
|
isInput: boolean;
|
|
34
35
|
isOutput: boolean;
|
|
35
|
-
|
|
36
|
+
/** JSON Schema que restringe el valor permitido para la variable. */
|
|
37
|
+
schema?: AutomationJsonSchema | null;
|
|
36
38
|
defaultValue?: AutomationJsonValue;
|
|
37
39
|
}
|
|
38
40
|
export interface AutomationFlowViewport {
|
|
@@ -44,6 +46,21 @@ export interface AutomationNodePosition {
|
|
|
44
46
|
x: number;
|
|
45
47
|
y: number;
|
|
46
48
|
}
|
|
49
|
+
export declare enum AutomationCanvasAnnotationType {
|
|
50
|
+
NOTE = "note"
|
|
51
|
+
}
|
|
52
|
+
/** Elemento puramente visual del canvas; no participa de la ejecución. */
|
|
53
|
+
export interface AutomationCanvasAnnotation {
|
|
54
|
+
id: string;
|
|
55
|
+
type: AutomationCanvasAnnotationType;
|
|
56
|
+
title?: string | null;
|
|
57
|
+
text: string;
|
|
58
|
+
position: AutomationNodePosition;
|
|
59
|
+
width: number;
|
|
60
|
+
height: number;
|
|
61
|
+
color: string;
|
|
62
|
+
metadata?: AutomationJsonObject | null;
|
|
63
|
+
}
|
|
47
64
|
export interface AutomationFlowNode {
|
|
48
65
|
id: string;
|
|
49
66
|
/** Clave del renderer visual; no representa una regla de negocio. */
|
|
@@ -81,6 +98,6 @@ export interface AutomationNodeHandle {
|
|
|
81
98
|
multiple: boolean;
|
|
82
99
|
showName: boolean;
|
|
83
100
|
tags: string[];
|
|
84
|
-
showWhen?:
|
|
85
|
-
hideWhen?:
|
|
101
|
+
showWhen?: AutomationNodeVisibilityRule | null;
|
|
102
|
+
hideWhen?: AutomationNodeVisibilityRule | null;
|
|
86
103
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AutomationNodeHandlePosition = exports.AutomationNodeHandleType = exports.AutomationNodeKind = exports.AutomationFlowVariableType = void 0;
|
|
3
|
+
exports.AutomationCanvasAnnotationType = exports.AutomationNodeHandlePosition = exports.AutomationNodeHandleType = exports.AutomationNodeKind = exports.AutomationFlowVariableType = void 0;
|
|
4
4
|
var AutomationFlowVariableType;
|
|
5
5
|
(function (AutomationFlowVariableType) {
|
|
6
6
|
AutomationFlowVariableType["STRING"] = "string";
|
|
@@ -32,3 +32,7 @@ var AutomationNodeHandlePosition;
|
|
|
32
32
|
AutomationNodeHandlePosition["TOP"] = "top";
|
|
33
33
|
AutomationNodeHandlePosition["BOTTOM"] = "bottom";
|
|
34
34
|
})(AutomationNodeHandlePosition || (exports.AutomationNodeHandlePosition = AutomationNodeHandlePosition = {}));
|
|
35
|
+
var AutomationCanvasAnnotationType;
|
|
36
|
+
(function (AutomationCanvasAnnotationType) {
|
|
37
|
+
AutomationCanvasAnnotationType["NOTE"] = "note";
|
|
38
|
+
})(AutomationCanvasAnnotationType || (exports.AutomationCanvasAnnotationType = AutomationCanvasAnnotationType = {}));
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { AutomationCapabilityReference } from '../Capabilities';
|
|
2
|
-
import { AutomationJsonObject, AutomationSourceApplication } from '../Common';
|
|
3
|
-
import { AutomationFlowEdge, AutomationFlowNode, AutomationFlowVariable, AutomationFlowViewport } from './Canvas';
|
|
2
|
+
import { AutomationJsonObject, AutomationJsonValue, AutomationSourceApplication } from '../Common';
|
|
3
|
+
import { AutomationFlowEdge, AutomationCanvasAnnotation, AutomationFlowNode, AutomationFlowVariable, AutomationFlowViewport } from './Canvas';
|
|
4
4
|
export declare enum AutomationFlowKind {
|
|
5
5
|
CONVERSATIONAL = "conversational",
|
|
6
6
|
VOICE = "voice",
|
|
@@ -28,6 +28,48 @@ export declare enum FlowEntryPointExecutionMode {
|
|
|
28
28
|
/** El solapamiento fue habilitado explícitamente. */
|
|
29
29
|
MULTIPLE = "multiple"
|
|
30
30
|
}
|
|
31
|
+
export declare enum AutomationFilterLogicalOperator {
|
|
32
|
+
/** Todas las condiciones y grupos hijos deben cumplirse. */
|
|
33
|
+
ALL = "all",
|
|
34
|
+
/** Al menos una condición o grupo hijo debe cumplirse. */
|
|
35
|
+
ANY = "any"
|
|
36
|
+
}
|
|
37
|
+
export declare enum AutomationFilterOperator {
|
|
38
|
+
EQUALS = "equals",
|
|
39
|
+
NOT_EQUALS = "notEquals",
|
|
40
|
+
CONTAINS = "contains",
|
|
41
|
+
NOT_CONTAINS = "notContains",
|
|
42
|
+
STARTS_WITH = "startsWith",
|
|
43
|
+
ENDS_WITH = "endsWith",
|
|
44
|
+
GREATER_THAN = "greaterThan",
|
|
45
|
+
GREATER_THAN_OR_EQUAL = "greaterThanOrEqual",
|
|
46
|
+
LESS_THAN = "lessThan",
|
|
47
|
+
LESS_THAN_OR_EQUAL = "lessThanOrEqual",
|
|
48
|
+
IN = "in",
|
|
49
|
+
NOT_IN = "notIn",
|
|
50
|
+
EXISTS = "exists",
|
|
51
|
+
NOT_EXISTS = "notExists"
|
|
52
|
+
}
|
|
53
|
+
/** Comparación tipada aplicada a un campo de un evento. */
|
|
54
|
+
export interface AutomationFilterCondition {
|
|
55
|
+
/** JSON Pointer RFC 6901 absoluto dentro del envelope. */
|
|
56
|
+
path: string;
|
|
57
|
+
/** Operación utilizada para comparar el campo. */
|
|
58
|
+
operator: AutomationFilterOperator;
|
|
59
|
+
/** Valor esperado; no aplica a exists/notExists. */
|
|
60
|
+
value?: AutomationJsonValue;
|
|
61
|
+
/** Sensibilidad de comparaciones de strings; por defecto es true. */
|
|
62
|
+
caseSensitive?: boolean | null;
|
|
63
|
+
}
|
|
64
|
+
/** Grupo recursivo de filtros combinados mediante all o any. */
|
|
65
|
+
export interface AutomationFilterGroup {
|
|
66
|
+
/** Forma en que se combinan condiciones y grupos hijos. */
|
|
67
|
+
logicalOperator: AutomationFilterLogicalOperator;
|
|
68
|
+
/** Comparaciones directas pertenecientes al grupo. */
|
|
69
|
+
conditions: AutomationFilterCondition[];
|
|
70
|
+
/** Grupos anidados. */
|
|
71
|
+
groups: AutomationFilterGroup[];
|
|
72
|
+
}
|
|
31
73
|
/**
|
|
32
74
|
* Identidad estable del Flow. El contenido ejecutable vive en FlowVersion.
|
|
33
75
|
*/
|
|
@@ -58,6 +100,8 @@ export interface AutomationFlowCanvas {
|
|
|
58
100
|
variables: AutomationFlowVariable[];
|
|
59
101
|
nodes: AutomationFlowNode[];
|
|
60
102
|
edges: AutomationFlowEdge[];
|
|
103
|
+
/** Anotaciones visuales que no forman parte del grafo ejecutable. */
|
|
104
|
+
annotations?: AutomationCanvasAnnotation[];
|
|
61
105
|
viewport: AutomationFlowViewport;
|
|
62
106
|
}
|
|
63
107
|
/**
|
|
@@ -93,7 +137,8 @@ export interface FlowEntryPoint {
|
|
|
93
137
|
sourceApplication: AutomationSourceApplication;
|
|
94
138
|
eventType: string;
|
|
95
139
|
triggerCapability?: AutomationCapabilityReference | null;
|
|
96
|
-
|
|
140
|
+
/** Grupo vacío acepta cualquier evento del tipo configurado. */
|
|
141
|
+
filters: AutomationFilterGroup;
|
|
97
142
|
enabled: boolean;
|
|
98
143
|
triggerNodeId: string;
|
|
99
144
|
priority: number;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.FlowEntryPointExecutionMode = exports.AutomationFlowVersionStatus = exports.AutomationFlowStatus = exports.AutomationFlowKind = void 0;
|
|
3
|
+
exports.AutomationFilterOperator = exports.AutomationFilterLogicalOperator = exports.FlowEntryPointExecutionMode = exports.AutomationFlowVersionStatus = exports.AutomationFlowStatus = exports.AutomationFlowKind = void 0;
|
|
4
4
|
var AutomationFlowKind;
|
|
5
5
|
(function (AutomationFlowKind) {
|
|
6
6
|
AutomationFlowKind["CONVERSATIONAL"] = "conversational";
|
|
@@ -32,3 +32,27 @@ var FlowEntryPointExecutionMode;
|
|
|
32
32
|
/** El solapamiento fue habilitado explícitamente. */
|
|
33
33
|
FlowEntryPointExecutionMode["MULTIPLE"] = "multiple";
|
|
34
34
|
})(FlowEntryPointExecutionMode || (exports.FlowEntryPointExecutionMode = FlowEntryPointExecutionMode = {}));
|
|
35
|
+
var AutomationFilterLogicalOperator;
|
|
36
|
+
(function (AutomationFilterLogicalOperator) {
|
|
37
|
+
/** Todas las condiciones y grupos hijos deben cumplirse. */
|
|
38
|
+
AutomationFilterLogicalOperator["ALL"] = "all";
|
|
39
|
+
/** Al menos una condición o grupo hijo debe cumplirse. */
|
|
40
|
+
AutomationFilterLogicalOperator["ANY"] = "any";
|
|
41
|
+
})(AutomationFilterLogicalOperator || (exports.AutomationFilterLogicalOperator = AutomationFilterLogicalOperator = {}));
|
|
42
|
+
var AutomationFilterOperator;
|
|
43
|
+
(function (AutomationFilterOperator) {
|
|
44
|
+
AutomationFilterOperator["EQUALS"] = "equals";
|
|
45
|
+
AutomationFilterOperator["NOT_EQUALS"] = "notEquals";
|
|
46
|
+
AutomationFilterOperator["CONTAINS"] = "contains";
|
|
47
|
+
AutomationFilterOperator["NOT_CONTAINS"] = "notContains";
|
|
48
|
+
AutomationFilterOperator["STARTS_WITH"] = "startsWith";
|
|
49
|
+
AutomationFilterOperator["ENDS_WITH"] = "endsWith";
|
|
50
|
+
AutomationFilterOperator["GREATER_THAN"] = "greaterThan";
|
|
51
|
+
AutomationFilterOperator["GREATER_THAN_OR_EQUAL"] = "greaterThanOrEqual";
|
|
52
|
+
AutomationFilterOperator["LESS_THAN"] = "lessThan";
|
|
53
|
+
AutomationFilterOperator["LESS_THAN_OR_EQUAL"] = "lessThanOrEqual";
|
|
54
|
+
AutomationFilterOperator["IN"] = "in";
|
|
55
|
+
AutomationFilterOperator["NOT_IN"] = "notIn";
|
|
56
|
+
AutomationFilterOperator["EXISTS"] = "exists";
|
|
57
|
+
AutomationFilterOperator["NOT_EXISTS"] = "notExists";
|
|
58
|
+
})(AutomationFilterOperator || (exports.AutomationFilterOperator = AutomationFilterOperator = {}));
|
|
@@ -15,6 +15,37 @@ export declare enum AutomationNodePropertyEditor {
|
|
|
15
15
|
ASYNC_OPTIONS = "asyncOptions",
|
|
16
16
|
ASYNC_MULTI_OPTIONS = "asyncMultiOptions"
|
|
17
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
|
+
}
|
|
18
49
|
export interface AutomationNodeDefinition {
|
|
19
50
|
code: string;
|
|
20
51
|
version: number;
|
|
@@ -44,9 +75,9 @@ export interface AutomationNodePropertyDefinition {
|
|
|
44
75
|
schema?: AutomationJsonSchema | null;
|
|
45
76
|
options: AutomationNodeOption[];
|
|
46
77
|
optionsCapabilityCode?: string | null;
|
|
47
|
-
ui
|
|
48
|
-
showWhen?:
|
|
49
|
-
hideWhen?:
|
|
78
|
+
ui: AutomationNodePropertyUi;
|
|
79
|
+
showWhen?: AutomationNodeVisibilityRule | null;
|
|
80
|
+
hideWhen?: AutomationNodeVisibilityRule | null;
|
|
50
81
|
}
|
|
51
82
|
export interface AutomationNodeOption {
|
|
52
83
|
id: string;
|
|
@@ -68,8 +99,15 @@ export interface AutomationNodeOptionsRequest {
|
|
|
68
99
|
propertyId: string;
|
|
69
100
|
currentValues: AutomationJsonObject;
|
|
70
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;
|
|
71
108
|
}
|
|
72
109
|
export interface AutomationNodeOptionsResult {
|
|
73
110
|
options: AutomationNodeOption[];
|
|
111
|
+
/** Opaque cursor for the next page; null or omitted means the last page. */
|
|
74
112
|
continuationToken?: string | null;
|
|
75
113
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.AutomationNodePropertyEditor = void 0;
|
|
3
|
+
exports.AutomationNodeConditionOperator = exports.AutomationNodeVisibilityLogicalOperator = exports.AutomationNodePropertyEditor = void 0;
|
|
4
4
|
var AutomationNodePropertyEditor;
|
|
5
5
|
(function (AutomationNodePropertyEditor) {
|
|
6
6
|
AutomationNodePropertyEditor["STRING"] = "string";
|
|
@@ -16,3 +16,12 @@ var AutomationNodePropertyEditor;
|
|
|
16
16
|
AutomationNodePropertyEditor["ASYNC_OPTIONS"] = "asyncOptions";
|
|
17
17
|
AutomationNodePropertyEditor["ASYNC_MULTI_OPTIONS"] = "asyncMultiOptions";
|
|
18
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 = {}));
|
|
@@ -55,11 +55,14 @@ interface IChannel {
|
|
|
55
55
|
type?: ChannelType | null;
|
|
56
56
|
permissions?: Permission[] | null;
|
|
57
57
|
/**
|
|
58
|
-
* @deprecated Legacy channel assignment configuration. Use
|
|
58
|
+
* @deprecated Legacy channel assignment configuration. Use
|
|
59
|
+
* ChannelConversationRoutingConfig; Flow bindings live in FlowEntryPoint.
|
|
59
60
|
*/
|
|
60
61
|
assignTo?: ConversationAssigned;
|
|
61
62
|
/**
|
|
62
|
-
* @deprecated Legacy channel assignment configuration. Use
|
|
63
|
+
* @deprecated Legacy channel assignment configuration. Use
|
|
64
|
+
* ChannelConversationRoutingConfig; QueueRoutingPolicy controls agent
|
|
65
|
+
* distribution only after a Queue has been selected.
|
|
63
66
|
*/
|
|
64
67
|
assignMethod: AssignMethod;
|
|
65
68
|
/**
|
|
@@ -72,8 +75,7 @@ interface IChannel {
|
|
|
72
75
|
conversationsEnabled: boolean | false;
|
|
73
76
|
/**
|
|
74
77
|
* Default Queue for newly-created conversations that are not handled by a
|
|
75
|
-
* Flow. Store only the Queue id;
|
|
76
|
-
* in the Conversations domain.
|
|
78
|
+
* Flow. Store only the Queue id;
|
|
77
79
|
*/
|
|
78
80
|
conversationRouting?: ChannelConversationRoutingConfig | null;
|
|
79
81
|
/**
|
|
@@ -357,4 +357,94 @@ export interface UserInboxCounterDocument {
|
|
|
357
357
|
projectionVersion: number;
|
|
358
358
|
updatedAt: Date;
|
|
359
359
|
}
|
|
360
|
+
export interface CursorPage<T> {
|
|
361
|
+
items: T[];
|
|
362
|
+
nextCursor?: string;
|
|
363
|
+
hasMore: boolean;
|
|
364
|
+
generatedAt: Date;
|
|
365
|
+
}
|
|
366
|
+
export interface ConversationCapabilitiesDto {
|
|
367
|
+
canView: boolean;
|
|
368
|
+
canReply: boolean;
|
|
369
|
+
canFollow: boolean;
|
|
370
|
+
canAbandon: boolean;
|
|
371
|
+
canClaim: boolean;
|
|
372
|
+
canAccept: boolean;
|
|
373
|
+
canRelease: boolean;
|
|
374
|
+
canTransfer: boolean;
|
|
375
|
+
canResolve: boolean;
|
|
376
|
+
canReopen: boolean;
|
|
377
|
+
canChangePriority: boolean;
|
|
378
|
+
canManageLabels: boolean;
|
|
379
|
+
canManageSla: boolean;
|
|
380
|
+
canViewAssignmentHistory: boolean;
|
|
381
|
+
canViewRoutingDecisions: boolean;
|
|
382
|
+
}
|
|
383
|
+
export interface InboxViewSummaryDto {
|
|
384
|
+
id: InboxViewId | 'supervised_target';
|
|
385
|
+
label: string;
|
|
386
|
+
scope: 'personal' | 'supervision' | 'history';
|
|
387
|
+
order: number;
|
|
388
|
+
total: number;
|
|
389
|
+
requiresAction: number;
|
|
390
|
+
unread: number;
|
|
391
|
+
enabled: boolean;
|
|
392
|
+
targetRequired: boolean;
|
|
393
|
+
capabilities: string[];
|
|
394
|
+
}
|
|
395
|
+
export interface InboxViewsResponse {
|
|
396
|
+
views: InboxViewSummaryDto[];
|
|
397
|
+
countersGeneratedAt: Date;
|
|
398
|
+
projectionLagMs?: number;
|
|
399
|
+
}
|
|
400
|
+
export interface InboxFilterDto {
|
|
401
|
+
text?: string;
|
|
402
|
+
queueIds?: ID[];
|
|
403
|
+
ownerUserIds?: ID[];
|
|
404
|
+
channelTypes?: string[];
|
|
405
|
+
statuses?: ConversationStatus[];
|
|
406
|
+
priorities?: Array<'low' | 'normal' | 'high' | 'urgent'>;
|
|
407
|
+
slaStatuses?: Array<'none' | 'running' | 'warning' | 'breached' | 'met'>;
|
|
408
|
+
labelIds?: ID[];
|
|
409
|
+
unread?: boolean;
|
|
410
|
+
requiresAction?: boolean;
|
|
411
|
+
pinned?: boolean;
|
|
412
|
+
lastActivity?: {
|
|
413
|
+
from?: Date;
|
|
414
|
+
to?: Date;
|
|
415
|
+
};
|
|
416
|
+
sort: {
|
|
417
|
+
type: 'activity';
|
|
418
|
+
} | {
|
|
419
|
+
type: 'priority';
|
|
420
|
+
};
|
|
421
|
+
}
|
|
422
|
+
export type InboxConversationItemDto = Pick<UserInboxItemDocument, 'conversationId' | 'views' | 'snapshot' | 'pinned' | 'priorityScore' | 'sortAt'> & {
|
|
423
|
+
capabilities: Pick<ConversationCapabilitiesDto, 'canView' | 'canReply' | 'canClaim' | 'canTransfer'>;
|
|
424
|
+
};
|
|
425
|
+
export interface InboxConversationPage extends CursorPage<InboxConversationItemDto> {
|
|
426
|
+
appliedFilter: InboxFilterDto;
|
|
427
|
+
facets?: unknown;
|
|
428
|
+
}
|
|
429
|
+
/**
|
|
430
|
+
* DTO API - GET /inbox/views/{viewId}/filter-options.
|
|
431
|
+
*/
|
|
432
|
+
export interface InboxFacetOptionDto {
|
|
433
|
+
id: string;
|
|
434
|
+
label: string;
|
|
435
|
+
count: number;
|
|
436
|
+
}
|
|
437
|
+
export interface InboxFacetsDto {
|
|
438
|
+
queues: InboxFacetOptionDto[];
|
|
439
|
+
owners: InboxFacetOptionDto[];
|
|
440
|
+
channels: InboxFacetOptionDto[];
|
|
441
|
+
statuses: InboxFacetOptionDto[];
|
|
442
|
+
priorities: InboxFacetOptionDto[];
|
|
443
|
+
slaStatuses: InboxFacetOptionDto[];
|
|
444
|
+
labels: InboxFacetOptionDto[];
|
|
445
|
+
}
|
|
446
|
+
export interface InboxFilterOptionsResponse {
|
|
447
|
+
facets: InboxFacetsDto;
|
|
448
|
+
generatedAt: Date;
|
|
449
|
+
}
|
|
360
450
|
export {};
|