@sendbird/uikit-react-native 2.1.0 → 2.3.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 (431) hide show
  1. package/README.md +42 -17
  2. package/lib/commonjs/components/ChatFlatList.js +2 -1
  3. package/lib/commonjs/components/ChatFlatList.js.map +1 -1
  4. package/lib/commonjs/components/FileViewer.js +2 -5
  5. package/lib/commonjs/components/FileViewer.js.map +1 -1
  6. package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js +11 -6
  7. package/lib/commonjs/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +1 -1
  8. package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js +12 -2
  9. package/lib/commonjs/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +1 -1
  10. package/lib/commonjs/components/MessageRenderer/FileMessage/VideoFileMessage.js +26 -11
  11. package/lib/commonjs/components/MessageRenderer/FileMessage/VideoFileMessage.js.map +1 -1
  12. package/lib/commonjs/components/MessageRenderer/FileMessage/index.js +1 -6
  13. package/lib/commonjs/components/MessageRenderer/FileMessage/index.js.map +1 -1
  14. package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js +86 -10
  15. package/lib/commonjs/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +1 -1
  16. package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js +102 -15
  17. package/lib/commonjs/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +1 -1
  18. package/lib/commonjs/components/MessageRenderer/UserMessage/index.js.map +1 -1
  19. package/lib/commonjs/components/MessageRenderer/index.js +22 -3
  20. package/lib/commonjs/components/MessageRenderer/index.js.map +1 -1
  21. package/lib/commonjs/components/ReactionAddons/BottomSheetReactionAddon.js +150 -0
  22. package/lib/commonjs/components/ReactionAddons/BottomSheetReactionAddon.js.map +1 -0
  23. package/lib/commonjs/components/ReactionAddons/MessageReactionAddon.js +135 -0
  24. package/lib/commonjs/components/ReactionAddons/MessageReactionAddon.js.map +1 -0
  25. package/lib/commonjs/components/ReactionAddons/ReactionRoundedButton.js +87 -0
  26. package/lib/commonjs/components/ReactionAddons/ReactionRoundedButton.js.map +1 -0
  27. package/lib/commonjs/components/ReactionAddons/index.js +19 -0
  28. package/lib/commonjs/components/ReactionAddons/index.js.map +1 -0
  29. package/lib/commonjs/components/ReactionBottomSheets/ReactionListBottomSheet.js +150 -0
  30. package/lib/commonjs/components/ReactionBottomSheets/ReactionListBottomSheet.js.map +1 -0
  31. package/lib/commonjs/components/ReactionBottomSheets/ReactionUserListBottomSheet.js +276 -0
  32. package/lib/commonjs/components/ReactionBottomSheets/ReactionUserListBottomSheet.js.map +1 -0
  33. package/lib/commonjs/components/ReactionBottomSheets/index.js +19 -0
  34. package/lib/commonjs/components/ReactionBottomSheets/index.js.map +1 -0
  35. package/lib/commonjs/constants.js +3 -1
  36. package/lib/commonjs/constants.js.map +1 -1
  37. package/lib/commonjs/containers/GroupChannelPreviewContainer.js +4 -1
  38. package/lib/commonjs/containers/GroupChannelPreviewContainer.js.map +1 -1
  39. package/lib/commonjs/containers/SendbirdUIKitContainer.js +130 -79
  40. package/lib/commonjs/containers/SendbirdUIKitContainer.js.map +1 -1
  41. package/lib/commonjs/contexts/PlatformServiceCtx.js.map +1 -1
  42. package/lib/commonjs/contexts/ReactionCtx.js +107 -0
  43. package/lib/commonjs/contexts/ReactionCtx.js.map +1 -0
  44. package/lib/commonjs/contexts/SendbirdChatCtx.js +26 -18
  45. package/lib/commonjs/contexts/SendbirdChatCtx.js.map +1 -1
  46. package/lib/commonjs/contexts/UserProfileCtx.js +9 -0
  47. package/lib/commonjs/contexts/UserProfileCtx.js.map +1 -1
  48. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/EditInput.js +33 -37
  49. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +1 -1
  50. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js +95 -23
  51. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +1 -1
  52. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js +121 -31
  53. package/lib/commonjs/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -1
  54. package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js +34 -13
  55. package/lib/commonjs/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -1
  56. package/lib/commonjs/domain/groupChannel/component/GroupChannelSuggestedMentionList.js +210 -0
  57. package/lib/commonjs/domain/groupChannel/component/GroupChannelSuggestedMentionList.js.map +1 -0
  58. package/lib/commonjs/domain/groupChannel/index.js +8 -0
  59. package/lib/commonjs/domain/groupChannel/index.js.map +1 -1
  60. package/lib/commonjs/domain/groupChannel/module/createGroupChannelModule.js +4 -0
  61. package/lib/commonjs/domain/groupChannel/module/createGroupChannelModule.js.map +1 -1
  62. package/lib/commonjs/domain/groupChannel/module/moduleContext.js +4 -4
  63. package/lib/commonjs/domain/groupChannel/module/moduleContext.js.map +1 -1
  64. package/lib/commonjs/domain/groupChannel/types.js.map +1 -1
  65. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js +3 -2
  66. package/lib/commonjs/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js.map +1 -1
  67. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js +2 -1
  68. package/lib/commonjs/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
  69. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js +2 -1
  70. package/lib/commonjs/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js.map +1 -1
  71. package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js +39 -0
  72. package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js.map +1 -0
  73. package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js +140 -0
  74. package/lib/commonjs/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js.map +1 -0
  75. package/lib/commonjs/domain/groupChannelNotifications/index.js +46 -0
  76. package/lib/commonjs/domain/groupChannelNotifications/index.js.map +1 -0
  77. package/lib/commonjs/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js +33 -0
  78. package/lib/commonjs/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js.map +1 -0
  79. package/lib/commonjs/domain/groupChannelNotifications/module/moduleContext.js +45 -0
  80. package/lib/commonjs/domain/groupChannelNotifications/module/moduleContext.js.map +1 -0
  81. package/lib/commonjs/domain/groupChannelNotifications/types.js +6 -0
  82. package/lib/commonjs/domain/groupChannelNotifications/types.js.map +1 -0
  83. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsList.js +2 -1
  84. package/lib/commonjs/domain/groupChannelOperators/component/GroupChannelOperatorsList.js.map +1 -1
  85. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +49 -6
  86. package/lib/commonjs/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
  87. package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js +11 -16
  88. package/lib/commonjs/domain/groupChannelSettings/module/moduleContext.js.map +1 -1
  89. package/lib/commonjs/domain/groupChannelSettings/types.js.map +1 -1
  90. package/lib/commonjs/domain/groupChannelUserList/types.js.map +1 -1
  91. package/lib/commonjs/domain/userList/component/UserListList.js +4 -1
  92. package/lib/commonjs/domain/userList/component/UserListList.js.map +1 -1
  93. package/lib/commonjs/domain/userList/module/createUserListModule.js.map +1 -1
  94. package/lib/commonjs/fragments/createGroupChannelCreateFragment.js.map +1 -1
  95. package/lib/commonjs/fragments/createGroupChannelFragment.js +11 -4
  96. package/lib/commonjs/fragments/createGroupChannelFragment.js.map +1 -1
  97. package/lib/commonjs/fragments/createGroupChannelInviteFragment.js.map +1 -1
  98. package/lib/commonjs/fragments/createGroupChannelListFragment.js +4 -14
  99. package/lib/commonjs/fragments/createGroupChannelListFragment.js.map +1 -1
  100. package/lib/commonjs/fragments/createGroupChannelNotificationsFragment.js +34 -0
  101. package/lib/commonjs/fragments/createGroupChannelNotificationsFragment.js.map +1 -0
  102. package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js +3 -1
  103. package/lib/commonjs/fragments/createGroupChannelSettingsFragment.js.map +1 -1
  104. package/lib/commonjs/hooks/useConnection.js +3 -0
  105. package/lib/commonjs/hooks/useConnection.js.map +1 -1
  106. package/lib/commonjs/hooks/useContext.js +11 -1
  107. package/lib/commonjs/hooks/useContext.js.map +1 -1
  108. package/lib/commonjs/hooks/useKeyboardStatus.js +97 -0
  109. package/lib/commonjs/hooks/useKeyboardStatus.js.map +1 -0
  110. package/lib/commonjs/hooks/useMentionSuggestion.js +110 -0
  111. package/lib/commonjs/hooks/useMentionSuggestion.js.map +1 -0
  112. package/lib/commonjs/hooks/useMentionTextInput.js +139 -0
  113. package/lib/commonjs/hooks/useMentionTextInput.js.map +1 -0
  114. package/lib/commonjs/index.js +95 -40
  115. package/lib/commonjs/index.js.map +1 -1
  116. package/lib/commonjs/libs/EmojiManager.js +100 -0
  117. package/lib/commonjs/libs/EmojiManager.js.map +1 -0
  118. package/lib/commonjs/libs/ImageCompressionConfig.js +38 -0
  119. package/lib/commonjs/libs/ImageCompressionConfig.js.map +1 -0
  120. package/lib/commonjs/libs/MentionConfig.js +47 -0
  121. package/lib/commonjs/libs/MentionConfig.js.map +1 -0
  122. package/lib/commonjs/libs/MentionManager.js +235 -0
  123. package/lib/commonjs/libs/MentionManager.js.map +1 -0
  124. package/lib/commonjs/libs/SBUUtils.js +27 -0
  125. package/lib/commonjs/libs/SBUUtils.js.map +1 -1
  126. package/lib/commonjs/localization/StringSet.type.js +20 -5
  127. package/lib/commonjs/localization/StringSet.type.js.map +1 -1
  128. package/lib/commonjs/platform/createMediaService.expo.js +35 -1
  129. package/lib/commonjs/platform/createMediaService.expo.js.map +1 -1
  130. package/lib/commonjs/platform/createMediaService.native.js +41 -6
  131. package/lib/commonjs/platform/createMediaService.native.js.map +1 -1
  132. package/lib/commonjs/platform/dynamicModule.js +9 -57
  133. package/lib/commonjs/platform/dynamicModule.js.map +1 -1
  134. package/lib/commonjs/platform/types.js.map +1 -1
  135. package/lib/commonjs/types.js.map +1 -1
  136. package/lib/commonjs/version.js +1 -1
  137. package/lib/commonjs/version.js.map +1 -1
  138. package/lib/module/components/ChatFlatList.js +3 -2
  139. package/lib/module/components/ChatFlatList.js.map +1 -1
  140. package/lib/module/components/FileViewer.js +2 -5
  141. package/lib/module/components/FileViewer.js.map +1 -1
  142. package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js +11 -6
  143. package/lib/module/components/MessageRenderer/FileMessage/BaseFileMessage.js.map +1 -1
  144. package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js +12 -2
  145. package/lib/module/components/MessageRenderer/FileMessage/ImageFileMessage.js.map +1 -1
  146. package/lib/module/components/MessageRenderer/FileMessage/VideoFileMessage.js +26 -11
  147. package/lib/module/components/MessageRenderer/FileMessage/VideoFileMessage.js.map +1 -1
  148. package/lib/module/components/MessageRenderer/FileMessage/index.js +1 -5
  149. package/lib/module/components/MessageRenderer/FileMessage/index.js.map +1 -1
  150. package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js +86 -12
  151. package/lib/module/components/MessageRenderer/UserMessage/BaseUserMessage.js.map +1 -1
  152. package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js +103 -19
  153. package/lib/module/components/MessageRenderer/UserMessage/OpenGraphUserMessage.js.map +1 -1
  154. package/lib/module/components/MessageRenderer/UserMessage/index.js.map +1 -1
  155. package/lib/module/components/MessageRenderer/index.js +21 -4
  156. package/lib/module/components/MessageRenderer/index.js.map +1 -1
  157. package/lib/module/components/ReactionAddons/BottomSheetReactionAddon.js +132 -0
  158. package/lib/module/components/ReactionAddons/BottomSheetReactionAddon.js.map +1 -0
  159. package/lib/module/components/ReactionAddons/MessageReactionAddon.js +118 -0
  160. package/lib/module/components/ReactionAddons/MessageReactionAddon.js.map +1 -0
  161. package/lib/module/components/ReactionAddons/ReactionRoundedButton.js +74 -0
  162. package/lib/module/components/ReactionAddons/ReactionRoundedButton.js.map +1 -0
  163. package/lib/module/components/ReactionAddons/index.js +7 -0
  164. package/lib/module/components/ReactionAddons/index.js.map +1 -0
  165. package/lib/module/components/ReactionBottomSheets/ReactionListBottomSheet.js +135 -0
  166. package/lib/module/components/ReactionBottomSheets/ReactionListBottomSheet.js.map +1 -0
  167. package/lib/module/components/ReactionBottomSheets/ReactionUserListBottomSheet.js +259 -0
  168. package/lib/module/components/ReactionBottomSheets/ReactionUserListBottomSheet.js.map +1 -0
  169. package/lib/module/components/ReactionBottomSheets/index.js +7 -0
  170. package/lib/module/components/ReactionBottomSheets/index.js.map +1 -0
  171. package/lib/module/constants.js +1 -0
  172. package/lib/module/constants.js.map +1 -1
  173. package/lib/module/containers/GroupChannelPreviewContainer.js +4 -1
  174. package/lib/module/containers/GroupChannelPreviewContainer.js.map +1 -1
  175. package/lib/module/containers/SendbirdUIKitContainer.js +127 -81
  176. package/lib/module/containers/SendbirdUIKitContainer.js.map +1 -1
  177. package/lib/module/contexts/PlatformServiceCtx.js.map +1 -1
  178. package/lib/module/contexts/ReactionCtx.js +85 -0
  179. package/lib/module/contexts/ReactionCtx.js.map +1 -0
  180. package/lib/module/contexts/SendbirdChatCtx.js +28 -18
  181. package/lib/module/contexts/SendbirdChatCtx.js.map +1 -1
  182. package/lib/module/contexts/UserProfileCtx.js +7 -0
  183. package/lib/module/contexts/UserProfileCtx.js.map +1 -1
  184. package/lib/module/domain/groupChannel/component/GroupChannelInput/EditInput.js +34 -39
  185. package/lib/module/domain/groupChannel/component/GroupChannelInput/EditInput.js.map +1 -1
  186. package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js +92 -26
  187. package/lib/module/domain/groupChannel/component/GroupChannelInput/SendInput.js.map +1 -1
  188. package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js +118 -33
  189. package/lib/module/domain/groupChannel/component/GroupChannelInput/index.js.map +1 -1
  190. package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js +35 -16
  191. package/lib/module/domain/groupChannel/component/GroupChannelMessageList.js.map +1 -1
  192. package/lib/module/domain/groupChannel/component/GroupChannelSuggestedMentionList.js +188 -0
  193. package/lib/module/domain/groupChannel/component/GroupChannelSuggestedMentionList.js.map +1 -0
  194. package/lib/module/domain/groupChannel/index.js +1 -0
  195. package/lib/module/domain/groupChannel/index.js.map +1 -1
  196. package/lib/module/domain/groupChannel/module/createGroupChannelModule.js +3 -0
  197. package/lib/module/domain/groupChannel/module/createGroupChannelModule.js.map +1 -1
  198. package/lib/module/domain/groupChannel/module/moduleContext.js +4 -4
  199. package/lib/module/domain/groupChannel/module/moduleContext.js.map +1 -1
  200. package/lib/module/domain/groupChannel/types.js.map +1 -1
  201. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js +4 -3
  202. package/lib/module/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.js.map +1 -1
  203. package/lib/module/domain/groupChannelList/component/GroupChannelListList.js +3 -2
  204. package/lib/module/domain/groupChannelList/component/GroupChannelListList.js.map +1 -1
  205. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js +3 -2
  206. package/lib/module/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.js.map +1 -1
  207. package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js +25 -0
  208. package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.js.map +1 -0
  209. package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js +122 -0
  210. package/lib/module/domain/groupChannelNotifications/component/GroupChannelNotificationsView.js.map +1 -0
  211. package/lib/module/domain/groupChannelNotifications/index.js +5 -0
  212. package/lib/module/domain/groupChannelNotifications/index.js.map +1 -0
  213. package/lib/module/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js +21 -0
  214. package/lib/module/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.js.map +1 -0
  215. package/lib/module/domain/groupChannelNotifications/module/moduleContext.js +25 -0
  216. package/lib/module/domain/groupChannelNotifications/module/moduleContext.js.map +1 -0
  217. package/lib/module/domain/groupChannelNotifications/types.js +2 -0
  218. package/lib/module/domain/groupChannelNotifications/types.js.map +1 -0
  219. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsList.js +3 -2
  220. package/lib/module/domain/groupChannelOperators/component/GroupChannelOperatorsList.js.map +1 -1
  221. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js +46 -6
  222. package/lib/module/domain/groupChannelSettings/component/GroupChannelSettingsMenu.js.map +1 -1
  223. package/lib/module/domain/groupChannelSettings/module/moduleContext.js +12 -17
  224. package/lib/module/domain/groupChannelSettings/module/moduleContext.js.map +1 -1
  225. package/lib/module/domain/groupChannelSettings/types.js.map +1 -1
  226. package/lib/module/domain/groupChannelUserList/types.js.map +1 -1
  227. package/lib/module/domain/userList/component/UserListList.js +3 -1
  228. package/lib/module/domain/userList/component/UserListList.js.map +1 -1
  229. package/lib/module/domain/userList/module/createUserListModule.js.map +1 -1
  230. package/lib/module/fragments/createGroupChannelCreateFragment.js.map +1 -1
  231. package/lib/module/fragments/createGroupChannelFragment.js +11 -4
  232. package/lib/module/fragments/createGroupChannelFragment.js.map +1 -1
  233. package/lib/module/fragments/createGroupChannelInviteFragment.js.map +1 -1
  234. package/lib/module/fragments/createGroupChannelListFragment.js +5 -9
  235. package/lib/module/fragments/createGroupChannelListFragment.js.map +1 -1
  236. package/lib/module/fragments/createGroupChannelNotificationsFragment.js +22 -0
  237. package/lib/module/fragments/createGroupChannelNotificationsFragment.js.map +1 -0
  238. package/lib/module/fragments/createGroupChannelSettingsFragment.js +3 -1
  239. package/lib/module/fragments/createGroupChannelSettingsFragment.js.map +1 -1
  240. package/lib/module/hooks/useConnection.js +3 -0
  241. package/lib/module/hooks/useConnection.js.map +1 -1
  242. package/lib/module/hooks/useContext.js +6 -0
  243. package/lib/module/hooks/useContext.js.map +1 -1
  244. package/lib/module/hooks/useKeyboardStatus.js +78 -0
  245. package/lib/module/hooks/useKeyboardStatus.js.map +1 -0
  246. package/lib/module/hooks/useMentionSuggestion.js +100 -0
  247. package/lib/module/hooks/useMentionSuggestion.js.map +1 -0
  248. package/lib/module/hooks/useMentionTextInput.js +128 -0
  249. package/lib/module/hooks/useMentionTextInput.js.map +1 -0
  250. package/lib/module/index.js +8 -3
  251. package/lib/module/index.js.map +1 -1
  252. package/lib/module/libs/EmojiManager.js +90 -0
  253. package/lib/module/libs/EmojiManager.js.map +1 -0
  254. package/lib/module/libs/ImageCompressionConfig.js +30 -0
  255. package/lib/module/libs/ImageCompressionConfig.js.map +1 -0
  256. package/lib/module/libs/MentionConfig.js +39 -0
  257. package/lib/module/libs/MentionConfig.js.map +1 -0
  258. package/lib/module/libs/MentionManager.js +223 -0
  259. package/lib/module/libs/MentionManager.js.map +1 -0
  260. package/lib/module/libs/SBUUtils.js +26 -1
  261. package/lib/module/libs/SBUUtils.js.map +1 -1
  262. package/lib/module/localization/StringSet.type.js +21 -6
  263. package/lib/module/localization/StringSet.type.js.map +1 -1
  264. package/lib/module/platform/createMediaService.expo.js +33 -1
  265. package/lib/module/platform/createMediaService.expo.js.map +1 -1
  266. package/lib/module/platform/createMediaService.native.js +38 -5
  267. package/lib/module/platform/createMediaService.native.js.map +1 -1
  268. package/lib/module/platform/dynamicModule.js +10 -56
  269. package/lib/module/platform/dynamicModule.js.map +1 -1
  270. package/lib/module/platform/types.js.map +1 -1
  271. package/lib/module/types.js.map +1 -1
  272. package/lib/module/version.js +1 -1
  273. package/lib/module/version.js.map +1 -1
  274. package/lib/typescript/__template__/types.d.ts +3 -3
  275. package/lib/typescript/src/components/ChannelCover.d.ts +1 -1
  276. package/lib/typescript/src/components/ChatFlatList.d.ts +1 -1
  277. package/lib/typescript/src/components/FileViewer.d.ts +1 -1
  278. package/lib/typescript/src/components/MessageRenderer/AdminMessage/index.d.ts +1 -1
  279. package/lib/typescript/src/components/MessageRenderer/FileMessage/BaseFileMessage.d.ts +2 -2
  280. package/lib/typescript/src/components/MessageRenderer/FileMessage/ImageFileMessage.d.ts +1 -1
  281. package/lib/typescript/src/components/MessageRenderer/FileMessage/VideoFileMessage.d.ts +1 -1
  282. package/lib/typescript/src/components/MessageRenderer/FileMessage/index.d.ts +11 -2
  283. package/lib/typescript/src/components/MessageRenderer/MessageDateSeparator.d.ts +1 -1
  284. package/lib/typescript/src/components/MessageRenderer/MessageIncomingAvatar.d.ts +1 -1
  285. package/lib/typescript/src/components/MessageRenderer/MessageIncomingSenderName.d.ts +1 -1
  286. package/lib/typescript/src/components/MessageRenderer/MessageOutgoingStatus.d.ts +1 -1
  287. package/lib/typescript/src/components/MessageRenderer/MessageTime.d.ts +1 -1
  288. package/lib/typescript/src/components/MessageRenderer/UnknownMessage/index.d.ts +1 -1
  289. package/lib/typescript/src/components/MessageRenderer/UserMessage/BaseUserMessage.d.ts +1 -1
  290. package/lib/typescript/src/components/MessageRenderer/UserMessage/OpenGraphUserMessage.d.ts +2 -2
  291. package/lib/typescript/src/components/MessageRenderer/UserMessage/index.d.ts +4 -1
  292. package/lib/typescript/src/components/MessageRenderer/index.d.ts +4 -3
  293. package/lib/typescript/src/components/NewMessagesButton.d.ts +1 -1
  294. package/lib/typescript/src/components/ReactionAddons/BottomSheetReactionAddon.d.ts +8 -0
  295. package/lib/typescript/src/components/ReactionAddons/MessageReactionAddon.d.ts +6 -0
  296. package/lib/typescript/src/components/ReactionAddons/ReactionRoundedButton.d.ts +14 -0
  297. package/lib/typescript/src/components/ReactionAddons/index.d.ts +11 -0
  298. package/lib/typescript/src/components/ReactionBottomSheets/ReactionListBottomSheet.d.ts +3 -0
  299. package/lib/typescript/src/components/ReactionBottomSheets/ReactionUserListBottomSheet.d.ts +3 -0
  300. package/lib/typescript/src/components/ReactionBottomSheets/index.d.ts +20 -0
  301. package/lib/typescript/src/components/ScrollToBottomButton.d.ts +1 -1
  302. package/lib/typescript/src/components/StatusComposition.d.ts +1 -1
  303. package/lib/typescript/src/components/TypedPlaceholder.d.ts +1 -1
  304. package/lib/typescript/src/components/UserActionBar.d.ts +1 -1
  305. package/lib/typescript/src/components/UserSelectableBar.d.ts +1 -1
  306. package/lib/typescript/src/constants.d.ts +1 -0
  307. package/lib/typescript/src/containers/GroupChannelPreviewContainer.d.ts +1 -1
  308. package/lib/typescript/src/containers/SendbirdUIKitContainer.d.ts +20 -8
  309. package/lib/typescript/src/contexts/LocalizationCtx.d.ts +2 -2
  310. package/lib/typescript/src/contexts/PlatformServiceCtx.d.ts +9 -3
  311. package/lib/typescript/src/contexts/ReactionCtx.d.ts +18 -0
  312. package/lib/typescript/src/contexts/SendbirdChatCtx.d.ts +16 -3
  313. package/lib/typescript/src/contexts/UserProfileCtx.d.ts +4 -4
  314. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/EditInput.d.ts +35 -7
  315. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/SendInput.d.ts +32 -5
  316. package/lib/typescript/src/domain/groupChannel/component/GroupChannelInput/index.d.ts +19 -2
  317. package/lib/typescript/src/domain/groupChannel/component/GroupChannelSuggestedMentionList.d.ts +3 -0
  318. package/lib/typescript/src/domain/groupChannel/index.d.ts +1 -0
  319. package/lib/typescript/src/domain/groupChannel/module/createGroupChannelModule.d.ts +1 -1
  320. package/lib/typescript/src/domain/groupChannel/types.d.ts +24 -7
  321. package/lib/typescript/src/domain/groupChannelBannedUsers/types.d.ts +3 -3
  322. package/lib/typescript/src/domain/groupChannelList/types.d.ts +2 -2
  323. package/lib/typescript/src/domain/groupChannelModeration/types.d.ts +3 -3
  324. package/lib/typescript/src/domain/groupChannelMutedMembers/types.d.ts +3 -3
  325. package/lib/typescript/src/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.d.ts +3 -0
  326. package/lib/typescript/src/domain/groupChannelNotifications/component/GroupChannelNotificationsView.d.ts +2 -0
  327. package/lib/typescript/src/domain/groupChannelNotifications/index.d.ts +4 -0
  328. package/lib/typescript/src/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.d.ts +3 -0
  329. package/lib/typescript/src/domain/groupChannelNotifications/module/moduleContext.d.ts +3 -0
  330. package/lib/typescript/src/domain/groupChannelNotifications/types.d.ts +33 -0
  331. package/lib/typescript/src/domain/groupChannelOperators/types.d.ts +3 -3
  332. package/lib/typescript/src/domain/groupChannelSettings/component/GroupChannelSettingsMenu.d.ts +1 -1
  333. package/lib/typescript/src/domain/groupChannelSettings/types.d.ts +3 -1
  334. package/lib/typescript/src/domain/groupChannelUserList/types.d.ts +6 -6
  335. package/lib/typescript/src/domain/userList/component/UserListList.d.ts +2 -1
  336. package/lib/typescript/src/domain/userList/module/createUserListModule.d.ts +2 -1
  337. package/lib/typescript/src/fragments/createGroupChannelCreateFragment.d.ts +1 -1
  338. package/lib/typescript/src/fragments/createGroupChannelInviteFragment.d.ts +1 -1
  339. package/lib/typescript/src/fragments/createGroupChannelNotificationsFragment.d.ts +3 -0
  340. package/lib/typescript/src/hooks/useConnection.d.ts +1 -1
  341. package/lib/typescript/src/hooks/useContext.d.ts +3 -26
  342. package/lib/typescript/src/hooks/useKeyboardStatus.d.ts +6 -0
  343. package/lib/typescript/src/hooks/useMentionSuggestion.d.ts +17 -0
  344. package/lib/typescript/src/hooks/useMentionTextInput.d.ts +18 -0
  345. package/lib/typescript/src/index.d.ts +8 -3
  346. package/lib/typescript/src/libs/EmojiManager.d.ts +16 -0
  347. package/lib/typescript/src/libs/ImageCompressionConfig.d.ts +16 -0
  348. package/lib/typescript/src/libs/MentionConfig.d.ts +24 -0
  349. package/lib/typescript/src/libs/MentionManager.d.ts +61 -0
  350. package/lib/typescript/src/libs/SBUUtils.d.ts +6 -0
  351. package/lib/typescript/src/localization/StringSet.type.d.ts +19 -2
  352. package/lib/typescript/src/platform/createMediaService.expo.d.ts +6 -2
  353. package/lib/typescript/src/platform/createMediaService.native.d.ts +8 -6
  354. package/lib/typescript/src/platform/dynamicModule.d.ts +8 -13
  355. package/lib/typescript/src/platform/types.d.ts +33 -8
  356. package/lib/typescript/src/types.d.ts +13 -4
  357. package/lib/typescript/src/version.d.ts +1 -1
  358. package/package.json +16 -6
  359. package/src/components/ChatFlatList.tsx +2 -1
  360. package/src/components/FileViewer.tsx +2 -5
  361. package/src/components/MessageRenderer/FileMessage/BaseFileMessage.tsx +17 -12
  362. package/src/components/MessageRenderer/FileMessage/ImageFileMessage.tsx +30 -18
  363. package/src/components/MessageRenderer/FileMessage/VideoFileMessage.tsx +21 -11
  364. package/src/components/MessageRenderer/FileMessage/index.tsx +1 -4
  365. package/src/components/MessageRenderer/UserMessage/BaseUserMessage.tsx +82 -14
  366. package/src/components/MessageRenderer/UserMessage/OpenGraphUserMessage.tsx +136 -62
  367. package/src/components/MessageRenderer/UserMessage/index.tsx +8 -1
  368. package/src/components/MessageRenderer/index.tsx +39 -7
  369. package/src/components/ReactionAddons/BottomSheetReactionAddon.tsx +106 -0
  370. package/src/components/ReactionAddons/MessageReactionAddon.tsx +123 -0
  371. package/src/components/ReactionAddons/ReactionRoundedButton.tsx +71 -0
  372. package/src/components/ReactionAddons/index.tsx +7 -0
  373. package/src/components/ReactionBottomSheets/ReactionListBottomSheet.tsx +113 -0
  374. package/src/components/ReactionBottomSheets/ReactionUserListBottomSheet.tsx +249 -0
  375. package/src/components/ReactionBottomSheets/index.tsx +24 -0
  376. package/src/constants.ts +2 -0
  377. package/src/containers/GroupChannelPreviewContainer.tsx +3 -1
  378. package/src/containers/SendbirdUIKitContainer.tsx +165 -88
  379. package/src/contexts/PlatformServiceCtx.tsx +9 -2
  380. package/src/contexts/ReactionCtx.tsx +102 -0
  381. package/src/contexts/SendbirdChatCtx.tsx +46 -21
  382. package/src/contexts/UserProfileCtx.tsx +9 -0
  383. package/src/domain/groupChannel/component/GroupChannelInput/EditInput.tsx +56 -30
  384. package/src/domain/groupChannel/component/GroupChannelInput/SendInput.tsx +129 -32
  385. package/src/domain/groupChannel/component/GroupChannelInput/index.tsx +138 -43
  386. package/src/domain/groupChannel/component/GroupChannelMessageList.tsx +30 -12
  387. package/src/domain/groupChannel/component/GroupChannelSuggestedMentionList.tsx +173 -0
  388. package/src/domain/groupChannel/index.ts +1 -0
  389. package/src/domain/groupChannel/module/createGroupChannelModule.tsx +12 -1
  390. package/src/domain/groupChannel/module/moduleContext.tsx +4 -4
  391. package/src/domain/groupChannel/types.ts +28 -5
  392. package/src/domain/groupChannelBannedUsers/component/GroupChannelBannedUsersList.tsx +3 -2
  393. package/src/domain/groupChannelList/component/GroupChannelListList.tsx +2 -1
  394. package/src/domain/groupChannelMutedMembers/component/GroupChannelMutedMembersList.tsx +2 -1
  395. package/src/domain/groupChannelNotifications/component/GroupChannelNotificationsHeader.tsx +14 -0
  396. package/src/domain/groupChannelNotifications/component/GroupChannelNotificationsView.tsx +128 -0
  397. package/src/domain/groupChannelNotifications/index.ts +4 -0
  398. package/src/domain/groupChannelNotifications/module/createGroupChannelNotificationsModule.tsx +15 -0
  399. package/src/domain/groupChannelNotifications/module/moduleContext.tsx +31 -0
  400. package/src/domain/groupChannelNotifications/types.ts +38 -0
  401. package/src/domain/groupChannelOperators/component/GroupChannelOperatorsList.tsx +2 -1
  402. package/src/domain/groupChannelSettings/component/GroupChannelSettingsMenu.tsx +42 -3
  403. package/src/domain/groupChannelSettings/module/moduleContext.tsx +17 -14
  404. package/src/domain/groupChannelSettings/types.ts +2 -0
  405. package/src/domain/groupChannelUserList/types.ts +7 -2
  406. package/src/domain/userList/component/UserListList.tsx +5 -1
  407. package/src/domain/userList/module/createUserListModule.tsx +3 -1
  408. package/src/fragments/createGroupChannelCreateFragment.tsx +8 -2
  409. package/src/fragments/createGroupChannelFragment.tsx +19 -6
  410. package/src/fragments/createGroupChannelInviteFragment.tsx +2 -2
  411. package/src/fragments/createGroupChannelListFragment.tsx +5 -9
  412. package/src/fragments/createGroupChannelNotificationsFragment.tsx +27 -0
  413. package/src/fragments/createGroupChannelSettingsFragment.tsx +2 -0
  414. package/src/hooks/useConnection.ts +3 -1
  415. package/src/hooks/useContext.ts +7 -0
  416. package/src/hooks/useKeyboardStatus.ts +59 -0
  417. package/src/hooks/useMentionSuggestion.ts +106 -0
  418. package/src/hooks/useMentionTextInput.ts +139 -0
  419. package/src/index.ts +14 -2
  420. package/src/libs/EmojiManager.ts +80 -0
  421. package/src/libs/ImageCompressionConfig.ts +31 -0
  422. package/src/libs/MentionConfig.ts +40 -0
  423. package/src/libs/MentionManager.tsx +240 -0
  424. package/src/libs/SBUUtils.ts +28 -1
  425. package/src/localization/StringSet.type.ts +45 -8
  426. package/src/platform/createMediaService.expo.tsx +24 -1
  427. package/src/platform/createMediaService.native.tsx +31 -9
  428. package/src/platform/dynamicModule.ts +17 -59
  429. package/src/platform/types.ts +29 -7
  430. package/src/types.ts +12 -0
  431. package/src/version.ts +1 -1
@@ -1,7 +1,7 @@
1
1
  import type React from 'react';
2
2
  import type { SendbirdGroupChannel, SendbirdRestrictedUser } from '@sendbird/uikit-utils';
3
3
  import type { CommonComponent } from '../../types';
4
- export declare type GroupChannelMutedMembersProps = {
4
+ export type GroupChannelMutedMembersProps = {
5
5
  Fragment: {
6
6
  channel: SendbirdGroupChannel;
7
7
  onPressHeaderLeft: GroupChannelMutedMembersProps['Header']['onPressHeaderLeft'];
@@ -30,7 +30,7 @@ export declare type GroupChannelMutedMembersProps = {
30
30
  * For example, the developer can create a custom header
31
31
  * with getting data from the domain context
32
32
  * */
33
- export declare type GroupChannelMutedMembersContextsType = {
33
+ export type GroupChannelMutedMembersContextsType = {
34
34
  Fragment: React.Context<{
35
35
  headerTitle: string;
36
36
  channel: SendbirdGroupChannel;
@@ -44,4 +44,4 @@ export interface GroupChannelMutedMembersModule {
44
44
  StatusLoading: CommonComponent;
45
45
  StatusError: CommonComponent<GroupChannelMutedMembersProps['StatusError']>;
46
46
  }
47
- export declare type GroupChannelMutedMembersFragment = CommonComponent<GroupChannelMutedMembersProps['Fragment']>;
47
+ export type GroupChannelMutedMembersFragment = CommonComponent<GroupChannelMutedMembersProps['Fragment']>;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelNotificationsProps } from '../types';
2
+ declare const GroupChannelNotificationsHeader: ({ onPressHeaderLeft }: GroupChannelNotificationsProps['Header']) => JSX.Element;
3
+ export default GroupChannelNotificationsHeader;
@@ -0,0 +1,2 @@
1
+ declare const GroupChannelNotificationsView: () => JSX.Element;
2
+ export default GroupChannelNotificationsView;
@@ -0,0 +1,4 @@
1
+ export { default as GroupChannelNotificationsView } from './component/GroupChannelNotificationsView';
2
+ export { default as GroupChannelNotificationsHeader } from './component/GroupChannelNotificationsHeader';
3
+ export { default as createGroupChannelNotificationsModule } from './module/createGroupChannelNotificationsModule';
4
+ export { GroupChannelNotificationsContextsProvider, GroupChannelNotificationsContexts } from './module/moduleContext';
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelNotificationsModule } from '../types';
2
+ declare const createGroupChannelNotificationsModule: ({ Header, View, Provider, ...module }?: Partial<GroupChannelNotificationsModule>) => GroupChannelNotificationsModule;
3
+ export default createGroupChannelNotificationsModule;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelNotificationsContextsType, GroupChannelNotificationsModule } from '../types';
2
+ export declare const GroupChannelNotificationsContexts: GroupChannelNotificationsContextsType;
3
+ export declare const GroupChannelNotificationsContextsProvider: GroupChannelNotificationsModule['Provider'];
@@ -0,0 +1,33 @@
1
+ import type React from 'react';
2
+ import type { SendbirdGroupChannel } from '@sendbird/uikit-utils';
3
+ import type { CommonComponent } from '../../types';
4
+ export type GroupChannelNotificationsProps = {
5
+ Fragment: {
6
+ channel: SendbirdGroupChannel;
7
+ onPressHeaderLeft: GroupChannelNotificationsProps['Header']['onPressHeaderLeft'];
8
+ };
9
+ Header: {
10
+ onPressHeaderLeft: () => void;
11
+ };
12
+ View: {};
13
+ Provider: {
14
+ channel: SendbirdGroupChannel;
15
+ };
16
+ };
17
+ /**
18
+ * Internal context for GroupChannelNotifications
19
+ * For example, the developer can create a custom header
20
+ * with getting data from the domain context
21
+ * */
22
+ export type GroupChannelNotificationsContextsType = {
23
+ Fragment: React.Context<{
24
+ channel: SendbirdGroupChannel;
25
+ headerTitle: string;
26
+ }>;
27
+ };
28
+ export interface GroupChannelNotificationsModule {
29
+ Provider: CommonComponent<GroupChannelNotificationsProps['Provider']>;
30
+ Header: CommonComponent<GroupChannelNotificationsProps['Header']>;
31
+ View: CommonComponent<GroupChannelNotificationsProps['View']>;
32
+ }
33
+ export type GroupChannelNotificationsFragment = CommonComponent<GroupChannelNotificationsProps['Fragment']>;
@@ -1,7 +1,7 @@
1
1
  import type React from 'react';
2
2
  import type { SendbirdGroupChannel, SendbirdUser } from '@sendbird/uikit-utils';
3
3
  import type { CommonComponent } from '../../types';
4
- export declare type GroupChannelOperatorsProps = {
4
+ export type GroupChannelOperatorsProps = {
5
5
  Fragment: {
6
6
  channel: SendbirdGroupChannel;
7
7
  onPressHeaderLeft: GroupChannelOperatorsProps['Header']['onPressHeaderLeft'];
@@ -32,7 +32,7 @@ export declare type GroupChannelOperatorsProps = {
32
32
  * For example, the developer can create a custom header
33
33
  * with getting data from the domain context
34
34
  * */
35
- export declare type GroupChannelOperatorsContextsType = {
35
+ export type GroupChannelOperatorsContextsType = {
36
36
  Fragment: React.Context<{
37
37
  headerTitle: string;
38
38
  channel: SendbirdGroupChannel;
@@ -46,4 +46,4 @@ export interface GroupChannelOperatorsModule {
46
46
  StatusLoading: CommonComponent;
47
47
  StatusError: CommonComponent<GroupChannelOperatorsProps['StatusError']>;
48
48
  }
49
- export declare type GroupChannelOperatorsFragment = CommonComponent<GroupChannelOperatorsProps['Fragment']>;
49
+ export type GroupChannelOperatorsFragment = CommonComponent<GroupChannelOperatorsProps['Fragment']>;
@@ -1,3 +1,3 @@
1
1
  import type { GroupChannelSettingsProps } from '../types';
2
- declare const GroupChannelSettingsMenu: ({ onPressMenuModeration, onPressMenuMembers, onPressMenuLeaveChannel, menuItemsCreator, }: GroupChannelSettingsProps['Menu']) => JSX.Element;
2
+ declare const GroupChannelSettingsMenu: ({ onPressMenuModeration, onPressMenuMembers, onPressMenuLeaveChannel, onPressMenuNotification, menuItemsCreator, }: GroupChannelSettingsProps['Menu']) => JSX.Element;
3
3
  export default GroupChannelSettingsMenu;
@@ -9,6 +9,7 @@ export interface GroupChannelSettingsProps {
9
9
  onPressMenuModeration: GroupChannelSettingsProps['Menu']['onPressMenuModeration'];
10
10
  onPressMenuMembers: GroupChannelSettingsProps['Menu']['onPressMenuMembers'];
11
11
  onPressMenuLeaveChannel: GroupChannelSettingsProps['Menu']['onPressMenuLeaveChannel'];
12
+ onPressMenuNotification?: GroupChannelSettingsProps['Menu']['onPressMenuNotification'];
12
13
  menuItemsCreator?: GroupChannelSettingsProps['Menu']['menuItemsCreator'];
13
14
  };
14
15
  Header: {
@@ -19,6 +20,7 @@ export interface GroupChannelSettingsProps {
19
20
  onPressMenuModeration: () => void;
20
21
  onPressMenuMembers: () => void;
21
22
  onPressMenuLeaveChannel: () => void;
23
+ onPressMenuNotification?: () => void;
22
24
  menuItemsCreator?: (defaultMenuItems: MenuBarProps[]) => MenuBarProps[];
23
25
  };
24
26
  Provider: {
@@ -44,4 +46,4 @@ export interface GroupChannelSettingsModule {
44
46
  Info: CommonComponent<GroupChannelSettingsProps['Info']>;
45
47
  Menu: CommonComponent<GroupChannelSettingsProps['Menu']>;
46
48
  }
47
- export declare type GroupChannelSettingsFragment = CommonComponent<GroupChannelSettingsProps['Fragment']>;
49
+ export type GroupChannelSettingsFragment = CommonComponent<GroupChannelSettingsProps['Fragment']>;
@@ -1,5 +1,5 @@
1
- import type { UseUserListOptions, UserStruct } from '@sendbird/uikit-chat-hooks';
2
- import type { SendbirdGroupChannel, SendbirdGroupChannelCreateParams, SendbirdMember } from '@sendbird/uikit-utils';
1
+ import type { UseUserListOptions } from '@sendbird/uikit-chat-hooks';
2
+ import type { SendbirdGroupChannel, SendbirdGroupChannelCreateParams, SendbirdMember, UserStruct } from '@sendbird/uikit-utils';
3
3
  import type { CommonComponent } from '../../types';
4
4
  import type { GroupChannelType } from '../groupChannelList/types';
5
5
  import type { UserListProps } from '../userList/types';
@@ -14,7 +14,7 @@ export interface GroupChannelCreateProps<User extends UserStruct> {
14
14
  renderUser?: UserListProps<User>['List']['renderUser'];
15
15
  };
16
16
  }
17
- export declare type GroupChannelCreateFragment<User extends UserStruct> = CommonComponent<GroupChannelCreateProps<User>['Fragment']>;
17
+ export type GroupChannelCreateFragment<User extends UserStruct> = CommonComponent<GroupChannelCreateProps<User>['Fragment']>;
18
18
  export interface GroupChannelInviteProps<User extends UserStruct> {
19
19
  Fragment: {
20
20
  channel: SendbirdGroupChannel;
@@ -25,7 +25,7 @@ export interface GroupChannelInviteProps<User extends UserStruct> {
25
25
  sortComparator?: UseUserListOptions<User>['sortComparator'];
26
26
  };
27
27
  }
28
- export declare type GroupChannelInviteFragment<User extends UserStruct> = CommonComponent<GroupChannelInviteProps<User>['Fragment']>;
28
+ export type GroupChannelInviteFragment<User extends UserStruct> = CommonComponent<GroupChannelInviteProps<User>['Fragment']>;
29
29
  export interface GroupChannelMembersProps<User extends UserStruct> {
30
30
  Fragment: {
31
31
  channel: SendbirdGroupChannel;
@@ -35,7 +35,7 @@ export interface GroupChannelMembersProps<User extends UserStruct> {
35
35
  renderUser?: UserListProps<User>['List']['renderUser'];
36
36
  };
37
37
  }
38
- export declare type GroupChannelMembersFragment<User extends UserStruct> = CommonComponent<GroupChannelMembersProps<User>['Fragment']>;
38
+ export type GroupChannelMembersFragment<User extends UserStruct> = CommonComponent<GroupChannelMembersProps<User>['Fragment']>;
39
39
  export interface GroupChannelRegisterOperatorProps<User extends UserStruct = SendbirdMember> {
40
40
  Fragment: {
41
41
  channel: SendbirdGroupChannel;
@@ -45,4 +45,4 @@ export interface GroupChannelRegisterOperatorProps<User extends UserStruct = Sen
45
45
  renderUser?: UserListProps<User>['List']['renderUser'];
46
46
  };
47
47
  }
48
- export declare type GroupChannelRegisterOperatorFragment<User extends UserStruct> = CommonComponent<GroupChannelRegisterOperatorProps<User>['Fragment']>;
48
+ export type GroupChannelRegisterOperatorFragment<User extends UserStruct> = CommonComponent<GroupChannelRegisterOperatorProps<User>['Fragment']>;
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
+ import type { UserStruct } from '@sendbird/uikit-utils';
2
3
  import type { UserListProps } from '../types';
3
- declare const UserListList: <T>({ users, onRefresh, refreshing, renderUser, onLoadNext, ListEmptyComponent, }: {
4
+ declare const UserListList: <T extends UserStruct>({ users, onRefresh, refreshing, renderUser, onLoadNext, ListEmptyComponent, }: {
4
5
  users: T[];
5
6
  renderUser: (user: T, selectedUsers: T[], setSelectedUsers: React.Dispatch<React.SetStateAction<T[]>>) => React.ReactElement<any, string | React.JSXElementConstructor<any>> | null;
6
7
  onLoadNext: () => Promise<void>;
@@ -1,3 +1,4 @@
1
+ import type { UserStruct } from '@sendbird/uikit-utils';
1
2
  import type { UserListModule } from '../types';
2
- declare const createUserListModule: <T>({ Header, List, StatusLoading, StatusEmpty, StatusError, Provider, ...module }?: Partial<UserListModule<T>>) => UserListModule<T>;
3
+ declare const createUserListModule: <T extends UserStruct>({ Header, List, StatusLoading, StatusEmpty, StatusError, Provider, ...module }?: Partial<UserListModule<T>>) => UserListModule<T>;
3
4
  export default createUserListModule;
@@ -1,4 +1,4 @@
1
- import { UserStruct } from '@sendbird/uikit-chat-hooks';
1
+ import { UserStruct } from '@sendbird/uikit-utils';
2
2
  import type { GroupChannelCreateFragment } from '../domain/groupChannelUserList/types';
3
3
  import type { UserListModule } from '../domain/userList/types';
4
4
  declare const createGroupChannelCreateFragment: <UserType extends UserStruct>(initModule?: Partial<UserListModule<UserType>> | undefined) => GroupChannelCreateFragment<UserType>;
@@ -1,4 +1,4 @@
1
- import { UserStruct } from '@sendbird/uikit-chat-hooks';
1
+ import type { UserStruct } from '@sendbird/uikit-utils';
2
2
  import type { GroupChannelInviteFragment } from '../domain/groupChannelUserList/types';
3
3
  import type { UserListModule } from '../domain/userList/types';
4
4
  declare const createGroupChannelInviteFragment: <UserType extends UserStruct>(initModule?: Partial<UserListModule<UserType>> | undefined) => GroupChannelInviteFragment<UserType>;
@@ -0,0 +1,3 @@
1
+ import type { GroupChannelNotificationsFragment, GroupChannelNotificationsModule } from '../domain/groupChannelNotifications/types';
2
+ declare const createGroupChannelNotificationsFragment: (initModule?: Partial<GroupChannelNotificationsModule>) => GroupChannelNotificationsFragment;
3
+ export default createGroupChannelNotificationsFragment;
@@ -1,5 +1,5 @@
1
1
  import { SendbirdUser } from '@sendbird/uikit-utils';
2
- declare type ConnectOptions = {
2
+ type ConnectOptions = {
3
3
  nickname?: string;
4
4
  accessToken?: string;
5
5
  };
@@ -1,28 +1,5 @@
1
- /// <reference types="react" />
2
1
  export declare const useLocalization: () => import("../contexts/LocalizationCtx").LocalizationContextType;
3
- export declare const usePlatformService: () => {
4
- fileService: import("..").FileServiceInterface;
5
- clipboardService: import("..").ClipboardServiceInterface;
6
- notificationService: import("..").NotificationServiceInterface;
7
- mediaService?: import("../platform/types").MediaServiceInterface | undefined;
8
- } & {
9
- children?: import("react").ReactNode;
10
- };
11
- export declare const useSendbirdChat: () => {
12
- sdk: import("packages/uikit-utils/lib/typescript/src").SendbirdChatSDK;
13
- currentUser?: import("@sendbird/chat").User | undefined;
14
- setCurrentUser: import("react").Dispatch<import("react").SetStateAction<import("@sendbird/chat").User | undefined>>;
15
- updateCurrentUserInfo: (nickname?: string | undefined, profile?: string | import("..").FileType | undefined) => Promise<import("@sendbird/chat").User>;
16
- markAsDeliveredWithChannel: (channel: import("@sendbird/chat/groupChannel").GroupChannel) => void;
17
- features: {
18
- autoPushTokenRegistrationEnabled: boolean;
19
- channelListTypingIndicatorEnabled: boolean;
20
- channelListMessageReceiptStatusEnabled: boolean;
21
- useUserIdForNicknameEnabled: boolean;
22
- deliveryReceiptEnabled: boolean;
23
- broadcastChannelEnabled: boolean;
24
- superGroupChannelEnabled: boolean;
25
- reactionEnabled: boolean;
26
- };
27
- };
2
+ export declare const usePlatformService: () => import("../contexts/PlatformServiceCtx").PlatformServiceContextType;
3
+ export declare const useSendbirdChat: () => import("../contexts/SendbirdChatCtx").SendbirdChatContextType;
28
4
  export declare const useUserProfile: () => import("../contexts/UserProfileCtx").UserProfileContextType;
5
+ export declare const useReaction: () => import("../contexts/ReactionCtx").ReactionContextType;
@@ -0,0 +1,6 @@
1
+ declare const useKeyboardStatus: () => {
2
+ visible: boolean;
3
+ height: number;
4
+ bottomSpace: number;
5
+ };
6
+ export default useKeyboardStatus;
@@ -0,0 +1,17 @@
1
+ import type { SendbirdGroupChannel, SendbirdUser } from '@sendbird/uikit-utils';
2
+ import type { Range } from '../types';
3
+ declare const useMentionSuggestion: (params: {
4
+ text: string;
5
+ selection: Range;
6
+ channel: SendbirdGroupChannel;
7
+ mentionedUsers: {
8
+ user: SendbirdUser;
9
+ range: Range;
10
+ }[];
11
+ }) => {
12
+ members: import("@sendbird/chat/groupChannel").Member[];
13
+ reset: () => void;
14
+ searchStringRange: Range;
15
+ searchLimited: boolean;
16
+ };
17
+ export default useMentionSuggestion;
@@ -0,0 +1,18 @@
1
+ /// <reference types="react" />
2
+ import type { NativeSyntheticEvent, TextInput, TextInputSelectionChangeEventData } from 'react-native';
3
+ import { SendbirdFileMessage, SendbirdUserMessage } from '@sendbird/uikit-utils';
4
+ import type { MentionedUser } from '../types';
5
+ declare const useMentionTextInput: (params: {
6
+ messageToEdit?: SendbirdUserMessage | SendbirdFileMessage;
7
+ }) => {
8
+ textInputRef: import("react").MutableRefObject<TextInput | undefined>;
9
+ selection: {
10
+ start: number;
11
+ end: number;
12
+ };
13
+ onSelectionChange: (e: NativeSyntheticEvent<TextInputSelectionChangeEventData>) => void;
14
+ text: string;
15
+ onChangeText: (_nextText: string, addedMentionedUser?: MentionedUser) => void;
16
+ mentionedUsers: MentionedUser[];
17
+ };
18
+ export default useMentionTextInput;
@@ -1,4 +1,6 @@
1
1
  export { default as MessageRenderer } from './components/MessageRenderer';
2
+ export { ReactionAddons } from './components/ReactionAddons';
3
+ export { ReactionBottomSheets } from './components/ReactionBottomSheets';
2
4
  export { default as ChannelCover } from './components/ChannelCover';
3
5
  export { default as ChatFlatList } from './components/ChatFlatList';
4
6
  export { default as FileViewer } from './components/FileViewer';
@@ -21,6 +23,7 @@ export { default as createGroupChannelOperatorsFragment } from './fragments/crea
21
23
  export { default as createGroupChannelRegisterOperatorFragment } from './fragments/createGroupChannelRegisterOperatorFragment';
22
24
  export { default as createGroupChannelMutedMembersFragment } from './fragments/createGroupChannelMutedMembersFragment';
23
25
  export { default as createGroupChannelBannedUsersFragment } from './fragments/createGroupChannelBannedUsersFragment';
26
+ export { default as createGroupChannelNotificationsFragment } from './fragments/createGroupChannelNotificationsFragment';
24
27
  /** Context **/
25
28
  export { SendbirdChatContext, SendbirdChatProvider } from './contexts/SendbirdChatCtx';
26
29
  export { PlatformServiceContext, PlatformServiceProvider } from './contexts/PlatformServiceCtx';
@@ -29,7 +32,7 @@ export { LocalizationContext, LocalizationProvider } from './contexts/Localizati
29
32
  /** Hooks **/
30
33
  export { default as useConnection } from './hooks/useConnection';
31
34
  export { default as usePushTokenRegistration } from './hooks/usePushTokenRegistration';
32
- export { useLocalization, usePlatformService, useSendbirdChat, useUserProfile } from './hooks/useContext';
35
+ export * from './hooks/useContext';
33
36
  /** Localization **/
34
37
  export { default as StringSetEn } from './localization/StringSet.en';
35
38
  export { createBaseStringSet } from './localization/StringSet.type';
@@ -43,7 +46,7 @@ export { default as createExpoFileService } from './platform/createFileService.e
43
46
  export { default as createExpoClipboardService } from './platform/createClipboardService.expo';
44
47
  export { default as createExpoNotificationService } from './platform/createNotificationService.expo';
45
48
  export { default as createExpoMediaService } from './platform/createMediaService.expo';
46
- export type { FileServiceInterface, ClipboardServiceInterface, FilePickerServiceInterface, FileSystemServiceInterface, SaveOptions, OpenDocumentOptions, OpenCameraOptions, OpenMediaLibraryOptions, OpenResultListener, DownloadedPath, Unsubscribe, FilePickerResponse, FileType, NotificationServiceInterface, } from './platform/types';
49
+ export type { FileServiceInterface, ClipboardServiceInterface, FilePickerServiceInterface, FileSystemServiceInterface, SaveOptions, OpenDocumentOptions, OpenCameraOptions, OpenMediaLibraryOptions, OpenResultListener, DownloadedPath, Unsubscribe, FilePickerResponse, FileType, NotificationServiceInterface, MediaServiceInterface, } from './platform/types';
47
50
  /** Domain **/
48
51
  export * from './domain/groupChannel';
49
52
  export type { GroupChannelProps, GroupChannelModule, GroupChannelFragment, GroupChannelContextsType, } from './domain/groupChannel/types';
@@ -51,9 +54,11 @@ export * from './domain/groupChannelSettings';
51
54
  export type { GroupChannelSettingsProps, GroupChannelSettingsModule, GroupChannelSettingsFragment, GroupChannelSettingsContextsType, } from './domain/groupChannelSettings/types';
52
55
  export * from './domain/groupChannelList';
53
56
  export type { GroupChannelType, GroupChannelListProps, GroupChannelListModule, GroupChannelListFragment, GroupChannelListContextsType, } from './domain/groupChannelList/types';
57
+ export * from './domain/groupChannelNotifications';
58
+ export { GroupChannelNotificationsProps, GroupChannelNotificationsContextsType, GroupChannelNotificationsFragment, GroupChannelNotificationsModule, } from './domain/groupChannelNotifications/types';
59
+ export * from './domain/groupChannelUserList/types';
54
60
  export * from './domain/userList';
55
61
  export type { UserListProps, UserListModule, UserListContextsType } from './domain/userList/types';
56
- export * from './domain/groupChannelUserList/types';
57
62
  /** UIKit **/
58
63
  export { default as SendbirdUIKitContainer, SendbirdUIKit } from './containers/SendbirdUIKitContainer';
59
64
  export type { SendbirdUIKitContainerProps } from './containers/SendbirdUIKitContainer';
@@ -0,0 +1,16 @@
1
+ import type { SendbirdEmojiContainer } from '@sendbird/uikit-utils';
2
+ import InternalLocalCacheStorage from './InternalLocalCacheStorage';
3
+ declare class EmojiManager {
4
+ private internalStorage;
5
+ static key: string;
6
+ constructor(internalStorage?: InternalLocalCacheStorage);
7
+ private emojiStorage;
8
+ private _emojiCategoryMap;
9
+ get emojiCategoryMap(): Record<string, import("@sendbird/chat").EmojiCategory>;
10
+ private _allEmojiMap;
11
+ get allEmojiMap(): Record<string, import("@sendbird/chat").Emoji>;
12
+ private _allEmoji;
13
+ get allEmoji(): import("@sendbird/chat").Emoji[];
14
+ init: (emojiContainer?: SendbirdEmojiContainer) => Promise<void>;
15
+ }
16
+ export default EmojiManager;
@@ -0,0 +1,16 @@
1
+ export interface ImageCompressionConfigInterface {
2
+ compressionRate: number;
3
+ width?: number;
4
+ height?: number;
5
+ }
6
+ declare class ImageCompressionConfig {
7
+ private _config;
8
+ static DEFAULT: {
9
+ COMPRESSION_RATE: number;
10
+ };
11
+ constructor(_config: ImageCompressionConfigInterface);
12
+ get compressionRate(): number;
13
+ get width(): number | undefined;
14
+ get height(): number | undefined;
15
+ }
16
+ export default ImageCompressionConfig;
@@ -0,0 +1,24 @@
1
+ export interface MentionConfigInterface {
2
+ mentionLimit: number;
3
+ suggestionLimit: number;
4
+ debounceMills: number;
5
+ delimiter: string;
6
+ trigger: string;
7
+ }
8
+ declare class MentionConfig {
9
+ private _config;
10
+ static DEFAULT: {
11
+ MENTION_LIMIT: number;
12
+ SUGGESTION_LIMIT: number;
13
+ DEBOUNCE_MILLS: number;
14
+ DELIMITER: string;
15
+ TRIGGER: string;
16
+ };
17
+ constructor(_config: MentionConfigInterface);
18
+ get mentionLimit(): number;
19
+ get suggestionLimit(): number;
20
+ get delimiter(): string;
21
+ get debounceMills(): number;
22
+ get trigger(): string;
23
+ }
24
+ export default MentionConfig;
@@ -0,0 +1,61 @@
1
+ import type { SendbirdFileMessage, SendbirdUser, SendbirdUserMessage } from '@sendbird/uikit-utils';
2
+ import type { MentionedUser, Range } from '../types';
3
+ import type { MentionConfigInterface } from './MentionConfig';
4
+ declare class MentionManager {
5
+ config: MentionConfigInterface;
6
+ mentionEnabled: boolean;
7
+ private _invalidStartsKeywords;
8
+ private _templateRegex;
9
+ constructor(config: MentionConfigInterface, mentionEnabled: boolean);
10
+ rangeHelpers: {
11
+ inRangeUnderOver(start: number, num: number, end: number): boolean;
12
+ inRangeUnderMore(start: number, num: number, end: number): boolean;
13
+ inRangeLessOver(start: number, num: number, end: number): boolean;
14
+ inRangeLessMore(start: number, num: number, end: number): boolean;
15
+ overlaps(a: Range, b: Range, compare?: 'underOver' | 'underMore' | 'lessOver' | 'lessMore'): boolean;
16
+ };
17
+ get templateRegex(): RegExp;
18
+ getSearchString: (text: string, selectionIndex: number) => {
19
+ searchString: string;
20
+ isTriggered: () => boolean;
21
+ isValidSearchString: () => boolean;
22
+ };
23
+ /**
24
+ * @description Reconcile the range by offset in the mentioned users
25
+ * */
26
+ reconcileRangeOfMentionedUsers: (offset: number, selectionIndex: number, mentionedUsers: MentionedUser[]) => MentionedUser[];
27
+ /**
28
+ * @description Remove users who in a range
29
+ * */
30
+ removeMentionedUsersInSelection: (selection: Range, mentionedUsers: MentionedUser[]) => {
31
+ filtered: MentionedUser[];
32
+ lastSelection: number;
33
+ removedOffset: number;
34
+ };
35
+ getSearchStringRangeInText: (selectionIndex: number, searchString: string) => Range;
36
+ /**
37
+ * @description User to @{user.id} template format
38
+ * */
39
+ asMentionedMessageTemplate: (user: SendbirdUser, delimiter?: boolean) => string;
40
+ /**
41
+ * @description User to @user.nickname text format
42
+ * */
43
+ asMentionedMessageText: (user: SendbirdUser, delimiter?: boolean) => string;
44
+ /**
45
+ * @description Bold @user.nickname
46
+ * */
47
+ textToMentionedComponents: (text: string, mentionedUsers: MentionedUser[]) => string | (string | JSX.Element)[];
48
+ textToMentionedMessageTemplate: (text: string, mentionedUsers: MentionedUser[]) => string;
49
+ /**
50
+ * @description Convert @{user.id} template to @user.nickname text and MentionedUser[] array.
51
+ * */
52
+ templateToTextAndMentionedUsers: (template: string, mentionedUsers: SendbirdUser[]) => {
53
+ mentionedText: string;
54
+ mentionedUsers: MentionedUser[];
55
+ };
56
+ shouldUseMentionedMessageTemplate: (message?: SendbirdUserMessage | SendbirdFileMessage) => message is RequiredSpecific<import("@sendbird/chat/message").FileMessage | import("@sendbird/chat/message").UserMessage, "mentionedMessageTemplate" | "mentionedUserIds" | "mentionType" | "mentionedUsers">;
57
+ }
58
+ type RequiredSpecific<T, K extends keyof T> = T & {
59
+ [P in K]-?: T[P];
60
+ };
61
+ export default MentionManager;
@@ -1,3 +1,9 @@
1
1
  export default class SBUUtils {
2
2
  static openSettings(): void;
3
+ static openURL(url: string): void;
4
+ static getImageSize(uri: string): Promise<{
5
+ width: number;
6
+ height: number;
7
+ }>;
8
+ static safeRun(callback: () => Promise<void>): Promise<void>;
3
9
  }
@@ -24,6 +24,8 @@ export interface StringSet {
24
24
  INPUT_PLACEHOLDER_MUTED: string;
25
25
  INPUT_EDIT_OK: string;
26
26
  INPUT_EDIT_CANCEL: string;
27
+ /** GroupChannel > Suggested mention list */
28
+ MENTION_LIMITED: (mentionLimit: number) => string;
27
29
  /** GroupChannel > Dialog > Message */
28
30
  DIALOG_MESSAGE_COPY: string;
29
31
  DIALOG_MESSAGE_EDIT: string;
@@ -47,9 +49,12 @@ export interface StringSet {
47
49
  HEADER_RIGHT: string;
48
50
  /** GroupChannelSettings > Menu */
49
51
  MENU_MODERATION: string;
50
- MENU_NOTIFICATION: string;
51
52
  MENU_MEMBERS: string;
52
53
  MENU_LEAVE_CHANNEL: string;
54
+ MENU_NOTIFICATION: string;
55
+ MENU_NOTIFICATION_LABEL_ON: string;
56
+ MENU_NOTIFICATION_LABEL_OFF: string;
57
+ MENU_NOTIFICATION_LABEL_MENTION_ONLY: string;
53
58
  /** GroupChannelSettings > Dialog */
54
59
  DIALOG_CHANGE_NAME: string;
55
60
  DIALOG_CHANGE_IMAGE: string;
@@ -61,6 +66,15 @@ export interface StringSet {
61
66
  DIALOG_CHANGE_IMAGE_MENU_CAMERA: string;
62
67
  DIALOG_CHANGE_IMAGE_MENU_PHOTO_LIBRARY: string;
63
68
  };
69
+ GROUP_CHANNEL_NOTIFICATIONS: {
70
+ /** GroupChannelNotifications > Header */
71
+ HEADER_TITLE: string;
72
+ /** GroupChannelNotifications > Menu */
73
+ MENU_NOTIFICATIONS: string;
74
+ MENU_NOTIFICATIONS_DESC: string;
75
+ MENU_NOTIFICATIONS_OPTION_ALL: string;
76
+ MENU_NOTIFICATIONS_OPTION_MENTION_ONLY: string;
77
+ };
64
78
  GROUP_CHANNEL_MODERATION: {
65
79
  /** GroupChannelModeration > Header */
66
80
  HEADER_TITLE: string;
@@ -130,6 +144,9 @@ export interface StringSet {
130
144
  }) => string;
131
145
  };
132
146
  LABELS: {
147
+ PERMISSION_APP_NAME: string;
148
+ PERMISSION_CAMERA: string;
149
+ PERMISSION_DEVICE_STORAGE: string;
133
150
  USER_NO_NAME: string;
134
151
  CHANNEL_NO_MEMBERS: string;
135
152
  TYPING_INDICATOR_TYPINGS: (users: SendbirdUser[]) => string | undefined;
@@ -189,7 +206,7 @@ export interface StringSet {
189
206
  BODY: (user: SendbirdUser | SendbirdMember) => string;
190
207
  };
191
208
  }
192
- declare type StringSetCreateOptions = {
209
+ type StringSetCreateOptions = {
193
210
  dateLocale: Locale;
194
211
  overrides?: PartialDeep<StringSet>;
195
212
  };
@@ -1,9 +1,13 @@
1
1
  import type * as ExpoAV from 'expo-av';
2
+ import type * as ExpoFS from 'expo-file-system';
3
+ import type * as ExpoImageManipulator from 'expo-image-manipulator';
2
4
  import type * as ExpoVideoThumbnail from 'expo-video-thumbnails';
3
5
  import type { MediaServiceInterface } from './types';
4
- declare type Modules = {
6
+ type Modules = {
5
7
  avModule: typeof ExpoAV;
6
8
  thumbnailModule: typeof ExpoVideoThumbnail;
9
+ imageManipulator: typeof ExpoImageManipulator;
10
+ fsModule: typeof ExpoFS;
7
11
  };
8
- declare const createExpoMediaService: ({ avModule, thumbnailModule }: Modules) => MediaServiceInterface;
12
+ declare const createExpoMediaService: ({ avModule, thumbnailModule, imageManipulator, fsModule, }: Modules) => MediaServiceInterface;
9
13
  export default createExpoMediaService;
@@ -1,9 +1,11 @@
1
- import type * as CreateThumbnail from 'react-native-create-thumbnail';
2
- import type Video from 'react-native-video';
1
+ import type * as RNImageResizer from '@bam.tech/react-native-image-resizer';
2
+ import type * as RNCreateThumbnail from 'react-native-create-thumbnail';
3
+ import type RNVideo from 'react-native-video';
3
4
  import type { MediaServiceInterface } from './types';
4
- declare type Modules = {
5
- VideoComponent: typeof Video;
6
- thumbnailModule: typeof CreateThumbnail;
5
+ type Modules = {
6
+ VideoComponent: typeof RNVideo;
7
+ thumbnailModule: typeof RNCreateThumbnail;
8
+ imageResizerModule: typeof RNImageResizer;
7
9
  };
8
- declare const createNativeMediaService: ({ VideoComponent, thumbnailModule }: Modules) => MediaServiceInterface;
10
+ declare const createNativeMediaService: ({ VideoComponent, thumbnailModule, imageResizerModule, }: Modules) => MediaServiceInterface;
9
11
  export default createNativeMediaService;
@@ -1,23 +1,18 @@
1
- import type RNNetInfo from '@react-native-community/netinfo';
2
- import type RNFastImage from 'react-native-fast-image';
3
- import type RNFileAccess from 'react-native-file-access';
4
- export interface DynamicModules {
5
- 'react-native-file-access': typeof RNFileAccess;
6
- 'react-native-fast-image': typeof RNFastImage;
7
- '@react-native-community/netinfo': typeof RNNetInfo;
8
- }
9
- export declare type SBUNativeModule = keyof DynamicModules;
1
+ import type * as RNCNetInfo from '@react-native-community/netinfo';
2
+ export type SBUNativeModule = keyof DynamicModules;
10
3
  interface SBUDynamicModuleInfo {
11
4
  packageName: SBUNativeModule;
12
- minVersion: string;
13
- moduleName: string;
5
+ nativeModuleNamespace: string;
14
6
  getPackage: <T>(logLevel: 'error' | 'warn' | 'none') => T;
15
7
  url: string;
8
+ isComponent?: boolean;
9
+ }
10
+ export interface DynamicModules {
11
+ '@react-native-community/netinfo': typeof RNCNetInfo;
16
12
  }
17
- export declare function checkVersion(minVersion: string, currentVersion: string): boolean;
18
13
  declare const SBUDynamicModule: {
19
14
  register(mdi: SBUDynamicModuleInfo): void;
20
15
  getInfo(name: SBUNativeModule): SBUDynamicModuleInfo;
21
- get<K extends keyof DynamicModules, T extends DynamicModules[K]>(name: K, logLevel?: 'error' | 'warn' | 'none'): T;
16
+ get<K extends "@react-native-community/netinfo", T extends DynamicModules[K]>(name: K, logLevel?: 'error' | 'warn' | 'none'): T;
22
17
  };
23
18
  export default SBUDynamicModule;