@microsoft/agents-hosting-extensions-teams 0.5.1-g2e246ff274

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 (317) hide show
  1. package/dist/src/activity-extensions/channelInfo.d.ts +38 -0
  2. package/dist/src/activity-extensions/channelInfo.js +17 -0
  3. package/dist/src/activity-extensions/channelInfo.js.map +1 -0
  4. package/dist/src/activity-extensions/index.d.ts +15 -0
  5. package/dist/src/activity-extensions/index.js +25 -0
  6. package/dist/src/activity-extensions/index.js.map +1 -0
  7. package/dist/src/activity-extensions/notificationInfo.d.ts +38 -0
  8. package/dist/src/activity-extensions/notificationInfo.js +17 -0
  9. package/dist/src/activity-extensions/notificationInfo.js.map +1 -0
  10. package/dist/src/activity-extensions/onBehalfOf.d.ts +45 -0
  11. package/dist/src/activity-extensions/onBehalfOf.js +18 -0
  12. package/dist/src/activity-extensions/onBehalfOf.js.map +1 -0
  13. package/dist/src/activity-extensions/teamInfo.d.ts +38 -0
  14. package/dist/src/activity-extensions/teamInfo.js +17 -0
  15. package/dist/src/activity-extensions/teamInfo.js.map +1 -0
  16. package/dist/src/activity-extensions/teamsChannelAccount.d.ts +34 -0
  17. package/dist/src/activity-extensions/teamsChannelAccount.js +7 -0
  18. package/dist/src/activity-extensions/teamsChannelAccount.js.map +1 -0
  19. package/dist/src/activity-extensions/teamsChannelData.d.ts +230 -0
  20. package/dist/src/activity-extensions/teamsChannelData.js +39 -0
  21. package/dist/src/activity-extensions/teamsChannelData.js.map +1 -0
  22. package/dist/src/activity-extensions/teamsChannelDataParser.d.ts +12 -0
  23. package/dist/src/activity-extensions/teamsChannelDataParser.js +19 -0
  24. package/dist/src/activity-extensions/teamsChannelDataParser.js.map +1 -0
  25. package/dist/src/activity-extensions/teamsChannelDataSettings.d.ts +49 -0
  26. package/dist/src/activity-extensions/teamsChannelDataSettings.js +16 -0
  27. package/dist/src/activity-extensions/teamsChannelDataSettings.js.map +1 -0
  28. package/dist/src/activity-extensions/teamsConversationUpdateEvents.d.ts +58 -0
  29. package/dist/src/activity-extensions/teamsConversationUpdateEvents.js +7 -0
  30. package/dist/src/activity-extensions/teamsConversationUpdateEvents.js.map +1 -0
  31. package/dist/src/activity-extensions/teamsMeetingInfo.d.ts +24 -0
  32. package/dist/src/activity-extensions/teamsMeetingInfo.js +15 -0
  33. package/dist/src/activity-extensions/teamsMeetingInfo.js.map +1 -0
  34. package/dist/src/activity-extensions/teamsMessageEvents.d.ts +5 -0
  35. package/dist/src/activity-extensions/teamsMessageEvents.js +7 -0
  36. package/dist/src/activity-extensions/teamsMessageEvents.js.map +1 -0
  37. package/dist/src/activity-extensions/tenantInfo.d.ts +24 -0
  38. package/dist/src/activity-extensions/tenantInfo.js +15 -0
  39. package/dist/src/activity-extensions/tenantInfo.js.map +1 -0
  40. package/dist/src/client/index.d.ts +6 -0
  41. package/dist/src/client/index.js +23 -0
  42. package/dist/src/client/index.js.map +1 -0
  43. package/dist/src/client/teamsConnectorClient.d.ts +146 -0
  44. package/dist/src/client/teamsConnectorClient.js +313 -0
  45. package/dist/src/client/teamsConnectorClient.js.map +1 -0
  46. package/dist/src/client/teamsConnectorClient.types.d.ts +157 -0
  47. package/dist/src/client/teamsConnectorClient.types.js +7 -0
  48. package/dist/src/client/teamsConnectorClient.types.js.map +1 -0
  49. package/dist/src/compat/readReceipInfo.d.ts +31 -0
  50. package/dist/src/compat/readReceipInfo.js +48 -0
  51. package/dist/src/compat/readReceipInfo.js.map +1 -0
  52. package/dist/src/compat/teamsActivityHandler.d.ts +423 -0
  53. package/dist/src/compat/teamsActivityHandler.js +911 -0
  54. package/dist/src/compat/teamsActivityHandler.js.map +1 -0
  55. package/dist/src/file/fileConsentCardResponse.d.ts +26 -0
  56. package/dist/src/file/fileConsentCardResponse.js +7 -0
  57. package/dist/src/file/fileConsentCardResponse.js.map +1 -0
  58. package/dist/src/file/fileUploadInfo.d.ts +29 -0
  59. package/dist/src/file/fileUploadInfo.js +7 -0
  60. package/dist/src/file/fileUploadInfo.js.map +1 -0
  61. package/dist/src/file/index.d.ts +6 -0
  62. package/dist/src/file/index.js +23 -0
  63. package/dist/src/file/index.js.map +1 -0
  64. package/dist/src/index.d.ts +10 -0
  65. package/dist/src/index.js +27 -0
  66. package/dist/src/index.js.map +1 -0
  67. package/dist/src/meeting/index.d.ts +22 -0
  68. package/dist/src/meeting/index.js +39 -0
  69. package/dist/src/meeting/index.js.map +1 -0
  70. package/dist/src/meeting/meeting.d.ts +115 -0
  71. package/dist/src/meeting/meeting.js +257 -0
  72. package/dist/src/meeting/meeting.js.map +1 -0
  73. package/dist/src/meeting/meetingDetails.d.ts +18 -0
  74. package/dist/src/meeting/meetingDetails.js +7 -0
  75. package/dist/src/meeting/meetingDetails.js.map +1 -0
  76. package/dist/src/meeting/meetingDetailsBase.d.ts +15 -0
  77. package/dist/src/meeting/meetingDetailsBase.js +7 -0
  78. package/dist/src/meeting/meetingDetailsBase.js.map +1 -0
  79. package/dist/src/meeting/meetingEndEventDetails.d.ts +12 -0
  80. package/dist/src/meeting/meetingEndEventDetails.js +7 -0
  81. package/dist/src/meeting/meetingEndEventDetails.js.map +1 -0
  82. package/dist/src/meeting/meetingEventDetails.d.ts +12 -0
  83. package/dist/src/meeting/meetingEventDetails.js +7 -0
  84. package/dist/src/meeting/meetingEventDetails.js.map +1 -0
  85. package/dist/src/meeting/meetingInfo.d.ts +24 -0
  86. package/dist/src/meeting/meetingInfo.js +7 -0
  87. package/dist/src/meeting/meetingInfo.js.map +1 -0
  88. package/dist/src/meeting/meetingNotification.d.ts +9 -0
  89. package/dist/src/meeting/meetingNotification.js +7 -0
  90. package/dist/src/meeting/meetingNotification.js.map +1 -0
  91. package/dist/src/meeting/meetingNotificationBase.d.ts +14 -0
  92. package/dist/src/meeting/meetingNotificationBase.js +7 -0
  93. package/dist/src/meeting/meetingNotificationBase.js.map +1 -0
  94. package/dist/src/meeting/meetingNotificationChannelData.d.ts +12 -0
  95. package/dist/src/meeting/meetingNotificationChannelData.js +7 -0
  96. package/dist/src/meeting/meetingNotificationChannelData.js.map +1 -0
  97. package/dist/src/meeting/meetingNotificationRecipientFailureInfo.d.ts +15 -0
  98. package/dist/src/meeting/meetingNotificationRecipientFailureInfo.js +7 -0
  99. package/dist/src/meeting/meetingNotificationRecipientFailureInfo.js.map +1 -0
  100. package/dist/src/meeting/meetingNotificationResponse.d.ts +14 -0
  101. package/dist/src/meeting/meetingNotificationResponse.js +7 -0
  102. package/dist/src/meeting/meetingNotificationResponse.js.map +1 -0
  103. package/dist/src/meeting/meetingParticipantsEventDetails.d.ts +12 -0
  104. package/dist/src/meeting/meetingParticipantsEventDetails.js +7 -0
  105. package/dist/src/meeting/meetingParticipantsEventDetails.js.map +1 -0
  106. package/dist/src/meeting/meetingStageSurface.d.ts +16 -0
  107. package/dist/src/meeting/meetingStageSurface.js +7 -0
  108. package/dist/src/meeting/meetingStageSurface.js.map +1 -0
  109. package/dist/src/meeting/meetingStartEventDetails.d.ts +14 -0
  110. package/dist/src/meeting/meetingStartEventDetails.js +7 -0
  111. package/dist/src/meeting/meetingStartEventDetails.js.map +1 -0
  112. package/dist/src/meeting/meetingSurface.d.ts +10 -0
  113. package/dist/src/meeting/meetingSurface.js +7 -0
  114. package/dist/src/meeting/meetingSurface.js.map +1 -0
  115. package/dist/src/meeting/meetingTabIconSurface.d.ts +17 -0
  116. package/dist/src/meeting/meetingTabIconSurface.js +7 -0
  117. package/dist/src/meeting/meetingTabIconSurface.js.map +1 -0
  118. package/dist/src/meeting/targetedMeetingNotification.d.ts +20 -0
  119. package/dist/src/meeting/targetedMeetingNotification.js +7 -0
  120. package/dist/src/meeting/targetedMeetingNotification.js.map +1 -0
  121. package/dist/src/meeting/targetedMeetingNotificationValue.d.ts +18 -0
  122. package/dist/src/meeting/targetedMeetingNotificationValue.js +7 -0
  123. package/dist/src/meeting/targetedMeetingNotificationValue.js.map +1 -0
  124. package/dist/src/meeting/teamsMeetingMember.d.ts +19 -0
  125. package/dist/src/meeting/teamsMeetingMember.js +7 -0
  126. package/dist/src/meeting/teamsMeetingMember.js.map +1 -0
  127. package/dist/src/meeting/teamsMeetingParticipant.d.ts +25 -0
  128. package/dist/src/meeting/teamsMeetingParticipant.js +7 -0
  129. package/dist/src/meeting/teamsMeetingParticipant.js.map +1 -0
  130. package/dist/src/meeting/userMeetingDetails.d.ts +17 -0
  131. package/dist/src/meeting/userMeetingDetails.js +7 -0
  132. package/dist/src/meeting/userMeetingDetails.js.map +1 -0
  133. package/dist/src/message-actions-payload/index.d.ts +13 -0
  134. package/dist/src/message-actions-payload/index.js +30 -0
  135. package/dist/src/message-actions-payload/index.js.map +1 -0
  136. package/dist/src/message-actions-payload/messageActionsPayload.d.ts +90 -0
  137. package/dist/src/message-actions-payload/messageActionsPayload.js +7 -0
  138. package/dist/src/message-actions-payload/messageActionsPayload.js.map +1 -0
  139. package/dist/src/message-actions-payload/messageActionsPayloadApp.d.ts +25 -0
  140. package/dist/src/message-actions-payload/messageActionsPayloadApp.js +7 -0
  141. package/dist/src/message-actions-payload/messageActionsPayloadApp.js.map +1 -0
  142. package/dist/src/message-actions-payload/messageActionsPayloadAttachment.d.ts +33 -0
  143. package/dist/src/message-actions-payload/messageActionsPayloadAttachment.js +7 -0
  144. package/dist/src/message-actions-payload/messageActionsPayloadAttachment.js.map +1 -0
  145. package/dist/src/message-actions-payload/messageActionsPayloadBody.d.ts +25 -0
  146. package/dist/src/message-actions-payload/messageActionsPayloadBody.js +7 -0
  147. package/dist/src/message-actions-payload/messageActionsPayloadBody.js.map +1 -0
  148. package/dist/src/message-actions-payload/messageActionsPayloadConversation.d.ts +25 -0
  149. package/dist/src/message-actions-payload/messageActionsPayloadConversation.js +7 -0
  150. package/dist/src/message-actions-payload/messageActionsPayloadConversation.js.map +1 -0
  151. package/dist/src/message-actions-payload/messageActionsPayloadFrom.d.ts +24 -0
  152. package/dist/src/message-actions-payload/messageActionsPayloadFrom.js +7 -0
  153. package/dist/src/message-actions-payload/messageActionsPayloadFrom.js.map +1 -0
  154. package/dist/src/message-actions-payload/messageActionsPayloadMention.d.ts +22 -0
  155. package/dist/src/message-actions-payload/messageActionsPayloadMention.js +7 -0
  156. package/dist/src/message-actions-payload/messageActionsPayloadMention.js.map +1 -0
  157. package/dist/src/message-actions-payload/messageActionsPayloadReaction.d.ts +26 -0
  158. package/dist/src/message-actions-payload/messageActionsPayloadReaction.js +7 -0
  159. package/dist/src/message-actions-payload/messageActionsPayloadReaction.js.map +1 -0
  160. package/dist/src/message-actions-payload/messageActionsPayloadUser.d.ts +29 -0
  161. package/dist/src/message-actions-payload/messageActionsPayloadUser.js +7 -0
  162. package/dist/src/message-actions-payload/messageActionsPayloadUser.js.map +1 -0
  163. package/dist/src/messageExtension/appBasedLinkQuery.d.ts +19 -0
  164. package/dist/src/messageExtension/appBasedLinkQuery.js +7 -0
  165. package/dist/src/messageExtension/appBasedLinkQuery.js.map +1 -0
  166. package/dist/src/messageExtension/index.d.ts +14 -0
  167. package/dist/src/messageExtension/index.js +29 -0
  168. package/dist/src/messageExtension/index.js.map +1 -0
  169. package/dist/src/messageExtension/messageExtension.d.ts +88 -0
  170. package/dist/src/messageExtension/messageExtension.js +283 -0
  171. package/dist/src/messageExtension/messageExtension.js.map +1 -0
  172. package/dist/src/messageExtension/messagingExtensionAction.d.ts +40 -0
  173. package/dist/src/messageExtension/messagingExtensionAction.js +7 -0
  174. package/dist/src/messageExtension/messagingExtensionAction.js.map +1 -0
  175. package/dist/src/messageExtension/messagingExtensionActionResponse.d.ts +23 -0
  176. package/dist/src/messageExtension/messagingExtensionActionResponse.js +7 -0
  177. package/dist/src/messageExtension/messagingExtensionActionResponse.js.map +1 -0
  178. package/dist/src/messageExtension/messagingExtensionAttachment.d.ts +14 -0
  179. package/dist/src/messageExtension/messagingExtensionAttachment.js +7 -0
  180. package/dist/src/messageExtension/messagingExtensionAttachment.js.map +1 -0
  181. package/dist/src/messageExtension/messagingExtensionParameter.d.ts +31 -0
  182. package/dist/src/messageExtension/messagingExtensionParameter.js +16 -0
  183. package/dist/src/messageExtension/messagingExtensionParameter.js.map +1 -0
  184. package/dist/src/messageExtension/messagingExtensionQuery.d.ts +84 -0
  185. package/dist/src/messageExtension/messagingExtensionQuery.js +31 -0
  186. package/dist/src/messageExtension/messagingExtensionQuery.js.map +1 -0
  187. package/dist/src/messageExtension/messagingExtensionQueryOptions.d.ts +31 -0
  188. package/dist/src/messageExtension/messagingExtensionQueryOptions.js +16 -0
  189. package/dist/src/messageExtension/messagingExtensionQueryOptions.js.map +1 -0
  190. package/dist/src/messageExtension/messagingExtensionResponse.d.ts +18 -0
  191. package/dist/src/messageExtension/messagingExtensionResponse.js +7 -0
  192. package/dist/src/messageExtension/messagingExtensionResponse.js.map +1 -0
  193. package/dist/src/messageExtension/messagingExtensionResult.d.ts +50 -0
  194. package/dist/src/messageExtension/messagingExtensionResult.js +7 -0
  195. package/dist/src/messageExtension/messagingExtensionResult.js.map +1 -0
  196. package/dist/src/messageExtension/messagingExtensionSuggestedAction.d.ts +14 -0
  197. package/dist/src/messageExtension/messagingExtensionSuggestedAction.js +7 -0
  198. package/dist/src/messageExtension/messagingExtensionSuggestedAction.js.map +1 -0
  199. package/dist/src/messages/messages.d.ts +40 -0
  200. package/dist/src/messages/messages.js +82 -0
  201. package/dist/src/messages/messages.js.map +1 -0
  202. package/dist/src/taskModule/index.d.ts +11 -0
  203. package/dist/src/taskModule/index.js +28 -0
  204. package/dist/src/taskModule/index.js.map +1 -0
  205. package/dist/src/taskModule/taskModule.d.ts +72 -0
  206. package/dist/src/taskModule/taskModule.js +210 -0
  207. package/dist/src/taskModule/taskModule.js.map +1 -0
  208. package/dist/src/taskModule/taskModuleContinueResponse.d.ts +15 -0
  209. package/dist/src/taskModule/taskModuleContinueResponse.js +7 -0
  210. package/dist/src/taskModule/taskModuleContinueResponse.js.map +1 -0
  211. package/dist/src/taskModule/taskModuleMessageResponse.d.ts +14 -0
  212. package/dist/src/taskModule/taskModuleMessageResponse.js +7 -0
  213. package/dist/src/taskModule/taskModuleMessageResponse.js.map +1 -0
  214. package/dist/src/taskModule/taskModuleRequest.d.ts +22 -0
  215. package/dist/src/taskModule/taskModuleRequest.js +7 -0
  216. package/dist/src/taskModule/taskModuleRequest.js.map +1 -0
  217. package/dist/src/taskModule/taskModuleRequestContext.d.ts +13 -0
  218. package/dist/src/taskModule/taskModuleRequestContext.js +7 -0
  219. package/dist/src/taskModule/taskModuleRequestContext.js.map +1 -0
  220. package/dist/src/taskModule/taskModuleResponse.d.ts +19 -0
  221. package/dist/src/taskModule/taskModuleResponse.js +7 -0
  222. package/dist/src/taskModule/taskModuleResponse.js.map +1 -0
  223. package/dist/src/taskModule/taskModuleResponseBase.d.ts +17 -0
  224. package/dist/src/taskModule/taskModuleResponseBase.js +7 -0
  225. package/dist/src/taskModule/taskModuleResponseBase.js.map +1 -0
  226. package/dist/src/taskModule/taskModuleTaskInfo.d.ts +38 -0
  227. package/dist/src/taskModule/taskModuleTaskInfo.js +7 -0
  228. package/dist/src/taskModule/taskModuleTaskInfo.js.map +1 -0
  229. package/dist/src/teamsAgentExtension.d.ts +30 -0
  230. package/dist/src/teamsAgentExtension.js +184 -0
  231. package/dist/src/teamsAgentExtension.js.map +1 -0
  232. package/dist/src/teamsAttachmentDownloader.d.ts +27 -0
  233. package/dist/src/teamsAttachmentDownloader.js +80 -0
  234. package/dist/src/teamsAttachmentDownloader.js.map +1 -0
  235. package/dist/src/teamsInfo.d.ts +174 -0
  236. package/dist/src/teamsInfo.js +387 -0
  237. package/dist/src/teamsInfo.js.map +1 -0
  238. package/package.json +37 -0
  239. package/src/activity-extensions/channelInfo.ts +33 -0
  240. package/src/activity-extensions/index.ts +16 -0
  241. package/src/activity-extensions/notificationInfo.ts +33 -0
  242. package/src/activity-extensions/onBehalfOf.ts +38 -0
  243. package/src/activity-extensions/teamInfo.ts +33 -0
  244. package/src/activity-extensions/teamsChannelAccount.ts +36 -0
  245. package/src/activity-extensions/teamsChannelData.ts +75 -0
  246. package/src/activity-extensions/teamsChannelDataParser.ts +17 -0
  247. package/src/activity-extensions/teamsChannelDataSettings.ts +28 -0
  248. package/src/activity-extensions/teamsConversationUpdateEvents.ts +61 -0
  249. package/src/activity-extensions/teamsMeetingInfo.ts +23 -0
  250. package/src/activity-extensions/teamsMessageEvents.ts +6 -0
  251. package/src/activity-extensions/tenantInfo.ts +23 -0
  252. package/src/client/index.ts +7 -0
  253. package/src/client/teamsConnectorClient.ts +340 -0
  254. package/src/client/teamsConnectorClient.types.ts +168 -0
  255. package/src/compat/readReceipInfo.ts +54 -0
  256. package/src/compat/teamsActivityHandler.ts +1140 -0
  257. package/src/file/fileConsentCardResponse.ts +31 -0
  258. package/src/file/fileUploadInfo.ts +34 -0
  259. package/src/file/index.ts +7 -0
  260. package/src/index.ts +10 -0
  261. package/src/meeting/index.ts +23 -0
  262. package/src/meeting/meeting.ts +307 -0
  263. package/src/meeting/meetingDetails.ts +20 -0
  264. package/src/meeting/meetingDetailsBase.ts +16 -0
  265. package/src/meeting/meetingEndEventDetails.ts +14 -0
  266. package/src/meeting/meetingEventDetails.ts +14 -0
  267. package/src/meeting/meetingInfo.ts +26 -0
  268. package/src/meeting/meetingNotification.ts +11 -0
  269. package/src/meeting/meetingNotificationBase.ts +15 -0
  270. package/src/meeting/meetingNotificationChannelData.ts +14 -0
  271. package/src/meeting/meetingNotificationRecipientFailureInfo.ts +16 -0
  272. package/src/meeting/meetingNotificationResponse.ts +16 -0
  273. package/src/meeting/meetingParticipantsEventDetails.ts +14 -0
  274. package/src/meeting/meetingStageSurface.ts +17 -0
  275. package/src/meeting/meetingStartEventDetails.ts +16 -0
  276. package/src/meeting/meetingSurface.ts +12 -0
  277. package/src/meeting/meetingTabIconSurface.ts +19 -0
  278. package/src/meeting/targetedMeetingNotification.ts +23 -0
  279. package/src/meeting/targetedMeetingNotificationValue.ts +21 -0
  280. package/src/meeting/teamsMeetingMember.ts +22 -0
  281. package/src/meeting/teamsMeetingParticipant.ts +29 -0
  282. package/src/meeting/userMeetingDetails.ts +19 -0
  283. package/src/message-actions-payload/index.ts +14 -0
  284. package/src/message-actions-payload/messageActionsPayload.ts +93 -0
  285. package/src/message-actions-payload/messageActionsPayloadApp.ts +27 -0
  286. package/src/message-actions-payload/messageActionsPayloadAttachment.ts +34 -0
  287. package/src/message-actions-payload/messageActionsPayloadBody.ts +27 -0
  288. package/src/message-actions-payload/messageActionsPayloadConversation.ts +27 -0
  289. package/src/message-actions-payload/messageActionsPayloadFrom.ts +26 -0
  290. package/src/message-actions-payload/messageActionsPayloadMention.ts +24 -0
  291. package/src/message-actions-payload/messageActionsPayloadReaction.ts +29 -0
  292. package/src/message-actions-payload/messageActionsPayloadUser.ts +31 -0
  293. package/src/messageExtension/appBasedLinkQuery.ts +20 -0
  294. package/src/messageExtension/index.ts +15 -0
  295. package/src/messageExtension/messageExtension.ts +324 -0
  296. package/src/messageExtension/messagingExtensionAction.ts +44 -0
  297. package/src/messageExtension/messagingExtensionActionResponse.ts +25 -0
  298. package/src/messageExtension/messagingExtensionAttachment.ts +16 -0
  299. package/src/messageExtension/messagingExtensionParameter.ts +28 -0
  300. package/src/messageExtension/messagingExtensionQuery.ts +51 -0
  301. package/src/messageExtension/messagingExtensionQueryOptions.ts +28 -0
  302. package/src/messageExtension/messagingExtensionResponse.ts +21 -0
  303. package/src/messageExtension/messagingExtensionResult.ts +60 -0
  304. package/src/messageExtension/messagingExtensionSuggestedAction.ts +16 -0
  305. package/src/messages/messages.ts +91 -0
  306. package/src/taskModule/index.ts +12 -0
  307. package/src/taskModule/taskModule.ts +241 -0
  308. package/src/taskModule/taskModuleContinueResponse.ts +17 -0
  309. package/src/taskModule/taskModuleMessageResponse.ts +16 -0
  310. package/src/taskModule/taskModuleRequest.ts +24 -0
  311. package/src/taskModule/taskModuleRequestContext.ts +14 -0
  312. package/src/taskModule/taskModuleResponse.ts +21 -0
  313. package/src/taskModule/taskModuleResponseBase.ts +19 -0
  314. package/src/taskModule/taskModuleTaskInfo.ts +40 -0
  315. package/src/teamsAgentExtension.ts +201 -0
  316. package/src/teamsAttachmentDownloader.ts +78 -0
  317. package/src/teamsInfo.ts +430 -0
@@ -0,0 +1,324 @@
1
+ import { Activity, ActivityTypes } from '@microsoft/agents-activity'
2
+ import { AgentApplication, RouteHandler, RouteSelector, TurnContext, TurnState } from '@microsoft/agents-hosting'
3
+ import { z } from 'zod'
4
+ import { TaskModuleResponse } from '../taskModule'
5
+ import { MessagingExtensionActionResponse } from './messagingExtensionActionResponse'
6
+ import { MessagingExtensionQuery, messagingExtensionQueryZodSchema } from './messagingExtensionQuery'
7
+ import { MessagingExtensionResponse } from './messagingExtensionResponse'
8
+ import { MessagingExtensionResult } from './messagingExtensionResult'
9
+ import { MessagingExtensionAction } from './messagingExtensionAction'
10
+
11
+ export type RouteQueryHandler<TState extends TurnState> = (context: TurnContext, state: TState, query: MessagingExtensionQuery) => Promise<MessagingExtensionResult>
12
+ export type SelectItemHandler<TState extends TurnState> = (context: TurnContext, state: TState, item: unknown) => Promise<MessagingExtensionResult>
13
+ export type QueryLinkHandler<TState extends TurnState> = (context: TurnContext, state: TState, url: string) => Promise<MessagingExtensionResult>
14
+ export type FetchTaskHanlder<TState extends TurnState> = (context: TurnContext, state: TState) => Promise<TaskModuleResponse>
15
+ export type SubmitActionHanlder<TState extends TurnState> = (context: TurnContext, state: TState, data: unknown) => Promise<MessagingExtensionActionResponse>
16
+ export type MessagePreviewEditHandler<TState extends TurnState> = (context: TurnContext, state: TState, activity: Activity) => Promise<MessagingExtensionActionResponse>
17
+ export type MessagePreviewSendHandler<TState extends TurnState> = (context: TurnContext, state: TState, activity: Activity) => Promise<void>
18
+ export type ConfigureSettingsHandler<TState extends TurnState> = (context: TurnContext, state: TState, settings: unknown) => Promise<void>
19
+ export type CardButtonClickedHandler<TState extends TurnState> = (context: TurnContext, state: TState, cardData: unknown) => Promise<void>
20
+ /**
21
+ * Class that exposes Teams messaging extension-related events.
22
+ * Provides an organized way to handle messaging extension operations in Microsoft Teams.
23
+ */
24
+ export class MessageExtension<TState extends TurnState> {
25
+ _app: AgentApplication<TState>
26
+
27
+ /**
28
+ * Creates a new instance of the MessageExtension class.
29
+ * @param app - The agent application
30
+ */
31
+ constructor (app: AgentApplication<TState>) {
32
+ this._app = app
33
+ }
34
+
35
+ /**
36
+ * Handles queries from messaging extensions.
37
+ * @param handler - The handler to call when a query is received
38
+ * @returns this (for method chaining)
39
+ */
40
+ onQuery (handler: RouteQueryHandler<TState>) {
41
+ const routeSel: RouteSelector = (context: TurnContext) => {
42
+ return Promise.resolve(
43
+ context.activity.type === ActivityTypes.Invoke &&
44
+ context.activity.channelId === 'msteams' &&
45
+ context.activity.name === 'composeExtension/query'
46
+ )
47
+ }
48
+ const routeHandler : RouteHandler<TState> = async (context: TurnContext, state: TState) => {
49
+ const messageExtensionQuery: MessagingExtensionQuery = messagingExtensionQueryZodSchema.parse(context.activity.value)
50
+ const parameters: Record<string, unknown> = {}
51
+ messageExtensionQuery.parameters?.forEach((param) => {
52
+ parameters[param.name!] = param.value
53
+ })
54
+ const result : MessagingExtensionResult = await handler(context, state, messageExtensionQuery)
55
+ const response: MessagingExtensionResponse = { composeExtension: result }
56
+ const invokeResponse = new Activity(ActivityTypes.InvokeResponse)
57
+ invokeResponse.value = {
58
+ status: 200,
59
+ body: response
60
+ }
61
+ context.sendActivity(invokeResponse)
62
+ }
63
+ this._app.addRoute(routeSel, routeHandler, true) // Invoke requires true
64
+ return this
65
+ }
66
+
67
+ onSelectItem (handler: SelectItemHandler<TurnState>) {
68
+ const routeSel: RouteSelector = (context: TurnContext) => {
69
+ return Promise.resolve(
70
+ context.activity.type === ActivityTypes.Invoke &&
71
+ context.activity.channelId === 'msteams' &&
72
+ context.activity.name === 'composeExtension/selectItem'
73
+ )
74
+ }
75
+ const routeHandler : RouteHandler<TurnState> = async (context: TurnContext, state: TurnState) => {
76
+ const result : MessagingExtensionResult = await handler(context, state, context.activity.value)
77
+ const response: MessagingExtensionResponse = { composeExtension: result }
78
+ const invokeResponse = new Activity(ActivityTypes.InvokeResponse)
79
+ invokeResponse.value = {
80
+ status: 200,
81
+ body: response
82
+ }
83
+ await context.sendActivity(invokeResponse)
84
+ }
85
+ this._app.addRoute(routeSel, routeHandler, true) // Invoke requires true
86
+ return this
87
+ }
88
+
89
+ /**
90
+ * Handles link queries from messaging extensions.
91
+ * @param handler - The handler to call when a link query is received
92
+ * @returns this (for method chaining)
93
+ */
94
+ onQueryLink (handler: QueryLinkHandler<TurnState>) {
95
+ const routeSel: RouteSelector = (context: TurnContext) => {
96
+ return Promise.resolve(
97
+ context.activity.type === ActivityTypes.Invoke &&
98
+ context.activity.channelId === 'msteams' &&
99
+ context.activity.name === 'composeExtension/queryLink'
100
+ )
101
+ }
102
+ const routeHandler : RouteHandler<TurnState> = async (context: TurnContext, state: TurnState) => {
103
+ const appBasedLinkQuerySchema = z.object({
104
+ url: z.string().url()
105
+ })
106
+ const query = appBasedLinkQuerySchema.parse(context.activity.value)
107
+ const res = await handler(context, state, query.url)
108
+ const response: MessagingExtensionResponse = { composeExtension: res }
109
+ const invokeResponse = Activity.fromObject({ type: ActivityTypes.InvokeResponse, value: { status: 200, body: response } })
110
+ await context.sendActivity(invokeResponse)
111
+ }
112
+ this._app.addRoute(routeSel, routeHandler, true)
113
+ return this
114
+ }
115
+
116
+ /**
117
+ * Handles anonymous link queries (for public access) from messaging extensions.
118
+ * @param handler - The handler to call when an anonymous link query is received
119
+ * @returns this (for method chaining)
120
+ */
121
+ onAnonymousQueryLink (handler: QueryLinkHandler<TurnState>) {
122
+ const routeSel: RouteSelector = (context: TurnContext) => {
123
+ return Promise.resolve(
124
+ context.activity.type === ActivityTypes.Invoke &&
125
+ context.activity.channelId === 'msteams' &&
126
+ context.activity.name === 'composeExtension/anonymousQueryLink'
127
+ )
128
+ }
129
+ const routeHandler : RouteHandler<TurnState> = async (context: TurnContext, state: TurnState) => {
130
+ const appBasedLinkQuerySchema = z.object({
131
+ url: z.string().url()
132
+ })
133
+ const query = appBasedLinkQuerySchema.parse(context.activity.value)
134
+ const res = await handler(context, state, query.url)
135
+ const response: MessagingExtensionResponse = { composeExtension: res }
136
+ const invokeResponse = Activity.fromObject({ type: ActivityTypes.InvokeResponse, value: { status: 200, body: response } })
137
+ await context.sendActivity(invokeResponse)
138
+ }
139
+ this._app.addRoute(routeSel, routeHandler, true)
140
+ return this
141
+ }
142
+
143
+ /**
144
+ * Handles fetch task requests from messaging extensions.
145
+ * @param handler - The handler to call when a fetch task is requested
146
+ * @returns this (for method chaining)
147
+ */
148
+ onFetchTask (handler: FetchTaskHanlder<TurnState>) {
149
+ const routeSel: RouteSelector = (context: TurnContext) => {
150
+ return Promise.resolve(
151
+ context.activity.type === ActivityTypes.Invoke &&
152
+ context.activity.channelId === 'msteams' &&
153
+ context.activity.name === 'composeExtension/fetchTask'
154
+ )
155
+ }
156
+ const routeHandler: RouteHandler<TurnState> = async (context: TurnContext, state: TurnState) => {
157
+ const taskModuleResponse: TaskModuleResponse = await handler(context, state)
158
+ const invokeResponse = new Activity(ActivityTypes.InvokeResponse)
159
+ invokeResponse.value = {
160
+ status: 200,
161
+ body: taskModuleResponse
162
+ }
163
+ await context.sendActivity(invokeResponse)
164
+ }
165
+ this._app.addRoute(routeSel, routeHandler, true)
166
+ return this
167
+ }
168
+
169
+ /**
170
+ * Handles action submissions from messaging extensions.
171
+ * @param handler - The handler to call when an action is submitted
172
+ * @returns this (for method chaining)
173
+ */
174
+ onSubmitAction (handler: SubmitActionHanlder<TurnState>) {
175
+ const routeSel: RouteSelector = (context: TurnContext) => {
176
+ return Promise.resolve(
177
+ context.activity.type === ActivityTypes.Invoke &&
178
+ context.activity.channelId === 'msteams' &&
179
+ context.activity.name === 'composeExtension/submitAction' // && TODO
180
+ // (!context.activity.value || !('botMessagePreviewAction' in context.activity.value.))
181
+ )
182
+ }
183
+ const routeHandler: RouteHandler<TurnState> = async (context: TurnContext, state: TurnState) => {
184
+ const data = context.activity.value
185
+ const response: MessagingExtensionActionResponse = await handler(context, state, data)
186
+ const invokeResponse = new Activity(ActivityTypes.InvokeResponse)
187
+ invokeResponse.value = {
188
+ status: 200,
189
+ body: response
190
+ }
191
+ await context.sendActivity(invokeResponse)
192
+ }
193
+ this._app.addRoute(routeSel, routeHandler, true) // Invoke requires true
194
+ return this
195
+ }
196
+
197
+ /**
198
+ * Handles message preview edit actions from messaging extensions.
199
+ * @param handler - The handler to call when a message preview edit action is received
200
+ * @returns this (for method chaining)
201
+ */
202
+ onMessagePreviewEdit (handler: MessagePreviewEditHandler<TurnState>) {
203
+ const routeSel: RouteSelector = (context: TurnContext) => {
204
+ return Promise.resolve(!!(
205
+ context.activity.type === ActivityTypes.Invoke &&
206
+ context.activity.channelId === 'msteams' &&
207
+ context.activity.name === 'composeExtension/submitAction' &&
208
+ context.activity.value &&
209
+ // @ts-ignore
210
+ context.activity.value['botMessagePreviewAction'] === 'edit'))
211
+ }
212
+ const routeHandler: RouteHandler<TurnState> = async (context: TurnContext, state: TurnState) => {
213
+ const activity = context.activity.value as Activity
214
+ const response: MessagingExtensionActionResponse = await handler(context, state, activity)
215
+ const invokeResponse = new Activity(ActivityTypes.InvokeResponse)
216
+ invokeResponse.value = {
217
+ status: 200,
218
+ body: response
219
+ }
220
+ await context.sendActivity(invokeResponse)
221
+ }
222
+ this._app.addRoute(routeSel, routeHandler, true)
223
+ return this
224
+ }
225
+
226
+ /**
227
+ * Handles message preview send actions from messaging extensions.
228
+ * @param handler - The handler to call when a message preview send action is received
229
+ * @returns this (for method chaining)
230
+ */
231
+ onMessagePreviewSend (handler: MessagePreviewSendHandler<TurnState>) {
232
+ const routeSel: RouteSelector = (context: TurnContext) => {
233
+ return Promise.resolve(!!(
234
+ context.activity.type === ActivityTypes.Invoke &&
235
+ context.activity.channelId === 'msteams' &&
236
+ context.activity.name === 'composeExtension/submitAction' &&
237
+ context.activity.value &&
238
+ // @ts-ignore
239
+ context.activity.value['botMessagePreviewAction'] === 'send'))
240
+ }
241
+ const routeHandler: RouteHandler<TurnState> = async (context: TurnContext, state: TurnState) => {
242
+ const msgExtensionAction: MessagingExtensionAction = context.activity.value as MessagingExtensionAction
243
+ const activityPreview : Activity = msgExtensionAction.activityPreview?.length! > 0 ? Activity.fromObject(msgExtensionAction.activityPreview![0]) : new Activity(ActivityTypes.Message)
244
+ await handler(context, state, activityPreview)
245
+ }
246
+ this._app.addRoute(routeSel, routeHandler, true)
247
+ return this
248
+ }
249
+
250
+ /**
251
+ * Handles configuration query setting URL requests from messaging extensions.
252
+ * @param handler - The handler to call when a config query setting URL is requested
253
+ * @returns this (for method chaining)
254
+ */
255
+ onConfigurationQuerySettingUrl (handler: ConfigureSettingsHandler<TurnState>) {
256
+ const routeSel: RouteSelector = (context: TurnContext) => {
257
+ return Promise.resolve(
258
+ context.activity.type === ActivityTypes.Invoke &&
259
+ context.activity.channelId === 'msteams' &&
260
+ context.activity.name === 'composeExtension/querySettingUrl'
261
+ )
262
+ }
263
+ const routeHandler: RouteHandler<TurnState> = async (context: TurnContext, state: TurnState) => {
264
+ await handler(context, state, context.activity.value)
265
+ const invokeResponse = new Activity(ActivityTypes.InvokeResponse)
266
+ invokeResponse.value = {
267
+ status: 200
268
+ }
269
+ await context.sendActivity(invokeResponse)
270
+ }
271
+ this._app.addRoute(routeSel, routeHandler, true)
272
+ return this
273
+ }
274
+
275
+ /**
276
+ * Handles configuration setting updates from messaging extensions.
277
+ * @param handler - The handler to call when configuration settings are updated
278
+ * @returns this (for method chaining)
279
+ */
280
+ onConfigurationSetting (handler: ConfigureSettingsHandler<TurnState>) {
281
+ const routeSel: RouteSelector = (context: TurnContext) => {
282
+ return Promise.resolve(
283
+ context.activity.type === ActivityTypes.Invoke &&
284
+ context.activity.channelId === 'msteams' &&
285
+ context.activity.name === 'composeExtension/setting'
286
+ )
287
+ }
288
+ const routeHandler: RouteHandler<TurnState> = async (context: TurnContext, state: TurnState) => {
289
+ await handler(context, state, context.activity.value)
290
+ const invokeResponse = new Activity(ActivityTypes.InvokeResponse)
291
+ invokeResponse.value = {
292
+ status: 200
293
+ }
294
+ await context.sendActivity(invokeResponse)
295
+ }
296
+ this._app.addRoute(routeSel, routeHandler, true)
297
+ return this
298
+ }
299
+
300
+ /**
301
+ * Handles card button click events from messaging extensions.
302
+ * @param handler - The handler to call when a card button is clicked
303
+ * @returns this (for method chaining)
304
+ */
305
+ onCardButtonClicked (handler: CardButtonClickedHandler<TurnState>) {
306
+ const routeSel: RouteSelector = (context: TurnContext) => {
307
+ return Promise.resolve(
308
+ context.activity.type === ActivityTypes.Invoke &&
309
+ context.activity.channelId === 'msteams' &&
310
+ context.activity.name === 'composeExtension/onCardButtonClicked'
311
+ )
312
+ }
313
+ const routeHandler: RouteHandler<TurnState> = async (context: TurnContext, state: TurnState) => {
314
+ await handler(context, state, context.activity.value)
315
+ const invokeResponse = new Activity(ActivityTypes.InvokeResponse)
316
+ invokeResponse.value = {
317
+ status: 200
318
+ }
319
+ await context.sendActivity(invokeResponse)
320
+ }
321
+ this._app.addRoute(routeSel, routeHandler, true)
322
+ return this
323
+ }
324
+ }
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Copyright(c) Microsoft Corporation.All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ import { Activity } from '@microsoft/agents-activity'
7
+ import { MessageActionsPayload } from '../message-actions-payload/messageActionsPayload'
8
+ import { TaskModuleRequest } from '../taskModule'
9
+
10
+ /**
11
+ * Contexts for messaging extension commands.
12
+ */
13
+ export type CommandContext = 'message' | 'compose' | 'commandbox'
14
+
15
+ /**
16
+ * Types of actions for message previews.
17
+ */
18
+ export type MessagePreviewActionType = 'edit' | 'send'
19
+
20
+ /**
21
+ * Represents an action for a messaging extension.
22
+ */
23
+ export interface MessagingExtensionAction extends TaskModuleRequest {
24
+ /**
25
+ * The ID of the command.
26
+ */
27
+ commandId?: string
28
+ /**
29
+ * The context of the command.
30
+ */
31
+ commandContext?: CommandContext
32
+ /**
33
+ * The type of action for the agent message preview.
34
+ */
35
+ messagePreviewAction?: MessagePreviewActionType
36
+ /**
37
+ * A list of activities for the agent activity preview.
38
+ */
39
+ activityPreview?: Activity[]
40
+ /**
41
+ * The payload of the message actions.
42
+ */
43
+ messagePayload?: MessageActionsPayload
44
+ }
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Copyright(c) Microsoft Corporation.All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ import { TaskModuleContinueResponse, TaskModuleMessageResponse } from '../taskModule'
7
+ import { MessagingExtensionResult } from './messagingExtensionResult'
8
+
9
+ /**
10
+ * Represents the response of a messaging extension action.
11
+ */
12
+ export interface MessagingExtensionActionResponse {
13
+ /**
14
+ * The task module response.
15
+ */
16
+ task?: TaskModuleContinueResponse | TaskModuleMessageResponse
17
+ /**
18
+ * The result of the compose extension.
19
+ */
20
+ composeExtension?: MessagingExtensionResult
21
+ /**
22
+ * Cache information for the response.
23
+ */
24
+ cacheInfo?: unknown // CacheInfo TODO: Define the type for CacheInfo
25
+ }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Copyright(c) Microsoft Corporation.All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ import { Attachment } from '@microsoft/agents-activity'
7
+
8
+ /**
9
+ * Represents an attachment for a messaging extension.
10
+ */
11
+ export interface MessagingExtensionAttachment extends Attachment {
12
+ /**
13
+ * A preview of the attachment.
14
+ */
15
+ preview?: Attachment
16
+ }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Copyright(c) Microsoft Corporation.All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ import { z } from 'zod'
7
+
8
+ /**
9
+ * Represents a parameter for a messaging extension query.
10
+ */
11
+ export interface MessagingExtensionParameter {
12
+ /**
13
+ * The name of the parameter.
14
+ */
15
+ name?: string
16
+ /**
17
+ * The value of the parameter.
18
+ */
19
+ value?: any
20
+ }
21
+
22
+ /**
23
+ * Zod schema for validating MessagingExtensionParameter.
24
+ */
25
+ export const messagingExtensionParameterZodSchema = z.object({
26
+ name: z.string().min(1).optional(),
27
+ value: z.any().optional()
28
+ })
@@ -0,0 +1,51 @@
1
+ /**
2
+ * Copyright(c) Microsoft Corporation.All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ import { z } from 'zod'
7
+ import { MessagingExtensionParameter, messagingExtensionParameterZodSchema } from './messagingExtensionParameter'
8
+ import { MessagingExtensionQueryOptions, messagingExtensionQueryOptionsZodSchema } from './messagingExtensionQueryOptions'
9
+
10
+ /**
11
+ * Represents a query for a messaging extension.
12
+ */
13
+ export interface MessagingExtensionQuery {
14
+ /**
15
+ * The ID of the command.
16
+ */
17
+ commandId?: string
18
+ /**
19
+ * A list of parameters for the query.
20
+ */
21
+ parameters?: MessagingExtensionParameter[]
22
+ /**
23
+ * Options for the query.
24
+ */
25
+ queryOptions?: MessagingExtensionQueryOptions
26
+ /**
27
+ * The state of the query.
28
+ */
29
+ state?: string
30
+ }
31
+
32
+ /**
33
+ * Zod schema for validating MessagingExtensionQuery.
34
+ */
35
+ export const messagingExtensionQueryZodSchema = z.object({
36
+ commandId: z.string().min(1).optional(),
37
+ parameters: z.array(messagingExtensionParameterZodSchema).optional(),
38
+ queryOptions: messagingExtensionQueryOptionsZodSchema.optional(),
39
+ state: z.string().min(1).optional()
40
+ })
41
+
42
+ /**
43
+ * Parses the given value as a messaging extension query.
44
+ *
45
+ * @param {unknown} value - The value to parse.
46
+ * @returns {MessagingExtensionQuery} - The parsed messaging extension query.
47
+ */
48
+ export function parseValueMessagingExtensionQuery (value: unknown): MessagingExtensionQuery {
49
+ messagingExtensionQueryZodSchema.passthrough().parse(value)
50
+ return value as MessagingExtensionQuery
51
+ }
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Copyright(c) Microsoft Corporation.All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ import { z } from 'zod'
7
+
8
+ /**
9
+ * Represents query options for a messaging extension.
10
+ */
11
+ export interface MessagingExtensionQueryOptions {
12
+ /**
13
+ * The number of items to skip.
14
+ */
15
+ skip?: number
16
+ /**
17
+ * The number of items to retrieve.
18
+ */
19
+ count?: number
20
+ }
21
+
22
+ /**
23
+ * Zod schema for validating MessagingExtensionQueryOptions.
24
+ */
25
+ export const messagingExtensionQueryOptionsZodSchema = z.object({
26
+ skip: z.number().optional(),
27
+ count: z.number().optional()
28
+ })
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Copyright(c) Microsoft Corporation.All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ // import { CacheInfo } from '../agent-config/cacheInfo'
7
+ import { MessagingExtensionResult } from './messagingExtensionResult'
8
+
9
+ /**
10
+ * Represents the response of a messaging extension.
11
+ */
12
+ export interface MessagingExtensionResponse {
13
+ /**
14
+ * The result of the compose extension.
15
+ */
16
+ composeExtension?: MessagingExtensionResult
17
+ /**
18
+ * Cache information for the response.
19
+ */
20
+ cacheInfo?: unknown // TODO: CacheInfo
21
+ }
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Copyright(c) Microsoft Corporation.All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ import { Activity } from '@microsoft/agents-activity'
7
+ import { MessagingExtensionAttachment } from './messagingExtensionAttachment'
8
+ import { MessagingExtensionSuggestedAction } from './messagingExtensionSuggestedAction'
9
+
10
+ /**
11
+ * Layout options for attachments.
12
+ */
13
+ export type AttachmentLayout = 'list' | 'grid'
14
+
15
+ /**
16
+ * Types of messaging extension results.
17
+ * - `result`: Represents a standard result.
18
+ * - `auth`: Represents an authentication request.
19
+ * - `config`: Represents a configuration request.
20
+ * - `message`: Represents a message result.
21
+ * - `botMessagePreview`: Represents a bot message preview.
22
+ * - `silentAuth`: Represents a silent authentication request.
23
+ */
24
+ export type MessagingExtensionResultType =
25
+ | 'result'
26
+ | 'auth'
27
+ | 'config'
28
+ | 'message'
29
+ | 'botMessagePreview'
30
+ | 'silentAuth'
31
+
32
+ /**
33
+ * Represents the result of a messaging extension.
34
+ */
35
+ export interface MessagingExtensionResult {
36
+ /**
37
+ * The layout of the attachments.
38
+ */
39
+ attachmentLayout?: AttachmentLayout
40
+ /**
41
+ * The type of the result.
42
+ */
43
+ type?: MessagingExtensionResultType
44
+ /**
45
+ * A list of attachments.
46
+ */
47
+ attachments?: MessagingExtensionAttachment[]
48
+ /**
49
+ * Suggested actions for the result.
50
+ */
51
+ suggestedActions?: MessagingExtensionSuggestedAction
52
+ /**
53
+ * Text content of the result.
54
+ */
55
+ text?: string
56
+ /**
57
+ * Preview of the activity.
58
+ */
59
+ activityPreview?: Activity
60
+ }
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Copyright(c) Microsoft Corporation.All rights reserved.
3
+ * Licensed under the MIT License.
4
+ */
5
+
6
+ import { CardAction } from '@microsoft/agents-activity'
7
+
8
+ /**
9
+ * Represents suggested actions for a messaging extension.
10
+ */
11
+ export interface MessagingExtensionSuggestedAction {
12
+ /**
13
+ * A list of card actions.
14
+ */
15
+ actions?: CardAction[]
16
+ }