samva 0.9.0 → 0.11.0

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 (71) hide show
  1. package/README.md +60 -10
  2. package/dist/client/sdk.gen.d.ts +1106 -215
  3. package/dist/client/types.gen.d.ts +11554 -6343
  4. package/dist/{client-DB7zbTti.js → client-8YXjfsVc.js} +6492 -3068
  5. package/dist/{client-attribution-vK1yjEdG.js → client-attribution-Ct2FKITg.js} +2 -2
  6. package/dist/effect/analytics.d.ts +18 -18
  7. package/dist/effect/analytics.js +1 -1
  8. package/dist/effect/api-keys.d.ts +100 -44
  9. package/dist/effect/api-keys.js +2 -4
  10. package/dist/effect/attachments.d.ts +5 -6
  11. package/dist/effect/attachments.js +1 -1
  12. package/dist/effect/brands.d.ts +6 -6
  13. package/dist/effect/brands.js +2 -2
  14. package/dist/effect/campaigns.d.ts +33 -63
  15. package/dist/effect/campaigns.js +1 -1
  16. package/dist/effect/client.js +1 -1
  17. package/dist/effect/contact-groups.d.ts +33 -50
  18. package/dist/effect/contact-groups.js +1 -1
  19. package/dist/effect/contacts.d.ts +327 -729
  20. package/dist/effect/contacts.js +10 -2
  21. package/dist/effect/conversations.d.ts +579 -1134
  22. package/dist/effect/conversations.js +14 -2
  23. package/dist/effect/custom-fields.d.ts +5 -55
  24. package/dist/effect/custom-fields.js +1 -1
  25. package/dist/effect/email.d.ts +283 -317
  26. package/dist/effect/email.js +5 -3
  27. package/dist/effect/extension-installations.d.ts +218 -0
  28. package/dist/effect/extension-installations.js +25 -0
  29. package/dist/effect/extensions.d.ts +192 -0
  30. package/dist/effect/extensions.js +19 -0
  31. package/dist/effect/feedback.d.ts +12 -0
  32. package/dist/effect/feedback.js +13 -0
  33. package/dist/effect/generated.d.ts +31383 -14386
  34. package/dist/effect/index.d.ts +6 -1
  35. package/dist/effect/index.js +7 -2
  36. package/dist/effect/internal/client.d.ts +5 -2
  37. package/dist/effect/internal/mailbox-events.d.ts +11 -0
  38. package/dist/effect/internal/operation.d.ts +23 -377
  39. package/dist/effect/mailboxes.d.ts +1676 -0
  40. package/dist/effect/mailboxes.js +3 -0
  41. package/dist/effect/media.d.ts +9 -9
  42. package/dist/effect/media.js +1 -1
  43. package/dist/effect/messages.d.ts +173 -940
  44. package/dist/effect/messages.js +6 -2
  45. package/dist/effect/namespaces.d.ts +82 -0
  46. package/dist/effect/namespaces.js +19 -0
  47. package/dist/effect/operations.d.ts +68 -12
  48. package/dist/effect/operations.js +1 -1
  49. package/dist/effect/organizations.d.ts +8 -7
  50. package/dist/effect/organizations.js +1 -1
  51. package/dist/effect/pagination.d.ts +16 -21
  52. package/dist/effect/scheduled-messages.d.ts +15 -25
  53. package/dist/effect/scheduled-messages.js +1 -1
  54. package/dist/effect/templates.d.ts +213 -290
  55. package/dist/effect/templates.js +2 -2
  56. package/dist/effect/unsubscribe-groups.d.ts +22 -76
  57. package/dist/effect/unsubscribe-groups.js +1 -1
  58. package/dist/effect/webhooks.d.ts +119 -41
  59. package/dist/effect/webhooks.js +2 -2
  60. package/dist/index.js +3 -2
  61. package/dist/mailbox-events-CcWm8lO4.js +617 -0
  62. package/dist/mailbox-events.d.ts +175 -0
  63. package/dist/mailboxes-4gJMAJh4.js +147 -0
  64. package/dist/{operation-Cdp1EI_1.js → operation-BuyvAsZ1.js} +403 -67
  65. package/dist/promises/errors.gen.d.ts +5 -0
  66. package/dist/promises/index.d.ts +23 -1
  67. package/dist/promises/index.js +3 -2
  68. package/dist/promises/types.gen.d.ts +1 -1
  69. package/dist/{promises-DoEUUjNM.js → promises-CqAmI39P.js} +3242 -556
  70. package/dist/service-map.d.ts +458 -36
  71. package/package.json +28 -8
@@ -1,283 +1,78 @@
1
1
  export declare const list: ((input?: {
2
- readonly page?: string | null | undefined;
3
2
  readonly limit?: string | null | undefined;
3
+ readonly cursor?: string | null | undefined;
4
4
  readonly status?: string | null | undefined;
5
5
  readonly channel?: string | null | undefined;
6
6
  readonly contactId?: string | null | undefined;
7
- readonly startDate?: string | null | undefined;
8
- readonly endDate?: string | null | undefined;
7
+ readonly after?: string | null | undefined;
8
+ readonly before?: string | null | undefined;
9
9
  } | undefined) => import("effect/Effect").Effect<{
10
10
  readonly items: readonly {
11
11
  readonly id: string & import("effect/Brand").Brand<"ConversationId">;
12
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
13
12
  readonly title: string | null;
14
- readonly description: string | null;
15
13
  readonly externalId: string | null;
16
- readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
17
- readonly channels: readonly "email"[];
18
- readonly primaryChannel: "email";
19
14
  readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
20
- readonly statusReason: string | null;
15
+ readonly primaryChannel: "email";
16
+ readonly channels: readonly "email"[];
21
17
  readonly priority: number;
22
18
  readonly urgency: "critical" | "high" | "low" | "medium";
23
- readonly complexity: "complex" | "moderate" | "simple";
24
- readonly metadata: {
25
- readonly source?: string | null;
26
- readonly tags?: readonly string[] | null;
27
- readonly customFields?: {
28
- readonly [x: string]: import("./generated").JsonValue;
29
- } | null;
30
- } | null;
31
- readonly actorTracking: {
32
- readonly allActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
33
- readonly activeActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
34
- readonly actorHistory: readonly {
35
- readonly actorId: string & import("effect/Brand").Brand<"ActorId">;
36
- readonly actorType: "agent" | "contact" | "sender" | "system" | "user";
37
- readonly joinedAt: string;
38
- readonly leftAt?: string | null;
39
- readonly role: "initiator" | "observer" | "responder";
40
- readonly addedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
41
- readonly removedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
42
- readonly reason?: string | null;
43
- }[];
44
- readonly primaryActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
45
- };
46
- readonly metrics: {
47
- readonly messageCount: number;
48
- readonly messagesFromHuman: number;
49
- readonly totalActors: number;
50
- readonly contactCount: number;
51
- readonly channelSwitches: number;
52
- readonly channelDistribution: {
53
- readonly [x: string]: number;
54
- };
55
- };
56
- readonly context: {
57
- readonly customerData?: {
58
- readonly [x: string]: import("./generated").JsonValue;
59
- } | null;
60
- readonly previousConversations?: readonly string[] | null;
61
- readonly sessionVariables?: {
62
- readonly [x: string]: import("./generated").JsonValue;
63
- } | null;
64
- readonly workflowState?: {
65
- readonly currentStep?: string | null;
66
- readonly completedSteps?: readonly string[] | null;
67
- readonly pendingSteps?: readonly string[] | null;
68
- readonly workflowData?: {
69
- readonly [x: string]: import("./generated").JsonValue;
70
- } | null;
71
- } | null;
72
- } | null;
73
19
  readonly tags: readonly string[];
74
- readonly categories: readonly string[];
75
20
  readonly isTest: boolean;
76
- readonly isInternal: boolean;
77
- readonly isPrivate: boolean;
78
- readonly startedAt: string;
21
+ readonly messageCount: number;
79
22
  readonly lastActivityAt: string;
80
- readonly lastHumanActivityAt: string | null;
81
- readonly resolvedAt: string | null;
82
- readonly archivedAt: string | null;
83
- readonly resolvedBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
84
- readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
85
- readonly resolutionNotes: string | null;
86
23
  readonly createdAt: string;
87
- readonly updatedAt: string;
88
- readonly createdBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
89
24
  }[];
90
- readonly pagination: {
91
- readonly page: number;
92
- readonly limit: number;
93
- readonly total: number;
94
- readonly totalPages: number;
95
- };
96
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>) & {
25
+ readonly nextCursor: string | null;
26
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>) & {
97
27
  readonly pages: (input?: {
98
- readonly page?: string | null | undefined;
99
28
  readonly limit?: string | null | undefined;
29
+ readonly cursor?: string | null | undefined;
100
30
  readonly status?: string | null | undefined;
101
31
  readonly channel?: string | null | undefined;
102
32
  readonly contactId?: string | null | undefined;
103
- readonly startDate?: string | null | undefined;
104
- readonly endDate?: string | null | undefined;
33
+ readonly after?: string | null | undefined;
34
+ readonly before?: string | null | undefined;
105
35
  } | undefined) => import("effect/Stream").Stream<{
106
36
  readonly items: readonly {
107
37
  readonly id: string & import("effect/Brand").Brand<"ConversationId">;
108
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
109
38
  readonly title: string | null;
110
- readonly description: string | null;
111
39
  readonly externalId: string | null;
112
- readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
113
- readonly channels: readonly "email"[];
114
- readonly primaryChannel: "email";
115
40
  readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
116
- readonly statusReason: string | null;
41
+ readonly primaryChannel: "email";
42
+ readonly channels: readonly "email"[];
117
43
  readonly priority: number;
118
44
  readonly urgency: "critical" | "high" | "low" | "medium";
119
- readonly complexity: "complex" | "moderate" | "simple";
120
- readonly metadata: {
121
- readonly source?: string | null;
122
- readonly tags?: readonly string[] | null;
123
- readonly customFields?: {
124
- readonly [x: string]: import("./generated").JsonValue;
125
- } | null;
126
- } | null;
127
- readonly actorTracking: {
128
- readonly allActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
129
- readonly activeActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
130
- readonly actorHistory: readonly {
131
- readonly actorId: string & import("effect/Brand").Brand<"ActorId">;
132
- readonly actorType: "agent" | "contact" | "sender" | "system" | "user";
133
- readonly joinedAt: string;
134
- readonly leftAt?: string | null;
135
- readonly role: "initiator" | "observer" | "responder";
136
- readonly addedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
137
- readonly removedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
138
- readonly reason?: string | null;
139
- }[];
140
- readonly primaryActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
141
- };
142
- readonly metrics: {
143
- readonly messageCount: number;
144
- readonly messagesFromHuman: number;
145
- readonly totalActors: number;
146
- readonly contactCount: number;
147
- readonly channelSwitches: number;
148
- readonly channelDistribution: {
149
- readonly [x: string]: number;
150
- };
151
- };
152
- readonly context: {
153
- readonly customerData?: {
154
- readonly [x: string]: import("./generated").JsonValue;
155
- } | null;
156
- readonly previousConversations?: readonly string[] | null;
157
- readonly sessionVariables?: {
158
- readonly [x: string]: import("./generated").JsonValue;
159
- } | null;
160
- readonly workflowState?: {
161
- readonly currentStep?: string | null;
162
- readonly completedSteps?: readonly string[] | null;
163
- readonly pendingSteps?: readonly string[] | null;
164
- readonly workflowData?: {
165
- readonly [x: string]: import("./generated").JsonValue;
166
- } | null;
167
- } | null;
168
- } | null;
169
45
  readonly tags: readonly string[];
170
- readonly categories: readonly string[];
171
46
  readonly isTest: boolean;
172
- readonly isInternal: boolean;
173
- readonly isPrivate: boolean;
174
- readonly startedAt: string;
47
+ readonly messageCount: number;
175
48
  readonly lastActivityAt: string;
176
- readonly lastHumanActivityAt: string | null;
177
- readonly resolvedAt: string | null;
178
- readonly archivedAt: string | null;
179
- readonly resolvedBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
180
- readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
181
- readonly resolutionNotes: string | null;
182
49
  readonly createdAt: string;
183
- readonly updatedAt: string;
184
- readonly createdBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
185
50
  }[];
186
- readonly pagination: {
187
- readonly page: number;
188
- readonly limit: number;
189
- readonly total: number;
190
- readonly totalPages: number;
191
- };
192
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
51
+ readonly nextCursor: string | null;
52
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
193
53
  readonly items: (input?: {
194
- readonly page?: string | null | undefined;
195
54
  readonly limit?: string | null | undefined;
55
+ readonly cursor?: string | null | undefined;
196
56
  readonly status?: string | null | undefined;
197
57
  readonly channel?: string | null | undefined;
198
58
  readonly contactId?: string | null | undefined;
199
- readonly startDate?: string | null | undefined;
200
- readonly endDate?: string | null | undefined;
59
+ readonly after?: string | null | undefined;
60
+ readonly before?: string | null | undefined;
201
61
  } | undefined) => import("effect/Stream").Stream<{
202
62
  readonly id: string & import("effect/Brand").Brand<"ConversationId">;
203
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
204
63
  readonly title: string | null;
205
- readonly description: string | null;
206
64
  readonly externalId: string | null;
207
- readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
208
- readonly channels: readonly "email"[];
209
- readonly primaryChannel: "email";
210
65
  readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
211
- readonly statusReason: string | null;
66
+ readonly primaryChannel: "email";
67
+ readonly channels: readonly "email"[];
212
68
  readonly priority: number;
213
69
  readonly urgency: "critical" | "high" | "low" | "medium";
214
- readonly complexity: "complex" | "moderate" | "simple";
215
- readonly metadata: {
216
- readonly source?: string | null;
217
- readonly tags?: readonly string[] | null;
218
- readonly customFields?: {
219
- readonly [x: string]: import("./generated").JsonValue;
220
- } | null;
221
- } | null;
222
- readonly actorTracking: {
223
- readonly allActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
224
- readonly activeActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
225
- readonly actorHistory: readonly {
226
- readonly actorId: string & import("effect/Brand").Brand<"ActorId">;
227
- readonly actorType: "agent" | "contact" | "sender" | "system" | "user";
228
- readonly joinedAt: string;
229
- readonly leftAt?: string | null;
230
- readonly role: "initiator" | "observer" | "responder";
231
- readonly addedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
232
- readonly removedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
233
- readonly reason?: string | null;
234
- }[];
235
- readonly primaryActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
236
- };
237
- readonly metrics: {
238
- readonly messageCount: number;
239
- readonly messagesFromHuman: number;
240
- readonly totalActors: number;
241
- readonly contactCount: number;
242
- readonly channelSwitches: number;
243
- readonly channelDistribution: {
244
- readonly [x: string]: number;
245
- };
246
- };
247
- readonly context: {
248
- readonly customerData?: {
249
- readonly [x: string]: import("./generated").JsonValue;
250
- } | null;
251
- readonly previousConversations?: readonly string[] | null;
252
- readonly sessionVariables?: {
253
- readonly [x: string]: import("./generated").JsonValue;
254
- } | null;
255
- readonly workflowState?: {
256
- readonly currentStep?: string | null;
257
- readonly completedSteps?: readonly string[] | null;
258
- readonly pendingSteps?: readonly string[] | null;
259
- readonly workflowData?: {
260
- readonly [x: string]: import("./generated").JsonValue;
261
- } | null;
262
- } | null;
263
- } | null;
264
70
  readonly tags: readonly string[];
265
- readonly categories: readonly string[];
266
71
  readonly isTest: boolean;
267
- readonly isInternal: boolean;
268
- readonly isPrivate: boolean;
269
- readonly startedAt: string;
72
+ readonly messageCount: number;
270
73
  readonly lastActivityAt: string;
271
- readonly lastHumanActivityAt: string | null;
272
- readonly resolvedAt: string | null;
273
- readonly archivedAt: string | null;
274
- readonly resolvedBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
275
- readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
276
- readonly resolutionNotes: string | null;
277
74
  readonly createdAt: string;
278
- readonly updatedAt: string;
279
- readonly createdBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
280
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
75
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
281
76
  };
282
77
  export declare const create: (input: {
283
78
  readonly title?: string | null | undefined;
@@ -292,61 +87,32 @@ export declare const create: (input: {
292
87
  readonly urgency?: string | null | undefined;
293
88
  readonly complexity?: string | null | undefined;
294
89
  readonly metadata?: {
295
- readonly source?: string | null | undefined;
296
- readonly tags?: readonly string[] | null | undefined;
297
- readonly customFields?: {
298
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | {
299
- readonly [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any | null | undefined;
300
- } | null)[] | {
301
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
302
- } | null)[] | {
303
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
304
- } | null)[] | {
305
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
306
- } | null)[] | {
307
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
308
- } | null)[] | {
309
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
310
- } | null)[] | {
311
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
312
- } | null)[] | {
313
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
314
- } | null)[] | {
315
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
316
- } | null)[] | {
317
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
318
- } | null)[] | {
319
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
320
- } | null)[] | {
321
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
322
- } | null | undefined;
90
+ readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | /*elided*/ any | {
91
+ readonly [x: string]: string | number | boolean | /*elided*/ any | /*elided*/ any | null | undefined;
92
+ } | null)[] | {
93
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
94
+ } | null)[] | {
95
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
96
+ } | null)[] | {
97
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
98
+ } | null)[] | {
99
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
100
+ } | null)[] | {
101
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
102
+ } | null)[] | {
103
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
104
+ } | null)[] | {
105
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
106
+ } | null)[] | {
107
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
108
+ } | null)[] | {
109
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
110
+ } | null)[] | {
111
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
112
+ } | null)[] | {
113
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
323
114
  } | null | undefined;
324
115
  } | null | undefined;
325
- readonly actorTracking?: {
326
- readonly allActorIds: readonly string[];
327
- readonly activeActorIds: readonly string[];
328
- readonly actorHistory: readonly {
329
- readonly actorId: string;
330
- readonly actorType: string;
331
- readonly joinedAt: string;
332
- readonly leftAt?: string | null | undefined;
333
- readonly role: string;
334
- readonly addedBy?: string | null | undefined;
335
- readonly removedBy?: string | null | undefined;
336
- readonly reason?: string | null | undefined;
337
- }[];
338
- readonly primaryActorIds: readonly string[];
339
- } | null | undefined;
340
- readonly metrics?: {
341
- readonly messageCount: number;
342
- readonly messagesFromHuman: number;
343
- readonly totalActors: number;
344
- readonly contactCount: number;
345
- readonly channelSwitches: number;
346
- readonly channelDistribution: {
347
- readonly [x: string]: number | undefined;
348
- };
349
- } | null | undefined;
350
116
  readonly context?: {
351
117
  readonly customerData?: {
352
118
  readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | any | {
@@ -443,50 +209,26 @@ export declare const create: (input: {
443
209
  readonly isPrivate?: boolean | null | undefined;
444
210
  }) => import("effect/Effect").Effect<{
445
211
  readonly id: string & import("effect/Brand").Brand<"ConversationId">;
446
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
447
212
  readonly title: string | null;
448
- readonly description: string | null;
449
213
  readonly externalId: string | null;
450
- readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
451
- readonly channels: readonly "email"[];
452
- readonly primaryChannel: "email";
453
214
  readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
454
- readonly statusReason: string | null;
215
+ readonly primaryChannel: "email";
216
+ readonly channels: readonly "email"[];
455
217
  readonly priority: number;
456
218
  readonly urgency: "critical" | "high" | "low" | "medium";
219
+ readonly tags: readonly string[];
220
+ readonly isTest: boolean;
221
+ readonly messageCount: number;
222
+ readonly lastActivityAt: string;
223
+ readonly createdAt: string;
224
+ readonly description: string | null;
225
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
226
+ readonly statusReason: string | null;
457
227
  readonly complexity: "complex" | "moderate" | "simple";
228
+ readonly categories: readonly string[];
458
229
  readonly metadata: {
459
- readonly source?: string | null;
460
- readonly tags?: readonly string[] | null;
461
- readonly customFields?: {
462
- readonly [x: string]: import("./generated").JsonValue;
463
- } | null;
230
+ readonly [x: string]: import("./generated").JsonValue;
464
231
  } | null;
465
- readonly actorTracking: {
466
- readonly allActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
467
- readonly activeActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
468
- readonly actorHistory: readonly {
469
- readonly actorId: string & import("effect/Brand").Brand<"ActorId">;
470
- readonly actorType: "agent" | "contact" | "sender" | "system" | "user";
471
- readonly joinedAt: string;
472
- readonly leftAt?: string | null;
473
- readonly role: "initiator" | "observer" | "responder";
474
- readonly addedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
475
- readonly removedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
476
- readonly reason?: string | null;
477
- }[];
478
- readonly primaryActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
479
- };
480
- readonly metrics: {
481
- readonly messageCount: number;
482
- readonly messagesFromHuman: number;
483
- readonly totalActors: number;
484
- readonly contactCount: number;
485
- readonly channelSwitches: number;
486
- readonly channelDistribution: {
487
- readonly [x: string]: number;
488
- };
489
- };
490
232
  readonly context: {
491
233
  readonly customerData?: {
492
234
  readonly [x: string]: import("./generated").JsonValue;
@@ -504,71 +246,50 @@ export declare const create: (input: {
504
246
  } | null;
505
247
  } | null;
506
248
  } | null;
507
- readonly tags: readonly string[];
508
- readonly categories: readonly string[];
509
- readonly isTest: boolean;
510
249
  readonly isInternal: boolean;
511
250
  readonly isPrivate: boolean;
251
+ readonly contacts: readonly {
252
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
253
+ readonly name: string;
254
+ readonly displayName: string | null;
255
+ readonly identities: readonly {
256
+ readonly channel: "email";
257
+ readonly identifier: string;
258
+ readonly verified: boolean;
259
+ }[];
260
+ }[];
512
261
  readonly startedAt: string;
513
- readonly lastActivityAt: string;
514
262
  readonly lastHumanActivityAt: string | null;
515
263
  readonly resolvedAt: string | null;
516
264
  readonly archivedAt: string | null;
517
- readonly resolvedBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
518
265
  readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
519
266
  readonly resolutionNotes: string | null;
520
- readonly createdAt: string;
521
267
  readonly updatedAt: string;
522
- readonly createdBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
523
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
268
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
524
269
  export declare const getById: (input: {
525
270
  readonly id: string;
526
271
  }) => import("effect/Effect").Effect<{
527
272
  readonly id: string & import("effect/Brand").Brand<"ConversationId">;
528
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
529
273
  readonly title: string | null;
530
- readonly description: string | null;
531
274
  readonly externalId: string | null;
532
- readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
533
- readonly channels: readonly "email"[];
534
- readonly primaryChannel: "email";
535
275
  readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
536
- readonly statusReason: string | null;
276
+ readonly primaryChannel: "email";
277
+ readonly channels: readonly "email"[];
537
278
  readonly priority: number;
538
279
  readonly urgency: "critical" | "high" | "low" | "medium";
280
+ readonly tags: readonly string[];
281
+ readonly isTest: boolean;
282
+ readonly messageCount: number;
283
+ readonly lastActivityAt: string;
284
+ readonly createdAt: string;
285
+ readonly description: string | null;
286
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
287
+ readonly statusReason: string | null;
539
288
  readonly complexity: "complex" | "moderate" | "simple";
289
+ readonly categories: readonly string[];
540
290
  readonly metadata: {
541
- readonly source?: string | null;
542
- readonly tags?: readonly string[] | null;
543
- readonly customFields?: {
544
- readonly [x: string]: import("./generated").JsonValue;
545
- } | null;
291
+ readonly [x: string]: import("./generated").JsonValue;
546
292
  } | null;
547
- readonly actorTracking: {
548
- readonly allActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
549
- readonly activeActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
550
- readonly actorHistory: readonly {
551
- readonly actorId: string & import("effect/Brand").Brand<"ActorId">;
552
- readonly actorType: "agent" | "contact" | "sender" | "system" | "user";
553
- readonly joinedAt: string;
554
- readonly leftAt?: string | null;
555
- readonly role: "initiator" | "observer" | "responder";
556
- readonly addedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
557
- readonly removedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
558
- readonly reason?: string | null;
559
- }[];
560
- readonly primaryActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
561
- };
562
- readonly metrics: {
563
- readonly messageCount: number;
564
- readonly messagesFromHuman: number;
565
- readonly totalActors: number;
566
- readonly contactCount: number;
567
- readonly channelSwitches: number;
568
- readonly channelDistribution: {
569
- readonly [x: string]: number;
570
- };
571
- };
572
293
  readonly context: {
573
294
  readonly customerData?: {
574
295
  readonly [x: string]: import("./generated").JsonValue;
@@ -586,636 +307,83 @@ export declare const getById: (input: {
586
307
  } | null;
587
308
  } | null;
588
309
  } | null;
589
- readonly tags: readonly string[];
590
- readonly categories: readonly string[];
591
- readonly isTest: boolean;
592
310
  readonly isInternal: boolean;
593
311
  readonly isPrivate: boolean;
312
+ readonly contacts: readonly {
313
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
314
+ readonly name: string;
315
+ readonly displayName: string | null;
316
+ readonly identities: readonly {
317
+ readonly channel: "email";
318
+ readonly identifier: string;
319
+ readonly verified: boolean;
320
+ }[];
321
+ }[];
594
322
  readonly startedAt: string;
595
- readonly lastActivityAt: string;
596
323
  readonly lastHumanActivityAt: string | null;
597
324
  readonly resolvedAt: string | null;
598
325
  readonly archivedAt: string | null;
599
- readonly resolvedBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
600
326
  readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
601
327
  readonly resolutionNotes: string | null;
602
- readonly createdAt: string;
603
328
  readonly updatedAt: string;
604
- readonly createdBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
605
- readonly participants: readonly {
606
- readonly actorId: string & import("effect/Brand").Brand<"ActorId">;
607
- readonly actorType: "agent" | "contact" | "sender" | "system" | "user";
608
- readonly contact: {
609
- readonly id: string;
610
- readonly name: string;
611
- readonly displayName: string | null;
612
- readonly type: string;
613
- readonly identities: readonly {
614
- readonly channel: "email";
615
- readonly identifier: string;
616
- readonly verified: boolean;
617
- }[];
618
- };
619
- }[];
620
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
329
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
621
330
  export declare const listMessages: ((input: {
622
331
  readonly id: string;
623
- readonly page?: string | null | undefined;
624
332
  readonly limit?: string | null | undefined;
333
+ readonly cursor?: string | null | undefined;
334
+ readonly after?: string | null | undefined;
335
+ readonly before?: string | null | undefined;
625
336
  }) => import("effect/Effect").Effect<{
626
337
  readonly items: readonly {
627
- readonly id: string;
628
- readonly organizationId: string;
629
- readonly conversationId: string | null;
630
- readonly parentMessageId: string | null;
631
- readonly fromActorId: string;
632
- readonly actorMetadata: {
633
- readonly [x: string]: import("./generated").JsonValue;
634
- } | null;
338
+ readonly id: string & import("effect/Brand").Brand<"MessageId">;
635
339
  readonly channel: "email";
636
340
  readonly direction: "inbound" | "outbound";
637
- readonly content: {
638
- readonly text?: string | null;
639
- readonly html?: string | null;
640
- readonly markdown?: string | null;
641
- readonly email?: {
642
- readonly subject?: string | null;
643
- readonly html?: string | null;
644
- readonly text?: string | null;
645
- readonly headers?: {
646
- readonly [x: string]: string;
647
- } | null;
648
- readonly tracking?: {
649
- readonly opens?: boolean;
650
- readonly clicks?: boolean;
651
- };
652
- readonly attachments?: readonly {
653
- readonly filename: string;
654
- readonly content?: string | null;
655
- readonly mediaId?: (string & import("effect/Brand").Brand<"MediaId">) | null;
656
- readonly contentType: string;
657
- readonly size: number;
658
- }[] | null;
659
- } | null;
660
- readonly metadata?: {
661
- readonly [x: string]: import("./generated").JsonValue;
662
- } | null;
663
- };
664
- readonly metadata: {
665
- readonly [x: string]: import("./generated").JsonValue;
666
- } | null;
667
341
  readonly status: "bounced" | "complained" | "delivered" | "failed" | "pending" | "processing" | "queued" | "read" | "scheduled" | "sent";
668
- readonly scheduledAt: string | null;
669
- readonly tags: readonly string[];
670
- readonly categories: readonly string[];
671
- readonly isTest: boolean;
672
- readonly externalId: string | null;
673
- readonly referenceId: string | null;
674
- readonly submission: {
675
- readonly origin: "campaign" | "direct" | "scheduled";
676
- readonly transport: "http" | null;
677
- readonly credential: {
678
- readonly kind: "api_key";
679
- readonly apiKeyId: (string & import("effect/Brand").Brand<"ApiKeyId">) | null;
680
- } | {
681
- readonly kind: "oauth";
682
- readonly clientId: string | null;
683
- } | {
684
- readonly kind: "session";
685
- } | null;
686
- readonly userId: (string & import("effect/Brand").Brand<"UserId">) | null;
687
- readonly client: {
688
- readonly surface: "cli" | "mcp" | "typescript-effect" | "typescript-promise";
689
- readonly version: string;
690
- } | null;
691
- } | null;
692
- readonly createdAt: string;
693
- readonly updatedAt: string;
694
- readonly fromContact: {
695
- readonly id: string;
696
- readonly name: string;
697
- readonly displayName: string | null;
698
- readonly type: string;
699
- readonly identities: readonly {
700
- readonly channel: "email";
701
- readonly identifier: string;
702
- readonly verified: boolean;
703
- }[];
704
- } | null;
705
- readonly toContacts: readonly {
706
- readonly id: string;
707
- readonly name: string;
708
- readonly displayName: string | null;
709
- readonly type: string;
710
- readonly identities: readonly {
711
- readonly channel: "email";
712
- readonly identifier: string;
713
- readonly verified: boolean;
714
- }[];
715
- }[];
716
- readonly recipients: readonly {
717
- readonly id: string;
718
- readonly messageId: string;
719
- readonly actorId: string | null;
720
- readonly contactId: string | null;
721
- readonly identityId: string | null;
722
- readonly kind: "bcc" | "cc" | "to";
723
- readonly address: string;
724
- readonly status: "bounced" | "complained" | "delivered" | "failed" | "pending" | "processing" | "queued" | "read" | "scheduled" | "sent";
725
- readonly createdAt: string;
726
- readonly updatedAt: string;
727
- readonly contact: {
728
- readonly id: string;
729
- readonly name: string;
730
- readonly displayName: string | null;
731
- readonly type: string;
732
- readonly identities: readonly {
733
- readonly channel: "email";
734
- readonly identifier: string;
735
- readonly verified: boolean;
736
- }[];
737
- } | null;
738
- }[];
739
- readonly deliveries: readonly {
740
- readonly scheduling: {
741
- readonly dueAt: string;
742
- readonly expiresAt: string;
743
- readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "sending-paused" | "upstream-unavailable" | null;
744
- readonly reviewExpectedAt: string | null;
745
- } | null;
746
- readonly id: string;
747
- readonly messageId: string;
748
- readonly recipientId: string | null;
749
- readonly channel: "email";
750
- readonly status: "bounced" | "complained" | "delivered" | "failed" | "pending" | "processing" | "queued" | "read" | "scheduled" | "sent";
751
- readonly attemptCount: number;
752
- readonly maxAttempts: number;
753
- readonly queuedAt: string | null;
754
- readonly claimedAt: string | null;
755
- readonly lastAttemptAt: string | null;
756
- readonly nextRetryAt: string | null;
757
- readonly sentAt: string | null;
758
- readonly deliveredAt: string | null;
759
- readonly readAt: string | null;
760
- readonly failedAt: string | null;
761
- readonly terminalAt: string | null;
762
- readonly errorCode: string | null;
763
- readonly errorMessage: string | null;
764
- readonly errorDetails: {
765
- readonly code?: string | null;
766
- readonly name?: string | null;
767
- readonly message?: string | null;
768
- readonly details?: {
769
- readonly [x: string]: string | number | null;
770
- } | null;
771
- readonly retryable?: boolean | null;
772
- } | null;
773
- readonly cost: string;
774
- readonly currency: string;
775
- readonly idempotencyKey: string | null;
776
- readonly createdAt: string;
777
- readonly updatedAt: string;
778
- }[];
779
- readonly emailDeliveryDetails: readonly {
780
- readonly deliveryId: string;
781
- readonly messageIdHeader: string;
782
- readonly inReplyTo: string | null;
783
- readonly references: readonly string[] | null;
784
- readonly subject: string;
785
- readonly fromEmail: string;
786
- readonly fromName: string | null;
787
- readonly toEmails: readonly string[];
788
- readonly toName: string | null;
789
- readonly ccEmails: readonly string[] | null;
790
- readonly bccEmails: readonly string[] | null;
791
- readonly replyToEmails: readonly string[] | null;
792
- readonly hasAttachments: boolean;
793
- readonly attachmentCount: number;
794
- readonly listUnsubscribeUrl: string | null;
795
- readonly listUnsubscribeEmail: string | null;
796
- readonly threadPosition: number | null;
797
- readonly newContent: string | null;
798
- readonly quotedContent: string | null;
799
- readonly hasQuotedContent: boolean;
800
- readonly dkimVerdict: string | null;
801
- readonly spfVerdict: string | null;
802
- readonly dmarcVerdict: string | null;
803
- readonly isAutoReply: boolean;
804
- readonly autoReplyReason: "auto-response" | "delivery-status" | "out-of-office" | "read-receipt" | null;
805
- readonly priority: string | null;
806
- readonly parsingErrors: readonly string[] | null;
807
- readonly parsingDuration: number | null;
808
- readonly receivedAt: string | null;
809
- readonly processedAt: string | null;
810
- readonly createdAt: string;
811
- readonly updatedAt: string;
812
- }[];
342
+ readonly from: string | null;
343
+ readonly to: readonly string[];
344
+ readonly subject: string | null;
813
345
  readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "sending-paused" | "upstream-unavailable" | null;
814
- readonly reviewExpectedAt: string | null;
346
+ readonly createdAt: string;
815
347
  }[];
816
- readonly pagination: {
817
- readonly page: number;
818
- readonly limit: number;
819
- readonly total: number;
820
- readonly totalPages: number;
821
- };
822
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>) & {
348
+ readonly nextCursor: string | null;
349
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>) & {
823
350
  readonly pages: (input: {
824
351
  readonly id: string;
825
- readonly page?: string | null | undefined;
826
352
  readonly limit?: string | null | undefined;
353
+ readonly cursor?: string | null | undefined;
354
+ readonly after?: string | null | undefined;
355
+ readonly before?: string | null | undefined;
827
356
  }) => import("effect/Stream").Stream<{
828
357
  readonly items: readonly {
829
- readonly id: string;
830
- readonly organizationId: string;
831
- readonly conversationId: string | null;
832
- readonly parentMessageId: string | null;
833
- readonly fromActorId: string;
834
- readonly actorMetadata: {
835
- readonly [x: string]: import("./generated").JsonValue;
836
- } | null;
358
+ readonly id: string & import("effect/Brand").Brand<"MessageId">;
837
359
  readonly channel: "email";
838
360
  readonly direction: "inbound" | "outbound";
839
- readonly content: {
840
- readonly text?: string | null;
841
- readonly html?: string | null;
842
- readonly markdown?: string | null;
843
- readonly email?: {
844
- readonly subject?: string | null;
845
- readonly html?: string | null;
846
- readonly text?: string | null;
847
- readonly headers?: {
848
- readonly [x: string]: string;
849
- } | null;
850
- readonly tracking?: {
851
- readonly opens?: boolean;
852
- readonly clicks?: boolean;
853
- };
854
- readonly attachments?: readonly {
855
- readonly filename: string;
856
- readonly content?: string | null;
857
- readonly mediaId?: (string & import("effect/Brand").Brand<"MediaId">) | null;
858
- readonly contentType: string;
859
- readonly size: number;
860
- }[] | null;
861
- } | null;
862
- readonly metadata?: {
863
- readonly [x: string]: import("./generated").JsonValue;
864
- } | null;
865
- };
866
- readonly metadata: {
867
- readonly [x: string]: import("./generated").JsonValue;
868
- } | null;
869
361
  readonly status: "bounced" | "complained" | "delivered" | "failed" | "pending" | "processing" | "queued" | "read" | "scheduled" | "sent";
870
- readonly scheduledAt: string | null;
871
- readonly tags: readonly string[];
872
- readonly categories: readonly string[];
873
- readonly isTest: boolean;
874
- readonly externalId: string | null;
875
- readonly referenceId: string | null;
876
- readonly submission: {
877
- readonly origin: "campaign" | "direct" | "scheduled";
878
- readonly transport: "http" | null;
879
- readonly credential: {
880
- readonly kind: "api_key";
881
- readonly apiKeyId: (string & import("effect/Brand").Brand<"ApiKeyId">) | null;
882
- } | {
883
- readonly kind: "oauth";
884
- readonly clientId: string | null;
885
- } | {
886
- readonly kind: "session";
887
- } | null;
888
- readonly userId: (string & import("effect/Brand").Brand<"UserId">) | null;
889
- readonly client: {
890
- readonly surface: "cli" | "mcp" | "typescript-effect" | "typescript-promise";
891
- readonly version: string;
892
- } | null;
893
- } | null;
894
- readonly createdAt: string;
895
- readonly updatedAt: string;
896
- readonly fromContact: {
897
- readonly id: string;
898
- readonly name: string;
899
- readonly displayName: string | null;
900
- readonly type: string;
901
- readonly identities: readonly {
902
- readonly channel: "email";
903
- readonly identifier: string;
904
- readonly verified: boolean;
905
- }[];
906
- } | null;
907
- readonly toContacts: readonly {
908
- readonly id: string;
909
- readonly name: string;
910
- readonly displayName: string | null;
911
- readonly type: string;
912
- readonly identities: readonly {
913
- readonly channel: "email";
914
- readonly identifier: string;
915
- readonly verified: boolean;
916
- }[];
917
- }[];
918
- readonly recipients: readonly {
919
- readonly id: string;
920
- readonly messageId: string;
921
- readonly actorId: string | null;
922
- readonly contactId: string | null;
923
- readonly identityId: string | null;
924
- readonly kind: "bcc" | "cc" | "to";
925
- readonly address: string;
926
- readonly status: "bounced" | "complained" | "delivered" | "failed" | "pending" | "processing" | "queued" | "read" | "scheduled" | "sent";
927
- readonly createdAt: string;
928
- readonly updatedAt: string;
929
- readonly contact: {
930
- readonly id: string;
931
- readonly name: string;
932
- readonly displayName: string | null;
933
- readonly type: string;
934
- readonly identities: readonly {
935
- readonly channel: "email";
936
- readonly identifier: string;
937
- readonly verified: boolean;
938
- }[];
939
- } | null;
940
- }[];
941
- readonly deliveries: readonly {
942
- readonly scheduling: {
943
- readonly dueAt: string;
944
- readonly expiresAt: string;
945
- readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "sending-paused" | "upstream-unavailable" | null;
946
- readonly reviewExpectedAt: string | null;
947
- } | null;
948
- readonly id: string;
949
- readonly messageId: string;
950
- readonly recipientId: string | null;
951
- readonly channel: "email";
952
- readonly status: "bounced" | "complained" | "delivered" | "failed" | "pending" | "processing" | "queued" | "read" | "scheduled" | "sent";
953
- readonly attemptCount: number;
954
- readonly maxAttempts: number;
955
- readonly queuedAt: string | null;
956
- readonly claimedAt: string | null;
957
- readonly lastAttemptAt: string | null;
958
- readonly nextRetryAt: string | null;
959
- readonly sentAt: string | null;
960
- readonly deliveredAt: string | null;
961
- readonly readAt: string | null;
962
- readonly failedAt: string | null;
963
- readonly terminalAt: string | null;
964
- readonly errorCode: string | null;
965
- readonly errorMessage: string | null;
966
- readonly errorDetails: {
967
- readonly code?: string | null;
968
- readonly name?: string | null;
969
- readonly message?: string | null;
970
- readonly details?: {
971
- readonly [x: string]: string | number | null;
972
- } | null;
973
- readonly retryable?: boolean | null;
974
- } | null;
975
- readonly cost: string;
976
- readonly currency: string;
977
- readonly idempotencyKey: string | null;
978
- readonly createdAt: string;
979
- readonly updatedAt: string;
980
- }[];
981
- readonly emailDeliveryDetails: readonly {
982
- readonly deliveryId: string;
983
- readonly messageIdHeader: string;
984
- readonly inReplyTo: string | null;
985
- readonly references: readonly string[] | null;
986
- readonly subject: string;
987
- readonly fromEmail: string;
988
- readonly fromName: string | null;
989
- readonly toEmails: readonly string[];
990
- readonly toName: string | null;
991
- readonly ccEmails: readonly string[] | null;
992
- readonly bccEmails: readonly string[] | null;
993
- readonly replyToEmails: readonly string[] | null;
994
- readonly hasAttachments: boolean;
995
- readonly attachmentCount: number;
996
- readonly listUnsubscribeUrl: string | null;
997
- readonly listUnsubscribeEmail: string | null;
998
- readonly threadPosition: number | null;
999
- readonly newContent: string | null;
1000
- readonly quotedContent: string | null;
1001
- readonly hasQuotedContent: boolean;
1002
- readonly dkimVerdict: string | null;
1003
- readonly spfVerdict: string | null;
1004
- readonly dmarcVerdict: string | null;
1005
- readonly isAutoReply: boolean;
1006
- readonly autoReplyReason: "auto-response" | "delivery-status" | "out-of-office" | "read-receipt" | null;
1007
- readonly priority: string | null;
1008
- readonly parsingErrors: readonly string[] | null;
1009
- readonly parsingDuration: number | null;
1010
- readonly receivedAt: string | null;
1011
- readonly processedAt: string | null;
1012
- readonly createdAt: string;
1013
- readonly updatedAt: string;
1014
- }[];
362
+ readonly from: string | null;
363
+ readonly to: readonly string[];
364
+ readonly subject: string | null;
1015
365
  readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "sending-paused" | "upstream-unavailable" | null;
1016
- readonly reviewExpectedAt: string | null;
366
+ readonly createdAt: string;
1017
367
  }[];
1018
- readonly pagination: {
1019
- readonly page: number;
1020
- readonly limit: number;
1021
- readonly total: number;
1022
- readonly totalPages: number;
1023
- };
1024
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
368
+ readonly nextCursor: string | null;
369
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1025
370
  readonly items: (input: {
1026
371
  readonly id: string;
1027
- readonly page?: string | null | undefined;
1028
372
  readonly limit?: string | null | undefined;
373
+ readonly cursor?: string | null | undefined;
374
+ readonly after?: string | null | undefined;
375
+ readonly before?: string | null | undefined;
1029
376
  }) => import("effect/Stream").Stream<{
1030
- readonly id: string;
1031
- readonly organizationId: string;
1032
- readonly conversationId: string | null;
1033
- readonly parentMessageId: string | null;
1034
- readonly fromActorId: string;
1035
- readonly actorMetadata: {
1036
- readonly [x: string]: import("./generated").JsonValue;
1037
- } | null;
377
+ readonly id: string & import("effect/Brand").Brand<"MessageId">;
1038
378
  readonly channel: "email";
1039
379
  readonly direction: "inbound" | "outbound";
1040
- readonly content: {
1041
- readonly text?: string | null;
1042
- readonly html?: string | null;
1043
- readonly markdown?: string | null;
1044
- readonly email?: {
1045
- readonly subject?: string | null;
1046
- readonly html?: string | null;
1047
- readonly text?: string | null;
1048
- readonly headers?: {
1049
- readonly [x: string]: string;
1050
- } | null;
1051
- readonly tracking?: {
1052
- readonly opens?: boolean;
1053
- readonly clicks?: boolean;
1054
- };
1055
- readonly attachments?: readonly {
1056
- readonly filename: string;
1057
- readonly content?: string | null;
1058
- readonly mediaId?: (string & import("effect/Brand").Brand<"MediaId">) | null;
1059
- readonly contentType: string;
1060
- readonly size: number;
1061
- }[] | null;
1062
- } | null;
1063
- readonly metadata?: {
1064
- readonly [x: string]: import("./generated").JsonValue;
1065
- } | null;
1066
- };
1067
- readonly metadata: {
1068
- readonly [x: string]: import("./generated").JsonValue;
1069
- } | null;
1070
380
  readonly status: "bounced" | "complained" | "delivered" | "failed" | "pending" | "processing" | "queued" | "read" | "scheduled" | "sent";
1071
- readonly scheduledAt: string | null;
1072
- readonly tags: readonly string[];
1073
- readonly categories: readonly string[];
1074
- readonly isTest: boolean;
1075
- readonly externalId: string | null;
1076
- readonly referenceId: string | null;
1077
- readonly submission: {
1078
- readonly origin: "campaign" | "direct" | "scheduled";
1079
- readonly transport: "http" | null;
1080
- readonly credential: {
1081
- readonly kind: "api_key";
1082
- readonly apiKeyId: (string & import("effect/Brand").Brand<"ApiKeyId">) | null;
1083
- } | {
1084
- readonly kind: "oauth";
1085
- readonly clientId: string | null;
1086
- } | {
1087
- readonly kind: "session";
1088
- } | null;
1089
- readonly userId: (string & import("effect/Brand").Brand<"UserId">) | null;
1090
- readonly client: {
1091
- readonly surface: "cli" | "mcp" | "typescript-effect" | "typescript-promise";
1092
- readonly version: string;
1093
- } | null;
1094
- } | null;
1095
- readonly createdAt: string;
1096
- readonly updatedAt: string;
1097
- readonly fromContact: {
1098
- readonly id: string;
1099
- readonly name: string;
1100
- readonly displayName: string | null;
1101
- readonly type: string;
1102
- readonly identities: readonly {
1103
- readonly channel: "email";
1104
- readonly identifier: string;
1105
- readonly verified: boolean;
1106
- }[];
1107
- } | null;
1108
- readonly toContacts: readonly {
1109
- readonly id: string;
1110
- readonly name: string;
1111
- readonly displayName: string | null;
1112
- readonly type: string;
1113
- readonly identities: readonly {
1114
- readonly channel: "email";
1115
- readonly identifier: string;
1116
- readonly verified: boolean;
1117
- }[];
1118
- }[];
1119
- readonly recipients: readonly {
1120
- readonly id: string;
1121
- readonly messageId: string;
1122
- readonly actorId: string | null;
1123
- readonly contactId: string | null;
1124
- readonly identityId: string | null;
1125
- readonly kind: "bcc" | "cc" | "to";
1126
- readonly address: string;
1127
- readonly status: "bounced" | "complained" | "delivered" | "failed" | "pending" | "processing" | "queued" | "read" | "scheduled" | "sent";
1128
- readonly createdAt: string;
1129
- readonly updatedAt: string;
1130
- readonly contact: {
1131
- readonly id: string;
1132
- readonly name: string;
1133
- readonly displayName: string | null;
1134
- readonly type: string;
1135
- readonly identities: readonly {
1136
- readonly channel: "email";
1137
- readonly identifier: string;
1138
- readonly verified: boolean;
1139
- }[];
1140
- } | null;
1141
- }[];
1142
- readonly deliveries: readonly {
1143
- readonly scheduling: {
1144
- readonly dueAt: string;
1145
- readonly expiresAt: string;
1146
- readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "sending-paused" | "upstream-unavailable" | null;
1147
- readonly reviewExpectedAt: string | null;
1148
- } | null;
1149
- readonly id: string;
1150
- readonly messageId: string;
1151
- readonly recipientId: string | null;
1152
- readonly channel: "email";
1153
- readonly status: "bounced" | "complained" | "delivered" | "failed" | "pending" | "processing" | "queued" | "read" | "scheduled" | "sent";
1154
- readonly attemptCount: number;
1155
- readonly maxAttempts: number;
1156
- readonly queuedAt: string | null;
1157
- readonly claimedAt: string | null;
1158
- readonly lastAttemptAt: string | null;
1159
- readonly nextRetryAt: string | null;
1160
- readonly sentAt: string | null;
1161
- readonly deliveredAt: string | null;
1162
- readonly readAt: string | null;
1163
- readonly failedAt: string | null;
1164
- readonly terminalAt: string | null;
1165
- readonly errorCode: string | null;
1166
- readonly errorMessage: string | null;
1167
- readonly errorDetails: {
1168
- readonly code?: string | null;
1169
- readonly name?: string | null;
1170
- readonly message?: string | null;
1171
- readonly details?: {
1172
- readonly [x: string]: string | number | null;
1173
- } | null;
1174
- readonly retryable?: boolean | null;
1175
- } | null;
1176
- readonly cost: string;
1177
- readonly currency: string;
1178
- readonly idempotencyKey: string | null;
1179
- readonly createdAt: string;
1180
- readonly updatedAt: string;
1181
- }[];
1182
- readonly emailDeliveryDetails: readonly {
1183
- readonly deliveryId: string;
1184
- readonly messageIdHeader: string;
1185
- readonly inReplyTo: string | null;
1186
- readonly references: readonly string[] | null;
1187
- readonly subject: string;
1188
- readonly fromEmail: string;
1189
- readonly fromName: string | null;
1190
- readonly toEmails: readonly string[];
1191
- readonly toName: string | null;
1192
- readonly ccEmails: readonly string[] | null;
1193
- readonly bccEmails: readonly string[] | null;
1194
- readonly replyToEmails: readonly string[] | null;
1195
- readonly hasAttachments: boolean;
1196
- readonly attachmentCount: number;
1197
- readonly listUnsubscribeUrl: string | null;
1198
- readonly listUnsubscribeEmail: string | null;
1199
- readonly threadPosition: number | null;
1200
- readonly newContent: string | null;
1201
- readonly quotedContent: string | null;
1202
- readonly hasQuotedContent: boolean;
1203
- readonly dkimVerdict: string | null;
1204
- readonly spfVerdict: string | null;
1205
- readonly dmarcVerdict: string | null;
1206
- readonly isAutoReply: boolean;
1207
- readonly autoReplyReason: "auto-response" | "delivery-status" | "out-of-office" | "read-receipt" | null;
1208
- readonly priority: string | null;
1209
- readonly parsingErrors: readonly string[] | null;
1210
- readonly parsingDuration: number | null;
1211
- readonly receivedAt: string | null;
1212
- readonly processedAt: string | null;
1213
- readonly createdAt: string;
1214
- readonly updatedAt: string;
1215
- }[];
381
+ readonly from: string | null;
382
+ readonly to: readonly string[];
383
+ readonly subject: string | null;
1216
384
  readonly waitReason: "campaign-paused" | "content-review" | "daily-quota" | "domain-health" | "domain-warming" | "onboarding-review" | "rate" | "retry" | "sending-paused" | "upstream-unavailable" | null;
1217
- readonly reviewExpectedAt: string | null;
1218
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError, import("./client").Service>;
385
+ readonly createdAt: string;
386
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1219
387
  };
1220
388
  export declare const update: (input: {
1221
389
  readonly id: string;
@@ -1319,113 +487,57 @@ export declare const update: (input: {
1319
487
  } | null | undefined;
1320
488
  } | null | undefined;
1321
489
  readonly metadata?: {
1322
- readonly source?: string | null | undefined;
1323
- readonly tags?: readonly string[] | null | undefined;
1324
- readonly customFields?: {
1325
- readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | any | {
1326
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1327
- } | null)[] | {
1328
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1329
- } | null)[] | {
1330
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1331
- } | null)[] | {
1332
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1333
- } | null)[] | {
1334
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1335
- } | null)[] | {
1336
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1337
- } | null)[] | {
1338
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1339
- } | null)[] | {
1340
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1341
- } | null)[] | {
1342
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1343
- } | null)[] | {
1344
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1345
- } | null)[] | {
1346
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1347
- } | null)[] | {
1348
- readonly [x: string]: string | number | boolean | any | any | null | undefined;
1349
- } | null | undefined;
490
+ readonly [x: string]: string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | readonly (string | number | boolean | any | {
491
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
492
+ } | null)[] | {
493
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
494
+ } | null)[] | {
495
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
496
+ } | null)[] | {
497
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
498
+ } | null)[] | {
499
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
500
+ } | null)[] | {
501
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
502
+ } | null)[] | {
503
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
504
+ } | null)[] | {
505
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
506
+ } | null)[] | {
507
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
508
+ } | null)[] | {
509
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
510
+ } | null)[] | {
511
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
512
+ } | null)[] | {
513
+ readonly [x: string]: string | number | boolean | any | any | null | undefined;
1350
514
  } | null | undefined;
1351
515
  } | null | undefined;
1352
- readonly metrics?: {
1353
- readonly messageCount: number;
1354
- readonly messagesFromHuman: number;
1355
- readonly totalActors: number;
1356
- readonly contactCount: number;
1357
- readonly channelSwitches: number;
1358
- readonly channelDistribution: {
1359
- readonly [x: string]: number | undefined;
1360
- };
1361
- } | null | undefined;
1362
- readonly actorTracking?: {
1363
- readonly allActorIds: readonly string[];
1364
- readonly activeActorIds: readonly string[];
1365
- readonly actorHistory: readonly {
1366
- readonly actorId: string;
1367
- readonly actorType: string;
1368
- readonly joinedAt: string;
1369
- readonly leftAt?: string | null | undefined;
1370
- readonly role: string;
1371
- readonly addedBy?: string | null | undefined;
1372
- readonly removedBy?: string | null | undefined;
1373
- readonly reason?: string | null | undefined;
1374
- }[];
1375
- readonly primaryActorIds: readonly string[];
1376
- } | null | undefined;
1377
- readonly channels?: readonly string[] | null | undefined;
1378
- readonly tags?: readonly string[] | null | undefined;
1379
- readonly categories?: readonly string[] | null | undefined;
1380
516
  readonly isTest?: boolean | null | undefined;
1381
517
  readonly isInternal?: boolean | null | undefined;
1382
518
  readonly isPrivate?: boolean | null | undefined;
1383
519
  }) => import("effect/Effect").Effect<{
1384
520
  readonly id: string & import("effect/Brand").Brand<"ConversationId">;
1385
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1386
521
  readonly title: string | null;
1387
- readonly description: string | null;
1388
522
  readonly externalId: string | null;
1389
- readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
1390
- readonly channels: readonly "email"[];
1391
- readonly primaryChannel: "email";
1392
523
  readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
1393
- readonly statusReason: string | null;
524
+ readonly primaryChannel: "email";
525
+ readonly channels: readonly "email"[];
1394
526
  readonly priority: number;
1395
527
  readonly urgency: "critical" | "high" | "low" | "medium";
528
+ readonly tags: readonly string[];
529
+ readonly isTest: boolean;
530
+ readonly messageCount: number;
531
+ readonly lastActivityAt: string;
532
+ readonly createdAt: string;
533
+ readonly description: string | null;
534
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
535
+ readonly statusReason: string | null;
1396
536
  readonly complexity: "complex" | "moderate" | "simple";
537
+ readonly categories: readonly string[];
1397
538
  readonly metadata: {
1398
- readonly source?: string | null;
1399
- readonly tags?: readonly string[] | null;
1400
- readonly customFields?: {
1401
- readonly [x: string]: import("./generated").JsonValue;
1402
- } | null;
539
+ readonly [x: string]: import("./generated").JsonValue;
1403
540
  } | null;
1404
- readonly actorTracking: {
1405
- readonly allActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
1406
- readonly activeActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
1407
- readonly actorHistory: readonly {
1408
- readonly actorId: string & import("effect/Brand").Brand<"ActorId">;
1409
- readonly actorType: "agent" | "contact" | "sender" | "system" | "user";
1410
- readonly joinedAt: string;
1411
- readonly leftAt?: string | null;
1412
- readonly role: "initiator" | "observer" | "responder";
1413
- readonly addedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
1414
- readonly removedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
1415
- readonly reason?: string | null;
1416
- }[];
1417
- readonly primaryActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
1418
- };
1419
- readonly metrics: {
1420
- readonly messageCount: number;
1421
- readonly messagesFromHuman: number;
1422
- readonly totalActors: number;
1423
- readonly contactCount: number;
1424
- readonly channelSwitches: number;
1425
- readonly channelDistribution: {
1426
- readonly [x: string]: number;
1427
- };
1428
- };
1429
541
  readonly context: {
1430
542
  readonly customerData?: {
1431
543
  readonly [x: string]: import("./generated").JsonValue;
@@ -1443,72 +555,113 @@ export declare const update: (input: {
1443
555
  } | null;
1444
556
  } | null;
1445
557
  } | null;
1446
- readonly tags: readonly string[];
1447
- readonly categories: readonly string[];
1448
- readonly isTest: boolean;
1449
558
  readonly isInternal: boolean;
1450
559
  readonly isPrivate: boolean;
560
+ readonly contacts: readonly {
561
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
562
+ readonly name: string;
563
+ readonly displayName: string | null;
564
+ readonly identities: readonly {
565
+ readonly channel: "email";
566
+ readonly identifier: string;
567
+ readonly verified: boolean;
568
+ }[];
569
+ }[];
1451
570
  readonly startedAt: string;
1452
- readonly lastActivityAt: string;
1453
571
  readonly lastHumanActivityAt: string | null;
1454
572
  readonly resolvedAt: string | null;
1455
573
  readonly archivedAt: string | null;
1456
- readonly resolvedBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
1457
574
  readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
1458
575
  readonly resolutionNotes: string | null;
1459
- readonly createdAt: string;
1460
576
  readonly updatedAt: string;
1461
- readonly createdBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
1462
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1463
- export declare const addContacts: (input: {
577
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
578
+ export declare const addTags: (input: {
1464
579
  readonly id: string;
1465
- readonly contactIds: readonly string[];
580
+ readonly tags: readonly string[];
1466
581
  }) => import("effect/Effect").Effect<{
1467
582
  readonly id: string & import("effect/Brand").Brand<"ConversationId">;
1468
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1469
583
  readonly title: string | null;
1470
- readonly description: string | null;
1471
584
  readonly externalId: string | null;
1472
- readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
1473
- readonly channels: readonly "email"[];
1474
- readonly primaryChannel: "email";
1475
585
  readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
1476
- readonly statusReason: string | null;
586
+ readonly primaryChannel: "email";
587
+ readonly channels: readonly "email"[];
1477
588
  readonly priority: number;
1478
589
  readonly urgency: "critical" | "high" | "low" | "medium";
590
+ readonly tags: readonly string[];
591
+ readonly isTest: boolean;
592
+ readonly messageCount: number;
593
+ readonly lastActivityAt: string;
594
+ readonly createdAt: string;
595
+ readonly description: string | null;
596
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
597
+ readonly statusReason: string | null;
1479
598
  readonly complexity: "complex" | "moderate" | "simple";
599
+ readonly categories: readonly string[];
1480
600
  readonly metadata: {
1481
- readonly source?: string | null;
1482
- readonly tags?: readonly string[] | null;
1483
- readonly customFields?: {
601
+ readonly [x: string]: import("./generated").JsonValue;
602
+ } | null;
603
+ readonly context: {
604
+ readonly customerData?: {
1484
605
  readonly [x: string]: import("./generated").JsonValue;
1485
606
  } | null;
607
+ readonly previousConversations?: readonly string[] | null;
608
+ readonly sessionVariables?: {
609
+ readonly [x: string]: import("./generated").JsonValue;
610
+ } | null;
611
+ readonly workflowState?: {
612
+ readonly currentStep?: string | null;
613
+ readonly completedSteps?: readonly string[] | null;
614
+ readonly pendingSteps?: readonly string[] | null;
615
+ readonly workflowData?: {
616
+ readonly [x: string]: import("./generated").JsonValue;
617
+ } | null;
618
+ } | null;
1486
619
  } | null;
1487
- readonly actorTracking: {
1488
- readonly allActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
1489
- readonly activeActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
1490
- readonly actorHistory: readonly {
1491
- readonly actorId: string & import("effect/Brand").Brand<"ActorId">;
1492
- readonly actorType: "agent" | "contact" | "sender" | "system" | "user";
1493
- readonly joinedAt: string;
1494
- readonly leftAt?: string | null;
1495
- readonly role: "initiator" | "observer" | "responder";
1496
- readonly addedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
1497
- readonly removedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
1498
- readonly reason?: string | null;
620
+ readonly isInternal: boolean;
621
+ readonly isPrivate: boolean;
622
+ readonly contacts: readonly {
623
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
624
+ readonly name: string;
625
+ readonly displayName: string | null;
626
+ readonly identities: readonly {
627
+ readonly channel: "email";
628
+ readonly identifier: string;
629
+ readonly verified: boolean;
1499
630
  }[];
1500
- readonly primaryActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
1501
- };
1502
- readonly metrics: {
1503
- readonly messageCount: number;
1504
- readonly messagesFromHuman: number;
1505
- readonly totalActors: number;
1506
- readonly contactCount: number;
1507
- readonly channelSwitches: number;
1508
- readonly channelDistribution: {
1509
- readonly [x: string]: number;
1510
- };
1511
- };
631
+ }[];
632
+ readonly startedAt: string;
633
+ readonly lastHumanActivityAt: string | null;
634
+ readonly resolvedAt: string | null;
635
+ readonly archivedAt: string | null;
636
+ readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
637
+ readonly resolutionNotes: string | null;
638
+ readonly updatedAt: string;
639
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
640
+ export declare const removeTags: (input: {
641
+ readonly id: string;
642
+ readonly tags: readonly string[];
643
+ }) => import("effect/Effect").Effect<{
644
+ readonly id: string & import("effect/Brand").Brand<"ConversationId">;
645
+ readonly title: string | null;
646
+ readonly externalId: string | null;
647
+ readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
648
+ readonly primaryChannel: "email";
649
+ readonly channels: readonly "email"[];
650
+ readonly priority: number;
651
+ readonly urgency: "critical" | "high" | "low" | "medium";
652
+ readonly tags: readonly string[];
653
+ readonly isTest: boolean;
654
+ readonly messageCount: number;
655
+ readonly lastActivityAt: string;
656
+ readonly createdAt: string;
657
+ readonly description: string | null;
658
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
659
+ readonly statusReason: string | null;
660
+ readonly complexity: "complex" | "moderate" | "simple";
661
+ readonly categories: readonly string[];
662
+ readonly metadata: {
663
+ readonly [x: string]: import("./generated").JsonValue;
664
+ } | null;
1512
665
  readonly context: {
1513
666
  readonly customerData?: {
1514
667
  readonly [x: string]: import("./generated").JsonValue;
@@ -1526,72 +679,175 @@ export declare const addContacts: (input: {
1526
679
  } | null;
1527
680
  } | null;
1528
681
  } | null;
1529
- readonly tags: readonly string[];
682
+ readonly isInternal: boolean;
683
+ readonly isPrivate: boolean;
684
+ readonly contacts: readonly {
685
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
686
+ readonly name: string;
687
+ readonly displayName: string | null;
688
+ readonly identities: readonly {
689
+ readonly channel: "email";
690
+ readonly identifier: string;
691
+ readonly verified: boolean;
692
+ }[];
693
+ }[];
694
+ readonly startedAt: string;
695
+ readonly lastHumanActivityAt: string | null;
696
+ readonly resolvedAt: string | null;
697
+ readonly archivedAt: string | null;
698
+ readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
699
+ readonly resolutionNotes: string | null;
700
+ readonly updatedAt: string;
701
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
702
+ export declare const addCategories: (input: {
703
+ readonly id: string;
1530
704
  readonly categories: readonly string[];
705
+ }) => import("effect/Effect").Effect<{
706
+ readonly id: string & import("effect/Brand").Brand<"ConversationId">;
707
+ readonly title: string | null;
708
+ readonly externalId: string | null;
709
+ readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
710
+ readonly primaryChannel: "email";
711
+ readonly channels: readonly "email"[];
712
+ readonly priority: number;
713
+ readonly urgency: "critical" | "high" | "low" | "medium";
714
+ readonly tags: readonly string[];
1531
715
  readonly isTest: boolean;
716
+ readonly messageCount: number;
717
+ readonly lastActivityAt: string;
718
+ readonly createdAt: string;
719
+ readonly description: string | null;
720
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
721
+ readonly statusReason: string | null;
722
+ readonly complexity: "complex" | "moderate" | "simple";
723
+ readonly categories: readonly string[];
724
+ readonly metadata: {
725
+ readonly [x: string]: import("./generated").JsonValue;
726
+ } | null;
727
+ readonly context: {
728
+ readonly customerData?: {
729
+ readonly [x: string]: import("./generated").JsonValue;
730
+ } | null;
731
+ readonly previousConversations?: readonly string[] | null;
732
+ readonly sessionVariables?: {
733
+ readonly [x: string]: import("./generated").JsonValue;
734
+ } | null;
735
+ readonly workflowState?: {
736
+ readonly currentStep?: string | null;
737
+ readonly completedSteps?: readonly string[] | null;
738
+ readonly pendingSteps?: readonly string[] | null;
739
+ readonly workflowData?: {
740
+ readonly [x: string]: import("./generated").JsonValue;
741
+ } | null;
742
+ } | null;
743
+ } | null;
1532
744
  readonly isInternal: boolean;
1533
745
  readonly isPrivate: boolean;
746
+ readonly contacts: readonly {
747
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
748
+ readonly name: string;
749
+ readonly displayName: string | null;
750
+ readonly identities: readonly {
751
+ readonly channel: "email";
752
+ readonly identifier: string;
753
+ readonly verified: boolean;
754
+ }[];
755
+ }[];
1534
756
  readonly startedAt: string;
1535
- readonly lastActivityAt: string;
1536
757
  readonly lastHumanActivityAt: string | null;
1537
758
  readonly resolvedAt: string | null;
1538
759
  readonly archivedAt: string | null;
1539
- readonly resolvedBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
1540
760
  readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
1541
761
  readonly resolutionNotes: string | null;
1542
- readonly createdAt: string;
1543
762
  readonly updatedAt: string;
1544
- readonly createdBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
1545
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1546
- export declare const removeContacts: (input: {
763
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
764
+ export declare const removeCategories: (input: {
1547
765
  readonly id: string;
1548
- readonly contactIds: readonly string[];
766
+ readonly categories: readonly string[];
1549
767
  }) => import("effect/Effect").Effect<{
1550
768
  readonly id: string & import("effect/Brand").Brand<"ConversationId">;
1551
- readonly organizationId: string & import("effect/Brand").Brand<"OrganizationId">;
1552
769
  readonly title: string | null;
1553
- readonly description: string | null;
1554
770
  readonly externalId: string | null;
1555
- readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
1556
- readonly channels: readonly "email"[];
1557
- readonly primaryChannel: "email";
1558
771
  readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
1559
- readonly statusReason: string | null;
772
+ readonly primaryChannel: "email";
773
+ readonly channels: readonly "email"[];
1560
774
  readonly priority: number;
1561
775
  readonly urgency: "critical" | "high" | "low" | "medium";
776
+ readonly tags: readonly string[];
777
+ readonly isTest: boolean;
778
+ readonly messageCount: number;
779
+ readonly lastActivityAt: string;
780
+ readonly createdAt: string;
781
+ readonly description: string | null;
782
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
783
+ readonly statusReason: string | null;
1562
784
  readonly complexity: "complex" | "moderate" | "simple";
785
+ readonly categories: readonly string[];
1563
786
  readonly metadata: {
1564
- readonly source?: string | null;
1565
- readonly tags?: readonly string[] | null;
1566
- readonly customFields?: {
787
+ readonly [x: string]: import("./generated").JsonValue;
788
+ } | null;
789
+ readonly context: {
790
+ readonly customerData?: {
1567
791
  readonly [x: string]: import("./generated").JsonValue;
1568
792
  } | null;
793
+ readonly previousConversations?: readonly string[] | null;
794
+ readonly sessionVariables?: {
795
+ readonly [x: string]: import("./generated").JsonValue;
796
+ } | null;
797
+ readonly workflowState?: {
798
+ readonly currentStep?: string | null;
799
+ readonly completedSteps?: readonly string[] | null;
800
+ readonly pendingSteps?: readonly string[] | null;
801
+ readonly workflowData?: {
802
+ readonly [x: string]: import("./generated").JsonValue;
803
+ } | null;
804
+ } | null;
1569
805
  } | null;
1570
- readonly actorTracking: {
1571
- readonly allActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
1572
- readonly activeActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
1573
- readonly actorHistory: readonly {
1574
- readonly actorId: string & import("effect/Brand").Brand<"ActorId">;
1575
- readonly actorType: "agent" | "contact" | "sender" | "system" | "user";
1576
- readonly joinedAt: string;
1577
- readonly leftAt?: string | null;
1578
- readonly role: "initiator" | "observer" | "responder";
1579
- readonly addedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
1580
- readonly removedBy?: (string & import("effect/Brand").Brand<"ActorId">) | null;
1581
- readonly reason?: string | null;
806
+ readonly isInternal: boolean;
807
+ readonly isPrivate: boolean;
808
+ readonly contacts: readonly {
809
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
810
+ readonly name: string;
811
+ readonly displayName: string | null;
812
+ readonly identities: readonly {
813
+ readonly channel: "email";
814
+ readonly identifier: string;
815
+ readonly verified: boolean;
1582
816
  }[];
1583
- readonly primaryActorIds: readonly (string & import("effect/Brand").Brand<"ActorId">)[];
1584
- };
1585
- readonly metrics: {
1586
- readonly messageCount: number;
1587
- readonly messagesFromHuman: number;
1588
- readonly totalActors: number;
1589
- readonly contactCount: number;
1590
- readonly channelSwitches: number;
1591
- readonly channelDistribution: {
1592
- readonly [x: string]: number;
1593
- };
1594
- };
817
+ }[];
818
+ readonly startedAt: string;
819
+ readonly lastHumanActivityAt: string | null;
820
+ readonly resolvedAt: string | null;
821
+ readonly archivedAt: string | null;
822
+ readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
823
+ readonly resolutionNotes: string | null;
824
+ readonly updatedAt: string;
825
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
826
+ export declare const addChannels: (input: {
827
+ readonly id: string;
828
+ readonly channels: readonly string[];
829
+ }) => import("effect/Effect").Effect<{
830
+ readonly id: string & import("effect/Brand").Brand<"ConversationId">;
831
+ readonly title: string | null;
832
+ readonly externalId: string | null;
833
+ readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
834
+ readonly primaryChannel: "email";
835
+ readonly channels: readonly "email"[];
836
+ readonly priority: number;
837
+ readonly urgency: "critical" | "high" | "low" | "medium";
838
+ readonly tags: readonly string[];
839
+ readonly isTest: boolean;
840
+ readonly messageCount: number;
841
+ readonly lastActivityAt: string;
842
+ readonly createdAt: string;
843
+ readonly description: string | null;
844
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
845
+ readonly statusReason: string | null;
846
+ readonly complexity: "complex" | "moderate" | "simple";
847
+ readonly categories: readonly string[];
848
+ readonly metadata: {
849
+ readonly [x: string]: import("./generated").JsonValue;
850
+ } | null;
1595
851
  readonly context: {
1596
852
  readonly customerData?: {
1597
853
  readonly [x: string]: import("./generated").JsonValue;
@@ -1609,20 +865,209 @@ export declare const removeContacts: (input: {
1609
865
  } | null;
1610
866
  } | null;
1611
867
  } | null;
868
+ readonly isInternal: boolean;
869
+ readonly isPrivate: boolean;
870
+ readonly contacts: readonly {
871
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
872
+ readonly name: string;
873
+ readonly displayName: string | null;
874
+ readonly identities: readonly {
875
+ readonly channel: "email";
876
+ readonly identifier: string;
877
+ readonly verified: boolean;
878
+ }[];
879
+ }[];
880
+ readonly startedAt: string;
881
+ readonly lastHumanActivityAt: string | null;
882
+ readonly resolvedAt: string | null;
883
+ readonly archivedAt: string | null;
884
+ readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
885
+ readonly resolutionNotes: string | null;
886
+ readonly updatedAt: string;
887
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
888
+ export declare const removeChannels: (input: {
889
+ readonly id: string;
890
+ readonly channels: readonly string[];
891
+ }) => import("effect/Effect").Effect<{
892
+ readonly id: string & import("effect/Brand").Brand<"ConversationId">;
893
+ readonly title: string | null;
894
+ readonly externalId: string | null;
895
+ readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
896
+ readonly primaryChannel: "email";
897
+ readonly channels: readonly "email"[];
898
+ readonly priority: number;
899
+ readonly urgency: "critical" | "high" | "low" | "medium";
1612
900
  readonly tags: readonly string[];
1613
- readonly categories: readonly string[];
1614
901
  readonly isTest: boolean;
902
+ readonly messageCount: number;
903
+ readonly lastActivityAt: string;
904
+ readonly createdAt: string;
905
+ readonly description: string | null;
906
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
907
+ readonly statusReason: string | null;
908
+ readonly complexity: "complex" | "moderate" | "simple";
909
+ readonly categories: readonly string[];
910
+ readonly metadata: {
911
+ readonly [x: string]: import("./generated").JsonValue;
912
+ } | null;
913
+ readonly context: {
914
+ readonly customerData?: {
915
+ readonly [x: string]: import("./generated").JsonValue;
916
+ } | null;
917
+ readonly previousConversations?: readonly string[] | null;
918
+ readonly sessionVariables?: {
919
+ readonly [x: string]: import("./generated").JsonValue;
920
+ } | null;
921
+ readonly workflowState?: {
922
+ readonly currentStep?: string | null;
923
+ readonly completedSteps?: readonly string[] | null;
924
+ readonly pendingSteps?: readonly string[] | null;
925
+ readonly workflowData?: {
926
+ readonly [x: string]: import("./generated").JsonValue;
927
+ } | null;
928
+ } | null;
929
+ } | null;
1615
930
  readonly isInternal: boolean;
1616
931
  readonly isPrivate: boolean;
932
+ readonly contacts: readonly {
933
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
934
+ readonly name: string;
935
+ readonly displayName: string | null;
936
+ readonly identities: readonly {
937
+ readonly channel: "email";
938
+ readonly identifier: string;
939
+ readonly verified: boolean;
940
+ }[];
941
+ }[];
1617
942
  readonly startedAt: string;
943
+ readonly lastHumanActivityAt: string | null;
944
+ readonly resolvedAt: string | null;
945
+ readonly archivedAt: string | null;
946
+ readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
947
+ readonly resolutionNotes: string | null;
948
+ readonly updatedAt: string;
949
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
950
+ export declare const addContacts: (input: {
951
+ readonly id: string;
952
+ readonly contactIds: readonly string[];
953
+ }) => import("effect/Effect").Effect<{
954
+ readonly id: string & import("effect/Brand").Brand<"ConversationId">;
955
+ readonly title: string | null;
956
+ readonly externalId: string | null;
957
+ readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
958
+ readonly primaryChannel: "email";
959
+ readonly channels: readonly "email"[];
960
+ readonly priority: number;
961
+ readonly urgency: "critical" | "high" | "low" | "medium";
962
+ readonly tags: readonly string[];
963
+ readonly isTest: boolean;
964
+ readonly messageCount: number;
1618
965
  readonly lastActivityAt: string;
966
+ readonly createdAt: string;
967
+ readonly description: string | null;
968
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
969
+ readonly statusReason: string | null;
970
+ readonly complexity: "complex" | "moderate" | "simple";
971
+ readonly categories: readonly string[];
972
+ readonly metadata: {
973
+ readonly [x: string]: import("./generated").JsonValue;
974
+ } | null;
975
+ readonly context: {
976
+ readonly customerData?: {
977
+ readonly [x: string]: import("./generated").JsonValue;
978
+ } | null;
979
+ readonly previousConversations?: readonly string[] | null;
980
+ readonly sessionVariables?: {
981
+ readonly [x: string]: import("./generated").JsonValue;
982
+ } | null;
983
+ readonly workflowState?: {
984
+ readonly currentStep?: string | null;
985
+ readonly completedSteps?: readonly string[] | null;
986
+ readonly pendingSteps?: readonly string[] | null;
987
+ readonly workflowData?: {
988
+ readonly [x: string]: import("./generated").JsonValue;
989
+ } | null;
990
+ } | null;
991
+ } | null;
992
+ readonly isInternal: boolean;
993
+ readonly isPrivate: boolean;
994
+ readonly contacts: readonly {
995
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
996
+ readonly name: string;
997
+ readonly displayName: string | null;
998
+ readonly identities: readonly {
999
+ readonly channel: "email";
1000
+ readonly identifier: string;
1001
+ readonly verified: boolean;
1002
+ }[];
1003
+ }[];
1004
+ readonly startedAt: string;
1619
1005
  readonly lastHumanActivityAt: string | null;
1620
1006
  readonly resolvedAt: string | null;
1621
1007
  readonly archivedAt: string | null;
1622
- readonly resolvedBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
1623
1008
  readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
1624
1009
  readonly resolutionNotes: string | null;
1010
+ readonly updatedAt: string;
1011
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1012
+ export declare const removeContacts: (input: {
1013
+ readonly id: string;
1014
+ readonly contactIds: readonly string[];
1015
+ }) => import("effect/Effect").Effect<{
1016
+ readonly id: string & import("effect/Brand").Brand<"ConversationId">;
1017
+ readonly title: string | null;
1018
+ readonly externalId: string | null;
1019
+ readonly status: "active" | "archived" | "escalated" | "resolved" | "waiting";
1020
+ readonly primaryChannel: "email";
1021
+ readonly channels: readonly "email"[];
1022
+ readonly priority: number;
1023
+ readonly urgency: "critical" | "high" | "low" | "medium";
1024
+ readonly tags: readonly string[];
1025
+ readonly isTest: boolean;
1026
+ readonly messageCount: number;
1027
+ readonly lastActivityAt: string;
1625
1028
  readonly createdAt: string;
1029
+ readonly description: string | null;
1030
+ readonly parentConversationId: (string & import("effect/Brand").Brand<"ConversationId">) | null;
1031
+ readonly statusReason: string | null;
1032
+ readonly complexity: "complex" | "moderate" | "simple";
1033
+ readonly categories: readonly string[];
1034
+ readonly metadata: {
1035
+ readonly [x: string]: import("./generated").JsonValue;
1036
+ } | null;
1037
+ readonly context: {
1038
+ readonly customerData?: {
1039
+ readonly [x: string]: import("./generated").JsonValue;
1040
+ } | null;
1041
+ readonly previousConversations?: readonly string[] | null;
1042
+ readonly sessionVariables?: {
1043
+ readonly [x: string]: import("./generated").JsonValue;
1044
+ } | null;
1045
+ readonly workflowState?: {
1046
+ readonly currentStep?: string | null;
1047
+ readonly completedSteps?: readonly string[] | null;
1048
+ readonly pendingSteps?: readonly string[] | null;
1049
+ readonly workflowData?: {
1050
+ readonly [x: string]: import("./generated").JsonValue;
1051
+ } | null;
1052
+ } | null;
1053
+ } | null;
1054
+ readonly isInternal: boolean;
1055
+ readonly isPrivate: boolean;
1056
+ readonly contacts: readonly {
1057
+ readonly id: string & import("effect/Brand").Brand<"ContactId">;
1058
+ readonly name: string;
1059
+ readonly displayName: string | null;
1060
+ readonly identities: readonly {
1061
+ readonly channel: "email";
1062
+ readonly identifier: string;
1063
+ readonly verified: boolean;
1064
+ }[];
1065
+ }[];
1066
+ readonly startedAt: string;
1067
+ readonly lastHumanActivityAt: string | null;
1068
+ readonly resolvedAt: string | null;
1069
+ readonly archivedAt: string | null;
1070
+ readonly resolutionType: "abandoned" | "automated" | "escalated" | "human_assisted" | "timeout" | null;
1071
+ readonly resolutionNotes: string | null;
1626
1072
  readonly updatedAt: string;
1627
- readonly createdBy: (string & import("effect/Brand").Brand<"ActorId">) | null;
1628
- }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/unstable/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;
1073
+ }, import("./generated").ForbiddenError | import("./generated").GatewayTimeoutError | import("effect/http/HttpClientError").HttpClientError | import("./generated").InternalError | import("./generated").ResourceNotFoundError | import("effect/Schema").SchemaError | import("./generated").UnauthorizedError | import("./generated").ValidationError, import("./client").Service>;