evo360-types 1.3.681 → 1.3.687

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.
@@ -117,6 +117,10 @@ export declare const zInboxItemSchema: z.ZodObject<{
117
117
  department_id: z.ZodString;
118
118
  status: z.ZodEnum<["open", "closed"]>;
119
119
  assigned_user_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
120
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
121
+ is_pinned: z.ZodOptional<z.ZodBoolean>;
122
+ pinned_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
123
+ pinned_by: z.ZodOptional<z.ZodNullable<z.ZodString>>;
120
124
  last_message_at: z.ZodOptional<z.ZodDate>;
121
125
  last_inbound_at: z.ZodOptional<z.ZodDate>;
122
126
  last_message_preview: z.ZodOptional<z.ZodString>;
@@ -136,6 +140,10 @@ export declare const zInboxItemSchema: z.ZodObject<{
136
140
  department_id: z.ZodString;
137
141
  status: z.ZodEnum<["open", "closed"]>;
138
142
  assigned_user_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
143
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
144
+ is_pinned: z.ZodOptional<z.ZodBoolean>;
145
+ pinned_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
146
+ pinned_by: z.ZodOptional<z.ZodNullable<z.ZodString>>;
139
147
  last_message_at: z.ZodOptional<z.ZodDate>;
140
148
  last_inbound_at: z.ZodOptional<z.ZodDate>;
141
149
  last_message_preview: z.ZodOptional<z.ZodString>;
@@ -155,6 +163,10 @@ export declare const zInboxItemSchema: z.ZodObject<{
155
163
  department_id: z.ZodString;
156
164
  status: z.ZodEnum<["open", "closed"]>;
157
165
  assigned_user_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
166
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
167
+ is_pinned: z.ZodOptional<z.ZodBoolean>;
168
+ pinned_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
169
+ pinned_by: z.ZodOptional<z.ZodNullable<z.ZodString>>;
158
170
  last_message_at: z.ZodOptional<z.ZodDate>;
159
171
  last_inbound_at: z.ZodOptional<z.ZodDate>;
160
172
  last_message_preview: z.ZodOptional<z.ZodString>;
@@ -35,6 +35,10 @@ exports.zInboxItemSchema = zod_1.z.object({
35
35
  department_id: zod_1.z.string(),
36
36
  status: zod_1.z.enum(['open', 'closed']),
37
37
  assigned_user_id: zod_1.z.string().nullable().optional(),
38
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
39
+ is_pinned: zod_1.z.boolean().optional(),
40
+ pinned_at: zod_1.z.coerce.date().nullable().optional(),
41
+ pinned_by: zod_1.z.string().nullable().optional(),
38
42
  last_message_at: zod_1.z.coerce.date().optional(),
39
43
  last_inbound_at: zod_1.z.coerce.date().optional(),
40
44
  last_message_preview: zod_1.z.string().optional(),
@@ -36,6 +36,10 @@ export const zInboxItemSchema = z.object({
36
36
  department_id: z.string(),
37
37
  status: z.enum(['open', 'closed']),
38
38
  assigned_user_id: z.string().nullable().optional(),
39
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
40
+ is_pinned: z.boolean().optional(),
41
+ pinned_at: z.coerce.date().nullable().optional(),
42
+ pinned_by: z.string().nullable().optional(),
39
43
  last_message_at: z.coerce.date().optional(),
40
44
  last_inbound_at: z.coerce.date().optional(),
41
45
  last_message_preview: z.string().optional(),
@@ -107,6 +107,9 @@ export declare const zTicketSchema: z.ZodObject<{
107
107
  last_message_channel_id: z.ZodOptional<z.ZodString>;
108
108
  assigned_user_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
109
109
  assigned_user_name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
110
+ is_pinned: z.ZodOptional<z.ZodBoolean>;
111
+ pinned_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
112
+ pinned_by: z.ZodOptional<z.ZodNullable<z.ZodString>>;
110
113
  attendant_type: z.ZodOptional<z.ZodNullable<z.ZodEnum<["ai", "human"]>>>;
111
114
  attendant_changed_at: z.ZodOptional<z.ZodDate>;
112
115
  created_by: z.ZodOptional<z.ZodObject<{
@@ -203,6 +206,9 @@ export declare const zTicketSchema: z.ZodObject<{
203
206
  last_message_channel_id: z.ZodOptional<z.ZodString>;
204
207
  assigned_user_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
205
208
  assigned_user_name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
209
+ is_pinned: z.ZodOptional<z.ZodBoolean>;
210
+ pinned_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
211
+ pinned_by: z.ZodOptional<z.ZodNullable<z.ZodString>>;
206
212
  attendant_type: z.ZodOptional<z.ZodNullable<z.ZodEnum<["ai", "human"]>>>;
207
213
  attendant_changed_at: z.ZodOptional<z.ZodDate>;
208
214
  created_by: z.ZodOptional<z.ZodObject<{
@@ -299,6 +305,9 @@ export declare const zTicketSchema: z.ZodObject<{
299
305
  last_message_channel_id: z.ZodOptional<z.ZodString>;
300
306
  assigned_user_id: z.ZodOptional<z.ZodNullable<z.ZodString>>;
301
307
  assigned_user_name: z.ZodOptional<z.ZodNullable<z.ZodString>>;
308
+ is_pinned: z.ZodOptional<z.ZodBoolean>;
309
+ pinned_at: z.ZodOptional<z.ZodNullable<z.ZodDate>>;
310
+ pinned_by: z.ZodOptional<z.ZodNullable<z.ZodString>>;
302
311
  attendant_type: z.ZodOptional<z.ZodNullable<z.ZodEnum<["ai", "human"]>>>;
303
312
  attendant_changed_at: z.ZodOptional<z.ZodDate>;
304
313
  created_by: z.ZodOptional<z.ZodObject<{
@@ -42,6 +42,10 @@ exports.zTicketSchema = zod_schemas_1.zFireDocSchema
42
42
  last_message_channel_id: zod_1.z.string().optional(),
43
43
  assigned_user_id: zod_1.z.string().nullable().optional(),
44
44
  assigned_user_name: zod_1.z.string().nullable().optional(),
45
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
46
+ is_pinned: zod_1.z.boolean().optional(),
47
+ pinned_at: zod_1.z.coerce.date().nullable().optional(),
48
+ pinned_by: zod_1.z.string().nullable().optional(),
45
49
  attendant_type: exports.zTicketAttendantTypeSchema,
46
50
  attendant_changed_at: zod_1.z.coerce.date().optional(),
47
51
  created_by: exports.zTicketCreatedBySchema.optional(),
@@ -44,6 +44,10 @@ export const zTicketSchema = zFireDocSchema
44
44
  last_message_channel_id: z.string().optional(),
45
45
  assigned_user_id: z.string().nullable().optional(),
46
46
  assigned_user_name: z.string().nullable().optional(),
47
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
48
+ is_pinned: z.boolean().optional(),
49
+ pinned_at: z.coerce.date().nullable().optional(),
50
+ pinned_by: z.string().nullable().optional(),
47
51
  attendant_type: zTicketAttendantTypeSchema,
48
52
  attendant_changed_at: z.coerce.date().optional(),
49
53
  created_by: zTicketCreatedBySchema.optional(),
@@ -51,6 +51,11 @@ export interface IInboxItem {
51
51
  hubia_conversation_mode?: HubiaConversationMode | null;
52
52
  postponed_until?: Date | null;
53
53
  is_postponed: boolean;
54
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
55
+ is_pinned?: boolean;
56
+ pinned_at?: Date | null;
57
+ /** `users/{id}` (mesmo espaço de `assigned_user_id`), não o uid do Auth. */
58
+ pinned_by?: string | null;
54
59
  last_message_at?: Date;
55
60
  last_inbound_at?: Date;
56
61
  last_message_preview?: string;
@@ -70,6 +70,11 @@ export interface IInboxItem {
70
70
  hubia_conversation_mode?: HubiaConversationMode | null;
71
71
  postponed_until?: Date | null;
72
72
  is_postponed: boolean;
73
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
74
+ is_pinned?: boolean;
75
+ pinned_at?: Date | null;
76
+ /** `users/{id}` (mesmo espaço de `assigned_user_id`), não o uid do Auth. */
77
+ pinned_by?: string | null;
73
78
  last_message_at?: Date;
74
79
  last_inbound_at?: Date;
75
80
  last_message_preview?: string;
@@ -37,6 +37,11 @@ export interface ITicket extends IFireDoc {
37
37
  last_message_channel_id?: string;
38
38
  assigned_user_id?: string | null;
39
39
  postponed_until?: Date | null;
40
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
41
+ is_pinned?: boolean;
42
+ pinned_at?: Date | null;
43
+ /** `users/{id}` (mesmo espaço de `assigned_user_id`), não o uid do Auth. */
44
+ pinned_by?: string | null;
40
45
  created_by?: ITicketCreatedBy;
41
46
  /** Resumo denormalizado da última avaliação do CSQ 2.0 do lead deste ticket.
42
47
  * Escrito pelo pipeline do evo-csq; ausente = nunca avaliado. */
@@ -58,6 +58,12 @@ export interface ITicket extends IFireDoc {
58
58
 
59
59
  postponed_until?: Date | null;
60
60
 
61
+ /** feat-274 — pino da equipe. Ausente = não fixado. */
62
+ is_pinned?: boolean;
63
+ pinned_at?: Date | null;
64
+ /** `users/{id}` (mesmo espaço de `assigned_user_id`), não o uid do Auth. */
65
+ pinned_by?: string | null;
66
+
61
67
  created_by?: ITicketCreatedBy;
62
68
 
63
69
  /** Resumo denormalizado da última avaliação do CSQ 2.0 do lead deste ticket.
@@ -247,14 +247,26 @@ export interface IEmailSmtpConfig {
247
247
  */
248
248
  password_secret_ref: string;
249
249
  }
250
- export interface IEmailChannelConfig extends IFireDoc {
250
+ /**
251
+ * Provider de transporte do canal de email.
252
+ * Ausente preserva documentos legados e equivale a `smtp` nas bordas.
253
+ */
254
+ export type EmailChannelProvider = "smtp" | "amazon-ses";
255
+ interface IEmailChannelConfigBase extends IFireDoc {
251
256
  display_name: string;
252
257
  from_address: string;
253
258
  from_name: string;
254
259
  reply_to?: string;
255
- smtp: IEmailSmtpConfig;
256
260
  enabled: boolean;
257
261
  }
262
+ export type IEmailChannelConfig = IEmailChannelConfigBase & ({
263
+ /** Ausente preserva documentos legados e equivale a SMTP. */
264
+ provider?: "smtp";
265
+ smtp: IEmailSmtpConfig;
266
+ } | {
267
+ provider: "amazon-ses";
268
+ smtp?: never;
269
+ });
258
270
  export interface IEmailTemplate extends IFireDoc {
259
271
  /**
260
272
  * Chave usada no payload de envio (template.template_id).
@@ -396,15 +396,32 @@ export interface IEmailSmtpConfig {
396
396
  password_secret_ref: string;
397
397
  }
398
398
 
399
- export interface IEmailChannelConfig extends IFireDoc {
399
+ /**
400
+ * Provider de transporte do canal de email.
401
+ * Ausente preserva documentos legados e equivale a `smtp` nas bordas.
402
+ */
403
+ export type EmailChannelProvider = "smtp" | "amazon-ses";
404
+
405
+ interface IEmailChannelConfigBase extends IFireDoc {
400
406
  display_name: string;
401
407
  from_address: string;
402
408
  from_name: string;
403
409
  reply_to?: string;
404
- smtp: IEmailSmtpConfig;
405
410
  enabled: boolean;
406
411
  }
407
412
 
413
+ export type IEmailChannelConfig = IEmailChannelConfigBase & (
414
+ | {
415
+ /** Ausente preserva documentos legados e equivale a SMTP. */
416
+ provider?: "smtp";
417
+ smtp: IEmailSmtpConfig;
418
+ }
419
+ | {
420
+ provider: "amazon-ses";
421
+ smtp?: never;
422
+ }
423
+ );
424
+
408
425
  // ======================================================
409
426
  // Email templates (subcollection of email_channels)
410
427
  // Path: /tenants/{tenant}/apps/evo-notifications/email_channels/{channelId}/email_templates/{templateId}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "evo360-types",
3
- "version": "1.3.681",
3
+ "version": "1.3.687",
4
4
  "description": "HREVO360 Shared Types",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",