@trii/types 2.10.724 → 2.10.726

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.
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Identificadores estables de eventos de dominio de Trii.
3
+ * El primer segmento identifica al módulo propietario y productor del evento.
4
+ *
5
+ * Automations, webhooks salientes y otros consumidores comparten este
6
+ * vocabulario, aunque cada mecanismo pueda soportar sólo un subconjunto.
7
+ * Los contratos de transporte conservan `eventType: string` para aceptar
8
+ * eventos incorporados por versiones futuras.
9
+ */
10
+ export declare const DOMAIN_EVENT_TYPES: {
11
+ readonly AUTOMATIONS: {
12
+ readonly MANUAL: 'automations.manual';
13
+ readonly SCHEDULE_TICK: 'automations.schedule.tick';
14
+ };
15
+ readonly CONTACTS: {
16
+ readonly CONTACT_CREATED: 'contacts.contact.created';
17
+ readonly BUSINESS_CREATED: 'contacts.business.created';
18
+ readonly PROPERTY_CHANGED: 'contacts.property.changed';
19
+ readonly TAG_ADDED: 'contacts.tag.added';
20
+ readonly TAG_REMOVED: 'contacts.tag.removed';
21
+ readonly PROPERTY_DATE_REACHED: 'contacts.property.date_reached';
22
+ };
23
+ readonly CONVERSATIONS: {
24
+ readonly CONVERSATION_CREATED: 'conversations.conversation.created';
25
+ readonly CONVERSATION_CLOSED: 'conversations.conversation.closed';
26
+ readonly MESSAGE_RECEIVED: 'conversations.message.received';
27
+ readonly AGENT_INTERVENED: 'conversations.agent.intervened';
28
+ };
29
+ readonly TICKETS: {
30
+ readonly CREATED: 'tickets.created';
31
+ readonly STATUS_CHANGED: 'tickets.status_changed';
32
+ readonly PRIORITY_CHANGED: 'tickets.priority_changed';
33
+ readonly ASSIGNED: 'tickets.assigned';
34
+ readonly CUSTOMER_REPLIED: 'tickets.customer_replied';
35
+ readonly SLA_WARNING: 'tickets.sla_warning';
36
+ readonly SLA_BREACHED: 'tickets.sla_breached';
37
+ readonly CLOSED: 'tickets.closed';
38
+ readonly REOPENED: 'tickets.reopened';
39
+ };
40
+ readonly FORMS: {
41
+ readonly SUBMITTED: 'forms.submitted';
42
+ };
43
+ readonly INTEGRATIONS: {
44
+ readonly WEBHOOK_RECEIVED: 'integrations.webhook.received';
45
+ };
46
+ };
47
+ type Values<T> = T extends unknown ? T[keyof T] : never;
48
+ type DomainEventTypeGroup = Values<typeof DOMAIN_EVENT_TYPES>;
49
+ /** Unión de identificadores conocidos por esta versión de `@trii/types`. */
50
+ export type KnownDomainEventType = Values<DomainEventTypeGroup>;
51
+ export {};
@@ -0,0 +1,49 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.DOMAIN_EVENT_TYPES = void 0;
4
+ /**
5
+ * Identificadores estables de eventos de dominio de Trii.
6
+ * El primer segmento identifica al módulo propietario y productor del evento.
7
+ *
8
+ * Automations, webhooks salientes y otros consumidores comparten este
9
+ * vocabulario, aunque cada mecanismo pueda soportar sólo un subconjunto.
10
+ * Los contratos de transporte conservan `eventType: string` para aceptar
11
+ * eventos incorporados por versiones futuras.
12
+ */
13
+ exports.DOMAIN_EVENT_TYPES = {
14
+ AUTOMATIONS: {
15
+ MANUAL: 'automations.manual',
16
+ SCHEDULE_TICK: 'automations.schedule.tick',
17
+ },
18
+ CONTACTS: {
19
+ CONTACT_CREATED: 'contacts.contact.created',
20
+ BUSINESS_CREATED: 'contacts.business.created',
21
+ PROPERTY_CHANGED: 'contacts.property.changed',
22
+ TAG_ADDED: 'contacts.tag.added',
23
+ TAG_REMOVED: 'contacts.tag.removed',
24
+ PROPERTY_DATE_REACHED: 'contacts.property.date_reached',
25
+ },
26
+ CONVERSATIONS: {
27
+ CONVERSATION_CREATED: 'conversations.conversation.created',
28
+ CONVERSATION_CLOSED: 'conversations.conversation.closed',
29
+ MESSAGE_RECEIVED: 'conversations.message.received',
30
+ AGENT_INTERVENED: 'conversations.agent.intervened',
31
+ },
32
+ TICKETS: {
33
+ CREATED: 'tickets.created',
34
+ STATUS_CHANGED: 'tickets.status_changed',
35
+ PRIORITY_CHANGED: 'tickets.priority_changed',
36
+ ASSIGNED: 'tickets.assigned',
37
+ CUSTOMER_REPLIED: 'tickets.customer_replied',
38
+ SLA_WARNING: 'tickets.sla_warning',
39
+ SLA_BREACHED: 'tickets.sla_breached',
40
+ CLOSED: 'tickets.closed',
41
+ REOPENED: 'tickets.reopened',
42
+ },
43
+ FORMS: {
44
+ SUBMITTED: 'forms.submitted',
45
+ },
46
+ INTEGRATIONS: {
47
+ WEBHOOK_RECEIVED: 'integrations.webhook.received',
48
+ },
49
+ };
@@ -0,0 +1 @@
1
+ export * from './DomainEventTypes';
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./DomainEventTypes"), exports);
@@ -93,6 +93,14 @@ export declare enum TicketDelegatedAccessStatus {
93
93
  EXPIRED = "EXPIRED",
94
94
  REJECTED = "REJECTED"
95
95
  }
96
+ export declare enum TicketLegalHoldReleaseReason {
97
+ MATTER_CLOSED = "MATTER_CLOSED",
98
+ NO_LONGER_RELEVANT = "NO_LONGER_RELEVANT",
99
+ APPLIED_IN_ERROR = "APPLIED_IN_ERROR",
100
+ SUPERSEDED = "SUPERSEDED",
101
+ OBLIGATION_EXPIRED = "OBLIGATION_EXPIRED",
102
+ OTHER = "OTHER"
103
+ }
96
104
  export interface ITicketSecuritySubject {
97
105
  /** When every selector is false or empty, the subject matches nobody. */
98
106
  allAuthenticated?: boolean;
@@ -269,6 +277,50 @@ export interface IUpdateTicketRetentionPolicyDto {
269
277
  preserveAuditLog?: boolean;
270
278
  enabled?: boolean;
271
279
  }
280
+ export interface ITicketRetentionUpcomingBucket {
281
+ withinDays: number;
282
+ count: number;
283
+ }
284
+ export interface ITicketRetentionAffectedCategory {
285
+ categoryId: string;
286
+ name: string;
287
+ count: number;
288
+ }
289
+ export interface ITicketRetentionSampleTicket {
290
+ ticketId: string;
291
+ number: number;
292
+ title: string;
293
+ categoryId: string;
294
+ resolvedAt: Date;
295
+ }
296
+ export interface ITicketRetentionImpactPreview {
297
+ policyId?: string;
298
+ action: TicketRetentionAction;
299
+ retentionDays: number;
300
+ preserveAuditLog: boolean;
301
+ irreversible: boolean;
302
+ anonymizedFieldNameKeys?: string[];
303
+ evaluatedAt: Date;
304
+ alreadyReachedCount: number;
305
+ onLegalHoldCount: number;
306
+ upcoming: ITicketRetentionUpcomingBucket[];
307
+ affectedCategories: ITicketRetentionAffectedCategory[];
308
+ affectedClassifications: TicketDataClassification[];
309
+ samples: ITicketRetentionSampleTicket[];
310
+ }
311
+ export interface ITicketRetentionValidationIssue {
312
+ code: string;
313
+ severity: 'ERROR' | 'WARNING';
314
+ message: string;
315
+ path?: string;
316
+ }
317
+ export interface ITicketRetentionValidationEntry {
318
+ policyId: string;
319
+ issues: ITicketRetentionValidationIssue[];
320
+ }
321
+ export interface IValidateTicketRetentionResponse {
322
+ policies: ITicketRetentionValidationEntry[];
323
+ }
272
324
  export interface ITicketFieldSecurityValidationIssue {
273
325
  code: string;
274
326
  severity: 'ERROR' | 'WARNING';
@@ -311,6 +363,8 @@ export interface ITicketLegalHold {
311
363
  releasedAt?: Date;
312
364
  releasedBy?: string;
313
365
  externalMatterId?: string;
366
+ releaseReason?: TicketLegalHoldReleaseReason;
367
+ releaseNotes?: string;
314
368
  }
315
369
  export interface ITicketAccessAuditEvent {
316
370
  id: string;
@@ -427,8 +481,23 @@ export interface ICreateTicketLegalHoldDto {
427
481
  }
428
482
  export interface IReleaseTicketLegalHoldDto {
429
483
  expectedVersion: number;
430
- legalHoldId: string;
431
- reason: string;
484
+ releaseReason: TicketLegalHoldReleaseReason;
485
+ releaseNotes?: string;
486
+ }
487
+ export interface ITicketSuspendedRetentionPolicy {
488
+ id: string;
489
+ name: string;
490
+ action: TicketRetentionAction;
491
+ retentionDays: number;
492
+ }
493
+ export interface ITicketLegalHoldsResponse {
494
+ onHold: boolean;
495
+ holds: ITicketLegalHold[];
496
+ suspendedPolicies: ITicketSuspendedRetentionPolicy[];
497
+ }
498
+ export interface ITicketLegalHoldListEntry extends ITicketLegalHold {
499
+ ticketNumber: number;
500
+ ticketTitle: string;
432
501
  }
433
502
  export interface ICreateTicketDelegatedAccessDto {
434
503
  delegateId: string;
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.TicketDelegatedAccessStatus = exports.TicketAccessAuditAction = exports.TicketLegalHoldStatus = exports.TicketRetentionAction = exports.TicketRedactionStatus = exports.TicketMaskingStrategy = exports.TicketDataClassification = exports.TicketSensitivityLevel = exports.TicketPolicyConditionGroupOperator = exports.TicketPolicyEffect = exports.TicketSecurityOperation = exports.TicketSecurityResourceType = void 0;
3
+ exports.TicketLegalHoldReleaseReason = exports.TicketDelegatedAccessStatus = exports.TicketAccessAuditAction = exports.TicketLegalHoldStatus = exports.TicketRetentionAction = exports.TicketRedactionStatus = exports.TicketMaskingStrategy = exports.TicketDataClassification = exports.TicketSensitivityLevel = exports.TicketPolicyConditionGroupOperator = exports.TicketPolicyEffect = exports.TicketSecurityOperation = exports.TicketSecurityResourceType = void 0;
4
4
  var TicketSecurityResourceType;
5
5
  (function (TicketSecurityResourceType) {
6
6
  TicketSecurityResourceType["TICKET"] = "TICKET";
@@ -105,3 +105,12 @@ var TicketDelegatedAccessStatus;
105
105
  TicketDelegatedAccessStatus["EXPIRED"] = "EXPIRED";
106
106
  TicketDelegatedAccessStatus["REJECTED"] = "REJECTED";
107
107
  })(TicketDelegatedAccessStatus || (exports.TicketDelegatedAccessStatus = TicketDelegatedAccessStatus = {}));
108
+ var TicketLegalHoldReleaseReason;
109
+ (function (TicketLegalHoldReleaseReason) {
110
+ TicketLegalHoldReleaseReason["MATTER_CLOSED"] = "MATTER_CLOSED";
111
+ TicketLegalHoldReleaseReason["NO_LONGER_RELEVANT"] = "NO_LONGER_RELEVANT";
112
+ TicketLegalHoldReleaseReason["APPLIED_IN_ERROR"] = "APPLIED_IN_ERROR";
113
+ TicketLegalHoldReleaseReason["SUPERSEDED"] = "SUPERSEDED";
114
+ TicketLegalHoldReleaseReason["OBLIGATION_EXPIRED"] = "OBLIGATION_EXPIRED";
115
+ TicketLegalHoldReleaseReason["OTHER"] = "OTHER";
116
+ })(TicketLegalHoldReleaseReason || (exports.TicketLegalHoldReleaseReason = TicketLegalHoldReleaseReason = {}));
package/dist/index.d.ts CHANGED
@@ -15,6 +15,7 @@ export * as Users from './Users/index';
15
15
  export * as Presence from './Presence/index';
16
16
  export * as ApiResponses from './ApiResponses/index';
17
17
  export * as EventsQueue from './Common/EventsQueue/index';
18
+ export * as Events from './Events/index';
18
19
  export * as APIKeys from './PublicAPI/apiKey';
19
20
  export * as AI from './AI/index';
20
21
  export * as Shop from './Shop/index';
package/dist/index.js CHANGED
@@ -33,7 +33,7 @@ var __importStar = (this && this.__importStar) || (function () {
33
33
  };
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.Automations = exports.Forms = exports.APIResponses = exports.Shop = exports.AI = exports.APIKeys = exports.EventsQueue = exports.ApiResponses = exports.Presence = exports.Users = exports.Collections = exports.Sales = exports.Tickets = exports.Spaces = exports.Reports = exports.Security = exports.Calls = exports.Conversations = exports.Calendar = exports.Contacts = exports.Common = exports.AuditLogs = exports.Accounts = void 0;
36
+ exports.Automations = exports.Forms = exports.APIResponses = exports.Shop = exports.AI = exports.APIKeys = exports.Events = exports.EventsQueue = exports.ApiResponses = exports.Presence = exports.Users = exports.Collections = exports.Sales = exports.Tickets = exports.Spaces = exports.Reports = exports.Security = exports.Calls = exports.Conversations = exports.Calendar = exports.Contacts = exports.Common = exports.AuditLogs = exports.Accounts = void 0;
37
37
  exports.Accounts = __importStar(require("./Accounts/index"));
38
38
  exports.AuditLogs = __importStar(require("./AuditLogs/index"));
39
39
  exports.Common = __importStar(require("./Common/index"));
@@ -51,6 +51,7 @@ exports.Users = __importStar(require("./Users/index"));
51
51
  exports.Presence = __importStar(require("./Presence/index"));
52
52
  exports.ApiResponses = __importStar(require("./ApiResponses/index"));
53
53
  exports.EventsQueue = __importStar(require("./Common/EventsQueue/index"));
54
+ exports.Events = __importStar(require("./Events/index"));
54
55
  exports.APIKeys = __importStar(require("./PublicAPI/apiKey"));
55
56
  exports.AI = __importStar(require("./AI/index"));
56
57
  exports.Shop = __importStar(require("./Shop/index"));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trii/types",
3
- "version": "2.10.724",
3
+ "version": "2.10.726",
4
4
  "description": "Types definitions for Trii projects - ",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",