@qcobro/common 1.11.3 → 1.11.4

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 (173) hide show
  1. package/dist/config.d.ts +307 -0
  2. package/dist/config.d.ts.map +1 -0
  3. package/{src/config.ts → dist/config.js} +123 -154
  4. package/dist/config.js.map +1 -0
  5. package/dist/errors/ValidationError.d.ts +27 -0
  6. package/dist/errors/ValidationError.d.ts.map +1 -0
  7. package/dist/errors/ValidationError.js +52 -0
  8. package/dist/errors/ValidationError.js.map +1 -0
  9. package/{src/errors/index.ts → dist/errors/index.d.ts} +1 -0
  10. package/dist/errors/index.d.ts.map +1 -0
  11. package/dist/errors/index.js +2 -0
  12. package/dist/errors/index.js.map +1 -0
  13. package/dist/index.d.ts +19 -0
  14. package/dist/index.d.ts.map +1 -0
  15. package/{src/index.ts → dist/index.js} +2 -5
  16. package/dist/index.js.map +1 -0
  17. package/dist/schemas/agentTemplates.d.ts +73 -0
  18. package/dist/schemas/agentTemplates.d.ts.map +1 -0
  19. package/dist/schemas/agentTemplates.js +90 -0
  20. package/dist/schemas/agentTemplates.js.map +1 -0
  21. package/dist/schemas/apiKeys.d.ts +17 -0
  22. package/dist/schemas/apiKeys.d.ts.map +1 -0
  23. package/{src/schemas/apiKeys.ts → dist/schemas/apiKeys.js} +11 -16
  24. package/dist/schemas/apiKeys.js.map +1 -0
  25. package/dist/schemas/auth.d.ts +74 -0
  26. package/dist/schemas/auth.d.ts.map +1 -0
  27. package/dist/schemas/auth.js +53 -0
  28. package/dist/schemas/auth.js.map +1 -0
  29. package/dist/schemas/campaigns.d.ts +61 -0
  30. package/dist/schemas/campaigns.d.ts.map +1 -0
  31. package/{src/schemas/campaigns.ts → dist/schemas/campaigns.js} +20 -32
  32. package/dist/schemas/campaigns.js.map +1 -0
  33. package/dist/schemas/contactLog.d.ts +121 -0
  34. package/dist/schemas/contactLog.d.ts.map +1 -0
  35. package/dist/schemas/contactLog.js +83 -0
  36. package/dist/schemas/contactLog.js.map +1 -0
  37. package/dist/schemas/dispatch.d.ts +51 -0
  38. package/dist/schemas/dispatch.d.ts.map +1 -0
  39. package/{src/schemas/dispatch.ts → dist/schemas/dispatch.js} +55 -61
  40. package/dist/schemas/dispatch.js.map +1 -0
  41. package/dist/schemas/email.d.ts +38 -0
  42. package/dist/schemas/email.d.ts.map +1 -0
  43. package/dist/schemas/email.js +34 -0
  44. package/dist/schemas/email.js.map +1 -0
  45. package/dist/schemas/index.d.ts +16 -0
  46. package/dist/schemas/index.d.ts.map +1 -0
  47. package/{src/schemas/index.ts → dist/schemas/index.js} +1 -0
  48. package/dist/schemas/index.js.map +1 -0
  49. package/dist/schemas/insight.d.ts +25 -0
  50. package/dist/schemas/insight.d.ts.map +1 -0
  51. package/{src/schemas/insight.ts → dist/schemas/insight.js} +6 -9
  52. package/dist/schemas/insight.js.map +1 -0
  53. package/dist/schemas/portfolios.d.ts +65 -0
  54. package/dist/schemas/portfolios.d.ts.map +1 -0
  55. package/dist/schemas/portfolios.js +40 -0
  56. package/dist/schemas/portfolios.js.map +1 -0
  57. package/dist/schemas/userSettings.d.ts +25 -0
  58. package/dist/schemas/userSettings.d.ts.map +1 -0
  59. package/{src/schemas/userSettings.ts → dist/schemas/userSettings.js} +4 -9
  60. package/dist/schemas/userSettings.js.map +1 -0
  61. package/dist/schemas/users.d.ts +7 -0
  62. package/dist/schemas/users.d.ts.map +1 -0
  63. package/dist/schemas/users.js +6 -0
  64. package/dist/schemas/users.js.map +1 -0
  65. package/dist/schemas/voiceEvent.d.ts +37 -0
  66. package/dist/schemas/voiceEvent.d.ts.map +1 -0
  67. package/dist/schemas/voiceEvent.js +35 -0
  68. package/dist/schemas/voiceEvent.js.map +1 -0
  69. package/dist/schemas/whatsApp.d.ts +76 -0
  70. package/dist/schemas/whatsApp.d.ts.map +1 -0
  71. package/dist/schemas/whatsApp.js +85 -0
  72. package/dist/schemas/whatsApp.js.map +1 -0
  73. package/dist/schemas/workspaceSettings.d.ts +27 -0
  74. package/dist/schemas/workspaceSettings.d.ts.map +1 -0
  75. package/{src/schemas/workspaceSettings.ts → dist/schemas/workspaceSettings.js} +6 -11
  76. package/dist/schemas/workspaceSettings.js.map +1 -0
  77. package/dist/schemas/workspaces.d.ts +50 -0
  78. package/dist/schemas/workspaces.d.ts.map +1 -0
  79. package/dist/schemas/workspaces.js +36 -0
  80. package/dist/schemas/workspaces.js.map +1 -0
  81. package/dist/types/agentTemplates.d.ts +119 -0
  82. package/dist/types/agentTemplates.d.ts.map +1 -0
  83. package/dist/types/agentTemplates.js +2 -0
  84. package/dist/types/agentTemplates.js.map +1 -0
  85. package/dist/types/campaigns.d.ts +257 -0
  86. package/dist/types/campaigns.d.ts.map +1 -0
  87. package/dist/types/campaigns.js +2 -0
  88. package/dist/types/campaigns.js.map +1 -0
  89. package/dist/types/dispatch.d.ts +168 -0
  90. package/dist/types/dispatch.d.ts.map +1 -0
  91. package/dist/types/dispatch.js +8 -0
  92. package/dist/types/dispatch.js.map +1 -0
  93. package/dist/types/email.d.ts +65 -0
  94. package/dist/types/email.d.ts.map +1 -0
  95. package/dist/types/email.js +7 -0
  96. package/dist/types/email.js.map +1 -0
  97. package/{src/types/engine.ts → dist/types/engine.d.ts} +23 -46
  98. package/dist/types/engine.d.ts.map +1 -0
  99. package/dist/types/engine.js +10 -0
  100. package/dist/types/engine.js.map +1 -0
  101. package/dist/types/index.d.ts +12 -0
  102. package/dist/types/index.d.ts.map +1 -0
  103. package/{src/types/index.ts → dist/types/index.js} +1 -0
  104. package/dist/types/index.js.map +1 -0
  105. package/{src/types/insight.ts → dist/types/insight.d.ts} +10 -8
  106. package/dist/types/insight.d.ts.map +1 -0
  107. package/dist/types/insight.js +2 -0
  108. package/dist/types/insight.js.map +1 -0
  109. package/dist/types/portfolios.d.ts +153 -0
  110. package/dist/types/portfolios.d.ts.map +1 -0
  111. package/dist/types/portfolios.js +2 -0
  112. package/dist/types/portfolios.js.map +1 -0
  113. package/dist/types/userSettings.d.ts +25 -0
  114. package/dist/types/userSettings.d.ts.map +1 -0
  115. package/dist/types/userSettings.js +2 -0
  116. package/dist/types/userSettings.js.map +1 -0
  117. package/dist/types/voiceApplication.d.ts +32 -0
  118. package/dist/types/voiceApplication.d.ts.map +1 -0
  119. package/dist/types/voiceApplication.js +7 -0
  120. package/dist/types/voiceApplication.js.map +1 -0
  121. package/dist/types/whatsApp.d.ts +97 -0
  122. package/dist/types/whatsApp.d.ts.map +1 -0
  123. package/dist/types/whatsApp.js +2 -0
  124. package/dist/types/whatsApp.js.map +1 -0
  125. package/dist/types/workspaceSettings.d.ts +26 -0
  126. package/dist/types/workspaceSettings.d.ts.map +1 -0
  127. package/dist/types/workspaceSettings.js +2 -0
  128. package/dist/types/workspaceSettings.js.map +1 -0
  129. package/dist/utils/index.d.ts +4 -0
  130. package/dist/utils/index.d.ts.map +1 -0
  131. package/dist/utils/index.js +4 -0
  132. package/dist/utils/index.js.map +1 -0
  133. package/{src/utils/outreach.ts → dist/utils/outreach.d.ts} +7 -32
  134. package/dist/utils/outreach.d.ts.map +1 -0
  135. package/dist/utils/outreach.js +49 -0
  136. package/dist/utils/outreach.js.map +1 -0
  137. package/dist/utils/time.d.ts +25 -0
  138. package/dist/utils/time.d.ts.map +1 -0
  139. package/dist/utils/time.js +52 -0
  140. package/dist/utils/time.js.map +1 -0
  141. package/dist/utils/withErrorHandlingAndValidation.d.ts +18 -0
  142. package/dist/utils/withErrorHandlingAndValidation.d.ts.map +1 -0
  143. package/{src/utils/withErrorHandlingAndValidation.ts → dist/utils/withErrorHandlingAndValidation.js} +9 -15
  144. package/dist/utils/withErrorHandlingAndValidation.js.map +1 -0
  145. package/package.json +4 -1
  146. package/CHANGELOG.md +0 -115
  147. package/src/config.test.ts +0 -19
  148. package/src/errors/ValidationError.test.ts +0 -38
  149. package/src/errors/ValidationError.ts +0 -68
  150. package/src/schemas/agentTemplates.ts +0 -100
  151. package/src/schemas/apiKeys.test.ts +0 -38
  152. package/src/schemas/auth.ts +0 -76
  153. package/src/schemas/contactLog.ts +0 -96
  154. package/src/schemas/email.ts +0 -37
  155. package/src/schemas/portfolios.ts +0 -49
  156. package/src/schemas/users.ts +0 -7
  157. package/src/schemas/voiceEvent.ts +0 -45
  158. package/src/schemas/whatsApp.ts +0 -101
  159. package/src/schemas/workspaces.ts +0 -53
  160. package/src/types/agentTemplates.ts +0 -104
  161. package/src/types/campaigns.ts +0 -210
  162. package/src/types/dispatch.ts +0 -160
  163. package/src/types/email.ts +0 -66
  164. package/src/types/portfolios.ts +0 -128
  165. package/src/types/userSettings.ts +0 -21
  166. package/src/types/voiceApplication.ts +0 -29
  167. package/src/types/whatsApp.ts +0 -82
  168. package/src/types/workspaceSettings.ts +0 -22
  169. package/src/utils/index.ts +0 -14
  170. package/src/utils/outreach.test.ts +0 -83
  171. package/src/utils/time.ts +0 -66
  172. package/src/utils/withErrorHandlingAndValidation.test.ts +0 -33
  173. package/tsconfig.json +0 -9
@@ -0,0 +1,307 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * QCobro service configuration — the shape of `qcobro.json`.
4
+ *
5
+ * This module exports the schema/type only (no filesystem access) so it stays
6
+ * safe to import from the browser. Server packages load the file and call
7
+ * `qcobroConfigSchema.parse(...)`.
8
+ *
9
+ * Identity runs as an external Fonoster Identity service; QCobro only needs the
10
+ * endpoint to reach it. All Identity service configuration (database, keys,
11
+ * issuer, SMTP, …) lives with that service, not here.
12
+ */
13
+ export declare const identityConfigSchema: z.ZodObject<{
14
+ endpoint: z.ZodDefault<z.ZodString>;
15
+ httpBridgeUrl: z.ZodDefault<z.ZodString>;
16
+ }, z.core.$strip>;
17
+ /**
18
+ * A selectable voice in the deployment's catalog. Voice agent templates pick a
19
+ * voice by `id` (the provider's voice identifier, e.g. an ElevenLabs voice id);
20
+ * the console renders the picker from this catalog rather than free text.
21
+ */
22
+ export declare const voiceCatalogEntrySchema: z.ZodObject<{
23
+ id: z.ZodString;
24
+ name: z.ZodString;
25
+ language: z.ZodString;
26
+ gender: z.ZodEnum<{
27
+ female: "female";
28
+ male: "male";
29
+ }>;
30
+ provider: z.ZodDefault<z.ZodString>;
31
+ }, z.core.$strip>;
32
+ export type VoiceCatalogEntry = z.infer<typeof voiceCatalogEntrySchema>;
33
+ /**
34
+ * Fonoster connection + Autopilot defaults. VOICE_AI agent templates are synced to
35
+ * Fonoster as AUTOPILOT applications; the apiserver authenticates with a workspace
36
+ * access key + API key/secret. Optional — when absent, voice templates save locally
37
+ * and stay unsynced (the console offers a manual re-sync).
38
+ */
39
+ export declare const fonosterConfigSchema: z.ZodOptional<z.ZodObject<{
40
+ accessKeyId: z.ZodString;
41
+ apiKey: z.ZodString;
42
+ apiSecret: z.ZodString;
43
+ endpoint: z.ZodOptional<z.ZodString>;
44
+ autopilot: z.ZodDefault<z.ZodObject<{
45
+ sttProductRef: z.ZodDefault<z.ZodString>;
46
+ sttModel: z.ZodDefault<z.ZodString>;
47
+ llmProductRef: z.ZodDefault<z.ZodString>;
48
+ llmProvider: z.ZodDefault<z.ZodString>;
49
+ llmModel: z.ZodDefault<z.ZodString>;
50
+ maxTokens: z.ZodDefault<z.ZodNumber>;
51
+ temperature: z.ZodDefault<z.ZodNumber>;
52
+ }, z.core.$strip>>;
53
+ voices: z.ZodOptional<z.ZodArray<z.ZodObject<{
54
+ id: z.ZodString;
55
+ name: z.ZodString;
56
+ language: z.ZodString;
57
+ gender: z.ZodEnum<{
58
+ female: "female";
59
+ male: "male";
60
+ }>;
61
+ provider: z.ZodDefault<z.ZodString>;
62
+ }, z.core.$strip>>>;
63
+ numbers: z.ZodDefault<z.ZodArray<z.ZodString>>;
64
+ prerecordedAppRef: z.ZodOptional<z.ZodString>;
65
+ webhookBaseUrl: z.ZodOptional<z.ZodString>;
66
+ maxCallsPerMinute: z.ZodDefault<z.ZodNumber>;
67
+ }, z.core.$strip>>;
68
+ export type FonosterConfig = z.infer<typeof fonosterConfigSchema>;
69
+ /**
70
+ * Derives the TTS product ref for a voice from its provider (e.g. an `elevenlabs`
71
+ * voice → `tts.elevenlabs`). Used by both Voz IA (Autopilot) and pre-recorded
72
+ * voice. Falls back to `tts.elevenlabs` when the voice isn't in the catalog.
73
+ */
74
+ export declare function ttsProductRefForVoice(voiceId: string, voices: VoiceCatalogEntry[]): string;
75
+ /**
76
+ * Twilio connection for SMS dispatch. Optional — when absent, SMS dispatch fails
77
+ * with a clear error. `fromNumbers` (E.164) are rotated through per message.
78
+ */
79
+ export declare const twilioConfigSchema: z.ZodOptional<z.ZodObject<{
80
+ accountSid: z.ZodString;
81
+ authToken: z.ZodString;
82
+ fromNumbers: z.ZodDefault<z.ZodArray<z.ZodString>>;
83
+ maxSmsPerMinute: z.ZodDefault<z.ZodNumber>;
84
+ }, z.core.$strip>>;
85
+ export type TwilioConfig = z.infer<typeof twilioConfigSchema>;
86
+ /**
87
+ * Resend connection for the bidirectional EMAIL channel. Optional — when absent, EMAIL
88
+ * dispatch is inert (the engine reports EMAIL campaigns as not-configured) and the inbound
89
+ * webhook rejects everything. Outbound uses `apiKey` + `fromEmail`/`fromName`; inbound
90
+ * replies arrive at `reply+<token>@<inboundDomain>` and are verified with
91
+ * `inboundSigningSecret`. The per-attempt reply cap defaults to `maxRepliesDefault`.
92
+ */
93
+ export declare const resendConfigSchema: z.ZodOptional<z.ZodObject<{
94
+ apiKey: z.ZodString;
95
+ fromEmail: z.ZodString;
96
+ fromName: z.ZodOptional<z.ZodString>;
97
+ inboundDomain: z.ZodString;
98
+ inboundSigningSecret: z.ZodOptional<z.ZodString>;
99
+ maxEmailsPerMinute: z.ZodDefault<z.ZodNumber>;
100
+ maxRepliesDefault: z.ZodDefault<z.ZodNumber>;
101
+ }, z.core.$strip>>;
102
+ export type ResendConfig = z.infer<typeof resendConfigSchema>;
103
+ /**
104
+ * AI-insight generation. Produces a gestión's structured analysis from its
105
+ * conversation transcript. Optional — when absent or `enabled:false`, no LLM is
106
+ * called and gestiones keep their unanalyzed / generic-insight state.
107
+ *
108
+ * Providers mirror the Fonoster autopilot / Mikro vendor set, reached over each
109
+ * vendor's REST API (no SDK dependency). `mock` is an offline provider that
110
+ * synthesizes a deterministic analysis from the transcript — for local dev,
111
+ * demos, and tests, with no key and no network/cost.
112
+ */
113
+ export declare const aiProviderSchema: z.ZodEnum<{
114
+ google: "google";
115
+ mock: "mock";
116
+ openai: "openai";
117
+ anthropic: "anthropic";
118
+ }>;
119
+ export type AiProvider = z.infer<typeof aiProviderSchema>;
120
+ /** Valid models per provider; used to reject misconfiguration at load. */
121
+ export declare const AI_MODELS: Record<AiProvider, string[]>;
122
+ export declare const aiConfigSchema: z.ZodOptional<z.ZodObject<{
123
+ enabled: z.ZodDefault<z.ZodBoolean>;
124
+ provider: z.ZodDefault<z.ZodEnum<{
125
+ google: "google";
126
+ mock: "mock";
127
+ openai: "openai";
128
+ anthropic: "anthropic";
129
+ }>>;
130
+ apiKey: z.ZodOptional<z.ZodString>;
131
+ model: z.ZodDefault<z.ZodString>;
132
+ temperature: z.ZodDefault<z.ZodNumber>;
133
+ maxTokens: z.ZodDefault<z.ZodNumber>;
134
+ generation: z.ZodDefault<z.ZodEnum<{
135
+ onDemand: "onDemand";
136
+ onIngestion: "onIngestion";
137
+ }>>;
138
+ }, z.core.$strip>>;
139
+ export type AiConfig = z.infer<typeof aiConfigSchema>;
140
+ /**
141
+ * Text-to-speech for previewing pre-recorded agent scripts in the console (the
142
+ * Pre-grabada gestión detail plays the script as audio). Optional — when absent, the
143
+ * apiKey falls back to `ELEVENLABS_API_KEY`, and if no key resolves the player is simply
144
+ * unavailable. Voices come from `fonoster.voices`.
145
+ */
146
+ export declare const ttsConfigSchema: z.ZodOptional<z.ZodObject<{
147
+ provider: z.ZodDefault<z.ZodLiteral<"elevenlabs">>;
148
+ apiKey: z.ZodOptional<z.ZodString>;
149
+ model: z.ZodDefault<z.ZodString>;
150
+ }, z.core.$strip>>;
151
+ export type TtsConfig = z.infer<typeof ttsConfigSchema>;
152
+ /**
153
+ * A piece of user-facing copy that may be localized. Either a single string
154
+ * (same text for every language) or a map of language code → string
155
+ * (e.g. `{ "en": "Early access", "es": "Acceso temprano" }`). The console
156
+ * resolves it against the active UI language, falling back to any available value.
157
+ */
158
+ export declare const localizedStringSchema: z.ZodUnion<readonly [z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>]>;
159
+ export type LocalizedString = z.infer<typeof localizedStringSchema>;
160
+ /**
161
+ * A deployment-wide announcement rendered as a dismissible banner across the
162
+ * console (and the workspace picker). Optional — when absent, no banner shows.
163
+ *
164
+ * `variant` selects the color scheme and `icon` the leading glyph, so a
165
+ * deployment can style it as a neutral announcement, an amber alert, etc.
166
+ * `title` and `message` are localizable (see {@link localizedStringSchema}).
167
+ */
168
+ export declare const announcementConfigSchema: z.ZodOptional<z.ZodObject<{
169
+ enabled: z.ZodDefault<z.ZodBoolean>;
170
+ variant: z.ZodDefault<z.ZodEnum<{
171
+ success: "success";
172
+ announcement: "announcement";
173
+ alert: "alert";
174
+ danger: "danger";
175
+ }>>;
176
+ icon: z.ZodDefault<z.ZodEnum<{
177
+ megaphone: "megaphone";
178
+ info: "info";
179
+ "alert-triangle": "alert-triangle";
180
+ sparkles: "sparkles";
181
+ rocket: "rocket";
182
+ bell: "bell";
183
+ }>>;
184
+ dismissible: z.ZodDefault<z.ZodBoolean>;
185
+ title: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>]>>;
186
+ message: z.ZodUnion<readonly [z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>]>;
187
+ }, z.core.$strip>>;
188
+ export type AnnouncementConfig = z.infer<typeof announcementConfigSchema>;
189
+ export declare const qcobroConfigSchema: z.ZodObject<{
190
+ database: z.ZodObject<{
191
+ url: z.ZodString;
192
+ }, z.core.$strip>;
193
+ identity: z.ZodObject<{
194
+ endpoint: z.ZodDefault<z.ZodString>;
195
+ httpBridgeUrl: z.ZodDefault<z.ZodString>;
196
+ }, z.core.$strip>;
197
+ apiserver: z.ZodDefault<z.ZodObject<{
198
+ port: z.ZodDefault<z.ZodNumber>;
199
+ voicePort: z.ZodDefault<z.ZodNumber>;
200
+ contactLogAuth: z.ZodDefault<z.ZodObject<{
201
+ enabled: z.ZodDefault<z.ZodBoolean>;
202
+ }, z.core.$strip>>;
203
+ }, z.core.$strip>>;
204
+ fonoster: z.ZodOptional<z.ZodObject<{
205
+ accessKeyId: z.ZodString;
206
+ apiKey: z.ZodString;
207
+ apiSecret: z.ZodString;
208
+ endpoint: z.ZodOptional<z.ZodString>;
209
+ autopilot: z.ZodDefault<z.ZodObject<{
210
+ sttProductRef: z.ZodDefault<z.ZodString>;
211
+ sttModel: z.ZodDefault<z.ZodString>;
212
+ llmProductRef: z.ZodDefault<z.ZodString>;
213
+ llmProvider: z.ZodDefault<z.ZodString>;
214
+ llmModel: z.ZodDefault<z.ZodString>;
215
+ maxTokens: z.ZodDefault<z.ZodNumber>;
216
+ temperature: z.ZodDefault<z.ZodNumber>;
217
+ }, z.core.$strip>>;
218
+ voices: z.ZodOptional<z.ZodArray<z.ZodObject<{
219
+ id: z.ZodString;
220
+ name: z.ZodString;
221
+ language: z.ZodString;
222
+ gender: z.ZodEnum<{
223
+ female: "female";
224
+ male: "male";
225
+ }>;
226
+ provider: z.ZodDefault<z.ZodString>;
227
+ }, z.core.$strip>>>;
228
+ numbers: z.ZodDefault<z.ZodArray<z.ZodString>>;
229
+ prerecordedAppRef: z.ZodOptional<z.ZodString>;
230
+ webhookBaseUrl: z.ZodOptional<z.ZodString>;
231
+ maxCallsPerMinute: z.ZodDefault<z.ZodNumber>;
232
+ }, z.core.$strip>>;
233
+ twilio: z.ZodOptional<z.ZodObject<{
234
+ accountSid: z.ZodString;
235
+ authToken: z.ZodString;
236
+ fromNumbers: z.ZodDefault<z.ZodArray<z.ZodString>>;
237
+ maxSmsPerMinute: z.ZodDefault<z.ZodNumber>;
238
+ }, z.core.$strip>>;
239
+ resend: z.ZodOptional<z.ZodObject<{
240
+ apiKey: z.ZodString;
241
+ fromEmail: z.ZodString;
242
+ fromName: z.ZodOptional<z.ZodString>;
243
+ inboundDomain: z.ZodString;
244
+ inboundSigningSecret: z.ZodOptional<z.ZodString>;
245
+ maxEmailsPerMinute: z.ZodDefault<z.ZodNumber>;
246
+ maxRepliesDefault: z.ZodDefault<z.ZodNumber>;
247
+ }, z.core.$strip>>;
248
+ ai: z.ZodOptional<z.ZodObject<{
249
+ enabled: z.ZodDefault<z.ZodBoolean>;
250
+ provider: z.ZodDefault<z.ZodEnum<{
251
+ google: "google";
252
+ mock: "mock";
253
+ openai: "openai";
254
+ anthropic: "anthropic";
255
+ }>>;
256
+ apiKey: z.ZodOptional<z.ZodString>;
257
+ model: z.ZodDefault<z.ZodString>;
258
+ temperature: z.ZodDefault<z.ZodNumber>;
259
+ maxTokens: z.ZodDefault<z.ZodNumber>;
260
+ generation: z.ZodDefault<z.ZodEnum<{
261
+ onDemand: "onDemand";
262
+ onIngestion: "onIngestion";
263
+ }>>;
264
+ }, z.core.$strip>>;
265
+ tts: z.ZodOptional<z.ZodObject<{
266
+ provider: z.ZodDefault<z.ZodLiteral<"elevenlabs">>;
267
+ apiKey: z.ZodOptional<z.ZodString>;
268
+ model: z.ZodDefault<z.ZodString>;
269
+ }, z.core.$strip>>;
270
+ announcement: z.ZodOptional<z.ZodObject<{
271
+ enabled: z.ZodDefault<z.ZodBoolean>;
272
+ variant: z.ZodDefault<z.ZodEnum<{
273
+ success: "success";
274
+ announcement: "announcement";
275
+ alert: "alert";
276
+ danger: "danger";
277
+ }>>;
278
+ icon: z.ZodDefault<z.ZodEnum<{
279
+ megaphone: "megaphone";
280
+ info: "info";
281
+ "alert-triangle": "alert-triangle";
282
+ sparkles: "sparkles";
283
+ rocket: "rocket";
284
+ bell: "bell";
285
+ }>>;
286
+ dismissible: z.ZodDefault<z.ZodBoolean>;
287
+ title: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>]>>;
288
+ message: z.ZodUnion<readonly [z.ZodString, z.ZodRecord<z.ZodString, z.ZodString>]>;
289
+ }, z.core.$strip>>;
290
+ security: z.ZodOptional<z.ZodObject<{
291
+ cloakEncryptionKey: z.ZodOptional<z.ZodString>;
292
+ }, z.core.$strip>>;
293
+ whatsapp: z.ZodDefault<z.ZodObject<{
294
+ apiBaseUrl: z.ZodDefault<z.ZodString>;
295
+ apiVersion: z.ZodDefault<z.ZodString>;
296
+ maxMessagesPerMinute: z.ZodDefault<z.ZodNumber>;
297
+ appSecret: z.ZodOptional<z.ZodString>;
298
+ maxRepliesDefault: z.ZodDefault<z.ZodNumber>;
299
+ }, z.core.$strip>>;
300
+ engine: z.ZodDefault<z.ZodObject<{
301
+ enabled: z.ZodDefault<z.ZodBoolean>;
302
+ tickSeconds: z.ZodDefault<z.ZodNumber>;
303
+ }, z.core.$strip>>;
304
+ }, z.core.$strip>;
305
+ export type IdentityConfig = z.infer<typeof identityConfigSchema>;
306
+ export type QCobroConfig = z.infer<typeof qcobroConfigSchema>;
307
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB;;;;;;;;;;GAUG;AACH,eAAO,MAAM,oBAAoB;;;iBAK/B,CAAC;AAEH;;;;GAIG;AACH,eAAO,MAAM,uBAAuB;;;;;;;;;iBAMlC,CAAC;AAEH,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE;;;;;GAKG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAkEpB,CAAC;AAEd,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,CAG1F;AAED;;;GAGG;AACH,eAAO,MAAM,kBAAkB;;;;;kBAYlB,CAAC;AAEd,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;GAMG;AACH,eAAO,MAAM,kBAAkB;;;;;;;;kBAqBlB,CAAC;AAEd,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D;;;;;;;;;GASG;AACH,eAAO,MAAM,gBAAgB;;;;;EAAoD,CAAC;AAClF,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,0EAA0E;AAC1E,eAAO,MAAM,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,EAAE,CAKlD,CAAC;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;kBAwBd,CAAC;AAEd,MAAM,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;kBAMf,CAAC;AAEd,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,2EAGhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAEpE;;;;;;;GAOG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;kBAcxB,CAAC;AAEd,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA8E7B,CAAC;AAEH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC"}