/** * Identificadores estables de eventos de dominio de Trii. * El primer segmento identifica al módulo propietario y productor del evento. * * Automations, webhooks salientes y otros consumidores comparten este * vocabulario, aunque cada mecanismo pueda soportar sólo un subconjunto. * Los contratos de transporte conservan `eventType: string` para aceptar * eventos incorporados por versiones futuras. */ export declare const DOMAIN_EVENT_TYPES: { readonly AUTOMATIONS: { readonly MANUAL: "automations.manual"; readonly SCHEDULE_TICK: "automations.schedule.tick"; }; readonly CONTACTS: { readonly CONTACT_CREATED: "contacts.contact.created"; readonly BUSINESS_CREATED: "contacts.business.created"; readonly PROPERTY_CHANGED: "contacts.property.changed"; readonly TAG_ADDED: "contacts.tag.added"; readonly TAG_REMOVED: "contacts.tag.removed"; readonly PROPERTY_DATE_REACHED: "contacts.property.date_reached"; }; readonly CONVERSATIONS: { readonly CONVERSATION_CREATED: "conversations.conversation.created"; readonly CONVERSATION_CLOSED: "conversations.conversation.closed"; readonly MESSAGE_RECEIVED: "conversations.message.received"; readonly AGENT_INTERVENED: "conversations.agent.intervened"; }; readonly TICKETS: { readonly CREATED: "tickets.created"; readonly STATUS_CHANGED: "tickets.status_changed"; readonly PRIORITY_CHANGED: "tickets.priority_changed"; readonly ASSIGNED: "tickets.assigned"; readonly CUSTOMER_REPLIED: "tickets.customer_replied"; readonly SLA_WARNING: "tickets.sla_warning"; readonly SLA_BREACHED: "tickets.sla_breached"; readonly CLOSED: "tickets.closed"; readonly REOPENED: "tickets.reopened"; }; readonly FORMS: { readonly SUBMITTED: "forms.submitted"; }; readonly INTEGRATIONS: { readonly WEBHOOK_RECEIVED: "integrations.webhook.received"; }; }; type Values = T extends unknown ? T[keyof T] : never; type DomainEventTypeGroup = Values; /** Unión de identificadores conocidos por esta versión de `@trii/types`. */ export type KnownDomainEventType = Values; export {};