@thoughtspot/visual-embed-sdk 1.45.1 → 1.45.3

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 (213) hide show
  1. package/cjs/package.json +1 -1
  2. package/cjs/src/authToken.d.ts +1 -1
  3. package/cjs/src/authToken.d.ts.map +1 -1
  4. package/cjs/src/authToken.js +2 -2
  5. package/cjs/src/authToken.js.map +1 -1
  6. package/cjs/src/authToken.spec.js +71 -0
  7. package/cjs/src/authToken.spec.js.map +1 -1
  8. package/cjs/src/css-variables.d.ts +48 -0
  9. package/cjs/src/css-variables.d.ts.map +1 -1
  10. package/cjs/src/embed/app.d.ts +37 -0
  11. package/cjs/src/embed/app.d.ts.map +1 -1
  12. package/cjs/src/embed/app.js +37 -1
  13. package/cjs/src/embed/app.js.map +1 -1
  14. package/cjs/src/embed/app.spec.js +24 -0
  15. package/cjs/src/embed/app.spec.js.map +1 -1
  16. package/cjs/src/embed/conversation.d.ts +127 -9
  17. package/cjs/src/embed/conversation.d.ts.map +1 -1
  18. package/cjs/src/embed/conversation.js +41 -18
  19. package/cjs/src/embed/conversation.js.map +1 -1
  20. package/cjs/src/embed/conversation.spec.js +96 -3
  21. package/cjs/src/embed/conversation.spec.js.map +1 -1
  22. package/cjs/src/embed/hostEventClient/contracts.d.ts +3 -3
  23. package/cjs/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  24. package/cjs/src/embed/hostEventClient/contracts.js.map +1 -1
  25. package/cjs/src/embed/hostEventClient/host-event-client.d.ts +8 -8
  26. package/cjs/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  27. package/cjs/src/embed/hostEventClient/host-event-client.js +18 -18
  28. package/cjs/src/embed/hostEventClient/host-event-client.js.map +1 -1
  29. package/cjs/src/embed/hostEventClient/host-event-client.spec.js +7 -7
  30. package/cjs/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  31. package/cjs/src/embed/liveboard.d.ts +40 -3
  32. package/cjs/src/embed/liveboard.d.ts.map +1 -1
  33. package/cjs/src/embed/liveboard.js +40 -12
  34. package/cjs/src/embed/liveboard.js.map +1 -1
  35. package/cjs/src/embed/liveboard.spec.js +180 -8
  36. package/cjs/src/embed/liveboard.spec.js.map +1 -1
  37. package/cjs/src/embed/ts-embed.d.ts +23 -2
  38. package/cjs/src/embed/ts-embed.d.ts.map +1 -1
  39. package/cjs/src/embed/ts-embed.js +64 -22
  40. package/cjs/src/embed/ts-embed.js.map +1 -1
  41. package/cjs/src/embed/ts-embed.spec.d.ts.map +1 -1
  42. package/cjs/src/embed/ts-embed.spec.js +138 -19
  43. package/cjs/src/embed/ts-embed.spec.js.map +1 -1
  44. package/cjs/src/errors.d.ts +1 -0
  45. package/cjs/src/errors.d.ts.map +1 -1
  46. package/cjs/src/errors.js +1 -0
  47. package/cjs/src/errors.js.map +1 -1
  48. package/cjs/src/index.d.ts +3 -3
  49. package/cjs/src/index.d.ts.map +1 -1
  50. package/cjs/src/index.js +3 -2
  51. package/cjs/src/index.js.map +1 -1
  52. package/cjs/src/types.d.ts +356 -42
  53. package/cjs/src/types.d.ts.map +1 -1
  54. package/cjs/src/types.js +227 -20
  55. package/cjs/src/types.js.map +1 -1
  56. package/cjs/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
  57. package/cjs/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  58. package/cjs/src/utils/graphql/answerService/answer-queries.js +23 -1
  59. package/cjs/src/utils/graphql/answerService/answer-queries.js.map +1 -1
  60. package/cjs/src/utils/graphql/answerService/answerService.d.ts +2 -1
  61. package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  62. package/cjs/src/utils/graphql/answerService/answerService.js +9 -1
  63. package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
  64. package/cjs/src/utils/graphql/answerService/answerService.spec.js +73 -0
  65. package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  66. package/cjs/src/utils/processTrigger.d.ts +3 -2
  67. package/cjs/src/utils/processTrigger.d.ts.map +1 -1
  68. package/cjs/src/utils/processTrigger.js +4 -2
  69. package/cjs/src/utils/processTrigger.js.map +1 -1
  70. package/cjs/src/utils.d.ts +20 -1
  71. package/cjs/src/utils.d.ts.map +1 -1
  72. package/cjs/src/utils.js +40 -1
  73. package/cjs/src/utils.js.map +1 -1
  74. package/cjs/src/utils.spec.js +49 -0
  75. package/cjs/src/utils.spec.js.map +1 -1
  76. package/dist/{index-Dgzjq7qH.js → index-BuwECGdm.js} +1 -1
  77. package/dist/src/authToken.d.ts +1 -1
  78. package/dist/src/authToken.d.ts.map +1 -1
  79. package/dist/src/css-variables.d.ts +48 -0
  80. package/dist/src/css-variables.d.ts.map +1 -1
  81. package/dist/src/embed/app.d.ts +37 -0
  82. package/dist/src/embed/app.d.ts.map +1 -1
  83. package/dist/src/embed/conversation.d.ts +127 -9
  84. package/dist/src/embed/conversation.d.ts.map +1 -1
  85. package/dist/src/embed/hostEventClient/contracts.d.ts +3 -3
  86. package/dist/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  87. package/dist/src/embed/hostEventClient/host-event-client.d.ts +8 -8
  88. package/dist/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  89. package/dist/src/embed/liveboard.d.ts +40 -3
  90. package/dist/src/embed/liveboard.d.ts.map +1 -1
  91. package/dist/src/embed/ts-embed.d.ts +23 -2
  92. package/dist/src/embed/ts-embed.d.ts.map +1 -1
  93. package/dist/src/embed/ts-embed.spec.d.ts.map +1 -1
  94. package/dist/src/errors.d.ts +1 -0
  95. package/dist/src/errors.d.ts.map +1 -1
  96. package/dist/src/index.d.ts +3 -3
  97. package/dist/src/index.d.ts.map +1 -1
  98. package/dist/src/types.d.ts +356 -42
  99. package/dist/src/types.d.ts.map +1 -1
  100. package/dist/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
  101. package/dist/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  102. package/dist/src/utils/graphql/answerService/answerService.d.ts +2 -1
  103. package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  104. package/dist/src/utils/processTrigger.d.ts +3 -2
  105. package/dist/src/utils/processTrigger.d.ts.map +1 -1
  106. package/dist/src/utils.d.ts +20 -1
  107. package/dist/src/utils.d.ts.map +1 -1
  108. package/dist/tsembed-react.es.js +501 -98
  109. package/dist/tsembed-react.js +500 -97
  110. package/dist/tsembed.es.js +516 -113
  111. package/dist/tsembed.js +29956 -29553
  112. package/dist/visual-embed-sdk-react-full.d.ts +819 -282
  113. package/dist/visual-embed-sdk-react.d.ts +818 -281
  114. package/dist/visual-embed-sdk.d.ts +882 -321
  115. package/lib/package.json +1 -1
  116. package/lib/src/authToken.d.ts +1 -1
  117. package/lib/src/authToken.d.ts.map +1 -1
  118. package/lib/src/authToken.js +2 -2
  119. package/lib/src/authToken.js.map +1 -1
  120. package/lib/src/authToken.spec.js +72 -1
  121. package/lib/src/authToken.spec.js.map +1 -1
  122. package/lib/src/css-variables.d.ts +48 -0
  123. package/lib/src/css-variables.d.ts.map +1 -1
  124. package/lib/src/embed/app.d.ts +37 -0
  125. package/lib/src/embed/app.d.ts.map +1 -1
  126. package/lib/src/embed/app.js +39 -3
  127. package/lib/src/embed/app.js.map +1 -1
  128. package/lib/src/embed/app.spec.js +24 -0
  129. package/lib/src/embed/app.spec.js.map +1 -1
  130. package/lib/src/embed/conversation.d.ts +127 -9
  131. package/lib/src/embed/conversation.d.ts.map +1 -1
  132. package/lib/src/embed/conversation.js +42 -19
  133. package/lib/src/embed/conversation.js.map +1 -1
  134. package/lib/src/embed/conversation.spec.js +96 -3
  135. package/lib/src/embed/conversation.spec.js.map +1 -1
  136. package/lib/src/embed/hostEventClient/contracts.d.ts +3 -3
  137. package/lib/src/embed/hostEventClient/contracts.d.ts.map +1 -1
  138. package/lib/src/embed/hostEventClient/contracts.js.map +1 -1
  139. package/lib/src/embed/hostEventClient/host-event-client.d.ts +8 -8
  140. package/lib/src/embed/hostEventClient/host-event-client.d.ts.map +1 -1
  141. package/lib/src/embed/hostEventClient/host-event-client.js +18 -18
  142. package/lib/src/embed/hostEventClient/host-event-client.js.map +1 -1
  143. package/lib/src/embed/hostEventClient/host-event-client.spec.js +7 -7
  144. package/lib/src/embed/hostEventClient/host-event-client.spec.js.map +1 -1
  145. package/lib/src/embed/liveboard.d.ts +40 -3
  146. package/lib/src/embed/liveboard.d.ts.map +1 -1
  147. package/lib/src/embed/liveboard.js +41 -13
  148. package/lib/src/embed/liveboard.js.map +1 -1
  149. package/lib/src/embed/liveboard.spec.js +180 -8
  150. package/lib/src/embed/liveboard.spec.js.map +1 -1
  151. package/lib/src/embed/ts-embed.d.ts +23 -2
  152. package/lib/src/embed/ts-embed.d.ts.map +1 -1
  153. package/lib/src/embed/ts-embed.js +64 -22
  154. package/lib/src/embed/ts-embed.js.map +1 -1
  155. package/lib/src/embed/ts-embed.spec.d.ts.map +1 -1
  156. package/lib/src/embed/ts-embed.spec.js +139 -20
  157. package/lib/src/embed/ts-embed.spec.js.map +1 -1
  158. package/lib/src/errors.d.ts +1 -0
  159. package/lib/src/errors.d.ts.map +1 -1
  160. package/lib/src/errors.js +1 -0
  161. package/lib/src/errors.js.map +1 -1
  162. package/lib/src/index.d.ts +3 -3
  163. package/lib/src/index.d.ts.map +1 -1
  164. package/lib/src/index.js +2 -2
  165. package/lib/src/index.js.map +1 -1
  166. package/lib/src/types.d.ts +356 -42
  167. package/lib/src/types.d.ts.map +1 -1
  168. package/lib/src/types.js +226 -19
  169. package/lib/src/types.js.map +1 -1
  170. package/lib/src/utils/graphql/answerService/answer-queries.d.ts +1 -0
  171. package/lib/src/utils/graphql/answerService/answer-queries.d.ts.map +1 -1
  172. package/lib/src/utils/graphql/answerService/answer-queries.js +22 -0
  173. package/lib/src/utils/graphql/answerService/answer-queries.js.map +1 -1
  174. package/lib/src/utils/graphql/answerService/answerService.d.ts +2 -1
  175. package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
  176. package/lib/src/utils/graphql/answerService/answerService.js +9 -1
  177. package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
  178. package/lib/src/utils/graphql/answerService/answerService.spec.js +73 -0
  179. package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
  180. package/lib/src/utils/processTrigger.d.ts +3 -2
  181. package/lib/src/utils/processTrigger.d.ts.map +1 -1
  182. package/lib/src/utils/processTrigger.js +4 -2
  183. package/lib/src/utils/processTrigger.js.map +1 -1
  184. package/lib/src/utils.d.ts +20 -1
  185. package/lib/src/utils.d.ts.map +1 -1
  186. package/lib/src/utils.js +36 -0
  187. package/lib/src/utils.js.map +1 -1
  188. package/lib/src/utils.spec.js +50 -1
  189. package/lib/src/utils.spec.js.map +1 -1
  190. package/package.json +1 -1
  191. package/src/authToken.spec.ts +91 -2
  192. package/src/authToken.ts +2 -2
  193. package/src/css-variables.ts +60 -0
  194. package/src/embed/app.spec.ts +32 -0
  195. package/src/embed/app.ts +97 -1
  196. package/src/embed/conversation.spec.ts +117 -3
  197. package/src/embed/conversation.ts +188 -29
  198. package/src/embed/hostEventClient/contracts.ts +4 -4
  199. package/src/embed/hostEventClient/host-event-client.spec.ts +7 -1
  200. package/src/embed/hostEventClient/host-event-client.ts +22 -11
  201. package/src/embed/liveboard.spec.ts +264 -10
  202. package/src/embed/liveboard.ts +105 -14
  203. package/src/embed/ts-embed.spec.ts +184 -8
  204. package/src/embed/ts-embed.ts +81 -24
  205. package/src/errors.ts +1 -0
  206. package/src/index.ts +7 -1
  207. package/src/types.ts +364 -40
  208. package/src/utils/graphql/answerService/answer-queries.ts +23 -0
  209. package/src/utils/graphql/answerService/answerService.spec.ts +87 -0
  210. package/src/utils/graphql/answerService/answerService.ts +13 -1
  211. package/src/utils/processTrigger.ts +6 -3
  212. package/src/utils.spec.ts +56 -0
  213. package/src/utils.ts +44 -0
@@ -703,6 +703,54 @@ export interface CustomCssVariables {
703
703
  * Width of the Spotter chat window.
704
704
  */
705
705
  "--ts-var-spotter-chat-width"?: string;
706
+ /**
707
+ * Border color for the saved chats sidebar container.
708
+ */
709
+ "--ts-var-saved-chats-border-color"?: string;
710
+ /**
711
+ * Background color for the saved chats sidebar container.
712
+ */
713
+ "--ts-var-saved-chats-bg"?: string;
714
+ /**
715
+ * Text color for the saved chats sidebar container.
716
+ */
717
+ "--ts-var-saved-chats-text-color"?: string;
718
+ /**
719
+ * Border color for the saved chats sidebar header.
720
+ */
721
+ "--ts-var-saved-chats-header-border"?: string;
722
+ /**
723
+ * Color for the saved chats sidebar title text.
724
+ */
725
+ "--ts-var-saved-chats-title-color"?: string;
726
+ /**
727
+ * Background color for buttons (new chat, toggle, footer) in the saved chats sidebar.
728
+ */
729
+ "--ts-var-saved-chats-btn-bg"?: string;
730
+ /**
731
+ * Hover background color for buttons in the saved chats sidebar.
732
+ */
733
+ "--ts-var-saved-chats-btn-hover-bg"?: string;
734
+ /**
735
+ * Text color for conversation items in the saved chats sidebar.
736
+ */
737
+ "--ts-var-saved-chats-conv-text-color"?: string;
738
+ /**
739
+ * Background color for conversation items on hover in the saved chats sidebar.
740
+ */
741
+ "--ts-var-saved-chats-conv-hover-bg"?: string;
742
+ /**
743
+ * Background color for the active/selected conversation in the saved chats sidebar.
744
+ */
745
+ "--ts-var-saved-chats-conv-active-bg"?: string;
746
+ /**
747
+ * Border color for the saved chats sidebar footer.
748
+ */
749
+ "--ts-var-saved-chats-footer-border"?: string;
750
+ /**
751
+ * Color for section title text (e.g., "Recent", "Older") in the saved chats sidebar.
752
+ */
753
+ "--ts-var-saved-chats-section-title-color"?: string;
706
754
  }
707
755
  export interface SessionInterface {
708
756
  sessionId: string;
@@ -771,7 +819,8 @@ declare class AnswerService {
771
819
  * @returns
772
820
  */
773
821
  addFilter(columnName: string, operator: RuntimeFilterOp, values: RuntimeFilter["values"]): Promise<any>;
774
- getSQLQuery(): Promise<string>;
822
+ updateDisplayMode(displayMode?: string): Promise<any>;
823
+ getSQLQuery(fetchSQLWithAllColumns?: boolean): Promise<string>;
775
824
  /**
776
825
  * Fetch data from the answer.
777
826
  * @param offset
@@ -1925,6 +1974,44 @@ export interface BaseViewConfig extends ApiInterceptFlags {
1925
1974
  * ```
1926
1975
  */
1927
1976
  customActions?: CustomAction[];
1977
+ /**
1978
+ * Refresh the auth token when the token is near expiry.
1979
+ * @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl
1980
+ * @example
1981
+ * ```js
1982
+ * const embed = new AppEmbed('#tsEmbed', {
1983
+ * ... // other embed view config
1984
+ * refreshAuthTokenOnNearExpiry: true,
1985
+ * })
1986
+ * ```
1987
+ */
1988
+ refreshAuthTokenOnNearExpiry?: boolean;
1989
+ /**
1990
+ * This flag skips payload validation so events can be processed even if the payload is old, incomplete, or from a trusted system.
1991
+ * @default false
1992
+ * @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl
1993
+ * @example
1994
+ * ```js
1995
+ * const embed = new AppEmbed('#tsEmbed', {
1996
+ * ... // other embed view config
1997
+ * shouldBypassPayloadValidation:true,
1998
+ * })
1999
+ * ```
2000
+ */
2001
+ shouldBypassPayloadValidation?: boolean;
2002
+ /**
2003
+ * Flag to use host events v2. This is used to enable the new host events v2 API.
2004
+ * @default false
2005
+ * @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl
2006
+ * @example
2007
+ * ```js
2008
+ * const embed = new AppEmbed('#tsEmbed', {
2009
+ * ... // other embed view config
2010
+ * useHostEventsV2:true,
2011
+ * })
2012
+ * ```
2013
+ */
2014
+ useHostEventsV2?: boolean;
1928
2015
  }
1929
2016
  /**
1930
2017
  * The configuration object for Home page embeds configs.
@@ -2360,7 +2447,7 @@ export interface LiveboardAppEmbedViewConfig {
2360
2447
  * To enable this feature on your instance, contact ThoughtSpot Support.
2361
2448
  *
2362
2449
  * Supported embed types: `AppEmbed`, `LiveboardEmbed`
2363
- * @version SDK: 1.42.0 | ThoughtSpot: 10.15.0.cl
2450
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.4.0.cl
2364
2451
  * @example
2365
2452
  * ```js
2366
2453
  * // Replace <EmbedComponent> with embed component name. For example, AppEmbed or LiveboardEmbed
@@ -3909,7 +3996,55 @@ export declare enum EmbedEvent {
3909
3996
  * ```
3910
3997
  * @version SDK: 1.43.0 | ThoughtSpot: 10.15.0.cl
3911
3998
  */
3912
- ApiIntercept = "ApiIntercept"
3999
+ ApiIntercept = "ApiIntercept",
4000
+ /**
4001
+ * Emitted when a Spotter conversation is renamed.
4002
+ * @example
4003
+ * ```js
4004
+ * spotterEmbed.on(EmbedEvent.SpotterConversationRenamed, (payload) => {
4005
+ * console.log('Conversation renamed', payload);
4006
+ * // payload: { convId: string, oldTitle: string, newTitle: string }
4007
+ * })
4008
+ * ```
4009
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
4010
+ */
4011
+ SpotterConversationRenamed = "spotterConversationRenamed",
4012
+ /**
4013
+ * Emitted when a Spotter conversation is deleted.
4014
+ * @example
4015
+ * ```js
4016
+ * spotterEmbed.on(EmbedEvent.SpotterConversationDeleted, (payload) => {
4017
+ * console.log('Conversation deleted', payload);
4018
+ * // payload: { convId: string, title: string }
4019
+ * })
4020
+ * ```
4021
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
4022
+ */
4023
+ SpotterConversationDeleted = "spotterConversationDeleted",
4024
+ /**
4025
+ * Emitted when a Spotter conversation is selected/clicked.
4026
+ * @example
4027
+ * ```js
4028
+ * spotterEmbed.on(EmbedEvent.SpotterConversationSelected, (payload) => {
4029
+ * console.log('Conversation selected', payload);
4030
+ * // payload: { convId: string, title: string, worksheetId: string }
4031
+ * })
4032
+ * ```
4033
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
4034
+ */
4035
+ SpotterConversationSelected = "spotterConversationSelected",
4036
+ /**
4037
+ * @hidden
4038
+ * Emitted when the auth token is about to get expired and needs to be refreshed.
4039
+ * @example
4040
+ * ```js
4041
+ * embed.on(EmbedEvent.RefreshAuthToken, (payload) => {
4042
+ * console.log('payload', payload);
4043
+ * })
4044
+ * ```
4045
+ * @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl
4046
+ */
4047
+ RefreshAuthToken = "RefreshAuthToken"
3913
4048
  }
3914
4049
  /**
3915
4050
  * Event types that can be triggered by the host application
@@ -5291,7 +5426,18 @@ export declare enum HostEvent {
5291
5426
  * ```
5292
5427
  * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
5293
5428
  */
5294
- StartNewSpotterConversation = "StartNewSpotterConversation"
5429
+ StartNewSpotterConversation = "StartNewSpotterConversation",
5430
+ /**
5431
+ * @hidden
5432
+ * Get the current context of the embedded page.
5433
+ *
5434
+ * @example
5435
+ * ```js
5436
+ * const context = await liveboardEmbed.trigger(HostEvent.GetPageContext);
5437
+ * ```
5438
+ * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
5439
+ */
5440
+ GetPageContext = "GetPageContext"
5295
5441
  }
5296
5442
  /**
5297
5443
  * The different visual modes that the data sources panel within
@@ -6734,6 +6880,96 @@ export declare enum Action {
6734
6880
  * @version SDK: 1.44.0 | ThoughtSpot Cloud: 26.2.0.cl
6735
6881
  */
6736
6882
  UngroupLiveboardGroup = "ungroupLiveboardGroup",
6883
+ /**
6884
+ * Controls visibility of the sidebar header (title and toggle button)
6885
+ * in the Spotter past conversations sidebar.
6886
+ * @example
6887
+ * ```js
6888
+ * hiddenActions: [Action.SpotterSidebarHeader]
6889
+ * ```
6890
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
6891
+ */
6892
+ SpotterSidebarHeader = "spotterSidebarHeader",
6893
+ /**
6894
+ * Controls visibility of the sidebar footer (documentation link)
6895
+ * in the Spotter past conversations sidebar.
6896
+ * @example
6897
+ * ```js
6898
+ * hiddenActions: [Action.SpotterSidebarFooter]
6899
+ * ```
6900
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
6901
+ */
6902
+ SpotterSidebarFooter = "spotterSidebarFooter",
6903
+ /**
6904
+ * Controls visibility and disable state of the sidebar toggle/expand button
6905
+ * in the Spotter past conversations sidebar.
6906
+ * @example
6907
+ * ```js
6908
+ * disabledActions: [Action.SpotterSidebarToggle]
6909
+ * ```
6910
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
6911
+ */
6912
+ SpotterSidebarToggle = "spotterSidebarToggle",
6913
+ /**
6914
+ * Controls visibility and disable state of the "New Chat" button
6915
+ * in the Spotter past conversations sidebar.
6916
+ * @example
6917
+ * ```js
6918
+ * disabledActions: [Action.SpotterNewChat]
6919
+ * ```
6920
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
6921
+ */
6922
+ SpotterNewChat = "spotterNewChat",
6923
+ /**
6924
+ * Controls visibility of the past conversation banner alert
6925
+ * in the Spotter interface.
6926
+ * @example
6927
+ * ```js
6928
+ * hiddenActions: [Action.SpotterPastChatBanner]
6929
+ * ```
6930
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
6931
+ */
6932
+ SpotterPastChatBanner = "spotterPastChatBanner",
6933
+ /**
6934
+ * Controls visibility and disable state of the conversation edit menu
6935
+ * (three-dot menu) in the Spotter past conversations sidebar.
6936
+ * @example
6937
+ * ```js
6938
+ * disabledActions: [Action.SpotterChatMenu]
6939
+ * ```
6940
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
6941
+ */
6942
+ SpotterChatMenu = "spotterChatMenu",
6943
+ /**
6944
+ * Controls visibility and disable state of the rename action
6945
+ * in the Spotter conversation edit menu.
6946
+ * @example
6947
+ * ```js
6948
+ * disabledActions: [Action.SpotterChatRename]
6949
+ * ```
6950
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
6951
+ */
6952
+ SpotterChatRename = "spotterChatRename",
6953
+ /**
6954
+ * Controls visibility and disable state of the delete action
6955
+ * in the Spotter conversation edit menu.
6956
+ * @example
6957
+ * ```js
6958
+ * disabledActions: [Action.SpotterChatDelete]
6959
+ * ```
6960
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
6961
+ */
6962
+ SpotterChatDelete = "spotterChatDelete",
6963
+ /**
6964
+ * Controls visibility and disable state of the documentation/best practices
6965
+ * link in the Spotter sidebar footer.
6966
+ * @example
6967
+ * ```js
6968
+ * disabledActions: [Action.SpotterDocs]
6969
+ * ```
6970
+ * @version SDK: 1.46.0 | ThoughtSpot Cloud: 26.3.0.cl
6971
+ */
6972
+ SpotterDocs = "spotterDocs",
6737
6973
  /**
6738
6974
  * The **Include current period** checkbox for date filters.
6739
6975
  * Controls the visibility and availability of the option to include
@@ -6901,9 +7137,9 @@ declare enum EmbedErrorCodes {
6901
7137
  WORKSHEET_ID_NOT_FOUND = "WORKSHEET_ID_NOT_FOUND",
6902
7138
  /** Required Liveboard ID is missing from configuration */
6903
7139
  LIVEBOARD_ID_MISSING = "LIVEBOARD_ID_MISSING",
6904
- /** Conflicting action configuration detected (e.g., both hiddenActions and visibleActions specified) */
7140
+ /** Conflicting action configuration detected */
6905
7141
  CONFLICTING_ACTIONS_CONFIG = "CONFLICTING_ACTIONS_CONFIG",
6906
- /** Conflicting tab configuration detected (e.g., both hiddenTabs and visibleTabs specified) */
7142
+ /** Conflicting tab configuration detected */
6907
7143
  CONFLICTING_TABS_CONFIG = "CONFLICTING_TABS_CONFIG",
6908
7144
  /** Error during component initialization */
6909
7145
  INIT_ERROR = "INIT_ERROR",
@@ -6920,7 +7156,9 @@ declare enum EmbedErrorCodes {
6920
7156
  /** Error parsing api intercept body */
6921
7157
  PARSING_API_INTERCEPT_BODY_ERROR = "PARSING_API_INTERCEPT_BODY_ERROR",
6922
7158
  /** Failed to update embed parameters during pre-render */
6923
- UPDATE_PARAMS_FAILED = "UPDATE_PARAMS_FAILED"
7159
+ UPDATE_PARAMS_FAILED = "UPDATE_PARAMS_FAILED",
7160
+ /** Invalid URL provided in configuration */
7161
+ INVALID_URL = "INVALID_URL"
6924
7162
  }
6925
7163
  /**
6926
7164
  * Error event object emitted when an error occurs in an embedded component.
@@ -6933,7 +7171,7 @@ declare enum EmbedErrorCodes {
6933
7171
  *
6934
7172
  * - **errorType**: One of the predefined {@link ErrorDetailsTypes} values
6935
7173
  * - **message**: Human-readable error description (string or array of strings for multiple errors)
6936
- * - **code**: Machine-readable error identifier for programmatic handling
7174
+ * - **code**: Machine-readable error identifier {@link EmbedErrorCodes} values
6937
7175
  * - **[key: string]**: Additional context-specific for backward compatibility
6938
7176
  *
6939
7177
  * ## Usage
@@ -6943,12 +7181,11 @@ declare enum EmbedErrorCodes {
6943
7181
  *
6944
7182
  * @version SDK: 1.44.2 | ThoughtSpot: 26.2.0.cl
6945
7183
  * @group Error Handling
6946
- * @see {@link ErrorDetailsTypes} - Available error type values
6947
- * @see {@link EmbedEvent.Error} - The event that emits this object
6948
7184
  *
6949
7185
  * @example
6950
7186
  * Handle specific error types
6951
7187
  *
7188
+ * ```js
6952
7189
  * embed.on(EmbedEvent.Error, (error) => {
6953
7190
  * switch (error.code) {
6954
7191
  * case EmbedErrorCodes.WORKSHEET_ID_NOT_FOUND:
@@ -6958,30 +7195,18 @@ declare enum EmbedErrorCodes {
6958
7195
  * console.error('Unknown error:', error);
6959
7196
  * }
6960
7197
  * });
6961
- * *
7198
+ * ```
6962
7199
  * @example
6963
7200
  * Handle multiple error messages
6964
7201
  *
7202
+ * ```js
6965
7203
  * embed.on(EmbedEvent.Error, (error) => {
6966
7204
  * const messages = Array.isArray(error.message)
6967
7205
  * ? error.message
6968
7206
  * : [error.message];
6969
- *
6970
7207
  * messages.forEach(msg => console.error(msg));
6971
7208
  * });
6972
- * *
6973
- * @example
6974
- * Access additional error context
6975
- *
6976
- * embed.on(EmbedEvent.Error, (error) => {
6977
- * console.error('Error Details:', {
6978
- * type: error.errorType,
6979
- * message: error.message,
6980
- * code: error.code,
6981
- * // Additional context fields vary by error type
6982
- * ...error
6983
- * });
6984
- * });
7209
+ * ```
6985
7210
  * */
6986
7211
  export interface EmbedErrorDetailsEvent {
6987
7212
  /** The type of error that occurred */
@@ -6993,6 +7218,24 @@ export interface EmbedErrorDetailsEvent {
6993
7218
  /** Additional context-specific for backward compatibility */
6994
7219
  [key: string]: any;
6995
7220
  }
7221
+ declare enum ContextType {
7222
+ /**
7223
+ * Search answer context for search page or edit viz dialog on liveboard page.
7224
+ */
7225
+ Search = "search-answer",
7226
+ /**
7227
+ * Liveboard context for liveboard page.
7228
+ */
7229
+ Liveboard = "liveboard",
7230
+ /**
7231
+ * Answer context for explore modal/page on liveboard page.
7232
+ */
7233
+ Answer = "answer",
7234
+ /**
7235
+ * Spotter context for spotter modal/page.
7236
+ */
7237
+ Spotter = "spotter"
7238
+ }
6996
7239
  export interface DefaultAppInitData {
6997
7240
  customisations: CustomisationsInterface;
6998
7241
  authToken: string;
@@ -7068,6 +7311,89 @@ export type ApiInterceptFlags = {
7068
7311
  */
7069
7312
  interceptTimeout?: number;
7070
7313
  };
7314
+ /**
7315
+ * Object IDs for the embedded component.
7316
+ * @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl
7317
+ */
7318
+ export interface ObjectIds {
7319
+ /**
7320
+ * Liveboard ID.
7321
+ */
7322
+ liveboardId?: string;
7323
+ /**
7324
+ * Answer ID.
7325
+ */
7326
+ answerId?: string;
7327
+ /**
7328
+ * Viz IDs.
7329
+ */
7330
+ vizIds?: string[];
7331
+ /**
7332
+ * Data model IDs.
7333
+ */
7334
+ dataModelIds?: string[];
7335
+ /**
7336
+ * Modal title.
7337
+ */
7338
+ modalTitle?: string;
7339
+ }
7340
+ /**
7341
+ * Context object for the embedded component.
7342
+ * @example
7343
+ * ```js
7344
+ * const context = await embed.getCurrentContext();
7345
+ * console.log(context);
7346
+ * {
7347
+ * stack: [
7348
+ * {
7349
+ * name: 'Liveboard',
7350
+ * type: ContextType.Liveboard,
7351
+ * objectIds: {
7352
+ * liveboardId: '123',
7353
+ * },
7354
+ * },
7355
+ * ],
7356
+ * currentContext: {
7357
+ * name: 'Liveboard',
7358
+ * type: ContextType.Liveboard,
7359
+ * objectIds: {
7360
+ * liveboardId: '123',
7361
+ * },
7362
+ * },
7363
+ * }
7364
+ * ```
7365
+ * @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl
7366
+ */
7367
+ export interface ContextObject {
7368
+ /**
7369
+ * Stack of context objects.
7370
+ */
7371
+ stack: Array<{
7372
+ /**
7373
+ * Name of the context object.
7374
+ */
7375
+ name: string;
7376
+ /**
7377
+ * Type of the context object.
7378
+ */
7379
+ type: ContextType;
7380
+ /**
7381
+ * Object IDs of the context object.
7382
+ */
7383
+ objectIds: ObjectIds;
7384
+ }>;
7385
+ /**
7386
+ * Current context object.
7387
+ */
7388
+ currentContext: {
7389
+ /**
7390
+ * Name of the current context object.
7391
+ */
7392
+ name: string;
7393
+ type: ContextType;
7394
+ objectIds: ObjectIds;
7395
+ };
7396
+ }
7071
7397
  /**
7072
7398
  * Enum for auth failure types. This is the parameter passed to the listner
7073
7399
  * of {@link AuthStatus.FAILURE}.
@@ -7254,9 +7580,9 @@ export type EmbedApiHostEventMapping = {
7254
7580
  [HostEvent.SaveAnswer]: UIPassthroughEvent.SaveAnswer;
7255
7581
  };
7256
7582
  export type HostEventRequest<HostEventT extends HostEvent> = HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughRequest<EmbedApiHostEventMapping[HostEventT]> : any;
7257
- export type HostEventResponse<HostEventT extends HostEvent> = HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughResponse<EmbedApiHostEventMapping[HostEventT]> : any;
7583
+ export type HostEventResponse<HostEventT extends HostEvent, ContextT extends ContextType> = HostEventT extends keyof EmbedApiHostEventMapping ? UIPassthroughResponse<EmbedApiHostEventMapping[HostEventT]> : any;
7258
7584
  export type TriggerPayload<PayloadT, HostEventT extends HostEvent> = PayloadT | HostEventRequest<HostEventT>;
7259
- export type TriggerResponse<PayloadT, HostEventT extends HostEvent> = PayloadT extends HostEventRequest<HostEventT> ? HostEventResponse<HostEventT> : any;
7585
+ export type TriggerResponse<PayloadT, HostEventT extends HostEvent, ContextT extends ContextType> = PayloadT extends HostEventRequest<HostEventT> ? HostEventResponse<HostEventT, ContextT> : any;
7260
7586
  declare class HostEventClient {
7261
7587
  iFrame: HTMLIFrameElement;
7262
7588
  constructor(iFrame?: HTMLIFrameElement);
@@ -7266,18 +7592,18 @@ declare class HostEventClient {
7266
7592
  * @param {any} data Data to send with the host event
7267
7593
  * @returns {Promise<any>} - the response from the process trigger
7268
7594
  */
7269
- protected processTrigger(message: HostEvent, data: any): Promise<any>;
7270
- handleHostEventWithParam<UIPassthroughEventT extends UIPassthroughEvent>(apiName: UIPassthroughEventT, parameters: UIPassthroughRequest<UIPassthroughEventT>): Promise<UIPassthroughResponse<UIPassthroughEventT>>;
7271
- hostEventFallback(hostEvent: HostEvent, data: any): Promise<any>;
7595
+ protected processTrigger(message: HostEvent, data: any, context?: ContextType): Promise<any>;
7596
+ handleHostEventWithParam<UIPassthroughEventT extends UIPassthroughEvent>(apiName: UIPassthroughEventT, parameters: UIPassthroughRequest<UIPassthroughEventT>, context?: ContextType): Promise<UIPassthroughResponse<UIPassthroughEventT>>;
7597
+ hostEventFallback(hostEvent: HostEvent, data: any, context?: ContextType): Promise<any>;
7272
7598
  /**
7273
7599
  * Setter for the iframe element used for host events
7274
7600
  * @param {HTMLIFrameElement} iFrame - the iframe element to set
7275
7601
  */
7276
7602
  setIframeElement(iFrame: HTMLIFrameElement): void;
7277
- triggerUIPassthroughApi<UIPassthroughEventT extends UIPassthroughEvent>(apiName: UIPassthroughEventT, parameters: UIPassthroughRequest<UIPassthroughEventT>): Promise<UIPassthroughArrayResponse<UIPassthroughEventT>>;
7278
- protected handlePinEvent(payload: HostEventRequest<HostEvent.Pin>): Promise<HostEventResponse<HostEvent.Pin>>;
7279
- protected handleSaveAnswerEvent(payload: HostEventRequest<HostEvent.SaveAnswer>): Promise<any>;
7280
- triggerHostEvent<HostEventT extends HostEvent, PayloadT>(hostEvent: HostEventT, payload?: TriggerPayload<PayloadT, HostEventT>): Promise<TriggerResponse<PayloadT, HostEventT>>;
7603
+ triggerUIPassthroughApi<UIPassthroughEventT extends UIPassthroughEvent>(apiName: UIPassthroughEventT, parameters: UIPassthroughRequest<UIPassthroughEventT>, context?: ContextType): Promise<UIPassthroughArrayResponse<UIPassthroughEventT>>;
7604
+ protected handlePinEvent(payload: HostEventRequest<HostEvent.Pin>, context?: ContextType): Promise<HostEventResponse<HostEvent.Pin, ContextType>>;
7605
+ protected handleSaveAnswerEvent(payload: HostEventRequest<HostEvent.SaveAnswer>, context?: ContextType): Promise<any>;
7606
+ triggerHostEvent<HostEventT extends HostEvent, PayloadT, ContextT extends ContextType>(hostEvent: HostEventT, payload?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextType>>;
7281
7607
  }
7282
7608
  declare class TsEmbed {
7283
7609
  /**
@@ -7424,6 +7750,21 @@ declare class TsEmbed {
7424
7750
  * @param responder
7425
7751
  */
7426
7752
  private appInitCb;
7753
+ /**
7754
+ * Helper method to refresh/update auth token for TrustedAuthTokenCookieless auth type
7755
+ * @param responder - Function to send response back
7756
+ * @param eventType - The embed event type to send
7757
+ * @param forceRefresh - Whether to force refresh the token
7758
+ * @returns Promise that resolves if token was refreshed, rejects otherwise
7759
+ */
7760
+ private refreshAuthTokenForCookieless;
7761
+ private handleAuthFailure;
7762
+ /**
7763
+ * Refresh the auth token if the autoLogin is true and the authType is TrustedAuthTokenCookieless
7764
+ * @param _
7765
+ * @param responder
7766
+ */
7767
+ private tokenRefresh;
7427
7768
  /**
7428
7769
  * Sends updated auth token to the iFrame to avoid user logout
7429
7770
  * @param _
@@ -7599,7 +7940,7 @@ declare class TsEmbed {
7599
7940
  * @param {any} data The payload to send with the message
7600
7941
  * @returns A promise that resolves with the response from the embedded app
7601
7942
  */
7602
- trigger<HostEventT extends HostEvent, PayloadT>(messageType: HostEventT, data?: TriggerPayload<PayloadT, HostEventT>): Promise<TriggerResponse<PayloadT, HostEventT>>;
7943
+ trigger<HostEventT extends HostEvent, PayloadT, ContextT extends ContextType>(messageType: HostEventT, data?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>>;
7603
7944
  /**
7604
7945
  * Triggers an event to the embedded app, skipping the UI flow.
7605
7946
  * @param {UIPassthroughEvent} apiName - The name of the API to be triggered.
@@ -7617,6 +7958,12 @@ declare class TsEmbed {
7617
7958
  render(): Promise<TsEmbed>;
7618
7959
  getIframeSrc(): string;
7619
7960
  protected handleRenderForPrerender(): Promise<TsEmbed>;
7961
+ /**
7962
+ * Get the current context of the embedded TS component.
7963
+ * @returns The current context object containing the page type and object ids.
7964
+ * @version SDK: 1.45.2 | ThoughtSpot: 26.3.0.cl
7965
+ */
7966
+ getCurrentContext(): Promise<ContextObject>;
7620
7967
  /**
7621
7968
  * Creates the preRender shell
7622
7969
  * @param showPreRenderByDefault - Show the preRender after render, hidden by default
@@ -8306,65 +8653,394 @@ declare class SageEmbed extends V1Embed {
8306
8653
  */
8307
8654
  render(): Promise<SageEmbed>;
8308
8655
  }
8656
+ interface SearchOptions$2 {
8657
+ /**
8658
+ * The query string to pass to start the Conversation.
8659
+ */
8660
+ searchQuery: string;
8661
+ }
8309
8662
  /**
8310
- * Pages within the ThoughtSpot app that can be embedded.
8663
+ * Configuration for the Spotter sidebar.
8664
+ * Can be used in SpotterEmbed and AppEmbed.
8665
+ * @group Embed components
8666
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8311
8667
  */
8312
- export declare enum Page {
8668
+ export interface SpotterSidebarViewConfig {
8313
8669
  /**
8314
- * Home page
8670
+ * Controls the visibility of the past conversations sidebar.
8671
+ * @default false
8672
+ * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
8315
8673
  */
8316
- Home = "home",
8674
+ enablePastConversationsSidebar?: boolean;
8317
8675
  /**
8318
- * Search page
8676
+ * Custom title text for the sidebar header.
8677
+ * Defaults to translated "Spotter" text.
8678
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8319
8679
  */
8320
- Search = "search",
8680
+ spotterSidebarTitle?: string;
8321
8681
  /**
8322
- * Saved answers listing page
8682
+ * Boolean to set the default expanded state of the sidebar.
8683
+ * @default false
8684
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8323
8685
  */
8324
- Answers = "answers",
8686
+ spotterSidebarDefaultExpanded?: boolean;
8325
8687
  /**
8326
- * Liveboards listing page
8688
+ * Custom label text for the rename action in the conversation edit menu.
8689
+ * Defaults to translated "Rename" text.
8690
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8327
8691
  */
8328
- Liveboards = "liveboards",
8692
+ spotterChatRenameLabel?: string;
8329
8693
  /**
8330
- * @hidden
8694
+ * Custom label text for the delete action in the conversation edit menu.
8695
+ * Defaults to translated "DELETE" text.
8696
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8331
8697
  */
8332
- Pinboards = "pinboards",
8698
+ spotterChatDeleteLabel?: string;
8333
8699
  /**
8334
- * Data management page
8700
+ * Custom title text for the delete conversation confirmation modal.
8701
+ * Defaults to translated "Delete chat" text.
8702
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8335
8703
  */
8336
- Data = "data",
8704
+ spotterDeleteConversationModalTitle?: string;
8337
8705
  /**
8338
- * SpotIQ listing page
8706
+ * Custom message text for the past conversation banner alert.
8707
+ * Defaults to translated alert message.
8708
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8339
8709
  */
8340
- SpotIQ = "insights",
8710
+ spotterPastConversationAlertMessage?: string;
8341
8711
  /**
8342
- * Monitor Alerts Page
8712
+ * Custom URL for the documentation/best practices link.
8713
+ * Defaults to ThoughtSpot docs URL based on release version.
8714
+ * Note: URL must include the protocol (e.g., `https://www.example.com`).
8715
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8343
8716
  */
8344
- Monitor = "monitor"
8345
- }
8346
- /**
8347
- * Define the initial state os column custom group accordions
8348
- * in data panel v2.
8349
- */
8350
- declare enum DataPanelCustomColumnGroupsAccordionState$1 {
8717
+ spotterDocumentationUrl?: string;
8351
8718
  /**
8352
- * Expand all the accordion initially in data panel v2.
8719
+ * Custom label text for the best practices button in the footer.
8720
+ * Defaults to translated "Best Practices" text.
8721
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8353
8722
  */
8354
- EXPAND_ALL = "EXPAND_ALL",
8723
+ spotterBestPracticesLabel?: string;
8355
8724
  /**
8356
- * Collapse all the accordions initially in data panel v2.
8725
+ * Number of conversations to fetch per batch when loading conversation history.
8726
+ * @default 30
8727
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8357
8728
  */
8358
- COLLAPSE_ALL = "COLLAPSE_ALL",
8729
+ spotterConversationsBatchSize?: number;
8359
8730
  /**
8360
- * Expand the first accordion and collapse the rest.
8731
+ * Custom title text for the "New Chat" button in the sidebar.
8732
+ * Defaults to translated "New Chat" text.
8733
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8361
8734
  */
8362
- EXPAND_FIRST = "EXPAND_FIRST"
8735
+ spotterNewChatButtonTitle?: string;
8363
8736
  }
8364
- declare enum HomePageSearchBarMode {
8365
- OBJECT_SEARCH = "objectSearch",
8366
- AI_ANSWER = "aiAnswer",
8367
- NONE = "none"
8737
+ /**
8738
+ * Configuration for customizing Spotter chat UI branding.
8739
+ * @group Embed components
8740
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.4.0.cl
8741
+ */
8742
+ export interface SpotterChatViewConfig {
8743
+ /**
8744
+ * Hides the ThoughtSpot logo/icon in tool response
8745
+ * cards. The branding label prefix is controlled
8746
+ * separately via `toolResponseCardBrandingLabel`.
8747
+ * External MCP tool branding is not affected.
8748
+ * @default false
8749
+ */
8750
+ hideToolResponseCardBranding?: boolean;
8751
+ /**
8752
+ * Custom label to replace the "ThoughtSpot" prefix
8753
+ * in tool response cards. Set to an empty string
8754
+ * `''` to hide the prefix entirely. Works
8755
+ * independently of `hideToolResponseCardBranding`.
8756
+ * External MCP tool branding is not affected.
8757
+ */
8758
+ toolResponseCardBrandingLabel?: string;
8759
+ }
8760
+ /**
8761
+ * The configuration for the embedded spotterEmbed options.
8762
+ * @group Embed components
8763
+ */
8764
+ export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAction"> {
8765
+ /**
8766
+ * The ID of the data source object. For example, Model, View, or Table. Spotter uses
8767
+ * this object to query data and generate Answers.
8768
+ */
8769
+ worksheetId: string;
8770
+ /**
8771
+ * Ability to pass a starting search query to the conversation.
8772
+ */
8773
+ searchOptions?: SearchOptions$2;
8774
+ /**
8775
+ * disableSourceSelection : Disables data source selection
8776
+ * but still display the selected data source.
8777
+ *
8778
+ * Supported embed types: `SpotterEmbed`
8779
+ * @example
8780
+ * ```js
8781
+ * const embed = new SpotterEmbed('#tsEmbed', {
8782
+ * ... //other embed view config
8783
+ * disableSourceSelection : true,
8784
+ * })
8785
+ * ```
8786
+ * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
8787
+ */
8788
+ disableSourceSelection?: boolean;
8789
+ /**
8790
+ * hideSourceSelection : Hide data source selection
8791
+ *
8792
+ * Supported embed types: `SpotterEmbed`
8793
+ * @example
8794
+ * ```js
8795
+ * const embed = new SpotterEmbed('#tsEmbed', {
8796
+ * ... //other embed view config
8797
+ * hideSourceSelection : true,
8798
+ * })
8799
+ * ```
8800
+ * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
8801
+ */
8802
+ hideSourceSelection?: boolean;
8803
+ /**
8804
+ * Flag to control Data panel experience
8805
+ *
8806
+ * Supported embed types: `SageEmbed`, `AppEmbed`, `SearchBarEmbed`, `LiveboardEmbed`, `SearchEmbed`
8807
+ * @default true
8808
+ * @version SDK: 1.41.1 | ThoughtSpot Cloud: 10.14.0.cl
8809
+ * @example
8810
+ * ```js
8811
+ * // Replace <EmbedComponent> with embed component name. For example, SageEmbed, AppEmbed, or SearchBarEmbed
8812
+ * const embed = new <EmbedComponent>('#tsEmbed', {
8813
+ * ... // other embed view config
8814
+ * dataPanelV2: true,
8815
+ * })
8816
+ * ```
8817
+ */
8818
+ dataPanelV2?: boolean;
8819
+ /**
8820
+ * showSpotterLimitations : show limitation text
8821
+ * of the spotter underneath the chat input.
8822
+ * default is false.
8823
+ *
8824
+ * Supported embed types: `SpotterEmbed`
8825
+ * @example
8826
+ * ```js
8827
+ * const embed = new SpotterEmbed('#tsEmbed', {
8828
+ * ... //other embed view config
8829
+ * showSpotterLimitations : true,
8830
+ * })
8831
+ * ```
8832
+ * @version SDK: 1.36.0 | ThoughtSpot: 10.5.0.cl
8833
+ */
8834
+ showSpotterLimitations?: boolean;
8835
+ /**
8836
+ * hideSampleQuestions : Hide sample questions on
8837
+ * the initial screen of the conversation.
8838
+ *
8839
+ * Supported embed types: `SpotterEmbed`
8840
+ * @example
8841
+ * ```js
8842
+ * const embed = new SpotterEmbed('#tsEmbed', {
8843
+ * ... //other embed view config
8844
+ * hideSampleQuestions : true,
8845
+ * })
8846
+ * ```
8847
+ * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
8848
+ */
8849
+ hideSampleQuestions?: boolean;
8850
+ /**
8851
+ * The list of runtime filters to apply to a search Answer,
8852
+ * visualization, or Liveboard.
8853
+ *
8854
+ * Supported embed types: `SpotterEmbed`
8855
+ * @example
8856
+ * ```js
8857
+ * const embed = new SpotterEmbed('#tsEmbed', {
8858
+ * // other embed view config
8859
+ * runtimeFilters: [
8860
+ * {
8861
+ * columnName: 'color',
8862
+ * operator: RuntimeFilterOp.EQ,
8863
+ * values: ['red'],
8864
+ * },
8865
+ * ],
8866
+ * })
8867
+ * ```
8868
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.13.0.cl
8869
+ */
8870
+ runtimeFilters?: RuntimeFilter[];
8871
+ /**
8872
+ * Flag to control whether runtime filters should be included in the URL.
8873
+ * If true, filters will be passed via app initialization payload
8874
+ * (default behavior from SDK 1.45.0).
8875
+ * If false/undefined, filters are appended to the iframe URL instead.
8876
+ * (default behavior before SDK 1.45.0).
8877
+ *
8878
+ * Supported embed types: `SpotterEmbed`
8879
+ * @default true
8880
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.13.0.cl
8881
+ */
8882
+ excludeRuntimeFiltersfromURL?: boolean;
8883
+ /**
8884
+ * The list of runtime parameters to apply to the conversation.
8885
+ *
8886
+ * Supported embed types: `SpotterEmbed`
8887
+ * @example
8888
+ * ```js
8889
+ * const embed = new SpotterEmbed('#tsEmbed', {
8890
+ * // other embed view config
8891
+ * runtimeParameters: [
8892
+ * {
8893
+ * name: 'Integer Param',
8894
+ * value: 10,
8895
+ * },
8896
+ * ],
8897
+ * })
8898
+ * ```
8899
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.13.0.cl
8900
+ */
8901
+ runtimeParameters?: RuntimeParameter[];
8902
+ /**
8903
+ * Flag to control whether runtime parameters should be included in the URL.
8904
+ * If true, parameters will be passed via app
8905
+ * initialization payload (default behavior from SDK 1.45.0).
8906
+ * If false/undefined, parameters are appended to
8907
+ * the iframe URL instead (default behavior before SDK 1.45.0).
8908
+ *
8909
+ * Supported embed types: `SpotterEmbed`
8910
+ * @default true
8911
+ * @version SDK: 1.41.0 | ThoughtSpot: 10.13.0.cl
8912
+ */
8913
+ excludeRuntimeParametersfromURL?: boolean;
8914
+ /**
8915
+ * updatedSpotterChatPrompt : Controls the updated spotter chat prompt.
8916
+ *
8917
+ * Supported embed types: `SpotterEmbed`
8918
+ * @default false
8919
+ * @example
8920
+ * ```js
8921
+ * const embed = new SpotterEmbed('#tsEmbed', {
8922
+ * ... //other embed view config
8923
+ * updatedSpotterChatPrompt : true,
8924
+ * })
8925
+ * ```
8926
+ * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
8927
+ */
8928
+ updatedSpotterChatPrompt?: boolean;
8929
+ /**
8930
+ * Configuration for the Spotter sidebar UI customization.
8931
+ *
8932
+ * Supported embed types: `SpotterEmbed`, `AppEmbed`
8933
+ * @example
8934
+ * ```js
8935
+ * const embed = new SpotterEmbed('#tsEmbed', {
8936
+ * ... //other embed view config
8937
+ * spotterSidebarConfig: {
8938
+ * enablePastConversationsSidebar: true,
8939
+ * spotterSidebarTitle: 'My Conversations',
8940
+ * spotterSidebarDefaultExpanded: true,
8941
+ * },
8942
+ * })
8943
+ * ```
8944
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
8945
+ */
8946
+ spotterSidebarConfig?: SpotterSidebarViewConfig;
8947
+ /**
8948
+ * Configuration for customizing Spotter chat UI
8949
+ * branding in tool response cards.
8950
+ *
8951
+ * Supported embed types: `SpotterEmbed`
8952
+ * @example
8953
+ * ```js
8954
+ * const embed = new SpotterEmbed('#tsEmbed', {
8955
+ * ... //other embed view config
8956
+ * spotterChatConfig: {
8957
+ * hideToolResponseCardBranding: true,
8958
+ * toolResponseCardBrandingLabel: 'MyBrand',
8959
+ * },
8960
+ * })
8961
+ * ```
8962
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.4.0.cl
8963
+ */
8964
+ spotterChatConfig?: SpotterChatViewConfig;
8965
+ }
8966
+ /**
8967
+ * The configuration for the embedded spotterEmbed options.
8968
+ * @deprecated from SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
8969
+ * Use {@link SpotterEmbedViewConfig} instead
8970
+ * @group Embed components
8971
+ */
8972
+ export interface ConversationViewConfig extends SpotterEmbedViewConfig {
8973
+ }
8974
+ declare class SpotterEmbed extends TsEmbed {
8975
+ protected viewConfig: SpotterEmbedViewConfig;
8976
+ constructor(container: HTMLElement, viewConfig: SpotterEmbedViewConfig);
8977
+ protected getEmbedParamsObject(): Record<any, any>;
8978
+ getIframeSrc(): string;
8979
+ render(): Promise<SpotterEmbed>;
8980
+ }
8981
+ declare class ConversationEmbed extends SpotterEmbed {
8982
+ protected viewConfig: ConversationViewConfig;
8983
+ constructor(container: HTMLElement, viewConfig: ConversationViewConfig);
8984
+ }
8985
+ /**
8986
+ * Pages within the ThoughtSpot app that can be embedded.
8987
+ */
8988
+ export declare enum Page {
8989
+ /**
8990
+ * Home page
8991
+ */
8992
+ Home = "home",
8993
+ /**
8994
+ * Search page
8995
+ */
8996
+ Search = "search",
8997
+ /**
8998
+ * Saved answers listing page
8999
+ */
9000
+ Answers = "answers",
9001
+ /**
9002
+ * Liveboards listing page
9003
+ */
9004
+ Liveboards = "liveboards",
9005
+ /**
9006
+ * @hidden
9007
+ */
9008
+ Pinboards = "pinboards",
9009
+ /**
9010
+ * Data management page
9011
+ */
9012
+ Data = "data",
9013
+ /**
9014
+ * SpotIQ listing page
9015
+ */
9016
+ SpotIQ = "insights",
9017
+ /**
9018
+ * Monitor Alerts Page
9019
+ */
9020
+ Monitor = "monitor"
9021
+ }
9022
+ /**
9023
+ * Define the initial state os column custom group accordions
9024
+ * in data panel v2.
9025
+ */
9026
+ declare enum DataPanelCustomColumnGroupsAccordionState$1 {
9027
+ /**
9028
+ * Expand all the accordion initially in data panel v2.
9029
+ */
9030
+ EXPAND_ALL = "EXPAND_ALL",
9031
+ /**
9032
+ * Collapse all the accordions initially in data panel v2.
9033
+ */
9034
+ COLLAPSE_ALL = "COLLAPSE_ALL",
9035
+ /**
9036
+ * Expand the first accordion and collapse the rest.
9037
+ */
9038
+ EXPAND_FIRST = "EXPAND_FIRST"
9039
+ }
9040
+ declare enum HomePageSearchBarMode {
9041
+ OBJECT_SEARCH = "objectSearch",
9042
+ AI_ANSWER = "aiAnswer",
9043
+ NONE = "none"
8368
9044
  }
8369
9045
  declare enum PrimaryNavbarVersion {
8370
9046
  /**
@@ -8931,6 +9607,42 @@ export interface AppViewConfig extends AllEmbedViewConfig {
8931
9607
  * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
8932
9608
  */
8933
9609
  updatedSpotterChatPrompt?: boolean;
9610
+ /**
9611
+ * Configuration for the Spotter sidebar UI customization.
9612
+ * Only applicable when navigating to Spotter within the app.
9613
+ *
9614
+ * Supported embed types: `AppEmbed`
9615
+ * @example
9616
+ * ```js
9617
+ * const embed = new AppEmbed('#tsEmbed', {
9618
+ * ... //other embed view config
9619
+ * spotterSidebarConfig: {
9620
+ * enablePastConversationsSidebar: true,
9621
+ * spotterSidebarTitle: 'My Conversations',
9622
+ * },
9623
+ * })
9624
+ * ```
9625
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.3.0.cl
9626
+ */
9627
+ spotterSidebarConfig?: SpotterSidebarViewConfig;
9628
+ /**
9629
+ * Configuration for customizing Spotter chat UI
9630
+ * branding in tool response cards.
9631
+ *
9632
+ * Supported embed types: `AppEmbed`
9633
+ * @example
9634
+ * ```js
9635
+ * const embed = new AppEmbed('#tsEmbed', {
9636
+ * ... //other embed view config
9637
+ * spotterChatConfig: {
9638
+ * hideToolResponseCardBranding: true,
9639
+ * toolResponseCardBrandingLabel: 'MyBrand',
9640
+ * },
9641
+ * })
9642
+ * ```
9643
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.4.0.cl
9644
+ */
9645
+ spotterChatConfig?: SpotterChatViewConfig;
8934
9646
  /**
8935
9647
  * This is the minimum height (in pixels) for a full-height App.
8936
9648
  * Setting this height helps resolve issues with empty Apps and
@@ -9195,6 +9907,23 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
9195
9907
  * @version SDK: 1.15.0 | ThoughtSpot: 8.7.0.cl, 8.8.1-sw
9196
9908
  */
9197
9909
  activeTabId?: string;
9910
+ /**
9911
+ * The GUID of a saved personalized view to load.
9912
+ * A personalized view is a saved configuration of a Liveboard
9913
+ * that includes specific filter selections.
9914
+ *
9915
+ * Supported embed types: `LiveboardEmbed`
9916
+ * @example
9917
+ * ```js
9918
+ * const embed = new LiveboardEmbed('#tsEmbed', {
9919
+ * liveboardId: 'liveboard-guid',
9920
+ * personalizedViewId: 'view-guid',
9921
+ * activeTabId: 'tab-guid',
9922
+ * })
9923
+ * ```
9924
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.4.0.cl
9925
+ */
9926
+ personalizedViewId?: string;
9198
9927
  /**
9199
9928
  * Show or hide the tab panel of the embedded Liveboard.
9200
9929
  *
@@ -9448,6 +10177,24 @@ export interface LiveboardViewConfig extends BaseViewConfig, SearchLiveboardComm
9448
10177
  * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
9449
10178
  */
9450
10179
  updatedSpotterChatPrompt?: boolean;
10180
+ /**
10181
+ * Configuration for customizing Spotter chat UI
10182
+ * branding in tool response cards.
10183
+ *
10184
+ * Supported embed types: `LiveboardEmbed`
10185
+ * @example
10186
+ * ```js
10187
+ * const embed = new LiveboardEmbed('#tsEmbed', {
10188
+ * ... //other embed view config
10189
+ * spotterChatConfig: {
10190
+ * hideToolResponseCardBranding: true,
10191
+ * toolResponseCardBrandingLabel: 'MyBrand',
10192
+ * },
10193
+ * })
10194
+ * ```
10195
+ * @version SDK: 1.46.0 | ThoughtSpot: 26.4.0.cl
10196
+ */
10197
+ spotterChatConfig?: SpotterChatViewConfig;
9451
10198
  }
9452
10199
  declare class LiveboardEmbed extends V1Embed {
9453
10200
  protected viewConfig: LiveboardViewConfig;
@@ -9492,6 +10239,7 @@ declare class LiveboardEmbed extends V1Embed {
9492
10239
  liveboardId: string;
9493
10240
  vizId: string;
9494
10241
  activeTabId: string;
10242
+ personalizedViewId: string;
9495
10243
  };
9496
10244
  protected beforePrerenderVisible(): void;
9497
10245
  protected handleRenderForPrerender(): Promise<TsEmbed>;
@@ -9501,7 +10249,7 @@ declare class LiveboardEmbed extends V1Embed {
9501
10249
  * @param {any} data The payload to send with the message
9502
10250
  * @returns A promise that resolves with the response from the embedded app
9503
10251
  */
9504
- trigger<HostEventT extends HostEvent, PayloadT>(messageType: HostEventT, data?: TriggerPayload<PayloadT, HostEventT>): Promise<TriggerResponse<PayloadT, HostEventT>>;
10252
+ trigger<HostEventT extends HostEvent, PayloadT, ContextT extends ContextType>(messageType: HostEventT, data?: TriggerPayload<PayloadT, HostEventT>, context?: ContextT): Promise<TriggerResponse<PayloadT, HostEventT, ContextT>>;
9505
10253
  /**
9506
10254
  * Destroys the ThoughtSpot embed, and remove any nodes from the DOM.
9507
10255
  * @version SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
@@ -9516,7 +10264,7 @@ declare class LiveboardEmbed extends V1Embed {
9516
10264
  * visualization ID and the runtime filters.
9517
10265
  */
9518
10266
  render(): Promise<LiveboardEmbed>;
9519
- navigateToLiveboard(liveboardId: string, vizId?: string, activeTabId?: string): void;
10267
+ navigateToLiveboard(liveboardId: string, vizId?: string, activeTabId?: string, personalizedViewId?: string): void;
9520
10268
  /**
9521
10269
  * Returns the full url of the Liveboard/visualization which can be used to open
9522
10270
  * this Liveboard inside the full ThoughtSpot application in a new tab.
@@ -9563,217 +10311,6 @@ export interface EmbedProps extends EmbedViewConfig {
9563
10311
  className?: string;
9564
10312
  style?: React$1.CSSProperties;
9565
10313
  }
9566
- interface SearchOptions$2 {
9567
- /**
9568
- * The query string to pass to start the Conversation.
9569
- */
9570
- searchQuery: string;
9571
- }
9572
- /**
9573
- * The configuration for the embedded spotterEmbed options.
9574
- * @group Embed components
9575
- */
9576
- export interface SpotterEmbedViewConfig extends Omit<BaseViewConfig, "primaryAction"> {
9577
- /**
9578
- * The ID of the data source object. For example, Model, View, or Table. Spotter uses
9579
- * this object to query data and generate Answers.
9580
- */
9581
- worksheetId: string;
9582
- /**
9583
- * Ability to pass a starting search query to the conversation.
9584
- */
9585
- searchOptions?: SearchOptions$2;
9586
- /**
9587
- * disableSourceSelection : Disables data source selection
9588
- * but still display the selected data source.
9589
- *
9590
- * Supported embed types: `SpotterEmbed`
9591
- * @example
9592
- * ```js
9593
- * const embed = new SpotterEmbed('#tsEmbed', {
9594
- * ... //other embed view config
9595
- * disableSourceSelection : true,
9596
- * })
9597
- * ```
9598
- * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
9599
- */
9600
- disableSourceSelection?: boolean;
9601
- /**
9602
- * hideSourceSelection : Hide data source selection
9603
- *
9604
- * Supported embed types: `SpotterEmbed`
9605
- * @example
9606
- * ```js
9607
- * const embed = new SpotterEmbed('#tsEmbed', {
9608
- * ... //other embed view config
9609
- * hideSourceSelection : true,
9610
- * })
9611
- * ```
9612
- * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
9613
- */
9614
- hideSourceSelection?: boolean;
9615
- /**
9616
- * Flag to control Data panel experience
9617
- *
9618
- * Supported embed types: `SageEmbed`, `AppEmbed`, `SearchBarEmbed`, `LiveboardEmbed`, `SearchEmbed`
9619
- * @default true
9620
- * @version SDK: 1.41.1 | ThoughtSpot Cloud: 10.14.0.cl
9621
- * @example
9622
- * ```js
9623
- * // Replace <EmbedComponent> with embed component name. For example, SageEmbed, AppEmbed, or SearchBarEmbed
9624
- * const embed = new <EmbedComponent>('#tsEmbed', {
9625
- * ... // other embed view config
9626
- * dataPanelV2: true,
9627
- * })
9628
- * ```
9629
- */
9630
- dataPanelV2?: boolean;
9631
- /**
9632
- * showSpotterLimitations : show limitation text
9633
- * of the spotter underneath the chat input.
9634
- * default is false.
9635
- *
9636
- * Supported embed types: `SpotterEmbed`
9637
- * @example
9638
- * ```js
9639
- * const embed = new SpotterEmbed('#tsEmbed', {
9640
- * ... //other embed view config
9641
- * showSpotterLimitations : true,
9642
- * })
9643
- * ```
9644
- * @version SDK: 1.36.0 | ThoughtSpot: 10.5.0.cl
9645
- */
9646
- showSpotterLimitations?: boolean;
9647
- /**
9648
- * hideSampleQuestions : Hide sample questions on
9649
- * the initial screen of the conversation.
9650
- *
9651
- * Supported embed types: `SpotterEmbed`
9652
- * @example
9653
- * ```js
9654
- * const embed = new SpotterEmbed('#tsEmbed', {
9655
- * ... //other embed view config
9656
- * hideSampleQuestions : true,
9657
- * })
9658
- * ```
9659
- * @version SDK: 1.36.0 | ThoughtSpot: 10.6.0.cl
9660
- */
9661
- hideSampleQuestions?: boolean;
9662
- /**
9663
- * The list of runtime filters to apply to a search Answer,
9664
- * visualization, or Liveboard.
9665
- *
9666
- * Supported embed types: `SpotterEmbed`
9667
- * @example
9668
- * ```js
9669
- * const embed = new SpotterEmbed('#tsEmbed', {
9670
- * // other embed view config
9671
- * runtimeFilters: [
9672
- * {
9673
- * columnName: 'color',
9674
- * operator: RuntimeFilterOp.EQ,
9675
- * values: ['red'],
9676
- * },
9677
- * ],
9678
- * })
9679
- * ```
9680
- * @version SDK: 1.41.0 | ThoughtSpot: 10.13.0.cl
9681
- */
9682
- runtimeFilters?: RuntimeFilter[];
9683
- /**
9684
- * Flag to control whether runtime filters should be included in the URL.
9685
- * If true, filters will be passed via app initialization payload
9686
- * (default behavior from SDK 1.45.0).
9687
- * If false/undefined, filters are appended to the iframe URL instead.
9688
- * (default behavior before SDK 1.45.0).
9689
- *
9690
- * Supported embed types: `SpotterEmbed`
9691
- * @default true
9692
- * @version SDK: 1.41.0 | ThoughtSpot: 10.13.0.cl
9693
- */
9694
- excludeRuntimeFiltersfromURL?: boolean;
9695
- /**
9696
- * The list of runtime parameters to apply to the conversation.
9697
- *
9698
- * Supported embed types: `SpotterEmbed`
9699
- * @example
9700
- * ```js
9701
- * const embed = new SpotterEmbed('#tsEmbed', {
9702
- * // other embed view config
9703
- * runtimeParameters: [
9704
- * {
9705
- * name: 'Integer Param',
9706
- * value: 10,
9707
- * },
9708
- * ],
9709
- * })
9710
- * ```
9711
- * @version SDK: 1.41.0 | ThoughtSpot: 10.13.0.cl
9712
- */
9713
- runtimeParameters?: RuntimeParameter[];
9714
- /**
9715
- * Flag to control whether runtime parameters should be included in the URL.
9716
- * If true, parameters will be passed via app
9717
- * initialization payload (default behavior from SDK 1.45.0).
9718
- * If false/undefined, parameters are appended to
9719
- * the iframe URL instead (default behavior before SDK 1.45.0).
9720
- *
9721
- * Supported embed types: `SpotterEmbed`
9722
- * @default true
9723
- * @version SDK: 1.41.0 | ThoughtSpot: 10.13.0.cl
9724
- */
9725
- excludeRuntimeParametersfromURL?: boolean;
9726
- /**
9727
- * enablePastConversationsSidebar : Controls the visibility of the past conversations
9728
- * sidebar.
9729
- *
9730
- * Supported embed types: `SpotterEmbed`
9731
- * @default false
9732
- * @example
9733
- * ```js
9734
- * const embed = new SpotterEmbed('#tsEmbed', {
9735
- * ... //other embed view config
9736
- * enablePastConversationsSidebar : true,
9737
- * })
9738
- * ```
9739
- * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
9740
- */
9741
- enablePastConversationsSidebar?: boolean;
9742
- /**
9743
- * updatedSpotterChatPrompt : Controls the updated spotter chat prompt.
9744
- *
9745
- * Supported embed types: `SpotterEmbed`
9746
- * @default false
9747
- * @example
9748
- * ```js
9749
- * const embed = new SpotterEmbed('#tsEmbed', {
9750
- * ... //other embed view config
9751
- * updatedSpotterChatPrompt : true,
9752
- * })
9753
- * ```
9754
- * @version SDK: 1.45.0 | ThoughtSpot: 26.2.0.cl
9755
- */
9756
- updatedSpotterChatPrompt?: boolean;
9757
- }
9758
- /**
9759
- * The configuration for the embedded spotterEmbed options.
9760
- * @deprecated from SDK: 1.39.0 | ThoughtSpot: 10.10.0.cl
9761
- * Use {@link SpotterEmbedViewConfig} instead
9762
- * @group Embed components
9763
- */
9764
- export interface ConversationViewConfig extends SpotterEmbedViewConfig {
9765
- }
9766
- declare class SpotterEmbed extends TsEmbed {
9767
- protected viewConfig: SpotterEmbedViewConfig;
9768
- constructor(container: HTMLElement, viewConfig: SpotterEmbedViewConfig);
9769
- protected getEmbedParamsObject(): Record<any, any>;
9770
- getIframeSrc(): string;
9771
- render(): Promise<SpotterEmbed>;
9772
- }
9773
- declare class ConversationEmbed extends SpotterEmbed {
9774
- protected viewConfig: ConversationViewConfig;
9775
- constructor(container: HTMLElement, viewConfig: ConversationViewConfig);
9776
- }
9777
10314
  /**
9778
10315
  * Prefetches static resources from the specified URL. Web browsers can then cache the
9779
10316
  * prefetched resources and serve them from the user's local disk to provide faster access