@jevelin/bridge 2.53.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (328) hide show
  1. package/LICENSE +12 -0
  2. package/README.md +78 -0
  3. package/dist/esm/_virtual/_polyfill-node.buffer.js +1 -0
  4. package/dist/esm/_virtual/_polyfill-node.global.js +1 -0
  5. package/dist/esm/_virtual/browser.js +1 -0
  6. package/dist/esm/node_modules/.pnpm/@rollup_plugin-typescript@11.1.6_rollup@4.55.1_tslib@2.8.1_typescript@4.9.5/node_modules/tslib/tslib.es6.js +1 -0
  7. package/dist/esm/node_modules/.pnpm/debug@4.3.5/node_modules/debug/src/browser.js +1 -0
  8. package/dist/esm/node_modules/.pnpm/debug@4.3.5/node_modules/debug/src/common.js +1 -0
  9. package/dist/esm/node_modules/.pnpm/ms@2.1.2/node_modules/ms/index.js +1 -0
  10. package/dist/esm/node_modules/.pnpm/uuid@11.1.1/node_modules/uuid/dist/esm-browser/native.js +1 -0
  11. package/dist/esm/node_modules/.pnpm/uuid@11.1.1/node_modules/uuid/dist/esm-browser/regex.js +1 -0
  12. package/dist/esm/node_modules/.pnpm/uuid@11.1.1/node_modules/uuid/dist/esm-browser/rng.js +1 -0
  13. package/dist/esm/node_modules/.pnpm/uuid@11.1.1/node_modules/uuid/dist/esm-browser/stringify.js +1 -0
  14. package/dist/esm/node_modules/.pnpm/uuid@11.1.1/node_modules/uuid/dist/esm-browser/v4.js +1 -0
  15. package/dist/esm/node_modules/.pnpm/uuid@11.1.1/node_modules/uuid/dist/esm-browser/validate.js +1 -0
  16. package/dist/esm/packages/teams-js/dts/index.d.ts +2 -0
  17. package/dist/esm/packages/teams-js/dts/internal/VideoFrameTypes.d.ts +78 -0
  18. package/dist/esm/packages/teams-js/dts/internal/appHelpers.d.ts +19 -0
  19. package/dist/esm/packages/teams-js/dts/internal/childCommunication.d.ts +38 -0
  20. package/dist/esm/packages/teams-js/dts/internal/communication.d.ts +151 -0
  21. package/dist/esm/packages/teams-js/dts/internal/communicationUtils.d.ts +20 -0
  22. package/dist/esm/packages/teams-js/dts/internal/constants.d.ts +146 -0
  23. package/dist/esm/packages/teams-js/dts/internal/deepLinkConstants.d.ts +26 -0
  24. package/dist/esm/packages/teams-js/dts/internal/deepLinkUtilities.d.ts +4 -0
  25. package/dist/esm/packages/teams-js/dts/internal/dialogHelpers.d.ts +32 -0
  26. package/dist/esm/packages/teams-js/dts/internal/emailAddressValidation.d.ts +1 -0
  27. package/dist/esm/packages/teams-js/dts/internal/globalVars.d.ts +13 -0
  28. package/dist/esm/packages/teams-js/dts/internal/handlers.d.ts +101 -0
  29. package/dist/esm/packages/teams-js/dts/internal/hostToAppTelemetry.d.ts +51 -0
  30. package/dist/esm/packages/teams-js/dts/internal/idValidation.d.ts +37 -0
  31. package/dist/esm/packages/teams-js/dts/internal/interfaces.d.ts +58 -0
  32. package/dist/esm/packages/teams-js/dts/internal/internalAPIs.d.ts +61 -0
  33. package/dist/esm/packages/teams-js/dts/internal/marketplaceUtils.d.ts +94 -0
  34. package/dist/esm/packages/teams-js/dts/internal/mediaUtil.d.ts +95 -0
  35. package/dist/esm/packages/teams-js/dts/internal/messageObjects.d.ts +80 -0
  36. package/dist/esm/packages/teams-js/dts/internal/nestedAppAuthUtils.d.ts +107 -0
  37. package/dist/esm/packages/teams-js/dts/internal/pagesHelpers.d.ts +27 -0
  38. package/dist/esm/packages/teams-js/dts/internal/profileUtil.d.ts +33 -0
  39. package/dist/esm/packages/teams-js/dts/internal/responseHandler.d.ts +32 -0
  40. package/dist/esm/packages/teams-js/dts/internal/telemetry.d.ts +411 -0
  41. package/dist/esm/packages/teams-js/dts/internal/typeCheckUtilities.d.ts +1 -0
  42. package/dist/esm/packages/teams-js/dts/internal/urlPattern.d.ts +50 -0
  43. package/dist/esm/packages/teams-js/dts/internal/utils.d.ts +226 -0
  44. package/dist/esm/packages/teams-js/dts/internal/validOrigins.d.ts +13 -0
  45. package/dist/esm/packages/teams-js/dts/internal/videoEffectsUtils.d.ts +31 -0
  46. package/dist/esm/packages/teams-js/dts/internal/videoFrameTick.d.ts +10 -0
  47. package/dist/esm/packages/teams-js/dts/internal/videoPerformanceMonitor.d.ts +54 -0
  48. package/dist/esm/packages/teams-js/dts/internal/videoPerformanceStatistics.d.ts +49 -0
  49. package/dist/esm/packages/teams-js/dts/internal/visualMediaHelpers.d.ts +14 -0
  50. package/dist/esm/packages/teams-js/dts/internal/webStorageHelpers.d.ts +4 -0
  51. package/dist/esm/packages/teams-js/dts/private/appEntity.d.ts +89 -0
  52. package/dist/esm/packages/teams-js/dts/private/constants.d.ts +9 -0
  53. package/dist/esm/packages/teams-js/dts/private/conversations.d.ts +152 -0
  54. package/dist/esm/packages/teams-js/dts/private/copilot/copilot.d.ts +5 -0
  55. package/dist/esm/packages/teams-js/dts/private/copilot/customTelemetry.d.ts +33 -0
  56. package/dist/esm/packages/teams-js/dts/private/copilot/eligibility.d.ts +31 -0
  57. package/dist/esm/packages/teams-js/dts/private/copilot/sidePanel.d.ts +75 -0
  58. package/dist/esm/packages/teams-js/dts/private/copilot/sidePanelInterfaces.d.ts +522 -0
  59. package/dist/esm/packages/teams-js/dts/private/copilot/view.d.ts +21 -0
  60. package/dist/esm/packages/teams-js/dts/private/externalAppAuthentication.d.ts +472 -0
  61. package/dist/esm/packages/teams-js/dts/private/externalAppAuthenticationForCEA.d.ts +93 -0
  62. package/dist/esm/packages/teams-js/dts/private/externalAppCardActions.d.ts +111 -0
  63. package/dist/esm/packages/teams-js/dts/private/externalAppCardActionsForCEA.d.ts +48 -0
  64. package/dist/esm/packages/teams-js/dts/private/externalAppCardActionsForDA.d.ts +75 -0
  65. package/dist/esm/packages/teams-js/dts/private/externalAppCommands.d.ts +122 -0
  66. package/dist/esm/packages/teams-js/dts/private/externalAppErrorHandling.d.ts +19 -0
  67. package/dist/esm/packages/teams-js/dts/private/files.d.ts +766 -0
  68. package/dist/esm/packages/teams-js/dts/private/hostEntity/hostEntity.d.ts +50 -0
  69. package/dist/esm/packages/teams-js/dts/private/hostEntity/tab.d.ts +134 -0
  70. package/dist/esm/packages/teams-js/dts/private/index.d.ts +29 -0
  71. package/dist/esm/packages/teams-js/dts/private/interfaces.d.ts +290 -0
  72. package/dist/esm/packages/teams-js/dts/private/logs.d.ts +31 -0
  73. package/dist/esm/packages/teams-js/dts/private/meetingRoom.d.ts +208 -0
  74. package/dist/esm/packages/teams-js/dts/private/messageChannels/dataLayer.d.ts +39 -0
  75. package/dist/esm/packages/teams-js/dts/private/messageChannels/messageChannels.d.ts +28 -0
  76. package/dist/esm/packages/teams-js/dts/private/messageChannels/telemetry.d.ts +39 -0
  77. package/dist/esm/packages/teams-js/dts/private/nestedAppAuth/nestedAppAuthBridge.d.ts +32 -0
  78. package/dist/esm/packages/teams-js/dts/private/notifications.d.ts +32 -0
  79. package/dist/esm/packages/teams-js/dts/private/otherAppStateChange.d.ts +94 -0
  80. package/dist/esm/packages/teams-js/dts/private/plugins.d.ts +94 -0
  81. package/dist/esm/packages/teams-js/dts/private/privateAPIs.d.ts +94 -0
  82. package/dist/esm/packages/teams-js/dts/private/remoteCamera.d.ts +303 -0
  83. package/dist/esm/packages/teams-js/dts/private/store.d.ts +128 -0
  84. package/dist/esm/packages/teams-js/dts/private/teams/fullTrust/fullTrust.d.ts +31 -0
  85. package/dist/esm/packages/teams-js/dts/private/teams/fullTrust/joinedTeams.d.ts +30 -0
  86. package/dist/esm/packages/teams-js/dts/private/teams/teams.d.ts +63 -0
  87. package/dist/esm/packages/teams-js/dts/private/videoEffectsEx.d.ts +250 -0
  88. package/dist/esm/packages/teams-js/dts/private/widgetHosting/widgetContext.d.ts +121 -0
  89. package/dist/esm/packages/teams-js/dts/private/widgetHosting/widgetHosting.d.ts +101 -0
  90. package/dist/esm/packages/teams-js/dts/public/adaptiveCards.d.ts +6 -0
  91. package/dist/esm/packages/teams-js/dts/public/app/app.d.ts +648 -0
  92. package/dist/esm/packages/teams-js/dts/public/app/lifecycle.d.ts +41 -0
  93. package/dist/esm/packages/teams-js/dts/public/appId.d.ts +28 -0
  94. package/dist/esm/packages/teams-js/dts/public/appInitialization.d.ts +57 -0
  95. package/dist/esm/packages/teams-js/dts/public/appInstallDialog.d.ts +18 -0
  96. package/dist/esm/packages/teams-js/dts/public/appPerformanceMetrics.d.ts +24 -0
  97. package/dist/esm/packages/teams-js/dts/public/appWindow.d.ts +66 -0
  98. package/dist/esm/packages/teams-js/dts/public/authentication.d.ts +417 -0
  99. package/dist/esm/packages/teams-js/dts/public/badge.d.ts +42 -0
  100. package/dist/esm/packages/teams-js/dts/public/barCode.d.ts +54 -0
  101. package/dist/esm/packages/teams-js/dts/public/calendar.d.ts +41 -0
  102. package/dist/esm/packages/teams-js/dts/public/call.d.ts +54 -0
  103. package/dist/esm/packages/teams-js/dts/public/chat.d.ts +68 -0
  104. package/dist/esm/packages/teams-js/dts/public/clipboard.d.ts +35 -0
  105. package/dist/esm/packages/teams-js/dts/public/connectivity.d.ts +52 -0
  106. package/dist/esm/packages/teams-js/dts/public/constants.d.ts +203 -0
  107. package/dist/esm/packages/teams-js/dts/public/dialog/adaptiveCard/adaptiveCard.d.ts +22 -0
  108. package/dist/esm/packages/teams-js/dts/public/dialog/adaptiveCard/bot.d.ts +22 -0
  109. package/dist/esm/packages/teams-js/dts/public/dialog/dialog.d.ts +49 -0
  110. package/dist/esm/packages/teams-js/dts/public/dialog/update.d.ts +19 -0
  111. package/dist/esm/packages/teams-js/dts/public/dialog/url/bot.d.ts +25 -0
  112. package/dist/esm/packages/teams-js/dts/public/dialog/url/parentCommunication.d.ts +41 -0
  113. package/dist/esm/packages/teams-js/dts/public/dialog/url/url.d.ts +54 -0
  114. package/dist/esm/packages/teams-js/dts/public/emailAddress.d.ts +12 -0
  115. package/dist/esm/packages/teams-js/dts/public/externalApp.d.ts +130 -0
  116. package/dist/esm/packages/teams-js/dts/public/featureFlags.d.ts +44 -0
  117. package/dist/esm/packages/teams-js/dts/public/geoLocation/geoLocation.d.ts +68 -0
  118. package/dist/esm/packages/teams-js/dts/public/geoLocation/map.d.ts +33 -0
  119. package/dist/esm/packages/teams-js/dts/public/haptics.d.ts +42 -0
  120. package/dist/esm/packages/teams-js/dts/public/index.d.ts +57 -0
  121. package/dist/esm/packages/teams-js/dts/public/interfaces.d.ts +1321 -0
  122. package/dist/esm/packages/teams-js/dts/public/liveShareHost.d.ts +220 -0
  123. package/dist/esm/packages/teams-js/dts/public/location.d.ts +85 -0
  124. package/dist/esm/packages/teams-js/dts/public/mail/handoff.d.ts +48 -0
  125. package/dist/esm/packages/teams-js/dts/public/mail/mail.d.ts +97 -0
  126. package/dist/esm/packages/teams-js/dts/public/marketplace.d.ts +320 -0
  127. package/dist/esm/packages/teams-js/dts/public/media.d.ts +435 -0
  128. package/dist/esm/packages/teams-js/dts/public/meeting/appShareButton.d.ts +51 -0
  129. package/dist/esm/packages/teams-js/dts/public/meeting/meeting.d.ts +854 -0
  130. package/dist/esm/packages/teams-js/dts/public/menus.d.ts +187 -0
  131. package/dist/esm/packages/teams-js/dts/public/monetization.d.ts +64 -0
  132. package/dist/esm/packages/teams-js/dts/public/navigation.d.ts +46 -0
  133. package/dist/esm/packages/teams-js/dts/public/nestedAppAuth.d.ts +64 -0
  134. package/dist/esm/packages/teams-js/dts/public/offlineStorage/drafts.d.ts +104 -0
  135. package/dist/esm/packages/teams-js/dts/public/offlineStorage/inbox.d.ts +86 -0
  136. package/dist/esm/packages/teams-js/dts/public/offlineStorage/offlineStorage.d.ts +258 -0
  137. package/dist/esm/packages/teams-js/dts/public/offlineStorage/outbox.d.ts +112 -0
  138. package/dist/esm/packages/teams-js/dts/public/offlineStorage/sent.d.ts +69 -0
  139. package/dist/esm/packages/teams-js/dts/public/offlineStorage/sync.d.ts +183 -0
  140. package/dist/esm/packages/teams-js/dts/public/pages/appButton.d.ts +30 -0
  141. package/dist/esm/packages/teams-js/dts/public/pages/backStack.d.ts +44 -0
  142. package/dist/esm/packages/teams-js/dts/public/pages/config.d.ts +123 -0
  143. package/dist/esm/packages/teams-js/dts/public/pages/currentApp.d.ts +46 -0
  144. package/dist/esm/packages/teams-js/dts/public/pages/fullTrust.d.ts +33 -0
  145. package/dist/esm/packages/teams-js/dts/public/pages/pages.d.ts +253 -0
  146. package/dist/esm/packages/teams-js/dts/public/pages/tabs.d.ts +32 -0
  147. package/dist/esm/packages/teams-js/dts/public/people.d.ts +73 -0
  148. package/dist/esm/packages/teams-js/dts/public/profile.d.ts +105 -0
  149. package/dist/esm/packages/teams-js/dts/public/publicAPIs.d.ts +218 -0
  150. package/dist/esm/packages/teams-js/dts/public/runtime.d.ts +240 -0
  151. package/dist/esm/packages/teams-js/dts/public/search.d.ts +90 -0
  152. package/dist/esm/packages/teams-js/dts/public/secondaryBrowser.d.ts +31 -0
  153. package/dist/esm/packages/teams-js/dts/public/security.d.ts +83 -0
  154. package/dist/esm/packages/teams-js/dts/public/serializable.interface.d.ts +17 -0
  155. package/dist/esm/packages/teams-js/dts/public/settings.d.ts +102 -0
  156. package/dist/esm/packages/teams-js/dts/public/sharing/history.d.ts +47 -0
  157. package/dist/esm/packages/teams-js/dts/public/sharing/sharing.d.ts +93 -0
  158. package/dist/esm/packages/teams-js/dts/public/shortcutRelay.d.ts +53 -0
  159. package/dist/esm/packages/teams-js/dts/public/stageView/self.d.ts +23 -0
  160. package/dist/esm/packages/teams-js/dts/public/stageView/stageView.d.ts +81 -0
  161. package/dist/esm/packages/teams-js/dts/public/tasks.d.ts +52 -0
  162. package/dist/esm/packages/teams-js/dts/public/teamsAPIs.d.ts +79 -0
  163. package/dist/esm/packages/teams-js/dts/public/thirdPartyCloudStorage.d.ts +118 -0
  164. package/dist/esm/packages/teams-js/dts/public/uuidObject.d.ts +38 -0
  165. package/dist/esm/packages/teams-js/dts/public/validatedSafeString.d.ts +25 -0
  166. package/dist/esm/packages/teams-js/dts/public/version.d.ts +5 -0
  167. package/dist/esm/packages/teams-js/dts/public/videoEffects.d.ts +212 -0
  168. package/dist/esm/packages/teams-js/dts/public/visualMedia/image.d.ts +64 -0
  169. package/dist/esm/packages/teams-js/dts/public/visualMedia/visualMedia.d.ts +116 -0
  170. package/dist/esm/packages/teams-js/dts/public/webStorage.d.ts +25 -0
  171. package/dist/esm/packages/teams-js/src/artifactsForCDN/validDomains.json.js +1 -0
  172. package/dist/esm/packages/teams-js/src/index.js +1 -0
  173. package/dist/esm/packages/teams-js/src/internal/appHelpers.js +1 -0
  174. package/dist/esm/packages/teams-js/src/internal/childCommunication.js +1 -0
  175. package/dist/esm/packages/teams-js/src/internal/communication.js +1 -0
  176. package/dist/esm/packages/teams-js/src/internal/communicationUtils.js +1 -0
  177. package/dist/esm/packages/teams-js/src/internal/constants.js +1 -0
  178. package/dist/esm/packages/teams-js/src/internal/deepLinkConstants.js +1 -0
  179. package/dist/esm/packages/teams-js/src/internal/deepLinkUtilities.js +1 -0
  180. package/dist/esm/packages/teams-js/src/internal/dialogHelpers.js +1 -0
  181. package/dist/esm/packages/teams-js/src/internal/emailAddressValidation.js +1 -0
  182. package/dist/esm/packages/teams-js/src/internal/globalVars.js +1 -0
  183. package/dist/esm/packages/teams-js/src/internal/handlers.js +1 -0
  184. package/dist/esm/packages/teams-js/src/internal/hostToAppTelemetry.js +1 -0
  185. package/dist/esm/packages/teams-js/src/internal/idValidation.js +1 -0
  186. package/dist/esm/packages/teams-js/src/internal/internalAPIs.js +1 -0
  187. package/dist/esm/packages/teams-js/src/internal/marketplaceUtils.js +1 -0
  188. package/dist/esm/packages/teams-js/src/internal/mediaUtil.js +1 -0
  189. package/dist/esm/packages/teams-js/src/internal/messageObjects.js +1 -0
  190. package/dist/esm/packages/teams-js/src/internal/nestedAppAuthUtils.js +1 -0
  191. package/dist/esm/packages/teams-js/src/internal/pagesHelpers.js +1 -0
  192. package/dist/esm/packages/teams-js/src/internal/profileUtil.js +1 -0
  193. package/dist/esm/packages/teams-js/src/internal/responseHandler.js +1 -0
  194. package/dist/esm/packages/teams-js/src/internal/telemetry.js +1 -0
  195. package/dist/esm/packages/teams-js/src/internal/typeCheckUtilities.js +1 -0
  196. package/dist/esm/packages/teams-js/src/internal/urlPattern.js +1 -0
  197. package/dist/esm/packages/teams-js/src/internal/utils.js +1 -0
  198. package/dist/esm/packages/teams-js/src/internal/validOrigins.js +1 -0
  199. package/dist/esm/packages/teams-js/src/internal/videoEffectsUtils.js +1 -0
  200. package/dist/esm/packages/teams-js/src/internal/videoFrameTick.js +1 -0
  201. package/dist/esm/packages/teams-js/src/internal/videoPerformanceMonitor.js +1 -0
  202. package/dist/esm/packages/teams-js/src/internal/videoPerformanceStatistics.js +1 -0
  203. package/dist/esm/packages/teams-js/src/internal/visualMediaHelpers.js +1 -0
  204. package/dist/esm/packages/teams-js/src/internal/webStorageHelpers.js +1 -0
  205. package/dist/esm/packages/teams-js/src/private/appEntity.js +1 -0
  206. package/dist/esm/packages/teams-js/src/private/constants.js +1 -0
  207. package/dist/esm/packages/teams-js/src/private/conversations.js +1 -0
  208. package/dist/esm/packages/teams-js/src/private/copilot/copilot.js +1 -0
  209. package/dist/esm/packages/teams-js/src/private/copilot/customTelemetry.js +1 -0
  210. package/dist/esm/packages/teams-js/src/private/copilot/eligibility.js +1 -0
  211. package/dist/esm/packages/teams-js/src/private/copilot/sidePanel.js +1 -0
  212. package/dist/esm/packages/teams-js/src/private/copilot/sidePanelInterfaces.js +1 -0
  213. package/dist/esm/packages/teams-js/src/private/copilot/view.js +1 -0
  214. package/dist/esm/packages/teams-js/src/private/externalAppAuthentication.js +1 -0
  215. package/dist/esm/packages/teams-js/src/private/externalAppAuthenticationForCEA.js +1 -0
  216. package/dist/esm/packages/teams-js/src/private/externalAppCardActions.js +1 -0
  217. package/dist/esm/packages/teams-js/src/private/externalAppCardActionsForCEA.js +1 -0
  218. package/dist/esm/packages/teams-js/src/private/externalAppCardActionsForDA.js +1 -0
  219. package/dist/esm/packages/teams-js/src/private/externalAppCommands.js +1 -0
  220. package/dist/esm/packages/teams-js/src/private/externalAppErrorHandling.js +1 -0
  221. package/dist/esm/packages/teams-js/src/private/files.js +1 -0
  222. package/dist/esm/packages/teams-js/src/private/hostEntity/hostEntity.js +1 -0
  223. package/dist/esm/packages/teams-js/src/private/hostEntity/tab.js +1 -0
  224. package/dist/esm/packages/teams-js/src/private/interfaces.js +1 -0
  225. package/dist/esm/packages/teams-js/src/private/logs.js +1 -0
  226. package/dist/esm/packages/teams-js/src/private/meetingRoom.js +1 -0
  227. package/dist/esm/packages/teams-js/src/private/messageChannels/dataLayer.js +1 -0
  228. package/dist/esm/packages/teams-js/src/private/messageChannels/messageChannels.js +1 -0
  229. package/dist/esm/packages/teams-js/src/private/messageChannels/telemetry.js +1 -0
  230. package/dist/esm/packages/teams-js/src/private/nestedAppAuth/nestedAppAuthBridge.js +1 -0
  231. package/dist/esm/packages/teams-js/src/private/notifications.js +1 -0
  232. package/dist/esm/packages/teams-js/src/private/otherAppStateChange.js +1 -0
  233. package/dist/esm/packages/teams-js/src/private/plugins.js +1 -0
  234. package/dist/esm/packages/teams-js/src/private/privateAPIs.js +1 -0
  235. package/dist/esm/packages/teams-js/src/private/remoteCamera.js +1 -0
  236. package/dist/esm/packages/teams-js/src/private/store.js +1 -0
  237. package/dist/esm/packages/teams-js/src/private/teams/fullTrust/fullTrust.js +1 -0
  238. package/dist/esm/packages/teams-js/src/private/teams/fullTrust/joinedTeams.js +1 -0
  239. package/dist/esm/packages/teams-js/src/private/teams/teams.js +1 -0
  240. package/dist/esm/packages/teams-js/src/private/videoEffectsEx.js +1 -0
  241. package/dist/esm/packages/teams-js/src/private/widgetHosting/widgetHosting.js +1 -0
  242. package/dist/esm/packages/teams-js/src/public/adaptiveCards.js +1 -0
  243. package/dist/esm/packages/teams-js/src/public/app/app.js +1 -0
  244. package/dist/esm/packages/teams-js/src/public/app/lifecycle.js +1 -0
  245. package/dist/esm/packages/teams-js/src/public/appId.js +1 -0
  246. package/dist/esm/packages/teams-js/src/public/appInitialization.js +1 -0
  247. package/dist/esm/packages/teams-js/src/public/appInstallDialog.js +1 -0
  248. package/dist/esm/packages/teams-js/src/public/appPerformanceMetrics.js +1 -0
  249. package/dist/esm/packages/teams-js/src/public/appWindow.js +1 -0
  250. package/dist/esm/packages/teams-js/src/public/authentication.js +1 -0
  251. package/dist/esm/packages/teams-js/src/public/badge.js +1 -0
  252. package/dist/esm/packages/teams-js/src/public/barCode.js +1 -0
  253. package/dist/esm/packages/teams-js/src/public/calendar.js +1 -0
  254. package/dist/esm/packages/teams-js/src/public/call.js +1 -0
  255. package/dist/esm/packages/teams-js/src/public/chat.js +1 -0
  256. package/dist/esm/packages/teams-js/src/public/clipboard.js +1 -0
  257. package/dist/esm/packages/teams-js/src/public/connectivity.js +1 -0
  258. package/dist/esm/packages/teams-js/src/public/constants.js +1 -0
  259. package/dist/esm/packages/teams-js/src/public/dialog/adaptiveCard/adaptiveCard.js +1 -0
  260. package/dist/esm/packages/teams-js/src/public/dialog/adaptiveCard/bot.js +1 -0
  261. package/dist/esm/packages/teams-js/src/public/dialog/dialog.js +1 -0
  262. package/dist/esm/packages/teams-js/src/public/dialog/update.js +1 -0
  263. package/dist/esm/packages/teams-js/src/public/dialog/url/bot.js +1 -0
  264. package/dist/esm/packages/teams-js/src/public/dialog/url/parentCommunication.js +1 -0
  265. package/dist/esm/packages/teams-js/src/public/dialog/url/url.js +1 -0
  266. package/dist/esm/packages/teams-js/src/public/emailAddress.js +1 -0
  267. package/dist/esm/packages/teams-js/src/public/externalApp.js +1 -0
  268. package/dist/esm/packages/teams-js/src/public/featureFlags.js +1 -0
  269. package/dist/esm/packages/teams-js/src/public/geoLocation/geoLocation.js +1 -0
  270. package/dist/esm/packages/teams-js/src/public/geoLocation/map.js +1 -0
  271. package/dist/esm/packages/teams-js/src/public/haptics.js +1 -0
  272. package/dist/esm/packages/teams-js/src/public/interfaces.js +1 -0
  273. package/dist/esm/packages/teams-js/src/public/liveShareHost.js +1 -0
  274. package/dist/esm/packages/teams-js/src/public/location.js +1 -0
  275. package/dist/esm/packages/teams-js/src/public/mail/handoff.js +1 -0
  276. package/dist/esm/packages/teams-js/src/public/mail/mail.js +1 -0
  277. package/dist/esm/packages/teams-js/src/public/marketplace.js +1 -0
  278. package/dist/esm/packages/teams-js/src/public/media.js +1 -0
  279. package/dist/esm/packages/teams-js/src/public/meeting/appShareButton.js +1 -0
  280. package/dist/esm/packages/teams-js/src/public/meeting/meeting.js +1 -0
  281. package/dist/esm/packages/teams-js/src/public/menus.js +1 -0
  282. package/dist/esm/packages/teams-js/src/public/monetization.js +1 -0
  283. package/dist/esm/packages/teams-js/src/public/navigation.js +1 -0
  284. package/dist/esm/packages/teams-js/src/public/nestedAppAuth.js +1 -0
  285. package/dist/esm/packages/teams-js/src/public/offlineStorage/drafts.js +1 -0
  286. package/dist/esm/packages/teams-js/src/public/offlineStorage/inbox.js +1 -0
  287. package/dist/esm/packages/teams-js/src/public/offlineStorage/offlineStorage.js +1 -0
  288. package/dist/esm/packages/teams-js/src/public/offlineStorage/outbox.js +1 -0
  289. package/dist/esm/packages/teams-js/src/public/offlineStorage/sent.js +1 -0
  290. package/dist/esm/packages/teams-js/src/public/offlineStorage/sync.js +1 -0
  291. package/dist/esm/packages/teams-js/src/public/pages/appButton.js +1 -0
  292. package/dist/esm/packages/teams-js/src/public/pages/backStack.js +1 -0
  293. package/dist/esm/packages/teams-js/src/public/pages/config.js +1 -0
  294. package/dist/esm/packages/teams-js/src/public/pages/currentApp.js +1 -0
  295. package/dist/esm/packages/teams-js/src/public/pages/fullTrust.js +1 -0
  296. package/dist/esm/packages/teams-js/src/public/pages/pages.js +1 -0
  297. package/dist/esm/packages/teams-js/src/public/pages/tabs.js +1 -0
  298. package/dist/esm/packages/teams-js/src/public/people.js +1 -0
  299. package/dist/esm/packages/teams-js/src/public/profile.js +1 -0
  300. package/dist/esm/packages/teams-js/src/public/publicAPIs.js +1 -0
  301. package/dist/esm/packages/teams-js/src/public/runtime.js +1 -0
  302. package/dist/esm/packages/teams-js/src/public/search.js +1 -0
  303. package/dist/esm/packages/teams-js/src/public/secondaryBrowser.js +1 -0
  304. package/dist/esm/packages/teams-js/src/public/security.js +1 -0
  305. package/dist/esm/packages/teams-js/src/public/serializable.interface.js +1 -0
  306. package/dist/esm/packages/teams-js/src/public/settings.js +1 -0
  307. package/dist/esm/packages/teams-js/src/public/sharing/history.js +1 -0
  308. package/dist/esm/packages/teams-js/src/public/sharing/sharing.js +1 -0
  309. package/dist/esm/packages/teams-js/src/public/shortcutRelay.js +1 -0
  310. package/dist/esm/packages/teams-js/src/public/stageView/self.js +1 -0
  311. package/dist/esm/packages/teams-js/src/public/stageView/stageView.js +1 -0
  312. package/dist/esm/packages/teams-js/src/public/tasks.js +1 -0
  313. package/dist/esm/packages/teams-js/src/public/teamsAPIs.js +1 -0
  314. package/dist/esm/packages/teams-js/src/public/thirdPartyCloudStorage.js +1 -0
  315. package/dist/esm/packages/teams-js/src/public/uuidObject.js +1 -0
  316. package/dist/esm/packages/teams-js/src/public/validatedSafeString.js +1 -0
  317. package/dist/esm/packages/teams-js/src/public/version.js +1 -0
  318. package/dist/esm/packages/teams-js/src/public/videoEffects.js +1 -0
  319. package/dist/esm/packages/teams-js/src/public/visualMedia/image.js +1 -0
  320. package/dist/esm/packages/teams-js/src/public/visualMedia/visualMedia.js +1 -0
  321. package/dist/esm/packages/teams-js/src/public/webStorage.js +1 -0
  322. package/dist/umd/JevelinBridge-manifest.json +642 -0
  323. package/dist/umd/JevelinBridge.js +23119 -0
  324. package/dist/umd/JevelinBridge.js.map +1 -0
  325. package/dist/umd/JevelinBridge.min.js +3 -0
  326. package/dist/umd/JevelinBridge.min.js.LICENSE.txt +8 -0
  327. package/dist/umd/JevelinBridge.min.js.map +1 -0
  328. package/package.json +53 -0
@@ -0,0 +1,258 @@
1
+ /**
2
+ * Module to interact with the offline storage capability of the host.
3
+ * Provides a mail-like pattern with inbox, drafts, outbox, and sent boxes
4
+ * for managing server-driven dynamic schemas with offline-first data persistence.
5
+ *
6
+ * @beta
7
+ * @module
8
+ */
9
+ import * as drafts from './drafts';
10
+ import * as inbox from './inbox';
11
+ import * as outbox from './outbox';
12
+ import * as sent from './sent';
13
+ import * as sync from './sync';
14
+ /**
15
+ * Represents a field definition within a schema
16
+ *
17
+ * @beta
18
+ */
19
+ export interface SchemaField {
20
+ /** The name of the field */
21
+ name: string;
22
+ /** The data type of the field */
23
+ type: 'text' | 'integer' | 'real' | 'boolean' | 'json' | 'blob_ref';
24
+ /** Whether this field should be indexed for query performance */
25
+ indexed?: boolean;
26
+ /** Whether this field is required */
27
+ required?: boolean;
28
+ /** Default value for the field */
29
+ defaultValue?: string | number | boolean;
30
+ }
31
+ /**
32
+ * Represents a server-driven schema definition used to create storage tables dynamically
33
+ *
34
+ * @beta
35
+ */
36
+ export interface SchemaDefinition {
37
+ /** Unique identifier for this schema */
38
+ schemaId: string;
39
+ /** Version number of the schema, used for migrations */
40
+ version: number;
41
+ /** Human-readable display name for the schema */
42
+ displayName?: string;
43
+ /** Field definitions for this schema */
44
+ fields: SchemaField[];
45
+ }
46
+ /**
47
+ * Information about a registered schema
48
+ *
49
+ * @beta
50
+ */
51
+ export interface SchemaInfo {
52
+ /** Unique identifier for this schema */
53
+ schemaId: string;
54
+ /** Current version number */
55
+ version: number;
56
+ /** Human-readable display name */
57
+ displayName?: string;
58
+ /** Number of records across all boxes */
59
+ recordCount: number;
60
+ }
61
+ /**
62
+ * Result of a schema migration operation
63
+ *
64
+ * @beta
65
+ */
66
+ export interface MigrationResult {
67
+ /** Whether the migration completed successfully */
68
+ success: boolean;
69
+ /** The previous schema version */
70
+ previousVersion: number;
71
+ /** The new schema version */
72
+ currentVersion: number;
73
+ /** Fields that were added during migration */
74
+ addedFields: string[];
75
+ /** Fields that were deprecated during migration */
76
+ deprecatedFields: string[];
77
+ }
78
+ /**
79
+ * Represents a filter condition for querying records
80
+ *
81
+ * @beta
82
+ */
83
+ export interface QueryFilter {
84
+ /** Field name to filter on */
85
+ field: string;
86
+ /** Comparison operator */
87
+ operator: 'eq' | 'neq' | 'gt' | 'gte' | 'lt' | 'lte' | 'contains' | 'in';
88
+ /** Value to compare against */
89
+ value: string | number | boolean | string[] | number[];
90
+ }
91
+ /**
92
+ * Options for paginated queries
93
+ *
94
+ * @beta
95
+ */
96
+ export interface QueryOptions {
97
+ /** Filters to apply */
98
+ filters?: QueryFilter[];
99
+ /** Field to sort by */
100
+ sortBy?: string;
101
+ /** Sort direction */
102
+ sortOrder?: 'asc' | 'desc';
103
+ /** Maximum number of results to return */
104
+ limit?: number;
105
+ /** Number of results to skip */
106
+ offset?: number;
107
+ }
108
+ /**
109
+ * Paginated result set
110
+ *
111
+ * @beta
112
+ */
113
+ export interface PaginatedResult<T = Record<string, unknown>> {
114
+ /** The result items */
115
+ items: T[];
116
+ /** Total number of matching records */
117
+ totalCount: number;
118
+ /** Whether there are more results beyond this page */
119
+ hasMore: boolean;
120
+ }
121
+ /**
122
+ * The status of a record in the offline storage system
123
+ *
124
+ * @beta
125
+ */
126
+ export declare enum RecordStatus {
127
+ /** Record is a local draft, not yet submitted for sync */
128
+ Draft = "draft",
129
+ /** Record is queued for sync */
130
+ Pending = "pending",
131
+ /** Record is currently being synced */
132
+ Syncing = "syncing",
133
+ /** Record has been successfully synced */
134
+ Synced = "synced",
135
+ /** Record sync has failed */
136
+ Failed = "failed"
137
+ }
138
+ /**
139
+ * The box (category) a record belongs to
140
+ *
141
+ * @beta
142
+ */
143
+ export declare enum RecordBox {
144
+ /** Server-owned records received from the server */
145
+ Inbox = "inbox",
146
+ /** Client-owned records created locally but not yet submitted */
147
+ Drafts = "drafts",
148
+ /** Sync-owned records submitted and queued/in-progress for upload */
149
+ Outbox = "outbox",
150
+ /** Synchronized copy of successfully uploaded records */
151
+ Sent = "sent"
152
+ }
153
+ /**
154
+ * Metadata fields attached to every record in offline storage
155
+ *
156
+ * @beta
157
+ */
158
+ export interface RecordMetadata {
159
+ /** Client-generated unique identifier */
160
+ id: string;
161
+ /** Which box this record belongs to */
162
+ box: RecordBox;
163
+ /** Current sync status */
164
+ status: RecordStatus;
165
+ /** Optimistic locking version (client-side) */
166
+ version: number;
167
+ /** Last known server version */
168
+ serverVersion?: number;
169
+ /** Timestamp when the record was created */
170
+ createdAt: number;
171
+ /** Timestamp when the record was last updated */
172
+ updatedAt: number;
173
+ /** Timestamp when the record was last synced */
174
+ syncedAt?: number;
175
+ /** Last sync error message, if any */
176
+ error?: string;
177
+ }
178
+ /**
179
+ * A record stored in offline storage, combining metadata with schema-driven data
180
+ *
181
+ * @beta
182
+ */
183
+ export type OfflineRecord<T = Record<string, unknown>> = RecordMetadata & {
184
+ /** The schema-driven data payload */
185
+ data: T;
186
+ };
187
+ /**
188
+ * Registers a new schema definition with the offline storage system.
189
+ * The host will create the necessary storage structures to hold records of this schema.
190
+ *
191
+ * @param schema - The schema definition to register
192
+ * @returns A promise that resolves when the schema has been registered
193
+ *
194
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
195
+ * @throws Error if the offlineStorage capability is not supported
196
+ *
197
+ * @beta
198
+ */
199
+ export declare function registerSchema(schema: SchemaDefinition): Promise<void>;
200
+ /**
201
+ * Checks whether a schema with the given identifier is registered locally
202
+ *
203
+ * @param schemaId - The unique identifier of the schema to check
204
+ * @returns A promise that resolves to `true` if the schema exists, `false` otherwise
205
+ *
206
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
207
+ * @throws Error if the offlineStorage capability is not supported
208
+ *
209
+ * @beta
210
+ */
211
+ export declare function hasSchema(schemaId: string): Promise<boolean>;
212
+ /**
213
+ * Lists all schemas currently registered in the offline storage system
214
+ *
215
+ * @returns A promise that resolves to an array of schema information objects
216
+ *
217
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
218
+ * @throws Error if the offlineStorage capability is not supported
219
+ *
220
+ * @beta
221
+ */
222
+ export declare function listSchemas(): Promise<SchemaInfo[]>;
223
+ /**
224
+ * Migrates an existing schema to a new version.
225
+ * Added fields will be created, removed fields will be marked deprecated (not dropped).
226
+ *
227
+ * @param schema - The updated schema definition with an incremented version number
228
+ * @returns A promise that resolves to the migration result
229
+ *
230
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
231
+ * @throws Error if the offlineStorage capability is not supported
232
+ *
233
+ * @beta
234
+ */
235
+ export declare function migrateSchema(schema: SchemaDefinition): Promise<MigrationResult>;
236
+ /**
237
+ * Removes a schema and all its associated records from offline storage.
238
+ * This operation is irreversible.
239
+ *
240
+ * @param schemaId - The unique identifier of the schema to remove
241
+ * @returns A promise that resolves when the schema has been removed
242
+ *
243
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
244
+ * @throws Error if the offlineStorage capability is not supported
245
+ *
246
+ * @beta
247
+ */
248
+ export declare function removeSchema(schemaId: string): Promise<void>;
249
+ /**
250
+ * Checks if the offlineStorage capability is supported by the host
251
+ * @returns boolean to represent whether the offlineStorage capability is supported
252
+ *
253
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
254
+ *
255
+ * @beta
256
+ */
257
+ export declare function isSupported(): boolean;
258
+ export { drafts, inbox, outbox, sent, sync };
@@ -0,0 +1,112 @@
1
+ /**
2
+ * Module for managing sync-owned outbox records in offline storage.
3
+ * Outbox records are submitted drafts that are queued or in-progress for synchronization to the server.
4
+ *
5
+ * @beta
6
+ * @module
7
+ */
8
+ import { OfflineRecord, RecordStatus } from './offlineStorage';
9
+ /**
10
+ * Summary information about the outbox state
11
+ *
12
+ * @beta
13
+ */
14
+ export interface OutboxSummary {
15
+ /** Total number of records in the outbox */
16
+ totalCount: number;
17
+ /** Number of records pending sync */
18
+ pendingCount: number;
19
+ /** Number of records currently syncing */
20
+ syncingCount: number;
21
+ /** Number of records that failed to sync */
22
+ failedCount: number;
23
+ }
24
+ /**
25
+ * An outbox entry with additional sync status information
26
+ *
27
+ * @beta
28
+ */
29
+ export interface OutboxEntry {
30
+ /** The offline record data */
31
+ record: OfflineRecord;
32
+ /** Number of sync retry attempts made */
33
+ retryCount: number;
34
+ /** Timestamp of the next scheduled retry, if applicable */
35
+ nextRetryAt?: number;
36
+ }
37
+ /**
38
+ * Handler invoked when the status of an outbox record changes
39
+ *
40
+ * @beta
41
+ */
42
+ export type OutboxStatusChangeHandler = (schemaId: string, id: string, status: RecordStatus, error?: string) => void;
43
+ /**
44
+ * Lists all outbox records for a given schema
45
+ *
46
+ * @param schemaId - The schema identifier to list outbox records for
47
+ * @returns A promise that resolves to an array of outbox entries
48
+ *
49
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
50
+ * @throws Error if the offlineStorage capability is not supported
51
+ *
52
+ * @beta
53
+ */
54
+ export declare function list(schemaId: string): Promise<OutboxEntry[]>;
55
+ /**
56
+ * Gets a summary of the outbox state across all schemas or for a specific schema
57
+ *
58
+ * @param schemaId - Optional schema identifier to get summary for. If omitted, returns summary across all schemas.
59
+ * @returns A promise that resolves to an outbox summary
60
+ *
61
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
62
+ * @throws Error if the offlineStorage capability is not supported
63
+ *
64
+ * @beta
65
+ */
66
+ export declare function getSummary(schemaId?: string): Promise<OutboxSummary>;
67
+ /**
68
+ * Retries synchronization of a failed outbox record
69
+ *
70
+ * @param schemaId - The schema identifier for this record
71
+ * @param id - The unique identifier of the outbox record to retry
72
+ * @returns A promise that resolves when the record has been re-queued for sync
73
+ *
74
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
75
+ * @throws Error if the offlineStorage capability is not supported
76
+ *
77
+ * @beta
78
+ */
79
+ export declare function retry(schemaId: string, id: string): Promise<void>;
80
+ /**
81
+ * Cancels an outbox record, moving it back to drafts
82
+ *
83
+ * @param schemaId - The schema identifier for this record
84
+ * @param id - The unique identifier of the outbox record to cancel
85
+ * @returns A promise that resolves when the record has been moved back to drafts
86
+ *
87
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
88
+ * @throws Error if the offlineStorage capability is not supported
89
+ *
90
+ * @beta
91
+ */
92
+ export declare function cancel(schemaId: string, id: string): Promise<void>;
93
+ /**
94
+ * Registers a handler to be called when the status of an outbox record changes
95
+ *
96
+ * @param handler - The handler function to invoke on status changes
97
+ *
98
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
99
+ * @throws Error if the offlineStorage capability is not supported
100
+ *
101
+ * @beta
102
+ */
103
+ export declare function registerOnStatusChangeHandler(handler: OutboxStatusChangeHandler): void;
104
+ /**
105
+ * Checks if the offlineStorage.outbox capability is supported by the host
106
+ * @returns boolean to represent whether the offlineStorage.outbox capability is supported
107
+ *
108
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
109
+ *
110
+ * @beta
111
+ */
112
+ export declare function isSupported(): boolean;
@@ -0,0 +1,69 @@
1
+ /**
2
+ * Module for managing synchronized copies of successfully uploaded records.
3
+ * Sent records are confirmation copies that have been synced to the server.
4
+ *
5
+ * @beta
6
+ * @module
7
+ */
8
+ import { OfflineRecord, PaginatedResult, QueryOptions } from './offlineStorage';
9
+ /**
10
+ * Retrieves a single sent record by its identifier
11
+ *
12
+ * @param schemaId - The schema identifier for this record
13
+ * @param id - The unique identifier of the sent record to retrieve
14
+ * @returns A promise that resolves to the sent record
15
+ *
16
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
17
+ * @throws Error if the offlineStorage capability is not supported
18
+ *
19
+ * @beta
20
+ */
21
+ export declare function get(schemaId: string, id: string): Promise<OfflineRecord>;
22
+ /**
23
+ * Queries sent records with optional filtering and pagination
24
+ *
25
+ * @param schemaId - The schema identifier to query
26
+ * @param options - Optional query parameters including filters, sorting, and pagination
27
+ * @returns A promise that resolves to a paginated result set
28
+ *
29
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
30
+ * @throws Error if the offlineStorage capability is not supported
31
+ *
32
+ * @beta
33
+ */
34
+ export declare function query(schemaId: string, options?: QueryOptions): Promise<PaginatedResult>;
35
+ /**
36
+ * Lists sent records that were synced after a given timestamp
37
+ *
38
+ * @param schemaId - The schema identifier to list sent records for
39
+ * @param since - Unix timestamp in milliseconds; only records synced after this time will be returned
40
+ * @returns A promise that resolves to an array of sent records
41
+ *
42
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
43
+ * @throws Error if the offlineStorage capability is not supported
44
+ *
45
+ * @beta
46
+ */
47
+ export declare function listSince(schemaId: string, since: number): Promise<OfflineRecord[]>;
48
+ /**
49
+ * Removes sent records older than the specified timestamp to free up storage space
50
+ *
51
+ * @param schemaId - The schema identifier to purge records from
52
+ * @param olderThan - Unix timestamp in milliseconds; records synced before this time will be removed
53
+ * @returns A promise that resolves to the number of records purged
54
+ *
55
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
56
+ * @throws Error if the offlineStorage capability is not supported
57
+ *
58
+ * @beta
59
+ */
60
+ export declare function purge(schemaId: string, olderThan: number): Promise<number>;
61
+ /**
62
+ * Checks if the offlineStorage.sent capability is supported by the host
63
+ * @returns boolean to represent whether the offlineStorage.sent capability is supported
64
+ *
65
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
66
+ *
67
+ * @beta
68
+ */
69
+ export declare function isSupported(): boolean;
@@ -0,0 +1,183 @@
1
+ /**
2
+ * Module for controlling and monitoring the synchronization engine in offline storage.
3
+ * The sync module provides APIs to trigger sync operations, monitor status, and handle conflicts.
4
+ *
5
+ * @beta
6
+ * @module
7
+ */
8
+ /**
9
+ * Represents the overall synchronization status
10
+ *
11
+ * @beta
12
+ */
13
+ export declare enum SyncState {
14
+ /** Sync engine is idle, no operations in progress */
15
+ Idle = "idle",
16
+ /** Sync engine is actively uploading/downloading records */
17
+ Syncing = "syncing",
18
+ /** Sync engine is waiting for network connectivity */
19
+ WaitingForNetwork = "waitingForNetwork",
20
+ /** Sync engine encountered an error */
21
+ Error = "error"
22
+ }
23
+ /**
24
+ * Detailed sync status information
25
+ *
26
+ * @beta
27
+ */
28
+ export interface SyncStatus {
29
+ /** Current state of the sync engine */
30
+ state: SyncState;
31
+ /** Timestamp of the last successful sync */
32
+ lastSyncAt?: number;
33
+ /** Number of records pending upload */
34
+ pendingUploadCount: number;
35
+ /** Number of records pending download */
36
+ pendingDownloadCount: number;
37
+ /** Whether the device currently has network connectivity */
38
+ isOnline: boolean;
39
+ /** Error message if state is Error */
40
+ error?: string;
41
+ }
42
+ /**
43
+ * Result of a manually triggered sync operation
44
+ *
45
+ * @beta
46
+ */
47
+ export interface SyncResult {
48
+ /** Whether the sync operation completed successfully */
49
+ success: boolean;
50
+ /** Number of records uploaded to the server */
51
+ uploadedCount: number;
52
+ /** Number of records downloaded from the server */
53
+ downloadedCount: number;
54
+ /** Number of conflicts encountered during sync */
55
+ conflictCount: number;
56
+ /** Timestamp when this sync completed */
57
+ completedAt: number;
58
+ }
59
+ /**
60
+ * Strategy for resolving conflicts between client and server versions
61
+ *
62
+ * @beta
63
+ */
64
+ export declare enum ConflictStrategy {
65
+ /** Server version always wins (default) */
66
+ ServerWins = "serverWins",
67
+ /** Client version always wins */
68
+ ClientWins = "clientWins",
69
+ /** Escalate to the application layer for manual resolution */
70
+ Manual = "manual"
71
+ }
72
+ /**
73
+ * Information about a sync conflict
74
+ *
75
+ * @beta
76
+ */
77
+ export interface ConflictInfo {
78
+ /** The schema identifier of the conflicting record */
79
+ schemaId: string;
80
+ /** The record identifier */
81
+ recordId: string;
82
+ /** The client version of the data */
83
+ clientData: Record<string, unknown>;
84
+ /** The server version of the data */
85
+ serverData: Record<string, unknown>;
86
+ /** Client-side version number */
87
+ clientVersion: number;
88
+ /** Server-side version number */
89
+ serverVersion: number;
90
+ }
91
+ /**
92
+ * Handler invoked when the sync status changes
93
+ *
94
+ * @beta
95
+ */
96
+ export type SyncStatusChangeHandler = (status: SyncStatus) => void;
97
+ /**
98
+ * Handler invoked when a sync conflict is detected and the strategy is Manual
99
+ *
100
+ * @beta
101
+ */
102
+ export type SyncConflictHandler = (conflict: ConflictInfo) => void;
103
+ /**
104
+ * Triggers an immediate synchronization operation
105
+ *
106
+ * @returns A promise that resolves to the sync result when the operation completes
107
+ *
108
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
109
+ * @throws Error if the offlineStorage capability is not supported
110
+ *
111
+ * @beta
112
+ */
113
+ export declare function trigger(): Promise<SyncResult>;
114
+ /**
115
+ * Gets the current synchronization status
116
+ *
117
+ * @returns A promise that resolves to the current sync status
118
+ *
119
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
120
+ * @throws Error if the offlineStorage capability is not supported
121
+ *
122
+ * @beta
123
+ */
124
+ export declare function getStatus(): Promise<SyncStatus>;
125
+ /**
126
+ * Sets the conflict resolution strategy for a given schema
127
+ *
128
+ * @param schemaId - The schema identifier to configure
129
+ * @param strategy - The conflict resolution strategy to use
130
+ * @returns A promise that resolves when the strategy has been set
131
+ *
132
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
133
+ * @throws Error if the offlineStorage capability is not supported
134
+ *
135
+ * @beta
136
+ */
137
+ export declare function setConflictStrategy(schemaId: string, strategy: ConflictStrategy): Promise<void>;
138
+ /**
139
+ * Resolves a conflict by choosing either the client or server version
140
+ *
141
+ * @param schemaId - The schema identifier of the conflicting record
142
+ * @param recordId - The record identifier
143
+ * @param resolution - Whether to keep the client or server version
144
+ * @returns A promise that resolves when the conflict has been resolved
145
+ *
146
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
147
+ * @throws Error if the offlineStorage capability is not supported
148
+ *
149
+ * @beta
150
+ */
151
+ export declare function resolveConflict(schemaId: string, recordId: string, resolution: 'client' | 'server'): Promise<void>;
152
+ /**
153
+ * Registers a handler to be called when the sync status changes
154
+ *
155
+ * @param handler - The handler function to invoke on status changes
156
+ *
157
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
158
+ * @throws Error if the offlineStorage capability is not supported
159
+ *
160
+ * @beta
161
+ */
162
+ export declare function registerOnStatusChangeHandler(handler: SyncStatusChangeHandler): void;
163
+ /**
164
+ * Registers a handler to be called when a sync conflict is detected.
165
+ * This handler is only invoked when the conflict strategy is set to {@link ConflictStrategy.Manual}.
166
+ *
167
+ * @param handler - The handler function to invoke when a conflict occurs
168
+ *
169
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
170
+ * @throws Error if the offlineStorage capability is not supported
171
+ *
172
+ * @beta
173
+ */
174
+ export declare function registerOnConflictHandler(handler: SyncConflictHandler): void;
175
+ /**
176
+ * Checks if the offlineStorage.sync capability is supported by the host
177
+ * @returns boolean to represent whether the offlineStorage.sync capability is supported
178
+ *
179
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
180
+ *
181
+ * @beta
182
+ */
183
+ export declare function isSupported(): boolean;
@@ -0,0 +1,30 @@
1
+ /**
2
+ * Provides APIs to interact with the app button part of the SDK.
3
+ * @module
4
+ */
5
+ import { handlerFunctionType } from './pages';
6
+ /**
7
+ * Registers a handler for clicking the app button.
8
+ * Only one handler can be registered at a time. A subsequent registration replaces an existing registration.
9
+ * @param handler - The handler to invoke when the personal app button is clicked in the app bar.
10
+ */
11
+ export declare function onClick(handler: handlerFunctionType): void;
12
+ /**
13
+ * Registers a handler for entering hover of the app button.
14
+ * Only one handler can be registered at a time. A subsequent registration replaces an existing registration.
15
+ * @param handler - The handler to invoke when entering hover of the personal app button in the app bar.
16
+ */
17
+ export declare function onHoverEnter(handler: handlerFunctionType): void;
18
+ /**
19
+ * Registers a handler for exiting hover of the app button.
20
+ * Only one handler can be registered at a time. A subsequent registration replaces an existing registration.
21
+ * @param handler - The handler to invoke when exiting hover of the personal app button in the app bar.
22
+ */
23
+ export declare function onHoverLeave(handler: handlerFunctionType): void;
24
+ /**
25
+ * Checks if pages.appButton capability is supported by the host
26
+ * @returns boolean to represent whether the pages.appButton capability is supported
27
+ *
28
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
29
+ */
30
+ export declare function isSupported(): boolean;
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Provides APIs for handling the user's navigational history.
3
+ * @module
4
+ */
5
+ import { backButtonHandlerFunctionType } from './pages';
6
+ /**
7
+ * @hidden
8
+ * Register backButtonPress handler.
9
+ *
10
+ * @internal
11
+ * Limited to Microsoft-internal use.
12
+ */
13
+ export declare function _initialize(): void;
14
+ /**
15
+ * Navigates back in the hosted application. See {@link pages.backStack.registerBackButtonHandler} for notes on usage.
16
+ * @returns Promise that resolves when the navigation has completed.
17
+ */
18
+ export declare function navigateBack(): Promise<void>;
19
+ /**
20
+ * Registers a handler for user presses of the host client's back button. Experiences that maintain an internal
21
+ * navigation stack should use this handler to navigate the user back within their frame. If an application finds
22
+ * that after running its back button handler it cannot handle the event it should call the navigateBack
23
+ * method to ask the host client to handle it instead.
24
+ * @param handler - The handler to invoke when the user presses the host client's back button.
25
+ */
26
+ export declare function registerBackButtonHandler(handler: backButtonHandlerFunctionType): void;
27
+ /**
28
+ * @hidden
29
+ * Undocumented helper function with shared code between deprecated version and current version of the registerBackButtonHandler API.
30
+ *
31
+ * @internal
32
+ * Limited to Microsoft-internal use
33
+ * @param apiVersionTag - The tag indicating API version number with name
34
+ * @param handler - The handler to invoke when the user presses the host client's back button.
35
+ * @param versionSpecificHelper - The helper function containing logic pertaining to a specific version of the API.
36
+ */
37
+ export declare function registerBackButtonHandlerHelper(apiVersionTag: string, handler: () => boolean, versionSpecificHelper?: () => void): void;
38
+ /**
39
+ * Checks if the pages.backStack capability is supported by the host
40
+ * @returns boolean to represent whether the pages.backStack capability is supported
41
+ *
42
+ * @throws Error if {@linkcode app.initialize} has not successfully completed
43
+ */
44
+ export declare function isSupported(): boolean;