@8wave/ai-elements 0.114.0-beta.8 → 0.115.0-beta.13

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 (164) hide show
  1. package/dist/_chunks/Agent-DK76k05_.js +566 -0
  2. package/dist/_chunks/Agent-DK76k05_.js.map +1 -0
  3. package/dist/_chunks/{PkStreamingMarkdown-C1sANAr5.js → PkStreamingMarkdown-BKxA6Ntl.js} +688 -672
  4. package/dist/_chunks/PkStreamingMarkdown-BKxA6Ntl.js.map +1 -0
  5. package/dist/_chunks/{PkToolRequestGeolocation-BbxYKt-9.js → PkToolRequestGeolocation-OF1PWhMw.js} +2 -2
  6. package/{dist-vue/_chunks/PkToolRequestGeolocation-9vfYNaQo.js.map → dist/_chunks/PkToolRequestGeolocation-OF1PWhMw.js.map} +1 -1
  7. package/dist/_chunks/{PkToolRequestOAuthConnection-CTp2w60F.js → PkToolRequestOAuthConnection-CgQePKKb.js} +4 -4
  8. package/dist/_chunks/PkToolRequestOAuthConnection-CgQePKKb.js.map +1 -0
  9. package/dist/_chunks/{PkToolShowArtifact-BfTjxGOT.js → PkToolShowArtifact-CHxeuKEU.js} +2 -2
  10. package/dist/_chunks/{PkToolShowArtifact-BfTjxGOT.js.map → PkToolShowArtifact-CHxeuKEU.js.map} +1 -1
  11. package/dist/_chunks/PkToolShowComparison-8d6fAhRp.js +72 -0
  12. package/dist/_chunks/PkToolShowComparison-8d6fAhRp.js.map +1 -0
  13. package/dist/_chunks/{PkToolShowContactForm-PFpY9dIp.js → PkToolShowContactForm-DqVLVwqJ.js} +2 -2
  14. package/dist/_chunks/{PkToolShowContactForm-PFpY9dIp.js.map → PkToolShowContactForm-DqVLVwqJ.js.map} +1 -1
  15. package/dist/_chunks/{PkToolShowForm-CMtSN0oX.js → PkToolShowForm-YJQPYfEe.js} +5 -5
  16. package/dist/_chunks/{PkToolShowForm-CMtSN0oX.js.map → PkToolShowForm-YJQPYfEe.js.map} +1 -1
  17. package/dist/_chunks/{PkToolShowSources-C6cu66Ts.js → PkToolShowSources-kGQlIKaN.js} +3 -3
  18. package/dist/_chunks/{PkToolShowSources-C6cu66Ts.js.map → PkToolShowSources-kGQlIKaN.js.map} +1 -1
  19. package/dist/_chunks/{PkToolShowSuggestedReply-CFO8wV1b.js → PkToolShowSuggestedReply-Dl4x_nEJ.js} +2 -2
  20. package/dist/_chunks/{PkToolShowSuggestedReply-CFO8wV1b.js.map → PkToolShowSuggestedReply-Dl4x_nEJ.js.map} +1 -1
  21. package/dist/_chunks/{markdown-BRD-hDrH.js → markdown-B4cYQGBo.js} +37 -21
  22. package/dist/_chunks/markdown-B4cYQGBo.js.map +1 -0
  23. package/dist/ai-elements.es.js +3177 -2748
  24. package/dist/ai-elements.es.js.map +1 -1
  25. package/dist-vue/PkChatbot.js +1 -1
  26. package/dist-vue/PkChatbotAuth.js +1 -1
  27. package/dist-vue/PkChatbotEmptyState.js +1 -1
  28. package/dist-vue/PkChatbotInput.js +1 -1
  29. package/dist-vue/PkChatbotMessages.js +1 -1
  30. package/dist-vue/PkChatbotStepPayload.js +1 -1
  31. package/dist-vue/PkChatbotStepToolDetail.js +1 -1
  32. package/dist-vue/PkChatbotSteps.js +1 -1
  33. package/dist-vue/PkChatbotViewChat.js +1 -1
  34. package/dist-vue/PkChatbotViewConversations.js +1 -1
  35. package/dist-vue/PkChatbotViewFiles.js +1 -1
  36. package/dist-vue/PkChatbotViewProfile.js +1 -1
  37. package/dist-vue/_chunks/{Agent-BNlmK-uJ.js → Agent-tbKw8Mdt.js} +2 -2
  38. package/dist-vue/_chunks/{Agent-BNlmK-uJ.js.map → Agent-tbKw8Mdt.js.map} +1 -1
  39. package/dist-vue/_chunks/{Document-2X01-F4Z.js → Document-BWz2HySu.js} +37 -21
  40. package/dist-vue/_chunks/Document-BWz2HySu.js.map +1 -0
  41. package/dist-vue/_chunks/Media-_HfFLHGD.js.map +1 -1
  42. package/dist-vue/_chunks/{PkChatbot-HRayDr2d.js → PkChatbot-DtyZYAzj.js} +8 -8
  43. package/dist-vue/_chunks/{PkChatbot-HRayDr2d.js.map → PkChatbot-DtyZYAzj.js.map} +1 -1
  44. package/dist-vue/_chunks/PkChatbotAuth-jzoNJkmH.js +421 -0
  45. package/dist-vue/_chunks/PkChatbotAuth-jzoNJkmH.js.map +1 -0
  46. package/dist-vue/_chunks/{PkChatbotEmptyState-CPOcfoRC.js → PkChatbotEmptyState-Dicjr_Fv.js} +2 -2
  47. package/dist-vue/_chunks/{PkChatbotEmptyState-CPOcfoRC.js.map → PkChatbotEmptyState-Dicjr_Fv.js.map} +1 -1
  48. package/dist-vue/_chunks/{PkChatbotInput-pLJQIu7v.js → PkChatbotInput-DcLmOqA1.js} +2 -2
  49. package/dist-vue/_chunks/{PkChatbotInput-pLJQIu7v.js.map → PkChatbotInput-DcLmOqA1.js.map} +1 -1
  50. package/dist-vue/_chunks/{PkChatbotMessages-GZStJbx_.js → PkChatbotMessages-CrhRrcBs.js} +258 -256
  51. package/dist-vue/_chunks/PkChatbotMessages-CrhRrcBs.js.map +1 -0
  52. package/dist-vue/_chunks/{PkChatbotStepPayload-DU0W-eUp.js → PkChatbotStepPayload-rKaeDQDj.js} +2 -2
  53. package/dist-vue/_chunks/{PkChatbotStepPayload-DU0W-eUp.js.map → PkChatbotStepPayload-rKaeDQDj.js.map} +1 -1
  54. package/dist-vue/_chunks/{PkChatbotStepToolDetail-etlBryOg.js → PkChatbotStepToolDetail-5HdSV8Im.js} +3 -3
  55. package/dist-vue/_chunks/{PkChatbotStepToolDetail-etlBryOg.js.map → PkChatbotStepToolDetail-5HdSV8Im.js.map} +1 -1
  56. package/dist-vue/_chunks/PkChatbotSteps-CPPjwTJN.js +191 -0
  57. package/dist-vue/_chunks/PkChatbotSteps-CPPjwTJN.js.map +1 -0
  58. package/dist-vue/_chunks/{PkChatbotViewChat-DIfBWFoG.js → PkChatbotViewChat-B13nCznB.js} +7 -7
  59. package/dist-vue/_chunks/{PkChatbotViewChat-DIfBWFoG.js.map → PkChatbotViewChat-B13nCznB.js.map} +1 -1
  60. package/dist-vue/_chunks/{PkChatbotViewConversations-BCdolW0R.js → PkChatbotViewConversations-CHpN4vhm.js} +2 -2
  61. package/dist-vue/_chunks/{PkChatbotViewConversations-BCdolW0R.js.map → PkChatbotViewConversations-CHpN4vhm.js.map} +1 -1
  62. package/dist-vue/_chunks/{PkChatbotViewFiles-Cudao8ew.js → PkChatbotViewFiles-cRyG5X3P.js} +3 -3
  63. package/dist-vue/_chunks/{PkChatbotViewFiles-Cudao8ew.js.map → PkChatbotViewFiles-cRyG5X3P.js.map} +1 -1
  64. package/dist-vue/_chunks/{PkChatbotViewProfile-DDsKOkcC.js → PkChatbotViewProfile-CosaHA-g.js} +2 -2
  65. package/dist-vue/_chunks/{PkChatbotViewProfile-DDsKOkcC.js.map → PkChatbotViewProfile-CosaHA-g.js.map} +1 -1
  66. package/dist-vue/_chunks/{PkStreamingMarkdown-BloMJaIW.js → PkStreamingMarkdown-DYy79C1P.js} +214 -205
  67. package/dist-vue/_chunks/{PkStreamingMarkdown-BloMJaIW.js.map → PkStreamingMarkdown-DYy79C1P.js.map} +1 -1
  68. package/dist-vue/_chunks/{PkToolRequestGeolocation-9vfYNaQo.js → PkToolRequestGeolocation-BOVbaCzQ.js} +2 -2
  69. package/{dist/_chunks/PkToolRequestGeolocation-BbxYKt-9.js.map → dist-vue/_chunks/PkToolRequestGeolocation-BOVbaCzQ.js.map} +1 -1
  70. package/dist-vue/_chunks/{PkToolRequestOAuthConnection-BorR5NmZ.js → PkToolRequestOAuthConnection-a2LegFoE.js} +4 -4
  71. package/dist-vue/_chunks/PkToolRequestOAuthConnection-a2LegFoE.js.map +1 -0
  72. package/dist-vue/_chunks/{PkToolShowArtifact-BuMY7GNj.js → PkToolShowArtifact-DUOnFdfa.js} +2 -2
  73. package/dist-vue/_chunks/{PkToolShowArtifact-BuMY7GNj.js.map → PkToolShowArtifact-DUOnFdfa.js.map} +1 -1
  74. package/dist-vue/_chunks/PkToolShowComparison-DQs3E6-k.js +72 -0
  75. package/dist-vue/_chunks/PkToolShowComparison-DQs3E6-k.js.map +1 -0
  76. package/dist-vue/_chunks/{PkToolShowContactForm-0OQRqT8m.js → PkToolShowContactForm-1TFKvG_s.js} +2 -2
  77. package/dist-vue/_chunks/{PkToolShowContactForm-0OQRqT8m.js.map → PkToolShowContactForm-1TFKvG_s.js.map} +1 -1
  78. package/dist-vue/_chunks/{PkToolShowDiagram-BGL27iHG.js → PkToolShowDiagram-BnbkymPD.js} +2 -2
  79. package/dist-vue/_chunks/{PkToolShowDiagram-BGL27iHG.js.map → PkToolShowDiagram-BnbkymPD.js.map} +1 -1
  80. package/dist-vue/_chunks/{PkToolShowEmail-BJJpS69F.js → PkToolShowEmail-BDsBoETQ.js} +2 -2
  81. package/dist-vue/_chunks/{PkToolShowEmail-BJJpS69F.js.map → PkToolShowEmail-BDsBoETQ.js.map} +1 -1
  82. package/dist-vue/_chunks/{PkToolShowForm-DDcPpOZ8.js → PkToolShowForm-DwFKxMJd.js} +4 -4
  83. package/dist-vue/_chunks/{PkToolShowForm-DDcPpOZ8.js.map → PkToolShowForm-DwFKxMJd.js.map} +1 -1
  84. package/dist-vue/_chunks/{PkToolShowMessage-BFGynf3p.js → PkToolShowMessage-Dau3agUy.js} +2 -2
  85. package/dist-vue/_chunks/{PkToolShowMessage-BFGynf3p.js.map → PkToolShowMessage-Dau3agUy.js.map} +1 -1
  86. package/dist-vue/_chunks/{PkToolShowProductList-6t1Ir5CW.js → PkToolShowProductList-CsupMsuy.js} +2 -2
  87. package/dist-vue/_chunks/{PkToolShowProductList-6t1Ir5CW.js.map → PkToolShowProductList-CsupMsuy.js.map} +1 -1
  88. package/dist-vue/_chunks/{PkToolShowSources-cOF0ZxOj.js → PkToolShowSources-C8r1vKJk.js} +4 -4
  89. package/dist-vue/_chunks/{PkToolShowSources-cOF0ZxOj.js.map → PkToolShowSources-C8r1vKJk.js.map} +1 -1
  90. package/dist-vue/_chunks/{PkToolShowSuggestedReply-DA4NEjHB.js → PkToolShowSuggestedReply-qAWdCUhr.js} +2 -2
  91. package/dist-vue/_chunks/{PkToolShowSuggestedReply-DA4NEjHB.js.map → PkToolShowSuggestedReply-qAWdCUhr.js.map} +1 -1
  92. package/dist-vue/_chunks/{PkToolShowWebPages-OgaT1vYJ.js → PkToolShowWebPages-D4E3Xzg1.js} +2 -2
  93. package/dist-vue/_chunks/{PkToolShowWebPages-OgaT1vYJ.js.map → PkToolShowWebPages-D4E3Xzg1.js.map} +1 -1
  94. package/dist-vue/_chunks/{PkUrl-Cd69XP5z.js → PkUrl-Cu3qKl4G.js} +2 -2
  95. package/dist-vue/_chunks/{PkUrl-Cd69XP5z.js.map → PkUrl-Cu3qKl4G.js.map} +1 -1
  96. package/dist-vue/_chunks/{createChatbotApiClient-CaVLm5W9.js → createChatbotApiClient-BlWs282E.js} +137 -168
  97. package/dist-vue/_chunks/createChatbotApiClient-BlWs282E.js.map +1 -0
  98. package/dist-vue/_chunks/{useChatbotStore-BwrBZJCq.js → useChatbotStore-CMo47fnS.js} +3 -3
  99. package/dist-vue/_chunks/{useChatbotStore-BwrBZJCq.js.map → useChatbotStore-CMo47fnS.js.map} +1 -1
  100. package/dist-vue/_chunks/utils-B45A2ONa.js +184 -0
  101. package/dist-vue/_chunks/utils-B45A2ONa.js.map +1 -0
  102. package/dist-vue/api.js +1 -1
  103. package/dist-vue/apps/web-component/src/components/EmbeddedChatWidget.ce.d.ts +4 -4
  104. package/dist-vue/apps/web-component/src/composables/useChatbotAuth.d.ts +53 -5
  105. package/dist-vue/apps/web-component/src/composables/useChatbotAuthForm.d.ts +14 -0
  106. package/dist-vue/composables.js +524 -39
  107. package/dist-vue/composables.js.map +1 -1
  108. package/dist-vue/index.js +3366 -3240
  109. package/dist-vue/index.js.map +1 -1
  110. package/dist-vue/locales.js +46 -0
  111. package/dist-vue/packages/ability/src/index.d.ts +10 -14
  112. package/dist-vue/packages/auth/src/active-membership.d.ts +36 -0
  113. package/dist-vue/packages/auth/src/add-member-to-organization.d.ts +12 -2
  114. package/dist-vue/packages/auth/src/additional-fields.d.ts +48 -0
  115. package/dist-vue/packages/auth/src/organization-member-limit.d.ts +12 -0
  116. package/dist-vue/packages/auth/src/passkey-policy-client-plugin.d.ts +31 -0
  117. package/dist-vue/packages/auth/src/passkey-policy-plugin.d.ts +22 -0
  118. package/dist-vue/packages/auth/src/two-factor-admin-plugin.d.ts +2 -0
  119. package/dist-vue/packages/auth/src/two-factor-policy-client-plugin.d.ts +163 -0
  120. package/dist-vue/packages/auth/src/two-factor-policy-plugin.d.ts +106 -0
  121. package/dist-vue/packages/components/src/PkQrCode.d.ts +14 -0
  122. package/dist-vue/packages/components/src/chat/PkChatbotAuth.d.ts +19 -0
  123. package/dist-vue/packages/components/src/chat/PkChatbotMessages.d.ts +8 -4
  124. package/dist-vue/packages/components/src/chat/PkChatbotSteps.d.ts +1 -0
  125. package/dist-vue/packages/components/src/chat/PkTurnEvaluation.d.ts +8 -0
  126. package/dist-vue/packages/components/src/chat/utils.d.ts +9 -0
  127. package/dist-vue/packages/components/src/index.d.ts +2 -1
  128. package/dist-vue/packages/composable/src/chatbot/useChatbotStore.d.ts +60 -0
  129. package/dist-vue/packages/models/src/schema/Chat.d.ts +42 -0
  130. package/dist-vue/packages/models/src/schema/Document.d.ts +494 -0
  131. package/dist-vue/packages/models/src/schema/DocumentFolder.d.ts +10 -0
  132. package/dist-vue/packages/models/src/schema/DocumentSyncSource.d.ts +71 -1
  133. package/dist-vue/packages/models/src/schema/Lead.d.ts +1 -1
  134. package/dist-vue/packages/models/src/schema/McpServer.d.ts +13 -0
  135. package/dist-vue/packages/models/src/schema/Media.d.ts +0 -1
  136. package/dist-vue/packages/models/src/schema/Member.d.ts +10 -0
  137. package/dist-vue/packages/models/src/schema/Notification.d.ts +31 -0
  138. package/dist-vue/packages/models/src/schema/Organization.d.ts +20 -0
  139. package/dist-vue/packages/models/src/schema/SignInSecurity.d.ts +168 -0
  140. package/dist-vue/packages/models/src/schema/User.d.ts +1 -0
  141. package/dist-vue/packages/models/src/schema/index.d.ts +1 -0
  142. package/dist-vue/style.css +1 -1
  143. package/package.json +1 -1
  144. package/dist/_chunks/Agent-DTLrWpzX.js +0 -460
  145. package/dist/_chunks/Agent-DTLrWpzX.js.map +0 -1
  146. package/dist/_chunks/Media-Cft7Pwrh.js +0 -108
  147. package/dist/_chunks/Media-Cft7Pwrh.js.map +0 -1
  148. package/dist/_chunks/PkStreamingMarkdown-C1sANAr5.js.map +0 -1
  149. package/dist/_chunks/PkToolRequestOAuthConnection-CTp2w60F.js.map +0 -1
  150. package/dist/_chunks/PkToolShowComparison-BJ7QBXtf.js +0 -60
  151. package/dist/_chunks/PkToolShowComparison-BJ7QBXtf.js.map +0 -1
  152. package/dist/_chunks/markdown-BRD-hDrH.js.map +0 -1
  153. package/dist-vue/_chunks/Document-2X01-F4Z.js.map +0 -1
  154. package/dist-vue/_chunks/PkChatbotAuth-Bi508F1u.js +0 -349
  155. package/dist-vue/_chunks/PkChatbotAuth-Bi508F1u.js.map +0 -1
  156. package/dist-vue/_chunks/PkChatbotMessages-GZStJbx_.js.map +0 -1
  157. package/dist-vue/_chunks/PkChatbotSteps-Cl4pVtPJ.js +0 -190
  158. package/dist-vue/_chunks/PkChatbotSteps-Cl4pVtPJ.js.map +0 -1
  159. package/dist-vue/_chunks/PkToolRequestOAuthConnection-BorR5NmZ.js.map +0 -1
  160. package/dist-vue/_chunks/PkToolShowComparison-BLn4pkno.js +0 -61
  161. package/dist-vue/_chunks/PkToolShowComparison-BLn4pkno.js.map +0 -1
  162. package/dist-vue/_chunks/createChatbotApiClient-CaVLm5W9.js.map +0 -1
  163. package/dist-vue/_chunks/utils-h4C7rRcu.js +0 -177
  164. package/dist-vue/_chunks/utils-h4C7rRcu.js.map +0 -1
@@ -1,5 +1,32 @@
1
- import { DocumentSourceProvider } from './Document';
1
+ import { DocumentRefreshInterval, DocumentSourceProvider } from './Document';
2
2
  import * as z from 'zod';
3
+ /**
4
+ * What a provider's sources do with the documents they bring in.
5
+ *
6
+ * - `materialize`: `download` stores the remote file in a blob and makes a
7
+ * `file` document of it; `url` makes a `url` document and leaves the reading
8
+ * to the processor, so there is nothing to download.
9
+ * - `ownsDocuments`: true makes the source's folder read-only and propagates
10
+ * remote deletions; false only discovers, and the documents stay as
11
+ * editable as anything a person imported.
12
+ *
13
+ * These two values are everything the backend, the sync function and the
14
+ * interface read to decide how a document is created and whether it can be
15
+ * touched by hand. A web source that removes the pages leaving its sitemap does
16
+ * so through an option of that source, not by owning its documents.
17
+ */
18
+ export interface DocumentSourcePolicy {
19
+ materialize: 'download' | 'url';
20
+ ownsDocuments: boolean;
21
+ }
22
+ export declare const DOCUMENT_SOURCE_POLICIES: Record<DocumentSourceProvider, DocumentSourcePolicy>;
23
+ /**
24
+ * Whether a provider's sources govern their documents.
25
+ *
26
+ * An unknown provider counts as owning: the mistake in that direction makes a
27
+ * folder read-only, the other one lets people edit what a job will overwrite.
28
+ */
29
+ export declare function sourceOwnsDocuments(provider: string): boolean;
3
30
  /**
4
31
  * How often a source is checked.
5
32
  *
@@ -96,8 +123,42 @@ export declare const DocumentSyncRunStatsSchema: z.ZodObject<{
96
123
  skippedUnsupported: z.ZodDefault<z.ZodNumber>;
97
124
  skippedTooLarge: z.ZodDefault<z.ZodNumber>;
98
125
  failed: z.ZodDefault<z.ZodNumber>;
126
+ capped: z.ZodDefault<z.ZodNumber>;
127
+ removalHeld: z.ZodDefault<z.ZodNumber>;
99
128
  }, z.core.$strip>;
100
129
  export type DocumentSyncRunStats = z.infer<typeof DocumentSyncRunStatsSchema>;
130
+ /**
131
+ * Where a web source reads its pages: a sitemap, or a walk from one page.
132
+ *
133
+ * The same fields as the crawler dialog's two modes, because the source is
134
+ * that dialog's parameters saved.
135
+ */
136
+ export declare const WebSourceRemoteSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
137
+ sitemapUrl: z.ZodURL;
138
+ kind: z.ZodLiteral<"sitemap">;
139
+ }, z.core.$strip>, z.ZodObject<{
140
+ startUrl: z.ZodURL;
141
+ maxPages: z.ZodDefault<z.ZodNumber>;
142
+ maxDepth: z.ZodDefault<z.ZodNumber>;
143
+ followExternal: z.ZodDefault<z.ZodBoolean>;
144
+ kind: z.ZodLiteral<"depth">;
145
+ }, z.core.$strip>], "kind">;
146
+ export type WebSourceRemote = z.infer<typeof WebSourceRemoteSchema>;
147
+ /**
148
+ * The keys of a web source's `options` that are about the source rather than
149
+ * about converting a page. Everything else in `options` is conversion options,
150
+ * handed to the processor as they are.
151
+ */
152
+ export declare const WebSourceOptionsSchema: z.ZodObject<{
153
+ refreshInterval: z.ZodOptional<z.ZodNullable<z.ZodEnum<typeof DocumentRefreshInterval>>>;
154
+ removeMissing: z.ZodOptional<z.ZodBoolean>;
155
+ confirmedRemovals: z.ZodOptional<z.ZodNumber>;
156
+ }, z.core.$loose>;
157
+ export type WebSourceOptions = z.infer<typeof WebSourceOptionsSchema>;
158
+ /** The `options` keys that never reach the processor as conversion options. */
159
+ export declare const WEB_SOURCE_OWN_OPTION_KEYS: readonly ["refreshInterval", "removeMissing", "confirmedRemovals"];
160
+ /** The URL a web source reads, whichever mode it is in. */
161
+ export declare function webSourceUrl(remote: Record<string, unknown>): string;
101
162
  export declare const DocumentSyncSourceSchema: z.ZodObject<{
102
163
  id: z.ZodUUID;
103
164
  organizationId: z.ZodUUID;
@@ -123,6 +184,8 @@ export declare const DocumentSyncSourceSchema: z.ZodObject<{
123
184
  skippedUnsupported: z.ZodDefault<z.ZodNumber>;
124
185
  skippedTooLarge: z.ZodDefault<z.ZodNumber>;
125
186
  failed: z.ZodDefault<z.ZodNumber>;
187
+ capped: z.ZodDefault<z.ZodNumber>;
188
+ removalHeld: z.ZodDefault<z.ZodNumber>;
126
189
  }, z.core.$strip>>;
127
190
  lastSyncAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
128
191
  lastError: z.ZodNullable<z.ZodString>;
@@ -149,13 +212,20 @@ export declare const DocumentSyncSourceCreateDtoSchema: z.ZodObject<{
149
212
  remote: z.ZodRecord<z.ZodString, z.ZodUnknown>;
150
213
  interval: z.ZodDefault<z.ZodEnum<typeof DocumentSyncInterval>>;
151
214
  options: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
215
+ deferFirstRun: z.ZodOptional<z.ZodBoolean>;
152
216
  }, z.core.$strip>;
153
217
  export type DocumentSyncSourceCreateDto = z.infer<typeof DocumentSyncSourceCreateDtoSchema>;
154
218
  export declare const DocumentSyncSourceUpdateDtoSchema: z.ZodObject<{
155
219
  interval: z.ZodOptional<z.ZodEnum<typeof DocumentSyncInterval>>;
156
220
  enabled: z.ZodOptional<z.ZodBoolean>;
221
+ removeMissing: z.ZodOptional<z.ZodBoolean>;
157
222
  }, z.core.$strip>;
158
223
  export type DocumentSyncSourceUpdateDto = z.infer<typeof DocumentSyncSourceUpdateDtoSchema>;
224
+ /** "Sync now", optionally approving the removal the last run held back. */
225
+ export declare const DocumentSyncSourceSyncDtoSchema: z.ZodObject<{
226
+ confirmRemovals: z.ZodOptional<z.ZodNumber>;
227
+ }, z.core.$strip>;
228
+ export type DocumentSyncSourceSyncDto = z.infer<typeof DocumentSyncSourceSyncDtoSchema>;
159
229
  export declare const DocumentSyncSourceQuerystringSchema: z.ZodObject<{
160
230
  agentId: z.ZodUUID;
161
231
  }, z.core.$strip>;
@@ -9,7 +9,7 @@ export declare const LeadSchema: z.ZodObject<{
9
9
  phone: z.ZodNullable<z.ZodString>;
10
10
  agentId: z.ZodString;
11
11
  organizationId: z.ZodString;
12
- chatId: z.ZodString;
12
+ chatId: z.ZodNullable<z.ZodString>;
13
13
  metadata: z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
14
14
  createdAt: z.ZodCoercedDate<unknown>;
15
15
  createdBy: z.ZodString;
@@ -134,7 +134,20 @@ export declare const McpServerInfoSchema: z.ZodObject<{
134
134
  version: z.ZodString;
135
135
  }, z.core.$strip>;
136
136
  }, z.core.$strip>;
137
+ /**
138
+ * One integration the current user has signed in to with their own account,
139
+ * as the profile lists it: across every organization, so a connection can be
140
+ * ended wherever it was made. `organizationName` is null where the user is not
141
+ * a member (a public agent of another tenant).
142
+ */
143
+ export declare const McpServerConnectionSchema: z.ZodObject<{
144
+ mcpServerId: z.ZodString;
145
+ serverName: z.ZodString;
146
+ organizationName: z.ZodNullable<z.ZodString>;
147
+ connectedAt: z.ZodCoercedDate<unknown>;
148
+ }, z.core.$strip>;
137
149
  export type McpServerInfo = z.infer<typeof McpServerInfoSchema>;
150
+ export type McpServerConnection = z.infer<typeof McpServerConnectionSchema>;
138
151
  export type McpServer = z.infer<typeof McpServerSchema>;
139
152
  export type McpServerCreate = z.infer<typeof McpServerCreateSchema>;
140
153
  export type McpServerUpdate = z.infer<typeof McpServerUpdateSchema>;
@@ -2,7 +2,6 @@ import { z } from 'zod';
2
2
  export declare const MAX_FILE_SIZE: number;
3
3
  export declare const MIME_TYPE_REGEX: RegExp;
4
4
  export declare const SUPPORTED_IMAGE_TYPES: readonly ["image/jpeg", "image/png", "image/gif", "image/webp", "image/svg+xml"];
5
- export declare const SUPPORTED_DOCUMENT_TYPES: readonly ["application/pdf", "application/msword", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", "application/vnd.ms-excel", "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet", "text/plain", "text/markdown"];
6
5
  export declare const SUPPORTED_VIDEO_TYPES: readonly ["video/mp4", "video/webm", "video/ogg"];
7
6
  export declare const SUPPORTED_AUDIO_TYPES: readonly ["audio/mpeg", "audio/wav", "audio/ogg"];
8
7
  export declare enum StoragePolicy {
@@ -119,6 +119,16 @@ export declare const MemberSchema: z.ZodObject<{
119
119
  user: "user";
120
120
  admin: "admin";
121
121
  }>;
122
+ twoFactorEnabled: z.ZodOptional<z.ZodBoolean>;
123
+ hasPassword: z.ZodOptional<z.ZodBoolean>;
124
+ hasPasskey: z.ZodOptional<z.ZodBoolean>;
125
+ signInSecurity: z.ZodOptional<z.ZodEnum<{
126
+ required: "required";
127
+ none: "none";
128
+ totp: "totp";
129
+ otp: "otp";
130
+ passkey: "passkey";
131
+ }>>;
122
132
  }, z.core.$strip>;
123
133
  }, z.core.$strip>;
124
134
  export type Member = z.infer<typeof MemberSchema>;
@@ -4,13 +4,44 @@ export declare const NotificationType: {
4
4
  readonly ApiKeyExpiring: "api_key_expiring";
5
5
  readonly Organization: "organization";
6
6
  readonly PasswordResetRequested: "password_reset_requested";
7
+ /** Two-step verification turned on, off, or reset by an administrator. */
8
+ readonly TwoFactor: "two_factor";
7
9
  /** A sync took documents out because the remote no longer has them. */
8
10
  readonly DocumentSyncRemoved: "document_sync_removed";
11
+ /** A web source took out pages its sitemap no longer lists. */
12
+ readonly WebSourcePagesRemoved: "web_source_pages_removed";
13
+ /** A web source held back a removal too large to trust without a person. */
14
+ readonly WebSourceRemovalHeld: "web_source_removal_held";
9
15
  readonly ChatWarning: "chat_warning";
10
16
  readonly ChatBlocked: "chat_blocked";
11
17
  readonly Generic: "generic";
12
18
  };
13
19
  export type NotificationType = (typeof NotificationType)[keyof typeof NotificationType];
20
+ /**
21
+ * Group key of the admins' notification about a flagged conversation: one row
22
+ * per chat and admin, bumped by every later analysis of that chat.
23
+ */
24
+ export declare const chatAnalysisNotificationGroupKey: (chatId: string) => string;
25
+ /**
26
+ * Title of the admins' notification about a flagged conversation. It tells a
27
+ * block from a warning on a stored row better than `type` does: a group bump
28
+ * rewrites the title, the body and the metadata, never the type, so a chat
29
+ * warned first and blocked later keeps `type = chat_warning`.
30
+ */
31
+ export declare const chatAnalysisNotificationTitle: (blocked: boolean) => string;
32
+ /**
33
+ * Body of the admins' notification about a flagged conversation
34
+ * (`chat_warning` or `chat_blocked`). The writer quotes the chat's title; the
35
+ * GDPR erasure (`eraseConversationRows`) rebuilds the body without it, from the
36
+ * same sentences, so the notification and its link to the chat survive with
37
+ * nothing the user wrote. Migration `erase_chat_residuals` holds a SQL copy
38
+ * of these sentences for the rows erased before it.
39
+ */
40
+ export declare function chatAnalysisNotificationBody({ blocked, riskScore, chatTitle, }: {
41
+ blocked: boolean;
42
+ riskScore?: number;
43
+ chatTitle?: string;
44
+ }): string;
14
45
  export declare const NotificationSchema: z.ZodObject<{
15
46
  id: z.ZodString;
16
47
  organizationId: z.ZodNullable<z.ZodString>;
@@ -106,6 +106,7 @@ export declare const OrganizationSchema: z.ZodObject<{
106
106
  deletedAt: z.ZodNullable<z.ZodCoercedDate<unknown>>;
107
107
  deletedBy: z.ZodNullable<z.ZodString>;
108
108
  metadata: z.ZodNullable<z.ZodString>;
109
+ requireTwoFactor: z.ZodOptional<z.ZodBoolean>;
109
110
  }, z.core.$strip>;
110
111
  export type Organization = z.infer<typeof OrganizationSchema>;
111
112
  export declare const OrganizationDtoSchema: z.ZodObject<{
@@ -221,6 +222,16 @@ export declare const OrganizationRetentionPolicySchema: z.ZodObject<{
221
222
  anonymousRetentionDays: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
222
223
  }, z.core.$strip>;
223
224
  export type OrganizationRetentionPolicy = z.infer<typeof OrganizationRetentionPolicySchema>;
225
+ /**
226
+ * Per-organization limits an operator sets from the system panel, persisted
227
+ * inside the `organization.metadata` text column. `members` counts every
228
+ * member, the ones the widget's external login brings in included; absent or
229
+ * `null` means no limit.
230
+ */
231
+ export declare const OrganizationLimitsSchema: z.ZodObject<{
232
+ members: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
233
+ }, z.core.$strip>;
234
+ export type OrganizationLimits = z.infer<typeof OrganizationLimitsSchema>;
224
235
  /**
225
236
  * Product features an operator can switch on or off per organization from the
226
237
  * system panel. A feature is listed here when a contract can plausibly exclude
@@ -357,6 +368,9 @@ export declare const OrganizationMetadataSchema: z.ZodObject<{
357
368
  utilityModel: z.ZodOptional<z.ZodString>;
358
369
  disabledGatewayModels: z.ZodCatch<z.ZodOptional<z.ZodArray<z.ZodString>>>;
359
370
  }, z.core.$strip>>>;
371
+ limits: z.ZodCatch<z.ZodOptional<z.ZodObject<{
372
+ members: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
373
+ }, z.core.$strip>>>;
360
374
  }, z.core.$loose>;
361
375
  export type OrganizationMetadata = z.infer<typeof OrganizationMetadataSchema>;
362
376
  /**
@@ -381,6 +395,12 @@ export declare function parseOrganizationMetadata(metadata: string | Record<stri
381
395
  * malformed metadata resolves to the platform defaults instead of failing.
382
396
  */
383
397
  export declare function resolveOrganizationFeatures(metadata: string | Record<string, unknown> | null | undefined): OrganizationFeatures;
398
+ /**
399
+ * The most members an organization may hold, from its raw `metadata` value,
400
+ * or `null` when it sets no limit. A malformed value reads as no limit, so a
401
+ * bad write can never lock an organization out of adding people.
402
+ */
403
+ export declare function resolveOrganizationMemberLimit(metadata: string | Record<string, unknown> | null | undefined): number | null;
384
404
  export declare const OrganizationPublicSchema: z.ZodObject<{
385
405
  id: z.ZodString;
386
406
  name: z.ZodString;
@@ -0,0 +1,168 @@
1
+ import { StoragePolicy } from './Media';
2
+ import * as z from 'zod';
3
+ /**
4
+ * Where a user stands on two-step verification and passkeys, as the system
5
+ * panel shows it (docs/specs/released/two-factor-system-assistance.md, D2). One state
6
+ * per user, decided in this order: the authenticator app, the email code, a
7
+ * passkey alone, then `required` for a member of an organization that asks
8
+ * for a second factor who signs in with a password and has none.
9
+ */
10
+ export declare const SignInSecurityStateSchema: z.ZodEnum<{
11
+ required: "required";
12
+ none: "none";
13
+ totp: "totp";
14
+ otp: "otp";
15
+ passkey: "passkey";
16
+ }>;
17
+ export type SignInSecurityState = z.infer<typeof SignInSecurityStateSchema>;
18
+ /** A row of the system users list. */
19
+ export declare const SignInSecurityUserSchema: z.ZodObject<{
20
+ id: z.ZodString;
21
+ name: z.ZodString;
22
+ email: z.ZodString;
23
+ emailVerified: z.ZodBoolean;
24
+ image: z.ZodNullable<z.ZodString>;
25
+ media: z.ZodNullable<z.ZodOptional<z.ZodObject<{
26
+ name: z.ZodString;
27
+ src: z.ZodObject<{
28
+ type: z.ZodString;
29
+ name: z.ZodString;
30
+ mimeType: z.ZodString;
31
+ bytesCount: z.ZodNumber;
32
+ extension: z.ZodString;
33
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
34
+ tags: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
35
+ storageHandle: z.ZodDiscriminatedUnion<[z.ZodObject<{
36
+ type: z.ZodLiteral<"azure-blob">;
37
+ blobUri: z.ZodURL;
38
+ containerName: z.ZodString;
39
+ pathRelativeToContainer: z.ZodString;
40
+ }, z.core.$strip>, z.ZodObject<{
41
+ type: z.ZodLiteral<"s3">;
42
+ bucket: z.ZodString;
43
+ key: z.ZodString;
44
+ region: z.ZodString;
45
+ }, z.core.$strip>], "type">;
46
+ storagePolicy: z.ZodEnum<typeof StoragePolicy>;
47
+ signData: z.ZodOptional<z.ZodString>;
48
+ storedFileName: z.ZodString;
49
+ }, z.core.$strip>;
50
+ srcSet: z.ZodDefault<z.ZodArray<z.ZodObject<{
51
+ type: z.ZodString;
52
+ name: z.ZodString;
53
+ mimeType: z.ZodString;
54
+ bytesCount: z.ZodNumber;
55
+ extension: z.ZodString;
56
+ metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
57
+ tags: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodString>>;
58
+ storageHandle: z.ZodDiscriminatedUnion<[z.ZodObject<{
59
+ type: z.ZodLiteral<"azure-blob">;
60
+ blobUri: z.ZodURL;
61
+ containerName: z.ZodString;
62
+ pathRelativeToContainer: z.ZodString;
63
+ }, z.core.$strip>, z.ZodObject<{
64
+ type: z.ZodLiteral<"s3">;
65
+ bucket: z.ZodString;
66
+ key: z.ZodString;
67
+ region: z.ZodString;
68
+ }, z.core.$strip>], "type">;
69
+ storagePolicy: z.ZodEnum<typeof StoragePolicy>;
70
+ signData: z.ZodOptional<z.ZodString>;
71
+ storedFileName: z.ZodString;
72
+ }, z.core.$strip>>>;
73
+ rawOptions: z.ZodOptional<z.ZodCustom<{
74
+ type: import('./Media').MediaType.picture;
75
+ width: number;
76
+ height: number;
77
+ blurhash?: string | undefined;
78
+ } | {
79
+ type: import('./Media').MediaType.video;
80
+ width: number;
81
+ height: number;
82
+ duration: number;
83
+ } | {
84
+ type: import('./Media').MediaType.audio;
85
+ duration: number;
86
+ } | {
87
+ type: import('./Media').MediaType.office;
88
+ } | {
89
+ type: import('./Media').MediaType.archive;
90
+ } | {
91
+ type: import('./Media').MediaType.binary;
92
+ } | {
93
+ type: import('./Media').MediaType.executable;
94
+ }, {
95
+ type: import('./Media').MediaType.picture;
96
+ width: number;
97
+ height: number;
98
+ blurhash?: string | undefined;
99
+ } | {
100
+ type: import('./Media').MediaType.video;
101
+ width: number;
102
+ height: number;
103
+ duration: number;
104
+ } | {
105
+ type: import('./Media').MediaType.audio;
106
+ duration: number;
107
+ } | {
108
+ type: import('./Media').MediaType.office;
109
+ } | {
110
+ type: import('./Media').MediaType.archive;
111
+ } | {
112
+ type: import('./Media').MediaType.binary;
113
+ } | {
114
+ type: import('./Media').MediaType.executable;
115
+ }>>;
116
+ }, z.core.$strip>>>;
117
+ createdAt: z.ZodCoercedDate<unknown>;
118
+ updatedAt: z.ZodCoercedDate<unknown>;
119
+ banned: z.ZodNullable<z.ZodBoolean>;
120
+ banReason: z.ZodNullable<z.ZodString>;
121
+ banExpires: z.ZodNullable<z.ZodCoercedDate<unknown>>;
122
+ isAnonymous: z.ZodNullable<z.ZodBoolean>;
123
+ role: z.ZodEnum<{
124
+ user: "user";
125
+ admin: "admin";
126
+ }>;
127
+ twoFactorEnabled: z.ZodOptional<z.ZodBoolean>;
128
+ signInSecurity: z.ZodEnum<{
129
+ required: "required";
130
+ none: "none";
131
+ totp: "totp";
132
+ otp: "otp";
133
+ passkey: "passkey";
134
+ }>;
135
+ }, z.core.$strip>;
136
+ export type SignInSecurityUser = z.infer<typeof SignInSecurityUserSchema>;
137
+ export declare const SignInSecurityUsersQuerystringSchema: z.ZodObject<{
138
+ signInSecurity: z.ZodOptional<z.ZodEnum<{
139
+ required: "required";
140
+ none: "none";
141
+ totp: "totp";
142
+ otp: "otp";
143
+ passkey: "passkey";
144
+ }>>;
145
+ "filter[fullText]": z.ZodOptional<z.ZodString>;
146
+ sort: z.ZodDefault<z.ZodOptional<z.ZodEnum<{
147
+ name: "name";
148
+ createdAt: "createdAt";
149
+ updatedAt: "updatedAt";
150
+ "-name": "-name";
151
+ "-createdAt": "-createdAt";
152
+ "-updatedAt": "-updatedAt";
153
+ email: "email";
154
+ "-email": "-email";
155
+ }>>>;
156
+ 'page[number]': z.ZodDefault<z.ZodPipe<z.ZodUnion<[z.ZodNumber, z.ZodString]>, z.ZodTransform<number, string | number>>>;
157
+ 'page[size]': z.ZodDefault<z.ZodPipe<z.ZodUnion<[z.ZodNumber, z.ZodString]>, z.ZodTransform<number, string | number>>>;
158
+ }, z.core.$strip>;
159
+ export type SignInSecurityUsersQuerystring = z.infer<typeof SignInSecurityUsersQuerystringSchema>;
160
+ /** How many users are in each state. */
161
+ export declare const SignInSecuritySummarySchema: z.ZodRecord<z.ZodEnum<{
162
+ required: "required";
163
+ none: "none";
164
+ totp: "totp";
165
+ otp: "otp";
166
+ passkey: "passkey";
167
+ }>, z.ZodNumber>;
168
+ export type SignInSecuritySummary = z.infer<typeof SignInSecuritySummarySchema>;
@@ -118,6 +118,7 @@ export declare const UserSchema: z.ZodObject<{
118
118
  user: "user";
119
119
  admin: "admin";
120
120
  }>;
121
+ twoFactorEnabled: z.ZodOptional<z.ZodBoolean>;
121
122
  }, z.core.$strip>;
122
123
  export type User = z.infer<typeof UserSchema>;
123
124
  /**
@@ -33,6 +33,7 @@ export * from './Integration';
33
33
  export * from './Platform';
34
34
  export * from './ReasoningChat';
35
35
  export * from './RevisedAnswer';
36
+ export * from './SignInSecurity';
36
37
  export * from './StreamError';
37
38
  export * from './SubAgent';
38
39
  export * from './TimingLog';