evo360-types 1.3.565 → 1.3.574

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 (48) hide show
  1. package/dist/apps/evo-crm/lead/zod-schemas.d.ts +9 -9
  2. package/dist/apps/evo-csq/zod-schemas.d.ts +18 -12
  3. package/dist/apps/evo-csq/zod-schemas.js +2 -0
  4. package/dist/apps/evo-csq/zod-schemas.ts +2 -0
  5. package/dist/apps/evo-finops/zod-schemas.d.ts +18 -18
  6. package/dist/apps/evo-med/dic/zod-schemas.d.ts +2 -2
  7. package/dist/apps/evo-med/people/zod-schemas.d.ts +45 -45
  8. package/dist/apps/evo-notifications/quick-reply-action/zod-schemas.d.ts +3 -0
  9. package/dist/apps/evo-notifications/quick-reply-action/zod-schemas.js +3 -0
  10. package/dist/apps/evo-notifications/quick-reply-action/zod-schemas.ts +3 -0
  11. package/dist/apps/evo-notifications/zod-schemas.d.ts +69 -39
  12. package/dist/apps/evo-task/zod-schemas.d.ts +69 -69
  13. package/dist/apps/evo-task/zod-schemas.js +8 -0
  14. package/dist/apps/evo-task/zod-schemas.ts +8 -0
  15. package/dist/apps/evo-telemedicine/zod-schemas.d.ts +1445 -0
  16. package/dist/apps/evo-telemedicine/zod-schemas.js +641 -0
  17. package/dist/apps/evo-telemedicine/zod-schemas.ts +723 -0
  18. package/dist/apps/evo-tenant/zod-schemas.d.ts +94 -0
  19. package/dist/apps/evo-tenant/zod-schemas.js +29 -1
  20. package/dist/apps/evo-tenant/zod-schemas.ts +32 -1
  21. package/dist/apps/hub-automation/zod-schemas.d.ts +172 -172
  22. package/dist/index.d.ts +2 -0
  23. package/dist/index.js +2 -0
  24. package/dist/index.ts +2 -0
  25. package/dist/types/evo-csq/index.d.ts +5 -0
  26. package/dist/types/evo-csq/index.ts +5 -0
  27. package/dist/types/evo-med/calendar/index.d.ts +6 -0
  28. package/dist/types/evo-med/calendar/index.js +6 -0
  29. package/dist/types/evo-med/calendar/index.ts +6 -0
  30. package/dist/types/evo-notifications/index.d.ts +13 -0
  31. package/dist/types/evo-notifications/index.js +6 -0
  32. package/dist/types/evo-notifications/index.ts +13 -0
  33. package/dist/types/evo-task/index.d.ts +1 -0
  34. package/dist/types/evo-task/index.js +8 -0
  35. package/dist/types/evo-task/index.ts +8 -0
  36. package/dist/types/evo-telemedicine/fb_collections.d.ts +16 -0
  37. package/dist/types/evo-telemedicine/fb_collections.js +38 -0
  38. package/dist/types/evo-telemedicine/fb_collections.ts +37 -0
  39. package/dist/types/evo-telemedicine/index.d.ts +890 -0
  40. package/dist/types/evo-telemedicine/index.js +361 -0
  41. package/dist/types/evo-telemedicine/index.ts +1046 -0
  42. package/dist/types/evo-tenant/index.d.ts +45 -0
  43. package/dist/types/evo-tenant/index.js +20 -1
  44. package/dist/types/evo-tenant/index.ts +65 -0
  45. package/dist/types/shared/external-links.d.ts +6 -0
  46. package/dist/types/shared/external-links.js +6 -0
  47. package/dist/types/shared/external-links.ts +6 -0
  48. package/package.json +1 -1
@@ -33,6 +33,45 @@ export declare enum ITenantStatus {
33
33
  Published = "published",
34
34
  Archived = "archived"
35
35
  }
36
+ export type TenantModuleStatus = "active" | "trial" | "suspended" | "cancelled";
37
+ export declare const TenantModuleStatusEnum: {
38
+ readonly Active: "active";
39
+ readonly Trial: "trial";
40
+ readonly Suspended: "suspended";
41
+ readonly Cancelled: "cancelled";
42
+ };
43
+ export type TenantModuleSource = "contract" | "trial" | "manual";
44
+ export declare const TenantModuleSourceEnum: {
45
+ readonly Contract: "contract";
46
+ readonly Trial: "trial";
47
+ readonly Manual: "manual";
48
+ };
49
+ export interface ITenantModuleEntitlement {
50
+ status: TenantModuleStatus;
51
+ enabled: boolean;
52
+ source: TenantModuleSource;
53
+ effective_at?: Date | null;
54
+ expires_at?: Date | null;
55
+ /** Capability ausente = false. Chaves conhecidas por módulo (ex.: `TelemedicineCapabilities`). */
56
+ capabilities?: Record<string, boolean | number | string>;
57
+ /**
58
+ * Override operacional (D6): libera o módulo até esta data mesmo com status
59
+ * bloqueante. Exige `override_by` e gera auditoria; sem data futura, é ignorado.
60
+ */
61
+ override_until?: Date | null;
62
+ override_by?: string | null;
63
+ version: number;
64
+ updated_at: Date;
65
+ }
66
+ /** Chave inicial de `ITenant.modules` — primeiro consumidor do entitlement genérico. */
67
+ export declare const TENANT_MODULE_TELEMEDICINE = "telemedicine";
68
+ /** Capabilities conhecidas de `modules.telemedicine.capabilities` (ausente = false). */
69
+ export declare const TelemedicineCapabilities: {
70
+ readonly Recording: "recording";
71
+ readonly Transcription: "transcription";
72
+ readonly AutoAdmit: "auto_admit";
73
+ };
74
+ export type TelemedicineCapability = (typeof TelemedicineCapabilities)[keyof typeof TelemedicineCapabilities];
36
75
  export interface ITenant extends IFireDoc {
37
76
  name: string;
38
77
  base_tenant?: string | null;
@@ -44,4 +83,10 @@ export interface ITenant extends IFireDoc {
44
83
  status: TenantStatus;
45
84
  timezone?: string;
46
85
  created_by?: FirestoreDocumentReference;
86
+ /**
87
+ * feat-160 — módulos adicionais contratados, por chave (`telemedicine`, …).
88
+ * Ausência da chave = módulo desabilitado. Provisionado por script/admin
89
+ * técnico auditado; nunca pelo FE.
90
+ */
91
+ modules?: Record<string, ITenantModuleEntitlement>;
47
92
  }
@@ -14,7 +14,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
14
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.ITenantStatus = exports.ITenantLanguage = exports.ITenantAction = exports.CoreMyTenantsPermissions = exports.CoreTenantsPermissions = void 0;
17
+ exports.TelemedicineCapabilities = exports.TENANT_MODULE_TELEMEDICINE = exports.TenantModuleSourceEnum = exports.TenantModuleStatusEnum = exports.ITenantStatus = exports.ITenantLanguage = exports.ITenantAction = exports.CoreMyTenantsPermissions = exports.CoreTenantsPermissions = void 0;
18
18
  __exportStar(require("./fb_collections"), exports);
19
19
  // Permissões para o tenant
20
20
  exports.CoreTenantsPermissions = {
@@ -49,3 +49,22 @@ var ITenantStatus;
49
49
  ITenantStatus["Published"] = "published";
50
50
  ITenantStatus["Archived"] = "archived";
51
51
  })(ITenantStatus || (exports.ITenantStatus = ITenantStatus = {}));
52
+ exports.TenantModuleStatusEnum = {
53
+ Active: "active",
54
+ Trial: "trial",
55
+ Suspended: "suspended",
56
+ Cancelled: "cancelled",
57
+ };
58
+ exports.TenantModuleSourceEnum = {
59
+ Contract: "contract",
60
+ Trial: "trial",
61
+ Manual: "manual",
62
+ };
63
+ /** Chave inicial de `ITenant.modules` — primeiro consumidor do entitlement genérico. */
64
+ exports.TENANT_MODULE_TELEMEDICINE = "telemedicine";
65
+ /** Capabilities conhecidas de `modules.telemedicine.capabilities` (ausente = false). */
66
+ exports.TelemedicineCapabilities = {
67
+ Recording: "recording",
68
+ Transcription: "transcription",
69
+ AutoAdmit: "auto_admit",
70
+ };
@@ -46,6 +46,65 @@ export enum ITenantStatus {
46
46
  Archived = "archived",
47
47
  }
48
48
 
49
+ // ----- Módulos adicionais (entitlement por tenant) — feat-160
50
+ //
51
+ // Projeção operacional SANITIZADA do que o tenant contratou: preço, contrato,
52
+ // desconto e cobrança ficam no Nexus e NUNCA são copiados para cá. O backend
53
+ // repete todos os gates (entitlement AND rollout AND permissão RBAC); o FE usa
54
+ // os mesmos dados só para esconder/bloquear/upsell.
55
+ //
56
+ // Invariantes (data-model §8):
57
+ // - ausência da chave em `modules` equivale a desabilitado;
58
+ // - `enabled=false`, `suspended`, `cancelled` ou trial expirado bloqueia usos novos;
59
+ // - capability ausente equivale a `false`;
60
+ // - alteração gera auditoria FORA do doc do tenant (`entitlement-audit` do módulo);
61
+ // - super admin NÃO ignora entitlement (D6) — exceção só via `override_until`,
62
+ // temporária e auditada.
63
+ export type TenantModuleStatus = "active" | "trial" | "suspended" | "cancelled";
64
+ export const TenantModuleStatusEnum = {
65
+ Active: "active",
66
+ Trial: "trial",
67
+ Suspended: "suspended",
68
+ Cancelled: "cancelled",
69
+ } as const;
70
+
71
+ export type TenantModuleSource = "contract" | "trial" | "manual";
72
+ export const TenantModuleSourceEnum = {
73
+ Contract: "contract",
74
+ Trial: "trial",
75
+ Manual: "manual",
76
+ } as const;
77
+
78
+ export interface ITenantModuleEntitlement {
79
+ status: TenantModuleStatus;
80
+ enabled: boolean;
81
+ source: TenantModuleSource;
82
+ effective_at?: Date | null;
83
+ expires_at?: Date | null;
84
+ /** Capability ausente = false. Chaves conhecidas por módulo (ex.: `TelemedicineCapabilities`). */
85
+ capabilities?: Record<string, boolean | number | string>;
86
+ /**
87
+ * Override operacional (D6): libera o módulo até esta data mesmo com status
88
+ * bloqueante. Exige `override_by` e gera auditoria; sem data futura, é ignorado.
89
+ */
90
+ override_until?: Date | null;
91
+ override_by?: string | null;
92
+ version: number;
93
+ updated_at: Date;
94
+ }
95
+
96
+ /** Chave inicial de `ITenant.modules` — primeiro consumidor do entitlement genérico. */
97
+ export const TENANT_MODULE_TELEMEDICINE = "telemedicine";
98
+
99
+ /** Capabilities conhecidas de `modules.telemedicine.capabilities` (ausente = false). */
100
+ export const TelemedicineCapabilities = {
101
+ Recording: "recording",
102
+ Transcription: "transcription",
103
+ AutoAdmit: "auto_admit",
104
+ } as const;
105
+ export type TelemedicineCapability =
106
+ (typeof TelemedicineCapabilities)[keyof typeof TelemedicineCapabilities];
107
+
49
108
  export interface ITenant extends IFireDoc {
50
109
  name: string;
51
110
  base_tenant?: string | null;
@@ -57,4 +116,10 @@ export interface ITenant extends IFireDoc {
57
116
  status: TenantStatus;
58
117
  timezone?: string;
59
118
  created_by?: FirestoreDocumentReference;
119
+ /**
120
+ * feat-160 — módulos adicionais contratados, por chave (`telemedicine`, …).
121
+ * Ausência da chave = módulo desabilitado. Provisionado por script/admin
122
+ * técnico auditado; nunca pelo FE.
123
+ */
124
+ modules?: Record<string, ITenantModuleEntitlement>;
60
125
  }
@@ -17,6 +17,12 @@ export declare const ExternalObjectTypeEnum: {
17
17
  readonly NexBilling: "nex_billing";
18
18
  readonly NexContract: "nex_contract";
19
19
  readonly NexCustomer: "nex_customer";
20
+ /**
21
+ * feat-160 — teleconsulta do evo-telemedicine. O `id` é o `teleconsultationId`
22
+ * (hash, não concatenação); o link NUNCA carrega meeting/session id do provider.
23
+ * Espelhado à mão em `zExternalObjectTypeSchema` (apps/evo-task/zod-schemas.ts).
24
+ */
25
+ readonly Teleconsultation: "teleconsultation";
20
26
  };
21
27
  export type ExternalObjectType = (typeof ExternalObjectTypeEnum)[keyof typeof ExternalObjectTypeEnum];
22
28
  /**
@@ -21,6 +21,12 @@ exports.ExternalObjectTypeEnum = {
21
21
  NexBilling: "nex_billing",
22
22
  NexContract: "nex_contract",
23
23
  NexCustomer: "nex_customer",
24
+ /**
25
+ * feat-160 — teleconsulta do evo-telemedicine. O `id` é o `teleconsultationId`
26
+ * (hash, não concatenação); o link NUNCA carrega meeting/session id do provider.
27
+ * Espelhado à mão em `zExternalObjectTypeSchema` (apps/evo-task/zod-schemas.ts).
28
+ */
29
+ Teleconsultation: "teleconsultation",
24
30
  };
25
31
  /**
26
32
  * feat-125 — sistema DONO do objeto vinculado, quando ele não vive no tenant.
@@ -21,6 +21,12 @@ export const ExternalObjectTypeEnum = {
21
21
  NexBilling: "nex_billing",
22
22
  NexContract: "nex_contract",
23
23
  NexCustomer: "nex_customer",
24
+ /**
25
+ * feat-160 — teleconsulta do evo-telemedicine. O `id` é o `teleconsultationId`
26
+ * (hash, não concatenação); o link NUNCA carrega meeting/session id do provider.
27
+ * Espelhado à mão em `zExternalObjectTypeSchema` (apps/evo-task/zod-schemas.ts).
28
+ */
29
+ Teleconsultation: "teleconsultation",
24
30
  } as const;
25
31
 
26
32
  export type ExternalObjectType =
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "evo360-types",
3
- "version": "1.3.565",
3
+ "version": "1.3.574",
4
4
  "description": "HREVO360 Shared Types",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",