@thoughtspot/visual-embed-sdk 1.50.0 → 1.51.0

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 (222) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/css-variables.d.ts +95 -0
  3. package/cjs/src/css-variables.d.ts.map +1 -1
  4. package/cjs/src/embed/app.d.ts +136 -15
  5. package/cjs/src/embed/app.d.ts.map +1 -1
  6. package/cjs/src/embed/app.js +59 -37
  7. package/cjs/src/embed/app.js.map +1 -1
  8. package/cjs/src/embed/app.spec.js +419 -149
  9. package/cjs/src/embed/app.spec.js.map +1 -1
  10. package/cjs/src/embed/conversation.d.ts +230 -1
  11. package/cjs/src/embed/conversation.d.ts.map +1 -1
  12. package/cjs/src/embed/conversation.js +30 -16
  13. package/cjs/src/embed/conversation.js.map +1 -1
  14. package/cjs/src/embed/conversation.spec.js +221 -17
  15. package/cjs/src/embed/conversation.spec.js.map +1 -1
  16. package/cjs/src/embed/events.spec.js +635 -0
  17. package/cjs/src/embed/events.spec.js.map +1 -1
  18. package/cjs/src/embed/host-events.spec.js +151 -0
  19. package/cjs/src/embed/host-events.spec.js.map +1 -1
  20. package/cjs/src/embed/hostEventClient/contracts.d.ts +51 -14
  21. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  22. package/cjs/src/embed/hostEventClient/contracts.js +11 -1
  23. package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
  24. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +1 -0
  25. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  26. package/cjs/src/embed/hostEventClient/host-event-client.js +9 -0
  27. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  28. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +218 -0
  29. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  30. package/cjs/src/embed/hostEventClient/utils.d.ts +2 -0
  31. package/cjs/src/embed/hostEventClient/utils.d.ts.map +1 -1
  32. package/cjs/src/embed/hostEventClient/utils.js +32 -2
  33. package/cjs/src/embed/hostEventClient/utils.js.map +1 -1
  34. package/cjs/src/embed/hostEventClient/utils.spec.js +178 -0
  35. package/cjs/src/embed/hostEventClient/utils.spec.js.map +1 -1
  36. package/cjs/src/embed/liveboard.d.ts +42 -1
  37. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  38. package/cjs/src/embed/liveboard.js +26 -6
  39. package/cjs/src/embed/liveboard.js.map +1 -1
  40. package/cjs/src/embed/liveboard.spec.js +83 -2
  41. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  42. package/cjs/src/embed/spotter-utils.d.ts +8 -1
  43. package/cjs/src/embed/spotter-utils.d.ts.map +1 -1
  44. package/cjs/src/embed/spotter-utils.js +14 -1
  45. package/cjs/src/embed/spotter-utils.js.map +1 -1
  46. package/cjs/src/embed/spotter-utils.spec.js +61 -0
  47. package/cjs/src/embed/spotter-utils.spec.js.map +1 -1
  48. package/cjs/src/embed/spotter-viz-utils.d.ts +34 -0
  49. package/cjs/src/embed/spotter-viz-utils.d.ts.map +1 -1
  50. package/cjs/src/embed/spotter-viz-utils.js.map +1 -1
  51. package/cjs/src/embed/spotter-viz-utils.spec.js +17 -0
  52. package/cjs/src/embed/spotter-viz-utils.spec.js.map +1 -1
  53. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  54. package/cjs/src/embed/ts-embed.js +29 -7
  55. package/cjs/src/embed/ts-embed.js.map +1 -1
  56. package/cjs/src/embed/ts-embed.spec.js +146 -0
  57. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  58. package/cjs/src/errors.d.ts +1 -0
  59. package/cjs/src/errors.d.ts.map +1 -1
  60. package/cjs/src/errors.js +1 -0
  61. package/cjs/src/errors.js.map +1 -1
  62. package/cjs/src/index.d.ts +2 -2
  63. package/cjs/src/index.d.ts.map +1 -1
  64. package/cjs/src/index.js +3 -2
  65. package/cjs/src/index.js.map +1 -1
  66. package/cjs/src/mixpanel-service.d.ts +4 -0
  67. package/cjs/src/mixpanel-service.d.ts.map +1 -1
  68. package/cjs/src/mixpanel-service.js +4 -0
  69. package/cjs/src/mixpanel-service.js.map +1 -1
  70. package/cjs/src/react/util.spec.js +251 -0
  71. package/cjs/src/react/util.spec.js.map +1 -1
  72. package/cjs/src/types.d.ts +573 -11
  73. package/cjs/src/types.d.ts.map +1 -1
  74. package/cjs/src/types.js +519 -2
  75. package/cjs/src/types.js.map +1 -1
  76. package/cjs/src/utils/processData.spec.js +93 -0
  77. package/cjs/src/utils/processData.spec.js.map +1 -1
  78. package/cjs/src/utils/processTrigger.spec.js +61 -0
  79. package/cjs/src/utils/processTrigger.spec.js.map +1 -1
  80. package/dist/{index-B5xoN6Cp.js → index-aBzH5ZwF.js} +1 -1
  81. package/dist/src/css-variables.d.ts +95 -0
  82. package/dist/src/css-variables.d.ts.map +1 -1
  83. package/dist/src/embed/app.d.ts +136 -15
  84. package/dist/src/embed/app.d.ts.map +1 -1
  85. package/dist/src/embed/conversation.d.ts +230 -1
  86. package/dist/src/embed/conversation.d.ts.map +1 -1
  87. package/dist/src/embed/hostEventClient/contracts.d.ts +51 -14
  88. package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  89. package/dist/src/embed/hostEventClient/host-event-client.d.ts +1 -0
  90. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  91. package/dist/src/embed/hostEventClient/utils.d.ts +2 -0
  92. package/dist/src/embed/hostEventClient/utils.d.ts.map +1 -1
  93. package/dist/src/embed/liveboard.d.ts +42 -1
  94. package/dist/src/embed/liveboard.d.ts.map +1 -1
  95. package/dist/src/embed/spotter-utils.d.ts +8 -1
  96. package/dist/src/embed/spotter-utils.d.ts.map +1 -1
  97. package/dist/src/embed/spotter-viz-utils.d.ts +34 -0
  98. package/dist/src/embed/spotter-viz-utils.d.ts.map +1 -1
  99. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  100. package/dist/src/errors.d.ts +1 -0
  101. package/dist/src/errors.d.ts.map +1 -1
  102. package/dist/src/index.d.ts +2 -2
  103. package/dist/src/index.d.ts.map +1 -1
  104. package/dist/src/mixpanel-service.d.ts +4 -0
  105. package/dist/src/mixpanel-service.d.ts.map +1 -1
  106. package/dist/src/types.d.ts +573 -11
  107. package/dist/src/types.d.ts.map +1 -1
  108. package/dist/tsembed-react.es.js +936 -142
  109. package/dist/tsembed-react.js +935 -141
  110. package/dist/tsembed.es.js +935 -142
  111. package/dist/tsembed.js +933 -140
  112. package/dist/visual-embed-sdk-react-full.d.ts +1147 -44
  113. package/dist/visual-embed-sdk-react.d.ts +1153 -46
  114. package/dist/visual-embed-sdk.d.ts +1161 -46
  115. package/lib/package.json +1 -1
  116. package/lib/src/css-variables.d.ts +95 -0
  117. package/lib/src/css-variables.d.ts.map +1 -1
  118. package/lib/src/embed/app.d.ts +136 -15
  119. package/lib/src/embed/app.d.ts.map +1 -1
  120. package/lib/src/embed/app.js +60 -38
  121. package/lib/src/embed/app.js.map +1 -1
  122. package/lib/src/embed/app.spec.js +420 -150
  123. package/lib/src/embed/app.spec.js.map +1 -1
  124. package/lib/src/embed/conversation.d.ts +230 -1
  125. package/lib/src/embed/conversation.d.ts.map +1 -1
  126. package/lib/src/embed/conversation.js +31 -17
  127. package/lib/src/embed/conversation.js.map +1 -1
  128. package/lib/src/embed/conversation.spec.js +222 -18
  129. package/lib/src/embed/conversation.spec.js.map +1 -1
  130. package/lib/src/embed/events.spec.js +635 -0
  131. package/lib/src/embed/events.spec.js.map +1 -1
  132. package/lib/src/embed/host-events.spec.js +152 -1
  133. package/lib/src/embed/host-events.spec.js.map +1 -1
  134. package/lib/src/embed/hostEventClient/contracts.d.ts +51 -14
  135. package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  136. package/lib/src/embed/hostEventClient/contracts.js +10 -0
  137. package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
  138. package/lib/src/embed/hostEventClient/host-event-client.d.ts +1 -0
  139. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  140. package/lib/src/embed/hostEventClient/host-event-client.js +10 -1
  141. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  142. package/lib/src/embed/hostEventClient/host-event-client.spec.js +218 -0
  143. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  144. package/lib/src/embed/hostEventClient/utils.d.ts +2 -0
  145. package/lib/src/embed/hostEventClient/utils.d.ts.map +1 -1
  146. package/lib/src/embed/hostEventClient/utils.js +28 -1
  147. package/lib/src/embed/hostEventClient/utils.js.map +1 -1
  148. package/lib/src/embed/hostEventClient/utils.spec.js +179 -1
  149. package/lib/src/embed/hostEventClient/utils.spec.js.map +1 -1
  150. package/lib/src/embed/liveboard.d.ts +42 -1
  151. package/lib/src/embed/liveboard.d.ts.map +1 -1
  152. package/lib/src/embed/liveboard.js +26 -6
  153. package/lib/src/embed/liveboard.js.map +1 -1
  154. package/lib/src/embed/liveboard.spec.js +83 -2
  155. package/lib/src/embed/liveboard.spec.js.map +1 -1
  156. package/lib/src/embed/spotter-utils.d.ts +8 -1
  157. package/lib/src/embed/spotter-utils.d.ts.map +1 -1
  158. package/lib/src/embed/spotter-utils.js +12 -0
  159. package/lib/src/embed/spotter-utils.js.map +1 -1
  160. package/lib/src/embed/spotter-utils.spec.js +62 -1
  161. package/lib/src/embed/spotter-utils.spec.js.map +1 -1
  162. package/lib/src/embed/spotter-viz-utils.d.ts +34 -0
  163. package/lib/src/embed/spotter-viz-utils.d.ts.map +1 -1
  164. package/lib/src/embed/spotter-viz-utils.js.map +1 -1
  165. package/lib/src/embed/spotter-viz-utils.spec.js +17 -0
  166. package/lib/src/embed/spotter-viz-utils.spec.js.map +1 -1
  167. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  168. package/lib/src/embed/ts-embed.js +29 -7
  169. package/lib/src/embed/ts-embed.js.map +1 -1
  170. package/lib/src/embed/ts-embed.spec.js +146 -0
  171. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  172. package/lib/src/errors.d.ts +1 -0
  173. package/lib/src/errors.d.ts.map +1 -1
  174. package/lib/src/errors.js +1 -0
  175. package/lib/src/errors.js.map +1 -1
  176. package/lib/src/index.d.ts +2 -2
  177. package/lib/src/index.d.ts.map +1 -1
  178. package/lib/src/index.js +2 -2
  179. package/lib/src/index.js.map +1 -1
  180. package/lib/src/mixpanel-service.d.ts +4 -0
  181. package/lib/src/mixpanel-service.d.ts.map +1 -1
  182. package/lib/src/mixpanel-service.js +4 -0
  183. package/lib/src/mixpanel-service.js.map +1 -1
  184. package/lib/src/react/util.spec.js +251 -0
  185. package/lib/src/react/util.spec.js.map +1 -1
  186. package/lib/src/types.d.ts +573 -11
  187. package/lib/src/types.d.ts.map +1 -1
  188. package/lib/src/types.js +519 -2
  189. package/lib/src/types.js.map +1 -1
  190. package/lib/src/utils/processData.spec.js +93 -0
  191. package/lib/src/utils/processData.spec.js.map +1 -1
  192. package/lib/src/utils/processTrigger.spec.js +61 -0
  193. package/lib/src/utils/processTrigger.spec.js.map +1 -1
  194. package/lib/src/visual-embed-sdk.d.ts +1161 -46
  195. package/package.json +1 -1
  196. package/src/css-variables.ts +118 -0
  197. package/src/embed/app.spec.ts +530 -183
  198. package/src/embed/app.ts +209 -66
  199. package/src/embed/conversation.spec.ts +275 -21
  200. package/src/embed/conversation.ts +262 -17
  201. package/src/embed/events.spec.ts +757 -1
  202. package/src/embed/host-events.spec.ts +194 -0
  203. package/src/embed/hostEventClient/contracts.ts +57 -14
  204. package/src/embed/hostEventClient/host-event-client.spec.ts +338 -0
  205. package/src/embed/hostEventClient/host-event-client.ts +16 -0
  206. package/src/embed/hostEventClient/utils.spec.ts +204 -0
  207. package/src/embed/hostEventClient/utils.ts +37 -10
  208. package/src/embed/liveboard.spec.ts +108 -2
  209. package/src/embed/liveboard.ts +82 -14
  210. package/src/embed/spotter-utils.spec.ts +68 -1
  211. package/src/embed/spotter-utils.ts +16 -1
  212. package/src/embed/spotter-viz-utils.spec.ts +17 -0
  213. package/src/embed/spotter-viz-utils.ts +34 -0
  214. package/src/embed/ts-embed.spec.ts +186 -0
  215. package/src/embed/ts-embed.ts +30 -4
  216. package/src/errors.ts +1 -0
  217. package/src/index.ts +3 -1
  218. package/src/mixpanel-service.ts +4 -0
  219. package/src/react/util.spec.tsx +255 -0
  220. package/src/types.ts +575 -8
  221. package/src/utils/processData.spec.ts +97 -0
  222. package/src/utils/processTrigger.spec.ts +91 -0
@@ -39,6 +39,42 @@ export interface CustomCssVariables {
39
39
  * Font color of the top navigation panel.
40
40
  */
41
41
  "--ts-var-nav-color"?: string;
42
+ /**
43
+ * Background color of the left navigation panel.
44
+ */
45
+ "--ts-var-left-nav-background"?: string;
46
+ /**
47
+ * Background color of the active tab in the left navigation panel.
48
+ */
49
+ "--ts-var-left-nav-active-tab-background"?: string;
50
+ /**
51
+ * Border color of the active tab in the left navigation panel.
52
+ */
53
+ "--ts-var-left-nav-active-tab-border-color"?: string;
54
+ /**
55
+ * Font color of the section title in the left navigation panel.
56
+ */
57
+ "--ts-var-left-nav-section-title-color"?: string;
58
+ /**
59
+ * Font color of the items in the left navigation panel.
60
+ */
61
+ "--ts-var-left-nav-item-color"?: string;
62
+ /**
63
+ * Font color of the selected item in the left navigation panel.
64
+ */
65
+ "--ts-var-left-nav-item-selection-color"?: string;
66
+ /**
67
+ * Background color of the selected item in the left navigation panel.
68
+ */
69
+ "--ts-var-left-nav-item-selection-background"?: string;
70
+ /**
71
+ * Color of the active tab icon in the left navigation panel.
72
+ */
73
+ "--ts-var-left-nav-tab-icon-active-color"?: string;
74
+ /**
75
+ * Color of the inactive tab icon in the left navigation panel.
76
+ */
77
+ "--ts-var-left-nav-tab-icon-inactive-color"?: string;
42
78
  /**
43
79
  * Background color of the *Search data* button.
44
80
  */
@@ -411,6 +447,14 @@ export interface CustomCssVariables {
411
447
  * Background color of the tiles in the Liveboard.
412
448
  */
413
449
  "--ts-var-liveboard-tile-background"?: string;
450
+ /**
451
+ * Font color of the insight tiles in the Liveboard.
452
+ */
453
+ "--ts-var-liveboard-insight-tile-font-color"?: string;
454
+ /**
455
+ * Background color of the insight tiles in the Liveboard.
456
+ */
457
+ "--ts-var-liveboard-insight-tile-background"?: string;
414
458
  /**
415
459
  * Border radius of the tiles in the Liveboard.
416
460
  */
@@ -959,6 +1003,10 @@ export interface CustomCssVariables {
959
1003
  * header underline, left panel border, thinking step connector and dots.
960
1004
  */
961
1005
  "--ts-var-spotterviz-border-color"?: string;
1006
+ /**
1007
+ * Expanded user chat message bubble border color in SpotterViz.
1008
+ */
1009
+ "--ts-var-spotterviz-expanded-border-color"?: string;
962
1010
  /**
963
1011
  * Background color of the reference-mode toggle button in the SpotterViz
964
1012
  * chat input when it is unselected and the user hovers over it.
@@ -976,6 +1024,53 @@ export interface CustomCssVariables {
976
1024
  * on each referenced-entity chip in the chat input.
977
1025
  */
978
1026
  "--ts-var-spotterviz-reference-icon-selected-background"?: string;
1027
+ /**
1028
+ * Background color of the shared conversation header (recipient's read-only view).
1029
+ */
1030
+ "--ts-var-shared-conv-header-background"?: string;
1031
+ /**
1032
+ * Border color of the shared conversation header.
1033
+ */
1034
+ "--ts-var-shared-conv-header-border-color"?: string;
1035
+ /**
1036
+ * Font color of the title text in the shared conversation header.
1037
+ */
1038
+ "--ts-var-shared-conv-title-color"?: string;
1039
+ /**
1040
+ * Background gradient color-stop of the share chat header's outer container
1041
+ * (sender's pre-share header). Defaults to transparent.
1042
+ */
1043
+ "--ts-var-share-chat-header-container-background"?: string;
1044
+ /**
1045
+ * Background color of the share chat header's inner title/actions row.
1046
+ * Defaults to transparent.
1047
+ */
1048
+ "--ts-var-share-chat-header-background"?: string;
1049
+ /**
1050
+ * Font color of the title text in the share chat header.
1051
+ */
1052
+ "--ts-var-share-chat-header-title-color"?: string;
1053
+ /**
1054
+ * Font color of the title input field in the share chat header.
1055
+ */
1056
+ "--ts-var-share-chat-header-input-text-color"?: string;
1057
+ /**
1058
+ * Background color of the title input field in the share chat header.
1059
+ */
1060
+ "--ts-var-share-chat-header-input-background"?: string;
1061
+ /**
1062
+ * Border color of the title input field in the share chat header.
1063
+ */
1064
+ "--ts-var-share-chat-header-input-border-color"?: string;
1065
+ /**
1066
+ * Background color of the shimmer loading effect. Also affects the
1067
+ * saved chats sidebar's new-chat shimmer, which shares the same style.
1068
+ */
1069
+ "--ts-var-shimmer-background"?: string;
1070
+ /**
1071
+ * Background color of the shimmer sweep animation's gradient mid-stop.
1072
+ */
1073
+ "--ts-var-shimmer-sweep-background"?: string;
979
1074
  }
980
1075
  export interface SessionInterface {
981
1076
  sessionId: string;
@@ -1339,7 +1434,9 @@ export declare enum AuthType {
1339
1434
  }
1340
1435
  /**
1341
1436
  *
1342
- * **Note**: This attribute is not supported in the classic (V1) homepage experience.
1437
+ * **Note**: The classic (V1) and Modular (V2) home page experiences are
1438
+ * deprecated. This attribute applies to V3 (ModularWithStylingChanges) and
1439
+ * V4 (Focused) home page experiences.
1343
1440
  *
1344
1441
  */
1345
1442
  export declare enum HomeLeftNavItem {
@@ -1405,7 +1502,14 @@ export declare enum HomeLeftNavItem {
1405
1502
  * Available in the V3 navigation experience.
1406
1503
  * @version SDK: 1.41.0 | ThoughtSpot: 10.12.0.cl
1407
1504
  */
1408
- Favorites = "favorites"
1505
+ Favorites = "favorites",
1506
+ /**
1507
+ * The *Collections* menu option in
1508
+ * the *Insights* left navigation panel.
1509
+ * Shown when collections are enabled on the cluster.
1510
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
1511
+ */
1512
+ Collections = "collections"
1409
1513
  }
1410
1514
  export type DOMSelector = string | HTMLElement;
1411
1515
  /**
@@ -2352,6 +2456,26 @@ export interface BaseViewConfig extends ApiInterceptFlags {
2352
2456
  * ```
2353
2457
  */
2354
2458
  overrideOrgId?: number;
2459
+ /**
2460
+ * Overrides the browser history behavior for embedding application users.
2461
+ * This parameter changes standard history navigation (pushState) into a
2462
+ * state replacement (replaceState), preventing users from getting trapped in
2463
+ * back-button loops inside the embedded iframe environment.
2464
+ * The overrideHistoryState setting is honored only if the
2465
+ * application is running within an embedded context.
2466
+ *
2467
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`, `SearchEmbed`, `SpotterAgentEmbed`, `SpotterEmbed`, `SearchBarEmbed`
2468
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
2469
+ * @example
2470
+ * ```js
2471
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed, SearchEmbed, or LiveboardEmbed
2472
+ * const embed = new <EmbedComponent>('#tsEmbed', {
2473
+ * // ... other embed view config
2474
+ * overrideHistoryState: true,
2475
+ * });
2476
+ * ```
2477
+ */
2478
+ overrideHistoryState?: boolean;
2355
2479
  /**
2356
2480
  * Flag to override the *Open Link in New Tab* context
2357
2481
  * menu option.
@@ -2710,7 +2834,9 @@ export interface HomePageConfig {
2710
2834
  * To specify the modules, import the `HomepageModule` enum.
2711
2835
  * For example: `hiddenHomepageModules = [HomepageModule.MyLibrary]`
2712
2836
  *
2713
- * **Note**: This attribute is not supported in the classic (v1) experience.
2837
+ * **Note**: The classic (V1) and Modular (V2) home page experiences are
2838
+ * deprecated. This attribute applies to V3 (ModularWithStylingChanges)
2839
+ * and V4 (Focused) home page experiences.
2714
2840
  *
2715
2841
  * Supported embed types: `AppEmbed`
2716
2842
  * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl, 10.1.0.sw
@@ -2719,7 +2845,7 @@ export interface HomePageConfig {
2719
2845
  * import { HomepageModule } from '@thoughtspot/visual-embed-sdk';
2720
2846
  *
2721
2847
  * const embed = new AppEmbed('#tsEmbed', {
2722
- * ... // V2/V3 navigation and home page experience attributes
2848
+ * ... // V3 navigation and home page experience attributes
2723
2849
  * hiddenHomepageModules : [HomepageModule.Favorite,HomepageModule.Learning],
2724
2850
  * //...other embed view configuration attributes
2725
2851
  * })
@@ -2730,8 +2856,11 @@ export interface HomePageConfig {
2730
2856
  * Reorder home page modules.
2731
2857
  * To specify the modules, import the `HomepageModule` enum.
2732
2858
  * For example: `reorderedHomepageModules = [HomepageModule.MyLibrary,
2733
- * HomepageModule.Watchlist]` **Note**: This attribute is not supported in the
2734
- * classic (v1) homepage.
2859
+ * HomepageModule.Watchlist]`
2860
+ *
2861
+ * **Note**: The classic (V1) and Modular (V2) home page experiences are
2862
+ * deprecated. This attribute applies to V3 (ModularWithStylingChanges)
2863
+ * and V4 (Focused) home page experiences.
2735
2864
  *
2736
2865
  * Supported embed types: `AppEmbed`
2737
2866
  * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl, 10.1.0.sw
@@ -2740,7 +2869,7 @@ export interface HomePageConfig {
2740
2869
  * import { HomepageModule } from '@thoughtspot/visual-embed-sdk';
2741
2870
  *
2742
2871
  * const embed = new AppEmbed('#tsEmbed', {
2743
- * ...//V2/V3 navigation and home page experience attributes
2872
+ * ...//V3 navigation and home page experience attributes
2744
2873
  * reorderedHomepageModules:[HomepageModule.Favorite,HomepageModule.MyLibrary],
2745
2874
  * //... other embed view configuration attributes
2746
2875
  * })
@@ -2752,7 +2881,9 @@ export interface HomePageConfig {
2752
2881
  * on the home page left navigation panel.
2753
2882
  * To specify the menu items, import the `HomeLeftNavItem` enum.
2754
2883
  *
2755
- * **Note**: This attribute is not supported in the classic (v1) homepage.
2884
+ * **Note**: The classic (V1) and Modular (V2) home page experiences are
2885
+ * deprecated. This attribute applies to V3 (ModularWithStylingChanges)
2886
+ * and V4 (Focused) home page experiences.
2756
2887
  *
2757
2888
  * Supported embed types: `AppEmbed`
2758
2889
  * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl, 10.1.0.sw
@@ -3128,6 +3259,24 @@ export interface LiveboardAppEmbedViewConfig {
3128
3259
  * ```
3129
3260
  */
3130
3261
  isCentralizedLiveboardFilterUXEnabled?: boolean;
3262
+ /**
3263
+ * This flag is used to enable or disable scoped Liveboard filtering.
3264
+ * When enabled, filters and parameters can be scoped to a group of
3265
+ * visualizations on a Liveboard, in addition to the Liveboard and
3266
+ * tab levels.
3267
+ *
3268
+ * Supported embed types: `AppEmbed`, `LiveboardEmbed`
3269
+ * @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
3270
+ * @example
3271
+ * ```js
3272
+ * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
3273
+ * const embed = new <EmbedComponent>('#tsEmbed', {
3274
+ * ... // other embed view config
3275
+ * isScopedLiveboardFilteringEnabled: true,
3276
+ * })
3277
+ * ```
3278
+ */
3279
+ isScopedLiveboardFilteringEnabled?: boolean;
3131
3280
  /**
3132
3281
  * This flag is used to enable or disable the link parameters in liveboard.
3133
3282
  *
@@ -3311,7 +3460,9 @@ export declare enum RuntimeFilterOp {
3311
3460
  * via `hiddenHomepageModules` and reordered via
3312
3461
  * `reorderedHomepageModules`.
3313
3462
  *
3314
- * **Note**: This option is not supported in the classic (v1) experience.
3463
+ * **Note**: The classic (V1) and Modular (V2) home page experiences are
3464
+ * deprecated. These modules apply to V3 (ModularWithStylingChanges) and
3465
+ * V4 (Focused) home page experiences.
3315
3466
  * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl, 10.1.0.sw
3316
3467
  */
3317
3468
  export declare enum HomepageModule {
@@ -4300,11 +4451,19 @@ export declare enum EmbedEvent {
4300
4451
  * Emitted when a user changes any filter on a Liveboard.
4301
4452
  * Returns filter type and name, column name and ID, and runtime
4302
4453
  * filter details.
4454
+ * The payload includes an optional `applicability` attribute indicating the
4455
+ * scope of the changed filter. It contains a `level` (`LIVEBOARD`,
4456
+ * `TAB`, or `GROUP`) and, when `level` is `TAB` or `GROUP`, a
4457
+ * `targetId` with the GUID of the target. At `LIVEBOARD` level there
4458
+ * is no `targetId`, since the filter applies to the whole Liveboard.
4459
+ * The `applicability` attribute is available from SDK: 1.53.0 |
4460
+ * ThoughtSpot: 26.10.0.cl.
4303
4461
  * @example
4304
4462
  *
4305
4463
  * ```js
4306
4464
  * LiveboardEmbed.on(EmbedEvent.FilterChanged, (payload) => {
4307
4465
  * console.log('payload', payload);
4466
+ * // payload.data optionally includes applicability: { level, targetId }
4308
4467
  * })
4309
4468
  * ```
4310
4469
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl, 9.5.0.sw
@@ -4496,9 +4655,17 @@ export declare enum EmbedEvent {
4496
4655
  /**
4497
4656
  * Emitted when parameter changes in an Answer
4498
4657
  * or Liveboard.
4658
+ * The payload includes an optional `applicability` attribute indicating the
4659
+ * scope of the changed parameter. It contains a `level` (`LIVEBOARD`,
4660
+ * `TAB`, or `GROUP`) and, when `level` is `TAB` or `GROUP`, a
4661
+ * `targetId` with the GUID of the target. At `LIVEBOARD` level there
4662
+ * is no `targetId`, since the parameter applies to the whole Liveboard.
4663
+ * The `applicability` attribute is available from SDK: 1.53.0 |
4664
+ * ThoughtSpot: 26.10.0.cl.
4499
4665
  * ```js
4500
4666
  * liveboardEmbed.on(EmbedEvent.ParameterChanged, (payload) => {
4501
4667
  * console.log('payload', payload);
4668
+ * // payload.data optionally includes applicability: { level, targetId }
4502
4669
  * })
4503
4670
  * ```
4504
4671
  * @version SDK: 1.29.0 | ThoughtSpot: 10.3.0.cl
@@ -4800,6 +4967,158 @@ export declare enum EmbedEvent {
4800
4967
  * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
4801
4968
  */
4802
4969
  SpotterConversationDeleted = "spotterConversationDeleted",
4970
+ /**
4971
+ * Emitted when the header Share button is clicked. Fires `Start` then `End`
4972
+ * to bracket the interaction. App→host counterpart of the
4973
+ * `ShareSpotterConversation` host event (user-driven vs programmatic open).
4974
+ * @example
4975
+ * ```js
4976
+ * spotterEmbed.on(EmbedEvent.SpotterShareConversationButtonHeaderClicked, (payload) => {
4977
+ * // payload: { convId: string }
4978
+ * })
4979
+ * ```
4980
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
4981
+ */
4982
+ SpotterShareConversationButtonHeaderClicked = "spotterShareConversationButtonHeaderClicked",
4983
+ /**
4984
+ * Emitted when the sidebar Share item is clicked. Fires `Start` then `End`
4985
+ * to bracket the interaction.
4986
+ * @example
4987
+ * ```js
4988
+ * spotterEmbed.on(EmbedEvent.SpotterShareConversationMenuItemSidebarClicked, (payload) => {
4989
+ * // payload: { convId: string }
4990
+ * })
4991
+ * ```
4992
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
4993
+ */
4994
+ SpotterShareConversationMenuItemSidebarClicked = "spotterShareConversationMenuItemSidebarClicked",
4995
+ /**
4996
+ * Emitted when a Spotter conversation is shared (recipients added, or a new
4997
+ * share created). The host builds its own link from shareId/convId + its
4998
+ * configured CONVERSATION_URL — no link string is sent. Distinct from
4999
+ * `SpotterShareModalConfirmButtonClicked`, which fires at click time before
5000
+ * the save resolves.
5001
+ * @example
5002
+ * ```js
5003
+ * spotterEmbed.on(EmbedEvent.SpotterConversationShared, (payload) => {
5004
+ * // payload: { convId: string, shareId: string,
5005
+ * // recipientsAdded: string[], recipientsRemoved: string[] }
5006
+ * })
5007
+ * ```
5008
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
5009
+ */
5010
+ SpotterConversationShared = "spotterConversationShared",
5011
+ /**
5012
+ * Emitted when access to a shared Spotter conversation is revoked
5013
+ * (recipients removed). `fullyRevoked` is true when the last sharee is removed
5014
+ * and the share is deleted entirely.
5015
+ * @example
5016
+ * ```js
5017
+ * spotterEmbed.on(EmbedEvent.SpotterConversationShareRevoked, (payload) => {
5018
+ * // payload: { convId: string, shareId: string,
5019
+ * // recipientsRemoved: string[], fullyRevoked: boolean }
5020
+ * })
5021
+ * ```
5022
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
5023
+ */
5024
+ SpotterConversationShareRevoked = "spotterConversationShareRevoked",
5025
+ /**
5026
+ * Emitted when a recipient opens a shared Spotter conversation (read-only
5027
+ * view). No shareId available viewer-side.
5028
+ * @example
5029
+ * ```js
5030
+ * spotterEmbed.on(EmbedEvent.SpotterSharedConversationViewed, (payload) => {
5031
+ * // payload: { convId: string, sourceConvId: string }
5032
+ * // convId = resolved snapshot conv id; sourceConvId = the shared URL id
5033
+ * })
5034
+ * ```
5035
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
5036
+ */
5037
+ SpotterSharedConversationViewed = "spotterSharedConversationViewed",
5038
+ /**
5039
+ * Emitted when the user toggles the share-modal "include new messages since
5040
+ * last shared version" checkbox.
5041
+ * @example
5042
+ * ```js
5043
+ * spotterEmbed.on(EmbedEvent.SpotterShareIncludeNewMessagesCheckboxToggled, (payload) => {
5044
+ * // payload: { convId: string, includeNewMessages: boolean }
5045
+ * })
5046
+ * ```
5047
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
5048
+ */
5049
+ SpotterShareIncludeNewMessagesCheckboxToggled = "spotterShareIncludeNewMessagesCheckboxToggled",
5050
+ /**
5051
+ * Emitted when the user dismisses the stale-snapshot info banner via its
5052
+ * cross (distinct from the include-new-messages checkbox toggle).
5053
+ * @example
5054
+ * ```js
5055
+ * spotterEmbed.on(EmbedEvent.SpotterShareStaleInfoBannerDismissed, (payload) => {
5056
+ * // payload: { convId: string }
5057
+ * })
5058
+ * ```
5059
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
5060
+ */
5061
+ SpotterShareStaleInfoBannerDismissed = "spotterShareStaleInfoBannerDismissed",
5062
+ /**
5063
+ * Emitted when the modal Share (confirm) button is clicked — fires at click
5064
+ * time, before the save resolves. Distinct from the `SpotterConversationShared`
5065
+ * / `SpotterConversationShareRevoked` result events.
5066
+ * @example
5067
+ * ```js
5068
+ * spotterEmbed.on(EmbedEvent.SpotterShareModalConfirmButtonClicked, (payload) => {
5069
+ * // payload: { convId: string }
5070
+ * })
5071
+ * ```
5072
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
5073
+ */
5074
+ SpotterShareModalConfirmButtonClicked = "spotterShareModalConfirmButtonClicked",
5075
+ /**
5076
+ * Emitted when the share modal is dismissed via the Cancel button.
5077
+ * @example
5078
+ * ```js
5079
+ * spotterEmbed.on(EmbedEvent.SpotterShareModalCancelButtonClicked, (payload) => {
5080
+ * // payload: { convId: string }
5081
+ * })
5082
+ * ```
5083
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
5084
+ */
5085
+ SpotterShareModalCancelButtonClicked = "spotterShareModalCancelButtonClicked",
5086
+ /**
5087
+ * Emitted when a recipient leaves the read-only shared view via the Exit
5088
+ * button.
5089
+ * @example
5090
+ * ```js
5091
+ * spotterEmbed.on(EmbedEvent.SpotterSharedConversationExitButtonClicked, (payload) => {
5092
+ * // payload: { convId: string }
5093
+ * })
5094
+ * ```
5095
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
5096
+ */
5097
+ SpotterSharedConversationExitButtonClicked = "spotterSharedConversationExitButtonClicked",
5098
+ /**
5099
+ * Emitted when a Spotter conversation is pinned.
5100
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
5101
+ * @example
5102
+ * ```js
5103
+ * spotterEmbed.on(EmbedEvent.SpotterConversationPinned, (payload) => {
5104
+ * console.log('Conversation pinned', payload);
5105
+ * // payload: { conversationId: string, pinnedAt: string (ISO 8601) }
5106
+ * })
5107
+ * ```
5108
+ */
5109
+ SpotterConversationPinned = "spotterConversationPinned",
5110
+ /**
5111
+ * Emitted when a Spotter conversation is unpinned.
5112
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
5113
+ * @example
5114
+ * ```js
5115
+ * spotterEmbed.on(EmbedEvent.SpotterConversationUnpinned, (payload) => {
5116
+ * console.log('Conversation unpinned', payload);
5117
+ * // payload: { conversationId: string, unpinnedAt: string (ISO 8601) }
5118
+ * })
5119
+ * ```
5120
+ */
5121
+ SpotterConversationUnpinned = "spotterConversationUnpinned",
4803
5122
  /**
4804
5123
  * Emitted when a Spotter conversation is selected/clicked.
4805
5124
  * @example
@@ -4812,6 +5131,30 @@ export declare enum EmbedEvent {
4812
5131
  * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
4813
5132
  */
4814
5133
  SpotterConversationSelected = "spotterConversationSelected",
5134
+ /**
5135
+ * Emitted when the Spotter agent finishes streaming/rendering a response.
5136
+ * Includes the conversation and message identifiers so the host app can
5137
+ * fetch the full conversation history via the REST API if needed.
5138
+ *
5139
+ * The payload data has the shape `{ convId: string, messageId: string }`.
5140
+ *
5141
+ * Works with SpotterEmbed as well as AppEmbed (when Spotter is reached
5142
+ * inside the full application).
5143
+ * @example
5144
+ * ```js
5145
+ * spotterEmbed.on(EmbedEvent.SpotterResponseComplete, (payload) => {
5146
+ * console.log('Spotter response complete', payload);
5147
+ * })
5148
+ * ```
5149
+ * @example
5150
+ * ```js
5151
+ * appEmbed.on(EmbedEvent.SpotterResponseComplete, (payload) => {
5152
+ * console.log('Spotter response complete', payload);
5153
+ * })
5154
+ * ```
5155
+ * @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.9.0.cl
5156
+ */
5157
+ SpotterResponseComplete = "spotterResponseComplete",
4815
5158
  /**
4816
5159
  * @hidden
4817
5160
  * Emitted when the auth token is about to get expired and needs to be refreshed.
@@ -5291,6 +5634,17 @@ export declare enum HostEvent {
5291
5634
  * name: string,
5292
5635
  * type: ATTRIBUTE/MEASURE,
5293
5636
  * dataType: INT64/CHAR/DATE }
5637
+ *
5638
+ * `applicability` - Optional. Scopes the filter to a specific target,
5639
+ * for example, a single Liveboard tab, so the panel for the correct
5640
+ * scoped filter is opened. Available from SDK: 1.53.0 |
5641
+ * ThoughtSpot: 26.10.0.cl. Includes the following attributes:
5642
+ *
5643
+ * - `level`: The scope of the filter: `LIVEBOARD`, `TAB`, or `GROUP`.
5644
+ * - `targetId`: The GUID of the target, for example, the tab GUID.
5645
+ * Required when `level` is `TAB` or `GROUP`. Do not pass it when
5646
+ * `level` is `LIVEBOARD`, since the filter applies to the whole
5647
+ * Liveboard. Omitting `applicability` targets the `LIVEBOARD` level.
5294
5648
  * @example
5295
5649
  * ```js
5296
5650
  * searchEmbed.trigger(HostEvent.OpenFilter,
@@ -5303,6 +5657,14 @@ export declare enum HostEvent {
5303
5657
  * ```
5304
5658
  * @example
5305
5659
  * ```js
5660
+ * // Open a filter scoped to a specific Liveboard tab
5661
+ * liveboardEmbed.trigger(HostEvent.OpenFilter, {
5662
+ * column: { columnId: '<column-GUID>' },
5663
+ * applicability: { level: 'TAB', targetId: '<tab-GUID>' }
5664
+ * });
5665
+ * ```
5666
+ * @example
5667
+ * ```js
5306
5668
  * // Open filter from search context
5307
5669
  * import { ContextType } from '@thoughtspot/visual-embed-sdk';
5308
5670
  * searchEmbed.trigger(HostEvent.OpenFilter, {
@@ -5312,6 +5674,38 @@ export declare enum HostEvent {
5312
5674
  * @version SDK: 1.21.0 | ThoughtSpot: 9.2.0.cl
5313
5675
  */
5314
5676
  OpenFilter = "openFilter",
5677
+ /**
5678
+ * Open the parameter panel for a particular parameter on a Liveboard.
5679
+ * Mirrors {@link HostEvent.OpenFilter} for parameters.
5680
+ * @param - Includes the following keys:
5681
+ * - `parameter`: An object identifying the parameter to open, for
5682
+ * example, `{ parameterId: '<parameter-GUID>' }`.
5683
+ * - `applicability`: Optional. Scopes the parameter to a specific target,
5684
+ * for example, a single Liveboard tab, so the panel for the correct
5685
+ * scoped parameter is opened. Includes the following attributes:
5686
+ *
5687
+ * - `level`: The scope of the parameter: `LIVEBOARD`, `TAB`, or `GROUP`.
5688
+ * - `targetId`: The GUID of the target, for example, the tab GUID.
5689
+ * Required when `level` is `TAB` or `GROUP`. Do not pass it when
5690
+ * `level` is `LIVEBOARD`, since the parameter applies to the whole
5691
+ * Liveboard. Omitting `applicability` targets the `LIVEBOARD` level.
5692
+ * @example
5693
+ * ```js
5694
+ * liveboardEmbed.trigger(HostEvent.OpenParameter, {
5695
+ * parameter: { parameterId: '<parameter-GUID>' }
5696
+ * });
5697
+ * ```
5698
+ * @example
5699
+ * ```js
5700
+ * // Open a parameter scoped to a specific group
5701
+ * liveboardEmbed.trigger(HostEvent.OpenParameter, {
5702
+ * parameter: { parameterId: '<parameter-GUID>' },
5703
+ * applicability: { level: 'GROUP', targetId: '<group-GUID>' }
5704
+ * });
5705
+ * ```
5706
+ * @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
5707
+ */
5708
+ OpenParameter = "openParameter",
5315
5709
  /**
5316
5710
  * Add columns to the current search query.
5317
5711
  * @param - { columnIds: string[] }
@@ -6375,6 +6769,14 @@ export declare enum HostEvent {
6375
6769
  /**
6376
6770
  * Get details of filters applied on the Liveboard.
6377
6771
  * Returns arrays containing Liveboard filter and runtime filter elements.
6772
+ * Each Liveboard filter includes an optional `applicability` attribute
6773
+ * indicating the scope of the filter. It contains a `level`
6774
+ * (`LIVEBOARD`, `TAB`, or `GROUP`) and, when `level` is `TAB` or
6775
+ * `GROUP`, a `targetId` with the GUID of the target. At `LIVEBOARD`
6776
+ * level there is no `targetId`, since the filter applies to the
6777
+ * whole Liveboard.
6778
+ * The `applicability` attribute is available from SDK: 1.53.0 |
6779
+ * ThoughtSpot: 26.10.0.cl.
6378
6780
  * @example
6379
6781
  * ```js
6380
6782
  * const data = await liveboardEmbed.trigger(HostEvent.GetFilters);
@@ -6414,6 +6816,16 @@ export declare enum HostEvent {
6414
6816
  *
6415
6817
  * `type` - To update filters for date time, specify the date format type.
6416
6818
  * For more information and examples, see link:https://developers.thoughtspot.com/docs/embed-liveboard#_date_filters[Date filters].
6819
+ *
6820
+ * `applicability` - Optional. Scopes the filter to a specific target,
6821
+ * for example, a single Liveboard tab. Available from SDK: 1.53.0 |
6822
+ * ThoughtSpot: 26.10.0.cl. Includes the following attributes:
6823
+ *
6824
+ * - `level`: The scope of the filter: `LIVEBOARD`, `TAB`, or `GROUP`.
6825
+ * - `targetId`: The GUID of the target, for example, the tab GUID.
6826
+ * Required when `level` is `TAB` or `GROUP`. Do not pass it when
6827
+ * `level` is `LIVEBOARD`, since the filter applies to the whole
6828
+ * Liveboard.
6417
6829
  * @example
6418
6830
  * ```js
6419
6831
  *
@@ -6490,6 +6902,21 @@ export declare enum HostEvent {
6490
6902
  * }
6491
6903
  * }, ContextType.Liveboard);
6492
6904
  * ```
6905
+ * @example
6906
+ * ```js
6907
+ * // Scope the filter to a specific Liveboard tab
6908
+ * liveboardEmbed.trigger(HostEvent.UpdateFilters, {
6909
+ * filter: {
6910
+ * column: "item type",
6911
+ * oper: "IN",
6912
+ * values: ["bags", "shirts"],
6913
+ * applicability: {
6914
+ * level: "TAB",
6915
+ * targetId: "e0836cad-4fdf-42d4-bd97-567a6b2a6058"
6916
+ * }
6917
+ * }
6918
+ * });
6919
+ * ```
6493
6920
  * @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
6494
6921
  */
6495
6922
  UpdateFilters = "updateFilters",
@@ -6514,6 +6941,28 @@ export declare enum HostEvent {
6514
6941
  * @version SDK: 1.26.0 | ThoughtSpot: 9.7.0.cl
6515
6942
  */
6516
6943
  GetTabs = "getTabs",
6944
+ /**
6945
+ * Get group details for the current Liveboard.
6946
+ * Mirrors {@link HostEvent.GetTabs} for filter/parameter groups.
6947
+ * @example
6948
+ * ```js
6949
+ * liveboardEmbed.trigger(HostEvent.GetGroups).then((groupDetails) => {
6950
+ * console.log(
6951
+ * groupDetails // GroupDetails of current Liveboard
6952
+ * );
6953
+ * })
6954
+ * ```
6955
+ * @example
6956
+ * ```js
6957
+ * // Get groups from liveboard context
6958
+ * import { ContextType } from '@thoughtspot/visual-embed-sdk';
6959
+ * liveboardEmbed.trigger(HostEvent.GetGroups, {}, ContextType.Liveboard).then((groupDetails) => {
6960
+ * console.log('groups', groupDetails);
6961
+ * });
6962
+ * ```
6963
+ * @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
6964
+ */
6965
+ GetGroups = "getGroups",
6517
6966
  /**
6518
6967
  * Set the visible tabs on a Liveboard.
6519
6968
  * @param - an array of ids of tabs to show, the IDs not passed
@@ -6641,6 +7090,15 @@ export declare enum HostEvent {
6641
7090
  * - `name`: Name of the parameter.
6642
7091
  * - `value`: The value to set for the parameter.
6643
7092
  * - `isVisibleToUser`: Optional. To control the visibility of the parameter chip.
7093
+ * - `applicability`: Optional. Scopes the parameter to a specific target,
7094
+ * for example, a single Liveboard tab. Available from SDK: 1.53.0 |
7095
+ * ThoughtSpot: 26.10.0.cl. Includes the following attributes:
7096
+ *
7097
+ * - `level`: The scope of the parameter: `LIVEBOARD`, `TAB`, or `GROUP`.
7098
+ * - `targetId`: The GUID of the target, for example, the tab GUID.
7099
+ * Required when `level` is `TAB` or `GROUP`. Do not pass it when
7100
+ * `level` is `LIVEBOARD`, since the parameter applies to the whole
7101
+ * Liveboard.
6644
7102
  *
6645
7103
  * @example
6646
7104
  * ```js
@@ -6652,6 +7110,18 @@ export declare enum HostEvent {
6652
7110
  * ```
6653
7111
  * @example
6654
7112
  * ```js
7113
+ * // Scope the parameter to a specific Liveboard tab
7114
+ * liveboardEmbed.trigger(HostEvent.UpdateParameters, [{
7115
+ * name: "Integer Range Param",
7116
+ * value: 10,
7117
+ * applicability: {
7118
+ * level: "TAB",
7119
+ * targetId: "e0836cad-4fdf-42d4-bd97-567a6b2a6058"
7120
+ * }
7121
+ * }])
7122
+ * ```
7123
+ * @example
7124
+ * ```js
6655
7125
  * // Update parameters from liveboard context
6656
7126
  * import { ContextType } from '@thoughtspot/visual-embed-sdk';
6657
7127
  * liveboardEmbed.trigger(HostEvent.UpdateParameters, [{
@@ -6665,6 +7135,14 @@ export declare enum HostEvent {
6665
7135
  UpdateParameters = "UpdateParameters",
6666
7136
  /**
6667
7137
  * Triggers GetParameters to fetch the runtime Parameters.
7138
+ * Each parameter includes an optional `applicability` attribute
7139
+ * indicating the scope of the parameter. It contains a `level`
7140
+ * (`LIVEBOARD`, `TAB`, or `GROUP`) and, when `level` is `TAB` or
7141
+ * `GROUP`, a `targetId` with the GUID of the target. At `LIVEBOARD`
7142
+ * level there is no `targetId`, since the parameter applies to the
7143
+ * whole Liveboard.
7144
+ * The `applicability` attribute is available from SDK: 1.53.0 |
7145
+ * ThoughtSpot: 26.10.0.cl.
6668
7146
  * @param - `vizId` refers to the Answer ID in Spotter embed and is required in Spotter embed.
6669
7147
  * ```js
6670
7148
  * liveboardEmbed.trigger(HostEvent.GetParameters).then((parameter) => {
@@ -6931,6 +7409,36 @@ export declare enum HostEvent {
6931
7409
  * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
6932
7410
  */
6933
7411
  ResetSpotterConversation = "ResetSpotterConversation",
7412
+ /**
7413
+ * Opens the Spotter share-conversation modal for the given conversation.
7414
+ * `conversationId` is **mandatory** — you must pass the id of the
7415
+ * conversation to share. Also no-op when sharing is disabled
7416
+ * (enableShareConversation off) or when already in the read-only shared view.
7417
+ * @example
7418
+ * ```js
7419
+ * spotterEmbed.trigger(HostEvent.ShareSpotterConversation, { conversationId: 'abc' });
7420
+ * ```
7421
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
7422
+ */
7423
+ ShareSpotterConversation = "ShareSpotterConversation",
7424
+ /**
7425
+ * Closes the Spotter share-conversation modal. No-op if none is open.
7426
+ * @example
7427
+ * ```js
7428
+ * spotterEmbed.trigger(HostEvent.CloseSpotterShareConversation);
7429
+ * ```
7430
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
7431
+ */
7432
+ CloseSpotterShareConversation = "CloseSpotterShareConversation",
7433
+ /**
7434
+ * Exits the read-only shared-conversation view.
7435
+ * @example
7436
+ * ```js
7437
+ * spotterEmbed.trigger(HostEvent.ExitSpotterSharedConversation);
7438
+ * ```
7439
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
7440
+ */
7441
+ ExitSpotterSharedConversation = "ExitSpotterSharedConversation",
6934
7442
  /**
6935
7443
  * Deletes the last prompt in spotter embed.
6936
7444
  * @example
@@ -7026,6 +7534,41 @@ export declare enum HostEvent {
7026
7534
  * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
7027
7535
  */
7028
7536
  StartNewSpotterConversation = "StartNewSpotterConversation",
7537
+ /**
7538
+ * Pins a saved Spotter conversation so it floats to the top of the past
7539
+ * conversations sidebar. The `conversationId` of the conversation to pin is
7540
+ * required.
7541
+ *
7542
+ * This feature is available only when chat history is enabled on your ThoughtSpot
7543
+ * instance. Contact your admin or ThoughtSpot Support to enable chat history on your
7544
+ * instance.
7545
+ *
7546
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
7547
+ * @example
7548
+ * ```js
7549
+ * spotterEmbed.trigger(HostEvent.PinSpotterConversation, {
7550
+ * conversationId: '<conversation-id>',
7551
+ * });
7552
+ * ```
7553
+ */
7554
+ PinSpotterConversation = "PinSpotterConversation",
7555
+ /**
7556
+ * Unpins a previously pinned Spotter conversation. The `conversationId` of the
7557
+ * conversation to unpin is required.
7558
+ *
7559
+ * This feature is available only when chat history is enabled on your ThoughtSpot
7560
+ * instance. Contact your admin or ThoughtSpot Support to enable chat history on your
7561
+ * instance.
7562
+ *
7563
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
7564
+ * @example
7565
+ * ```js
7566
+ * spotterEmbed.trigger(HostEvent.UnpinSpotterConversation, {
7567
+ * conversationId: '<conversation-id>',
7568
+ * });
7569
+ * ```
7570
+ */
7571
+ UnpinSpotterConversation = "UnpinSpotterConversation",
7029
7572
  /**
7030
7573
  * @hidden
7031
7574
  * Get the current context of the embedded page.
@@ -8392,6 +8935,19 @@ export declare enum Action {
8392
8935
  * @version SDK: 1.36.0 | ThoughtSpot Cloud: 10.6.0.cl
8393
8936
  */
8394
8937
  ChangeFilterVisibilityInTab = "changeFilterVisibilityInTab",
8938
+ /**
8939
+ * Action ID to show, hide, or disable all filter surfaces on a Liveboard,
8940
+ * including filter, parameter, and cross-filter chips at the liveboard,
8941
+ * tab, and group levels. Parameter and cross-filter chips are hide-only.
8942
+ *
8943
+ * @example
8944
+ * ```js
8945
+ * hiddenActions: [Action.AllLiveboardFilters]
8946
+ * disabledActions: [Action.AllLiveboardFilters]
8947
+ * ```
8948
+ * @version SDK: 1.53.0 | ThoughtSpot: 26.10.0.cl
8949
+ */
8950
+ AllLiveboardFilters = "allLiveboardFilters",
8395
8951
  /**
8396
8952
  * The **Data model instructions** button on the Spotter interface.
8397
8953
  * Allows opening the data model instructions modal.
@@ -8728,17 +9284,110 @@ export declare enum Action {
8728
9284
  */
8729
9285
  SpotterChatRename = "spotterChatRename",
8730
9286
  /**
8731
- * Controls visibility and disable state of the delete action
8732
- * in the Spotter conversation edit menu.
9287
+ * Controls visibility and disable state of the Spotter conversation Share
9288
+ * button in the chat header. Only takes effect once sharing is enabled
9289
+ * (enableShareConversation on).
8733
9290
  * @example
8734
9291
  * ```js
8735
- * disabledActions: [Action.SpotterChatDelete]
9292
+ * disabledActions: [Action.SpotterShareConversationButtonHeader]
8736
9293
  * ```
8737
- * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
9294
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
8738
9295
  */
8739
- SpotterChatDelete = "spotterChatDelete",
9296
+ SpotterShareConversationButtonHeader = "spotterShareConversationButtonHeader",
8740
9297
  /**
8741
- * Controls visibility and disable state of the documentation/best practices
9298
+ * Controls visibility and disable state of the Share item in the Spotter
9299
+ * conversation history (sidebar) edit menu. Independent of the header button
9300
+ * above, so a host can show Share in one entry point and hide it in the other.
9301
+ * @example
9302
+ * ```js
9303
+ * disabledActions: [Action.SpotterShareConversationMenuItemSidebar]
9304
+ * ```
9305
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
9306
+ */
9307
+ SpotterShareConversationMenuItemSidebar = "spotterShareConversationMenuItemSidebar",
9308
+ /**
9309
+ * Controls visibility of the entire read-only shared-conversation data-access
9310
+ * banner shown when a recipient opens a shared view. Hide-only.
9311
+ * @example
9312
+ * ```js
9313
+ * hiddenActions: [Action.SpotterSharedConversationBanner]
9314
+ * ```
9315
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
9316
+ */
9317
+ SpotterSharedConversationBanner = "spotterSharedConversationBanner",
9318
+ /**
9319
+ * Controls visibility and disable state of the cross/close button on the
9320
+ * read-only shared-conversation data-access banner (keeps the banner itself).
9321
+ * @example
9322
+ * ```js
9323
+ * hiddenActions: [Action.SpotterSharedConversationBannerDismissButton]
9324
+ * ```
9325
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
9326
+ */
9327
+ SpotterSharedConversationBannerDismissButton = "spotterSharedConversationBannerDismissButton",
9328
+ /**
9329
+ * Controls visibility and disable state of the Exit button in the read-only
9330
+ * shared-view header. Hiding it does not disable the ExitSpotterSharedConversation
9331
+ * host event.
9332
+ * @example
9333
+ * ```js
9334
+ * hiddenActions: [Action.SpotterSharedConversationExitButton]
9335
+ * ```
9336
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
9337
+ */
9338
+ SpotterSharedConversationExitButton = "spotterSharedConversationExitButton",
9339
+ /**
9340
+ * Controls visibility of the share-modal footer note ("Chat will be shared up
9341
+ * to the current moment…"). Hide-only.
9342
+ * @example
9343
+ * ```js
9344
+ * hiddenActions: [Action.SpotterShareUpToCurrentInfo]
9345
+ * ```
9346
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
9347
+ */
9348
+ SpotterShareUpToCurrentInfo = "spotterShareUpToCurrentInfo",
9349
+ /**
9350
+ * Controls visibility and disable state of the share-modal "include new
9351
+ * messages since last shared version" checkbox.
9352
+ * @example
9353
+ * ```js
9354
+ * disabledActions: [Action.SpotterShareIncludeNewMessagesCheckbox]
9355
+ * ```
9356
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
9357
+ */
9358
+ SpotterShareIncludeNewMessagesCheckbox = "spotterShareIncludeNewMessagesCheckbox",
9359
+ /**
9360
+ * Controls visibility and disable state of the cross on the share-modal
9361
+ * stale-snapshot info banner.
9362
+ * @example
9363
+ * ```js
9364
+ * hiddenActions: [Action.SpotterShareStaleInfoBannerDismissButton]
9365
+ * ```
9366
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
9367
+ */
9368
+ SpotterShareStaleInfoBannerDismissButton = "spotterShareStaleInfoBannerDismissButton",
9369
+ /**
9370
+ * Controls visibility and disable state of the delete action
9371
+ * in the Spotter conversation edit menu.
9372
+ * @example
9373
+ * ```js
9374
+ * disabledActions: [Action.SpotterChatDelete]
9375
+ * ```
9376
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
9377
+ */
9378
+ SpotterChatDelete = "spotterChatDelete",
9379
+ /**
9380
+ * Controls visibility and disable state of the pin/unpin action
9381
+ * in the Spotter conversation edit menu.
9382
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
9383
+ * @example
9384
+ * ```js
9385
+ * disabledActions: [Action.SpotterChatPin]
9386
+ * ```
9387
+ */
9388
+ SpotterChatPin = "spotterChatPin",
9389
+ /**
9390
+ * Controls visibility and disable state of the documentation/best practices
8742
9391
  * link in the Spotter sidebar footer.
8743
9392
  * @example
8744
9393
  * ```js
@@ -9265,7 +9914,9 @@ export declare enum EmbedErrorCodes {
9265
9914
  /** UpdateFilters payload is invalid - missing or malformed filter/filters */
9266
9915
  UPDATEFILTERS_INVALID_PAYLOAD = "UPDATEFILTERS_INVALID_PAYLOAD",
9267
9916
  /** DrillDown payload is invalid - missing or malformed points */
9268
- DRILLDOWN_INVALID_PAYLOAD = "DRILLDOWN_INVALID_PAYLOAD"
9917
+ DRILLDOWN_INVALID_PAYLOAD = "DRILLDOWN_INVALID_PAYLOAD",
9918
+ /** UpdateParameters payload is invalid - malformed applicability */
9919
+ UPDATEPARAMETERS_INVALID_PAYLOAD = "UPDATEPARAMETERS_INVALID_PAYLOAD"
9269
9920
  }
9270
9921
  /**
9271
9922
  * Error event object emitted when an error occurs in an embedded component.
@@ -9911,6 +10562,40 @@ export interface LiveboardTab {
9911
10562
  name: string;
9912
10563
  [key: string]: any;
9913
10564
  }
10565
+ export interface LiveboardGroup {
10566
+ id: string;
10567
+ name: string;
10568
+ [key: string]: any;
10569
+ }
10570
+ declare enum ApplicabilityLevel {
10571
+ Liveboard = "LIVEBOARD",
10572
+ Tab = "TAB",
10573
+ Group = "GROUP"
10574
+ }
10575
+ /**
10576
+ * Scopes a filter or parameter to a specific target.
10577
+ * At `LIVEBOARD` level the filter applies to the whole Liveboard, so `targetId`
10578
+ * is not required.
10579
+ */
10580
+ export interface Applicability {
10581
+ level: ApplicabilityLevel;
10582
+ targetId?: string;
10583
+ }
10584
+ export interface FilterUpdate {
10585
+ column: string;
10586
+ oper: string;
10587
+ values: string[];
10588
+ type?: string;
10589
+ applicability?: Applicability;
10590
+ }
10591
+ export interface LiveboardFilter {
10592
+ applicability?: Applicability;
10593
+ [key: string]: any;
10594
+ }
10595
+ export interface LiveboardParameter {
10596
+ applicability?: Applicability;
10597
+ [key: string]: any;
10598
+ }
9914
10599
  export declare enum UIPassthroughEvent {
9915
10600
  PinAnswerToLiveboard = "addVizToPinboard",
9916
10601
  SaveAnswer = "saveAnswer",
@@ -9927,6 +10612,7 @@ export declare enum UIPassthroughEvent {
9927
10612
  GetParameters = "getParameters",
9928
10613
  GetTML = "getTML",
9929
10614
  GetTabs = "getTabs",
10615
+ GetGroups = "getGroups",
9930
10616
  GetExportRequestForCurrentPinboard = "getExportRequestForCurrentPinboard"
9931
10617
  }
9932
10618
  export type UIPassthroughContractBase = {
@@ -10005,7 +10691,7 @@ export type UIPassthroughContractBase = {
10005
10691
  vizId?: string;
10006
10692
  };
10007
10693
  response: {
10008
- liveboardFilters: Record<string, any>[];
10694
+ liveboardFilters: LiveboardFilter[];
10009
10695
  runtimeFilters: RuntimeFilter[];
10010
10696
  };
10011
10697
  };
@@ -10018,7 +10704,7 @@ export type UIPassthroughContractBase = {
10018
10704
  [UIPassthroughEvent.GetParameters]: {
10019
10705
  request: Record<string, never>;
10020
10706
  response: {
10021
- parameters: Record<string, any>[];
10707
+ parameters: LiveboardParameter[];
10022
10708
  };
10023
10709
  };
10024
10710
  [UIPassthroughEvent.GetTML]: {
@@ -10036,6 +10722,14 @@ export type UIPassthroughContractBase = {
10036
10722
  Tabs: LiveboardTab[];
10037
10723
  };
10038
10724
  };
10725
+ [UIPassthroughEvent.GetGroups]: {
10726
+ request: Record<string, never>;
10727
+ response: {
10728
+ orderedGroupIds: string[];
10729
+ numberOfGroups: number;
10730
+ Groups: LiveboardGroup[];
10731
+ };
10732
+ };
10039
10733
  [UIPassthroughEvent.GetExportRequestForCurrentPinboard]: {
10040
10734
  request: Record<string, never>;
10041
10735
  response: {
@@ -10047,18 +10741,8 @@ export type UIPassthroughContractBase = {
10047
10741
  };
10048
10742
  [UIPassthroughEvent.UpdateFilters]: {
10049
10743
  request: {
10050
- filter?: {
10051
- column: string;
10052
- oper: string;
10053
- values: string[];
10054
- type?: string;
10055
- };
10056
- filters?: {
10057
- column: string;
10058
- oper: string;
10059
- values: string[];
10060
- type?: string;
10061
- }[];
10744
+ filter?: FilterUpdate;
10745
+ filters?: FilterUpdate[];
10062
10746
  };
10063
10747
  response: unknown;
10064
10748
  };
@@ -10091,6 +10775,7 @@ export type EmbedApiHostEventMapping = {
10091
10775
  [HostEvent.GetParameters]: UIPassthroughEvent.GetParameters;
10092
10776
  [HostEvent.GetTML]: UIPassthroughEvent.GetTML;
10093
10777
  [HostEvent.GetTabs]: UIPassthroughEvent.GetTabs;
10778
+ [HostEvent.GetGroups]: UIPassthroughEvent.GetGroups;
10094
10779
  [HostEvent.getExportRequestForCurrentPinboard]: UIPassthroughEvent.GetExportRequestForCurrentPinboard;
10095
10780
  };
10096
10781
  export type HostEventRequest<HostEventT extends HostEvent> = HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughRequest<EmbedApiHostEventMapping[HostEventT]> : any;
@@ -10135,6 +10820,7 @@ declare class HostEventClient {
10135
10820
  protected handlePinEvent(payload: HostEventRequest<HostEvent.Pin>, context?: ContextType): Promise<HostEventResponse<HostEvent.Pin, ContextType>>;
10136
10821
  protected handleSaveAnswerEvent(payload: HostEventRequest<HostEvent.SaveAnswer>, context?: ContextType): Promise<any>;
10137
10822
  protected handleUpdateFiltersEvent(payload: HostEventRequest<HostEvent.UpdateFilters>, context?: ContextType): Promise<any>;
10823
+ protected handleUpdateParametersEvent(payload: HostEventRequest<HostEvent.UpdateParameters>, context?: ContextType): Promise<any>;
10138
10824
  protected handleDrillDownEvent(payload: HostEventRequest<HostEvent.DrillDown>, context?: ContextType): Promise<any>;
10139
10825
  /**
10140
10826
  * Dispatches a host event using the appropriate channel:
@@ -10737,6 +11423,45 @@ export interface SearchOptions {
10737
11423
  */
10738
11424
  searchQuery: string;
10739
11425
  }
11426
+ /**
11427
+ * The query mode Spotter uses when answering a question.
11428
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11429
+ */
11430
+ export declare enum SpotterQueryMode {
11431
+ FAST_SEARCH = "fastSearch",
11432
+ RESEARCH = "research"
11433
+ }
11434
+ /**
11435
+ * Configuration for the pin/unpin conversation feature in the Spotter sidebar.
11436
+ * Grouped into one object because pin exposes several related settings
11437
+ * (enable + label overrides), unlike single-item actions like rename or
11438
+ * delete.
11439
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
11440
+ */
11441
+ export interface SpotterChatPinConfig {
11442
+ /**
11443
+ * Enables the pin/unpin conversation feature in embedded Spotter. Disabled
11444
+ * by default — hosts must opt in. When off, the Pin/Unpin menu entry and
11445
+ * the pin glyph are hidden and the PinSpotterConversation /
11446
+ * UnpinSpotterConversation host events are no-ops. Native (non-embedded)
11447
+ * Spotter is unaffected and ships pin enabled.
11448
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
11449
+ * @default false
11450
+ */
11451
+ enabled?: boolean;
11452
+ /**
11453
+ * Custom label text for the pin action in the conversation edit menu.
11454
+ * Defaults to translated "Pin" text.
11455
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
11456
+ */
11457
+ pinLabel?: string;
11458
+ /**
11459
+ * Custom label text for the unpin action in the conversation edit menu.
11460
+ * Defaults to translated "Unpin" text.
11461
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
11462
+ */
11463
+ unpinLabel?: string;
11464
+ }
10740
11465
  /**
10741
11466
  * Configuration for the Spotter sidebar.
10742
11467
  * Can be used in SpotterEmbed and AppEmbed.
@@ -10774,6 +11499,12 @@ export interface SpotterSidebarViewConfig {
10774
11499
  * @version SDK: 1.47.0 | ThoughtSpot: 26.4.0.cl
10775
11500
  */
10776
11501
  spotterChatDeleteLabel?: string;
11502
+ /**
11503
+ * Pin/unpin conversation feature config (enable + label overrides).
11504
+ * Off by default in embed — hosts opt in via `enabled`.
11505
+ * @version SDK: 1.53.0 | ThoughtSpot Cloud: 26.10.0.cl
11506
+ */
11507
+ spotterChatPinConfig?: SpotterChatPinConfig;
10777
11508
  /**
10778
11509
  * Custom title text for the delete conversation confirmation modal.
10779
11510
  * Defaults to translated "Delete chat" text.
@@ -10824,6 +11555,84 @@ export interface SpotterSidebarViewConfig {
10824
11555
  */
10825
11556
  spotterAnalystsLabel?: string;
10826
11557
  }
11558
+ /**
11559
+ * Configuration for the Spotter conversation sharing feature.
11560
+ * Can be used in SpotterEmbed and AppEmbed.
11561
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11562
+ * @group Embed components
11563
+ */
11564
+ export interface SpotterShareConversationConfig {
11565
+ /**
11566
+ * Enables sharing of the conversation.
11567
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11568
+ * @default false
11569
+ */
11570
+ enableShareConversation?: boolean;
11571
+ /**
11572
+ * Header Share button + sidebar Share item label.
11573
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11574
+ * @default "Share"
11575
+ */
11576
+ spotterShareLabel?: string;
11577
+ /**
11578
+ * Share modal title.
11579
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11580
+ */
11581
+ spotterShareModalTitle?: string;
11582
+ /**
11583
+ * Modal confirm button label.
11584
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11585
+ * @default "Share"
11586
+ */
11587
+ spotterShareConfirmLabel?: string;
11588
+ /**
11589
+ * Modal cancel button label.
11590
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11591
+ * @default "Cancel"
11592
+ */
11593
+ spotterShareCancelLabel?: string;
11594
+ /**
11595
+ * "Add users or groups" label.
11596
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11597
+ */
11598
+ spotterShareAddUsersLabel?: string;
11599
+ /**
11600
+ * Empty-state title ("No users added yet").
11601
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11602
+ */
11603
+ spotterShareEmptyTitle?: string;
11604
+ /**
11605
+ * Empty-state subtitle ("Not shared with any user").
11606
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11607
+ */
11608
+ spotterShareEmptySubtitle?: string;
11609
+ /**
11610
+ * "Include new messages since last shared version" checkbox label.
11611
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11612
+ */
11613
+ spotterShareIncludeNewMessagesLabel?: string;
11614
+ /**
11615
+ * Footer note when the snapshot is current ("…up to the current moment…").
11616
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11617
+ */
11618
+ spotterShareUpToCurrentLabel?: string;
11619
+ /**
11620
+ * Stale-snapshot info banner text ("All added users and groups will receive…").
11621
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11622
+ */
11623
+ spotterShareStaleInfoLabel?: string;
11624
+ /**
11625
+ * Read-only shared-view data-access banner message.
11626
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11627
+ */
11628
+ spotterSharedConversationBannerMessage?: string;
11629
+ /**
11630
+ * Read-only shared-view Exit button label.
11631
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11632
+ * @default "Exit"
11633
+ */
11634
+ spotterSharedConversationExitLabel?: string;
11635
+ }
10827
11636
  /**
10828
11637
  * Configuration for customizing Spotter chat UI branding.
10829
11638
  * @version SDK: 1.46.0 | ThoughtSpot: 26.4.0.cl
@@ -10878,8 +11687,27 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAct
10878
11687
  /**
10879
11688
  * The ID of the data source object. For example, Model, View, or Table. Spotter uses
10880
11689
  * this object to query data and generate Answers.
11690
+ * This field is optional. If not provided, Spotter loads using the
11691
+ * previously selected user data source.
10881
11692
  */
10882
- worksheetId: string;
11693
+ worksheetId?: string;
11694
+ /**
11695
+ * The array of data source GUIDs to set on load. Spotter uses
11696
+ * these GUIDs to query data and generate Answers.
11697
+ * dataSources is preferred over worksheetId if both are provided.
11698
+ * The feature is currently behind a feature flag.
11699
+ *
11700
+ * Supported embed types: `SpotterEmbed`
11701
+ * @example
11702
+ * ```js
11703
+ * const embed = new SpotterEmbed('#tsEmbed', {
11704
+ * // ...other embed view config
11705
+ * dataSources: ['id-2345', 'id-2345'],
11706
+ * });
11707
+ * ```
11708
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11709
+ */
11710
+ dataSources?: string[];
10883
11711
  /**
10884
11712
  * Ability to pass a starting search query to the conversation.
10885
11713
  */
@@ -11039,6 +11867,39 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAct
11039
11867
  * ```
11040
11868
  */
11041
11869
  updatedSpotterChatPrompt?: boolean;
11870
+ /**
11871
+ * showSpotterRadiance : Controls the radiance on the Spotter page.
11872
+ *
11873
+ * Supported embed types: `SpotterEmbed`
11874
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11875
+ * @default false
11876
+ * @example
11877
+ * ```js
11878
+ * const embed = new SpotterEmbed('#tsEmbed', {
11879
+ * ... //other embed view config
11880
+ * showSpotterRadiance : true,
11881
+ * })
11882
+ * ```
11883
+ */
11884
+ showSpotterRadiance?: boolean;
11885
+ /**
11886
+ * Sets the default query mode when Spotter loads — Fast Search or
11887
+ * Research Mode. Applies fresh on every new session for this embed
11888
+ * instance only; it does not persist as a user preference and does
11889
+ * not affect other embeds or native ThoughtSpot usage.
11890
+ *
11891
+ * Supported embed types: `SpotterEmbed`, `AppEmbed`
11892
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11893
+ * @default SpotterQueryMode.FAST_SEARCH
11894
+ * @example
11895
+ * ```js
11896
+ * const embed = new SpotterEmbed('#tsEmbed', {
11897
+ * ... //other embed view config
11898
+ * defaultQueryMode: SpotterQueryMode.RESEARCH,
11899
+ * })
11900
+ * ```
11901
+ */
11902
+ defaultQueryMode?: SpotterQueryMode;
11042
11903
  /**
11043
11904
  * Enables the stop answer generation button in the Spotter embed UI,
11044
11905
  * allowing users to interrupt an ongoing answer generation.
@@ -11097,6 +11958,59 @@ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAct
11097
11958
  * ```
11098
11959
  */
11099
11960
  spotterChatConfig?: SpotterChatViewConfig;
11961
+ /**
11962
+ * Configuration for the Spotter conversation sharing feature.
11963
+ *
11964
+ * Supported embed types: `SpotterEmbed`, `AppEmbed`
11965
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11966
+ * @example
11967
+ * ```js
11968
+ * const embed = new SpotterEmbed('#tsEmbed', {
11969
+ * ... //other embed view config
11970
+ * spotterShareConversationConfig: {
11971
+ * enableShareConversation: true,
11972
+ * },
11973
+ * })
11974
+ * ```
11975
+ */
11976
+ spotterShareConversationConfig?: SpotterShareConversationConfig;
11977
+ /**
11978
+ * The ID of a shared Spotter conversation to open directly in the read-only
11979
+ * reader view. Use this to land a share recipient in the shared conversation
11980
+ * when they open a host-configured `CONVERSATION_URL` share link: read the
11981
+ * `{conversation-id}` from your page URL and pass it here.
11982
+ *
11983
+ * Requires the Spotter conversation-sharing feature to be enabled
11984
+ * (`spotterShareConversationConfig.enableShareConversation`). The recipient
11985
+ * must be an authorized sharee — the server returns access-denied otherwise.
11986
+ *
11987
+ * Supported embed types: `SpotterEmbed`
11988
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
11989
+ * @example
11990
+ * ```js
11991
+ * const convId = new URLSearchParams(window.location.search).get('conversation-id');
11992
+ * const embed = new SpotterEmbed('#tsEmbed', {
11993
+ * ... //other embed view config
11994
+ * sharedConversationId: convId,
11995
+ * })
11996
+ * ```
11997
+ */
11998
+ sharedConversationId?: string;
11999
+ /**
12000
+ * updatedSpotterExperience : Controls the updated Spotter experience.
12001
+ *
12002
+ * Supported embed types: `SpotterEmbed`
12003
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
12004
+ * @default false
12005
+ * @example
12006
+ * ```js
12007
+ * const embed = new SpotterEmbed('#tsEmbed', {
12008
+ * ... //other embed view config
12009
+ * updatedSpotterExperience : true,
12010
+ * })
12011
+ * ```
12012
+ */
12013
+ updatedSpotterExperience?: boolean;
11100
12014
  }
11101
12015
  /**
11102
12016
  * The configuration for the embedded spotterEmbed options.
@@ -11113,6 +12027,7 @@ export interface ConversationViewConfig extends SpotterEmbedViewConfig {
11113
12027
  export interface SpotterAppInitData extends DefaultAppInitData {
11114
12028
  embedParams?: {
11115
12029
  spotterSidebarConfig?: SpotterSidebarViewConfig;
12030
+ spotterShareConversationConfig?: SpotterShareConversationConfig;
11116
12031
  visualOverridesParams?: VisualizationOverrides | null;
11117
12032
  };
11118
12033
  }
@@ -11209,6 +12124,12 @@ export interface SpotterVizStarterPrompt {
11209
12124
  * { label: 'Tip', text: 'try asking about revenue by region' },
11210
12125
  * { label: 'Tip', text: 'use natural language' },
11211
12126
  * ],
12127
+ * // liveboardBrandName, spotterBrandName, insightTileBrandName, insightTileViewPlanLabel and insightTileLoaderText require SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
12128
+ * liveboardBrandName: 'Reports',
12129
+ * spotterBrandName: 'Analyst',
12130
+ * insightTileBrandName: 'Insight card',
12131
+ * insightTileViewPlanLabel: 'View plan',
12132
+ * insightTileLoaderText: 'Generating insight',
11212
12133
  * },
11213
12134
  * })
11214
12135
  * ```
@@ -11265,6 +12186,34 @@ export interface SpotterVizConfig {
11265
12186
  * @version SDK: 1.51.0 | ThoughtSpot Cloud: 26.8.0.cl
11266
12187
  */
11267
12188
  loaderTips?: SpotterVizLoaderTip[];
12189
+ /**
12190
+ * Custom term used to replace "Liveboard" in the agent's responses.
12191
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
12192
+ * @default ''
12193
+ */
12194
+ liveboardBrandName?: string;
12195
+ /**
12196
+ * Custom term used to replace "Spotter" in the agent's responses.
12197
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
12198
+ * @default ''
12199
+ */
12200
+ spotterBrandName?: string;
12201
+ /**
12202
+ * Custom term used to replace "Insight tile" in the UI and in the agent's responses.
12203
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
12204
+ * @default ''
12205
+ */
12206
+ insightTileBrandName?: string;
12207
+ /**
12208
+ * Custom term used to replace "View plan" in the insight tile menu.
12209
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
12210
+ */
12211
+ insightTileViewPlanLabel?: string;
12212
+ /**
12213
+ * Custom loader text shown on the insight tile.
12214
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
12215
+ */
12216
+ insightTileLoaderText?: string;
11268
12217
  }
11269
12218
  /**
11270
12219
  * A single tip shown in the SpotterViz loading state.
@@ -11312,7 +12261,11 @@ export declare enum Page {
11312
12261
  /**
11313
12262
  * Monitor Alerts Page
11314
12263
  */
11315
- Monitor = "monitor"
12264
+ Monitor = "monitor",
12265
+ /**
12266
+ * Collections listing page
12267
+ */
12268
+ Collections = "collections"
11316
12269
  }
11317
12270
  /**
11318
12271
  * Define the initial state of column custom group accordions
@@ -11357,6 +12310,9 @@ export declare enum HomePage {
11357
12310
  /**
11358
12311
  * Modular (v2) introduces the updated Modular Home Experience.
11359
12312
  * It serves as the foundational version of the home page.
12313
+ * Use {@link HomePage.ModularWithStylingChanges} (V3) or
12314
+ * {@link HomePage.Focused} (V4) instead.
12315
+ * @deprecated V1 and V2 home page experiences are deprecated.
11360
12316
  */
11361
12317
  Modular = "v2",
11362
12318
  /**
@@ -11430,13 +12386,14 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11430
12386
  showPrimaryNavbar?: boolean;
11431
12387
  /**
11432
12388
  * Control the visibility of the left navigation panel on the home page
11433
- * in the V2 and V3 navigation and home page experience.
12389
+ * in the V3 and V4 navigation and home page experience.
11434
12390
  * If `showPrimaryNavbar` is true, that is, if the Global and Homepage
11435
12391
  * navigation bars are visible, this flag will only hide the left navigation bar
11436
12392
  * on the home page.
11437
12393
  * The `showPrimaryNavbar` flag takes precedence over the `hideHomepageLeftNav`.
11438
12394
  *
11439
- * **Note**: This attribute is not supported in the classic (V1) experience.
12395
+ * **Note**: The classic (V1) and Modular (V2) home page experiences are
12396
+ * deprecated. This attribute applies to V3 and V4 home page experiences.
11440
12397
  *
11441
12398
  * Supported embed types: `AppEmbed`
11442
12399
  * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
@@ -11502,11 +12459,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11502
12459
  hideHamburger?: boolean;
11503
12460
  /**
11504
12461
  * Control the visibility of the object search
11505
- * on the top navigation bar in the
11506
- * V2 and V3 navigation experience.
12462
+ * on the top navigation bar in the V3 navigation experience.
11507
12463
  *
11508
- * **Note**: This attribute is not supported
11509
- * in the classic (V1) experience.
12464
+ * **Note**: The classic (V1) and V2 navigation experiences are
12465
+ * deprecated. This attribute applies to the V3 navigation experience.
11510
12466
  *
11511
12467
  * Supported embed types: `AppEmbed`
11512
12468
  * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
@@ -11524,8 +12480,8 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11524
12480
  * Control the visibility of the notification icon
11525
12481
  * on the top navigation bar in V3 navigation experience.
11526
12482
  *
11527
- * **Note**: This attribute is not supported
11528
- * in the classic (V1) and V2 experience modes.
12483
+ * **Note**: The classic (V1) and V2 experience modes are deprecated.
12484
+ * This attribute applies to the V3 experience.
11529
12485
  *
11530
12486
  * Supported embed types: `AppEmbed`
11531
12487
  * @version SDK: 1.40.0 | ThoughtSpot: 10.11.0.cl
@@ -11540,14 +12496,14 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11540
12496
  */
11541
12497
  hideNotification?: boolean;
11542
12498
  /**
11543
- * Control the visibility of the application selection menu
11544
- * in the top navigation bar in the V2 experience.
12499
+ * Control the visibility of the application selection menu.
11545
12500
  * In the V3 experience, it shows or hides application selection
11546
12501
  * icons on the left navigation panel.
11547
12502
  * By default, the application selection menu and icons are
11548
12503
  * shown in the UI.
11549
12504
  *
11550
- * **Note**: This attribute is not supported in the classic (V1) experience.
12505
+ * **Note**: The classic (V1) and V2 experiences are deprecated.
12506
+ * This attribute applies to the V3 experience.
11551
12507
  *
11552
12508
  * Supported embed types: `AppEmbed`
11553
12509
  * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
@@ -11565,7 +12521,8 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11565
12521
  * Control the visibility of the Org switcher button on the nav-bar.
11566
12522
  * By default, the Org switcher button is shown.
11567
12523
  *
11568
- * **Note**: This attribute is not supported in the classic (V1) experience.
12524
+ * **Note**: The classic (V1) experience is deprecated. This attribute
12525
+ * applies to V2 (deprecated), V3 and V4 experiences.
11569
12526
  *
11570
12527
  * Supported embed types: `AppEmbed`
11571
12528
  * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
@@ -11724,6 +12681,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11724
12681
  * Supported embed types: `AppEmbed`
11725
12682
  * @version SDK: 1.28.0 | ThoughtSpot: 9.12.5.cl
11726
12683
  * @default false
12684
+ * Use the discoveryExperience.homePage option with
12685
+ * {@link HomePage.ModularWithStylingChanges} (V3) or
12686
+ * {@link HomePage.Focused} (V4) instead.
12687
+ * @deprecated The V1 and V2 home page experiences are deprecated.
11727
12688
  * @example
11728
12689
  * ```js
11729
12690
  * const embed = new AppEmbed('#tsEmbed', {
@@ -11855,11 +12816,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11855
12816
  /**
11856
12817
  * Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
11857
12818
  * following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
11858
- * This feature is GA from version 26.5.0.cl. It is disabled by default in embed deployments.
12819
+ * This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.8.0.cl.
11859
12820
  *
11860
12821
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
11861
12822
  * @type {boolean}
11862
12823
  * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
12824
+ * @default true
11863
12825
  * @example
11864
12826
  * ```js
11865
12827
  * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
@@ -11872,10 +12834,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11872
12834
  isContinuousLiveboardPDFEnabled?: boolean;
11873
12835
  /**
11874
12836
  * This flag is used to enable/disable the XLSX/CSV download option for Liveboards
12837
+ * This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.6.0.cl
11875
12838
  *
11876
12839
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
11877
12840
  * @type {boolean}
11878
12841
  * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
12842
+ * @default true
11879
12843
  * @example
11880
12844
  * ```js
11881
12845
  * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
@@ -11888,10 +12852,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11888
12852
  isLiveboardXLSXCSVDownloadEnabled?: boolean;
11889
12853
  /**
11890
12854
  * This flag is used to enable/disable the granular XLSX/CSV schedules feature
12855
+ * This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.6.0.cl
11891
12856
  *
11892
12857
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
11893
12858
  * @type {boolean}
11894
12859
  * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
12860
+ * @default true
11895
12861
  * @example
11896
12862
  * ```js
11897
12863
  * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
@@ -11967,6 +12933,40 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11967
12933
  * ```
11968
12934
  */
11969
12935
  updatedSpotterChatPrompt?: boolean;
12936
+ /**
12937
+ * showSpotterRadiance : Controls the radiance on the Spotter page.
12938
+ *
12939
+ * Supported embed types: `AppEmbed`
12940
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
12941
+ * @default false
12942
+ * @example
12943
+ * ```js
12944
+ * const embed = new AppEmbed('#tsEmbed', {
12945
+ * ... //other embed view config
12946
+ * showSpotterRadiance : true,
12947
+ * })
12948
+ * ```
12949
+ */
12950
+ showSpotterRadiance?: boolean;
12951
+ /**
12952
+ * Sets the default query mode when Spotter loads — Fast Search or
12953
+ * Research Mode. Applies fresh on every new session for this embed
12954
+ * instance only; it does not persist as a user preference and does
12955
+ * not affect other embeds or native ThoughtSpot usage.
12956
+ * Only applicable when navigating to Spotter within the app.
12957
+ *
12958
+ * Supported embed types: `AppEmbed`
12959
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
12960
+ * @default SpotterQueryMode.FAST_SEARCH
12961
+ * @example
12962
+ * ```js
12963
+ * const embed = new AppEmbed('#tsEmbed', {
12964
+ * ... //other embed view config
12965
+ * defaultQueryMode: SpotterQueryMode.RESEARCH,
12966
+ * })
12967
+ * ```
12968
+ */
12969
+ defaultQueryMode?: SpotterQueryMode;
11970
12970
  /**
11971
12971
  * Controls the visibility of the past conversations sidebar.
11972
12972
  *
@@ -11992,6 +12992,10 @@ export interface AppViewConfig extends AllEmbedViewConfig {
11992
12992
  * spotterSidebarConfig: {
11993
12993
  * enablePastConversationsSidebar: true,
11994
12994
  * spotterSidebarTitle: 'My Conversations',
12995
+ * // Opt in to pin/unpin conversations in embedded Spotter
12996
+ * spotterChatPinConfig: {
12997
+ * enabled: true,
12998
+ * },
11995
12999
  * },
11996
13000
  * })
11997
13001
  * ```
@@ -12015,6 +13019,49 @@ export interface AppViewConfig extends AllEmbedViewConfig {
12015
13019
  * ```
12016
13020
  */
12017
13021
  spotterChatConfig?: SpotterChatViewConfig;
13022
+ /**
13023
+ * Configuration for the Spotter conversation sharing feature.
13024
+ *
13025
+ * Supported embed types: `AppEmbed`
13026
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
13027
+ * @example
13028
+ * ```js
13029
+ * const embed = new AppEmbed('#tsEmbed', {
13030
+ * ... //other embed view config
13031
+ * spotterShareConversationConfig: {
13032
+ * enableShareConversation: true,
13033
+ * },
13034
+ * })
13035
+ * ```
13036
+ */
13037
+ spotterShareConversationConfig?: SpotterShareConversationConfig;
13038
+ /**
13039
+ * Sets the default data sources (Models) for the Spotter experience shown on
13040
+ * the home page of the full app embed. Accepts a list of Model GUIDs to
13041
+ * preselect the data sources available to Spotter, or the literal
13042
+ * `'auto_mode'` sentinel to load Spotter with the "Auto" model selected by
13043
+ * default. This is consistent with how `worksheetId: 'auto_mode'` enables
13044
+ * Auto mode in `SpotterEmbed`.
13045
+ *
13046
+ * **Note**: If `'auto_mode'` is included alongside one or more Model GUIDs,
13047
+ * `'auto_mode'` takes precedence and is selected by default.
13048
+ *
13049
+ * **Note**: `'auto_mode'` requires the Spotter 3 experience with data source
13050
+ * discovery enabled on your instance, and a Spotter-enabled home page (for
13051
+ * example, `discoveryExperience.homePage: HomePage.Focused`).
13052
+ *
13053
+ * Supported embed types: `AppEmbed`
13054
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.10.0.cl
13055
+ * @example
13056
+ * ```js
13057
+ * const embed = new AppEmbed('#tsEmbed', {
13058
+ * ... // other embed view config
13059
+ * discoveryExperience: { homePage: HomePage.Focused },
13060
+ * spotterDataSources: ['model-guid-1', 'model-guid-2'], // or ['auto_mode']
13061
+ * })
13062
+ * ```
13063
+ */
13064
+ spotterDataSources?: string[];
12018
13065
  /**
12019
13066
  * Configuration for the SpotterViz interface shown on the Liveboard.
12020
13067
  * Customize the brand name, description, chat input placeholder,
@@ -12039,6 +13086,12 @@ export interface AppViewConfig extends AllEmbedViewConfig {
12039
13086
  * { label: 'Tip', text: 'try asking about revenue by region' },
12040
13087
  * { label: 'Tip', text: 'use natural language' },
12041
13088
  * ],
13089
+ * // liveboardBrandName, spotterBrandName, insightTileBrandName, insightTileViewPlanLabel and insightTileLoaderText require SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
13090
+ * liveboardBrandName: 'Reports',
13091
+ * spotterBrandName: 'Analyst',
13092
+ * insightTileBrandName: 'Insight card',
13093
+ * insightTileViewPlanLabel: 'View plan',
13094
+ * insightTileLoaderText: 'Generating insight',
12042
13095
  * },
12043
13096
  * })
12044
13097
  * ```
@@ -12104,6 +13157,21 @@ export interface AppViewConfig extends AllEmbedViewConfig {
12104
13157
  * @version SDK: 1.49.0 | ThoughtSpot: 26.6.0.cl
12105
13158
  */
12106
13159
  visualOverrides?: VisualizationOverrides;
13160
+ /**
13161
+ * updatedSpotterExperience : Controls the updated Spotter experience.
13162
+ *
13163
+ * Supported embed types: `AppEmbed`
13164
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
13165
+ * @default false
13166
+ * @example
13167
+ * ```js
13168
+ * const embed = new AppEmbed('#tsEmbed', {
13169
+ * ... //other embed view config
13170
+ * updatedSpotterExperience : true,
13171
+ * })
13172
+ * ```
13173
+ */
13174
+ updatedSpotterExperience?: boolean;
12107
13175
  }
12108
13176
  /**
12109
13177
  * APP_INIT data shape for AppEmbed.
@@ -12113,6 +13181,7 @@ export interface AppEmbedAppInitData extends DefaultAppInitData {
12113
13181
  embedParams?: {
12114
13182
  spotterSidebarConfig?: SpotterSidebarViewConfig;
12115
13183
  spotterVizConfig?: SpotterVizConfig;
13184
+ spotterShareConversationConfig?: SpotterShareConversationConfig;
12116
13185
  };
12117
13186
  }
12118
13187
  /**
@@ -12143,6 +13212,7 @@ export declare class AppEmbed extends V1Embed {
12143
13212
  * embedded Liveboard or visualization.
12144
13213
  */
12145
13214
  protected getEmbedParams(): string;
13215
+ protected getEmbedParamsObject(): any;
12146
13216
  private sendFullHeightLazyLoadData;
12147
13217
  /**
12148
13218
  * This is a handler for the RequestVisibleEmbedCoordinates event.
@@ -12850,11 +13920,12 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
12850
13920
  /**
12851
13921
  * Enables the 'what you see is what you get' PDF export for Liveboards. Each tab is rendered on a single page
12852
13922
  * following the exact UI layout, instead of splitting visualizations across multiple A4 pages.
12853
- * This feature is GA from version 26.5.0.cl. It is disabled by default in embed deployments.
13923
+ * This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.8.0.cl.
12854
13924
  *
12855
13925
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
12856
13926
  * @type {boolean}
12857
13927
  * @version SDK: 1.48.0 | ThoughtSpot: 26.5.0.cl
13928
+ * @default true
12858
13929
  * @example
12859
13930
  * ```js
12860
13931
  * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
@@ -12867,10 +13938,12 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
12867
13938
  isContinuousLiveboardPDFEnabled?: boolean;
12868
13939
  /**
12869
13940
  * This flag is used to enable/disable the XLSX/CSV download option for Liveboards
13941
+ * This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.6.0.cl.
12870
13942
  *
12871
13943
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
12872
13944
  * @type {boolean}
12873
13945
  * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
13946
+ * @default true
12874
13947
  * @example
12875
13948
  * ```js
12876
13949
  * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
@@ -12883,10 +13956,12 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
12883
13956
  isLiveboardXLSXCSVDownloadEnabled?: boolean;
12884
13957
  /**
12885
13958
  * This flag is used to enable/disable the granular XLSX/CSV schedules feature
13959
+ * This feature is GA from SDK version 1.51.0 and ThoughtSpot version 26.6.0.cl.
12886
13960
  *
12887
13961
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
12888
13962
  * @type {boolean}
12889
13963
  * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
13964
+ * @default true
12890
13965
  * @example
12891
13966
  * ```js
12892
13967
  * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
@@ -12977,6 +14052,21 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
12977
14052
  * ```
12978
14053
  */
12979
14054
  updatedSpotterChatPrompt?: boolean;
14055
+ /**
14056
+ * showSpotterRadiance : Controls the radiance on the Spotter page.
14057
+ *
14058
+ * Supported embed types: `LiveboardEmbed`
14059
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
14060
+ * @default false
14061
+ * @example
14062
+ * ```js
14063
+ * const embed = new LiveboardEmbed('#tsEmbed', {
14064
+ * ... //other embed view config
14065
+ * showSpotterRadiance : true,
14066
+ * })
14067
+ * ```
14068
+ */
14069
+ showSpotterRadiance?: boolean;
12980
14070
  /**
12981
14071
  * Enables the stop answer generation button in the Spotter embed UI,
12982
14072
  * allowing users to interrupt an ongoing answer generation.
@@ -13028,6 +14118,12 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
13028
14118
  * { label: 'Tip', text: 'try asking about revenue by region' },
13029
14119
  * { label: 'Tip', text: 'use natural language' },
13030
14120
  * ],
14121
+ * // liveboardBrandName, spotterBrandName, insightTileBrandName, insightTileViewPlanLabel and insightTileLoaderText require SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
14122
+ * liveboardBrandName: 'Reports',
14123
+ * spotterBrandName: 'Analyst',
14124
+ * insightTileBrandName: 'Insight card',
14125
+ * insightTileViewPlanLabel: 'View plan',
14126
+ * insightTileLoaderText: 'Generating insight',
13031
14127
  * },
13032
14128
  * })
13033
14129
  * ```
@@ -13046,6 +14142,21 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
13046
14142
  * ```
13047
14143
  */
13048
14144
  enableLiveboardDataCache?: boolean;
14145
+ /**
14146
+ * updatedSpotterExperience : Controls the updated Spotter experience.
14147
+ *
14148
+ * Supported embed types: `LiveboardEmbed`
14149
+ * @version SDK: 1.52.0 | ThoughtSpot Cloud: 26.9.0.cl
14150
+ * @default false
14151
+ * @example
14152
+ * ```js
14153
+ * const embed = new LiveboardEmbed('#tsEmbed', {
14154
+ * ... //other embed view config
14155
+ * updatedSpotterExperience : true,
14156
+ * })
14157
+ * ```
14158
+ */
14159
+ updatedSpotterExperience?: boolean;
13049
14160
  }
13050
14161
  /**
13051
14162
  * Embed a ThoughtSpot Liveboard or visualization. When rendered it already
@@ -13806,6 +14917,10 @@ export declare const MIXPANEL_EVENT: {
13806
14917
  VISUAL_SDK_IFRAME_LOAD_PERFORMANCE: string;
13807
14918
  VISUAL_SDK_EMBED_CREATE: string;
13808
14919
  VERCEL_INTEGRATION_COMPLETED: string;
14920
+ VISUAL_SDK_RENDER_CALLED: string;
14921
+ VISUAL_SDK_PRE_RENDER: string;
14922
+ VISUAL_SDK_SHOW_PRE_RENDER: string;
14923
+ VISUAL_SDK_HIDE_PRE_RENDER: string;
13809
14924
  };
13810
14925
  /**
13811
14926
  * Pushes the event with its Property key-value map to mixpanel.